summaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:37 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:37 +0000
commita90a5cba08fdf6c0ceb95101c275108a152a3aed (patch)
tree532507288f3defd7f4dcf1af49698bcb76034855 /testing
parentAdding debian version 126.0.1-1. (diff)
downloadfirefox-a90a5cba08fdf6c0ceb95101c275108a152a3aed.tar.xz
firefox-a90a5cba08fdf6c0ceb95101c275108a152a3aed.zip
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing')
-rw-r--r--testing/condprofile/condprof/util.py2
-rw-r--r--testing/crashtest/crashtests.list3
-rw-r--r--testing/crashtest/final/1419902.html34
-rw-r--r--testing/crashtest/final/1758199-1.html54
-rw-r--r--testing/crashtest/final/crashtests.list8
-rw-r--r--testing/docs/mochitest-plain/faq.md63
-rw-r--r--testing/docs/tests-for-new-config/index.rst4
-rw-r--r--testing/docs/tests-for-new-config/manual.rst4
-rw-r--r--testing/docs/xpcshell/index.rst50
-rw-r--r--testing/firefox-ui/tests/functional/safebrowsing/test_notification.py2
-rw-r--r--testing/geckodriver/marionette/src/webdriver.rs2
-rw-r--r--testing/geckodriver/src/browser.rs7
-rw-r--r--testing/geckodriver/src/prefs.rs1
-rw-r--r--testing/mach_commands.py2
-rw-r--r--testing/marionette/client/marionette_driver/geckoinstance.py28
-rw-r--r--testing/marionette/client/marionette_driver/marionette.py60
-rw-r--r--testing/marionette/client/marionette_driver/processhandler.py615
-rw-r--r--testing/marionette/client/requirements.txt1
-rw-r--r--testing/marionette/harness/marionette_harness/tests/unit-tests.toml1
-rw-r--r--testing/marionette/harness/marionette_harness/tests/unit/test_set_permission.py4
-rw-r--r--testing/mochitest/ignorePrefs.json2
-rw-r--r--testing/mochitest/mochitest_options.py8
-rw-r--r--testing/mochitest/runtests.py12
-rw-r--r--testing/mochitest/tests/browser/browser_waitForFocus.js8
-rw-r--r--testing/modules/MockRegistry.sys.mjs347
-rw-r--r--testing/mozbase/manifestparser/manifestparser/ini.py2
-rw-r--r--testing/mozbase/manifestparser/manifestparser/manifestparser.py4
-rw-r--r--testing/mozbase/manifestparser/manifestparser/toml.py6
-rwxr-xr-xtesting/mozbase/manifestparser/tests/test_manifestparser.py7
-rw-r--r--testing/mozbase/mozdebug/setup.py2
-rw-r--r--testing/mozbase/mozdevice/setup.py2
-rw-r--r--testing/mozbase/mozgeckoprofiler/mozgeckoprofiler/symbolication.py4
-rw-r--r--testing/mozbase/mozlog/mozlog/formatters/errorsummary.py1
-rw-r--r--testing/mozbase/mozlog/tests/test_errorsummary.py10
-rw-r--r--testing/mozbase/moznetwork/tests/test_moznetwork.py4
-rw-r--r--testing/mozbase/mozprofile/mozprofile/profile.py18
-rw-r--r--testing/mozbase/mozprofile/setup.py2
-rw-r--r--testing/mozbase/mozrunner/mozrunner/devices/android_device.py3
-rw-r--r--testing/mozbase/mozrunner/setup.py4
-rw-r--r--testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py16
-rw-r--r--testing/mozbase/moztest/moztest/resolve.py4
-rw-r--r--testing/mozbase/rust/mozdevice/src/lib.rs2
-rw-r--r--testing/mozbase/rust/mozversion/src/lib.rs4
-rw-r--r--testing/mozharness/configs/releases/bouncer_firefox_nightly.py3
-rw-r--r--testing/mozharness/configs/unittests/linux_unittest.py22
-rw-r--r--testing/mozharness/configs/unittests/win_unittest.py19
-rw-r--r--testing/mozharness/mach_commands.py5
-rw-r--r--testing/mozharness/mozharness/mozilla/testing/raptor.py2
-rwxr-xr-xtesting/mozharness/mozharness/mozilla/testing/talos.py2
-rwxr-xr-xtesting/mozharness/scripts/desktop_unittest.py23
-rwxr-xr-xtesting/mozharness/scripts/web_platform_tests.py11
-rw-r--r--testing/perfdocs/generated/IndexedDB.rst2
-rw-r--r--testing/perfdocs/generated/debugging.rst4
-rw-r--r--testing/perfdocs/generated/mach-try-perf.rst2
-rw-r--r--testing/perfdocs/generated/metrics.rst82
-rw-r--r--testing/perfdocs/generated/raptor-metrics.rst206
-rw-r--r--testing/perfdocs/generated/raptor.rst435
-rw-r--r--testing/perfdocs/generated/standard-workflow.rst30
-rw-r--r--testing/perfdocs/generated/talos.rst5
-rw-r--r--testing/performance/mach-try-perf/perfdocs/index.rst2
-rw-r--r--testing/performance/mach-try-perf/perfdocs/standard-workflow.rst30
-rw-r--r--testing/profiles/common/user.js1
-rw-r--r--testing/profiles/reftest/user.js2
-rw-r--r--testing/profiles/web-platform/user.js2
-rw-r--r--testing/raptor/raptor/browsertime/base.py19
-rw-r--r--testing/raptor/raptor/cmdline.py2
-rw-r--r--testing/raptor/raptor/filters.py10
-rw-r--r--testing/raptor/raptor/manifest.py2
-rw-r--r--testing/raptor/raptor/perfdocs/config.yml51
-rw-r--r--testing/raptor/raptor/perfdocs/debugging.rst4
-rw-r--r--testing/raptor/raptor/perfdocs/index.rst2
-rw-r--r--testing/raptor/raptor/perfdocs/metrics.rst7
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-1-3-desktop.toml2
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-1-3-mobile.toml2
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml2
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml2
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml2
-rw-r--r--testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml2
-rw-r--r--testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml2
-rw-r--r--testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml2
-rw-r--r--testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-expedia.manifest9
-rw-r--r--testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-microsoft.manifest9
-rw-r--r--testing/raptor/raptor/tooltool-manifests/playback/mitm7-linux-firefox-microsoft.manifest9
-rw-r--r--testing/raptor/raptor/tooltool-manifests/playback/mitm8-darwin-firefox-expedia.manifest9
-rw-r--r--testing/raptor/raptor/tooltool-manifests/playback/mitm8-linux-firefox-microsoft.manifest9
-rw-r--r--testing/raptor/requirements.txt4
-rw-r--r--testing/raptor/source_requirements.txt4
-rw-r--r--testing/skipfails.py2
-rw-r--r--testing/specialpowers/content/SpecialPowersChild.sys.mjs9
-rw-r--r--testing/specialpowers/content/SpecialPowersParent.sys.mjs4
-rw-r--r--testing/talos/perfdocs/index.rst4
-rw-r--r--testing/talos/talos/config.py6
-rw-r--r--testing/talos/talos/gecko_profile.py2
-rw-r--r--testing/talos/talos/test.py1
-rw-r--r--testing/talos/talos/unittests/test_config.py4
-rw-r--r--testing/tps/docs/index.md349
-rw-r--r--testing/tps/moz.build2
-rw-r--r--testing/tps/setup.py6
-rw-r--r--testing/web-platform/docs/index.rst27
-rw-r--r--testing/web-platform/meta/FileAPI/blob/Blob-constructor.any.js.ini5
-rw-r--r--testing/web-platform/meta/IndexedDB/get-databases.any.js.ini9
-rw-r--r--testing/web-platform/meta/IndexedDB/idb-binary-key-detached.htm.ini6
-rw-r--r--testing/web-platform/meta/IndexedDB/idb-binary-key-roundtrip.htm.ini2
-rw-r--r--testing/web-platform/meta/IndexedDB/idbfactory-databases-opaque-origin.html.ini11
-rw-r--r--testing/web-platform/meta/IndexedDB/idbfactory-deleteDatabase-opaque-origin.html.ini5
-rw-r--r--testing/web-platform/meta/IndexedDB/idbfactory-open-opaque-origin.html.ini5
-rw-r--r--testing/web-platform/meta/IndexedDB/idbfactory_open9.htm.ini12
-rw-r--r--testing/web-platform/meta/IndexedDB/idbindex_getAll.any.js.ini65
-rw-r--r--testing/web-platform/meta/IndexedDB/idbindex_getAllKeys.any.js.ini45
-rw-r--r--testing/web-platform/meta/IndexedDB/idbobjectstore_add.any.js.ini133
-rw-r--r--testing/web-platform/meta/IndexedDB/idbobjectstore_put.any.js.ini81
-rw-r--r--testing/web-platform/meta/IndexedDB/keygenerator-inject.html.ini5
-rw-r--r--testing/web-platform/meta/IndexedDB/serialize-sharedarraybuffer-throws.https.html.ini2
-rw-r--r--testing/web-platform/meta/IndexedDB/structured-clone.any.js.ini184
-rw-r--r--testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_bits.https.any.js.ini54
-rw-r--r--testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_keys.https.any.js.ini53
-rw-r--r--testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/hkdf.https.any.js.ini384
-rw-r--r--testing/web-platform/meta/WebCryptoAPI/getRandomValues.any.js.ini5
-rw-r--r--testing/web-platform/meta/WebCryptoAPI/sign_verify/ecdsa.https.any.js.ini74
-rw-r--r--testing/web-platform/meta/accelerometer/idlharness.https.window.js.ini3
-rw-r--r--testing/web-platform/meta/accessibility/crashtests/computed-node.html.ini3
-rw-r--r--testing/web-platform/meta/accname/manual/__dir__.ini1
-rw-r--r--testing/web-platform/meta/animation-worklet/__dir__.ini1
-rw-r--r--testing/web-platform/meta/annotation-model/__dir__.ini1
-rw-r--r--testing/web-platform/meta/annotation-protocol/__dir__.ini1
-rw-r--r--testing/web-platform/meta/appmanifest/__dir__.ini2
-rw-r--r--testing/web-platform/meta/attribution-reporting/referrer-policy.sub.https.html.ini38
-rw-r--r--testing/web-platform/meta/background-sync/__dir__.ini2
-rw-r--r--testing/web-platform/meta/badging/__dir__.ini1
-rw-r--r--testing/web-platform/meta/browsing-topics/__dir__.ini1
-rw-r--r--testing/web-platform/meta/captured-mouse-events/__dir__.ini1
-rw-r--r--testing/web-platform/meta/client-hints/__dir__.ini2
-rw-r--r--testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-write-multiple.tentative.https.sub.html.ini5
-rw-r--r--testing/web-platform/meta/clipboard-apis/clipboard-item.https.html.ini8
-rw-r--r--testing/web-platform/meta/clipboard-apis/idlharness.https.window.js.ini2
-rw-r--r--testing/web-platform/meta/close-watcher/__dir__.ini2
-rw-r--r--testing/web-platform/meta/close-watcher/basic.html.ini68
-rw-r--r--testing/web-platform/meta/close-watcher/esc-key/not-user-activation.html.ini2
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nn-CloseWatcher.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nn-dialog.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nn.html.ini8
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nnn-CloseWatcher.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nnn-dialog.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nnn.html.ini8
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyn-CloseWatcher.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyn-dialog.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyn.html.ini8
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyyn-CloseWatcher.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyyn-dialog.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/nyyyn.html.ini8
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/ynn-CloseWatcher.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/ynn-dialog.html.ini3
-rw-r--r--testing/web-platform/meta/close-watcher/user-activation/ynn.html.ini8
-rw-r--r--testing/web-platform/meta/compression/decompression-buffersource.tentative.any.js.ini6
-rw-r--r--testing/web-platform/meta/compute-pressure/__dir__.ini1
-rw-r--r--testing/web-platform/meta/compute-pressure/compute_pressure_known_sources.https.any.js.ini31
-rw-r--r--testing/web-platform/meta/compute-pressure/compute_pressure_options.https.any.js.ini27
-rw-r--r--testing/web-platform/meta/compute-pressure/compute_pressure_supported_sources.https.any.js.ini31
-rw-r--r--testing/web-platform/meta/compute-pressure/compute_pressure_timestamp.https.any.js.ini18
-rw-r--r--testing/web-platform/meta/compute-pressure/idlharness.https.any.js.ini54
-rw-r--r--testing/web-platform/meta/compute-pressure/observe_return_type.https.any.js.ini13
-rw-r--r--testing/web-platform/meta/conformance-checkers/__dir__.ini1
-rw-r--r--testing/web-platform/meta/content-dpr/__dir__.ini1
-rw-r--r--testing/web-platform/meta/content-index/__dir__.ini1
-rw-r--r--testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-from-serviceworker.https.html.ini4
-rw-r--r--testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html.ini4
-rw-r--r--testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html.ini4
-rw-r--r--testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html.ini4
-rw-r--r--testing/web-platform/meta/content-security-policy/inside-worker/sharedworker-script-src.sub.html.ini5
-rw-r--r--testing/web-platform/meta/contenteditable/__dir__.ini2
-rw-r--r--testing/web-platform/meta/cookie-store/__dir__.ini1
-rw-r--r--testing/web-platform/meta/cookie-store/cookieStoreManager_getSubscriptions_multiple.https.any.js.ini6
-rw-r--r--testing/web-platform/meta/cookie-store/cookieStore_getAll_set_basic.https.any.js.ini2
-rw-r--r--testing/web-platform/meta/cookie-store/cookieStore_get_arguments.https.any.js.ini2
-rw-r--r--testing/web-platform/meta/cookie-store/cookieStore_get_set_ordering.https.any.js.ini2
-rw-r--r--testing/web-platform/meta/cookies/attributes/attributes-ctl.sub.html.ini1024
-rw-r--r--testing/web-platform/meta/cookies/name/name-ctl.html.ini3
-rw-r--r--testing/web-platform/meta/cookies/prefix/__host.document-cookie.html.ini9
-rw-r--r--testing/web-platform/meta/cookies/prefix/__host.document-cookie.https.html.ini15
-rw-r--r--testing/web-platform/meta/cookies/prefix/__host.header.html.ini11
-rw-r--r--testing/web-platform/meta/cookies/prefix/__host.header.https.html.ini20
-rw-r--r--testing/web-platform/meta/cookies/prefix/__secure.document-cookie.html.ini8
-rw-r--r--testing/web-platform/meta/cookies/prefix/__secure.document-cookie.https.html.ini8
-rw-r--r--testing/web-platform/meta/cookies/prefix/__secure.header.html.ini11
-rw-r--r--testing/web-platform/meta/cookies/prefix/__secure.header.https.html.ini13
-rw-r--r--testing/web-platform/meta/cookies/prefix/document-cookie.non-secure.html.ini17
-rw-r--r--testing/web-platform/meta/cookies/samesite/iframe.document.https.html.ini1
-rw-r--r--testing/web-platform/meta/cookies/third-party-cookies/third-party-cookies.tentative.https.html.ini9
-rw-r--r--testing/web-platform/meta/cookies/value/value-ctl.html.ini3
-rw-r--r--testing/web-platform/meta/credential-management/digital-identity.https.html.ini9
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html.ini7
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html.ini7
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html.ini10
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html.ini10
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-after-onload.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-before-onload.https.html.ini4
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-during-onload.https.html.ini6
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-register/fedcm-no-registered-idps.https.html.ini3
-rw-r--r--testing/web-platform/meta/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-005.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-006.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-007.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-008.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-009.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-010.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-005b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-006b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-007b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-008b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-009b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/bidi-text/bidi-010b.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-000.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-001.xht.ini2
-rw-r--r--testing/web-platform/meta/css/CSS2/text/__dir__.ini1
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-center-offset-change.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-center-scroll.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-fallback-invalidation.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-inherited.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-invalid-fallback.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-overflow-hidden.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-013.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-014.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/anchor-scroll-scrollable-anchor.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/at-position-try-cssom.html.ini786
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/base-style-invalidation.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/idlharness.html.ini228
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/inset-area-in-position-try.html.ini177
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-try-backdrop.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-try-order-inset-area.html.ini81
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor-dynamic.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-computed.tentative.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-valid.tentative.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand-computed.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand.html.ini45
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-computed.tentative.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-valid.tentative.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-animations/stability/animation-event-destroy-renderer.html.ini10
-rw-r--r--testing/web-platform/meta/css/css-animations/transition-ready-time-offscreen.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-018.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-019.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-030.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-015.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-057.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-cascade/scope-pseudo-element.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-color/parsing/color-computed-relative-color.html.ini2772
-rw-r--r--testing/web-platform/meta/css/css-color/parsing/color-valid-relative-color.html.ini2784
-rw-r--r--testing/web-platform/meta/css/css-color/parsing/relative-color-out-of-gamut.html.ini27
-rw-r--r--testing/web-platform/meta/css/css-contain/contain-layout-button-001.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-contain/contain-layout-button-002.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-contain/container-queries/custom-property-style-queries.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-contain/container-queries/registered-color-style-queries.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-content/__dir__.ini1
-rw-r--r--testing/web-platform/meta/css/css-content/parsing/content-computed.html.ini58
-rw-r--r--testing/web-platform/meta/css/css-content/parsing/content-valid.html.ini207
-rw-r--r--testing/web-platform/meta/css/css-display/accessibility/display-contents-role-and-label.html.ini38
-rw-r--r--testing/web-platform/meta/css/css-display/run-in/letter-spacing-applies-to-004.xht.ini2
-rw-r--r--testing/web-platform/meta/css/css-flexbox/intrinsic-size/col-wrap-020.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-fonts/__dir__.ini4
-rw-r--r--testing/web-platform/meta/css/css-fonts/font-size-adjust-reload.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-fonts/matching/font-unicode-PUA-primary-font.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-fonts/parsing/font-palette-values-valid.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-fonts/variation-sequences.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/gap/masonry-gap-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-invalidation-007.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-images/object-fit-containsize-png-001e.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-images/object-fit-containsize-png-001i.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-layout-api/child-constraints/percentage-size-quirks-mode.https.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-021.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-abspos-011.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-001.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-002.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-003.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-004.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-005.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-006.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-007.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-008.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-009.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-010.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-page/fixedpos-010-print.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-page/page-box-000-print.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-page/page-size-012-print.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-position/sticky/position-sticky-fractional-offset.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-position/sticky/position-sticky-scrolled-remove-sibling.html.ini8
-rw-r--r--testing/web-platform/meta/css/css-properties-values-api/registered-property-computation.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-004.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/cascade-highlight-004.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-005.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/cascade-highlight-005.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-004.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-cascade-004.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-007.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-cascade-007.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-009.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-inheritance.html.ini)2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-visited.html.ini)2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed.html.ini)2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-001.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-002.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-pseudos-computed.html.ini)1
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html.ini)2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html.ini (renamed from testing/web-platform/meta/css/css-pseudo/highlight-pseudos-visited-computed-001.html.ini)2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-custom-properties-dynamic-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-horizontal.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-vertical.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-003.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-006.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-styling-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/highlight-styling-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/selection-over-highlight-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/target-text-dynamic-002.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-pseudo/target-text-dynamic-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/target-text-shadow-horizontal.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-pseudo/target-text-shadow-vertical.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-scoping/font-face-002.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-scoping/font-face-003.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-scoping/font-face-004.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html.ini4
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-syntax/custom-property-rule-ambiguity.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-syntax/var-with-blocks.html.ini12
-rw-r--r--testing/web-platform/meta/css/css-tables/col_removal.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-211.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-212.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-bengali-yaphala-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/tab-size/tab-size-integer-004.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-002.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/text-autospace/text-autospace-mixed-001.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html.ini5
-rw-r--r--testing/web-platform/meta/css/css-transitions/starting-style-cascade.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-transitions/starting-style-rule-basic.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-transitions/starting-style-rule-none.html.ini3
-rw-r--r--testing/web-platform/meta/css/css-transitions/starting-style-rule-pseudo-elements.html.ini9
-rw-r--r--testing/web-platform/meta/css/css-transitions/transition-events-with-document-change.html.ini8
-rw-r--r--testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html.ini120
-rw-r--r--testing/web-platform/meta/css/css-values/calc-size/calc-size-parsing.tentative.html.ini18
-rw-r--r--testing/web-platform/meta/css/css-values/container-progress-computed.tentative.html.ini48
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/iframe-transition-destroyed-document-crash.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/new-content-ancestor-clipped.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/new-content-changes-overflow-left.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/pseudo-element-overflow-hidden.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/pseudo-element-preserve-3d.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildard.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildcard.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-view-transitions/root-element-display-none-during-transition-crash.html.ini2
-rw-r--r--testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom-nested.html.ini (renamed from testing/web-platform/meta/css/zoom/iframe-zoom-nested.html.ini)0
-rw-r--r--testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom.sub.html.ini (renamed from testing/web-platform/meta/css/zoom/iframe-zoom.sub.html.ini)0
-rw-r--r--testing/web-platform/meta/css/cssom-view/offsetTop-offsetLeft-with-zoom.html.ini3
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-element.html.ini15
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-main-frame-window.html.ini4
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-scrollintoview-nested.html.ini4
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-smooth-positions.html.ini10
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-root.html.ini11
-rw-r--r--testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-window.html.ini9
-rw-r--r--testing/web-platform/meta/css/cssom-view/scrollIntoView-smooth.html.ini1
-rw-r--r--testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-filter.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-opacity.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/backdrop-filter-isolation.html.ini2
-rw-r--r--testing/web-platform/meta/css/filter-effects/svg-external-filter-resource.html.ini4
-rw-r--r--testing/web-platform/meta/css/printing/existing-transition-in-media-print.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/css/selectors/user-invalid.html.ini3
-rw-r--r--testing/web-platform/meta/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html.ini9
-rw-r--r--testing/web-platform/meta/css/selectors/user-valid.html.ini3
-rw-r--r--testing/web-platform/meta/device-memory/__dir__.ini2
-rw-r--r--testing/web-platform/meta/device-posture/__dir__.ini1
-rw-r--r--testing/web-platform/meta/direct-sockets/__dir__.ini1
-rw-r--r--testing/web-platform/meta/document-picture-in-picture/__dir__.ini2
-rw-r--r--testing/web-platform/meta/document-policy/experimental-features/unsized-media.tentative.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/dom/events/webkit-animation-iteration-event.html.ini39
-rw-r--r--testing/web-platform/meta/dom/idlharness.window.js.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/Node-moveBefore.html.ini102
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-left.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-document.html.ini16
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-trigger.html.ini3
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/focus-preserve.html.ini12
-rw-r--r--testing/web-platform/meta/dom/nodes/moveBefore/tentative/fullscreen-preserve.html.ini3
-rw-r--r--testing/web-platform/meta/dom/observable/tentative/observable-every.any.js.ini62
-rw-r--r--testing/web-platform/meta/dom/observable/tentative/observable-filter.any.js.ini6
-rw-r--r--testing/web-platform/meta/dom/observable/tentative/observable-find.any.js.ini38
-rw-r--r--testing/web-platform/meta/dom/observable/tentative/observable-inspect.any.js.ini80
-rw-r--r--testing/web-platform/meta/dom/observable/tentative/observable-some.any.js.ini44
-rw-r--r--testing/web-platform/meta/dom/ranges/Range-isPointInRange-shadowdom.tentative.html.ini7
-rw-r--r--testing/web-platform/meta/dom/xslt/large-cdata.html.ini2
-rw-r--r--testing/web-platform/meta/dpub-aam/role/roles.html.ini54
-rw-r--r--testing/web-platform/meta/editing/run/delete.html.ini6
-rw-r--r--testing/web-platform/meta/editing/run/forwarddelete.html.ini3
-rw-r--r--testing/web-platform/meta/encoding/encodeInto.any.js.ini24
-rw-r--r--testing/web-platform/meta/fenced-frame/__dir__.ini1
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin.https.html.ini3
-rw-r--r--testing/web-platform/meta/fenced-frame/fence-report-event-sub-fencedframe.https.html.ini3
-rw-r--r--testing/web-platform/meta/fetch/api/abort/serviceworker-intercepted.https.html.ini8
-rw-r--r--testing/web-platform/meta/fetch/api/basic/request-headers.any.js.ini4
-rw-r--r--testing/web-platform/meta/fetch/api/basic/request-upload.any.js.ini12
-rw-r--r--testing/web-platform/meta/fetch/api/crashtests/huge-fetch.any.js.ini13
-rw-r--r--testing/web-platform/meta/fetch/api/redirect/redirect-keepalive.https.any.js.ini18
-rw-r--r--testing/web-platform/meta/fetch/api/request/request-bad-port.any.js.ini14
-rw-r--r--testing/web-platform/meta/fetch/api/response/response-clone.any.js.ini12
-rw-r--r--testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html.ini3
-rw-r--r--testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html.ini3
-rw-r--r--testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html.ini3
-rw-r--r--testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html.ini9
-rw-r--r--testing/web-platform/meta/fetch/content-length/too-long.window.js.ini2
-rw-r--r--testing/web-platform/meta/fetch/fetch-later/activate-after.tentative.https.window.js.ini12
-rw-r--r--testing/web-platform/meta/fetch/http-cache/cache-mode.any.js.ini32
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/appcache-manifest.https.sub.html.ini2
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/css-images.https.sub.tentative.html.ini18
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-audio.https.sub.html.ini10
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-img.https.sub.html.ini10
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-input-image.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-input-image.sub.html.ini6
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-video-poster.https.sub.html.ini15
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-video-poster.sub.html.ini8
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/element-video.https.sub.html.ini10
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/svg-image.https.sub.html.ini4
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/window-location.https.sub.html.ini2
-rw-r--r--testing/web-platform/meta/fetch/metadata/generated/worker-dedicated-constructor.sub.html.ini26
-rw-r--r--testing/web-platform/meta/fetch/metadata/trailing-dot.https.sub.any.js.ini35
-rw-r--r--testing/web-platform/meta/fledge/__dir__.ini1
-rw-r--r--testing/web-platform/meta/fledge/tentative/interest-group-update.https.window.js.ini74
-rw-r--r--testing/web-platform/meta/font-access/__dir__.ini1
-rw-r--r--testing/web-platform/meta/fs/FileSystemBaseHandle-getUniqueId.https.any.js.ini48
-rw-r--r--testing/web-platform/meta/fs/FileSystemBaseHandle-remove.https.any.js.ini52
-rw-r--r--testing/web-platform/meta/fs/FileSystemDirectoryHandle-getFileHandle.https.any.js.ini42
-rw-r--r--testing/web-platform/meta/fs/FileSystemDirectoryHandle-iteration.https.any.js.ini51
-rw-r--r--testing/web-platform/meta/fs/FileSystemDirectoryHandle-removeEntry.https.any.js.ini111
-rw-r--r--testing/web-platform/meta/fs/FileSystemFileHandle-getFile.https.any.js.ini9
-rw-r--r--testing/web-platform/meta/fs/FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js.ini48
-rw-r--r--testing/web-platform/meta/fs/FileSystemWritableFileStream-write.https.any.js.ini157
-rw-r--r--testing/web-platform/meta/fs/FileSystemWritableFileStream.https.any.js.ini53
-rw-r--r--testing/web-platform/meta/generic-sensor/__dir__.ini1
-rw-r--r--testing/web-platform/meta/geolocation-API/disabled-by-permissions-policy.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html.ini7
-rw-r--r--testing/web-platform/meta/geolocation-API/enabled-by-permissions-policy.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/geolocation-API/idlharness.https.window.js.ini6
-rw-r--r--testing/web-platform/meta/html-aam/fragile/area-role.html.ini3
-rw-r--r--testing/web-platform/meta/html/browsers/browsing-the-web/__dir__.ini2
-rw-r--r--testing/web-platform/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-204-fragment.html.ini7
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-global-states.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.globalCompositeOperation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html.ini6
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.html.ini15
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html.ini2
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html.ini6
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js.ini6
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.html.ini15
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js.ini3
-rw-r--r--testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js.ini15
-rw-r--r--testing/web-platform/meta/html/cross-origin-embedder-policy/dedicated-worker-cache-storage.https.html.ini28
-rw-r--r--testing/web-platform/meta/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html.ini65
-rw-r--r--testing/web-platform/meta/html/cross-origin-opener-policy/coep-with-same-origin.https.html.ini2
-rw-r--r--testing/web-platform/meta/html/cross-origin-opener-policy/coop-sandbox.https.html.ini2
-rw-r--r--testing/web-platform/meta/html/dom/documents/resource-metadata-management/document-cookie.html.ini5
-rw-r--r--testing/web-platform/meta/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/html/dom/idlharness.https.html.ini18
-rw-r--r--testing/web-platform/meta/html/dom/usvstring-reflection.https.html.ini17
-rw-r--r--testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js.ini13
-rw-r--r--testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html.ini3
-rw-r--r--testing/web-platform/meta/html/meta/refresh-time.html.ini28
-rw-r--r--testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-quirks-mode.html.ini2
-rw-r--r--testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-standards-mode.html.ini2
-rw-r--r--testing/web-platform/meta/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-data.html.ini12
-rw-r--r--testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-javascript.html.ini12
-rw-r--r--testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini3
-rw-r--r--testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.js.ini7
-rw-r--r--testing/web-platform/meta/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html.ini18
-rw-r--r--testing/web-platform/meta/html/semantics/interactive-elements/the-summary-element/interactive-content.html.ini12
-rw-r--r--testing/web-platform/meta/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/invokers/invoketarget-on-input-number.tentative.html.ini12
-rw-r--r--testing/web-platform/meta/html/semantics/permission-element/bounded-sizes-reftest.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/permission-element/bounded-sizes.tentative.html.ini6
-rw-r--r--testing/web-platform/meta/html/semantics/permission-element/display-css-property-reference.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/permission-element/display-css-property-reftest.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/html/semantics/popovers/popover-focus-2.html.ini22
-rw-r--r--testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss-scroll-within.html.ini3
-rw-r--r--testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss.html.ini9
-rw-r--r--testing/web-platform/meta/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html.ini4
-rw-r--r--testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js.ini24
-rw-r--r--testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html.ini3
-rw-r--r--testing/web-platform/meta/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html.ini6
-rw-r--r--testing/web-platform/meta/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.js.ini9
-rw-r--r--testing/web-platform/meta/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/atomics-wait-async.https.any.js.ini4
-rw-r--r--testing/web-platform/meta/html/webappapis/timers/setinterval-cross-realm-callback-report-exception.html.ini5
-rw-r--r--testing/web-platform/meta/idle-detection/idle-detection-allowed-by-permissions-policy.https.sub.html.ini5
-rw-r--r--testing/web-platform/meta/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html.ini24
-rw-r--r--testing/web-platform/meta/intersection-observer/remove-element.html.ini4
-rw-r--r--testing/web-platform/meta/intervention-reporting/__dir__.ini1
-rw-r--r--testing/web-platform/meta/is-input-pending/__dir__.ini1
-rw-r--r--testing/web-platform/meta/lifecycle/__dir__.ini1
-rw-r--r--testing/web-platform/meta/managed/__dir__.ini1
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-2.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-3.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/mrow/merror-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/mrow/mrow-fallback.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/mrow/no-spacing.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/mrow/spacing.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/embellished-operator-dynamic-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/largeop-hit-testing.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/mo-axis-height-1.html.ini16
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/mo-no-vertical-adjustment-for-basic-binary-operators.html.ini4
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-combining.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-001.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-002.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-003.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-004.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-005.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-006.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-003.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-005.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-003.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-004.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-005.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-006.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-001.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-002.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-003.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-004.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-005.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-006.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-001.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-002.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-003.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-004.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-005.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-006.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-3.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-4.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-5.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-1.html.ini1
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-2.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-1.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-1.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-2.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-3.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-4.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-1.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-2.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/spaces/space-like-004.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/tables/table-axis-height.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/tables/table-cell-mrow-layout.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/presentation-markup/tables/table-default-styles-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/default-properties-on-the-math-root.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/display-2.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/display-contents.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/displaystyle-1.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/displaystyle-2.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/displaystyle-3.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/floats/not-floating-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/ignored-properties-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/lengths-2.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/multi-column-layout.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/not-participating-to-parent-layout.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/out-of-flow/all-mathml-containers.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/overflow/computed-value-001.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-003.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/scriptlevel-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/writing-mode/force-horizontal-tb.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-001.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-002.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/css-inline-style-interface.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/display-1.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-001.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-002.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/html-or-foreign-element-interfaces.tentative.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/integration-point-4.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/integration-point-5.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/math-global-event-handlers.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/mathml/relations/html5-tree/unique-identifier-2.html.ini3
-rw-r--r--testing/web-platform/meta/mathml/relations/text-and-math/basic-mathematical-alphanumeric-symbols-with-default-font.html.ini6
-rw-r--r--testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html.ini30
-rw-r--r--testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-video-stats.https.html.ini3
-rw-r--r--testing/web-platform/meta/mediacapture-record/MediaRecorder-canvas-media-source.https.html.ini15
-rw-r--r--testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini15
-rw-r--r--testing/web-platform/meta/mediacapture-record/MediaRecorder-peerconnection.https.html.ini37
-rw-r--r--testing/web-platform/meta/mediacapture-record/MediaRecorder-stop.html.ini95
-rw-r--r--testing/web-platform/meta/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html.ini18
-rw-r--r--testing/web-platform/meta/mediasession/idlharness.window.js.ini32
-rw-r--r--testing/web-platform/meta/mimesniff/mime-types/parsing.any.js.ini2170
-rw-r--r--testing/web-platform/meta/mixed-content/tentative/autoupgrades/mixed-content-cors.https.sub.html.ini17
-rw-r--r--testing/web-platform/meta/mozilla-sync2
-rw-r--r--testing/web-platform/meta/mst-content-hint/__dir__.ini2
-rw-r--r--testing/web-platform/meta/navigation-api/navigate-event/navigate-history-back-bfcache.html.ini8
-rw-r--r--testing/web-platform/meta/navigation-api/navigation-activation/activation-after-bfcache.html.ini4
-rw-r--r--testing/web-platform/meta/network-error-logging/sends-report-on-success.https.html.ini6
-rw-r--r--testing/web-platform/meta/notifications/getnotifications-across-processes.https.window.js.ini10
-rw-r--r--testing/web-platform/meta/notifications/tag.https.html.ini10
-rw-r--r--testing/web-platform/meta/parakeet/__dir__.ini1
-rw-r--r--testing/web-platform/meta/periodic-background-sync/__dir__.ini2
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini8
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini4
-rw-r--r--testing/web-platform/meta/permissions-request/__dir__.ini1
-rw-r--r--testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini7
-rw-r--r--testing/web-platform/meta/reporting/reporting-isolated-across-navigations.https.sub.html.ini6
-rw-r--r--testing/web-platform/meta/requestidlecallback/deadline-max-rAF-dynamic.html.ini12
-rw-r--r--testing/web-platform/meta/resource-timing/initiator-type/workers.html.ini2
-rw-r--r--testing/web-platform/meta/savedata/__dir__.ini1
-rw-r--r--testing/web-platform/meta/scheduler/tentative/yield/yield-priority-posttask.any.js.ini6
-rw-r--r--testing/web-platform/meta/screen-capture/getallscreensmedia-exposure.tentative.https.window.js.ini3
-rw-r--r--testing/web-platform/meta/screen-details/__dir__.ini1
-rw-r--r--testing/web-platform/meta/scroll-animations/css/animation-shorthand.html.ini6
-rw-r--r--testing/web-platform/meta/scroll-animations/css/animation-timeline-view-functional-notation.tentative.html.ini34
-rw-r--r--testing/web-platform/meta/scroll-animations/css/scroll-timeline-dynamic.tentative.html.ini30
-rw-r--r--testing/web-platform/meta/scroll-animations/css/view-timeline-inset-animation.html.ini6
-rw-r--r--testing/web-platform/meta/scroll-to-text-fragment/percent-encoding.html.ini15
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/fetch-event-respond-with-readable-stream.https.html.ini14
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/navigation-preload/get-state.https.html.ini4
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/navigation-redirect.https.html.ini8
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/navigation-timing-sizes.https.html.ini6
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/register-same-scope-different-script-url.https.html.ini12
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/registration-updateviacache.https.html.ini8
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html.ini9
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html.ini6
-rw-r--r--testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html.ini6
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/delegatesFocus-highlight-sibling.html.ini3
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback-default-tabindex.html.ini3
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-delegatesFocus.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-fallback.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-fallback.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-slot.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-with-tabindex.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-web-component-radio.html.ini3
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html.ini32
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-nested-slots.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-unassignable-slot.html.ini4
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/focus-with-negative-index.html.ini5
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html.ini3
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html.ini3
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html.ini9
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html.ini6
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html.ini21
-rw-r--r--testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html.ini15
-rw-r--r--testing/web-platform/meta/shared-storage/__dir__.ini1
-rw-r--r--testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html.ini3
-rw-r--r--testing/web-platform/meta/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js.ini3
-rw-r--r--testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini1
-rw-r--r--testing/web-platform/meta/streams/readable-streams/async-iterator.any.js.ini36
-rw-r--r--testing/web-platform/meta/streams/transform-streams/backpressure.any.js.ini8
-rw-r--r--testing/web-platform/meta/streams/writable-streams/close.any.js.ini8
-rw-r--r--testing/web-platform/meta/subapps/__dir__.ini1
-rw-r--r--testing/web-platform/meta/svg/crashtests/chrome-bug-333487749.html.ini10
-rw-r--r--testing/web-platform/meta/svg/painting/reftests/paint-context-007.svg.ini2
-rw-r--r--testing/web-platform/meta/svg/painting/reftests/paint-context-008.svg.ini2
-rw-r--r--testing/web-platform/meta/svg/path/property/serialization.svg.ini3
-rw-r--r--testing/web-platform/meta/svg/types/scripted/SVGLength-lh.html.ini8
-rw-r--r--testing/web-platform/meta/trusted-types/Document-write.html.ini3
-rw-r--r--testing/web-platform/meta/trusted-types/Element-outerHTML.html.ini3
-rw-r--r--testing/web-platform/meta/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html.ini2
-rw-r--r--testing/web-platform/meta/trusted-types/Element-setAttribute.html.ini12
-rw-r--r--testing/web-platform/meta/trusted-types/Range-createContextualFragment.html.ini3
-rw-r--r--testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.html.ini75
-rw-r--r--testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html.ini69
-rw-r--r--testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.html.ini2
-rw-r--r--testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html.ini2
-rw-r--r--testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.html.ini9
-rw-r--r--testing/web-platform/meta/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html.ini18
-rw-r--r--testing/web-platform/meta/trusted-types/modify-attributes-in-callback.html.ini2
-rw-r--r--testing/web-platform/meta/trusted-types/trusted-types-event-handlers.html.ini12
-rw-r--r--testing/web-platform/meta/trusted-types/trusted-types-svg-script-set-href.html.ini2
-rw-r--r--testing/web-platform/meta/url/a-element-xhtml.xhtml.ini15
-rw-r--r--testing/web-platform/meta/url/a-element.html.ini15
-rw-r--r--testing/web-platform/meta/url/url-constructor.any.js.ini30
-rw-r--r--testing/web-platform/meta/url/url-setters-a-area.window.js.ini6
-rw-r--r--testing/web-platform/meta/url/url-setters.any.js.ini6
-rw-r--r--testing/web-platform/meta/urlpattern/urlpattern-hasregexpgroups.any.js.ini2
-rw-r--r--testing/web-platform/meta/urlpattern/urlpattern.any.js.ini2
-rw-r--r--testing/web-platform/meta/urlpattern/urlpattern.https.any.js.ini2
-rw-r--r--testing/web-platform/meta/wasm/jsapi/idlharness.any.js.ini23
-rw-r--r--testing/web-platform/meta/web-locks/bfcache/abort.tentative.https.html.ini6
-rw-r--r--testing/web-platform/meta/web-otp/__dir__.ini1
-rw-r--r--testing/web-platform/meta/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html.ini12
-rw-r--r--testing/web-platform/meta/webauthn/createcredential-pubkeycredparams.https.html.ini12
-rw-r--r--testing/web-platform/meta/webcodecs/audio-encoder-config.https.any.js.ini12
-rw-r--r--testing/web-platform/meta/webcodecs/image-decoder.crossOriginIsolated.https.any.js.ini4
-rw-r--r--testing/web-platform/meta/webcodecs/reconfiguring-encoder.https.any.js.ini12
-rw-r--r--testing/web-platform/meta/webcodecs/temporal-svc-encoding.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webcodecs/video-encoder-config.https.any.js.ini4
-rw-r--r--testing/web-platform/meta/webcodecs/video-encoder-flush.https.any.js.ini19
-rw-r--r--testing/web-platform/meta/webcodecs/video-encoder-h264.https.any.js.ini12
-rw-r--r--testing/web-platform/meta/webcodecs/video-encoder.https.any.js.ini20
-rw-r--r--testing/web-platform/meta/webcodecs/videoDecoder-codec-specific.https.any.js.ini104
-rw-r--r--testing/web-platform/meta/webcodecs/videoFrame-copyTo-rgb.any.js.ini152
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py.ini8
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py.ini9
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/browsing_context/navigation_started/navigation_started.py.ini1
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py.ini21
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/invalid.py.ini24
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/invalid.py.ini68
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py.ini12
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/key_events.py.ini18
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/pointer_mouse_multiclick.py.ini32
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/network/response_completed/response_completed.py.ini3
-rw-r--r--testing/web-platform/meta/webdriver/tests/bidi/storage/delete_cookies/filter.py.ini3
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/element_clear/clear.py.ini10
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/element_click/navigate.py.ini4
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/element_click/user_prompts.py.ini4
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/execute_async_script/promise.py.ini4
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/find_element_from_element/user_prompts.py.ini4
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/find_element_from_shadow_root/find.py.ini8
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/get_page_source/user_prompts.py.ini4
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/get_title/user_prompts.py.ini3
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/new_session/__dir__.ini2
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/perform_actions/key_events.py.ini3
-rw-r--r--testing/web-platform/meta/webdriver/tests/classic/perform_actions/user_prompts.py.ini16
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/arg_min_max.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/batch_normalization.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/buffer.https.any.js.ini88
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/cast.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/clamp.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/concat.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/constant.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/conv2d.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_binary.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_logical.https.any.js.ini14
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_unary.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/elu.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/expand.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/gather.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/gemm.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/hard_swish.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/instance_normalization.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/layer_normalization.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/leaky_relu.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/linear.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/matmul.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/pad.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/pooling.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/prelu.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/reduction.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/relu.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/resample2d.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/reshape.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/sigmoid.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/slice.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/softmax.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/softplus.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/softsign.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/split.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/tanh.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/transpose.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/triangular.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/conformance_tests/gpu/where.https.any.js.ini8
-rw-r--r--testing/web-platform/meta/webnn/validation_tests/convTranspose2d.https.any.js.ini282
-rw-r--r--testing/web-platform/meta/webrtc-encoded-transform/idlharness.https.window.js.ini46
-rw-r--r--testing/web-platform/meta/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini4
-rw-r--r--testing/web-platform/meta/webrtc-ice/__dir__.ini2
-rw-r--r--testing/web-platform/meta/webrtc-stats/rtp-stats-creation.html.ini14
-rw-r--r--testing/web-platform/meta/webrtc/RTCDataChannel-send-close.html.ini3
-rw-r--r--testing/web-platform/meta/webrtc/RTCPeerConnection-iceConnectionState.https.html.ini2
-rw-r--r--testing/web-platform/meta/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html.ini3
-rw-r--r--testing/web-platform/meta/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini3
-rw-r--r--testing/web-platform/meta/webrtc/idlharness.https.window.js.ini19
-rw-r--r--testing/web-platform/meta/webrtc/legacy/simplecall_callbacks.https.html.ini6
-rw-r--r--testing/web-platform/meta/webrtc/simulcast/setParameters-active.https.html.ini4
-rw-r--r--testing/web-platform/meta/websockets/Send-binary-arraybufferview-float16.any.js.ini28
-rw-r--r--testing/web-platform/meta/websockets/basic-auth.any.js.ini24
-rw-r--r--testing/web-platform/meta/websockets/cookies/third-party-cookie-accepted.https.html.ini2
-rw-r--r--testing/web-platform/meta/websockets/interfaces/WebSocket/readyState/003.html.ini5
-rw-r--r--testing/web-platform/meta/webstorage/event_initstorageevent.window.js.ini8
-rw-r--r--testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/entities.html.ini37
-rw-r--r--testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/tree-building.html.ini5
-rw-r--r--testing/web-platform/meta/webxr/idlharness.https.window.js.ini3
-rw-r--r--testing/web-platform/meta/window-management/__dir__.ini1
-rw-r--r--testing/web-platform/meta/workers/Worker-creation-happens-in-parallel.https.html.ini8
-rw-r--r--testing/web-platform/meta/workers/Worker-postMessage-happens-in-parallel.https.html.ini3
-rw-r--r--testing/web-platform/meta/workers/baseurl/alpha/sharedworker-in-worker.html.ini2
-rw-r--r--testing/web-platform/meta/workers/constructors/SharedWorker/same-origin.html.ini2
-rw-r--r--testing/web-platform/meta/workers/constructors/Worker/same-origin.html.ini2
-rw-r--r--testing/web-platform/meta/workers/semantics/interface-objects/001.worker.js.ini2
-rw-r--r--testing/web-platform/meta/workers/semantics/interface-objects/003.any.js.ini3
-rw-r--r--testing/web-platform/meta/xhr/overridemimetype-blob.html.ini20
-rw-r--r--testing/web-platform/meta/xhr/send-data-sharedarraybuffer.any.js.ini5
-rw-r--r--testing/web-platform/moz.build126
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/__dir__.ini1
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.http.html.ini (renamed from testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.http.html.ini)0
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html.ini118
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini222
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_ArrayBuffer/cts.https.html.ini21
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_detach/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini7
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini1739
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini5849
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/queries/occlusionQuery/cts.https.html.ini194
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini46
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini1314
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini651
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html.ini48
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini467
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/onSubmittedWorkDone/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/reflection/cts.https.html.ini13
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/clear_value/cts.https.html.ini20
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini169
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini27
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini442
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html.ini34
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini13
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini1834
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini329
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini110
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini3357
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini104
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini928
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/sampling/filter_mode/cts.https.html.ini8
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/shader_module/compilation_info/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini1345
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini152
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini523
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini894
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini8
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini161
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini471
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini157
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini1170
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini2923
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini3031
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini4277
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini4114
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini4938
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini1051
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini4211
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBuffers/cts.https.html.ini52
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini541
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini1300
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini1021
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini6244
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini937
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini884
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini272
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/setBindGroup/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini724
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini15
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini1547
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini5260
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini7440
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini699
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/attachment_compatibility/cts.https.html.ini321
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html.ini172
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini3344
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini1198
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/inter_stage/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini15
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/multisample_state/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini76
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini742
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini2018
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini82
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini2555
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini5996
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_misc/cts.https.html.ini604
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini97
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/overrides/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini4257
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html.ini124
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini8
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini108
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html.ini72
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html.ini112
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/idl/constructable/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/print_environment/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html.ini220
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini1447
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html.ini161
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini689
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini660
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini36
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini47
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html.ini136
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html.ini132
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini8
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html.ini107
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html.ini178
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini58
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini914
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini153
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bool_logical/cts.https.html.ini68
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication/cts.https.html.ini1
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini40
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini120
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini18
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_addition/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_comparison/cts.https.html.ini30
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_division/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini295
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication/cts.https.html.ini465
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini469
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini282
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini370
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_multiplication/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_remainder/cts.https.html.ini42
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_subtraction/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_arithmetic/cts.https.html.ini99
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_comparison/cts.https.html.ini66
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_arithmetic/cts.https.html.ini57
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/abs/cts.https.html.ini34
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acos/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini51
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/all/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/any/cts.https.html.ini11
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini518
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asin/cts.https.html.ini20
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asinh/cts.https.html.ini30
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan2/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atanh/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini125
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini304
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini414
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini145
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicMin/cts.https.html.ini96
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini213
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini101
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini174
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini693
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ceil/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini193
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cos/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cosh/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini37
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countOneBits/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countTrailingZeros/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/degrees/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/determinant/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini139
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini232
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdx/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxCoarse/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini42
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdy/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyCoarse/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyFine/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp/cts.https.html.ini13
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp2/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini36
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini161
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstLeadingBit/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstTrailingBit/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/floor/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini79
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini15
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html.ini60
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/insertBits/cts.https.html.ini44
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini47
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ldexp/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini54
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log/cts.https.html.ini25
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini48
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/max/cts.https.html.ini50
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/min/cts.https.html.ini23
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini210
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/modf/cts.https.html.ini20
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini95
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16snorm/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16unorm/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8snorm/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8unorm/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini142
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/radians/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini128
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html.ini124
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reverseBits/cts.https.html.ini20
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/round/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/saturate/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini464
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sign/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sin/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini27
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/smoothstep/cts.https.html.ini160
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sqrt/cts.https.html.ini13
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/step/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tan/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tanh/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html.ini122
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini603
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html.ini9097
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/transpose/cts.https.html.ini38
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/trunc/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16float/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini86
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini240
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini11380
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html.ini526
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini787
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini2560
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini20
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_assignment/cts.https.html.ini1
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html.ini22
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_conversion/cts.https.html.ini15
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_logical/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html.ini74
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_arithmetic/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini134
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_arithmetic/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_complement/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini67
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_complement/cts.https.html.ini5
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini36
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html.ini64
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html.ini8
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini3886
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/atomicity/cts.https.html.ini10
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/barrier/cts.https.html.ini172
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/coherence/cts.https.html.ini164
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/weak/cts.https.html.ini64
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini2581
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini1877
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini3
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini704
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html.ini13
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini2507
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/stage/cts.https.html.ini9
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html.ini9
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini1026
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/const_assert/const_assert/cts.https.html.ini44
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html.ini69
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html.ini202
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html.ini63
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html.ini83
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini2724
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini507
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini2512
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini1820
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini1802
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini2203
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini2074
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html.ini192
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html.ini99
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html.ini125
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html.ini134
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html.ini134
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html.ini116
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html.ini123
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html.ini107
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html.ini86
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini382
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html.ini148
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html.ini103
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini70
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/ceil/cts.https.html.ini136
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini157
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html.ini41
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html.ini60
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html.ini114
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html.ini114
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html.ini169
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html.ini41
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini626
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html.ini161
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini225
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html.ini50
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html.ini50
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html.ini71
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html.ini51
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini245
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini208
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini173
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html.ini123
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html.ini189
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini137
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html.ini137
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini377
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html.ini99
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini87
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html.ini74
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html.ini74
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html.ini217
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini259
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini28
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html.ini136
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html.ini56
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html.ini45
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini45
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini55
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini45
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html.ini154
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html.ini61
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html.ini127
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html.ini114
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/round/cts.https.html.ini54
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/saturate/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini4687
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html.ini31
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html.ini50
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html.ini74
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html.ini234
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini64
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html.ini175
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini81
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html.ini115
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini2181
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini1080
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini2404
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini2293
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html.ini142
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini1665
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini1366
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini1077
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini2187
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini2837
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini1005
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html.ini188
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html.ini52
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html.ini52
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html.ini52
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html.ini68
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html.ini68
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html.ini40
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html.ini40
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini93
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html.ini289
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini1043
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini479
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini102
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html.ini89
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html.ini96
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html.ini58
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html.ini7
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini2005
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini34325
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini589
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/attribute/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html.ini106
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html.ini15
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html.ini80
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini588
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/enable/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini4253
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini653
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html.ini71
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html.ini40
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html.ini9
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html.ini172
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html.ini140
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini350
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html.ini4
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini1238
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/id/cts.https.html.ini12
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini1244
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini334
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini277
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html.ini16
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html.ini158
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html.ini92
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html.ini70
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html.ini329
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini1531
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini1030
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html.ini14
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/texel_data/cts.https.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini301
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/getCurrentTexture/cts.https.html.ini17
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini564
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini325
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini3064
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini296
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini605
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini454
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html.ini24
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/__dir__.ini1
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/threading.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute/basic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/device/lost.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/labels.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/reflection.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/basic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/draw.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/stencil.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/read.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/write.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/uncapturederror.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/create.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/destroy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/mapping.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/threading.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/compute_pipeline.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroup.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createSampler.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createView.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/debugMarker.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/error_scope.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/create.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/destroy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/submit.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/destroy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/examples.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constants/flags.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constructable.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/print_environment.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/precedence.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/float_parse.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/call.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/for.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/if.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/return.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/while.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_layout.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/padding.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shadow.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/stage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/compound.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/discard.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/zero_init.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/const.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/let.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/override.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/precedence.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/align.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/attribute.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break_if.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/builtin.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/comments.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/compound.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/continuing.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/discard.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/enable.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/literal.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/must_use.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/requires.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/source.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/id.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/size.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/alias.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/array.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/atomics.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/matrix.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/struct.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/textures.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/vector.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/color_space_conversions.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texel_data.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texture_ok.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/configure.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/external_texture/video.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/worker/worker.worker.html.ini2
-rw-r--r--testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.https.html.ini6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/framework/fixture.js15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/framework/test_config.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/file_loader.js2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/logging/log_message.js51
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/logging/logger.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/logging/result.js32
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/logging/test_case_recorder.js8
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/query/compare.js5
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/query/parseQuery.js43
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/query/query.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/test_group.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/test_suite_listing.js2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/tree.js5
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/version.js2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/internal/websocket_logger.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js53
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker-worker.js51
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker.js192
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/utils_worker.js35
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/wrap_for_worker.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/runtime/wpt.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/util/crc32.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/util/parse_imports.js36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/common/util/util.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.http.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.http.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_clear.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html)1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba16float.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html)1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_store.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html)2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_image_rendering.https.html15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/delay_get_texture.https.html10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_clear-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_clear-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_colorspace-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_colorspace-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_complex-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_complex-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_image_rendering-ref.html25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/delay_get_texture-ref.html17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/resize_observer-ref.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/resize_observer-ref.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/resize_observer.https.html (renamed from testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/resize_observer.https.html)0
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/reflection/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/idl/constructable/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/print_environment/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html43
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html8
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html51
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/stage/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html46
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html3
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html40
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html9
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html37
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html42
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/threading.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute/basic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/device/lost.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/labels.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/reflection.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/basic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/draw.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/stencil.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/read.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/write.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/uncapturederror.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/create.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/destroy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/mapping.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/threading.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/compute_pipeline.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroup.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createSampler.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createView.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/debugMarker.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/error_scope.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/create.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/destroy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/submit.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/destroy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/examples.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constants/flags.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constructable.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/print_environment.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/precedence.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/float_parse.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/call.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/for.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/if.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/return.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/while.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_layout.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/padding.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shadow.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/stage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/compound.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/discard.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/zero_init.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/const.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/let.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/override.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/precedence.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/align.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/attribute.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break_if.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/builtin.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/comments.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/compound.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/continuing.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/discard.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/enable.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/literal.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/must_use.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/requires.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/source.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/id.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/size.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/alias.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/array.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/atomics.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/matrix.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/struct.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/textures.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/vector.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/color_space_conversions.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texel_data.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texture_ok.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/configure.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/external_texture/video.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/worker/worker.worker.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.d.js27
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.js179
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/README.md99
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/hashes.json111
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/abs.binbin0 -> 17976 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acos.binbin0 -> 26440 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acosh.binbin0 -> 30248 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asin.binbin0 -> 26440 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asinh.binbin0 -> 11664 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan.binbin0 -> 20128 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan2.binbin0 -> 51608 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atanh.binbin0 -> 21104 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_addition.binbin0 -> 237960 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_division.binbin0 -> 77496 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_logical.binbin0 -> 12456 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_addition.binbin0 -> 175672 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_matrix_multiplication.binbin0 -> 82608 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_scalar_multiplication.binbin0 -> 291528 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_subtraction.binbin0 -> 181112 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_vector_multiplication.binbin0 -> 152528 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_multiplication.binbin0 -> 207864 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_remainder.binbin0 -> 77496 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_subtraction.binbin0 -> 237960 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/ai_arithmetic.binbin0 -> 831992 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_addition.binbin0 -> 169680 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_division.binbin0 -> 120856 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_logical.binbin0 -> 15912 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_addition.binbin0 -> 557464 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.binbin0 -> 1481368 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.binbin0 -> 906440 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_subtraction.binbin0 -> 534232 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_vector_multiplication.binbin0 -> 601680 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_multiplication.binbin0 -> 171072 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_remainder.binbin0 -> 118944 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_subtraction.binbin0 -> 169680 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_addition.binbin0 -> 279984 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_division.binbin0 -> 174960 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_logical.binbin0 -> 18984 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_addition.binbin0 -> 991896 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.binbin0 -> 2510560 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.binbin0 -> 1534768 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_subtraction.binbin0 -> 995984 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_vector_multiplication.binbin0 -> 950336 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_multiplication.binbin0 -> 257976 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_remainder.binbin0 -> 171384 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_subtraction.binbin0 -> 279968 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_arithmetic.binbin0 -> 727864 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_comparison.binbin0 -> 3872 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_arithmetic.binbin0 -> 225816 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_comparison.binbin0 -> 2192 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/bitcast.binbin0 -> 2240896 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ceil.binbin0 -> 16016 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/clamp.binbin0 -> 1048136 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cos.binbin0 -> 20176 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cosh.binbin0 -> 14904 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cross.binbin0 -> 829096 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/degrees.binbin0 -> 18048 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/derivatives.binbin0 -> 11264 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/determinant.binbin0 -> 9944 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/distance.binbin0 -> 1731496 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/dot.binbin0 -> 469272 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp.binbin0 -> 34592 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp2.binbin0 -> 34592 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/faceForward.binbin0 -> 4214688 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/floor.binbin0 -> 16016 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fma.binbin0 -> 886720 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fract.binbin0 -> 16408 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/frexp.binbin0 -> 47072 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/inverseSqrt.binbin0 -> 78424 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ldexp.binbin0 -> 33096 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/length.binbin0 -> 35696 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log.binbin0 -> 148848 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log2.binbin0 -> 148848 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/max.binbin0 -> 37944 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/min.binbin0 -> 37944 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/mix.binbin0 -> 5817432 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/modf.binbin0 -> 82448 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/normalize.binbin0 -> 47608 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pack2x16float.binbin0 -> 1791400 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pow.binbin0 -> 1308224 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/quantizeToF16.binbin0 -> 8904 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/radians.binbin0 -> 10992 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/reflect.binbin0 -> 277720 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/refract.binbin0 -> 2828888 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/round.binbin0 -> 14816 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/saturate.binbin0 -> 17096 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sign.binbin0 -> 21224 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sin.binbin0 -> 20176 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sinh.binbin0 -> 14904 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/smoothstep.binbin0 -> 629408 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sqrt.binbin0 -> 10024 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/step.binbin0 -> 33160 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tan.binbin0 -> 21776 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tanh.binbin0 -> 11448 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/transpose.binbin0 -> 129192 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/trunc.binbin0 -> 14696 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_arithmetic.binbin0 -> 30376 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_assignment.binbin0 -> 10296 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_arithmetic.binbin0 -> 3256 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_assignment.binbin0 -> 6936 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/bool_conversion.binbin0 -> 6480 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_arithmetic.binbin0 -> 15208 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_conversion.binbin0 -> 97912 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_arithmetic.binbin0 -> 19544 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_conversion.binbin0 -> 105744 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_arithmetic.binbin0 -> 1648 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_conversion.binbin0 -> 11856 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/u32_conversion.binbin0 -> 10680 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16float.binbin0 -> 4832 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16snorm.binbin0 -> 4968 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16unorm.binbin0 -> 4968 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8snorm.binbin0 -> 7416 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8unorm.binbin0 -> 7416 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-hflip.mp4bin0 -> 3174 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-180.mp4bin16261 -> 3113 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-270.mp4bin16261 -> 3211 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-90.mp4bin16261 -> 3204 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-vflip.mp4bin0 -> 3174 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601.mp4bin16261 -> 3174 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp8-bt601.webmbin17910 -> 2421 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-hflip.mp4bin0 -> 2077 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-180.mp4bin0 -> 2079 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-270.mp4bin0 -> 2016 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-90.mp4bin0 -> 2079 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-vflip.mp4bin0 -> 2077 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.mp4bin0 -> 2077 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.webmbin13116 -> 1847 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt709.webmbin12584 -> 1789 bytes
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/adapter/requestDevice.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/copyTextureToTexture.spec.js115
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/image_copy.spec.js100
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.js8
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil.spec.js329
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/reflection.spec.js197
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/render_pipeline/sample_mask.spec.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/3d_texture_slices.spec.js363
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/color_target_state.spec.js8
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth.spec.js9
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_bias.spec.js12
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_clip_clamp.spec.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_copy.js1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_ds_test.js1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_sampling.js36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/texture_zero_init_test.js538
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/texture_zero.spec.js556
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/shader_module/compilation_info.spec.js39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_only.spec.js626
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_write.spec.js385
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/format_reinterpretation.spec.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/write.spec.js347
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/buffer/mapping.spec.js39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/features/query_types.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/limit_utils.js115
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroups.spec.js156
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.spec.js301
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js9
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js8
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js52
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js91
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js48
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js48
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxVertexBuffers.spec.js68
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/compute_pipeline.spec.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroup.spec.js49
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroupLayout.spec.js47
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createTexture.spec.js45
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createView.spec.js11
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/cmds/copyTextureToTexture.spec.js15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/createRenderBundleEncoder.spec.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/encoder_open_state.spec.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js343
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/queries/general.spec.js42
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/render_bundle.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/error_scope.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/gpu_external_texture_expiration.spec.js35
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/image_copy.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/texture_related.spec.js2
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/layout_shader_compat.spec.js287
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/query_set.spec.js53
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/texture.spec.js11
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/attachment_compatibility.spec.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/render_pass_descriptor.spec.js190
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/common.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/depth_stencil_state.spec.js12
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/fragment_state.spec.js79
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/inter_stage.spec.js72
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/misc.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/resource_compatibility.spec.js95
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_pass_encoder.spec.js277
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_common.spec.js97
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_misc.spec.js311
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/shader_module/entry_point.spec.js228
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/state/device_lost/destroy.spec.js12
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/texture/bgra8unorm_storage.spec.js31
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/utils.js275
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/validation_test.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/capability_info.js90
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroup.spec.js178
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroupLayout.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js9
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture.spec.js94
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/depth_stencil_state.spec.js53
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/shader_module.spec.js207
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/texture/createTexture.spec.js133
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/constants.js5
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/format_info.js1159
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/gpu_test.js234
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/idl/constructable.spec.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/listing.js1240
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/multisample_info.js75
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/print_environment.spec.js70
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/array/index.spec.js354
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/matrix/index.spec.js200
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/structure/index.spec.js508
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/components.spec.js118
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/index.spec.js87
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.cache.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.cache.js90
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.spec.js139
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.cache.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.cache.js29
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.spec.js45
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.cache.js49
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.spec.js69
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.cache.js51
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.spec.js69
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.cache.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.cache.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.spec.js83
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.cache.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.cache.js145
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.spec.js303
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_comparison.spec.js124
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/binary.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise.spec.js505
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise_shift.spec.js11
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bool_logical.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.cache.js144
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.spec.js157
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.cache.js144
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.spec.js157
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js36
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.cache.js64
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.cache.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.cache.js306
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.spec.js392
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.cache.js21
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.cache.js293
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.spec.js379
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.cache.js21
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.spec.js34
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.spec.js64
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/all.spec.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/any.spec.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.spec.js41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.spec.js52
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.cache.js35
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.cache.js32
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.spec.js63
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/harness.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.cache.js837
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.spec.js1142
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/builtin.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.spec.js79
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.cache.js131
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.spec.js138
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.spec.js47
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countLeadingZeros.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countOneBits.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countTrailingZeros.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.spec.js79
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.spec.js52
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.cache.js14
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.js215
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.cache.js99
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.spec.js112
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.cache.js49
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.spec.js210
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.cache.js118
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.spec.js238
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4I8Packed.spec.js74
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4U8Packed.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdx.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxCoarse.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxFine.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdy.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyCoarse.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyFine.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.spec.js69
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.spec.js69
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/extractBits.spec.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.cache.js125
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.spec.js196
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstLeadingBit.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstTrailingBit.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.spec.js61
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.spec.js70
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.cache.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.spec.js81
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.cache.js103
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.spec.js310
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/insertBits.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.cache.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.spec.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.cache.js61
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.spec.js94
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.cache.js42
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.spec.js142
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.cache.js30
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.cache.js30
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.spec.js98
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.spec.js98
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.cache.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.spec.js210
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.cache.js75
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.spec.js192
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.spec.js86
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.cache.js55
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16snorm.spec.js13
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16unorm.spec.js13
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8snorm.spec.js19
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8unorm.spec.js19
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8.spec.js69
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp.spec.js73
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8.spec.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.spec.js67
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.cache.js41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.spec.js46
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.spec.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.cache.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.spec.js149
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.cache.js116
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.spec.js189
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reverseBits.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.cache.js24
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.spec.js55
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/select.spec.js119
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.cache.js31
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.spec.js47
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.cache.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.spec.js71
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.spec.js47
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.cache.js41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.spec.js57
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.cache.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.spec.js41
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimension.spec.js160
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimensions.spec.js518
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSample.spec.js99
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleBias.spec.js22
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleCompare.spec.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/texture_utils.js809
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.cache.js27
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.cache.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.spec.js39
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.cache.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.spec.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.cache.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.spec.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.cache.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.spec.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.cache.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.spec.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.cache.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.spec.js25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xI8.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xU8.spec.js48
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad.spec.js182
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/user/ptr_params.spec.js849
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case.js440
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case_cache.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/non_zero.spec.js797
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/zero_value.spec.js162
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expectation.js38
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expression.js756
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/interval_filter.js9
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/precedence.spec.js113
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/address_of_and_indirection.spec.js171
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.cache.js13
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.spec.js30
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.cache.js51
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.cache.js11
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.spec.js30
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.cache.js21
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.spec.js65
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_complement.spec.js32
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.cache.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.spec.js85
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_logical.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.cache.js13
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.cache.js135
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.spec.js226
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.cache.js13
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.cache.js79
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.spec.js111
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.cache.js11
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.spec.js15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_complement.spec.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.cache.js116
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.spec.js158
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_complement.spec.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.cache.js107
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.spec.js144
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/unary.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/call.spec.js113
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/for.spec.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/loop.spec.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/switch.spec.js33
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/while.spec.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_layout.spec.js1059
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/barrier.spec.js185
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/memory_model_setup.js335
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence.spec.js333
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access.spec.js28
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access_vertex.spec.js1
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/compute_builtins.spec.js177
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/fragment_builtins.spec.js1410
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/user_io.spec.js213
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/workgroup_size.spec.js150
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/stage.spec.js133
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/compound.spec.js137
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/discard.spec.js645
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/zero_init.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/types.js200
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/const_assert/const_assert.spec.js32
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/compound_statement.spec.js98
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/const.spec.js158
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/context_dependent_resolution.spec.js338
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/let.spec.js180
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/override.spec.js178
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/var.spec.js529
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/access/vector.spec.js7
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/add_sub_mul.spec.js320
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/and_or_xor.spec.js182
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/bitwise_shift.spec.js182
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/comparison.spec.js186
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/div_rem.spec.js279
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/abs.spec.js114
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acos.spec.js162
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acosh.spec.js158
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/all.spec.js191
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/any.spec.js191
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/arrayLength.spec.js109
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asin.spec.js161
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asinh.spec.js153
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan.spec.js146
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan2.spec.js293
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atanh.spec.js169
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atomics.spec.js233
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/barriers.spec.js109
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/ceil.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/clamp.spec.js14
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/const_override_validation.js262
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cos.spec.js59
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cosh.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countLeadingZeros.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countOneBits.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countTrailingZeros.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cross.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/degrees.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/derivatives.spec.js129
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/determinant.spec.js95
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/distance.spec.js149
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4I8Packed.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4U8Packed.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp2.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/extractBits.spec.js218
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/faceForward.spec.js152
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstLeadingBit.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstTrailingBit.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/floor.spec.js108
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/fract.spec.js94
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/frexp.spec.js94
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/insertBits.spec.js241
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/inverseSqrt.spec.js76
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/length.spec.js56
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log.spec.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log2.spec.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/max.spec.js91
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/min.spec.js91
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/modf.spec.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/normalize.spec.js146
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16snorm.spec.js58
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16unorm.spec.js58
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8snorm.spec.js58
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8unorm.spec.js58
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/quantizeToF16.spec.js113
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/radians.spec.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reflect.spec.js131
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reverseBits.spec.js198
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/round.spec.js31
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/saturate.spec.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/select.spec.js250
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/shader_stage_utils.js64
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sign.spec.js63
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sin.spec.js60
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sinh.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/smoothstep.spec.js241
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sqrt.spec.js66
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/step.spec.js108
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tan.spec.js76
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tanh.spec.js98
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGather.spec.js335
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGatherCompare.spec.js264
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureLoad.spec.js370
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSample.spec.js267
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.spec.js54
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBias.spec.js309
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompare.spec.js308
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel.spec.js268
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleGrad.spec.js317
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleLevel.spec.js282
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureStore.spec.js168
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/trunc.spec.js94
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16float.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm.spec.js62
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xI8.spec.js61
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xU8.spec.js61
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/overload_resolution.spec.js268
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/precedence.spec.js188
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/address_of_and_indirection.spec.js243
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/arithmetic_negation.spec.js114
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/bitwise_complement.spec.js114
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/logical_negation.spec.js114
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/pointer_composite_access.spec.js130
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures.spec.js48
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/alias_analysis.spec.js555
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/restrictions.spec.js313
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break_if.spec.js141
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/compound.spec.js52
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/continuing.spec.js185
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/diagnostic.spec.js260
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/enable.spec.js18
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/must_use.spec.js63
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/pipeline_stage.spec.js42
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/requires.spec.js103
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/semicolon.spec.js15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/shadow_builtins.spec.js995
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/statement_behavior.spec.js143
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/binding.spec.js14
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/builtins.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group.spec.js14
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group_and_binding.spec.js6
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/layout_constraints.spec.js543
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/locations.spec.js149
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/size.spec.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/alias.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/array.spec.js122
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/atomics.spec.js145
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/matrix.spec.js152
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/textures.spec.js170
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/uniformity/uniformity.spec.js211
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/binary_stream.js10
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/check_contents.js30
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/color_space_conversion.js32
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/compare.js26
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/constants.js15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/conversion.js1625
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/device_pool.js12
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/floating_point.js557
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/math.js461
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/pretty_diff_tables.js35
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/shader.js23
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/base.js44
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/color_space_conversions.spec.js108
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.js50
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.spec.js16
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_view.js17
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texture_ok.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/configure.spec.js5
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/getCurrentTexture.spec.js75
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/readbackFromWebGPUCanvas.spec.js155
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/canvas.spec.js4
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/video.spec.js88
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/external_texture/video.spec.js347
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html15
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/delay_get_texture.html.js46
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_image_rendering-ref.html25
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/util.js416
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js20
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.spec.js72
-rw-r--r--testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker_launcher.js61
-rw-r--r--testing/web-platform/tests/.azure-pipelines.yml98
-rw-r--r--testing/web-platform/tests/.github/workflows/documentation.yml2
-rw-r--r--testing/web-platform/tests/.github/workflows/interfaces.yml2
-rw-r--r--testing/web-platform/tests/.github/workflows/manifest.yml2
-rw-r--r--testing/web-platform/tests/.github/workflows/regen_certs.yml4
-rw-r--r--testing/web-platform/tests/FileAPI/blob/Blob-constructor.any.js3
-rw-r--r--testing/web-platform/tests/IndexedDB/idb-binary-key-detached.htm4
-rw-r--r--testing/web-platform/tests/IndexedDB/idb-binary-key-roundtrip.htm1
-rw-r--r--testing/web-platform/tests/IndexedDB/serialize-sharedarraybuffer-throws.https.html2
-rw-r--r--testing/web-platform/tests/IndexedDB/structured-clone.any.js11
-rw-r--r--testing/web-platform/tests/WebCryptoAPI/getRandomValues.any.js7
-rw-r--r--testing/web-platform/tests/accessibility/crashtests/detached-line.html29
-rw-r--r--testing/web-platform/tests/accname/name/comp_name_from_content.html2
-rw-r--r--testing/web-platform/tests/accname/name/comp_text_node.html10
-rw-r--r--testing/web-platform/tests/attribution-reporting/referrer-policy.sub.https.html56
-rw-r--r--testing/web-platform/tests/attribution-reporting/request-format.sub.https.html2
-rw-r--r--testing/web-platform/tests/attribution-reporting/resources/helpers.js12
-rw-r--r--testing/web-platform/tests/clipboard-apis/clipboard-item.https.html41
-rw-r--r--testing/web-platform/tests/close-watcher/abortsignal.html4
-rw-r--r--testing/web-platform/tests/close-watcher/basic.html22
-rw-r--r--testing/web-platform/tests/close-watcher/esc-key/keypress.html2
-rw-r--r--testing/web-platform/tests/close-watcher/esc-key/keyup.html2
-rw-r--r--testing/web-platform/tests/close-watcher/esc-key/not-user-activation.html4
-rw-r--r--testing/web-platform/tests/close-watcher/inside-event-listeners.html24
-rw-r--r--testing/web-platform/tests/close-watcher/resources/helpers.js11
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/README.md25
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/n-activate-preventDefault.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/n-activate.html2
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/n-closerequest-n.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/n-destroy-n.html2
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/n.html2
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nn-CloseWatcher.html24
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nn-activate-CloseWatcher.html6
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nn-activate-dialog.html16
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nn-dialog.html24
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nn.html26
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover.html2
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher.html25
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nnn-dialog.html25
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nnn.html27
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/ny-activate-preventDefault.html6
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/ny.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyn.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nynn-destroy.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nynn.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyn-CloseWatcher.html34
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyn-dialog.html34
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyn.html36
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyyn-CloseWatcher.html38
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyyn-dialog.html38
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/nyyyn.html40
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/y.html2
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yn-activate.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yn.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/ynn-CloseWatcher.html29
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/ynn-dialog.html29
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/ynn.html31
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yy.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yyn.html6
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover.html4
-rw-r--r--testing/web-platform/tests/close-watcher/user-activation/yyy.html6
-rw-r--r--testing/web-platform/tests/compression/decompression-buffersource.tentative.any.js12
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_duplicate_updates.https.any.js4
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_known_sources.https.any.js21
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_options.https.any.js43
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_not_triggered.https.window.js4
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_triggered.https.window.js4
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_supported_sources.https.any.js21
-rw-r--r--testing/web-platform/tests/compute-pressure/compute_pressure_timestamp.https.any.js90
-rw-r--r--testing/web-platform/tests/compute-pressure/idlharness.https.any.js2
-rw-r--r--testing/web-platform/tests/compute-pressure/observe_return_type.https.any.js18
-rw-r--r--testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html2
-rw-r--r--testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html2
-rw-r--r--testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html2
-rw-r--r--testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html2
-rw-r--r--testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-sandbox-same-origin-self.html2
-rw-r--r--testing/web-platform/tests/content-security-policy/generic/case-insensitive-scheme.sub.html51
-rw-r--r--testing/web-platform/tests/content-security-policy/generic/wildcard-host-part.sub.window.js27
-rw-r--r--testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html13
-rw-r--r--testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html.headers2
-rw-r--r--testing/web-platform/tests/credential-management/digital-identity.https.html58
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-context.https.html19
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-disconnect.sub.https.html29
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-endpoint-redirects.https.html5
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-error-basic.https.html6
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html35
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html35
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html22
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html34
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html34
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html39
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html41
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html47
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html42
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html42
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html49
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html38
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html37
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html36
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-after-onload.https.html29
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-before-onload.https.html37
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-during-onload.https.html30
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-register/fedcm-no-registered-idps.https.html25
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html2
-rw-r--r--testing/web-platform/tests/credential-management/fedcm-token-returned-with-http-error.https.html12
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm-helper.sub.js20
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/accounts_check_same_site_strict.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/continue_on.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/request-params-check.py11
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/token_check_same_site_strict.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/token_with_account_id.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/token_with_auto_selected_flag.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/token_with_http_error.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/fedcm/token_with_rp_mode.py2
-rw-r--r--testing/web-platform/tests/credential-management/support/set_cookie.headers5
-rw-r--r--testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011-ref.xht13
-rw-r--r--testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011.xht21
-rw-r--r--testing/web-platform/tests/css/compositing/background-blending/crashtests/bgblend-root-change.html17
-rw-r--r--testing/web-platform/tests/css/compositing/mix-blend-mode/mix-blend-mode-parent-element-overflow-hidden-and-border-radius-2.html39
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-center-offset-change.html41
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll.html38
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-fallback-invalidation.html53
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-inherited.html63
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-invalid-fallback.html234
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.html55
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.tentative.html55
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.html66
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.tentative.html66
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.html68
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.tentative.html68
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.html78
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.tentative.html78
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.html62
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html62
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden-ref.html37
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden.html67
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-013.html66
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-014.html69
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor-ref.html42
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor.html55
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/at-position-try-cssom.html138
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/base-style-invalidation.html64
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/chrome-336164421-crash.html13
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/chrome-336322507-crash.html15
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/inset-area-function.html71
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/inset-area-in-position-try.html188
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-computed.tentative.html2
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-parsing.tentative.html2
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-try-backdrop.html33
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-try-order-inset-area.html196
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.html47
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html47
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-valid.tentative.html2
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html64
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html64
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html59
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html59
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed-ref.html5
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html38
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html73
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html66
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html77
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004-ref.html34
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html80
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html68
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html68
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html50
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html50
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html35
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html35
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html65
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html65
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html60
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.html50
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.tentative.html50
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.html48
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.tentative.html48
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.html44
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html44
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html62
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html62
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.html37
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.tentative.html37
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.html61
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html61
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.html48
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html48
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor-dynamic.html62
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor.html56
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001-ref.html (renamed from testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001.tentative-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002-ref.html (renamed from testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002.tentative-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004-ref.html (renamed from testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004.tentative-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback-ref.html (renamed from testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback.tentative-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-computed.tentative.html12
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-invalid.tentative.html29
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-valid.tentative.html11
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand-computed.html16
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand.html49
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-computed.tentative.html12
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-invalid.tentative.html29
-rw-r--r--testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-valid.tentative.html11
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081-print-ref.html33
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081a-print.html33
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081b-print.html33
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081c-print.html33
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081d-print.html33
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082-print-ref.html40
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082a-print.html44
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082b-print.html44
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082c-print.html44
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082d-print.html44
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083a.html42
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083b.html42
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083c.html42
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083d.html42
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068-print-ref.html25
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068a-print.html30
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068b-print.html30
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068c-print.html30
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068d-print.html30
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069-print-ref.html35
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069a-print.html40
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069b-print.html40
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069c-print.html40
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069d-print.html40
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070a.html41
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070b.html41
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070c.html41
-rw-r--r--testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070d.html41
-rw-r--r--testing/web-platform/tests/css/css-break/ruby-002.html10
-rw-r--r--testing/web-platform/tests/css/css-cascade/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/css/css-cascade/all-prop-revert-layer.html2
-rw-r--r--testing/web-platform/tests/css/css-cascade/scope-pseudo-element-ref.html69
-rw-r--r--testing/web-platform/tests/css/css-cascade/scope-pseudo-element.html76
-rw-r--r--testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html3
-rw-r--r--testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/support/prefers-color-scheme.svg10
-rw-r--r--testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image.html8
-rw-r--r--testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation.html37
-rw-r--r--testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation-ref.html24
-rw-r--r--testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation.html38
-rw-r--r--testing/web-platform/tests/css/css-color/parsing/color-valid-color-mix-function.html773
-rw-r--r--testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b-ref.html40
-rw-r--r--testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b.xht60
-rw-r--r--testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b-ref.html41
-rw-r--r--testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b.xht61
-rw-r--r--testing/web-platform/tests/css/css-contain/contain-layout-baseline-005.html1
-rw-r--r--testing/web-platform/tests/css/css-contain/contain-layout-button-001.html24
-rw-r--r--testing/web-platform/tests/css/css-contain/contain-layout-button-001.tentative.html24
-rw-r--r--testing/web-platform/tests/css/css-contain/contain-layout-button-002.tentative.html18
-rw-r--r--testing/web-platform/tests/css/css-contain/container-queries/custom-property-style-queries.html35
-rw-r--r--testing/web-platform/tests/css/css-contain/container-queries/registered-color-style-queries.html41
-rw-r--r--testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-background-clip-crash.html23
-rw-r--r--testing/web-platform/tests/css/css-contain/reference/contain-layout-baseline-005-ref.html1
-rw-r--r--testing/web-platform/tests/css/css-contain/reference/contain-layout-button-001-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-contain/reference/contain-layout-button-002-ref.html13
-rw-r--r--testing/web-platform/tests/css/css-content/parsing/content-valid.html4
-rw-r--r--testing/web-platform/tests/css/css-counter-styles/counter-style-at-rule/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/css-counter-styles/cssom/WEB_FEATURES.yml26
-rw-r--r--testing/web-platform/tests/css/css-display/accessibility/display-contents-role-and-label.html38
-rw-r--r--testing/web-platform/tests/css/css-easing/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/css/css-easing/linear-timing-functions-output.html100
-rw-r--r--testing/web-platform/tests/css/css-easing/linear-timing-functions-output.tentative.html100
-rw-r--r--testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.html42
-rw-r--r--testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.tentative.html39
-rw-r--r--testing/web-platform/tests/css/css-flexbox/WEB_FEATURES.yml7
-rw-r--r--testing/web-platform/tests/css/css-flexbox/intrinsic-size/col-wrap-020.html34
-rw-r--r--testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip-ref.html14
-rw-r--r--testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip.html18
-rw-r--r--testing/web-platform/tests/css/css-fonts/WEB_FEATURES.yml14
-rw-r--r--testing/web-platform/tests/css/css-fonts/font-size-adjust-reload.html3
-rw-r--r--testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font-notref.html17
-rw-r--r--testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font.html17
-rw-r--r--testing/web-platform/tests/css/css-fonts/parsing/WEB_FEATURES.yml16
-rw-r--r--testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-invalid.html50
-rw-r--r--testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-valid.html13
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/MPLUS1-Regular_without-cmap14-subset.ttfbin0 -> 1280 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/NotoColorEmoji-Regular_subset.ttfbin0 -> 31728 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_subset.ttfbin0 -> 1776 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_without-cmap14-subset.ttfbin0 -> 1736 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansJP-Regular_with-cmap14-subset.ttfbin0 -> 1688 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansMath-Regular_without-cmap14-subset.ttfbin0 -> 5308 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/resources/vs/STIXTwoMath-Regular_with-cmap14-subset.ttfbin0 -> 5984 bytes
-rw-r--r--testing/web-platform/tests/css/css-fonts/support/css/variation-sequences.css38
-rw-r--r--testing/web-platform/tests/css/css-fonts/support/js/variation-sequences.js125
-rw-r--r--testing/web-platform/tests/css/css-fonts/variation-sequences-ref.html11
-rw-r--r--testing/web-platform/tests/css/css-fonts/variation-sequences.html18
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001.html)8
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003-ref.html)46
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003.html)8
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004-ref.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004.html (renamed from testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004.html)7
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-003.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001-ref.html9
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001.html15
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002-ref.html62
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002.html71
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html3
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html3
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001-ref.html143
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html91
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002-ref.html142
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html93
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003-ref.html420
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html88
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004-ref.html349
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html88
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005-ref.html21
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html25
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006-ref.html31
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006.html29
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/support/masonry-intrinsic-sizing-visual.css48
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-003.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-006.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-007.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html144
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-not-inhibited-001.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-001.html3
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-002.html3
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/parsing/masonry-parsing.html3
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-002.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize-ref.html10
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize.html18
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip-ref.html18
-rw-r--r--testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip.html22
-rw-r--r--testing/web-platform/tests/css/css-grid/subgrid/line-names-013.html31
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-004-2.html2
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020-ref.html26
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020.html32
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021-ref.html15
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021.html29
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html35
-rw-r--r--testing/web-platform/tests/css/css-images/gradient/repeating-gradient-hsl-and-oklch.html2
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001c.tentative.html71
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html57
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html58
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001p.tentative.html57
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containsize-png-001-ref.tentative.html60
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containsize-png-001c.tentative.html71
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containsize-png-001e.tentative.html57
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containsize-png-001i.tentative.html58
-rw-r--r--testing/web-platform/tests/css/css-images/object-fit-containsize-png-001p.tentative.html57
-rw-r--r--testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-001.html2
-rw-r--r--testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html17
-rw-r--r--testing/web-platform/tests/css/css-lists/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error-ref.html1
-rw-r--r--testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error.html3
-rw-r--r--testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position.html2
-rw-r--r--testing/web-platform/tests/css/css-masking/clip-path/animations/two-clip-path-animation-diff-length4.html50
-rw-r--r--testing/web-platform/tests/css/css-masking/mask-image/mask-image-svg-viewport-changed.html18
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-021.tentative.html56
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-abspos-011.tentative.html52
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-001.tentative.html28
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-002.tentative.html33
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-003.tentative.html28
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-004.tentative.html33
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-005.tentative.html28
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-006.tentative.html33
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-007.tentative.html31
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-008.tentative.html29
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-009.tentative.html29
-rw-r--r--testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-010.tentative.html44
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-021-ref.html36
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-abspos-011-ref.html39
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-001-ref.html22
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-005-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-006-ref.html28
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-007-ref.html26
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-008-ref.html23
-rw-r--r--testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-010-ref.html37
-rw-r--r--testing/web-platform/tests/css/css-overflow/scroll-with-ancestor-border-radius.html59
-rw-r--r--testing/web-platform/tests/css/css-overflow/scroll-with-border-radius.html51
-rw-r--r--testing/web-platform/tests/css/css-page/fixedpos-009-print-ref.html32
-rw-r--r--testing/web-platform/tests/css/css-page/fixedpos-009-print.html24
-rw-r--r--testing/web-platform/tests/css/css-page/fixedpos-010-print-ref.html28
-rw-r--r--testing/web-platform/tests/css/css-page/fixedpos-010-print.html25
-rw-r--r--testing/web-platform/tests/css/css-page/page-box-000-print-ref.html12
-rw-r--r--testing/web-platform/tests/css/css-page/page-box-000-print.html15
-rw-r--r--testing/web-platform/tests/css/css-page/page-size-012-print-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-page/page-size-012-print.html28
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-left-004.html37
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-left-005.html38
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-left-006.html38
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-002.html38
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-003.html36
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-scrolled-remove-sibling-002.html42
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-top-004.html37
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-top-005.html38
-rw-r--r--testing/web-platform/tests/css/css-position/sticky/position-sticky-top-006.html38
-rw-r--r--testing/web-platform/tests/css/css-properties-values-api/crashtests/computed-property-universal-syntax.html20
-rw-r--r--testing/web-platform/tests/css/css-properties-values-api/registered-property-computation.html8
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade-002-ref.html42
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade-002.html120
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade-008.html31
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade-009.html41
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-002.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-002.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-004-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-004.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/reference/cascade-highlight-005-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005.html (renamed from testing/web-platform/tests/css/css-pseudo/cascade-highlight-005.html)4
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-003-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-003.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-004-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-004.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-005-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-005.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006-ref.xhtml (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-006-ref.xhtml)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006.xhtml (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-006.xhtml)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-007.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-007.html)4
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-cascade-008-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008.html35
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-009.html41
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-inheritance.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-visited.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-002.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-002.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004-notref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004-notref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006-ref.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006-ref.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006.html)2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-pseudos-computed.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html (renamed from testing/web-platform/tests/css/css-pseudo/highlight-pseudos-visited-computed-001.html)0
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001-ref.html16
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001.html28
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal-ref.html73
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal.html41
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical-ref.html70
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical.html43
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-styling-001.html8
-rw-r--r--testing/web-platform/tests/css/css-pseudo/highlight-styling-002.html8
-rw-r--r--testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001-ref.html12
-rw-r--r--testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001.html24
-rw-r--r--testing/web-platform/tests/css/css-pseudo/target-text-dynamic-004.html2
-rw-r--r--testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal-ref.html19
-rw-r--r--testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal.html25
-rw-r--r--testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical-ref.html20
-rw-r--r--testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical.html26
-rw-r--r--testing/web-platform/tests/css/css-ruby/line-spacing.html11
-rw-r--r--testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005-ref.html9
-rw-r--r--testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005.html9
-rw-r--r--testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003-ref.html5
-rw-r--r--testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003.html6
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-001.html4
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-002.html4
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-003.html3
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-004.html3
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-005.html4
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-006.html2
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-007.html4
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-008.html4
-rw-r--r--testing/web-platform/tests/css/css-scoping/font-face-009.html4
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/resources/common.js56
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/resources/programmatic-scroll-common.js26
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/resources/user-scroll-common.js29
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html86
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html19
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html19
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html23
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html23
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html77
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html20
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html20
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html22
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html22
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block-iframe.html48
-rw-r--r--testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html124
-rw-r--r--testing/web-platform/tests/css/css-shadow-parts/invalidation-part-pseudo.html1
-rw-r--r--testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation-ref.html3
-rw-r--r--testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation.html26
-rw-r--r--testing/web-platform/tests/css/css-sizing/aspect-ratio/support/2x2-green.webmbin555 -> 559 bytes
-rw-r--r--testing/web-platform/tests/css/css-sizing/contain-intrinsic-size/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/css-syntax/custom-property-rule-ambiguity.html2
-rw-r--r--testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003-ref.html17
-rw-r--r--testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003.html32
-rw-r--r--testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero-ref.html9
-rw-r--r--testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero.html14
-rw-r--r--testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero-ref.html9
-rw-r--r--testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero.html14
-rw-r--r--testing/web-platform/tests/css/css-text/hyphens/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001-ref.html25
-rw-r--r--testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html25
-rw-r--r--testing/web-platform/tests/css/css-transitions/shadow-root-insertion.html43
-rw-r--r--testing/web-platform/tests/css/css-transitions/starting-style-size-container.html53
-rw-r--r--testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html19
-rw-r--r--testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html19
-rw-r--r--testing/web-platform/tests/css/css-ui/webkit-appearance-auto-non-html-namespace-001.html19
-rw-r--r--testing/web-platform/tests/css/css-values/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html41
-rw-r--r--testing/web-platform/tests/css/css-values/calc-size/calc-size-parsing.tentative.html12
-rw-r--r--testing/web-platform/tests/css/css-values/container-progress-computed.tentative.html16
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/3d-transform-incoming.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/3d-transform-outgoing.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/block-with-overflowing-text.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/break-inside-avoid-child.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/capture-with-offscreen-child.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/capture-with-opacity-zero-child.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/content-with-transform-new-image.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/content-with-transform-old-image.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/css-tags-paint-order-with-entry.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/dialog-in-rtl-iframe.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/event-pseudo-name.html1
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/far-away-capture.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html68
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html68
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html67
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html67
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-ref.html27
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html60
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-ref.html28
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html93
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-new-has-scrollbar.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-old-has-scrollbar.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html14
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/iframe-transition.sub.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/inline-with-offset-from-containing-block.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-and-old-sizes-match.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped-ref.html34
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped.html50
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-captures-clip-path.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-captures-different-size.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-captures-spans.html1
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left-ref.html20
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left.html46
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-has-scrollbars.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-is-inline.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-object-fit-fill.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/new-content-scaling.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/object-view-box-old-image.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-captures-clip-path.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-captures-different-size.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-captures-opacity.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-captures-root.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-has-scrollbars.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-is-inline.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-object-fit-fill.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path-reference.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden-ref.html33
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden.html57
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d-ref.html20
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d.html44
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-rendering-invalidation.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildcard.html (renamed from testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildard.html)0
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/root-captured-as-different-tag.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html13
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html1
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/rotated-cat-off-top-edge.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/scroller-child-abspos.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/scroller-child.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/scroller.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/set-current-time.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-absolute.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-includes-scrollbar-gutter.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-static.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text-and-box-decorations.html3
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text.html3
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/transition-in-empty-iframe.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/web-animations-api-parse-pseudo-argument.html2
-rw-r--r--testing/web-platform/tests/css/css-view-transitions/web-animations-api.html2
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom-nested.html (renamed from testing/web-platform/tests/css/zoom/iframe-zoom-nested.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom.sub.html (renamed from testing/web-platform/tests/css/zoom/iframe-zoom.sub.html)2
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-nested-ref.html (renamed from testing/web-platform/tests/css/zoom/reference/iframe-zoom-nested-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-ref.html (renamed from testing/web-platform/tests/css/zoom/reference/iframe-zoom-ref.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/resources/iframe_content.html (renamed from testing/web-platform/tests/css/zoom/resources/iframe_content.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-no-zoom.html (renamed from testing/web-platform/tests/css/zoom/resources/nested-iframe-no-zoom.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-with-zoom.html (renamed from testing/web-platform/tests/css/zoom/resources/nested-iframe-with-zoom.html)0
-rw-r--r--testing/web-platform/tests/css/css-viewport/zoom/scroll-top-test-with-zoom.html33
-rw-r--r--testing/web-platform/tests/css/cssom-view/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/cssom-view/offsetTop-offsetLeft-with-zoom.html15
-rw-r--r--testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.html66
-rw-r--r--testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html66
-rw-r--r--testing/web-platform/tests/css/cssom/WEB_FEATURES.yml7
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html19
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path-ref.html22
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html19
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter-ref.html22
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter.html20
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html19
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity-ref.html23
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity.html20
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-ref.html23
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation-ref.html51
-rw-r--r--testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation.html44
-rw-r--r--testing/web-platform/tests/css/filter-effects/resources/backdrop-filter-backdrop-root.css30
-rw-r--r--testing/web-platform/tests/css/filter-effects/support/hueRotate.svg2
-rw-r--r--testing/web-platform/tests/css/mediaqueries/WEB_FEATURES.yml5
-rw-r--r--testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image-ref.html19
-rw-r--r--testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image.html8
-rw-r--r--testing/web-platform/tests/css/motion/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/motion/animation/offset-rotate-interpolation.html9
-rw-r--r--testing/web-platform/tests/css/selectors/WEB_FEATURES.yml7
-rw-r--r--testing/web-platform/tests/css/selectors/focus-visible-028.html84
-rw-r--r--testing/web-platform/tests/css/selectors/invalidation/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/css/selectors/user-invalid.html49
-rw-r--r--testing/web-platform/tests/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html133
-rw-r--r--testing/web-platform/tests/css/selectors/user-valid.html44
-rw-r--r--testing/web-platform/tests/custom-elements/form-associated/form-associated-callback.html2
-rw-r--r--testing/web-platform/tests/deprecation-reporting/__dir__.ini1
-rw-r--r--testing/web-platform/tests/device-posture/device-posture-change-event.https.html23
-rw-r--r--testing/web-platform/tests/device-posture/device-posture-clear.https.html29
-rw-r--r--testing/web-platform/tests/device-posture/device-posture-event-listener.https.html25
-rw-r--r--testing/web-platform/tests/device-posture/device-posture-media-queries.https.html27
-rw-r--r--testing/web-platform/tests/docs/admin/pywebsocket3.rst56
-rw-r--r--testing/web-platform/tests/docs/running-tests/from-local-system.md2
-rw-r--r--testing/web-platform/tests/docs/writing-tests/file-names.md12
-rw-r--r--testing/web-platform/tests/docs/writing-tests/testdriver.md6
-rw-r--r--testing/web-platform/tests/dom/events/scrolling/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html54
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/Node-moveBefore.html297
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/chrome-338071841-crash.html6
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-left.html51
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html48
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html54
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left.html41
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html54
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html36
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html45
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-document.html45
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html64
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html43
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-trigger.html43
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/focus-preserve.html85
-rw-r--r--testing/web-platform/tests/dom/nodes/moveBefore/tentative/fullscreen-preserve.html49
-rw-r--r--testing/web-platform/tests/dom/observable/tentative/observable-every.any.js250
-rw-r--r--testing/web-platform/tests/dom/observable/tentative/observable-filter.any.js12
-rw-r--r--testing/web-platform/tests/dom/observable/tentative/observable-find.any.js85
-rw-r--r--testing/web-platform/tests/dom/observable/tentative/observable-inspect.any.js412
-rw-r--r--testing/web-platform/tests/dom/observable/tentative/observable-some.any.js96
-rw-r--r--testing/web-platform/tests/dom/ranges/Range-isPointInRange-shadowdom.tentative.html75
-rw-r--r--testing/web-platform/tests/dom/xslt/resources/xml2html.xsl2
-rw-r--r--testing/web-platform/tests/dpub-aam/role/roles.html4
-rw-r--r--testing/web-platform/tests/editing/data/delete.js6
-rw-r--r--testing/web-platform/tests/editing/data/forwarddelete.js26
-rw-r--r--testing/web-platform/tests/editing/edit-context/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/editing/include/editor-test-utils.js75
-rw-r--r--testing/web-platform/tests/editing/other/delete-without-unwrapping-first-line-of-child-block.html1020
-rw-r--r--testing/web-platform/tests/encoding/encodeInto.any.js1
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html51
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html62
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested.https.html61
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html50
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html46
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html51
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html50
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html46
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html46
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin.https.html46
-rw-r--r--testing/web-platform/tests/fenced-frame/fence-report-event-sub-fencedframe.https.html46
-rw-r--r--testing/web-platform/tests/fenced-frame/resources/utils.js17
-rw-r--r--testing/web-platform/tests/fenced-frame/setting-null-config-navigates-to-about-blank.https.html15
-rw-r--r--testing/web-platform/tests/fetch/api/basic/request-headers.any.js1
-rw-r--r--testing/web-platform/tests/fetch/api/basic/request-upload.any.js4
-rw-r--r--testing/web-platform/tests/fetch/api/crashtests/huge-fetch.any.js16
-rw-r--r--testing/web-platform/tests/fetch/api/request/request-bad-port.any.js2
-rw-r--r--testing/web-platform/tests/fetch/api/resources/huge-response.py22
-rw-r--r--testing/web-platform/tests/fetch/api/response/response-clone.any.js1
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html27
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html27
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html27
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html54
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-decompression.tentative.https.html1
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-element.tentative.https.html1
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-header.tentative.https.html1
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/dictionary-registration.tentative.https.html1
-rw-r--r--testing/web-platform/tests/fetch/compression-dictionary/resources/compression-dictionary-util.js4
-rw-r--r--testing/web-platform/tests/fetch/metadata/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/fetch/metadata/generated/appcache-manifest.https.sub.html341
-rw-r--r--testing/web-platform/tests/fetch/metadata/generated/worker-dedicated-constructor.sub.html120
-rw-r--r--testing/web-platform/tests/fetch/metadata/tools/fetch-metadata.conf.yml76
-rw-r--r--testing/web-platform/tests/fetch/metadata/tools/templates/appcache-manifest.sub.https.html63
-rw-r--r--testing/web-platform/tests/fledge/tentative/TODO8
-rw-r--r--testing/web-platform/tests/fledge/tentative/auction-config-passed-to-worklets.https.window.js12
-rw-r--r--testing/web-platform/tests/fledge/tentative/auction-config.https.window.js115
-rw-r--r--testing/web-platform/tests/fledge/tentative/component-ads.https.window.js59
-rw-r--r--testing/web-platform/tests/fledge/tentative/component-auction.https.window.js124
-rw-r--r--testing/web-platform/tests/fledge/tentative/deprecated-render-url-replacements.https.window.js196
-rw-r--r--testing/web-platform/tests/fledge/tentative/interest-group-update.https.window.js406
-rw-r--r--testing/web-platform/tests/fledge/tentative/resources/fledge-util.sub.js43
-rw-r--r--testing/web-platform/tests/fledge/tentative/resources/trusted-bidding-signals.py20
-rw-r--r--testing/web-platform/tests/fledge/tentative/resources/update-url.py6
-rw-r--r--testing/web-platform/tests/fledge/tentative/score-ad-browser-signals.https.window.js57
-rw-r--r--testing/web-platform/tests/fledge/tentative/trusted-bidding-signals.https.window.js45
-rw-r--r--testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html48
-rw-r--r--testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html6
-rw-r--r--testing/web-platform/tests/fonts/math/stretchy.woffbin1428 -> 1464 bytes
-rw-r--r--testing/web-platform/tests/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otfbin0 -> 40336 bytes
-rw-r--r--testing/web-platform/tests/fonts/noto/cjk/README.md20
-rwxr-xr-xtesting/web-platform/tests/fonts/noto/cjk/subset.sh22
-rw-r--r--testing/web-platform/tests/gamepad/gamepad-dual-rumble-effect-manual.https.html94
-rw-r--r--testing/web-platform/tests/gamepad/gamepad-trigger-rumble-effect-manual.https.html95
-rw-r--r--testing/web-platform/tests/geolocation-API/disabled-by-permissions-policy.https.sub.html42
-rw-r--r--testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html60
-rw-r--r--testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute.https.sub.html2
-rw-r--r--testing/web-platform/tests/geolocation-API/enabled-by-permissions-policy.https.sub.html42
-rw-r--r--testing/web-platform/tests/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html45
-rw-r--r--testing/web-platform/tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-position-inline-nearest.html30
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.pngbin207 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.pngbin112 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.png (renamed from testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.png)bin207 -> 207 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.pngbin205 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.pngbin207 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.pngbin112 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.pngbin205 -> 0 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.png (renamed from testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.png)bin205 -> 205 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.png (renamed from testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.png)bin117 -> 117 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html29
-rw-r--r--testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.png (renamed from testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.png)bin207 -> 207 bytes
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html20
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html20
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html20
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html85
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html101
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html20
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html20
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur-expected.html85
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html106
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html21
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html21
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html21
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html21
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html21
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.beginLayer-options.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.ctm.getTransform.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.exceptions-are-no-op.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending-expected.html32
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow-expected.html36
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html39
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite-expected.html32
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow-expected.html36
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html39
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html38
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html38
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html38
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending-expected.html51
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html39
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html55
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html42
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite-expected.html51
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html39
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html55
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html42
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html38
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html42
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.html37
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html41
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.html37
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html41
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html37
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow-expected.html53
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html40
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html77
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html81
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html83
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow-expected.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow.html37
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation-expected.html910
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation.html861
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-restore.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.endLayer.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-beginLayer-restore.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-endLayer.html7
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html40
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html34
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html33
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html35
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html33
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.html87
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html36
-rw-r--r--testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html33
-rw-r--r--testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh-expected.html22
-rw-r--r--testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh.html32
-rw-r--r--testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter.svg10
-rw-r--r--testing/web-platform/tests/html/canvas/element/text/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html30
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.worker.js25
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html30
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.worker.js25
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html30
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.worker.js25
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html30
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.worker.js25
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html23
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html23
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html23
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html121
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html194
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html23
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html23
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur-expected.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html24
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html24
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html24
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html199
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html24
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only-expected.html15
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html24
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending-expected.html32
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow-expected.html36
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html42
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html56
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html52
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite-expected.html32
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow-expected.html36
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html42
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html56
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html52
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html41
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html41
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow-expected.html35
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html41
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending-expected.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html42
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html45
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html59
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html56
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite-expected.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html42
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html45
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html59
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html56
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html41
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html45
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html59
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html55
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html40
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html44
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html58
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html40
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow-expected.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html44
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html58
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html98
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html102
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html104
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html108
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states-expected.html50
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html40
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow-expected.html53
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html43
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html57
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html72
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html116
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html76
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html89
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html120
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html78
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html91
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html122
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html82
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html95
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html126
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states-expected.html31
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html51
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow-expected.html34
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html40
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html54
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation-expected.html910
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html961
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html1314
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.html11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.worker.js11
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html27
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js21
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html27
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js21
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html38
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html34
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js29
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html36
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js31
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html34
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js29
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.html85
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html37
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js32
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html34
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js29
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js84
-rw-r--r--testing/web-platform/tests/html/canvas/offscreen/text/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/canvas/tools/gentestutilsunion.py387
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_element.html2
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_element_grid.html56
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_grid.html30
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen.html2
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen_grid.html52
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_worker.html2
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/reftest_worker_grid.html62
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/testharness_element_grid.html52
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/testharness_offscreen_grid.html28
-rw-r--r--testing/web-platform/tests/html/canvas/tools/templates/testharness_worker_grid.js27
-rw-r--r--testing/web-platform/tests/html/canvas/tools/yaml-new/filters.yaml8
-rw-r--r--testing/web-platform/tests/html/canvas/tools/yaml-new/layers.yaml292
-rw-r--r--testing/web-platform/tests/html/canvas/tools/yaml/element/meta.yaml14
-rw-r--r--testing/web-platform/tests/html/canvas/tools/yaml/offscreen/meta.yaml14
-rw-r--r--testing/web-platform/tests/html/cross-origin-embedder-policy/META.yml1
-rw-r--r--testing/web-platform/tests/html/cross-origin-opener-policy/META.yml1
-rw-r--r--testing/web-platform/tests/html/dom/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/dom/aria-element-reflection.html4
-rw-r--r--testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-003.tentative.html4
-rw-r--r--testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html25
-rw-r--r--testing/web-platform/tests/html/dom/render-blocking/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/dom/usvstring-reflection.https.html2
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/drag-event-div-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/drag-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/dragend-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/dragenter-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/dragleave-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/dragover-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/dragstart-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/events/drop-event-manual.html7
-rw-r--r--testing/web-platform/tests/html/editing/dnd/resources/dragdrop_support.js9
-rw-r--r--testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/effectAllowed-manual.html9
-rw-r--r--testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/files-manual.html13
-rw-r--r--testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/setData-manual.html9
-rw-r--r--testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/types-manual.html9
-rw-r--r--testing/web-platform/tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html1
-rw-r--r--testing/web-platform/tests/html/interaction/focus/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/interaction/focus/sequential-focus-navigation-and-the-tabindex-attribute/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/meta/refresh-time.html53
-rw-r--r--testing/web-platform/tests/html/meta/resources/gotRefreshed.html3
-rw-r--r--testing/web-platform/tests/html/meta/resources/refresh.99.html5
-rw-r--r--testing/web-platform/tests/html/meta/resources/refresh1.99.html5
-rw-r--r--testing/web-platform/tests/html/meta/resources/refresh1.html5
-rw-r--r--testing/web-platform/tests/html/meta/resources/refresh1dotdot5dot.html5
-rw-r--r--testing/web-platform/tests/html/rendering/non-replaced-elements/flow-content-0/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref-2.html2
-rw-r--r--testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html2
-rw-r--r--testing/web-platform/tests/html/rendering/the-details-element/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance-ref.html3
-rw-r--r--testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance.html7
-rw-r--r--testing/web-platform/tests/html/semantics/embedded-content/media-elements/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/semantics/embedded-content/the-object-element/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/semantics/forms/constraints/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-textarea-defaultValue.html98
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-button-element/WEB_FEATURES.yml10
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-fieldset-element/WEB_FEATURES.yml8
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-form-element/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-input-element/WEB_FEATURES.yml11
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-02.html42
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-output-element/WEB_FEATURES.yml5
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/WEB_FEATURES.yml9
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist-ref.html17
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html25
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html46
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/select-reset-non-interoperable-styles.css5
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/stylable-select-styles.css49
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist-ref.html14
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist.tentative.html3
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist-ref.html14
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist.tentative.html3
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist-ref.html17
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist.tentative.html3
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr-ref.html23
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html29
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl-ref.html23
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html29
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist-invalidation.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html75
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-keyboard-behavior.tentative.html14
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html2
-rw-r--r--testing/web-platform/tests/html/semantics/forms/the-textarea-element/WEB_FEATURES.yml6
-rw-r--r--testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html47
-rw-r--r--testing/web-platform/tests/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html50
-rw-r--r--testing/web-platform/tests/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html31
-rw-r--r--testing/web-platform/tests/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html51
-rw-r--r--testing/web-platform/tests/html/semantics/invokers/invoketarget-on-input-number.tentative.html78
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference.tentative.html37
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest-ref.html (renamed from testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference-expected.html)0
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest.tentative.html37
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest-ref.html56
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest.tentative.html68
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/bounded-sizes.tentative.html75
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference.tentative.html22
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest-ref.html (renamed from testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference-expected.html)0
-rw-r--r--testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest.tentative.html22
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html1
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html2
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-hover-crash-hang.tentative.html34
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-scroll-within.html52
-rw-r--r--testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html56
-rw-r--r--testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js4
-rw-r--r--testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html70
-rw-r--r--testing/web-platform/tests/html/semantics/scripting-1/the-template-element/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/semantics/selectors/pseudo-classes/WEB_FEATURES.yml11
-rw-r--r--testing/web-platform/tests/html/syntax/parsing/template/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/user-activation/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/html/webappapis/structured-clone/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/inert/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/inert/inert-and-find-flat-tree.html28
-rw-r--r--testing/web-platform/tests/infrastructure/metadata/infrastructure/testdriver/click_iframe_crossorigin.sub.html.ini1
-rw-r--r--testing/web-platform/tests/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html4
-rw-r--r--testing/web-platform/tests/interfaces/DOM-Parsing.idl16
-rw-r--r--testing/web-platform/tests/interfaces/compute-pressure.idl4
-rw-r--r--testing/web-platform/tests/interfaces/css-anchor-position.idl76
-rw-r--r--testing/web-platform/tests/interfaces/css-nesting.idl9
-rw-r--r--testing/web-platform/tests/interfaces/css-properties-values-api.idl8
-rw-r--r--testing/web-platform/tests/interfaces/css-view-transitions-2.idl7
-rw-r--r--testing/web-platform/tests/interfaces/device-attributes.idl13
-rw-r--r--testing/web-platform/tests/interfaces/digital-identities.idl4
-rw-r--r--testing/web-platform/tests/interfaces/document-picture-in-picture.idl2
-rw-r--r--testing/web-platform/tests/interfaces/dom.idl14
-rw-r--r--testing/web-platform/tests/interfaces/gamepad.idl5
-rw-r--r--testing/web-platform/tests/interfaces/geolocation.idl2
-rw-r--r--testing/web-platform/tests/interfaces/html.idl31
-rw-r--r--testing/web-platform/tests/interfaces/mediasession.idl15
-rw-r--r--testing/web-platform/tests/interfaces/sanitizer-api.idl18
-rw-r--r--testing/web-platform/tests/interfaces/service-workers.idl1
-rw-r--r--testing/web-platform/tests/interfaces/shape-detection-api.idl6
-rw-r--r--testing/web-platform/tests/interfaces/shared-storage.idl51
-rw-r--r--testing/web-platform/tests/interfaces/text-detection-api.idl2
-rw-r--r--testing/web-platform/tests/interfaces/trusted-types.idl6
-rw-r--r--testing/web-platform/tests/interfaces/turtledove.idl1
-rw-r--r--testing/web-platform/tests/interfaces/wasm-js-api.idl2
-rw-r--r--testing/web-platform/tests/interfaces/webcodecs.idl4
-rw-r--r--testing/web-platform/tests/interfaces/webgl1.idl1
-rw-r--r--testing/web-platform/tests/interfaces/webidl.idl2
-rw-r--r--testing/web-platform/tests/interfaces/webnn.idl43
-rw-r--r--testing/web-platform/tests/interfaces/webrtc-encoded-transform.idl10
-rw-r--r--testing/web-platform/tests/interfaces/webrtc.idl7
-rw-r--r--testing/web-platform/tests/interfaces/webxr.idl5
-rw-r--r--testing/web-platform/tests/mathml/presentation-markup/operators/mo-axis-height-1.html169
-rw-r--r--testing/web-platform/tests/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html60
-rw-r--r--testing/web-platform/tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html3
-rw-r--r--testing/web-platform/tests/mathml/presentation-markup/operators/size-and-position-of-stretchy-fences-with-default-font-001.html115
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001-ref.html16
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001.html23
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002-ref.html30
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002.html33
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003-ref.html31
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html38
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004-ref.html19
-rw-r--r--testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html22
-rwxr-xr-xtesting/web-platform/tests/mathml/tools/stretchy.py11
-rw-r--r--testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html209
-rw-r--r--testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-video-stats.https.html8
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html8
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html8
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-mimetype.html3
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-pause-resume.html4
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-peerconnection.https.html133
-rw-r--r--testing/web-platform/tests/mediacapture-record/MediaRecorder-stop.html43
-rw-r--r--testing/web-platform/tests/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html245
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/event-constructor.html6
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-cross-origin.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download-userInitiated.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-fragment.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-same-origin-cross-document.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-userInitiated.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-with-target.html7
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-back-forward.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-navigate.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-reload.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form-get.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form-reload.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form-traverse.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form-userInitiated.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form-with-target.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-form.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-fragment.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-pushState.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-cross-document.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-go-0.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-pushState.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-history-replaceState.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-iframe-location.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-location.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-meta-refresh.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-cross-document.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document-in-iframe.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-navigate.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-svg-anchor-fragment.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-to-srcdoc.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open-self.html3
-rw-r--r--testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open.html3
-rw-r--r--testing/web-platform/tests/notifications/tag-different-manual.https.html37
-rw-r--r--testing/web-platform/tests/notifications/tag-same-manual.https.html37
-rw-r--r--testing/web-platform/tests/notifications/tag.https.html47
-rw-r--r--testing/web-platform/tests/orientation-event/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html59
-rw-r--r--testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html86
-rw-r--r--testing/web-platform/tests/permissions-policy/payment-default-permissions-policy.https.sub.html67
-rw-r--r--testing/web-platform/tests/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html64
-rw-r--r--testing/web-platform/tests/permissions-policy/resources/permissions-policy.js38
-rw-r--r--testing/web-platform/tests/pointerevents/deviceproperties/get-device-properties-uniqueid-from-pointer-event.tentative.html45
-rw-r--r--testing/web-platform/tests/pointerevents/deviceproperties/pointer-event-has-device-properties-uniqueid-from-pointer-event-init.tentative.html92
-rw-r--r--testing/web-platform/tests/pointerevents/deviceproperties/unique-id-is-unique-manual.tentative.html142
-rw-r--r--testing/web-platform/tests/preload/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/resource-timing/initiator-type/workers.html2
-rw-r--r--testing/web-platform/tests/resources/chromium/mock-pressure-service.js26
-rw-r--r--testing/web-platform/tests/resources/idlharness.js1
-rw-r--r--testing/web-platform/tests/resources/test/tests/unit/IdlArray/is_json_type.html1
-rw-r--r--testing/web-platform/tests/resources/test/tox.ini2
-rw-r--r--testing/web-platform/tests/resources/testdriver.js51
-rw-r--r--testing/web-platform/tests/resources/testharness.js133
-rw-r--r--testing/web-platform/tests/resources/testharnessreport.js25
-rw-r--r--testing/web-platform/tests/scheduler/tentative/yield/yield-priority-posttask.any.js15
-rw-r--r--testing/web-platform/tests/screen-capture/getallscreensmedia-exposure.tentative.https.window.js19
-rw-r--r--testing/web-platform/tests/screen-details/META.yml2
-rw-r--r--testing/web-platform/tests/screen-wake-lock/wakelock-active-document.https.window.js21
-rw-r--r--testing/web-platform/tests/scroll-animations/css/animation-shorthand.html30
-rw-r--r--testing/web-platform/tests/scroll-to-text-fragment/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/scroll-to-text-fragment/percent-encoding.html33
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/WEB_FEATURES.yml5
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/navigation-timing-sizes.https.html80
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/resources/range-request-with-synth-head-worker.js2
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/tentative/static-router/resources/router-rules.js36
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html28
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html17
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html14
-rw-r--r--testing/web-platform/tests/shadow-dom/declarative/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/shadow-dom/declarative/gethtml.html31
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html1
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html1
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html1
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation.html1
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html43
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html33
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html72
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html64
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html164
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html89
-rw-r--r--testing/web-platform/tests/shadow-dom/focus-navigation/resources/focus-utils.js41
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-include.tentative.https.sub.html1
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-omit.tentative.https.sub.html1
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-same-origin.tentative.https.sub.html1
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html29
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html28
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-false-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html32
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-credentials.tentative.https.sub.html31
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-origin.tentative.https.sub.html30
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html31
-rw-r--r--testing/web-platform/tests/shared-storage/cross-origin-worklet-select-url-and-verify-data-origin.tentative.https.sub.html46
-rw-r--r--testing/web-platform/tests/shared-storage/resources/credentials-test-helper.py3
-rw-r--r--testing/web-platform/tests/shared-storage/resources/simple-module.js4
-rw-r--r--testing/web-platform/tests/shared-storage/resources/simple-module.js.headers2
-rw-r--r--testing/web-platform/tests/speech-api/WEB_FEATURES.yml7
-rw-r--r--testing/web-platform/tests/storage-access-api/helpers.js7
-rw-r--r--testing/web-platform/tests/storage-access-api/requestStorageAccess-cross-origin-iframe-navigation-relax.tentative.sub.https.window.js65
-rw-r--r--testing/web-platform/tests/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js6
-rw-r--r--testing/web-platform/tests/storage-access-api/resources/embedded_forwarder.js50
-rw-r--r--testing/web-platform/tests/storage-access-api/resources/embedded_responder.js2
-rw-r--r--testing/web-platform/tests/storage-access-api/resources/script-with-cookie-header.py3
-rw-r--r--testing/web-platform/tests/storage/buckets/detached-iframe.https.html12
-rw-r--r--testing/web-platform/tests/streams/readable-streams/async-iterator.any.js86
-rw-r--r--testing/web-platform/tests/streams/readable-streams/tee-detached-context-crash.html13
-rw-r--r--testing/web-platform/tests/svg/crashtests/chrome-bug-333487749.html14
-rw-r--r--testing/web-platform/tests/svg/layout/svg-embed-intrinsic-size-min-size.html16
-rw-r--r--testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size-ref.html3
-rw-r--r--testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size.html16
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/green-100x100.svg3
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/non-scaling-stroke-001.html30
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/paint-context-007-ref.svg29
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/paint-context-007.svg32
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/paint-context-008-ref.svg22
-rw-r--r--testing/web-platform/tests/svg/painting/reftests/paint-context-008.svg33
-rw-r--r--testing/web-platform/tests/svg/painting/scripted/marker-element-added.html29
-rw-r--r--testing/web-platform/tests/svg/path/property/serialization.svg2
-rw-r--r--testing/web-platform/tests/svg/types/scripted/SVGLength-rlh.html31
-rw-r--r--testing/web-platform/tests/tools/ci/azure/install_chrome.yml6
-rw-r--r--testing/web-platform/tests/tools/ci/azure/install_firefox.yml7
-rw-r--r--testing/web-platform/tests/tools/ci/jobs.py7
-rw-r--r--testing/web-platform/tests/tools/ci/requirements_build.txt4
-rw-r--r--testing/web-platform/tests/tools/ci/requirements_macos_color_profile.txt2
-rw-r--r--testing/web-platform/tests/tools/ci/requirements_tc.txt4
-rw-r--r--testing/web-platform/tests/tools/ci/tc/tasks/test.yml59
-rw-r--r--testing/web-platform/tests/tools/ci/tc/tests/test_valid.py16
-rw-r--r--testing/web-platform/tests/tools/ci/update_built.py1
-rw-r--r--testing/web-platform/tests/tools/manifest/item.py2
-rw-r--r--testing/web-platform/tests/tools/manifest/requirements.txt2
-rw-r--r--testing/web-platform/tests/tools/manifest/sourcefile.py20
-rw-r--r--testing/web-platform/tests/tools/mypy.ini6
-rw-r--r--testing/web-platform/tests/tools/pytest.ini7
-rw-r--r--testing/web-platform/tests/tools/requirements_flake8.txt4
-rw-r--r--testing/web-platform/tests/tools/requirements_mypy.txt8
-rw-r--r--testing/web-platform/tests/tools/requirements_pytest.txt2
-rw-r--r--testing/web-platform/tests/tools/requirements_tests.txt6
-rw-r--r--testing/web-platform/tests/tools/serve/serve.py17
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/.gitignore4
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/.travis.yml17
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/CONTRIBUTING30
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/MANIFEST.in2
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/PKG-INFO13
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/README.md28
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_handshake_wsh.py3
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_wsh.py3
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/arraybuffer_benchmark.html134
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/bench_wsh.py2
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.html175
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.js238
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark_helper_wsh.py2
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/close_wsh.py4
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/console.html317
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/cookie_wsh.py1
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/example/echo_client.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/handler_map.txt11
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/internal_error_wsh.py3
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.html37
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.js86
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/example/special_headers.cgi26
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/util.js323
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_main.js89
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_worker.js44
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/__init__.py172
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/fast_masking.i98
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/__init__.py101
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/PKG-INFO13
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/SOURCES.txt64
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/dependency_links.txt (renamed from testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/dependency_links.txt)0
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/requires.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/top_level.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/__init__.py172
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/_stream_exceptions.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/_stream_exceptions.py)0
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/common.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/common.py)4
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/dispatch.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/dispatch.py)14
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/extensions.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/extensions.py)6
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/__init__.py105
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/base.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/base.py)15
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/hybi.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/hybi.py)17
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/http_header_util.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/http_header_util.py)2
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/memorizingfile.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/memorizingfile.py)3
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/msgutil.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/msgutil.py)14
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/request_handler.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/request_handler.py)14
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/server_util.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/server_util.py)3
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/standalone.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/standalone.py)31
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/stream.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/stream.py)19
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/util.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/util.py)12
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/websocket_server.py (renamed from testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/websocket_server.py)23
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/setup.cfg4
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/setup.py15
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cacert.pem17
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cert.pem61
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/key.pem15
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/client_for_testing.py28
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/mock.py13
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/run_all.py8
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/set_sys_path.py5
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_dispatch.py9
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_endtoend.py10
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_extensions.py7
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake.py17
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake_hybi.py16
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_http_header_util.py3
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_memorizingfile.py7
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_mock.py5
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_msgutil.py26
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_stream.py7
-rwxr-xr-xtesting/web-platform/tests/tools/third_party/pywebsocket3/test/test_util.py12
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/README1
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/handlers/abort_by_user_wsh.py2
-rw-r--r--testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/hello.pl32
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/FUNDING.yml3
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/config.yml1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/issue.md29
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/dependabot.yml9
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml83
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/workflows/wheels.yml88
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.gitignore16
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.readthedocs.yml13
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/CODE_OF_CONDUCT.md46
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/LICENSE9
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/Makefile35
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/PKG-INFO174
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/README.rst73
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/SECURITY.md12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/compliance/README.rst50
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingclient.json11
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingserver.json12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/compliance/test_client.py48
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/compliance/test_server.py29
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/Makefile23
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/_static/tidelift.pngbin4069 -> 0 bytes
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/conf.py171
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/asyncio.rst69
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/client.rst101
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/common.rst161
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/index.rst21
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/misc.rst49
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/faq/server.rst336
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/autoreload.rst31
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/cheatsheet.rst87
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/django.rst294
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/extensions.rst30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/fly.rst177
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/haproxy.rst61
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/heroku.rst183
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/index.rst56
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/kubernetes.rst215
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/nginx.rst84
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/patterns.rst110
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/quickstart.rst170
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/render.rst172
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/sansio.rst322
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/howto/supervisor.rst131
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/index.rst75
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/intro/index.rst46
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial1.rst591
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial2.rst565
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial3.rst290
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/make.bat35
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/project/changelog.rst1230
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/project/contributing.rst66
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/project/index.rst12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/project/license.rst4
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/project/tidelift.rst112
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/client.rst64
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/common.rst54
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/server.rst113
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/datastructures.rst66
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/exceptions.rst6
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/extensions.rst60
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/features.rst187
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/index.rst90
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/client.rst58
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/common.rst64
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/server.rst62
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/client.rst49
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/common.rst41
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/server.rst60
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/reference/types.rst24
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/requirements.txt8
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/spelling_wordlist.txt85
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.rst348
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.svg63
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/broadcast.rst348
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/compression.rst222
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/data-flow.svg63
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.rst181
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.svg63
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/design.rst572
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/index.rst18
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.graffle25
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.svg3
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/logging.rst245
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/memory.rst48
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/performance.rst20
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.graffle37
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.svg3
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/security.rst41
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/docs/topics/timeouts.rst116
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/Procfile1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/app.py36
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/fly.toml16
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/requirements.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/app.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/haproxy.cfg17
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/supervisord.conf7
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/Procfile1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/app.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/requirements.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/Dockerfile7
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/app.py49
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/benchmark.py27
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/deployment.yaml35
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/app.py29
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/nginx.conf25
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/supervisord.conf7
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/app.py36
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/requirements.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/app.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/supervisord.conf7
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/django/authentication.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/django/notifications.py73
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/django/signals.py23
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/echo.py14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/faq/health_check_server.py22
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_client.py19
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_server.py20
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/hello.py12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_client.py14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_server.py21
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_client.py19
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_server.py23
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/logging/json_log_formatter.py33
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client.py18
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client_secure.py24
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.css33
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.html18
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.js26
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.py49
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/localhost.pem48
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server.py20
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py26
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.html9
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.js12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.py19
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time_2.py28
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.css105
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.js45
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.py62
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/favicon.ico2
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/app.py65
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/index.html10
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/main.js53
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/app.py190
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/index.html15
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/main.js83
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/Procfile1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/app.py198
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/index.html15
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/main.js93
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/requirements.txt1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/app.py226
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.html15
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.js23
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.html9
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.js9
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.html14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.js11
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/index.html12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.html14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.js11
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/script.js51
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/style.css69
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.html15
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.js6
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.html14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.js11
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/clients.py61
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/server.py153
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/compression/benchmark.py163
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/compression/client.py59
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/compression/server.py70
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_frames.py101
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_handshake.py102
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/streams.py301
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_request_parser.py42
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_response_parser.py44
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_websocket_parser.py51
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/favicon.ico2
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/github-social-preview.html39
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/horizontal.svg31
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/icon.html25
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/icon.svg15
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/old.svg14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/logo/vertical.svg31
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/pyproject.toml87
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/setup.cfg42
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/setup.py61
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/PKG-INFO174
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/SOURCES.txt42
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/not-zip-safe1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/top_level.txt3
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/__init__.py236
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/__main__.py139
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/auth.py4
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/client.py63
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/connection.py705
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/datastructures.py8
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/exceptions.py31
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/base.py5
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/permessage_deflate.py1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/frames.py97
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/http.py29
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/http11.py16
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/async_timeout.py265
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/auth.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/client.py102
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/compatibility.py13
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/framing.py42
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/handshake.py18
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/http.py22
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/protocol.py396
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/server.py289
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/protocol.py708
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/server.py175
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/speedups.pyi1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/__init__.py0
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/client.py328
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/connection.py773
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/messages.py281
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/server.py530
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/utils.py46
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/typing.py7
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/uri.py4
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/src/websockets/version.py12
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/__init__.py5
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/extensions/__init__.py0
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_base.py4
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_permessage_deflate.py977
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/extensions/utils.py113
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/__init__.py0
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_auth.py184
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_client_server.py1636
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_framing.py206
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_handshake.py184
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_http.py135
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_protocol.py1708
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/legacy/utils.py84
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/maxi_cov.py156
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/protocol.py29
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/__init__.py0
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/client.py39
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/connection.py109
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/server.py65
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_client.py274
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_connection.py752
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_messages.py479
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_server.py388
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_utils.py33
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/sync/utils.py26
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_auth.py1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_client.py614
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_connection.py14
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_datastructures.py236
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_exceptions.py196
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_exports.py30
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_frames.py495
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_headers.py222
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_http.py1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_http11.py344
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_imports.py64
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.cnf27
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.pem48
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_protocol.py1790
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_server.py686
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_streams.py198
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_typing.py1
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_uri.py96
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/test_utils.py103
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tests/utils.py88
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/tox.ini39
-rw-r--r--testing/web-platform/tests/tools/third_party_modified/mozlog/mozlog/formatters/html/html.py4
-rw-r--r--testing/web-platform/tests/tools/tox.ini2
-rw-r--r--testing/web-platform/tests/tools/wave/requirements.txt2
-rw-r--r--testing/web-platform/tests/tools/wave/tox.ini2
-rw-r--r--testing/web-platform/tests/tools/webtransport/h3/capsule.py2
-rw-r--r--testing/web-platform/tests/tools/wpt/browser.py20
-rw-r--r--testing/web-platform/tests/tools/wpt/install.py3
-rw-r--r--testing/web-platform/tests/tools/wpt/requirements_android.txt2
-rw-r--r--testing/web-platform/tests/tools/wpt/requirements_install.txt2
-rw-r--r--testing/web-platform/tests/tools/wpt/run.py30
-rw-r--r--testing/web-platform/tests/tools/wpt/tests/test_browser.py16
-rw-r--r--testing/web-platform/tests/tools/wpt/tox.ini2
-rw-r--r--testing/web-platform/tests/tools/wpt/utils.py5
-rw-r--r--testing/web-platform/tests/tools/wptrunner/docs/expectation.rst2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/requirements.txt10
-rw-r--r--testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt8
-rw-r--r--testing/web-platform/tests/tools/wptrunner/requirements_opera.txt2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/requirements_safari.txt2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/requirements_sauce.txt2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/tox.ini2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py5
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py105
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py20
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edge.py70
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edgechromium.py70
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py16
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox_android.py6
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py24
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py2
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executoredge.py24
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py15
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py21
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py14
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/testdriver-extra.js8
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/testrunner.py64
-rw-r--r--testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py7
-rw-r--r--testing/web-platform/tests/tools/wptserve/setup.py7
-rw-r--r--testing/web-platform/tests/tools/wptserve/wptserve/response.py4
-rw-r--r--testing/web-platform/tests/tools/wptserve/wptserve/server.py4
-rw-r--r--testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py4
-rw-r--r--testing/web-platform/tests/tools/wptserve/wptserve/ws_h2_handshake.py10
-rw-r--r--testing/web-platform/tests/trust-tokens/end-to-end/has-trust-token-with-no-top-frame.tentative.https.html8
-rw-r--r--testing/web-platform/tests/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html125
-rw-r--r--testing/web-platform/tests/trusted-types/Element-setAttribute.html1
-rw-r--r--testing/web-platform/tests/trusted-types/HTMLElement-generic.html1
-rw-r--r--testing/web-platform/tests/trusted-types/TrustedType-AttributeNodes.html2
-rw-r--r--testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.html113
-rw-r--r--testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html90
-rw-r--r--testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.html154
-rw-r--r--testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html138
-rw-r--r--testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.html3
-rw-r--r--testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttributeNS.html3
-rw-r--r--testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.html3
-rw-r--r--testing/web-platform/tests/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html3
-rw-r--r--testing/web-platform/tests/trusted-types/default-policy-callback-arguments.html2
-rw-r--r--testing/web-platform/tests/trusted-types/modify-attributes-in-callback.html39
-rw-r--r--testing/web-platform/tests/trusted-types/support/resolve-spv.js9
-rw-r--r--testing/web-platform/tests/trusted-types/trusted-types-svg-script-set-href.html107
-rw-r--r--testing/web-platform/tests/trusted-types/trusted-types-svg-script.html102
-rw-r--r--testing/web-platform/tests/url/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/url/resources/setters_tests.json44
-rw-r--r--testing/web-platform/tests/web-animations/animation-model/keyframe-effects/background-shorthand.html55
-rw-r--r--testing/web-platform/tests/web-locks/WEB_FEATURES.yml3
-rw-r--r--testing/web-platform/tests/webauthn/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/webauthn/createcredential-passing.https.html4
-rw-r--r--testing/web-platform/tests/webauthn/createcredential-pubkeycredparams.https.html8
-rw-r--r--testing/web-platform/tests/webauthn/getcredential-allowcredentials.https.html77
-rw-r--r--testing/web-platform/tests/webcodecs/audio-encoder-config.https.any.js4
-rw-r--r--testing/web-platform/tests/webcodecs/video-encoder-flush.https.any.js81
-rw-r--r--testing/web-platform/tests/webcodecs/video-encoder-utils.js19
-rw-r--r--testing/web-platform/tests/webcodecs/videoDecoder-codec-specific.https.any.js69
-rw-r--r--testing/web-platform/tests/webcodecs/videoFrame-copyTo-rgb.any.js252
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py28
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py39
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/invalid.py28
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/locator.py76
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/max_node_count.py123
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/start_nodes.py69
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py53
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/viewport.py4
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/invalid.py5
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py20
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/key_events.py8
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/wheel.py26
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed.py2
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed_status.py55
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/network/response_started/response_started.py26
-rw-r--r--testing/web-platform/tests/webdriver/tests/bidi/storage/__init__.py2
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/add_cookie/add.py4
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/element_clear/__init__.py5
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/element_clear/clear.py66
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/element_clear/disabled.py113
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/element_clear/user_prompts.py8
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/element_click/navigate.py6
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/get_element_text/get.py21
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/get_named_cookie/get.py4
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/__init__.py8
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/enabled.py199
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/user_prompts.py11
-rw-r--r--testing/web-platform/tests/webdriver/tests/classic/perform_actions/wheel.py16
-rw-r--r--testing/web-platform/tests/webdriver/tests/support/dom.py29
-rw-r--r--testing/web-platform/tests/webdriver/tests/support/fixtures_bidi.py12
-rw-r--r--testing/web-platform/tests/webdriver/tests/support/html/test_actions_scroll.html16
-rw-r--r--testing/web-platform/tests/webidl/ecmascript-binding/legacy-factory-function-builtin-properties.window.js6
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/arg_min_max.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/batch_normalization.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/buffer.https.any.js17
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/cast.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/clamp.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/compute-arraybufferview-with-bigger-arraybuffer.https.any.js61
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/concat.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/constant.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/conv2d.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/conv_transpose2d.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/elementwise_binary.https.any.js6
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/elementwise_logical.https.any.js27
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/elementwise_unary.https.any.js12
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/elu.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/expand.https.any.js6
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gather.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gemm.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/arg_min_max.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/batch_normalization.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/buffer.https.any.js16
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/cast.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/clamp.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/concat.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/constant.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/conv2d.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_binary.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_logical.https.any.js20
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_unary.https.any.js13
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/elu.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/expand.https.any.js11
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/gather.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/gemm.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/hard_swish.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/instance_normalization.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/layer_normalization.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/leaky_relu.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/linear.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/matmul.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/pad.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/pooling.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/prelu.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/reduction.https.any.js24
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/relu.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/resample2d.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/reshape.https.any.js11
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/sigmoid.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/slice.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/softmax.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/softplus.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/softsign.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/split.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/tanh.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/transpose.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/triangular.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/gpu/where.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/hard_sigmoid.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/hard_swish.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/instance_normalization.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/layer_normalization.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/leaky_relu.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/linear.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/matmul.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/pad.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/parallel-compute.https.any.js19
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/pooling.https.any.js5
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/prelu.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/reduction.https.any.js31
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/relu.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/resample2d.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/reshape.https.any.js5
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/sigmoid.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/slice.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/softmax.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/softplus.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/softsign.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/split.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/tanh.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/transpose.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/triangular.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/conformance_tests/where.https.any.js4
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/arg_max.json2
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/arg_min.json2
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/matmul.json384
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/prelu.json28
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_l1.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_l2.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum_exp.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_max.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_mean.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_min.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_product.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_sum.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/reduce_sum_square.json8
-rw-r--r--testing/web-platform/tests/webnn/resources/test_data/softplus.json152
-rw-r--r--testing/web-platform/tests/webnn/resources/utils.js140
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/clamp.https.any.js53
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/conv2d.https.any.js475
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/convTranspose2d.https.any.js470
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/elu.https.any.js40
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/expand.https.any.js63
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/gelu.https.any.js10
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/gemm.https.any.js140
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/hardSigmoid.https.any.js28
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/instanceNormalization.https.any.js149
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/layerNormalization.https.any.js180
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/leakyRelu.https.any.js28
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/linear.https.any.js28
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/matmul.https.any.js113
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/pad.https.any.js70
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js94
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/reshape.https.any.js65
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/slice.https.any.js66
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/softplus.https.any.js3
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/split.https.any.js80
-rw-r--r--testing/web-platform/tests/webnn/validation_tests/transpose.https.any.js51
-rw-r--r--testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html4
-rw-r--r--testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedVideoFrame-metadata.https.html26
-rw-r--r--testing/web-platform/tests/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html (renamed from testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html)0
-rw-r--r--testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget-stats-helper.js (renamed from testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget-stats-helper.js)0
-rw-r--r--testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget.html (renamed from testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget.html)0
-rw-r--r--testing/web-platform/tests/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html (renamed from testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html)0
-rw-r--r--testing/web-platform/tests/webrtc/WEB_FEATURES.yml4
-rw-r--r--testing/web-platform/tests/webrtc/back-forward-cache-with-open-webrtc-connection.https.window.js1
-rw-r--r--testing/web-platform/tests/websockets/Send-binary-arraybufferview-float16.any.js40
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/basic_auth_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/delayed-passive-close_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/echo-cookie_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/echo-query_v13_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/echo-query_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/echo_raw_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/echo_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/empty-message_wsh.py2
-rw-r--r--testing/web-platform/tests/websockets/handlers/msg_channel_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/origin_wsh.py2
-rw-r--r--testing/web-platform/tests/websockets/handlers/passive-close-abort_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/protocol_array_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/protocol_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/referrer_wsh.py2
-rw-r--r--testing/web-platform/tests/websockets/handlers/remote-close_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/simple_handshake_wsh.py4
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/sleep_10_v13_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/stash_responder_blocking_wsh.py2
-rwxr-xr-xtesting/web-platform/tests/websockets/handlers/stash_responder_wsh.py2
-rw-r--r--testing/web-platform/tests/webvtt/parsing/cue-text-parsing/tests/tree-building.html3
-rw-r--r--testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html18
-rw-r--r--testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html.headers2
-rw-r--r--testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html20
-rw-r--r--testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html.headers2
-rw-r--r--testing/web-platform/tests/workers/modules/WEB_FEATURES.yml7
-rw-r--r--testing/web-platform/tests/workers/semantics/interface-objects/001.worker.js1
-rw-r--r--testing/web-platform/tests/workers/semantics/interface-objects/003.any.js1
-rw-r--r--testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js3
-rw-r--r--testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js.headers1
-rw-r--r--testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js7
-rw-r--r--testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js.headers1
-rwxr-xr-xtesting/web-platform/tests/wpt4
-rw-r--r--testing/web-platform/tests/x-frame-options/invalid.html6
-rw-r--r--testing/web-platform/tests/xhr/send-data-sharedarraybuffer.any.js2
-rw-r--r--testing/webdriver/src/actions.rs4
-rw-r--r--testing/xpcshell/head.js2
-rwxr-xr-xtesting/xpcshell/runxpcshelltests.py13
-rw-r--r--testing/xpcshell/xpcshellcommandline.py29
5866 files changed, 340319 insertions, 115942 deletions
diff --git a/testing/condprofile/condprof/util.py b/testing/condprofile/condprof/util.py
index 444398b9f4..eeda7482b3 100644
--- a/testing/condprofile/condprof/util.py
+++ b/testing/condprofile/condprof/util.py
@@ -124,7 +124,7 @@ def fresh_profile(profile, customization_data):
logger.info("Downloading addon %s" % name)
# When running on the CI, we expect the xpi files to have been
# fetched by the firefox-addons fetch task dependency (see
- # taskcluster/ci/fetch/browsertime.yml) and the condprof-addons
+ # taskcluster/kinds/fetch/browsertime.yml) and the condprof-addons
# linter enforces the content of the archive to be unpacked into
# a subdirectory named "firefox-addons".
extension = download_file(url, mozfetches_subdir="firefox-addons")
diff --git a/testing/crashtest/crashtests.list b/testing/crashtest/crashtests.list
index a7c539daca..30d6bb8f8f 100644
--- a/testing/crashtest/crashtests.list
+++ b/testing/crashtest/crashtests.list
@@ -83,3 +83,6 @@ include ../../widget/crashtests/crashtests.list
include ../../widget/gtk/crashtests/crashtests.list
include ../../xpcom/string/crashtests/crashtests.list
+
+# Tests that must be run at the very end of all other crashtests.
+include final/crashtests.list
diff --git a/testing/crashtest/final/1419902.html b/testing/crashtest/final/1419902.html
new file mode 100644
index 0000000000..9fa9149564
--- /dev/null
+++ b/testing/crashtest/final/1419902.html
@@ -0,0 +1,34 @@
+<html>
+ <head>
+ <script>
+ // Note that despite what it looks like this test does leave windows open
+ // after the test finishes. That's because some of the window.open calls
+ // trigger an exception but still open a window. Because of the
+ // exception, winsToClose.push is not executed and we have no reference
+ // to the window. So far there is no known way to get a reference to it.
+ // It was also tried to give each opened windowed a named target, save
+ // that list of targets, and use window.open("", targetname) to get a
+ // reference to the window. That also doesn't work because either the
+ // window.open calls never end and this page never loads, or if it does
+ // load after a finite time then still some windows are left open for
+ // some reason.
+ var winsToClose = []
+ onbeforeunload = function() {
+ for (let win of winsToClose) {
+ if (win) {
+ win.close();
+ }
+ }
+ };
+ for (let i = 0; i < 38; i++) {
+ customElements.define("custom-element_0", class extends HTMLElement {
+ constructor() {
+ try { o1 = document.createElement("custom-element_0") } catch (e) {}
+ try { winsToClose.push(window.open("javascript:'<html><body>dummy</body></html>';")); } catch (e) {}
+ }
+ })
+ try { o3 = document.createElement("custom-element_0") } catch (e) {}
+ }
+ </script>
+ </head>
+</html>
diff --git a/testing/crashtest/final/1758199-1.html b/testing/crashtest/final/1758199-1.html
new file mode 100644
index 0000000000..3f7c9227a4
--- /dev/null
+++ b/testing/crashtest/final/1758199-1.html
@@ -0,0 +1,54 @@
+<html class="reftest-wait">
+<script>
+let pp;
+let documentElements = [];
+documentElements.push(document.documentElement);
+
+window.onload = () => {
+ documentElements.push(document.documentElement);
+
+ let o = document.getElementById('a')
+ o.parentNode.appendChild(o)
+ pp = SpecialPowers.wrap(self).printPreview();
+ pp?.print()
+ window.requestIdleCallback(() => {
+ documentElements.push(document.documentElement);
+
+ document.write('');
+
+ setTimeout(finish, 100);
+ });
+}
+
+function finish() {
+
+ // The printPreview call above actually opens two print preview windows
+ // because the <embed src='#'> below causes a second one to open. At least
+ // we close the one window we can access, not sure if there is a way to get
+ // ahold of the other window to close it. So this test leaves a window open
+ // after it finishes.
+ try { pp.close(); } catch (e) {}
+
+ if (document.documentElement) {
+ try { document.documentElement.className = ""; } catch (e) {}
+ }
+
+ // The documentElement that the reftest harness looks at to determine if the
+ // test is done is not what document.documentElement points to when this code
+ // is run. So we save all the document.documentElement's we encounter while
+ // running this test and clear all of their class names.
+ for (let de of documentElements) {
+ if (de) {
+ try {
+ de.className = "";
+ } catch (e) {}
+ }
+ }
+}
+</script>
+<style>
+:first-of-type { padding-block-start: 99% }
+</style>
+<mark id='a'>
+<embed src='#'>
+</html>
diff --git a/testing/crashtest/final/crashtests.list b/testing/crashtest/final/crashtests.list
new file mode 100644
index 0000000000..d56eb5a984
--- /dev/null
+++ b/testing/crashtest/final/crashtests.list
@@ -0,0 +1,8 @@
+# These are tests that open windows and don't close them after the test
+# finishes because there doesn't seem to be a way to close the windows. We run
+# them here after all other crashtests so that the left open windows don't
+# occlude the reftest window, and hence stop the compositor and refresh driver
+# ticks from happening.
+
+skip-if(geckoview) skip-if(geckoview&&isDebugBuild) skip-if(AddressSanitizer) skip-if(ThreadSanitizer) pref(dom.disable_open_during_load,false) load 1419902.html # skip Bug 1419902. Bug 1563013 for GV+WR. Bug 1524493 GV+debug. Bug 1573281 asan # this comes from dom/base/crashtests/
+skip-if(Android) load 1758199-1.html # printPreview doesn't work on android # this comes from layout/printing/crashtests
diff --git a/testing/docs/mochitest-plain/faq.md b/testing/docs/mochitest-plain/faq.md
index a852f135d8..d67f113b63 100644
--- a/testing/docs/mochitest-plain/faq.md
+++ b/testing/docs/mochitest-plain/faq.md
@@ -321,6 +321,67 @@ The accessibility tests could be run locally with the `--enable-a11y-checks` fla
./mach mochitest --enable-a11y-checks somePath/someTestFile.html
```
-On CI, a11y-checks only run on tier 2 Linux 18.04 x64 WebRender (Opt and Shippable) builds. If you'd like to run only a11y-checks on Try, you can run the ``./mach try fuzzy --full` command with the query `a11y-checks linux !wayland !tsan !asan !ccov !debug !devedition` for all checks. Alternatively, to exclude devtools chrome tests, pass the query `swr-a11y-checks` to `./mach try fuzzy --full`.
+On CI, a11y-checks only run on tier 2 Linux 18.04 x64 WebRender (Opt and Shippable) builds. If you'd like to run only a11y-checks on Try, you can run the `./mach try fuzzy --full` command with the query `a11y-checks linux !wayland !tsan !asan !ccov !debug !devedition` for all checks. Alternatively, to exclude devtools chrome tests, pass the query `swr-a11y-checks` to `./mach try fuzzy --full`.
If you have questions on the results of a11y-checks and the ways to remediate any issues, reach out to the Accessibility team the [#accessibility room on Matrix](https://matrix.to/#/#accessibility:mozilla.org).
+
+## How to debug a failing accessibility test (a11y-checks)?
+
+First, review the failure log to learn which element may be not accessible. For example:
+
+```TEST-UNEXPECTED-FAIL | path/to/specific/test/browser_test.js | Node is not accessible via accessibility API: id: foo, tagName: div, className: bar```
+
+This failure reports that when the `browser_test.js` is running, an `<div id="foo" class="bar">` is clicked and this element may not be accessible.
+The next step is to review the code for this element in general to ensure it is built to be accessible:
+1. it [has an interactive role](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#825-877)
+1. it [is enabled](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#768-781)
+1. it [is focusable with the keyboard](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#783-823)
+1. it [is labeled](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#879-993)
+
+When all of the above is true, the element [can be clicked](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#1150-1174).
+
+After that, check the element [is, in fact, visible](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#995-1009) and accessible when the test is clicking it. For example, when dealing with a pop-up panel, sometimes we may need to wait for the panel to be shown before clicking a button inside it.
+
+If the issue is not clear, feel free to reach out to the Accessibility team to brainstorm together.
+
+## My patch is failing a11y-checks. Can I skip them for now?
+
+In general, we skip the a11y_checks only when there are unexplained intermittents or crashes ([example](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/dom/midi/tests/browser.toml#12)). There are very few tests like that in our repository.
+
+If there is a failure and the resolution is not clear yet, or if troubleshooting would need a separate patch, ensure a follow-up bug is filed and refer to it while setting `fail-if` in the test manifest ([example](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/browser/components/ion/test/browser/browser.toml#4)). This allows accessibility tests to still be running and reporting in the log on any new UI that might be added in the future, even without a Tier 2 failure flagged. Then, when the issue is fixed and the test is passing, you can remove the `fail-if` notation from the test manifest. If you forget to remove the `fail-if` notation, you would be notified about an (unexpectedly) passing test to remind you to update the manifest.
+
+## What are the exceptions from a11y_checks? When and how should I implement them?
+
+Sometimes, a test case is expected to fail the Accessibility Utils tests. An example is when a mochitest clicks a disabled button to confirm that, in fact, nothing happens. In these cases, you can intentionally modify the [default test environment object](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js#94-117) to disable specific checks. You can do this by calling `AccessibilityUtils.setEnv` right before the click and then reset it to the original state right after the click (to avoid unintentionally excluding further test cases).
+
+An `AccessibilityUtils.setEnv` call should generally be preceded by a descriptive comment. This helps to avoid unintentional copy-pasting of this code to a new test case, risking an accessibility regression. Refer to the examples linked in the most common exception cases below for example comments.
+
+### Clicking on a disabled control or other non-interactive UI to confirm the click event won't come through
+
+Failure reported as: `Node expected to be enabled but is disabled via the accessibility API`.
+
+These clicks are not meant to be interactive and their targets are not expected to be accessible or enabled via the Accessibility API. Thus, we add an a11y_checks exception for this test via `AccessibilityUtils.setEnv({ mustBeEnabled: false })` ([example](https://searchfox.org/mozilla-central/rev/eb4700a6be8371fe07053bc066c2d48ba813ce3d/browser/components/extensions/test/browser/browser_ext_menus_capture_secondary_click.js#126-131,133))
+
+### Clicking on a non-interactive UI to confirm nothing happens
+
+Failure reported as: `Node is not accessible via accessibility API`.
+
+These clicks are not meant to be interactive and their targets are not expected to be accessible or available via the Accessibility API. Thus, we add an a11y_checks exception for this test via `AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false })` ([example](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/toolkit/mozapps/extensions/test/browser/browser_sidebar_categories.js#85-89,91))
+
+### Clicking on arbitrary web content and remote documents
+
+Failure reported as: `Node is not accessible via accessibility API`.
+
+We do not want to test remote web content because we do not currently support remote documents with a11y_checks. In addition, we recognize that some arbitrary remote content is written to exercise a specific browser function and therefore doesn't need to be complete. Thus, we add an a11y-checks exception for this test via `AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false })` ([example](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/dom/tests/browser/browser_focus_steal_from_chrome_during_mousedown.js#28-32,36))
+
+### Clicking on non-interactive content to dismiss a dialog/menupopup/panel
+
+Failure reported as: `Node is not accessible via accessibility API`.
+
+Some tests send a click on a non-interactive element (e.g. on a container, on the `<body>` of the page, etc.) to close an opened dialog, menu popup or panel. While this method of interaction is inaccessible to some users, it is acceptable as long as there is an alternative, accessible way to dismiss the popup for users of keyboards and assistive technology; e.g. pressing the `Esc` key or a `X` Close button. In this case, we need to add an a11y_checks exception for this test via `AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false })` while explicitly mentioning in the comment that at least one other way to dismiss it exists which does not rely on a mouse ([example clicking on a <body>](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/dom/events/test/clipboard/head.js#104-110,128) and [example clicking on a spacer](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/toolkit/mozapps/extensions/test/browser/browser_menu_button_accessibility.js#32-37,39))
+
+### Non-user-facing test cases that are never expected to be done by an end user (e.g. telemetry, performance, crash tests)
+
+Failure reported as: `Node is not accessible via accessibility API`.
+
+Sometimes, we test a behavior that is never expected to be done by a real user; e.g. confirming a crash test patch is working, or clicking on an element to test a telemetry or performance action. As long as we have other tests checking the same UI for accessibility, you can add an a11y_checks exception for this test via `AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false })` while explicitly mentioning in the comment the reason for this exclusion ([example clicking on a <body> for a performance testing](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/devtools/client/debugger/test/mochitest/browser_dbg-javascript-tracer-next-interation.js#51-56,62), [example of a crashtest](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/layout/base/tests/browser_bug1701027-1.js#94-99), [example of a telemetry behavior test](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_abandonment_tips.js#56-62,64,73-79,81), and [example of clicking on a hidden panel to confirm its content was refreshed](https://searchfox.org/mozilla-central/rev/1f5e1875cbfd5d4b1bfa27ca54832f62dd19589e/browser/base/content/test/permissions/browser_site_scoped_permissions.js#49-56,58,99-106,108)).
diff --git a/testing/docs/tests-for-new-config/index.rst b/testing/docs/tests-for-new-config/index.rst
index 32fdf62b7f..bbd3b2339e 100644
--- a/testing/docs/tests-for-new-config/index.rst
+++ b/testing/docs/tests-for-new-config/index.rst
@@ -110,8 +110,8 @@ Using our example of ``windows_1903``, this would be a new worker type that
would require these edits:
* `transforms/tests.py <https://searchfox.org/mozilla-central/source/taskcluster/taskgraph/transforms/tests.py#97>`__ (duplicate windows 10 entries)
- * `test-platforms.py <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/test-platforms.yml#229>`__ (copy windows10 debug/opt/shippable/asan entries and make win10_1903)
- * `test-sets.py <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/test-sets.yml#293>`__ (ideally you need nothing, otherwise copy ``windows-tests`` and edit the test list)
+ * `test-platforms.py <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/test-platforms.yml#229>`__ (copy windows10 debug/opt/shippable/asan entries and make win10_1903)
+ * `test-sets.py <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/test-sets.yml#293>`__ (ideally you need nothing, otherwise copy ``windows-tests`` and edit the test list)
In general this should allow you to have tests scheduled with no custom flags
in try server and all of these will be scheduled by default on
diff --git a/testing/docs/tests-for-new-config/manual.rst b/testing/docs/tests-for-new-config/manual.rst
index cf2485251a..246d60111a 100644
--- a/testing/docs/tests-for-new-config/manual.rst
+++ b/testing/docs/tests-for-new-config/manual.rst
@@ -204,8 +204,8 @@ Using our example of ``windows_1903``, this would be a new worker type that
would require these edits:
* `transforms/tests.py <https://searchfox.org/mozilla-central/source/taskcluster/taskgraph/transforms/tests.py#97>`__ (duplicate windows 10 entries)
- * `test-platforms.py <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/test-platforms.yml#229>`__ (copy windows10 debug/opt/shippable/asan entries and make win10_1903)
- * `test-sets.py <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/test-sets.yml#293>`__ (ideally you need nothing, otherwise copy ``windows-tests`` and edit the test list)
+ * `test-platforms.py <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/test-platforms.yml#229>`__ (copy windows10 debug/opt/shippable/asan entries and make win10_1903)
+ * `test-sets.py <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/test-sets.yml#293>`__ (ideally you need nothing, otherwise copy ``windows-tests`` and edit the test list)
In general this should allow you to have tests scheduled with no custom flags
in try server and all of these will be scheduled by default on
diff --git a/testing/docs/xpcshell/index.rst b/testing/docs/xpcshell/index.rst
index 6fc6d8ba4b..0387cfb924 100644
--- a/testing/docs/xpcshell/index.rst
+++ b/testing/docs/xpcshell/index.rst
@@ -22,13 +22,13 @@ Creating a new test directory
If you need to create a new test directory, then follow the steps here.
The test runner needs to know about the existence of the tests and how
-to configure them through the use of the ``xpcshell.ini`` manifest file.
+to configure them through the use of the ``xpcshell.toml`` manifest file.
-First add a ``XPCSHELL_TESTS_MANIFESTS += ['xpcshell.ini']`` declaration
-(with the correct relative ``xpcshell.ini`` path) to the ``moz.build``
+First add a ``XPCSHELL_TESTS_MANIFESTS += ['xpcshell.toml']`` declaration
+(with the correct relative ``xpcshell.toml`` path) to the ``moz.build``
file located in or above the directory.
-Then create an empty ``xpcshell.ini`` file to tell the build system
+Then create an empty ``xpcshell.toml`` file to tell the build system
about the individual tests, and provide any additional configuration
options.
@@ -44,7 +44,7 @@ run:
$ hg add path/to/test/test_example.js
This will automatically create the test file and add it to
-``xpcshell.ini``, the second line adds it to your commit.
+``xpcshell.toml``, the second line adds it to your commit.
The test file contains an empty test which will give you an idea of how
to write a test. There are plenty more examples throughout
@@ -282,8 +282,8 @@ Multiprocess communication
**optionalCallback** or the value to which the promise resolves.
-xpcshell.ini manifest
----------------------
+xpcshell.toml manifest
+----------------------
The manifest controls what tests are included in a test suite, and the
configuration of the tests. It is loaded via the \`moz.build\` property
@@ -306,7 +306,7 @@ listed under the ``[DEFAULT]`` section of the manifest.
browser/ directory (e.g. additional XPCOM services that live there)
``skip-if`` ``run-if`` ``fail-if``
For this entire test suite, run the tests only if they meet certain
- conditions. See `Adding conditions in the xpcshell.ini
+ conditions. See `Adding conditions in the xpcshell.toml
manifest <#adding-conditions-through-the-add-task-or-add-test-function>`__ for how
to use these properties.
``support-files``
@@ -320,19 +320,19 @@ listed under the ``[DEFAULT]`` section of the manifest.
brackets
-Creating a new xpcshell.ini file
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Creating a new xpcshell.toml file
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-When creating a new directory and new xpcshell.ini manifest file, the
+When creating a new directory and new xpcshell.toml manifest file, the
following must be added to a moz.build file near that file in the
directory hierarchy:
.. code:: bash
- XPCSHELL_TESTS_MANIFESTS += ['path/to/xpcshell.ini']
+ XPCSHELL_TESTS_MANIFESTS += ['path/to/xpcshell.toml']
Typically, the moz.build containing *XPCSHELL_TESTS_MANIFESTS* is not in
-the same directory as *xpcshell.ini*, but rather in a parent directory.
+the same directory as *xpcshell.toml*, but rather in a parent directory.
Common directory structures look like:
.. code:: bash
@@ -340,7 +340,7 @@ Common directory structures look like:
feature
├──moz.build
└──tests/xpcshell
- └──xpcshell.ini
+ └──xpcshell.toml
# or
@@ -349,7 +349,7 @@ Common directory structures look like:
└──tests
├──moz.build
└──xpcshell
- └──xpcshell.ini
+ └──xpcshell.toml
Test head and support files
@@ -357,13 +357,13 @@ Test head and support files
Typically in a test suite, similar setup code and dependencies will need
to be loaded in across each test. This can be done through the test
-head, which is the file declared in the ``xpcshell.ini`` manifest file
+head, which is the file declared in the ``xpcshell.toml`` manifest file
under the ``head`` property. The file itself is typically called
``head.js``. Any variable declared in the test head will be in the
global scope of each test in that test suite.
In addition to the test head, other support files can be declared in the
-``xpcshell.ini`` manifest file. This is done through the
+``xpcshell.toml`` manifest file. This is done through the
``support-files`` declaration. These files will be made available
through the url ``resource://test`` plus the name of the file. These
files can then be loaded in using the
@@ -380,11 +380,11 @@ well, and they will be made available by their filename.
├──module.mjs
├──moz.build
├──test_example.js
- └──xpcshell.ini
+ └──xpcshell.toml
-.. code:: ini
+.. code:: toml
- # xpcshell.ini
+ # xpcshell.toml
[DEFAULT]
head = head.js
support-files =
@@ -586,8 +586,8 @@ on Mac OS X, the test will be skipped on all other platforms.
specifics of what the condition is.
-Adding conditions in the xpcshell.ini manifest
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Adding conditions in the xpcshell.toml manifest
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sometimes you may want to add conditions to specify that a test should
be skipped in certain configurations, or that a test is known to fail on
@@ -749,13 +749,13 @@ If you get a message such as:
0:00.62 ERROR Failed to initialize debugging: Error: resource://devtools appears to be inaccessible from the xpcshell environment.
This can usually be resolved by adding:
firefox-appdir = browser
- to the xpcshell.ini manifest.
+ to the xpcshell.toml manifest.
It is possible for this to alter test behevior by triggering additional browser code to run, so check test behavior after making this change.
This is typically a test in core code. You can attempt to add that to
-the xpcshell.ini, however as it says, it might affect how the test runs
+the xpcshell.toml, however as it says, it might affect how the test runs
and cause failures. Generally the firefox-appdir should only be left in
-xpcshell.ini for tests that are in the browser/ directory, or are
+xpcshell.toml for tests that are in the browser/ directory, or are
Firefox-only.
diff --git a/testing/firefox-ui/tests/functional/safebrowsing/test_notification.py b/testing/firefox-ui/tests/functional/safebrowsing/test_notification.py
index d1110fc7d4..c8816a6e0f 100644
--- a/testing/firefox-ui/tests/functional/safebrowsing/test_notification.py
+++ b/testing/firefox-ui/tests/functional/safebrowsing/test_notification.py
@@ -123,7 +123,7 @@ class TestSafeBrowsingNotificationBar(WindowManagerMixin, MarionetteTestCase):
message = notification_box.find_element(
By.CSS_SELECTOR, "notification-message[value=blocked-badware-page]"
)
- button = message.get_property("closeButtonEl")
+ button = message.get_property("closeButton")
button.click()
Wait(self.marionette, timeout=self.marionette.timeout.page_load).until(
diff --git a/testing/geckodriver/marionette/src/webdriver.rs b/testing/geckodriver/marionette/src/webdriver.rs
index a3046e72f0..4a3d8e1ef2 100644
--- a/testing/geckodriver/marionette/src/webdriver.rs
+++ b/testing/geckodriver/marionette/src/webdriver.rs
@@ -97,8 +97,6 @@ pub enum PrintOrientation {
Portrait,
}
-
-
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct PrintPage {
pub width: f64,
diff --git a/testing/geckodriver/src/browser.rs b/testing/geckodriver/src/browser.rs
index 757f5c0069..2f7fe2a925 100644
--- a/testing/geckodriver/src/browser.rs
+++ b/testing/geckodriver/src/browser.rs
@@ -275,7 +275,12 @@ impl RemoteBrowser {
)
})?;
- handler.prepare(&profile, options.args, options.env.unwrap_or_default(), enable_crash_reporter)?;
+ handler.prepare(
+ &profile,
+ options.args,
+ options.env.unwrap_or_default(),
+ enable_crash_reporter,
+ )?;
handler.launch()?;
diff --git a/testing/geckodriver/src/prefs.rs b/testing/geckodriver/src/prefs.rs
index 7e8f0dfda7..f69a611873 100644
--- a/testing/geckodriver/src/prefs.rs
+++ b/testing/geckodriver/src/prefs.rs
@@ -130,6 +130,7 @@ lazy_static! {
("browser.newtabpage.activity-stream.asrouter.providers.snippets", Pref::new("null")),
("browser.newtabpage.activity-stream.asrouter.providers.message-groups", Pref::new("null")),
+ // TODO: Remove once minimum supported Firefox release is 126.
("browser.newtabpage.activity-stream.asrouter.providers.whats-new-panel", Pref::new("null")),
("browser.newtabpage.activity-stream.asrouter.providers.messaging-experiments", Pref::new("null")),
("browser.newtabpage.activity-stream.feeds.system.topstories", Pref::new(false)),
diff --git a/testing/mach_commands.py b/testing/mach_commands.py
index c2232f4c7d..de1dff9828 100644
--- a/testing/mach_commands.py
+++ b/testing/mach_commands.py
@@ -1080,7 +1080,7 @@ def test_info_failures(
# query VCS to get current list of variants:
import yaml
- url = "https://hg.mozilla.org/mozilla-central/raw-file/tip/taskcluster/ci/test/variants.yml"
+ url = "https://hg.mozilla.org/mozilla-central/raw-file/tip/taskcluster/kinds/test/variants.yml"
r = requests.get(url, headers={"User-agent": "mach-test-info/1.0"})
variants = yaml.safe_load(r.text)
diff --git a/testing/marionette/client/marionette_driver/geckoinstance.py b/testing/marionette/client/marionette_driver/geckoinstance.py
index e613415886..26ad58f360 100644
--- a/testing/marionette/client/marionette_driver/geckoinstance.py
+++ b/testing/marionette/client/marionette_driver/geckoinstance.py
@@ -29,6 +29,10 @@ from six import reraise
from . import errors
+if sys.platform.startswith("darwin"):
+ # Marionette's own processhandler is only used on MacOS for now
+ from .processhandler import UNKNOWN_RETURNCODE, ProcessHandler
+
class GeckoInstance(object):
required_prefs = {
@@ -388,7 +392,7 @@ class GeckoInstance(object):
}
)
- return {
+ args = {
"binary": self.binary,
"profile": self.profile,
"cmdargs": ["-no-remote", "-marionette"] + self.app_args,
@@ -397,6 +401,13 @@ class GeckoInstance(object):
"process_args": process_args,
}
+ if sys.platform.startswith("darwin"):
+ # Bug 1887666: The custom process handler class for Marionette is
+ # only supported on MacOS at the moment.
+ args["process_class"] = ProcessHandler
+
+ return args
+
def close(self, clean=False):
"""
Close the managed Gecko process.
@@ -431,6 +442,19 @@ class GeckoInstance(object):
self.close(clean=clean)
self.start()
+ def update_process(self, pid, timeout=None):
+ """Update the process to track when the application re-launched itself"""
+ if sys.platform.startswith("darwin"):
+ # The new process handler is only supported on MacOS yet
+ returncode = self.runner.process_handler.update_process(pid, timeout)
+ if returncode not in [0, UNKNOWN_RETURNCODE]:
+ raise IOError(
+ f"Old process inappropriately quit with exit code: {returncode}"
+ )
+
+ else:
+ returncode = self.runner.process_handler.check_for_detached(pid)
+
class FennecInstance(GeckoInstance):
fennec_prefs = {
@@ -454,7 +478,7 @@ class FennecInstance(GeckoInstance):
package_name=None,
env=None,
*args,
- **kwargs
+ **kwargs,
):
required_prefs = deepcopy(FennecInstance.fennec_prefs)
required_prefs.update(kwargs.get("prefs", {}))
diff --git a/testing/marionette/client/marionette_driver/marionette.py b/testing/marionette/client/marionette_driver/marionette.py
index a4b8c73792..7eefde4fc6 100644
--- a/testing/marionette/client/marionette_driver/marionette.py
+++ b/testing/marionette/client/marionette_driver/marionette.py
@@ -568,7 +568,7 @@ class Marionette(object):
baseurl=None,
socket_timeout=None,
startup_timeout=None,
- **instance_args
+ **instance_args,
):
"""Construct a holder for the Marionette connection.
@@ -1273,6 +1273,8 @@ class Marionette(object):
exc_cls, _, tb = sys.exc_info()
if self.instance.runner.returncode is None:
+ self.is_shutting_down = False
+
# The process is still running, which means the shutdown
# request was not correct or the application ignored it.
# Allow Marionette to accept connections again.
@@ -1291,34 +1293,29 @@ class Marionette(object):
tb,
)
- finally:
- self.is_shutting_down = False
+ self.is_shutting_down = False
+ # Create a new session to retrieve the new process id of the application
self.delete_session(send_request=False)
else:
self.delete_session()
self.instance.restart(clean=clean)
+
self.raise_for_port(timeout=self.DEFAULT_STARTUP_TIMEOUT)
restart_details.update({"in_app": False, "forced": True})
+ self.start_session(self.requested_capabilities, process_forked=in_app)
+ # Restore the context as used before the restart
+ self.set_context(context)
+
if restart_details.get("cause") not in (None, "restart"):
raise errors.MarionetteException(
"Unexpected shutdown reason '{}' for "
"restarting the process".format(restart_details["cause"])
)
- self.start_session(self.requested_capabilities)
- # Restore the context as used before the restart
- self.set_context(context)
-
- if in_app and self.process_id:
- # In some cases Firefox restarts itself by spawning into a new process group.
- # As long as mozprocess cannot track that behavior (bug 1284864) we assist by
- # informing about the new process id.
- self.instance.runner.process_handler.check_for_detached(self.process_id)
-
return restart_details
def absolute_url(self, relative_url):
@@ -1330,7 +1327,7 @@ class Marionette(object):
return "{0}{1}".format(self.baseurl, relative_url)
@do_process_check
- def start_session(self, capabilities=None, timeout=None):
+ def start_session(self, capabilities=None, process_forked=False, timeout=None):
"""Create a new WebDriver session.
This method must be called before performing any other action.
@@ -1340,7 +1337,10 @@ class Marionette(object):
(including alwaysMatch, firstMatch, desiredCapabilities,
or requriedCapabilities), and only recognises extension
capabilities that are specific to Marionette.
+ :param process_forked: If True, the existing process forked itself due
+ to an internal restart.
:param timeout: Optional timeout in seconds for the server to be ready.
+
:returns: A dictionary of the capabilities offered.
"""
if capabilities is None:
@@ -1352,17 +1352,20 @@ class Marionette(object):
self.crashed = 0
- if self.instance:
- returncode = self.instance.runner.returncode
- # We're managing a binary which has terminated. Start it again
- # and implicitely wait for the Marionette server to be ready.
- if returncode is not None:
- self.start_binary(timeout)
+ if not process_forked:
+ # Only handle the binary if there was no process before which also
+ # might have forked itself due to a restart
+ if self.instance:
+ returncode = self.instance.runner.returncode
+ # We're managing a binary which has terminated. Start it again
+ # and implicitely wait for the Marionette server to be ready.
+ if returncode is not None:
+ self.start_binary(timeout)
- else:
- # In the case when Marionette doesn't manage the binary wait until
- # its server component has been started.
- self.raise_for_port(timeout=timeout)
+ else:
+ # In the case when Marionette doesn't manage the binary wait until
+ # its server component has been started.
+ self.raise_for_port(timeout=timeout)
self.client = transport.TcpTransport(self.host, self.port, self.socket_timeout)
self.protocol, _ = self.client.connect()
@@ -1380,10 +1383,11 @@ class Marionette(object):
self.session_id = resp["sessionId"]
self.session = resp["capabilities"]
self.cleanup_ran = False
- # fallback to processId can be removed in Firefox 55
- self.process_id = self.session.get(
- "moz:processID", self.session.get("processId")
- )
+
+ self.process_id = self.session.get("moz:processID")
+ if process_forked:
+ self.instance.update_process(self.process_id, self.shutdown_timeout)
+
self.profile = self.session.get("moz:profile")
timeout = self.session.get("moz:shutdownTimeout")
diff --git a/testing/marionette/client/marionette_driver/processhandler.py b/testing/marionette/client/marionette_driver/processhandler.py
new file mode 100644
index 0000000000..deac1b02ea
--- /dev/null
+++ b/testing/marionette/client/marionette_driver/processhandler.py
@@ -0,0 +1,615 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this file,
+# You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The Marionette ProcessHandler and ProcessHandlerMixin classes are only
+# utilized by Marionette as an alternative to the mozprocess package.
+#
+# This necessity arises because Marionette supports the application to
+# restart itself and, under such conditions, fork its process. To maintain
+# the ability to track the process, including permissions to terminate
+# the process and receive log entries via stdout and stderr, the psutil
+# package is utilized. To prevent any side effects for consumers of
+# mozprocess, all necessary helper classes have been duplicated for now.
+
+import codecs
+import os
+import signal
+import subprocess
+import sys
+import threading
+import time
+import traceback
+from queue import Empty, Queue
+
+import psutil
+import six
+
+# Set the MOZPROCESS_DEBUG environment variable to 1 to see some debugging output
+MOZPROCESS_DEBUG = os.getenv("MOZPROCESS_DEBUG")
+
+INTERVAL_PROCESS_ALIVE_CHECK = 0.02
+
+# For not self-managed processes the returncode seems to not be available.
+# Use `8` to indicate this specific situation for now.
+UNKNOWN_RETURNCODE = 8
+
+# We dont use mozinfo because it is expensive to import, see bug 933558.
+isPosix = os.name == "posix" # includes MacOS X
+
+
+class ProcessHandlerMixin(object):
+ """
+ A class for launching and manipulating local processes.
+
+ :param cmd: command to run. May be a string or a list. If specified as a list, the first
+ element will be interpreted as the command, and all additional elements will be interpreted
+ as arguments to that command.
+ :param args: list of arguments to pass to the command (defaults to None). Must not be set when
+ `cmd` is specified as a list.
+ :param cwd: working directory for command (defaults to None).
+ :param env: is the environment to use for the process (defaults to os.environ).
+ :param kill_on_timeout: when True, the process will be killed when a timeout is reached.
+ When False, the caller is responsible for killing the process.
+ Failure to do so could cause a call to wait() to hang indefinitely. (Defaults to True.)
+ :param processOutputLine: function or list of functions to be called for
+ each line of output produced by the process (defaults to an empty
+ list).
+ :param processStderrLine: function or list of functions to be called
+ for each line of error output - stderr - produced by the process
+ (defaults to an empty list). If this is not specified, stderr lines
+ will be sent to the *processOutputLine* callbacks.
+ :param onTimeout: function or list of functions to be called when the process times out.
+ :param onFinish: function or list of functions to be called when the process terminates
+ normally without timing out.
+ :param kwargs: additional keyword args to pass directly into Popen.
+
+ NOTE: Child processes will be tracked by default.
+ """
+
+ def __init__(
+ self,
+ cmd,
+ args=None,
+ cwd=None,
+ env=None,
+ kill_on_timeout=True,
+ processOutputLine=(),
+ processStderrLine=(),
+ onTimeout=(),
+ onFinish=(),
+ **kwargs,
+ ):
+ self.args = args
+ self.cmd = cmd
+ self.cwd = cwd
+ self.keywordargs = kwargs
+
+ self.didTimeout = False
+ self.didOutputTimeout = False
+ self.proc = None
+
+ if env is None:
+ env = os.environ.copy()
+ self.env = env
+
+ # handlers
+ def to_callable_list(arg):
+ if callable(arg):
+ arg = [arg]
+ return CallableList(arg)
+
+ processOutputLine = to_callable_list(processOutputLine)
+ processStderrLine = to_callable_list(processStderrLine)
+ onTimeout = to_callable_list(onTimeout)
+ onFinish = to_callable_list(onFinish)
+
+ def on_timeout():
+ self.didTimeout = True
+ self.didOutputTimeout = self.reader.didOutputTimeout
+ if kill_on_timeout:
+ self.kill()
+
+ onTimeout.insert(0, on_timeout)
+
+ self._stderr = subprocess.STDOUT
+ if processStderrLine:
+ self._stderr = subprocess.PIPE
+ self.reader = ProcessReader(
+ stdout_callback=processOutputLine,
+ stderr_callback=processStderrLine,
+ finished_callback=onFinish,
+ timeout_callback=onTimeout,
+ )
+
+ # It is common for people to pass in the entire array with the cmd and
+ # the args together since this is how Popen uses it. Allow for that.
+ if isinstance(self.cmd, list):
+ if self.args is not None:
+ raise TypeError("cmd and args must not both be lists")
+ (self.cmd, self.args) = (self.cmd[0], self.cmd[1:])
+ elif self.args is None:
+ self.args = []
+
+ def _has_valid_proc(func):
+ def wrapper(self, *args, **kwargs):
+ if self.proc is None:
+ raise RuntimeError("Process hasn't been started yet")
+ return func(self, *args, **kwargs)
+
+ return wrapper
+
+ @property
+ @_has_valid_proc
+ def pid(self):
+ return self.proc.pid
+
+ @staticmethod
+ def pid_exists(pid):
+ return psutil.pid_exists(pid)
+
+ @property
+ def timedOut(self):
+ """True if the process has timed out for any reason."""
+ return self.didTimeout
+
+ @property
+ def outputTimedOut(self):
+ """True if the process has timed out for no output."""
+ return self.didOutputTimeout
+
+ @property
+ def commandline(self):
+ """the string value of the command line (command + args)"""
+ return subprocess.list2cmdline([self.cmd] + self.args)
+
+ def _debug(self, msg):
+ if not MOZPROCESS_DEBUG:
+ return
+
+ print(f"DBG::MARIONETTE ProcessHandler {self.pid} | {msg}", file=sys.stdout)
+
+ @_has_valid_proc
+ def kill(self, sig=None, timeout=None):
+ """Kills the managed process and all its child processes.
+
+ :param sig: Signal to use to kill the process. (Defaults to SIGKILL)
+
+ :param timeout: If not None, wait this number of seconds for the
+ process to exit.
+
+ Note that this does not manage any state, save any output etc,
+ it immediately kills the process.
+ """
+ if hasattr(self, "returncode"):
+ return self.returncode
+
+ if self.proc.is_running():
+ processes = [self.proc] + self.proc.children(recursive=True)
+
+ if sig is None:
+ # TODO: try SIGTERM first to sanely shutdown the application
+ # and to not break later when Windows support gets added.
+ sig = signal.SIGKILL
+
+ # Do we need that?
+ for process in processes:
+ try:
+ self._debug(f"Killing process: {process}")
+ process.send_signal(sig)
+ except psutil.NoSuchProcess:
+ pass
+ psutil.wait_procs(processes, timeout=timeout)
+
+ # When we kill the the managed process we also have to wait for the
+ # reader thread to be finished. Otherwise consumers would have to assume
+ # that it still has not completely shutdown.
+ self.returncode = self.wait(0)
+ if self.returncode is None:
+ self._debug("kill: wait failed -- process is still alive")
+
+ return self.returncode
+
+ @_has_valid_proc
+ def poll(self):
+ """Check if child process has terminated
+
+ Returns the current returncode value:
+ - None if the process hasn't terminated yet
+ - A negative number if the process was killed by signal N (Unix only)
+ - '0' if the process ended without failures
+
+ """
+ if hasattr(self, "returncode"):
+ return self.returncode
+
+ # If the process that is observed wasn't started with Popen there is
+ # no `poll()` method available. Use `wait()` instead and do not wait
+ # for the reader thread because it would cause extra delays.
+ return self.wait(0, wait_reader=False)
+
+ def processOutput(self, timeout=None, outputTimeout=None):
+ """
+ Handle process output until the process terminates or times out.
+
+ :param timeout: If not None, the process will be allowed to continue
+ for that number of seconds before being killed.
+
+ :outputTimeout: If not None, the process will be allowed to continue
+ for that number of seconds without producing any output before
+ being killed.
+ """
+ # this method is kept for backward compatibility
+ if not hasattr(self, "proc"):
+ self.run(timeout=timeout, outputTimeout=outputTimeout)
+ # self.run will call this again
+ return
+ if not self.reader.is_alive():
+ self.reader.timeout = timeout
+ self.reader.output_timeout = outputTimeout
+ self.reader.start(self.proc)
+
+ def run(self, timeout=None, outputTimeout=None):
+ """
+ Starts the process.
+
+ :param timeout: If not None, the process will be allowed to continue for
+ that number of seconds before being killed. If the process is killed
+ due to a timeout, the onTimeout handler will be called.
+
+ :outputTimeout: If not None, the process will be allowed to continue
+ for that number of seconds without producing any output before
+ being killed.
+ """
+ self.didTimeout = False
+ self.didOutputTimeout = False
+
+ # default arguments
+ args = dict(
+ stdout=subprocess.PIPE,
+ stderr=self._stderr,
+ cwd=self.cwd,
+ env=self.env,
+ )
+
+ # build process arguments
+ args.update(self.keywordargs)
+
+ # launch the process
+ self.proc = psutil.Popen([self.cmd] + self.args, **args)
+
+ self.processOutput(timeout=timeout, outputTimeout=outputTimeout)
+
+ @_has_valid_proc
+ def update_process(self, new_pid, timeout=None):
+ """Update the internally managed process for the provided process ID.
+
+ When the application restarts itself, such as during an update, the new
+ process is essentially a fork of itself. To continue monitoring this
+ process, the process ID needs to be updated accordingly.
+
+ :param new_pid: The ID of the new (forked) process to track.
+
+ :timeout: If not None, the old process will be allowed to continue for
+ that number of seconds before being killed.
+ """
+ if isPosix:
+ if new_pid == self.pid:
+ return
+
+ print(
+ 'Child process with id "%s" has been marked as detached because it is no '
+ "longer in the managed process group. Keeping reference to the process id "
+ '"%s" which is the new child process.' % (self.pid, new_pid),
+ file=sys.stdout,
+ )
+
+ returncode = self.wait(timeout, wait_reader=False)
+ if returncode is None:
+ # If the process is still running force kill it.
+ returncode = self.kill()
+
+ if hasattr(self, "returncode"):
+ del self.returncode
+
+ self.proc = psutil.Process(new_pid)
+ self._debug(
+ f"New process status: {self.proc} (terminal={self.proc.terminal()})"
+ )
+
+ return returncode
+
+ @_has_valid_proc
+ def wait(self, timeout=None, wait_reader=True):
+ """
+ Waits until the process is terminated.
+
+ :param timeout: If not None, will return after timeout seconds.
+ This timeout only causes the wait function to return and
+ does not kill the process.
+
+ :param wait_reader: If set to True, it waits not only for the process
+ to exit but also for all output to be fully read. (Defaults to True).
+
+ Returns the process exit code value:
+ - None if the process hasn't terminated yet
+ - A negative number if the process was killed by signal N (Unix only)
+ - '0' if the process ended without failures
+
+ """
+ # Thread.join() blocks the main thread until the reader thread is finished
+ # wake up once a second in case a keyboard interrupt is sent
+ if (
+ wait_reader
+ and self.reader.thread
+ and self.reader.thread is not threading.current_thread()
+ ):
+ count = 0
+ while self.reader.is_alive():
+ if timeout is not None and count > timeout:
+ self._debug("wait timeout for reader thread")
+ return None
+ self.reader.join(timeout=1)
+ count += 1
+
+ try:
+ self.proc.wait(timeout)
+ self._debug(f"Process status after wait: {self.proc}")
+
+ if not isinstance(self.proc, psutil.Popen):
+ self._debug(
+ "Not self-managed processes do not have a returncode. "
+ f"Setting its value to {UNKNOWN_RETURNCODE}."
+ )
+ self.returncode = UNKNOWN_RETURNCODE
+
+ else:
+ self.returncode = self.proc.returncode
+
+ return self.returncode
+ except psutil.TimeoutExpired:
+ return None
+
+
+class CallableList(list):
+ def __call__(self, *args, **kwargs):
+ for e in self:
+ e(*args, **kwargs)
+
+ def __add__(self, lst):
+ return CallableList(list.__add__(self, lst))
+
+
+class ProcessReader(object):
+ def __init__(
+ self,
+ stdout_callback=None,
+ stderr_callback=None,
+ finished_callback=None,
+ timeout_callback=None,
+ timeout=None,
+ output_timeout=None,
+ ):
+ self.stdout_callback = stdout_callback or (lambda line: True)
+ self.stderr_callback = stderr_callback or (lambda line: True)
+ self.finished_callback = finished_callback or (lambda: True)
+ self.timeout_callback = timeout_callback or (lambda: True)
+ self.timeout = timeout
+ self.output_timeout = output_timeout
+ self.thread = None
+ self.didOutputTimeout = False
+
+ def debug(self, msg):
+ if not MOZPROCESS_DEBUG:
+ return
+
+ print("DBG::MARIONETTE ProcessReader | {}".format(msg), file=sys.stdout)
+
+ def _create_stream_reader(self, name, stream, queue, callback):
+ thread = threading.Thread(
+ name=name, target=self._read_stream, args=(stream, queue, callback)
+ )
+ thread.daemon = True
+ thread.start()
+ return thread
+
+ def _read_stream(self, stream, queue, callback):
+ while True:
+ line = stream.readline()
+ if not line:
+ break
+ queue.put((line, callback))
+ stream.close()
+
+ def start(self, proc):
+ queue = Queue()
+ stdout_reader = None
+ if proc.stdout:
+ stdout_reader = self._create_stream_reader(
+ "ProcessReaderStdout", proc.stdout, queue, self.stdout_callback
+ )
+ stderr_reader = None
+ if proc.stderr and proc.stderr != proc.stdout:
+ stderr_reader = self._create_stream_reader(
+ "ProcessReaderStderr", proc.stderr, queue, self.stderr_callback
+ )
+ self.thread = threading.Thread(
+ name="ProcessReader",
+ target=self._read,
+ args=(stdout_reader, stderr_reader, queue),
+ )
+ self.thread.daemon = True
+ self.thread.start()
+ self.debug("ProcessReader started")
+
+ def _read(self, stdout_reader, stderr_reader, queue):
+ start_time = time.time()
+ timed_out = False
+ timeout = self.timeout
+ if timeout is not None:
+ timeout += start_time
+ output_timeout = self.output_timeout
+ if output_timeout is not None:
+ output_timeout += start_time
+
+ while (stdout_reader and stdout_reader.is_alive()) or (
+ stderr_reader and stderr_reader.is_alive()
+ ):
+ has_line = True
+ try:
+ line, callback = queue.get(True, INTERVAL_PROCESS_ALIVE_CHECK)
+ except Empty:
+ has_line = False
+ now = time.time()
+ if not has_line:
+ if output_timeout is not None and now > output_timeout:
+ timed_out = True
+ self.didOutputTimeout = True
+ break
+ else:
+ if output_timeout is not None:
+ output_timeout = now + self.output_timeout
+ callback(line.rstrip())
+ if timeout is not None and now > timeout:
+ timed_out = True
+ break
+ self.debug("_read loop exited")
+ # process remaining lines to read
+ while not queue.empty():
+ line, callback = queue.get(False)
+ try:
+ callback(line.rstrip())
+ except Exception:
+ traceback.print_exc()
+ if timed_out:
+ try:
+ self.timeout_callback()
+ except Exception:
+ traceback.print_exc()
+ if stdout_reader:
+ stdout_reader.join()
+ if stderr_reader:
+ stderr_reader.join()
+ if not timed_out:
+ try:
+ self.finished_callback()
+ except Exception:
+ traceback.print_exc()
+ self.debug("_read exited")
+
+ def is_alive(self):
+ if self.thread:
+ return self.thread.is_alive()
+ return False
+
+ def join(self, timeout=None):
+ if self.thread:
+ self.thread.join(timeout=timeout)
+
+
+# default output handlers
+# these should be callables that take the output line
+
+
+class StoreOutput(object):
+ """accumulate stdout"""
+
+ def __init__(self):
+ self.output = []
+
+ def __call__(self, line):
+ self.output.append(line)
+
+
+class StreamOutput(object):
+ """pass output to a stream and flush"""
+
+ def __init__(self, stream, text=True):
+ self.stream = stream
+ self.text = text
+
+ def __call__(self, line):
+ ensure = six.ensure_text if self.text else six.ensure_binary
+ try:
+ self.stream.write(ensure(line, errors="ignore") + ensure("\n"))
+ except TypeError:
+ print(
+ "HEY! If you're reading this, you're about to encounter a "
+ "type error, probably as a result of a conversion from "
+ "Python 2 to Python 3. This is almost definitely because "
+ "you're trying to write binary data to a text-encoded "
+ "stream, or text data to a binary-encoded stream. Check how "
+ "you're instantiating your ProcessHandler and if the output "
+ "should be text-encoded, make sure you pass "
+ "universal_newlines=True.",
+ file=sys.stderr,
+ )
+ raise
+ self.stream.flush()
+
+
+class LogOutput(StreamOutput):
+ """pass output to a file"""
+
+ def __init__(self, filename):
+ self.file_obj = open(filename, "a")
+ StreamOutput.__init__(self, self.file_obj, True)
+
+ def __del__(self):
+ if self.file_obj is not None:
+ self.file_obj.close()
+
+
+# front end class with the default handlers
+
+
+class ProcessHandler(ProcessHandlerMixin):
+ """
+ Convenience class for handling processes with default output handlers.
+
+ By default, all output is sent to stdout. This can be disabled by setting
+ the *stream* argument to None.
+
+ If processOutputLine keyword argument is specified the function or the
+ list of functions specified by this argument will be called for each line
+ of output; the output will not be written to stdout automatically then
+ if stream is True (the default).
+
+ If storeOutput==True, the output produced by the process will be saved
+ as self.output.
+
+ If logfile is not None, the output produced by the process will be
+ appended to the given file.
+ """
+
+ def __init__(self, cmd, logfile=None, stream=True, storeOutput=True, **kwargs):
+ kwargs.setdefault("processOutputLine", [])
+ if callable(kwargs["processOutputLine"]):
+ kwargs["processOutputLine"] = [kwargs["processOutputLine"]]
+
+ if logfile:
+ logoutput = LogOutput(logfile)
+ kwargs["processOutputLine"].append(logoutput)
+
+ text = kwargs.get("universal_newlines", False) or kwargs.get("text", False)
+
+ if stream is True:
+ if text:
+ # The encoding of stdout isn't guaranteed to be utf-8. Fix that.
+ stdout = codecs.getwriter("utf-8")(sys.stdout.buffer)
+ else:
+ stdout = sys.stdout.buffer
+
+ if not kwargs["processOutputLine"]:
+ kwargs["processOutputLine"].append(StreamOutput(stdout, text))
+ elif stream:
+ streamoutput = StreamOutput(stream, text)
+ kwargs["processOutputLine"].append(streamoutput)
+
+ self.output = None
+ if storeOutput:
+ storeoutput = StoreOutput()
+ self.output = storeoutput.output
+ kwargs["processOutputLine"].append(storeoutput)
+
+ ProcessHandlerMixin.__init__(self, cmd, **kwargs)
diff --git a/testing/marionette/client/requirements.txt b/testing/marionette/client/requirements.txt
index 220531c4f5..9e80295034 100644
--- a/testing/marionette/client/requirements.txt
+++ b/testing/marionette/client/requirements.txt
@@ -1,3 +1,4 @@
mozrunner >= 7.4.0
mozversion >= 2.1.0
+psutil==5.9.8; sys_platform == 'darwin' # Bug 1887666: MacOS only for now
six
diff --git a/testing/marionette/harness/marionette_harness/tests/unit-tests.toml b/testing/marionette/harness/marionette_harness/tests/unit-tests.toml
index 26f6f559f0..d7b455204a 100644
--- a/testing/marionette/harness/marionette_harness/tests/unit-tests.toml
+++ b/testing/marionette/harness/marionette_harness/tests/unit-tests.toml
@@ -37,6 +37,7 @@
# toolkit tests
["include:../../../../../toolkit/components/cleardata/tests/marionette/manifest.toml"]
+["include:../../../../../toolkit/components/extensions/test/marionette/manifest-serviceworker.toml"]
["include:../../../../../toolkit/xre/test/marionette/marionette.toml"]
# update tests
diff --git a/testing/marionette/harness/marionette_harness/tests/unit/test_set_permission.py b/testing/marionette/harness/marionette_harness/tests/unit/test_set_permission.py
index 476d9c5729..ba35bd6b99 100644
--- a/testing/marionette/harness/marionette_harness/tests/unit/test_set_permission.py
+++ b/testing/marionette/harness/marionette_harness/tests/unit/test_set_permission.py
@@ -48,3 +48,7 @@ class TestSetPermission(MarionetteTestCase):
self.assertEqual(
self.query_permission({"name": "midi", "sysex": True}), "prompt"
)
+
+ def test_storage_access(self):
+ self.marionette.set_permission({"name": "storage-access"}, "granted")
+ self.assertEqual(self.query_permission({"name": "storage-access"}), "granted")
diff --git a/testing/mochitest/ignorePrefs.json b/testing/mochitest/ignorePrefs.json
index 7689f7f5f3..1af646fe95 100644
--- a/testing/mochitest/ignorePrefs.json
+++ b/testing/mochitest/ignorePrefs.json
@@ -15,9 +15,7 @@
"browser.uiCustomization.state",
"doh-rollout.doneFirstRun",
"extensions.databaseSchema",
- "extensions.dnr.lastStoreUpdateTag.*",
"extensions.webextensions.ExtensionStorageIDB.migrated.*",
- "extensions.webextensions.uuids",
"media.gmp.storage.version.observed",
"media.gmp-manager.buildID",
"media.gmp-manager.lastCheck",
diff --git a/testing/mochitest/mochitest_options.py b/testing/mochitest/mochitest_options.py
index 0b4a03f5b2..552c8c88cd 100644
--- a/testing/mochitest/mochitest_options.py
+++ b/testing/mochitest/mochitest_options.py
@@ -945,6 +945,14 @@ class MochitestArguments(ArgumentContainer):
"help": "Terminate the session on first failure and restart where you left off.",
},
],
+ [
+ ["--variant"],
+ {
+ "dest": "variant",
+ "default": "",
+ "help": "use specified variant for any harness level changes.",
+ },
+ ],
]
defaults = {
diff --git a/testing/mochitest/runtests.py b/testing/mochitest/runtests.py
index 912ed01af6..4776ae2276 100644
--- a/testing/mochitest/runtests.py
+++ b/testing/mochitest/runtests.py
@@ -60,9 +60,11 @@ try:
from marionette_driver.addons import Addons
from marionette_driver.marionette import Marionette
except ImportError as e: # noqa
+ error = e
+
# Defer ImportError until attempt to use Marionette
def reraise(*args, **kwargs):
- raise (e) # noqa
+ raise error # noqa
Marionette = reraise
@@ -2407,14 +2409,14 @@ toolbar#nav-bar {
# Whitelist the _tests directory (../..) so that TESTING_JS_MODULES work
tests_dir = os.path.dirname(os.path.dirname(SCRIPT_DIR))
- sandbox_whitelist_paths = [tests_dir] + options.sandboxReadWhitelist
+ sandbox_allowlist_paths = [tests_dir] + options.sandboxReadWhitelist
if platform.system() == "Linux" or platform.system() in (
"Windows",
"Microsoft",
):
# Trailing slashes are needed to indicate directories on Linux and Windows
- sandbox_whitelist_paths = [
- os.path.join(p, "") for p in sandbox_whitelist_paths
+ sandbox_allowlist_paths = [
+ os.path.join(p, "") for p in sandbox_allowlist_paths
]
if options.conditionedProfile:
@@ -2437,7 +2439,7 @@ toolbar#nav-bar {
addons=extensions,
locations=self.locations,
proxy=self.proxy(options),
- whitelistpaths=sandbox_whitelist_paths,
+ allowlistpaths=sandbox_allowlist_paths,
)
# Fix options.profilePath for legacy consumers.
diff --git a/testing/mochitest/tests/browser/browser_waitForFocus.js b/testing/mochitest/tests/browser/browser_waitForFocus.js
index b41b07f423..93d682525a 100644
--- a/testing/mochitest/tests/browser/browser_waitForFocus.js
+++ b/testing/mochitest/tests/browser/browser_waitForFocus.js
@@ -103,12 +103,12 @@ add_task(async function () {
// Tests focusing the sidebar, which is in a parent process subframe
// and then switching the focus to another window.
add_task(async function () {
- await SidebarUI.show("viewBookmarksSidebar");
+ await SidebarController.show("viewBookmarksSidebar");
gURLBar.focus();
// Focus the sidebar.
- await SimpleTest.promiseFocus(SidebarUI.browser);
+ await SimpleTest.promiseFocus(SidebarController.browser);
is(
document.activeElement,
document.getElementById("sidebar"),
@@ -120,7 +120,7 @@ add_task(async function () {
);
// Focus the sidebar again, which should cause no change.
- await SimpleTest.promiseFocus(SidebarUI.browser);
+ await SimpleTest.promiseFocus(SidebarController.browser);
is(
document.activeElement,
document.getElementById("sidebar"),
@@ -156,5 +156,5 @@ add_task(async function () {
);
await BrowserTestUtils.closeWindow(window2);
- await SidebarUI.hide();
+ await SidebarController.hide();
});
diff --git a/testing/modules/MockRegistry.sys.mjs b/testing/modules/MockRegistry.sys.mjs
index b64d1ce2a8..acb17d790b 100644
--- a/testing/modules/MockRegistry.sys.mjs
+++ b/testing/modules/MockRegistry.sys.mjs
@@ -4,81 +4,231 @@
import { MockRegistrar } from "resource://testing-common/MockRegistrar.sys.mjs";
-export class MockRegistry {
- constructor() {
- // Three level structure of Maps pointing to Maps pointing to Maps
- // this.roots is the top of the structure and has ROOT_KEY_* values
- // as keys. Maps at the second level are the values of the first
- // level Map, they have registry keys (also called paths) as keys.
- // Third level maps are the values in second level maps, they have
- // map registry names to corresponding values (which in this implementation
- // are always strings).
- this.roots = new Map([
- [Ci.nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE, new Map()],
- [Ci.nsIWindowsRegKey.ROOT_KEY_CURRENT_USER, new Map()],
- [Ci.nsIWindowsRegKey.ROOT_KEY_CLASSES_ROOT, new Map()],
- ]);
+class MockWindowsRegKey {
+ key = null;
- let registry = this;
-
- /**
- * This is a mock nsIWindowsRegistry implementation. It only implements a
- * subset of the interface used in tests. In particular, only values
- * of type string are supported.
- */
- function MockWindowsRegKey() {}
- MockWindowsRegKey.prototype = {
- values: null,
-
- // --- Overridden nsISupports interface functions ---
- QueryInterface: ChromeUtils.generateQI(["nsIWindowsRegKey"]),
-
- // --- Overridden nsIWindowsRegKey interface functions ---
- open(root, path) {
- let rootKey = registry.getRoot(root);
- if (!rootKey.has(path)) {
- rootKey.set(path, new Map());
- }
- this.values = rootKey.get(path);
- },
+ // --- Overridden nsISupports interface functions ---
+ QueryInterface = ChromeUtils.generateQI(["nsIWindowsRegKey"]);
- close() {
- this.values = null;
- },
+ #assertKey() {
+ if (this.key) {
+ return;
+ }
+ throw Components.Exception("invalid registry path", Cr.NS_ERROR_FAILURE);
+ }
- get valueCount() {
- if (!this.values) {
- throw Components.Exception("", Cr.NS_ERROR_FAILURE);
- }
- return this.values.size;
- },
+ #findOrMaybeCreateKey(root, path, mode, maybeCreateCallback) {
+ let rootKey = MockRegistry.getRoot(root);
+ let parts = path.split("\\");
+ if (parts.some(part => !part.length)) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
- hasValue(name) {
- if (!this.values) {
- return false;
- }
- return this.values.has(name);
- },
+ let key = rootKey;
+ for (let part of parts) {
+ if (!key.subkeys.has(part)) {
+ maybeCreateCallback(key.subkeys, part);
+ }
+ key = key.subkeys.get(part);
+ }
+ this.key = key;
+ }
- getValueType() {
- return Ci.nsIWindowsRegKey.TYPE_STRING;
- },
+ // --- Overridden nsIWindowsRegKey interface functions ---
+ open(root, path, mode) {
+ // eslint-disable-next-line no-unused-vars
+ this.#findOrMaybeCreateKey(root, path, mode, (subkeys, part) => {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ });
+ }
- getValueName(index) {
- if (!this.values || index >= this.values.size) {
- throw Components.Exception("", Cr.NS_ERROR_FAILURE);
- }
- let names = Array.from(this.values.keys());
- return names[index];
- },
+ create(root, path, mode) {
+ this.#findOrMaybeCreateKey(root, path, mode, (subkeys, part) =>
+ subkeys.set(part, { subkeys: new Map(), values: new Map() })
+ );
+ }
- readStringValue(name) {
- if (!this.values) {
- throw new Error("invalid registry path");
- }
- return this.values.get(name);
- },
- };
+ close() {
+ this.key = null;
+ }
+
+ get valueCount() {
+ this.#assertKey();
+ return this.key.values.size;
+ }
+
+ hasValue(name) {
+ this.#assertKey();
+ return this.key.values.has(name);
+ }
+
+ #getValuePair(name, expectedType = null) {
+ this.#assertKey();
+ if (!this.key.values.has(name)) {
+ throw Components.Exception("invalid value name", Cr.NS_ERROR_FAILURE);
+ }
+ let [value, type] = this.key.values.get(name);
+ if (expectedType && type !== expectedType) {
+ throw Components.Exception("unexpected value type", Cr.NS_ERROR_FAILURE);
+ }
+ return [value, type];
+ }
+
+ getValueType(name) {
+ let [, type] = this.#getValuePair(name);
+ return type;
+ }
+
+ getValueName(index) {
+ if (!this.key || index >= this.key.values.size) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
+ let names = Array.from(this.key.values.keys());
+ return names[index];
+ }
+
+ readStringValue(name) {
+ let [value] = this.#getValuePair(name, Ci.nsIWindowsRegKey.TYPE_STRING);
+ return value;
+ }
+
+ readIntValue(name) {
+ let [value] = this.#getValuePair(name, Ci.nsIWindowsRegKey.TYPE_INT);
+ return value;
+ }
+
+ readInt64Value(name) {
+ let [value] = this.#getValuePair(name, Ci.nsIWindowsRegKey.TYPE_INT64);
+ return value;
+ }
+
+ readBinaryValue(name) {
+ let [value] = this.#getValuePair(name, Ci.nsIWindowsRegKey.TYPE_BINARY);
+ return value;
+ }
+
+ #writeValuePair(name, value, type) {
+ this.#assertKey();
+ this.key.values.set(name, [value, type]);
+ }
+
+ writeStringValue(name, value) {
+ this.#writeValuePair(name, value, Ci.nsIWindowsRegKey.TYPE_STRING);
+ }
+
+ writeIntValue(name, value) {
+ this.#writeValuePair(name, value, Ci.nsIWindowsRegKey.TYPE_INT);
+ }
+
+ writeInt64Value(name, value) {
+ this.#writeValuePair(name, value, Ci.nsIWindowsRegKey.TYPE_INT64);
+ }
+
+ writeBinaryValue(name, value) {
+ this.#writeValuePair(name, value, Ci.nsIWindowsRegKey.TYPE_BINARY);
+ }
+
+ removeValue(name) {
+ this.#assertKey();
+ this.key.values.delete(name);
+ }
+
+ get childCount() {
+ this.#assertKey();
+ return this.key.subkeys.size;
+ }
+
+ getChildName(index) {
+ if (!this.key || index >= this.key.values.size) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
+ let names = Array.from(this.key.subkeys.keys());
+ return names[index];
+ }
+
+ hasChild(name) {
+ this.#assertKey();
+ return this.key.subkeys.has(name);
+ }
+
+ removeChild(name) {
+ this.#assertKey();
+ let child = this.key.subkeys.get(name);
+
+ if (!child) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
+ if (child.subkeys.size > 0) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
+
+ this.key.subkeys.delete(name);
+ }
+
+ #findOrMaybeCreateChild(name, mode, maybeCreateCallback) {
+ this.#assertKey();
+ if (name.split("\\").length > 1) {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ }
+ if (!this.key.subkeys.has(name)) {
+ maybeCreateCallback(this.key.subkeys, name);
+ }
+ // This won't wrap in the same way as `Cc["@mozilla.org/windows-registry-key;1"].createInstance(nsIWindowsRegKey);`.
+ let subKey = new MockWindowsRegKey();
+ subKey.key = this.key.subkeys.get(name);
+ return subKey;
+ }
+
+ openChild(name, mode) {
+ // eslint-disable-next-line no-unused-vars
+ return this.#findOrMaybeCreateChild(name, mode, (subkeys, part) => {
+ throw Components.Exception("", Cr.NS_ERROR_FAILURE);
+ });
+ }
+
+ createChild(name, mode) {
+ return this.#findOrMaybeCreateChild(name, mode, (subkeys, part) =>
+ subkeys.set(part, { subkeys: new Map(), values: new Map() })
+ );
+ }
+}
+
+export class MockRegistry {
+ // All instances of `MockRegistry` share a single data-store; this is
+ // conceptually parallel to the Windows registry, which is a shared global
+ // resource. It would be possible to have separate data-stores for separate
+ // instances with a little adjustment to `MockWindowsRegKey`.
+ //
+ // Top-level map is indexed by roots. A "key" is an object that has
+ // `subkeys` and `values`, both maps indexed by strings. Subkey items are
+ // again "key" objects. Value items are `[value, type]` pairs.
+ //
+ // In pseudo-code:
+ //
+ // {Ci.nsIWindowsRegKey.ROOT_KEY_CURRENT_USER:
+ // {subkeys:
+ // {child: {subkeys: {}, values: {key: ["string_value", Ci.nsIWindowsRegKey.TYPE_STRING]}}},
+ // values: {}
+ // },
+ // ...
+ // }
+ static roots;
+
+ constructor() {
+ MockRegistry.roots = new Map([
+ [
+ Ci.nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE,
+ { subkeys: new Map(), values: new Map() },
+ ],
+ [
+ Ci.nsIWindowsRegKey.ROOT_KEY_CURRENT_USER,
+ { subkeys: new Map(), values: new Map() },
+ ],
+ [
+ Ci.nsIWindowsRegKey.ROOT_KEY_CLASSES_ROOT,
+ { subkeys: new Map(), values: new Map() },
+ ],
+ ]);
// See bug 1688838 - nsNotifyAddrListener::CheckAdaptersAddresses might
// attempt to use the registry off the main thread, so we disable that
@@ -100,7 +250,7 @@ export class MockRegistry {
this.cid = MockRegistrar.register(
"@mozilla.org/windows-registry-key;1",
- MockWindowsRegKey
+ () => new MockWindowsRegKey()
);
}
@@ -121,7 +271,7 @@ export class MockRegistry {
this.cid = null;
}
- getRoot(root) {
+ static getRoot(root) {
if (!this.roots.has(root)) {
throw new Error(`No such root ${root}`);
}
@@ -129,17 +279,58 @@ export class MockRegistry {
}
setValue(root, path, name, value) {
- let rootKey = this.getRoot(root);
-
- if (!rootKey.has(path)) {
- rootKey.set(path, new Map());
+ let key = new MockWindowsRegKey();
+ key.create(root, path, Ci.nsIWindowsRegKey.ACCESS_ALL);
+ if (value == null) {
+ try {
+ key.removeValue(name);
+ } catch (e) {
+ if (
+ !(e instanceof Ci.nsIException && e.result == Cr.NS_ERROR_FAILURE)
+ ) {
+ throw e;
+ }
+ }
+ } else {
+ key.writeStringValue(name, value);
}
+ }
- let pathmap = rootKey.get(path);
- if (value == null) {
- pathmap.delete(name);
+ /**
+ * Dump given `key` (or, if not given, all roots), and all its value and its
+ * subkeys recursively, using the given function to `printOneLine`.
+ */
+ static dump(key = null, indent = "", printOneLine = console.log) {
+ let types = new Map([
+ [1, "REG_SZ"],
+ [3, "REG_BINARY"],
+ [4, "REG_DWORD"],
+ [11, "REG_QWORD"],
+ ]);
+
+ if (!key) {
+ let roots = [
+ "ROOT_KEY_LOCAL_MACHINE",
+ "ROOT_KEY_CURRENT_USER",
+ "ROOT_KEY_CLASSES_ROOT",
+ ];
+ for (let root of roots) {
+ printOneLine(indent + root);
+ this.dump(
+ this.roots.get(Ci.nsIWindowsRegKey[root]),
+ " " + indent,
+ printOneLine
+ );
+ }
} else {
- pathmap.set(name, value);
+ for (let [k, v] of key.values.entries()) {
+ let [value, type] = v;
+ printOneLine(`${indent}${k}: ${value} (${types.get(type)})`);
+ }
+ for (let [k, child] of key.subkeys.entries()) {
+ printOneLine(indent + k);
+ this.dump(child, " " + indent, printOneLine);
+ }
}
}
}
diff --git a/testing/mozbase/manifestparser/manifestparser/ini.py b/testing/mozbase/manifestparser/manifestparser/ini.py
index b5ffe7a2f0..68f6023244 100644
--- a/testing/mozbase/manifestparser/manifestparser/ini.py
+++ b/testing/mozbase/manifestparser/manifestparser/ini.py
@@ -30,6 +30,7 @@ def read_ini(
strict=True,
handle_defaults=True,
document=False,
+ add_line_no=False,
):
"""
read an .ini file and return a list of [(section, values)]
@@ -40,6 +41,7 @@ def read_ini(
- separators : strings that denote key, value separation in order
- strict : whether to be strict about parsing
- handle_defaults : whether to incorporate defaults into each section
+ - add_line_no: whether to include the line number that points to the test in the generated ini file.
"""
# variables
diff --git a/testing/mozbase/manifestparser/manifestparser/manifestparser.py b/testing/mozbase/manifestparser/manifestparser/manifestparser.py
index 63eaeefe05..d8df2baf36 100644
--- a/testing/mozbase/manifestparser/manifestparser/manifestparser.py
+++ b/testing/mozbase/manifestparser/manifestparser/manifestparser.py
@@ -56,6 +56,7 @@ class ManifestParser(object):
handle_defaults=True,
use_toml=True,
document=False,
+ add_line_no=False,
):
"""Creates a ManifestParser from the given manifest files.
@@ -82,6 +83,7 @@ class ManifestParser(object):
variable in this case.
:param use_toml: If True *.toml configration files will be used iff present in the same location as *.ini files (applies to included files as well). If False only *.ini files will be considered. (defaults to True)
:param document: If True *.toml configration will preserve the parsed document from `tomlkit` in self.source_documents[filename] (defaults to False)
+ :param add_line_no: If True, the *.toml configuration will add the line number where the test name appears in the file to the parsed document. Also, the document should be set to True. (defaults to False)
"""
self._defaults = defaults or {}
self.tests = []
@@ -95,6 +97,7 @@ class ManifestParser(object):
self._handle_defaults = handle_defaults
self.use_toml = use_toml
self.document = document
+ self.add_line_no = add_line_no
self.logger = Logger()
if manifests:
self.read(*manifests)
@@ -229,6 +232,7 @@ class ManifestParser(object):
strict=self.strict,
handle_defaults=self._handle_defaults,
document=self.document,
+ add_line_no=self.add_line_no,
)
if filename is not None:
self.source_documents[filename] = document
diff --git a/testing/mozbase/manifestparser/manifestparser/toml.py b/testing/mozbase/manifestparser/manifestparser/toml.py
index 4defd99156..a3e9511994 100644
--- a/testing/mozbase/manifestparser/manifestparser/toml.py
+++ b/testing/mozbase/manifestparser/manifestparser/toml.py
@@ -82,6 +82,7 @@ def read_toml(
strict=True,
handle_defaults=True,
document=False,
+ add_line_no=False,
):
"""
read a .toml file and return a list of [(section, values)]
@@ -93,6 +94,7 @@ def read_toml(
- strict : whether to be strict about parsing
- handle_defaults : whether to incorporate defaults into each section
- document: read TOML with tomlkit and return source in test["document"]
+ - add_line_no: add the line number where the test name appears in the file to the source. Also, the document variable must be set to True for this flag to work. (This is used only to generate the documentation)
"""
# variables
@@ -163,12 +165,12 @@ def read_toml(
# merge combined defaults into each section
sections = [(i, combine_fields(defaults, j)) for i, j in sections]
- if document:
+ if document and add_line_no:
# Take the line where the test name appears in the file.
for i, _ in enumerate(sections):
line = contents.split(sections[i][0])[0].count(os.linesep) + 1
manifest.setdefault(sections[i][0], {})["lineno"] = str(line)
- else:
+ elif not document:
manifest = None
return sections, defaults, manifest
diff --git a/testing/mozbase/manifestparser/tests/test_manifestparser.py b/testing/mozbase/manifestparser/tests/test_manifestparser.py
index ddbc6ecc79..f1774cfffb 100755
--- a/testing/mozbase/manifestparser/tests/test_manifestparser.py
+++ b/testing/mozbase/manifestparser/tests/test_manifestparser.py
@@ -5,7 +5,6 @@
# You can obtain one at http://mozilla.org/MPL/2.0/.
import os
-import re
import shutil
import tempfile
import unittest
@@ -621,12 +620,6 @@ yellow = submarine
after = "edit-manifest-after.toml"
after_path = os.path.join(here, after)
after_str = open(after_path, "r", encoding="utf-8").read()
-
- # Define the regex pattern to match lines containing 'lineno'
- pattern = re.compile(r"^.*lineno.*$\n?", re.MULTILINE)
- # Remove lines containing 'lineno'
- manifest_str = re.sub(pattern, "", manifest_str)
-
assert manifest_str == after_str
diff --git a/testing/mozbase/mozdebug/setup.py b/testing/mozbase/mozdebug/setup.py
index 2e28924fad..a2f406a257 100644
--- a/testing/mozbase/mozdebug/setup.py
+++ b/testing/mozbase/mozdebug/setup.py
@@ -4,7 +4,7 @@
from setuptools import setup
-PACKAGE_VERSION = "0.3.0"
+PACKAGE_VERSION = "0.3.1"
DEPS = ["mozinfo"]
diff --git a/testing/mozbase/mozdevice/setup.py b/testing/mozbase/mozdevice/setup.py
index 91ce63d9f6..5bf170dbf2 100644
--- a/testing/mozbase/mozdevice/setup.py
+++ b/testing/mozbase/mozdevice/setup.py
@@ -5,7 +5,7 @@
from setuptools import setup
PACKAGE_NAME = "mozdevice"
-PACKAGE_VERSION = "4.1.1"
+PACKAGE_VERSION = "4.1.2"
deps = ["mozlog >= 6.0"]
diff --git a/testing/mozbase/mozgeckoprofiler/mozgeckoprofiler/symbolication.py b/testing/mozbase/mozgeckoprofiler/mozgeckoprofiler/symbolication.py
index ecec5c1d9d..f7617a4e91 100644
--- a/testing/mozbase/mozgeckoprofiler/mozgeckoprofiler/symbolication.py
+++ b/testing/mozbase/mozgeckoprofiler/mozgeckoprofiler/symbolication.py
@@ -5,9 +5,9 @@ import hashlib
import http.client
import os
import platform
+import shutil
import subprocess
import zipfile
-from distutils import spawn
import six
from mozlog import get_proxy_logger
@@ -95,7 +95,7 @@ class OSXSymbolDumper:
class LinuxSymbolDumper:
def __init__(self):
- self.nm = spawn.find_executable("nm")
+ self.nm = shutil.which("nm")
if not self.nm:
raise SymbolError("Could not find nm, necessary for symbol dumping")
diff --git a/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py b/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py
index fcedb7ebd4..f03611d7da 100644
--- a/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py
+++ b/testing/mozbase/mozlog/mozlog/formatters/errorsummary.py
@@ -46,6 +46,7 @@ class ErrorSummaryFormatter(BaseFormatter):
"expected": item["expected"],
"message": item.get("message"),
"stack": item.get("stack"),
+ "modifiers": item.get("extra", {}).get("modifiers", ""),
"known_intermittent": item.get("known_intermittent", []),
}
return self._output("test_result", data)
diff --git a/testing/mozbase/mozlog/tests/test_errorsummary.py b/testing/mozbase/mozlog/tests/test_errorsummary.py
index 30a5a304b2..0925c3a09e 100644
--- a/testing/mozbase/mozlog/tests/test_errorsummary.py
+++ b/testing/mozbase/mozlog/tests/test_errorsummary.py
@@ -33,7 +33,7 @@ import pytest
],
"""
{"groups": ["manifestA", "manifestB"], "action": "test_groups", "line": 0}
- {"test": "test_baz", "subtest": null, "group": "manifestA", "status": "PASS", "expected": "FAIL", "message": null, "stack": null, "known_intermittent": [], "action": "test_result", "line": 8}
+ {"test": "test_baz", "subtest": null, "group": "manifestA", "status": "PASS", "expected": "FAIL", "message": null, "stack": null, "modifiers": "", "known_intermittent": [], "action": "test_result", "line": 8}
{"group": "manifestA", "status": "ERROR", "duration": 20, "action": "group_result", "line": 9}
{"group": "manifestB", "status": "OK", "duration": 10, "action": "group_result", "line": 9}
""".strip(),
@@ -86,7 +86,7 @@ import pytest
],
"""
{"groups": ["manifestA", "manifestB"], "action": "test_groups", "line": 0}
- {"test": "test_bar", "subtest": null, "group": "manifestA", "status": "CRASH", "expected": "OK", "message": null, "stack": null, "known_intermittent": [], "action": "test_result", "line": 4}
+ {"test": "test_bar", "subtest": null, "group": "manifestA", "status": "CRASH", "expected": "OK", "message": null, "stack": null, "modifiers": "", "known_intermittent": [], "action": "test_result", "line": 4}
{"group": "manifestA", "status": "ERROR", "duration": 20, "action": "group_result", "line": 9}
{"group": "manifestB", "status": "OK", "duration": 10, "action": "group_result", "line": 9}
""".strip(),
@@ -143,8 +143,8 @@ import pytest
],
"""
{"groups": ["manifestA", "manifestB"], "action": "test_groups", "line": 0}
- {"test": "test_baz", "subtest": "Test timed out", "group": "manifestA", "status": "FAIL", "expected": "PASS", "message": null, "stack": null, "known_intermittent": [], "action": "test_result", "line": 8}
- {"test": "test_baz", "subtest": "", "group": "manifestA", "status": "TIMEOUT", "expected": "PASS", "message": null, "stack": null, "known_intermittent": [], "action": "test_result", "line": 9}
+ {"test": "test_baz", "subtest": "Test timed out", "group": "manifestA", "status": "FAIL", "expected": "PASS", "message": null, "stack": null, "modifiers": "", "known_intermittent": [], "action": "test_result", "line": 8}
+ {"test": "test_baz", "subtest": "", "group": "manifestA", "status": "TIMEOUT", "expected": "PASS", "message": null, "stack": null, "modifiers": "", "known_intermittent": [], "action": "test_result", "line": 9}
{"test": "manifestA", "group": "manifestA", "signature": "signature", "stackwalk_stderr": null, "stackwalk_stdout": null, "action": "crash", "line": 10}
{"group": "manifestA", "status": "ERROR", "duration": 49, "action": "group_result", "line": 12}
{"group": "manifestB", "status": "OK", "duration": 10, "action": "group_result", "line": 12}
@@ -225,7 +225,7 @@ import pytest
],
"""
{"groups": ["manifestA", "manifestB"], "action": "test_groups", "line": 0}
- {"test": "test_baz", "group": "manifestA", "status": "FAIL", "expected": "OK", "subtest": null, "message": null, "stack": null, "known_intermittent": [], "action": "test_result", "line": 8}
+ {"test": "test_baz", "group": "manifestA", "status": "FAIL", "expected": "OK", "subtest": null, "message": null, "stack": null, "modifiers": "", "known_intermittent": [], "action": "test_result", "line": 8}
""".strip(),
id="timeout_no_group_status",
),
diff --git a/testing/mozbase/moznetwork/tests/test_moznetwork.py b/testing/mozbase/moznetwork/tests/test_moznetwork.py
index 5be960cca1..16b49ffd2e 100644
--- a/testing/mozbase/moznetwork/tests/test_moznetwork.py
+++ b/testing/mozbase/moznetwork/tests/test_moznetwork.py
@@ -4,8 +4,8 @@ Unit-Tests for moznetwork
"""
import re
+import shutil
import subprocess
-from distutils.spawn import find_executable
from unittest import mock
import mozinfo
@@ -37,7 +37,7 @@ def ip_addresses():
cmd = None
for command in commands:
- if find_executable(command[0]):
+ if shutil.which(command[0]):
cmd = command
break
else:
diff --git a/testing/mozbase/mozprofile/mozprofile/profile.py b/testing/mozbase/mozprofile/mozprofile/profile.py
index 25e10d23bf..0eef6c910f 100644
--- a/testing/mozbase/mozprofile/mozprofile/profile.py
+++ b/testing/mozbase/mozprofile/mozprofile/profile.py
@@ -196,7 +196,7 @@ class Profile(BaseProfile):
locations=None,
proxy=None,
restore=True,
- whitelistpaths=None,
+ allowlistpaths=None,
**kwargs
):
"""
@@ -206,7 +206,7 @@ class Profile(BaseProfile):
:param locations: ServerLocations object
:param proxy: Setup a proxy
:param restore: Flag for removing all custom settings during cleanup
- :param whitelistpaths: List of paths to pass to Firefox to allow read
+ :param allowlistpaths: List of paths to pass to Firefox to allow read
access to from the content process sandbox.
"""
super(Profile, self).__init__(
@@ -219,7 +219,7 @@ class Profile(BaseProfile):
self._locations = locations
self._proxy = proxy
- self._whitelistpaths = whitelistpaths
+ self._allowlistpaths = allowlistpaths
# Initialize all class members
self._reset()
@@ -249,30 +249,30 @@ class Profile(BaseProfile):
self.permissions = Permissions(self._locations)
prefs_js, user_js = self.permissions.network_prefs(self._proxy)
- if self._whitelistpaths:
+ if self._allowlistpaths:
# On macOS we don't want to support a generalized read whitelist,
# and the macOS sandbox policy language doesn't have support for
# lists, so we handle these specially.
if platform.system() == "Darwin":
- assert len(self._whitelistpaths) <= 2
- if len(self._whitelistpaths) == 2:
+ assert len(self._allowlistpaths) <= 2
+ if len(self._allowlistpaths) == 2:
prefs_js.append(
(
"security.sandbox.content.mac.testing_read_path2",
- self._whitelistpaths[1],
+ self._allowlistpaths[1],
)
)
prefs_js.append(
(
"security.sandbox.content.mac.testing_read_path1",
- self._whitelistpaths[0],
+ self._allowlistpaths[0],
)
)
else:
prefs_js.append(
(
"security.sandbox.content.read_path_whitelist",
- ",".join(self._whitelistpaths),
+ ",".join(self._allowlistpaths),
)
)
self.set_preferences(prefs_js, "prefs.js")
diff --git a/testing/mozbase/mozprofile/setup.py b/testing/mozbase/mozprofile/setup.py
index 8344bd83ae..12a6dad5cd 100644
--- a/testing/mozbase/mozprofile/setup.py
+++ b/testing/mozbase/mozprofile/setup.py
@@ -5,7 +5,7 @@
from setuptools import setup
PACKAGE_NAME = "mozprofile"
-PACKAGE_VERSION = "2.6.1"
+PACKAGE_VERSION = "3.0.0"
deps = [
"mozfile>=1.2",
diff --git a/testing/mozbase/mozrunner/mozrunner/devices/android_device.py b/testing/mozbase/mozrunner/mozrunner/devices/android_device.py
index 7cbec1b6f8..2db4743655 100644
--- a/testing/mozbase/mozrunner/mozrunner/devices/android_device.py
+++ b/testing/mozbase/mozrunner/mozrunner/devices/android_device.py
@@ -13,7 +13,6 @@ import subprocess
import sys
import telnetlib
import time
-from distutils.spawn import find_executable
from enum import Enum
import six
@@ -942,7 +941,7 @@ def _find_sdk_exe(substs, exe, tools):
if not found:
# Is exe on PATH?
- exe_path = find_executable(exe)
+ exe_path = shutil.which(exe)
if exe_path:
found = True
else:
diff --git a/testing/mozbase/mozrunner/setup.py b/testing/mozbase/mozrunner/setup.py
index 72407ffd95..7233c17386 100644
--- a/testing/mozbase/mozrunner/setup.py
+++ b/testing/mozbase/mozrunner/setup.py
@@ -5,7 +5,7 @@
from setuptools import find_packages, setup
PACKAGE_NAME = "mozrunner"
-PACKAGE_VERSION = "8.3.0"
+PACKAGE_VERSION = "8.3.1"
desc = """Reliable start/stop/configuration of Mozilla Applications (Firefox, Thunderbird, etc.)"""
@@ -15,7 +15,7 @@ deps = [
"mozinfo>=0.7,<2",
"mozlog>=6.0",
"mozprocess>=1.3.0,<2",
- "mozprofile~=2.3",
+ "mozprofile~=3.0",
"six>=1.13.0,<2",
]
diff --git a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
index 978d7d6911..553fcde284 100644
--- a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
+++ b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py
@@ -314,6 +314,7 @@ class SystemResourceMonitor(object):
self._swap_type = type(swap)
self._swap_len = len(swap)
self.start_timestamp = time.time()
+ self.start_time = time.monotonic()
self._pipe, child_pipe = multiprocessing.Pipe(True)
@@ -328,6 +329,9 @@ class SystemResourceMonitor(object):
self._pipe.send(("terminate",))
self._process.join()
+ def convert_to_monotonic_time(self, timestamp):
+ return timestamp - self.start_timestamp + self.start_time
+
# Methods to control monitoring.
def start(self):
@@ -458,18 +462,24 @@ class SystemResourceMonitor(object):
SystemResourceMonitor.instance.markers.append((name, start, end, text))
@staticmethod
- def begin_marker(name, text, disambiguator=None):
+ def begin_marker(name, text, disambiguator=None, timestamp=None):
if SystemResourceMonitor.instance:
id = name + ":" + text
if disambiguator:
id += ":" + disambiguator
- SystemResourceMonitor.instance._active_markers[id] = time.monotonic()
+ SystemResourceMonitor.instance._active_markers[id] = (
+ SystemResourceMonitor.instance.convert_to_monotonic_time(timestamp)
+ if timestamp
+ else time.monotonic()
+ )
@staticmethod
- def end_marker(name, text, disambiguator=None):
+ def end_marker(name, text, disambiguator=None, timestamp=None):
if not SystemResourceMonitor.instance:
return
end = time.monotonic()
+ if timestamp:
+ end = SystemResourceMonitor.instance.convert_to_monotonic_time(timestamp)
id = name + ":" + text
if disambiguator:
id += ":" + disambiguator
diff --git a/testing/mozbase/moztest/moztest/resolve.py b/testing/mozbase/moztest/moztest/resolve.py
index 42bf0ebdda..d84efc22e2 100644
--- a/testing/mozbase/moztest/moztest/resolve.py
+++ b/testing/mozbase/moztest/moztest/resolve.py
@@ -14,7 +14,6 @@ import six
from manifestparser import TestManifest, combine_fields
from mozbuild.base import MozbuildObject
from mozbuild.testing import REFTEST_FLAVORS, TEST_MANIFESTS
-from mozbuild.util import OrderedDefaultDict
from mozpack.files import FileFinder
here = os.path.abspath(os.path.dirname(__file__))
@@ -612,7 +611,7 @@ class TestResolver(MozbuildObject):
self._wpt_loaded = False
def _reset_state(self):
- self._tests_by_path = OrderedDefaultDict(list)
+ self._tests_by_path = defaultdict(list)
self._tests_by_flavor = defaultdict(set)
self._tests_by_manifest = defaultdict(list)
self._test_dirs = set()
@@ -887,7 +886,6 @@ class TestResolver(MozbuildObject):
self.topsrcdir,
self.topobjdir,
rebuild=False,
- download=True,
config_path=None,
rewrite_config=True,
update=True,
diff --git a/testing/mozbase/rust/mozdevice/src/lib.rs b/testing/mozbase/rust/mozdevice/src/lib.rs
index 45f7d4d2cf..0bc6509e89 100644
--- a/testing/mozbase/rust/mozdevice/src/lib.rs
+++ b/testing/mozbase/rust/mozdevice/src/lib.rs
@@ -53,8 +53,6 @@ impl FromStr for AndroidStorageInput {
}
}
-
-
#[derive(Debug, Clone, Copy, PartialEq)]
pub enum AndroidStorage {
App,
diff --git a/testing/mozbase/rust/mozversion/src/lib.rs b/testing/mozbase/rust/mozversion/src/lib.rs
index ccb6b01803..225b290d10 100644
--- a/testing/mozbase/rust/mozversion/src/lib.rs
+++ b/testing/mozbase/rust/mozversion/src/lib.rs
@@ -256,8 +256,8 @@ pub fn firefox_binary_version(binary: &Path) -> VersionResult<Version> {
}
fn parse_binary_version(version_str: &str) -> VersionResult<Version> {
- let version_regexp = Regex::new(r#"Firefox[[:space:]]+(?P<version>.+)"#)
- .expect("Error parsing version regexp");
+ let version_regexp =
+ Regex::new(r#"Firefox[[:space:]]+(?P<version>.+)"#).expect("Error parsing version regexp");
let version_match = version_regexp
.captures(version_str)
diff --git a/testing/mozharness/configs/releases/bouncer_firefox_nightly.py b/testing/mozharness/configs/releases/bouncer_firefox_nightly.py
index 09d52fe4a3..1fdbb83f73 100644
--- a/testing/mozharness/configs/releases/bouncer_firefox_nightly.py
+++ b/testing/mozharness/configs/releases/bouncer_firefox_nightly.py
@@ -10,6 +10,7 @@ config = {
"platforms": [
"linux",
"linux64",
+ "linux64-aarch64",
"osx",
"win",
"win64",
@@ -21,6 +22,7 @@ config = {
"platforms": [
"linux",
"linux64",
+ "linux64-aarch64",
"osx",
"win",
"win64",
@@ -32,6 +34,7 @@ config = {
"platforms": [
"linux",
"linux64",
+ "linux64-aarch64",
"osx",
"win",
"win64",
diff --git a/testing/mozharness/configs/unittests/linux_unittest.py b/testing/mozharness/configs/unittests/linux_unittest.py
index 801f57eb14..4a7ad62450 100644
--- a/testing/mozharness/configs/unittests/linux_unittest.py
+++ b/testing/mozharness/configs/unittests/linux_unittest.py
@@ -202,27 +202,7 @@ config = {
"tests": ["tests/jsreftest/tests/js/src/tests/jstests.list"],
},
"reftest": {
- "options": [
- "--suite=reftest",
- "--setpref=layers.acceleration.force-enabled=true",
- "--topsrcdir=tests/reftest/tests",
- ],
- "tests": ["tests/reftest/tests/layout/reftests/reftest.list"],
- },
- "reftest-no-accel": {
- "options": [
- "--suite=reftest",
- "--setpref=layers.acceleration.disabled=true",
- "--topsrcdir=tests/reftest/tests",
- ],
- "tests": ["tests/reftest/tests/layout/reftests/reftest.list"],
- },
- "reftest-snapshot": {
- "options": [
- "--suite=reftest",
- "--setpref=reftest.use-draw-snapshot=true",
- "--topsrcdir=tests/reftest/tests",
- ],
+ "options": ["--suite=reftest", "--topsrcdir=tests/reftest/tests"],
"tests": ["tests/reftest/tests/layout/reftests/reftest.list"],
},
},
diff --git a/testing/mozharness/configs/unittests/win_unittest.py b/testing/mozharness/configs/unittests/win_unittest.py
index d34acbeca6..84de3f6062 100644
--- a/testing/mozharness/configs/unittests/win_unittest.py
+++ b/testing/mozharness/configs/unittests/win_unittest.py
@@ -188,27 +188,14 @@ config = {
"options": ["--suite=reftest", "--topsrcdir=tests/reftest/tests"],
"tests": ["tests/reftest/tests/layout/reftests/reftest.list"],
},
- "reftest-no-accel": {
- "options": [
- "--suite=reftest",
- "--setpref=layers.acceleration.disabled=true",
- "--topsrcdir=tests/reftest/tests",
- ],
- "tests": ["tests/reftest/tests/layout/reftests/reftest.list"],
- },
},
"all_xpcshell_suites": {
"xpcshell": {
"options": [
"--xpcshell=%(abs_app_dir)s/" + XPCSHELL_NAME,
- ],
- "tests": [],
- },
- "xpcshell-msix": {
- "options": [
- "--app-binary=%(binary_path)s",
- "--app-path=%(install_dir)s",
- "--xre-path=%(install_dir)s",
+ "--msix-app-binary=%(binary_path)s",
+ "--msix-app-path=%(install_dir)s",
+ "--msix-xre-path=%(install_dir)s",
],
"tests": [],
},
diff --git a/testing/mozharness/mach_commands.py b/testing/mozharness/mach_commands.py
index 47b3ca4977..737d3e30b2 100644
--- a/testing/mozharness/mach_commands.py
+++ b/testing/mozharness/mach_commands.py
@@ -116,11 +116,6 @@ class MozharnessRunner(MozbuildObject):
"script": "desktop_unittest.py",
"config": desktop_unittest_config + ["--reftest-suite", "reftest"],
},
- "reftest-no-accel": {
- "script": "desktop_unittest.py",
- "config": desktop_unittest_config
- + ["--reftest-suite", "reftest-no-accel"],
- },
"cppunittest": {
"script": "desktop_unittest.py",
"config": desktop_unittest_config
diff --git a/testing/mozharness/mozharness/mozilla/testing/raptor.py b/testing/mozharness/mozharness/mozilla/testing/raptor.py
index fcfd66b19f..94df82294d 100644
--- a/testing/mozharness/mozharness/mozilla/testing/raptor.py
+++ b/testing/mozharness/mozharness/mozilla/testing/raptor.py
@@ -290,7 +290,7 @@ class Raptor(
["--gecko-profile-interval"],
{
"dest": "gecko_profile_interval",
- "type": "int",
+ "type": "float",
"help": "The interval between samples taken by the profiler (ms).",
},
],
diff --git a/testing/mozharness/mozharness/mozilla/testing/talos.py b/testing/mozharness/mozharness/mozilla/testing/talos.py
index 96215b6f79..b7058592d3 100755
--- a/testing/mozharness/mozharness/mozilla/testing/talos.py
+++ b/testing/mozharness/mozharness/mozilla/testing/talos.py
@@ -188,7 +188,7 @@ class Talos(
["--gecko-profile-interval"],
{
"dest": "gecko_profile_interval",
- "type": "int",
+ "type": "float",
"help": "The interval between samples taken by the profiler (milliseconds)",
},
],
diff --git a/testing/mozharness/scripts/desktop_unittest.py b/testing/mozharness/scripts/desktop_unittest.py
index e42f507ff9..a08da92f4d 100755
--- a/testing/mozharness/scripts/desktop_unittest.py
+++ b/testing/mozharness/scripts/desktop_unittest.py
@@ -216,6 +216,15 @@ class DesktopUnittest(TestingMixin, MercurialScript, MozbaseMixin, CodeCoverageM
},
],
[
+ ["--variant"],
+ {
+ "action": "store",
+ "dest": "variant",
+ "default": "",
+ "help": "specify a variant if mozharness needs to setup paths",
+ },
+ ],
+ [
["--gpu-required"],
{
"action": "store_true",
@@ -698,6 +707,9 @@ class DesktopUnittest(TestingMixin, MercurialScript, MozbaseMixin, CodeCoverageM
if c.get("threads"):
base_cmd.extend(["--threads", c["threads"]])
+ if c["variant"]:
+ base_cmd.append("--variant={}".format(c["variant"]))
+
if c["enable_xorigin_tests"]:
base_cmd.append("--enable-xorigin-tests")
@@ -926,8 +938,17 @@ class DesktopUnittest(TestingMixin, MercurialScript, MozbaseMixin, CodeCoverageM
# All Linux systems need module-null-sink to be loaded, otherwise
# media tests fail.
+
self.run_command("pactl load-module module-null-sink")
- self.run_command("pactl list modules short")
+ modules = self.get_output_from_command("pactl list modules short")
+ if not [l for l in modules.splitlines() if "module-x11" in l]:
+ # gnome-session isn't running, missing logind and other system services
+ # force the task to retry (return 4)
+ self.return_code = 4
+ self.fatal(
+ "Unable to start PulseAudio and load x11 modules",
+ exit_code=self.return_code,
+ )
def stage_files(self):
for category in SUITE_CATEGORIES:
diff --git a/testing/mozharness/scripts/web_platform_tests.py b/testing/mozharness/scripts/web_platform_tests.py
index 4ce679f62d..5af71ad7ad 100755
--- a/testing/mozharness/scripts/web_platform_tests.py
+++ b/testing/mozharness/scripts/web_platform_tests.py
@@ -513,7 +513,16 @@ class WebPlatformTest(TestingMixin, MercurialScript, CodeCoverageMixin, AndroidM
for tag in c["exclude_tag"]:
cmd.append(f"--exclude-tag={tag}")
- cmd.extend(test_paths)
+ if mozinfo.info["os"] == "win":
+ # Because of a limit on the length of CLI command line string length in Windows, we
+ # should prefer to pass paths by a file instead.
+ import tempfile
+
+ with tempfile.NamedTemporaryFile(delete=False) as tmp:
+ tmp.write("\n".join(test_paths).encode())
+ cmd.append(f"--include-file={tmp.name}")
+ else:
+ cmd.extend(test_paths)
return cmd
diff --git a/testing/perfdocs/generated/IndexedDB.rst b/testing/perfdocs/generated/IndexedDB.rst
index ec54211038..5d7d98e3de 100644
--- a/testing/perfdocs/generated/IndexedDB.rst
+++ b/testing/perfdocs/generated/IndexedDB.rst
@@ -51,7 +51,7 @@ How to add more tests?
* Under the ``[test_name]`` section, specity the test parameters as a sequence of ``--browsertime.key=value`` arguments as a value of ``browsertime_args =``
* Under the ``[test_name]`` section, override any other values as needed
-* Add test as a subtest to run for Desktop ``taskcluster/ci/test/browsertime-desktop.yml`` (maybe also for mobile)
+* Add test as a subtest to run for Desktop ``taskcluster/kinds/test/browsertime-desktop.yml`` (maybe also for mobile)
* Add test documentation to ``testing/raptor/raptor/perfdocs/config.yml``
* Generated files:
diff --git a/testing/perfdocs/generated/debugging.rst b/testing/perfdocs/generated/debugging.rst
index 8cc799e820..87165765f8 100644
--- a/testing/perfdocs/generated/debugging.rst
+++ b/testing/perfdocs/generated/debugging.rst
@@ -14,9 +14,9 @@ As of now, there is no easy way to do this. Raptor was not built for debugging f
To debug a functional failure in Raptor you can follow these steps:
#. If bug 1653617 has not landed yet, apply the patch.
-#. Add the --verbose flag to the extra-options list `here <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/raptor.yml#98-101>`__.
+#. Add the --verbose flag to the extra-options list `here <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/raptor.yml#98-101>`__.
#. If the --setenv doesn't exist yet (`bug 1494669 <https://bugzilla.mozilla.org/show_bug.cgi?id=1494669>`_), then add your MOZ_LOG environment variables to give you additional logging `here <https://searchfox.org/mozilla-central/source/testing/raptor/raptor/webextension/desktop.py#42>`_.
-#. If the flag does exist, then you can add the MOZ_LOG variables to the `raptor.yml <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/raptor.yml>`_ configuration file.
+#. If the flag does exist, then you can add the MOZ_LOG variables to the `raptor.yml <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/raptor.yml>`_ configuration file.
#. Push to try if you can't reproduce the failure locally.
You can follow `bug 1655554 <https://bugzilla.mozilla.org/show_bug.cgi?id=1655554>`_ as we work on improving this workflow.
diff --git a/testing/perfdocs/generated/mach-try-perf.rst b/testing/perfdocs/generated/mach-try-perf.rst
index a637788624..6fcd0e70f2 100644
--- a/testing/perfdocs/generated/mach-try-perf.rst
+++ b/testing/perfdocs/generated/mach-try-perf.rst
@@ -39,7 +39,7 @@ The tool is built to be conservative about the number of tests to run, so if you
at all relative to the existing GeckoView, and Fenix
tasks, then you will need to make fixes in the
associated taskcluster files (e.g.
- taskcluster/ci/test/browsertime-mobile.yml).
+ taskcluster/kinds/test/browsertime-mobile.yml).
Alternatively, set MOZ_FIREFOX_ANDROID_APK_OUTPUT to a
path to an APK, and then run the command with
--browsertime-upload-apk firefox-android. This option
diff --git a/testing/perfdocs/generated/metrics.rst b/testing/perfdocs/generated/metrics.rst
deleted file mode 100644
index 931456467c..0000000000
--- a/testing/perfdocs/generated/metrics.rst
+++ /dev/null
@@ -1,82 +0,0 @@
-################
-Metrics Gathered
-################
-
-.. contents::
- :depth: 2
- :local:
-
-**WARNING: This page is still being actively developed.**
-
-This document contains information about the metrics gathered in Browsertime tests, as well as detailed information of how they are gathered.
-
-Pageload Tests
---------------
-
-For browsertime pageload tests, there is a limited set of metrics that we collect (which can easily be expanded). Currently we divide these into two sets of metrics: (i) visual metrics, and (ii) technical metrics. These are gathered through two types of tests called warm and cold pageload tests. We have combined these two into a single "chimera" mode which you'll find in the Treeherder tasks.
-
-Below, you can find the process of how we run Warm, Cold, and Chimera pageload tests.
-
-Warm Pageload
-==============
-
-In this pageload test type, we open the browser, then repeatedly navigate to the same page without restarting the browser in between cycles.
-
-* A new, or conditioned, browser profile is created
-* The browser is started up
-* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
-* A new tab is opened
-* The test URL is loaded; measurements taken
-* The tab is reloaded ``X`` more times (for ``X`` replicates); measurements taken each time
-
-NOTES:
-- The measurements from the first page-load are not included in overall results metrics b/c of first load noise; however they are listed in the JSON artifacts
-- The bytecode cache gets populated on the first test cycle, and subsequent iterations will already have the cache built to reduce noise.
-
-Cold Pageload
-==============
-
-In this pageload test type, we open the browser, navigate to the page, then restart the browser before performing the next cycle.
-
-* A new, or conditioned, browser profile is created
-* The browser is started up
-* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
-* A new tab is opened
-* The test URL is loaded; measurements taken
-* The browser is shut down
-* Entire process is repeated for the remaining browser cycles
-
-NOTE: The measurements from all browser cycles are used to calculate overall results
-
-Chimera Pageload
-================
-
-A new mode for pageload testing is called chimera mode. It combines the warm and cold variants into a single test. This test mode is used in our Taskcluster tasks.
-
-* A new, or conditioned, browser profile is created
-* The browser is started up
-* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
-* A new tab is opened
-* The test URL is loaded; measurements taken for ``Cold pageload``
-* Navigate to a secondary URL (to preserve the content process)
-* The test URL is loaded again; measurements taken for ``Warm pageload``
-* The desktop browser is shut down
-* Entire process is repeated for the remaining browser cycles
-
-NOTE: The bytecode cache mentioned in Warm pageloads still applies here.
-
-Technical Metrics
-=================
-
-These are metrics that are obtained from the browser. This includes metrics like First Paint, DOM Content Flushed, etc..
-
-Visual Metrics
-==============
-
-When you run Raptor Browsertime with ``--browsertime-visualmetrics``, it will record a video of the page being loaded and then process this video to build the metrics. The video is either produced using FFMPEG (with ``--browsertime-no-ffwindowrecorder``) or the Firefox Window Recorder (default).
-
-
-Benchmarks
-----------
-
-Benchmarks gather their own custom metrics unlike the pageload tests above. Please ping the owners of those benchmarks to determine what they mean and how they are produced, or reach out to the Performance Test and Tooling team in #perftest on Element.
diff --git a/testing/perfdocs/generated/raptor-metrics.rst b/testing/perfdocs/generated/raptor-metrics.rst
new file mode 100644
index 0000000000..aa0429aed7
--- /dev/null
+++ b/testing/perfdocs/generated/raptor-metrics.rst
@@ -0,0 +1,206 @@
+################
+Metrics Gathered
+################
+
+.. contents::
+ :depth: 2
+ :local:
+
+**WARNING: This page is still being actively developed.**
+
+This document contains information about the metrics gathered in Browsertime tests, as well as detailed information of how they are gathered.
+
+Pageload Tests
+--------------
+
+For browsertime pageload tests, there is a limited set of metrics that we collect (which can easily be expanded). Currently we divide these into two sets of metrics: (i) visual metrics, and (ii) technical metrics. These are gathered through two types of tests called warm and cold pageload tests. We have combined these two into a single "chimera" mode which you'll find in the Treeherder tasks.
+
+Below, you can find the process of how we run Warm, Cold, and Chimera pageload tests.
+
+Warm Pageload
+==============
+
+In this pageload test type, we open the browser, then repeatedly navigate to the same page without restarting the browser in between cycles.
+
+* A new, or conditioned, browser profile is created
+* The browser is started up
+* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
+* A new tab is opened
+* The test URL is loaded; measurements taken
+* The tab is reloaded ``X`` more times (for ``X`` replicates); measurements taken each time
+
+NOTES:
+- The measurements from the first page-load are not included in overall results metrics b/c of first load noise; however they are listed in the JSON artifacts
+- The bytecode cache gets populated on the first test cycle, and subsequent iterations will already have the cache built to reduce noise.
+
+Cold Pageload
+==============
+
+In this pageload test type, we open the browser, navigate to the page, then restart the browser before performing the next cycle.
+
+* A new, or conditioned, browser profile is created
+* The browser is started up
+* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
+* A new tab is opened
+* The test URL is loaded; measurements taken
+* The browser is shut down
+* Entire process is repeated for the remaining browser cycles
+
+NOTE: The measurements from all browser cycles are used to calculate overall results
+
+Chimera Pageload
+================
+
+A new mode for pageload testing is called chimera mode. It combines the warm and cold variants into a single test. This test mode is used in our Taskcluster tasks.
+
+* A new, or conditioned, browser profile is created
+* The browser is started up
+* Post-startup browser settle pause of 30 seconds or 1 second if using a conditioned profile
+* A new tab is opened
+* The test URL is loaded; measurements taken for ``Cold pageload``
+* Navigate to a secondary URL (to preserve the content process)
+* The test URL is loaded again; measurements taken for ``Warm pageload``
+* The desktop browser is shut down
+* Entire process is repeated for the remaining browser cycles
+
+NOTE: The bytecode cache mentioned in Warm pageloads still applies here.
+
+Technical Metrics
+=================
+
+These are metrics that are obtained from the browser. This includes metrics like First Paint, DOM Content Flushed, etc..
+
+Visual Metrics
+==============
+
+When you run Raptor Browsertime with ``--browsertime-visualmetrics``, it will record a video of the page being loaded and then process this video to build the metrics. The video is either produced using FFMPEG (with ``--browsertime-no-ffwindowrecorder``) or the Firefox Window Recorder (default).
+
+
+Benchmarks
+----------
+
+Benchmarks gather their own custom metrics unlike the pageload tests above. Please ping the owners of those benchmarks to determine what they mean and how they are produced, or reach out to the Performance Test and Tooling team in #perftest on Element.
+
+Metric Definitions
+------------------
+
+The following documents all available metrics that current alert in Raptor Browsertime tests.
+
+Contentful Speed Index
+======================
+Similar to SpeedIndex, except that it uses the contentfulness of a frame to determine visual completeness instead of the histogram differences. The contentfulness is determined by calculating the number of edges found in the frame. A lower number of edges detected gives a smaller contentfulness value (and a smaller visually complete value).
+
+
+ * **Aliases**: ContentfulSpeedIndex
+ * **Tests using it**:
+ * **Custom**: `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+First Paint
+===========
+Denotes the first time the browser performs a paint that has content in it (in ms).
+
+
+ * **Aliases**: First Contentful Composite, First Contentful Paint, fcp
+ * **Tests using it**:
+ * **Custom**: `browsertime <raptor.html#browsertime-c>`__, `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+ * **Unittests**: `test-page-1 <raptor.html#test-page-1-u>`__, `test-page-2 <raptor.html#test-page-2-u>`__, `test-page-3 <raptor.html#test-page-3-u>`__, `test-page-4 <raptor.html#test-page-4-u>`__
+
+
+First Visual Change
+===================
+The first visual change detected in the test (in ms).
+
+ * **Aliases**: FirstVisualChange
+ * **Tests using it**:
+ * **Custom**: `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+Largest Contentful Paint
+========================
+The time (in ms) at which the largest piece of content on the page was rendered/painted.
+
+
+ * **Aliases**: largestContentfulPaint, lcp
+ * **Tests using it**:
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+Last Visual Change
+==================
+The last visual change detected in the test (in ms).
+
+ * **Aliases**: LastVisualChange
+ * **Tests using it**:
+ * **Custom**: `process-switch <raptor.html#process-switch-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+Load Time
+=========
+The time it took for the page to complete loading (in ms).
+
+ * **Aliases**: loadtime
+ * **Tests using it**:
+ * **Custom**: `browsertime <raptor.html#browsertime-c>`__, `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+ * **Unittests**: `test-page-1 <raptor.html#test-page-1-u>`__, `test-page-2 <raptor.html#test-page-2-u>`__, `test-page-3 <raptor.html#test-page-3-u>`__, `test-page-4 <raptor.html#test-page-4-u>`__
+
+
+Perceptual Speed Index
+======================
+Similar to SpeedIndex, except that it uses the structural similarity index measure (ssim) to determine visual completeness. This technique compares the luminance, contrast, and structure of the frames (a given frame vs. a final frame) to determine the completeness.
+
+
+ * **Aliases**: PerceptualSpeedIndex
+ * **Tests using it**:
+ * **Custom**: `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+Speed Index
+===========
+A metric used to denote the speed at which a page loaded. Lower values indicate faster pageloads. Units are in (Visually-Complete x Milliseconds). Calculated by using videos of the pageload which provide a measure of visual completeness. Visual completeness is calculated by comparing the histogram of a given frame to the final frame of the pageload. The SpeedIndex is calculated as the area between the curves of a constant line at y=1, and the graph of the visual completeness from 0ms to when visual completeness reaches 100% (or hits the y=1 line).
+
+
+ * **Aliases**: SpeedIndex
+ * **Tests using it**:
+ * **Custom**: `connect <raptor.html#connect-c>`__, `process-switch <raptor.html#process-switch-c>`__, `throttled <raptor.html#throttled-c>`__, `welcome <raptor.html#welcome-c>`__
+ * **Desktop**: `amazon <raptor.html#amazon-d>`__, `bing-search <raptor.html#bing-search-d>`__, `buzzfeed <raptor.html#buzzfeed-d>`__, `cnn <raptor.html#cnn-d>`__, `docomo <raptor.html#docomo-d>`__, `ebay <raptor.html#ebay-d>`__, `espn <raptor.html#espn-d>`__, `expedia <raptor.html#expedia-d>`__, `facebook <raptor.html#facebook-d>`__, `fandom <raptor.html#fandom-d>`__, `google-docs <raptor.html#google-docs-d>`__, `google-mail <raptor.html#google-mail-d>`__, `google-search <raptor.html#google-search-d>`__, `google-slides <raptor.html#google-slides-d>`__, `imdb <raptor.html#imdb-d>`__, `imgur <raptor.html#imgur-d>`__, `instagram <raptor.html#instagram-d>`__, `linkedin <raptor.html#linkedin-d>`__, `microsoft <raptor.html#microsoft-d>`__, `netflix <raptor.html#netflix-d>`__, `nytimes <raptor.html#nytimes-d>`__, `office <raptor.html#office-d>`__, `openai <raptor.html#openai-d>`__, `outlook <raptor.html#outlook-d>`__, `paypal <raptor.html#paypal-d>`__, `pinterest <raptor.html#pinterest-d>`__, `reddit <raptor.html#reddit-d>`__, `samsung <raptor.html#samsung-d>`__, `tiktok <raptor.html#tiktok-d>`__, `tumblr <raptor.html#tumblr-d>`__, `twitch <raptor.html#twitch-d>`__, `twitter <raptor.html#twitter-d>`__, `weather <raptor.html#weather-d>`__, `wikia <raptor.html#wikia-d>`__, `wikipedia <raptor.html#wikipedia-d>`__, `yahoo-mail <raptor.html#yahoo-mail-d>`__, `youtube <raptor.html#youtube-d>`__
+ * **Interactive**: `cnn-nav <raptor.html#cnn-nav-i>`__, `facebook-nav <raptor.html#facebook-nav-i>`__, `reddit-billgates-ama <raptor.html#reddit-billgates-ama-i>`__, `reddit-billgates-post-1 <raptor.html#reddit-billgates-post-1-i>`__, `reddit-billgates-post-2 <raptor.html#reddit-billgates-post-2-i>`__
+ * **Live**: `booking-sf <raptor.html#booking-sf-l>`__, `discord <raptor.html#discord-l>`__, `fashionbeans <raptor.html#fashionbeans-l>`__, `google-accounts <raptor.html#google-accounts-l>`__, `imdb-firefox <raptor.html#imdb-firefox-l>`__, `medium-article <raptor.html#medium-article-l>`__, `people-article <raptor.html#people-article-l>`__, `reddit-thread <raptor.html#reddit-thread-l>`__, `rumble-fox <raptor.html#rumble-fox-l>`__, `stackoverflow-question <raptor.html#stackoverflow-question-l>`__, `urbandictionary-define <raptor.html#urbandictionary-define-l>`__, `wikia-marvel <raptor.html#wikia-marvel-l>`__
+ * **Mobile**: `allrecipes <raptor.html#allrecipes-m>`__, `amazon <raptor.html#amazon-m>`__, `amazon-search <raptor.html#amazon-search-m>`__, `bild-de <raptor.html#bild-de-m>`__, `bing <raptor.html#bing-m>`__, `bing-search-restaurants <raptor.html#bing-search-restaurants-m>`__, `booking <raptor.html#booking-m>`__, `cnn <raptor.html#cnn-m>`__, `cnn-ampstories <raptor.html#cnn-ampstories-m>`__, `dailymail <raptor.html#dailymail-m>`__, `ebay-kleinanzeigen <raptor.html#ebay-kleinanzeigen-m>`__, `ebay-kleinanzeigen-search <raptor.html#ebay-kleinanzeigen-search-m>`__, `espn <raptor.html#espn-m>`__, `facebook <raptor.html#facebook-m>`__, `facebook-cristiano <raptor.html#facebook-cristiano-m>`__, `google <raptor.html#google-m>`__, `google-maps <raptor.html#google-maps-m>`__, `google-search-restaurants <raptor.html#google-search-restaurants-m>`__, `imdb <raptor.html#imdb-m>`__, `instagram <raptor.html#instagram-m>`__, `microsoft-support <raptor.html#microsoft-support-m>`__, `reddit <raptor.html#reddit-m>`__, `sina <raptor.html#sina-m>`__, `stackoverflow <raptor.html#stackoverflow-m>`__, `wikipedia <raptor.html#wikipedia-m>`__, `youtube <raptor.html#youtube-m>`__, `youtube-watch <raptor.html#youtube-watch-m>`__
+
+
+Youtube Playback Metrics
+========================
+Metrics starting with VP9/H264 give the number of frames dropped, and painted.
+
+
+ * **Aliases**: H264, VP9
+ * **Tests using it**:
+ * **Benchmarks**: `youtube-playback <raptor.html#youtube-playback-b>`__, `youtube-playback-hfr <raptor.html#youtube-playback-hfr-b>`__
+
+
diff --git a/testing/perfdocs/generated/raptor.rst b/testing/perfdocs/generated/raptor.rst
index d32718e0ca..8182f94f90 100644
--- a/testing/perfdocs/generated/raptor.rst
+++ b/testing/perfdocs/generated/raptor.rst
@@ -23,7 +23,7 @@ Locally, Raptor can be invoked with the following command:
browsertime
debugging
contributing
- metrics
+ raptor-metrics
.. contents::
:depth: 2
@@ -212,11 +212,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-ares6**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-ares6**
- ❌
- ❌
@@ -453,11 +448,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-assorted-dom**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-assorted-dom**
- ❌
- ❌
@@ -695,11 +685,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-jetstream2**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-jetstream2**
- ❌
- ❌
@@ -932,11 +917,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-matrix-react-bench**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-matrix-react-bench**
- ❌
- ❌
@@ -1010,7 +990,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose browser profiler**: true
* **expose chrome trace**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **host from parent**: false
@@ -1273,11 +1253,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-1-3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-1-3**
- ❌
- ❌
@@ -1351,7 +1326,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **cold**: true
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **host from parent**: false
@@ -1614,11 +1589,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-1-3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-1-3**
- ❌
- ❌
@@ -1694,7 +1664,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **apps**: firefox, chrome, safari
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml#16>`__
@@ -1905,11 +1875,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-animometer**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-animometer**
- ❌
- ❌
@@ -1976,7 +1941,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **apps**: fenix, chrome-m, geckoview
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml#16>`__
@@ -2187,11 +2152,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-animometer**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-animometer**
- ❌
- ❌
@@ -2262,7 +2222,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **apps**: firefox, chrome, safari, custom-car
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml#18>`__
@@ -2478,11 +2438,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-animometer-ramp**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-animometer-ramp**
- ❌
- ❌
@@ -2554,7 +2509,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **apps**: fenix, chrome-m, geckoview
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml#18>`__
@@ -2770,11 +2725,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-animometer-ramp**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-animometer-ramp**
- ❌
- ❌
@@ -2851,7 +2801,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose chrome trace**: true
* **expose gecko profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml#17>`__
@@ -3062,11 +3012,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite**
- ❌
- ❌
@@ -3134,7 +3079,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose chrome trace**: true
* **expose gecko profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml#17>`__
@@ -3345,11 +3290,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite**
- ❌
- ❌
@@ -3423,7 +3363,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose browser profiler**: true
* **expose chrome trace**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **host from parent**: false
@@ -3686,11 +3626,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite-1-3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite-1-3**
- ❌
- ❌
@@ -3764,7 +3699,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **cold**: true
* **expected**: pass
* **expose browser profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **host from parent**: false
@@ -4027,11 +3962,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite-1-3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite-1-3**
- ❌
- ❌
@@ -4108,7 +4038,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose chrome trace**: true
* **expose gecko profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml#19>`__
@@ -4324,11 +4254,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite-ramp**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite-ramp**
- ❌
- ❌
@@ -4401,7 +4326,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
* **expected**: pass
* **expose chrome trace**: true
* **expose gecko profiler**: true
- * **gecko profile features**: stackwalk,js,cpu,java,processcpu
+ * **gecko profile features**: stackwalk,js,cpu,java,processcpu,memory
* **gecko profile interval**: 1
* **gecko profile threads**: GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml#19>`__
@@ -4617,11 +4542,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-motionmark-htmlsuite-ramp**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-motionmark-htmlsuite-ramp**
- ❌
- ❌
@@ -5016,11 +4936,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-speedometer**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-speedometer**
- ❌
- ❌
@@ -5411,11 +5326,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-speedometer**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-speedometer**
- ❌
- ❌
@@ -5812,11 +5722,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-speedometer3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-speedometer3**
- ❌
- ❌
@@ -6209,11 +6114,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-speedometer3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-speedometer3**
- ❌
- ❌
@@ -6453,11 +6353,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-stylebench**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-stylebench**
- ❌
- ❌
@@ -6690,11 +6585,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-sunspider**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-sunspider**
- ❌
- ❌
@@ -7190,11 +7080,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-unity-webgl**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-unity-webgl**
- ❌
- ❌
@@ -7468,11 +7353,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-unity-webgl**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-unity-webgl**
- ❌
- ❌
@@ -7706,11 +7586,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-wasm-chrome-wasm-godot**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-wasm-firefox-wasm-godot**
- ❌
- ❌
@@ -8369,11 +8244,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-wasm-chrome-wasm-misc**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-wasm-firefox-wasm-misc**
- ❌
- ❌
@@ -9039,11 +8909,6 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-benchmark-chrome-webaudio**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-benchmark-firefox-webaudio**
- ❌
- ❌
@@ -9110,7 +8975,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
**Owner**: PerfTest Team
- * **alert on**: H264.1080p30@1X_dropped_frames H264.1080p60@1X_dropped_frames H264.1440p30@1X_dropped_frames H264.144p15@1X_dropped_frames H264.2160p30@1X_dropped_frames H264.240p30@1X_dropped_frames H264.360p30@1X_dropped_frames H264.480p30@1X_dropped_frames H264.720p30@1X_dropped_frames H264.720p60@1X_dropped_frames VP9.1080p30@1X_dropped_frames VP9.1080p60@1X_dropped_frames VP9.1440p30@1X_dropped_frames VP9.1440p60@1X_dropped_frames VP9.144p30@1X_dropped_frames VP9.2160p30@1X_dropped_frames VP9.2160p60@1X_dropped_frames VP9.240p30@1X_dropped_frames VP9.360p30@1X_dropped_frames VP9.480p30@1X_dropped_frames VP9.720p30@1X_dropped_frames VP9.720p60@1X_dropped_frames
+ * **alert on**: `H264.1080p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.1080p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.1440p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.144p15@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.2160p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.240p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.360p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.480p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.720p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264.720p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.1080p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.1080p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.1440p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.1440p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.144p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.2160p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.2160p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.240p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.360p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.480p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.720p30@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `VP9.720p60@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__
* **alert threshold**: 2.0
* **apps**: firefox, geckoview, fenix, refbrow, chrome
* **expected**: pass
@@ -10264,7 +10129,7 @@ Standard benchmarks are third-party tests (i.e. Speedometer) that we have integr
**Owner**: PerfTest Team
- * **alert on**: H2641080p60fps@1X_dropped_frames H264720p60fps@1X_dropped_frames
+ * **alert on**: `H2641080p60fps@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__, `H264720p60fps@1X_dropped_frames <raptor-metrics.html#youtube-playback-metrics>`__
* **alert threshold**: 2.0
* **apps**: firefox, geckoview, fenix, refbrow, chrome
* **expected**: pass
@@ -12246,7 +12111,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#30>`__
* **lower is better**: true
@@ -12476,7 +12341,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#34>`__
* **lower is better**: true
@@ -12706,7 +12571,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#38>`__
* **lower is better**: true
@@ -12936,7 +12801,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#42>`__
* **lower is better**: true
@@ -13166,7 +13031,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#46>`__
* **lower is better**: true
@@ -13396,7 +13261,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#50>`__
* **lower is better**: true
@@ -13626,7 +13491,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#54>`__
* **lower is better**: true
@@ -13856,7 +13721,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#58>`__
* **lower is better**: true
@@ -14086,7 +13951,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#62>`__
* **lower is better**: true
@@ -14316,7 +14181,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#66>`__
* **lower is better**: true
@@ -14546,7 +14411,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#70>`__
* **lower is better**: true
@@ -14776,7 +14641,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#74>`__
* **lower is better**: true
@@ -14999,7 +14864,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
**Description**: Used to run vanilla browsertime tests through raptor. For example: `./mach raptor --browsertime -t browsertime --browsertime-arg url=https://www.sitespeed.io --browsertime-arg iterations=3`
- * **alert on**: fcp, loadtime
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **browser cycles**: 1
@@ -15027,7 +14892,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
**Description**: Verifies that connection time on a pageload is zero when a speculative connection has first been made
* **alert change type**: absolute
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__
* **alert threshold**: 10.0
* **apps**: firefox
* **browser cycles**: 3
@@ -15300,7 +15165,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
* **custom data**: true
* **expected**: pass
* **gecko profile entries**: 131072000
- * **gecko profile features**: js,stackwalk,cpu
+ * **gecko profile features**: js,stackwalk,cpu,memory
* **gecko profile threads**: GeckoMain,DOM Worker,IndexedDB
* **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml#78>`__
* **lower is better**: true
@@ -15552,7 +15417,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
**Description**: Measures process switch time
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **browser cycles**: 25
@@ -15789,7 +15654,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
**Description**: Pageload test using a throttled network environment
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **browser cycles**: 3
@@ -16359,11 +16224,6 @@ Browsertime tests that use a custom pageload test script. These use the pageload
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-upload-chrome-upload**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-upload-firefox-upload**
- ❌
- ❌
@@ -16590,11 +16450,6 @@ Browsertime tests that use a custom pageload test script. These use the pageload
- autoland
- mozilla-release
- mozilla-beta
- * - **browsertime-upload-chrome-upload-h3**
- - ❌
- - ❌
- - ❌
- - ❌
* - **browsertime-upload-firefox-upload-h3**
- ❌
- ❌
@@ -16663,7 +16518,7 @@ Browsertime tests that use a custom pageload test script. These use the pageload
**Description**: Measures pageload metrics for the first-install about:welcome page
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **browser cycles**: 25
@@ -16871,7 +16726,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
@@ -17447,7 +17302,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
@@ -17845,7 +17700,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
@@ -18084,7 +17939,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
@@ -18565,7 +18420,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **benchmark page**: false
@@ -18788,7 +18643,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
@@ -19112,7 +18967,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
@@ -19423,7 +19278,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
@@ -19435,7 +19290,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
* **page cycles**: 25
* **page timeout**: 60000
* **playback**: mitmproxy
- * **playback pageset manifest**: mitm7-linux-firefox-expedia.manifest
+ * **playback pageset manifest**: mitm8-darwin-firefox-expedia.manifest
* **playback version**: 8.1.1
* **secondary url**: `<https://groups.expedia.com/Group-Rate/?locale=en_US&ol=1>`__
* **test url**: `<https://expedia.com/Hotel-Search?destination=New+York%2C+New+York&latLong=40.756680%2C-73.986470&regionId=178293&startDate=&endDate=&rooms=1&_xpid=11905%7C1&adults=2>`__
@@ -19709,14 +19564,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#54>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#55>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -20075,14 +19930,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#59>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#60>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -20473,14 +20328,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#64>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#65>`__
* **lower is better**: true
* **page complete wait time**: 8000
* **page cycles**: 25
@@ -20798,14 +20653,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#69>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#70>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -21121,14 +20976,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#74>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#75>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -21444,14 +21299,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#78>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#79>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -21843,14 +21698,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#84>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#85>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -22274,14 +22129,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#88>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#89>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -22579,14 +22434,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#100>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#101>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -23080,14 +22935,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#105>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#106>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -23404,19 +23259,19 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#110>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#111>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
* **playback**: mitmproxy
- * **playback pageset manifest**: mitm7-linux-firefox-microsoft.manifest
+ * **playback pageset manifest**: mitm8-linux-firefox-microsoft.manifest
* **playback version**: 8.1.1
* **secondary url**: `<https://support.microsoft.com/en-us>`__
* **test url**: `<https://www.microsoft.com/en-us/>`__
@@ -23728,14 +23583,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#114>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#116>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -24047,14 +23902,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#119>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#121>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -24333,14 +24188,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#123>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#125>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -24572,7 +24427,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **benchmark page**: false
@@ -24795,14 +24650,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#127>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#129>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -25113,14 +24968,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#131>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#133>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -25436,14 +25291,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#135>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#137>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -25760,14 +25615,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#141>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#143>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -26191,7 +26046,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **benchmark page**: false
@@ -26414,7 +26269,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **benchmark page**: false
@@ -26637,14 +26492,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#147>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#149>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -26961,14 +26816,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#152>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#154>`__
* **lower is better**: true
* **measure**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
* **page cycles**: 25
@@ -27287,14 +27142,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#165>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#167>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -27680,7 +27535,7 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome
* **benchmark page**: false
@@ -27903,14 +27758,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#170>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#172>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -28142,14 +27997,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#175>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#177>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -28648,14 +28503,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: false
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#179>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#181>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -29046,14 +28901,14 @@ Tests for page-load performance. The links direct to the actual websites that ar
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari, custom-car
* **benchmark page**: true
* **browser cycles**: 25
* **expected**: pass
* **gecko profile interval**: 1
- * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#184>`__
+ * **link searchfox**: `<https://searchfox.org/mozilla-central/source/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml#186>`__
* **lower is better**: true
* **page cycles**: 25
* **page timeout**: 60000
@@ -29485,7 +29340,7 @@ Browsertime tests that interact with the webpage. Includes responsiveness tests
**Description**: Navigates to cnn main page, then to the world sub-page.
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari
* **browser cycles**: 10
@@ -29727,7 +29582,7 @@ Browsertime tests that interact with the webpage. Includes responsiveness tests
**Description**: Navigates to facebook, then the sub-pages friends, marketplace, groups.
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari
* **browser cycles**: 10
@@ -29969,7 +29824,7 @@ Browsertime tests that interact with the webpage. Includes responsiveness tests
**Description**: Navigates from the Bill Gates AMA to the Reddit members section.
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari
* **browser cycles**: 10
@@ -30211,7 +30066,7 @@ Browsertime tests that interact with the webpage. Includes responsiveness tests
**Description**: Navigates the `thisisbillgates` user starting at the main user page, then to the posts, comments, hot, and top sections.
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari
* **browser cycles**: 10
@@ -30453,7 +30308,7 @@ Browsertime tests that interact with the webpage. Includes responsiveness tests
**Description**: Navigates the `thisisbillgates` user starting at the main user page, then to the posts, comments, hot, and top sections.
* **accept zero vismet**: true
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: firefox, chrome, safari
* **browser cycles**: 10
@@ -30697,7 +30552,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -30765,7 +30620,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -30833,7 +30688,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -30901,7 +30756,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -30969,7 +30824,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31037,7 +30892,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31105,7 +30960,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31173,7 +31028,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31241,7 +31096,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31309,7 +31164,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31377,7 +31232,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31445,7 +31300,7 @@ A set of test pages that are run as live sites instead of recorded versions. The
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m, firefox, chrome
* **browser cycles**: 15
@@ -31518,7 +31373,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -31615,7 +31470,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32189,7 +32044,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32296,7 +32151,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32428,7 +32283,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32560,7 +32415,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32692,7 +32547,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -32824,7 +32679,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -33303,7 +33158,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -33435,7 +33290,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -33567,7 +33422,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -33699,7 +33554,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -33831,7 +33686,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -34140,7 +33995,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -34505,7 +34360,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -34637,7 +34492,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -34735,7 +34590,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -34867,7 +34722,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -35000,7 +34855,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -35429,7 +35284,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -35929,7 +35784,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -36026,7 +35881,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -36455,7 +36310,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -36562,7 +36417,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -36694,7 +36549,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -37198,7 +37053,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -37627,7 +37482,7 @@ Page-load performance test suite on Android. The links direct to the actual webs
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange, largestContentfulPaint
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__, `ContentfulSpeedIndex <raptor-metrics.html#contentful-speed-index>`__, `PerceptualSpeedIndex <raptor-metrics.html#perceptual-speed-index>`__, `SpeedIndex <raptor-metrics.html#speed-index>`__, `FirstVisualChange <raptor-metrics.html#first-visual-change>`__, `LastVisualChange <raptor-metrics.html#last-visual-change>`__, `largestContentfulPaint <raptor-metrics.html#largest-contentful-paint>`__
* **alert threshold**: 2.0
* **apps**: geckoview, fenix, refbrow, chrome-m
* **benchmark page**: true
@@ -37771,7 +37626,7 @@ These tests aren't used in standard testing, they are only used in the Raptor un
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **expected**: pass
@@ -37793,7 +37648,7 @@ These tests aren't used in standard testing, they are only used in the Raptor un
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **expected**: pass
@@ -37815,7 +37670,7 @@ These tests aren't used in standard testing, they are only used in the Raptor un
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **expected**: pass
@@ -37837,7 +37692,7 @@ These tests aren't used in standard testing, they are only used in the Raptor un
**Owner**: PerfTest Team
- * **alert on**: fcp, loadtime
+ * **alert on**: `fcp <raptor-metrics.html#first-paint>`__, `loadtime <raptor-metrics.html#load-time>`__
* **alert threshold**: 2.0
* **apps**: firefox
* **expected**: pass
diff --git a/testing/perfdocs/generated/standard-workflow.rst b/testing/perfdocs/generated/standard-workflow.rst
index e874ecc7b8..5b1fd4c667 100644
--- a/testing/perfdocs/generated/standard-workflow.rst
+++ b/testing/perfdocs/generated/standard-workflow.rst
@@ -39,7 +39,35 @@ Some more information on this tool `can be found here <https://wiki.mozilla.org/
Understanding the Results
-------------------------
-In the image above, the **base**, and **new** columns show the average value across all tests. The number of data points used here can be changed by clicking the **Use replicates** button at the top-right of the table (only for try pushes). Alternatively, you can navigate to the try runs to retrigger the tests, or use the "refresh"-like button mentioned above. Hovering over the values in these columns will show you the spread of the data along with the standard deviation in percentage form.
+In the image above, the **base**, and **new** columns show the average value across all tests. You can navigate to the try runs to retrigger the tests, or use the "refresh"-like button mentioned above (only visible while logged in). Hovering over the values in these columns will show you the spread of the data along with the standard deviation in percentage form. The number of data points used here can also be changed by clicking the **Use replicates** button at the top-right of the table (only for try pushes). It causes the comparison to use the trials/replicates data from the perfherder data instead of the summary values. Only 1 summary value is generated per task, whereas there can be multiple replicates generated per task. Here's an example of where this data comes from in the ``PERFHERDER_DATA`` JSON (output in the performance task logs, or as ``perfherder-data.json`` file):
+
+.. code-block:: none
+
+ ... # This type of data can be found in any PERFHERDER_DATA output
+ "subtests": [
+ {
+ "alertThreshold": 2.0,
+ "lowerIsBetter": true,
+ "name": "Charts-chartjs/Draw opaque scatter/Async",
+ "replicates": [ # These are the trials/replicates (multiple per task)
+ 1.74,
+ 1.36,
+ 1.16,
+ 1.62,
+ 1.42,
+ 1.28,
+ 1.12,
+ 1.4,
+ 1.26,
+ 1.44,
+ 1.22,
+ 3.32
+ ],
+ "unit": "ms",
+ "value": 1.542 # This is the summary value of those replicates (only 1 per task)
+ },
+ ...
+
The **delta** column shows the difference between the two revisions' average in percentage. A negative value here means that the associated metric has decreased, and vice versa for positive values.
diff --git a/testing/perfdocs/generated/talos.rst b/testing/perfdocs/generated/talos.rst
index 3a730e1035..266f4028be 100644
--- a/testing/perfdocs/generated/talos.rst
+++ b/testing/perfdocs/generated/talos.rst
@@ -125,7 +125,7 @@ At a glance
- Tests are defined in
`testing/talos/talos/test.py <https://searchfox.org/mozilla-central/source/testing/talos/talos/test.py>`__
- Treeherder abbreviations are defined in
- `taskcluster/ci/test/talos.yml <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/talos.yml>`__
+ `taskcluster/kinds/test/talos.yml <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
- Suites are defined for production in
`testing/talos/talos.json <https://searchfox.org/mozilla-central/source/testing/talos/talos.json>`__
@@ -133,7 +133,7 @@ Test lifecycle
**************
- Taskcluster schedules `talos
- jobs <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/talos.yml>`__
+ jobs <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
- Taskcluster runs a Talos job on a hardware machine when one is
available - this is bootstrapped by
`mozharness <https://searchfox.org/mozilla-central/source/testing/mozharness/mozharness/mozilla/testing/talos.py>`__
@@ -8000,6 +8000,7 @@ For the sample commands found below, note that the capitalization used is import
repository, and this test pulls those in for testing locally through a toolchain artifact
called talos-pdfs.
* pdfpaint: True
+ * subtest_alerts: True
* timeout: 1800
* tpmanifest: ${talos}/tests/pdfpaint/pdfpaint.manifest
* tppagecycles: 1
diff --git a/testing/performance/mach-try-perf/perfdocs/index.rst b/testing/performance/mach-try-perf/perfdocs/index.rst
index a637788624..6fcd0e70f2 100644
--- a/testing/performance/mach-try-perf/perfdocs/index.rst
+++ b/testing/performance/mach-try-perf/perfdocs/index.rst
@@ -39,7 +39,7 @@ The tool is built to be conservative about the number of tests to run, so if you
at all relative to the existing GeckoView, and Fenix
tasks, then you will need to make fixes in the
associated taskcluster files (e.g.
- taskcluster/ci/test/browsertime-mobile.yml).
+ taskcluster/kinds/test/browsertime-mobile.yml).
Alternatively, set MOZ_FIREFOX_ANDROID_APK_OUTPUT to a
path to an APK, and then run the command with
--browsertime-upload-apk firefox-android. This option
diff --git a/testing/performance/mach-try-perf/perfdocs/standard-workflow.rst b/testing/performance/mach-try-perf/perfdocs/standard-workflow.rst
index e874ecc7b8..5b1fd4c667 100644
--- a/testing/performance/mach-try-perf/perfdocs/standard-workflow.rst
+++ b/testing/performance/mach-try-perf/perfdocs/standard-workflow.rst
@@ -39,7 +39,35 @@ Some more information on this tool `can be found here <https://wiki.mozilla.org/
Understanding the Results
-------------------------
-In the image above, the **base**, and **new** columns show the average value across all tests. The number of data points used here can be changed by clicking the **Use replicates** button at the top-right of the table (only for try pushes). Alternatively, you can navigate to the try runs to retrigger the tests, or use the "refresh"-like button mentioned above. Hovering over the values in these columns will show you the spread of the data along with the standard deviation in percentage form.
+In the image above, the **base**, and **new** columns show the average value across all tests. You can navigate to the try runs to retrigger the tests, or use the "refresh"-like button mentioned above (only visible while logged in). Hovering over the values in these columns will show you the spread of the data along with the standard deviation in percentage form. The number of data points used here can also be changed by clicking the **Use replicates** button at the top-right of the table (only for try pushes). It causes the comparison to use the trials/replicates data from the perfherder data instead of the summary values. Only 1 summary value is generated per task, whereas there can be multiple replicates generated per task. Here's an example of where this data comes from in the ``PERFHERDER_DATA`` JSON (output in the performance task logs, or as ``perfherder-data.json`` file):
+
+.. code-block:: none
+
+ ... # This type of data can be found in any PERFHERDER_DATA output
+ "subtests": [
+ {
+ "alertThreshold": 2.0,
+ "lowerIsBetter": true,
+ "name": "Charts-chartjs/Draw opaque scatter/Async",
+ "replicates": [ # These are the trials/replicates (multiple per task)
+ 1.74,
+ 1.36,
+ 1.16,
+ 1.62,
+ 1.42,
+ 1.28,
+ 1.12,
+ 1.4,
+ 1.26,
+ 1.44,
+ 1.22,
+ 3.32
+ ],
+ "unit": "ms",
+ "value": 1.542 # This is the summary value of those replicates (only 1 per task)
+ },
+ ...
+
The **delta** column shows the difference between the two revisions' average in percentage. A negative value here means that the associated metric has decreased, and vice versa for positive values.
diff --git a/testing/profiles/common/user.js b/testing/profiles/common/user.js
index 5613898b7b..523ccc00e4 100644
--- a/testing/profiles/common/user.js
+++ b/testing/profiles/common/user.js
@@ -12,7 +12,6 @@ user_pref("devtools.console.stdout.chrome", true);
// asrouter expects a plain object or null
user_pref("browser.newtabpage.activity-stream.asrouter.providers.cfr", "null");
user_pref("browser.newtabpage.activity-stream.asrouter.providers.message-groups", "null");
-user_pref("browser.newtabpage.activity-stream.asrouter.providers.whats-new-panel", "null");
user_pref("browser.newtabpage.activity-stream.asrouter.providers.messaging-experiments", "null");
user_pref("browser.newtabpage.activity-stream.feeds.system.topstories", false);
user_pref("browser.newtabpage.activity-stream.tippyTop.service.endpoint", "");
diff --git a/testing/profiles/reftest/user.js b/testing/profiles/reftest/user.js
index 765d17e6a7..2ee31eff12 100644
--- a/testing/profiles/reftest/user.js
+++ b/testing/profiles/reftest/user.js
@@ -43,7 +43,7 @@ user_pref("gfx.logging.level", 1);
user_pref("image.downscale-during-decode.enabled", false);
// We do the capturing the reftest results with sync decoding
// so we want to be consistent.
-user_pref("image.decode-sync.enabled", true);
+user_pref("image.testing.decode-sync.enabled", true);
// Disable interruptible reflow since (1) it's normally not going to
// happen, but (2) it might happen if we somehow end up with both
// pending user events and clock skew. So to avoid having to change
diff --git a/testing/profiles/web-platform/user.js b/testing/profiles/web-platform/user.js
index 6370b93645..9251695ba2 100644
--- a/testing/profiles/web-platform/user.js
+++ b/testing/profiles/web-platform/user.js
@@ -74,8 +74,6 @@ user_pref("gfx.offscreencanvas.enabled", true);
user_pref("dom.reporting.enabled", true);
// Enable WebDriver BiDi experimental commands and events during tests.
user_pref("remote.experimental.enabled", true);
-// Disable always partitioning storage with the Storage Access API
-user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", false);
// Disable OCSP checks in WPT (webtransport triggers these occasionally)
user_pref("security.OCSP.enabled", 0);
// Disable download of intermediate certificates.
diff --git a/testing/raptor/raptor/browsertime/base.py b/testing/raptor/raptor/browsertime/base.py
index 0de7b1a239..f06763e2ca 100644
--- a/testing/raptor/raptor/browsertime/base.py
+++ b/testing/raptor/raptor/browsertime/base.py
@@ -186,7 +186,7 @@ class Browsertime(Perftest):
# setup once all chrome versions use the new artifact setup.
cd_extracted_names_115 = {
"windows": str(
- pathlib.Path("{}chromedriver-win32", "chromedriver.exe")
+ pathlib.Path("{}chromedriver-win64", "chromedriver.exe")
),
"mac-x86_64": str(
pathlib.Path("{}chromedriver-mac-x64", "chromedriver")
@@ -212,7 +212,8 @@ class Browsertime(Perftest):
elif "win" in self.config["platform"]:
self.browsertime_chromedriver = (
self.browsertime_chromedriver.replace(
- "{}chromedriver.exe", cd_extracted_names_115["windows"]
+ "{}chromedriver.exe",
+ cd_extracted_names_115["windows"],
)
)
else:
@@ -598,13 +599,19 @@ class Browsertime(Perftest):
browsertime_options=browsertime_options, test=test
)
- return (
+ cmd = (
[self.browsertime_node, self.browsertime_browsertimejs]
+ self.driver_paths
+ [browsertime_script]
+ browsertime_options
)
+ if test.get("support_class", None):
+ LOG.info("Test support class is modifying the command...")
+ test.get("support_class").modify_command(cmd, test)
+
+ return cmd
+
def _compose_gecko_profiler_cmds(self, test, priority1_options):
"""Modify the command line options for running the gecko profiler
in the Firefox application"""
@@ -623,7 +630,7 @@ class Browsertime(Perftest):
(
"gecko_profile_features",
"--firefox.geckoProfilerParams.features",
- "js,stackwalk,cpu,screenshots",
+ "js,stackwalk,cpu,screenshots,memory",
),
(
"gecko_profile_threads",
@@ -916,10 +923,6 @@ class Browsertime(Perftest):
# this will be used for btime --timeouts.pageLoad
cmd = self._compose_cmd(test, timeout)
- if test.get("support_class", None):
- LOG.info("Test support class is modifying the command...")
- test.get("support_class").modify_command(cmd, test)
-
output_timeout = BROWSERTIME_PAGELOAD_OUTPUT_TIMEOUT
if test.get("type", "") == "scenario":
# Change the timeout for scenarios since they
diff --git a/testing/raptor/raptor/cmdline.py b/testing/raptor/raptor/cmdline.py
index 3a79e65341..5542fdfdd8 100644
--- a/testing/raptor/raptor/cmdline.py
+++ b/testing/raptor/raptor/cmdline.py
@@ -198,7 +198,7 @@ def create_parser(mach_interface=False):
add_arg(
"--gecko-profile-interval",
dest="gecko_profile_interval",
- type=int,
+ type=float,
help="How frequently to take samples (milliseconds)",
)
add_arg(
diff --git a/testing/raptor/raptor/filters.py b/testing/raptor/raptor/filters.py
index 87b0d827e6..08a3241621 100644
--- a/testing/raptor/raptor/filters.py
+++ b/testing/raptor/raptor/filters.py
@@ -4,7 +4,6 @@
# originally taken from /testing/talos/talos/filter.py
-import math
"""
data filters:
@@ -175,11 +174,10 @@ def geometric_mean(series):
"""
geometric_mean: http://en.wikipedia.org/wiki/Geometric_mean
"""
- total = 0
- for i in series:
- total += math.log(i + 1)
- # pylint --py3k W1619
- return math.exp(total / len(series)) - 1
+
+ from scipy.stats.mstats import gmean
+
+ return gmean(series)
# filters that return a list
diff --git a/testing/raptor/raptor/manifest.py b/testing/raptor/raptor/manifest.py
index 509f74afb4..cae7af7c26 100644
--- a/testing/raptor/raptor/manifest.py
+++ b/testing/raptor/raptor/manifest.py
@@ -275,7 +275,7 @@ def write_test_settings_json(args, test_details, oskey):
"gecko_profile_entries": int(
test_details.get("gecko_profile_entries", 1000000)
),
- "gecko_profile_interval": int(
+ "gecko_profile_interval": float(
test_details.get("gecko_profile_interval", 1)
),
"gecko_profile_threads": ",".join(set(threads)),
diff --git a/testing/raptor/raptor/perfdocs/config.yml b/testing/raptor/raptor/perfdocs/config.yml
index 723da06287..b4d61bd10a 100644
--- a/testing/raptor/raptor/perfdocs/config.yml
+++ b/testing/raptor/raptor/perfdocs/config.yml
@@ -12,7 +12,7 @@ metrics:
- First Contentful Paint
- First Contentful Composite
description: >
- Denotes the first time the browser performs a paint that has content in it.
+ Denotes the first time the browser performs a paint that has content in it (in ms).
"Youtube Playback Metrics":
aliases:
- VP9
@@ -20,10 +20,51 @@ metrics:
matcher: VP9.*|H264.*
description: >
Metrics starting with VP9/H264 give the number of frames dropped, and painted.
- "In Progress":
- aliases: []
- matcher: .*
- description: Many metrics have not been documented yet, this is a placeholder.
+ "First Visual Change":
+ aliases:
+ - FirstVisualChange
+ description: The first visual change detected in the test (in ms).
+ "Last Visual Change":
+ aliases:
+ - LastVisualChange
+ description: The last visual change detected in the test (in ms).
+ "Load Time":
+ aliases:
+ - loadtime
+ description: The time it took for the page to complete loading (in ms).
+ "Largest Contentful Paint":
+ aliases:
+ - largestContentfulPaint
+ - lcp
+ description: >
+ The time (in ms) at which the largest piece of content on the page was rendered/painted.
+ "Speed Index":
+ aliases:
+ - SpeedIndex
+ description: >
+ A metric used to denote the speed at which a page loaded. Lower values indicate faster
+ pageloads. Units are in (Visually-Complete x Milliseconds). Calculated by using videos
+ of the pageload which provide a measure of visual completeness. Visual completeness is
+ calculated by comparing the histogram of a given frame to the final frame of the pageload.
+ The SpeedIndex is calculated as the area between the curves of a constant line at y=1,
+ and the graph of the visual completeness from 0ms to when visual completeness reaches
+ 100% (or hits the y=1 line).
+ "Contentful Speed Index":
+ aliases:
+ - ContentfulSpeedIndex
+ description: >
+ Similar to SpeedIndex, except that it uses the contentfulness of a frame to determine
+ visual completeness instead of the histogram differences. The contentfulness is determined
+ by calculating the number of edges found in the frame. A lower number of edges detected
+ gives a smaller contentfulness value (and a smaller visually complete value).
+ "Perceptual Speed Index":
+ aliases:
+ - PerceptualSpeedIndex
+ description: >
+ Similar to SpeedIndex, except that it uses the structural similarity index measure (ssim)
+ to determine visual completeness. This technique compares the luminance, contrast, and
+ structure of the frames (a given frame vs. a final frame) to determine the completeness.
+
suites:
desktop:
description: "Tests for page-load performance. The links direct to the actual websites that are being tested."
diff --git a/testing/raptor/raptor/perfdocs/debugging.rst b/testing/raptor/raptor/perfdocs/debugging.rst
index 8cc799e820..87165765f8 100644
--- a/testing/raptor/raptor/perfdocs/debugging.rst
+++ b/testing/raptor/raptor/perfdocs/debugging.rst
@@ -14,9 +14,9 @@ As of now, there is no easy way to do this. Raptor was not built for debugging f
To debug a functional failure in Raptor you can follow these steps:
#. If bug 1653617 has not landed yet, apply the patch.
-#. Add the --verbose flag to the extra-options list `here <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/raptor.yml#98-101>`__.
+#. Add the --verbose flag to the extra-options list `here <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/raptor.yml#98-101>`__.
#. If the --setenv doesn't exist yet (`bug 1494669 <https://bugzilla.mozilla.org/show_bug.cgi?id=1494669>`_), then add your MOZ_LOG environment variables to give you additional logging `here <https://searchfox.org/mozilla-central/source/testing/raptor/raptor/webextension/desktop.py#42>`_.
-#. If the flag does exist, then you can add the MOZ_LOG variables to the `raptor.yml <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/raptor.yml>`_ configuration file.
+#. If the flag does exist, then you can add the MOZ_LOG variables to the `raptor.yml <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/raptor.yml>`_ configuration file.
#. Push to try if you can't reproduce the failure locally.
You can follow `bug 1655554 <https://bugzilla.mozilla.org/show_bug.cgi?id=1655554>`_ as we work on improving this workflow.
diff --git a/testing/raptor/raptor/perfdocs/index.rst b/testing/raptor/raptor/perfdocs/index.rst
index 88c1702c00..082fa05940 100644
--- a/testing/raptor/raptor/perfdocs/index.rst
+++ b/testing/raptor/raptor/perfdocs/index.rst
@@ -23,7 +23,7 @@ Locally, Raptor can be invoked with the following command:
browsertime
debugging
contributing
- metrics
+ {metrics_rst_name}
.. contents::
:depth: 2
diff --git a/testing/raptor/raptor/perfdocs/metrics.rst b/testing/raptor/raptor/perfdocs/metrics.rst
index 931456467c..106f62b750 100644
--- a/testing/raptor/raptor/perfdocs/metrics.rst
+++ b/testing/raptor/raptor/perfdocs/metrics.rst
@@ -80,3 +80,10 @@ Benchmarks
----------
Benchmarks gather their own custom metrics unlike the pageload tests above. Please ping the owners of those benchmarks to determine what they mean and how they are produced, or reach out to the Performance Test and Tooling team in #perftest on Element.
+
+Metric Definitions
+------------------
+
+The following documents all available metrics that current alert in Raptor Browsertime tests.
+
+{metrics_documentation}
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-desktop.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-desktop.toml
index a480054f7a..2001cd3f7c 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-desktop.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-desktop.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "firefox, chrome, safari, custom-car"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_browser_profiler = true
expose_chrome_trace = true
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-mobile.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-mobile.toml
index f68f418608..46470c4535 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-mobile.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-1-3-mobile.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "fenix, geckoview, chrome-m, cstm-car-m"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_browser_profiler = true
lower_is_better = false
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml
index 78ffae7811..c82c197355 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-desktop.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "firefox, chrome, safari"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_browser_profiler = true
lower_is_better = false
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml
index 4c178dc47f..6899d0ff42 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-animometer-mobile.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "fenix, chrome-m, geckoview"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_browser_profiler = true
lower_is_better = false
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml
index f62f1d993a..b52e97339d 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-desktop.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "firefox, chrome, safari"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_gecko_profiler = true
expose_chrome_trace = true
diff --git a/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml b/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml
index a617735305..d02dc5b0f5 100644
--- a/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml
+++ b/testing/raptor/raptor/tests/benchmarks/motionmark-htmlsuite-mobile.toml
@@ -2,7 +2,7 @@
alert_threshold = 2.0
apps = "fenix, chrome-m, geckoview"
gecko_profile_interval = 1
-gecko_profile_features = "stackwalk,js,cpu,java,processcpu"
+gecko_profile_features = "stackwalk,js,cpu,java,processcpu,memory"
gecko_profile_threads = "GeckoMain,Compositor,Renderer,SwComposite,RenderBackend,SceneBuilder,WrWorker,CanvasWorkers,TextureUpdate"
expose_gecko_profiler = true
expose_chrome_trace = true
diff --git a/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml b/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml
index 4e510b3d12..83262e5f24 100644
--- a/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml
+++ b/testing/raptor/raptor/tests/custom/browsertime-indexeddb.toml
@@ -4,7 +4,7 @@ alert_threshold = 2.0
browser_cycles = 1
custom_data = true
gecko_profile_entries = 131072000 # 1GB
-gecko_profile_features = "js,stackwalk,cpu"
+gecko_profile_features = "js,stackwalk,cpu,memory"
gecko_profile_threads = "GeckoMain,DOM Worker,IndexedDB"
lower_is_better = true
measure = "cpuTime"
diff --git a/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml b/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml
index 9091ec05ce..9bddb0c0b9 100644
--- a/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml
+++ b/testing/raptor/raptor/tests/tp6/desktop/browsertime-tp6.toml
@@ -48,6 +48,7 @@ test_url = "http://www.espn.com/nba/story/_/page/allstarweekend25788027/the-comp
secondary_url = "https://www.espn.com/nba/draft/news"
["expedia"]
+playback_pageset_manifest = "mitm8-darwin-firefox-expedia.manifest"
secondary_url = "https://groups.expedia.com/Group-Rate/?locale=en_US&ol=1"
test_url = "https://expedia.com/Hotel-Search?destination=New+York%2C+New+York&latLong=40.756680%2C-73.986470&regionId=178293&startDate=&endDate=&rooms=1&_xpid=11905%7C1&adults=2"
@@ -108,6 +109,7 @@ secondary_url = "https://www.linkedin.com/in/thommy-harris-hk-385723106/"
test_url = "https://www.linkedin.com/feed/"
["microsoft"]
+playback_pageset_manifest = "mitm8-linux-firefox-microsoft.manifest"
secondary_url = "https://support.microsoft.com/en-us"
test_url = "https://www.microsoft.com/en-us/"
diff --git a/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-expedia.manifest b/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-expedia.manifest
deleted file mode 100644
index e1ef76a43d..0000000000
--- a/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-expedia.manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-[
- {
- "filename": "mitm6-linux-firefox-expedia.zip",
- "size": 9447080,
- "algorithm": "sha512",
- "digest": "c9665a107e90b9b57de7784230f71184356cde2beaf022f96c4629ebc43712d2214fb83131424faec25b95eee5c7b88ca26b28817230040bf98156e96776720f",
- "visibility": "public"
- }
-]
diff --git a/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-microsoft.manifest b/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-microsoft.manifest
deleted file mode 100644
index a54b860243..0000000000
--- a/testing/raptor/raptor/tooltool-manifests/playback/mitm6-linux-firefox-microsoft.manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-[
- {
- "size": 4595339,
- "visibility": "public",
- "digest": "0cfd03b0cd8b4a33656da1a6e7651fd2ea584ae4182f46646f61d7e018f4b04223ed65574d884598328dd1d34c629294836375c16798e4cf3c78533accdf2a53",
- "algorithm": "sha512",
- "filename": "mitm6-linux-firefox-microsoft.zip"
- }
-]
diff --git a/testing/raptor/raptor/tooltool-manifests/playback/mitm7-linux-firefox-microsoft.manifest b/testing/raptor/raptor/tooltool-manifests/playback/mitm7-linux-firefox-microsoft.manifest
deleted file mode 100644
index 092958e287..0000000000
--- a/testing/raptor/raptor/tooltool-manifests/playback/mitm7-linux-firefox-microsoft.manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-[
- {
- "size": 5078634,
- "visibility": "public",
- "digest": "315399f0773837ef13b9ba768a8a72a001ba103e8c09992ebef0421b6639beb5d48bb71bf47c29bfe8484bed19bfc4f9b97b9513f6593c9afb01f078a3a9b7f4",
- "algorithm": "sha512",
- "filename": "mitm7-linux-firefox-microsoft.zip"
- }
-]
diff --git a/testing/raptor/raptor/tooltool-manifests/playback/mitm8-darwin-firefox-expedia.manifest b/testing/raptor/raptor/tooltool-manifests/playback/mitm8-darwin-firefox-expedia.manifest
new file mode 100644
index 0000000000..03281ba612
--- /dev/null
+++ b/testing/raptor/raptor/tooltool-manifests/playback/mitm8-darwin-firefox-expedia.manifest
@@ -0,0 +1,9 @@
+[
+ {
+ "filename": "mitm8-darwin-firefox-expedia.zip",
+ "size": 15755960,
+ "algorithm": "sha512",
+ "digest": "239dc9438455417ca49a38278632efd72283f845dd421f8739449c5eb270418627507068bdd0c9363e3529cc93053999cda9cf2d5cfd509d5c937c561c9cdb84",
+ "visibility": "public"
+ }
+] \ No newline at end of file
diff --git a/testing/raptor/raptor/tooltool-manifests/playback/mitm8-linux-firefox-microsoft.manifest b/testing/raptor/raptor/tooltool-manifests/playback/mitm8-linux-firefox-microsoft.manifest
new file mode 100644
index 0000000000..0b627539fa
--- /dev/null
+++ b/testing/raptor/raptor/tooltool-manifests/playback/mitm8-linux-firefox-microsoft.manifest
@@ -0,0 +1,9 @@
+[
+ {
+ "filename": "mitm8-linux-firefox-microsoft.zip",
+ "size": 6177656,
+ "algorithm": "sha512",
+ "digest": "8b8cc69e0e51bcae9801f266b8c3e0eee18f569b243459767c476a4166875c328dec05d013c6a843bc34dd8a91c72ab3facdcdf41ba2c9cfb7f87886a3dd90a8",
+ "visibility": "public"
+ }
+] \ No newline at end of file
diff --git a/testing/raptor/requirements.txt b/testing/raptor/requirements.txt
index 2532033cd4..c03db2f6ea 100644
--- a/testing/raptor/requirements.txt
+++ b/testing/raptor/requirements.txt
@@ -1,6 +1,6 @@
mozcrash ~= 2.0
-mozrunner ~= 7.0
-mozprofile ~= 2.1
+mozrunner ~= 8.3
+mozprofile ~= 3.0
manifestparser >= 1.1
../tools/wptserve
../tools/wpt_third_party/h2
diff --git a/testing/raptor/source_requirements.txt b/testing/raptor/source_requirements.txt
index 9d13e74926..502f3fb2cc 100644
--- a/testing/raptor/source_requirements.txt
+++ b/testing/raptor/source_requirements.txt
@@ -1,8 +1,8 @@
# These dependencies are required for running raptor tests from a source checkout
mozcrash ~= 2.0
-mozrunner ~= 7.0
-mozprofile ~= 2.1
+mozrunner ~= 8.3
+mozprofile ~= 3.0
manifestparser >= 1.1
../web-platform/tests/tools/wptserve
../web-platform/tests/tools/third_party/h2
diff --git a/testing/skipfails.py b/testing/skipfails.py
index 0d9f636632..3f308ed1e3 100644
--- a/testing/skipfails.py
+++ b/testing/skipfails.py
@@ -843,7 +843,7 @@ class Skipfails(object):
"""Get mozinfo for each test variants"""
if len(self.variants) == 0:
- variants_file = "taskcluster/ci/test/variants.yml"
+ variants_file = "taskcluster/kinds/test/variants.yml"
variants_path = self.full_path(variants_file)
fp = io.open(variants_path, "r", encoding="utf-8")
raw_variants = load(fp, Loader=Loader)
diff --git a/testing/specialpowers/content/SpecialPowersChild.sys.mjs b/testing/specialpowers/content/SpecialPowersChild.sys.mjs
index 61070fe4ce..ef81af911c 100644
--- a/testing/specialpowers/content/SpecialPowersChild.sys.mjs
+++ b/testing/specialpowers/content/SpecialPowersChild.sys.mjs
@@ -1137,15 +1137,6 @@ export class SpecialPowersChild extends JSWindowActorChild {
Ci.nsIFormFillController
);
}
- attachFormFillControllerTo(window) {
- this.getFormFillController().attachPopupElementToDocument(
- window.document,
- this._getAutoCompletePopup(window)
- );
- }
- detachFormFillControllerFrom(window) {
- this.getFormFillController().detachFromDocument(window.document);
- }
isBackButtonEnabled(window) {
return !this._getTopChromeWindow(window)
.document.getElementById("Browser:Back")
diff --git a/testing/specialpowers/content/SpecialPowersParent.sys.mjs b/testing/specialpowers/content/SpecialPowersParent.sys.mjs
index e0ce35bb67..a21527755f 100644
--- a/testing/specialpowers/content/SpecialPowersParent.sys.mjs
+++ b/testing/specialpowers/content/SpecialPowersParent.sys.mjs
@@ -1341,9 +1341,7 @@ export class SpecialPowersParent extends JSWindowActorParent {
let id = aMessage.data.id;
let extension = this._extensions.get(id);
this._extensions.delete(id);
- return extension.shutdown().then(() => {
- return extension._uninstallPromise;
- });
+ return lazy.ExtensionTestCommon.unloadTestExtension(extension);
}
case "SPExtensionTerminateBackground": {
diff --git a/testing/talos/perfdocs/index.rst b/testing/talos/perfdocs/index.rst
index e5e4ebe2a5..e1a2f150f0 100644
--- a/testing/talos/perfdocs/index.rst
+++ b/testing/talos/perfdocs/index.rst
@@ -125,7 +125,7 @@ At a glance
- Tests are defined in
`testing/talos/talos/test.py <https://searchfox.org/mozilla-central/source/testing/talos/talos/test.py>`__
- Treeherder abbreviations are defined in
- `taskcluster/ci/test/talos.yml <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/talos.yml>`__
+ `taskcluster/kinds/test/talos.yml <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
- Suites are defined for production in
`testing/talos/talos.json <https://searchfox.org/mozilla-central/source/testing/talos/talos.json>`__
@@ -133,7 +133,7 @@ Test lifecycle
**************
- Taskcluster schedules `talos
- jobs <https://searchfox.org/mozilla-central/source/taskcluster/ci/test/talos.yml>`__
+ jobs <https://searchfox.org/mozilla-central/source/taskcluster/kinds/test/talos.yml>`__
- Taskcluster runs a Talos job on a hardware machine when one is
available - this is bootstrapped by
`mozharness <https://searchfox.org/mozilla-central/source/testing/mozharness/mozharness/mozilla/testing/talos.py>`__
diff --git a/testing/talos/talos/config.py b/testing/talos/talos/config.py
index 31162d692c..0287c8d971 100644
--- a/testing/talos/talos/config.py
+++ b/testing/talos/talos/config.py
@@ -264,11 +264,11 @@ def setup_pdfpaint_test(config, test_instance):
symlink_dest.symlink_to(pdfs_root, target_is_directory=True)
test_instance.tpmanifest = str(pdfpaint_manifest_path)
- # Increase the pagecycles for each pdf to 5 if we're running chunks, otherwise
+ # Increase the pagecycles for each pdf to 15 if we're running chunks, otherwise
# it can take a very long time to complete testing of all pdfs
if chunk_number is not None or pdfpaint_test is not None:
- print("Setting pdfpaint tppagecycles to 5")
- test_instance.tppagecycles = 5
+ print("Setting pdfpaint tppagecycles to 15")
+ test_instance.tppagecycles = 15
def get_test_host(manifest_line):
diff --git a/testing/talos/talos/gecko_profile.py b/testing/talos/talos/gecko_profile.py
index f7bbbaf597..0707aff6ca 100644
--- a/testing/talos/talos/gecko_profile.py
+++ b/testing/talos/talos/gecko_profile.py
@@ -42,7 +42,7 @@ class GeckoProfile(object):
"gecko_profile_entries", int(128 * 1024 * 1024 / 8)
)
gecko_profile_features = test_config.get(
- "gecko_profile_features", "js,stackwalk,cpu,screenshots"
+ "gecko_profile_features", "js,stackwalk,cpu,screenshots,memory"
)
gecko_profile_threads = test_config.get(
"gecko_profile_threads", "GeckoMain,Compositor,Renderer"
diff --git a/testing/talos/talos/test.py b/testing/talos/talos/test.py
index f64d5004ef..18b01aeb2a 100644
--- a/testing/talos/talos/test.py
+++ b/testing/talos/talos/test.py
@@ -424,6 +424,7 @@ class pdfpaint(PageloaderTest):
tptimeout = 60000
pdfpaint = True
unit = "ms"
+ subtest_alerts = True
@register_test()
diff --git a/testing/talos/talos/unittests/test_config.py b/testing/talos/talos/unittests/test_config.py
index d5e1b5eebc..90f92e2d17 100644
--- a/testing/talos/talos/unittests/test_config.py
+++ b/testing/talos/talos/unittests/test_config.py
@@ -1332,7 +1332,7 @@ def test_pdfpaint_has_expected_attributes_with_chunk(pdfpaint_dir_info):
assert len([line for line in manifest_lines if line]) == 100
assert test_config["tpcycles"] == 1
- assert test_config["tppagecycles"] == 5
+ assert test_config["tppagecycles"] == 15
assert test_config["tptimeout"] == 60000
assert test_config["gecko_profile_entries"] == 16777216
assert test_config["filters"] is not None
@@ -1378,7 +1378,7 @@ def test_pdfpaint_with_pdf_name(pdfpaint_dir_info):
assert manifest_lines[0].split("/")[-1] == "1"
assert test_config["tpcycles"] == 1
- assert test_config["tppagecycles"] == 5
+ assert test_config["tppagecycles"] == 15
@mock.patch("talos.config.get_browser_config")
diff --git a/testing/tps/docs/index.md b/testing/tps/docs/index.md
new file mode 100644
index 0000000000..6d88833e37
--- /dev/null
+++ b/testing/tps/docs/index.md
@@ -0,0 +1,349 @@
+# TPS
+## Table of Contents
+- [What is TPS](#what-is-tps)
+- [Why TPS Exists](#why-tps-exists)
+- [Architecture](#architecture)
+- [Test Format](#test-format)
+- [Writing new TPS tests](#writing-new-tps-tests)
+- [How to run TPS](#how-to-run-tps)
+
+The majority of this document is targeting the Firefox developer that would like to understand TPS and/or write TPS tests. If you'd like to simply run TPS, see the [How to run TPS](#how-to-run-tps) section.
+
+## What is TPS
+TPS is a test automation framework for Firefox Sync. TPS takes in test configuration as JavaScript files defined in [a configuration file](#test-format) and runs all tests in sequence.
+
+Each TPS test is made of one or more [phases](#phases) that each have their own assertions and run in sequence. If **any** phase fails, then the test fails and the remaining phases are not run. However, other tests will still run.
+
+## Why TPS exists
+TPS runs against the real Mozilla Accounts server and Sync servers and thus is a good way to test Firefox Sync end-to-end without mocking the servers.
+
+## Architecture
+### High level Diagram
+The following diagram describes the flow when running TPS.
+
+```{mermaid}
+flowchart TD
+TPS[TPS Runner]-->T[Run Test Suite]
+T-->T1[Run Next Single Test]
+T1-->S[Setup]
+S-->P[Run Next Phase]
+P-->LP[Launch Test Profile]
+LP-->Q{Phase Success?}
+Q-->|No| CL[Clean up]
+Q-->|Yes| Q2{Any more phases?}
+Q2-->|Yes|P
+Q2-->|No| CL
+CL-->CR[Collect Results]
+CR-->Q3{Any more tests?}
+Q3-->|Yes|T1
+Q3-->|No| D[Done]
+```
+
+### Single Test Sequence Diagram
+The following sequence diagram describes the involved entities executing a single TPS test
+```{mermaid}
+sequenceDiagram
+actor U as User
+participant TPS as TPS Runner
+participant F as Firefox Profile
+participant TE as TPS Extension
+U->>TPS: Start test
+TPS->>TPS: Parse Test file
+loop Every Phase
+TPS->>F: Launch Phase w/prefs to install TPS extension
+F->>TE: Install Extension
+TE->>F: Read prefs to get test file
+F->>TE: Test file and TPS Runner configuration
+loop Every instruction
+TE->>F: Execute test instructions and assertions
+F->>TE: Result
+end
+TE->>F: Phase Done
+F->>TPS: Done
+TPS->>F: Read logs to get test results
+end
+TPS->>U: Print test results
+```
+
+
+### Phases
+Each Phase is mapped to a Firefox profile, phases may re-use profiles if they are mapped to them, see [the phases object](#the-phases-object) for details on the mapping. All phases are signed in to the same Mozilla Account.
+#### Example
+For example, a simple test that defines two phases, one that uploads bookmarks and another that downloads them can be described as follows, see the section on [Test Format](#test-format) for details on the format of the tests.
+```js
+EnableEngines(["bookmarks"]); // Enables the bookmark engine across all profiles(phases) that this test runs
+
+/*
+ * The list of phases mapped to their corresponding profiles. The object
+ * here must be in JSON format as it will get parsed by the Python
+ * testrunner. It is parsed by the YAML package, so it relatively flexible.
+ */
+var phases = {
+ phase1: "profile1",
+ phase2: "profile2",
+};
+
+// the initial list of bookmarks to add to the browser
+var bookmarksInitial = {
+ menu: [
+ { folder: "foldera" },
+ { folder: "folderb" },
+ ],
+
+ "menu/foldera": [{ uri: "http://www.cnn.com", title: "CNN" }], // One bookmark in menu/foldera pointing to CNN
+ "menu/folderb": [{ uri: "http://www.apple.com", title: "Apple"}], // One bookmark in menu/folderb pointing to apple
+};
+
+// Add bookmarks to profile1 and sync.
+Phase("phase1", [
+ [Bookmarks.add, bookmarksInitial],
+ [Bookmarks.verify, bookmarksInitial],
+ [Sync],
+ [Bookmarks.verify, bookmarksInitial],
+]);
+
+
+// Sync, then verify that bookmarks added by phase 1 are present.
+Phase("phase2", [
+ [Sync],
+ [Bookmarks.verify, bookmarksInitial],
+]);
+```
+
+### The TPS Extension
+When the Firefox profile representing the phase loads, it first installs an [extension](https://searchfox.org/mozilla-central/source/services/sync/tps/extensions/tps). The extension is what executes the tests by instructing Firefox and reading from Firefox to assert that Sync is working properly.
+
+The test files execute in the extension, and the [extension defines all the functions that the test files may use](https://searchfox.org/mozilla-central/source/services/sync/tps/extensions/tps/resource/tps.sys.mjs). For instance, in the above [example](#example) the `Phase` function is defined [here](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tps/extensions/tps/resource/tps.sys.mjs#1234)
+
+## Test Format
+### Test group configuration
+The tests are referenced by a `json` file that references all the tests TPS will run. By default TPS will run the configuration in [`services/sync/tests/tps/all_tests.json`](https://searchfox.org/mozilla-central/source/services/sync/tests/tps/all_tests.json).
+The test group configuration is a `json` object with one key named `tests` that is itself a `json` object. The `tests` object has a key for every test to run, and the key should be the name of the [test file](#test-files). The value for each test file is the empty object `{}` if the test should run, or
+`{"disabled": "Bug <BUG NUMBER>"}` where `<BUG NUMBER>` is a Bugzilla bug number referencing why the test was disabled.
+
+
+### Test Files
+#### The phases object
+Test Files are JavaScript files that will be run by the TPS extension once the Firefox profile is loaded. However, before that is done the TPS framework will load the first object defined in test file as `yaml`. In other words, for the following example:
+```js
+var phases = {
+ phase1: "profile1",
+ phase2: "profile2",
+ phase3: "profile1", // phase 1 and 3 reuse the same profile, "profile1"
+}
+
+// ... rest of the test file
+```
+The inside of the curly brackets will be parsed as yaml to identify the profiles that TPS will run and map each phase to a profile. In the example above, `phase1` and `phase3` reuse the same profile, but `phase2` uses it's own profile. The rest of the file is regular JavaScript that will be loaded in the [TPS Extension](#the-tps-extension).
+#### Test File Capabilities
+The TPS Extension exports a set of functions and objects that test files may use. See the [`tps.sys.mjs`](https://searchfox.org/mozilla-central/source/services/sync/tps/extensions/tps/resource/tps.sys.mjs) for up-to-date details, the following is the list of export capabilities as of April 10th, 2024:
+##### Enabling Sync Engines
+To enable sync engines, which you should do before executing a test that depends on an engine, use the `EnableEngines` function. The function takes an array of strings representing the engine names. Eg:
+```js
+EnableEngines(["bookmarks", "history"]);
+```
+##### Start a phase
+Phases are run on their assigned profiles profiles in the order they are declared in [the phases object](#the-phases-object). To define what a phase does use the `Phase` function that takes in a phase name as the first argument - **this should be the same name defined in the [phases object](#the-phases-object)** - and a 2D array of actions as a second argument. Each action array in the 2D is run in sequence. The inner array defines what the action is, and any arguments to that action. For example:
+```js
+Phase("phase1", [[Sync], [Bookmarks.add, bookmarkInitial]]);
+```
+
+Note that the example assumes that the phases object and `bookmarkInitial` are defined in test file.
+
+In the above example:
+- `"phase1"` is the name of the phase, which should match exactly the phase name as defined in [the phases object](#the-phases-object).
+- The 2D array passed as the second argument has:
+ - `[Sync]` as its first array which means that the phase will first Sync
+ - `[Bookmarks.add, bookmarkInitial]` as its second member which means that after the Sync, a Bookmarks.add operation will run, and it will add the `bookmarkInitial`.
+
+##### Actions
+Actions are run inside phases as arguments to the [`Phase`](#start-a-phase) function.
+###### General Actions
+There are few general actions that aren't tied to a data type:
+- `Sync`: Will trigger a sync
+- `Login`: Logs in to Mozilla Account. **You shouldn't need to do this in most cases as it is done automatically**
+- `WipeServer`: Will wipe all data from the server
+- `EnsureTracking`: Will wait until sync tracking has started. **You shouldn't need to do this in most cases**
+
+###### Data Type specific Actions
+
+Some actions are supported for individual data types. Those actions are triggered by using `<DataType>.<Action>`. The following is a list of all possible `<DataType>` values:
+For more details on which actions are supported for which data type, see the following sections.
+- `Bookmarks`
+- `Tabs`
+- `Formdata`
+- `History`
+- `Passwords`
+- `Addons`
+- `Addresses`
+- `CreditCards`
+- `ExtStorage`
+- `Prefs`
+- `Windows`
+
+**Bookmarks Actions**
+
+
+Example in [test_existing_bookmarks.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_existing_bookmarks.js)
+- `add`: To add a bookmark tree
+- `modify`: To modify the existing bookmark tree
+- `delete`: To remove a bookmark node from the tree
+- `verify`: To verify the bookmark tree matches exactly the tree given, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the bookmark tree matches the given tree
+- `skipValidation`: To tell Firefox to stop validating bookmark trees.
+
+
+**Addresses Actions**
+
+
+Example in [test_addresses.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_addresses.js)
+- `add`: Adds an array of addresses
+- `modify`: Modifies the list of addresses to what was given
+- `delete`: Deletes the given addresses
+- `verify`: Verifies that the addresses match exactly the given list, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the list of addresses matches the given list.
+
+**CreditCard Actions**
+
+
+Example in [test_creditcards.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_creditcards.js)
+- `add`: Adds an array of credit cards
+- `modify`: Modifies the list of credit cards to what was given
+- `delete`: Deletes the given credit cards
+- `verify`: Verifies that the credit cards match exactly the given list, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the list of credit cards matches the given list.
+
+**Addons Actions**
+
+
+Example in [test_addon_reconciling.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_addon_reconciling.js)
+- `installs`: installs a list of addons
+- `setEnabled`: Enables or disables a list of addons
+- `uninstall`: Uninstalls a list of addons
+- `verify`: Verifies that the addons match exactly the given list, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the list of addons matches the given list.
+- `skipValidation`: Tells Firefox to stop validating Addons.
+
+**Formdata Actions**
+
+
+Example in [test_formdata.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_formdata.js)
+- `add`: Adds an array of form data
+- `delete`: Deletes the given form data
+- `verify`: Verifies that form data match exactly the given list, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the form data matches the given list.
+
+**History Actions**
+
+
+Example in [test_history.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_history.js)
+- `add`: Adds an array of history items
+- `delete`: Deletes the given history items
+- `verify`: Verifies that form data match exactly the given list, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the form data matches the given list.
+
+**Passwords Actions**
+
+
+Example in [test_passwords.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_passwords.js)
+- `add`: To add a list of logins
+- `modify`: To modify the existing list of logins based on changes in the given list
+- `delete`: To remove a list of logins
+- `verify`: To verify the list of logins matches exactly the list given, otherwise fails the phase
+- `verifyNot`: The inverse of verify, fails the phase if the logins matches the given list
+- `skipValidation`: To tell Firefox to stop validating logins
+
+**Prefs Actions**
+
+
+Example in [test_prefs.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_prefs.js)
+- `modify`: To modify the existing prefs based on changes in the given list
+- `verify`: To verify the values of the given prefs match the values given, otherwise fails the phase
+
+**Tabs Actions**
+
+
+Example in [test_tabs.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_tabs.js)
+- `add`: To add a new list of remote tabs, each annotated with which profile it belongs to
+- `verify`: To verify the values of remote tabs matches the given list, otherwise fails the phase
+
+**Windows Actions**
+
+
+Example in [test_privbrw_tabs.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_privbrw_tabs.js#79-84)
+- `add`: Adds a new window with the given configuration
+
+**ExtStorage Actions**
+
+
+Example in [test_extstorage.js](https://searchfox.org/mozilla-central/rev/1f27a4022f9f1269d897526c1c892a57743e650c/services/sync/tests/tps/test_extstorage.js)
+
+- `set`: Sets the value of given key to the given value
+- `verify`: Verifies that the value of the given key is the given value, fails the phase otherwise.
+
+## Writing new TPS tests
+To write new TPS tests follow the following instructions:
+1. Create a new `.js` file in `services/sync/tests/tps` named `test_<my_test_name>.js`
+2. Link to the file in the `services/sync/tests/tps/all_tests.json`
+3. Follow the format described in [Test Files](#test-files)
+4. Make sure to test the file by [running TPS](#how-to-run-tps)
+
+## How to run TPS
+### Installation
+TPS requires several packages to operate properly. To install TPS and
+required packages, use the create_venv.py script provided in the `testing/tps` directory:
+```sh
+python3 create_venv.py /path/to/create/virtualenv
+```
+
+This script will create a virtalenv and install TPS into it.
+
+You must then activate the virtualenv by executing:
+
+- (mac/linux):
+```sh
+source /path/to/virtualenv/Scripts/activate
+```
+- (win):
+```sh
+/path/to/virtualenv/Scripts/activate.bat
+```
+
+TPS can then be run by executing:
+```sh
+runtps --binary=/path/to/firefox
+```
+
+> Note: You can run the tps tests in headless mode by using `MOZ_HEADLESS=1`. This will make
+> your computer somewhat useable while the tests are running.
+
+When you are done with TPS, you can deactivate the virtualenv by executing
+`deactivate`
+
+### Configuration
+To edit the TPS configuration, do not edit config/config.json.in in the tree.
+Instead, edit config.json inside your virtualenv; it will be located at the
+top level of where you specified the virtualenv be created - eg, for the
+example above, it will be `/path/to/create/virtualenv/config.json`
+
+#### Setting Up Test Accounts
+
+##### Mozilla Accounts
+To create a test account for using the Mozilla Account authentication perform the
+following steps:
+
+> Note: Currently, the TPS tests rely on how restmail returns the verification code
+> You should use restmail or something very similar.
+> Gmail and other providers might give a `The request was blocked for security reasons`
+
+1. Go to the URL: http://restmail.net/mail/%account_prefix%@restmail.net
+ - Replace `%account_prefix%` with your own test name
+2. Go to https://accounts.firefox.com/signup?service=sync&context=fx_desktop_v1
+3. Sign in with the previous chosen email address and a password
+4. Go back to the Restmail URL, reload the page
+5. Search for the verification link and open that page
+
+Now you will be able to use this account for TPS. Note that these
+steps can be done in either a test profile or in a private browsing window - you
+might want to avoid doing that in a "real" profile that's already connected to
+Sync.
diff --git a/testing/tps/moz.build b/testing/tps/moz.build
index 06a74e1bfc..15d0ce2462 100644
--- a/testing/tps/moz.build
+++ b/testing/tps/moz.build
@@ -4,5 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+SPHINX_TREES["/testing/tps"] = "docs"
+
with Files("**"):
BUG_COMPONENT = ("Testing", "General")
diff --git a/testing/tps/setup.py b/testing/tps/setup.py
index 0bcf4387f0..4a720c1ce3 100644
--- a/testing/tps/setup.py
+++ b/testing/tps/setup.py
@@ -5,7 +5,7 @@
from setuptools import find_packages, setup
-version = "0.6"
+version = "0.6.1"
deps = [
"httplib2 == 0.9.2",
@@ -14,8 +14,8 @@ deps = [
"mozinfo >= 1.2",
"mozinstall == 2.0.1",
"mozprocess == 1.3",
- "mozprofile ~= 2.1",
- "mozrunner ~= 8.2",
+ "mozprofile ~= 3.0",
+ "mozrunner ~= 8.3",
"mozversion == 2.3",
"PyYAML >= 4.0",
]
diff --git a/testing/web-platform/docs/index.rst b/testing/web-platform/docs/index.rst
index 7f2d263113..a36c702b6f 100644
--- a/testing/web-platform/docs/index.rst
+++ b/testing/web-platform/docs/index.rst
@@ -372,4 +372,29 @@ bot <https://github.com/mozilla/wpt-sync>`_. This performs the following tasks:
The nature of a two-way sync means that occasional merge conflicts and
other problems. If something isn't in sync with upstream in the way
you expect, please ask on `#interop
-<https://chat.mozilla.org/#/room/#interop:mozilla.org>`_ on matrix.
+<https://chat.mozilla.org/#/room/#interop:mozilla.org>`_ on matritx.
+
+wpt-serve
+---------
+
+Sometimes, it's preferable to run the WPT's web server on its own, and point different browsers to the test files.
+
+ ./mach wpt-serve
+
+can be used for this, after a short setup:
+
+On Unix, one can run:
+
+ ./wpt make-hosts-file | sudo tee -a /etc/hosts
+
+from the root of the WPT checkout, present at ``testing/web-platform/tests/``.
+
+On Windows, from an administrator ``mozilla-build`` shell, one can run:
+
+ ./wpt make-hosts-file >> /c/Windows/System32/drivers/etc/host
+
+from the WPT checkout.
+
+Most of the time, browsing to http://localhost:8000 will allow
+running the test, although some tests have special requirements, such as running
+on a specific domain or running using https.
diff --git a/testing/web-platform/meta/FileAPI/blob/Blob-constructor.any.js.ini b/testing/web-platform/meta/FileAPI/blob/Blob-constructor.any.js.ini
index 7e76300136..1cd2cc3915 100644
--- a/testing/web-platform/meta/FileAPI/blob/Blob-constructor.any.js.ini
+++ b/testing/web-platform/meta/FileAPI/blob/Blob-constructor.any.js.ini
@@ -1,7 +1,12 @@
[Blob-constructor.any.worker.html]
expected:
if (os == "android") and fission: [TIMEOUT, OK]
+ [Passing typed arrays as elements of the blobParts array should work.]
+ expected: FAIL
+
[Blob-constructor.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [Passing typed arrays as elements of the blobParts array should work.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/get-databases.any.js.ini b/testing/web-platform/meta/IndexedDB/get-databases.any.js.ini
index 0155d49d7a..13eb65345d 100644
--- a/testing/web-platform/meta/IndexedDB/get-databases.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/get-databases.any.js.ini
@@ -3,10 +3,15 @@
if (processor == "x86") and not debug: [OK, TIMEOUT]
[Ensure that databases() doesn't pick up changes that haven't commited.]
expected:
- if (os == "linux") and not debug and not asan and (processor == "x86_64") and not tsan: [PASS, FAIL]
- if (os == "linux") and debug and not fission: [PASS, FAIL]
+ if (os == "linux") and not asan and not tsan and debug and fission: [PASS, FAIL]
+ if (os == "linux") and not asan and not tsan and debug and not fission: [PASS, FAIL]
+ if (os == "linux") and not asan and not tsan and not debug: [PASS, FAIL]
+ if (os == "linux") and asan and not fission: [PASS, FAIL]
[get-databases.any.worker.html]
expected:
if (processor == "x86") and not debug: [OK, TIMEOUT]
+ [Ensure that databases() doesn't pick up changes that haven't commited.]
+ expected:
+ if asan and not fission: [PASS, FAIL]
diff --git a/testing/web-platform/meta/IndexedDB/idb-binary-key-detached.htm.ini b/testing/web-platform/meta/IndexedDB/idb-binary-key-detached.htm.ini
index ed52901767..e69de29bb2 100644
--- a/testing/web-platform/meta/IndexedDB/idb-binary-key-detached.htm.ini
+++ b/testing/web-platform/meta/IndexedDB/idb-binary-key-detached.htm.ini
@@ -1,6 +0,0 @@
-[idb-binary-key-detached.htm]
- [Detached ArrayBuffer]
- expected: FAIL
-
- [Detached TypedArray]
- expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/idb-binary-key-roundtrip.htm.ini b/testing/web-platform/meta/IndexedDB/idb-binary-key-roundtrip.htm.ini
index cfe6a06eaf..6444ed22a0 100644
--- a/testing/web-platform/meta/IndexedDB/idb-binary-key-roundtrip.htm.ini
+++ b/testing/web-platform/meta/IndexedDB/idb-binary-key-roundtrip.htm.ini
@@ -1,3 +1,5 @@
[idb-binary-key-roundtrip.htm]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [Binary keys can be supplied using the view type Float16Array]
+ expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/idbfactory-databases-opaque-origin.html.ini b/testing/web-platform/meta/IndexedDB/idbfactory-databases-opaque-origin.html.ini
index 68cd9e2a31..088622dd26 100644
--- a/testing/web-platform/meta/IndexedDB/idbfactory-databases-opaque-origin.html.ini
+++ b/testing/web-platform/meta/IndexedDB/idbfactory-databases-opaque-origin.html.ini
@@ -1,14 +1,3 @@
[idbfactory-databases-opaque-origin.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [IDBFactory.databases() in sandboxed iframe should reject]
- expected: FAIL
-
- [IDBFactory.databases() in non-sandboxed iframe should not reject]
- expected: PASS
-
- [IDBFactory.databases() in data URL dedicated worker should throw SecurityError]
- expected: FAIL
-
- [IDBFactory.databases() in data URL shared worker should throw SecurityError]
- expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/idbfactory-deleteDatabase-opaque-origin.html.ini b/testing/web-platform/meta/IndexedDB/idbfactory-deleteDatabase-opaque-origin.html.ini
index 6d8333e79c..ac531edb5f 100644
--- a/testing/web-platform/meta/IndexedDB/idbfactory-deleteDatabase-opaque-origin.html.ini
+++ b/testing/web-platform/meta/IndexedDB/idbfactory-deleteDatabase-opaque-origin.html.ini
@@ -1,8 +1,3 @@
[idbfactory-deleteDatabase-opaque-origin.html]
expected:
if (os == "android") and fission: [TIMEOUT, OK]
- [IDBFactory.deleteDatabase() in data URL dedicated worker should throw SecurityError]
- expected: FAIL
-
- [IDBFactory.deleteDatabase() in data URL shared worker should throw SecurityError]
- expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/idbfactory-open-opaque-origin.html.ini b/testing/web-platform/meta/IndexedDB/idbfactory-open-opaque-origin.html.ini
index 0dee041d5f..8844be3899 100644
--- a/testing/web-platform/meta/IndexedDB/idbfactory-open-opaque-origin.html.ini
+++ b/testing/web-platform/meta/IndexedDB/idbfactory-open-opaque-origin.html.ini
@@ -1,8 +1,3 @@
[idbfactory-open-opaque-origin.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [IDBFactory.open() in data URL dedicated workers should throw SecurityError]
- expected: FAIL
-
- [IDBFactory.open() in data URL shared workers should throw SecurityError]
- expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/idbfactory_open9.htm.ini b/testing/web-platform/meta/IndexedDB/idbfactory_open9.htm.ini
index 83426c3ef4..288e5382a6 100644
--- a/testing/web-platform/meta/IndexedDB/idbfactory_open9.htm.ini
+++ b/testing/web-platform/meta/IndexedDB/idbfactory_open9.htm.ini
@@ -2,18 +2,6 @@
expected:
if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
- [Calling open() with version argument null should throw TypeError.]
- expected: FAIL
-
- [Calling open() with version argument object should throw TypeError.]
- expected: FAIL
-
- [Calling open() with version argument object (second) should throw TypeError.]
- expected: FAIL
-
- [Calling open() with version argument object (third) should throw TypeError.]
- expected: FAIL
-
[Calling open() with version argument undefined should not throw.]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/IndexedDB/idbindex_getAll.any.js.ini b/testing/web-platform/meta/IndexedDB/idbindex_getAll.any.js.ini
index f32a368c90..eccf33681e 100644
--- a/testing/web-platform/meta/IndexedDB/idbindex_getAll.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/idbindex_getAll.any.js.ini
@@ -1,15 +1,80 @@
[idbindex_getAll.any.html]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+ [Get upper excluded]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Get all keys]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Retrieve multiEntry key]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Empty object store]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Non existent key]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Get bound range with maxCount]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Get bound range (generated) with maxCount]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [maxCount=10]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Get lower excluded]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Retrieve one key multiple values]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [Get bound range]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
+ [maxCount=0]
+ expected:
+ if (processor == "x86") and not debug: TIMEOUT
+
[idbindex_getAll.any.sharedworker.html]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[Retrieve multiEntry key]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[Retrieve one key multiple values]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
+
+ [Non existent key]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get bound range (generated) with maxCount]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [maxCount=0]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
[idbindex_getAll.any.worker.html]
diff --git a/testing/web-platform/meta/IndexedDB/idbindex_getAllKeys.any.js.ini b/testing/web-platform/meta/IndexedDB/idbindex_getAllKeys.any.js.ini
index 807fb0c105..2289b961bb 100644
--- a/testing/web-platform/meta/IndexedDB/idbindex_getAllKeys.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/idbindex_getAllKeys.any.js.ini
@@ -1,21 +1,62 @@
[idbindex_getAllKeys.any.worker.html]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[Get bound range (generated) with maxCount]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[Non existent key]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[maxCount=0]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
[Retrieve multiEntry keys]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): TIMEOUT
+
+ [Get upper excluded]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get all keys]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Empty object store]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Single item get]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get bound range with maxCount]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [maxCount=10]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get lower excluded]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get all generated keys]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
+ [Get bound range]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
[idbindex_getAllKeys.any.html]
@@ -38,7 +79,7 @@
[idbindex_getAllKeys.any.sharedworker.html]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug: [OK, TIMEOUT]
[Get lower excluded]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
@@ -57,4 +98,4 @@
[Retrieve multiEntry keys]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/IndexedDB/idbobjectstore_add.any.js.ini b/testing/web-platform/meta/IndexedDB/idbobjectstore_add.any.js.ini
index 4a2c25509f..6efdb10102 100644
--- a/testing/web-platform/meta/IndexedDB/idbobjectstore_add.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/idbobjectstore_add.any.js.ini
@@ -1,12 +1,119 @@
[idbobjectstore_add.any.serviceworker.html]
+ expected:
+ if (processor == "x86") and not debug: [OK, TIMEOUT]
+ [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
+ expected:
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
+
[idbobjectstore_add.any.sharedworker.html]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ [Attempt to 'add()' a record where the out of line key provided does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record that does not meet the constraints of an object store's inline key requirements]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record where the record's key does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record where the record's in-line key is not defined]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() a record where a value being indexed does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to call 'add()' without a key parameter when the object store uses out-of-line keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() with an out-of-line key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() object store's key path is an object attribute]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() record with same key already exists]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() autoIncrement and inline keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() where an index has unique:true specified]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() autoIncrement and out-of-line keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Object store has autoIncrement:true and the key path is an object attribute]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
[idbobjectstore_add.any.worker.html]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to call 'add()' without a key parameter when the object store uses out-of-line keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record where the record's in-line key is not defined]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record that does not meet the constraints of an object store's inline key requirements]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Object store has autoIncrement:true and the key path is an object attribute]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record where the record's key does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record where the out of line key provided does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() a record where a value being indexed does not meet the constraints of a valid key]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
[idbobjectstore_add.any.html]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
[Attempt to call 'add()' without a key parameter when the object store uses out-of-line keys]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
@@ -14,23 +121,49 @@
[Attempt to 'add()' a record where the record's key does not meet the constraints of a valid key]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
[Attempt to 'add()' a record where the record's in-line key is not defined]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
[Attempt to 'add()' a record where the out of line key provided does not meet the constraints of a valid key]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
[add() a record where a value being indexed does not meet the constraints of a valid key]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
[If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
[If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
+
+ [Attempt to 'add()' a record that does not meet the constraints of an object store's inline key requirements]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() object store's key path is an object attribute]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() autoIncrement and inline keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [add() autoIncrement and out-of-line keys]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [Object store has autoIncrement:true and the key path is an object attribute]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/IndexedDB/idbobjectstore_put.any.js.ini b/testing/web-platform/meta/IndexedDB/idbobjectstore_put.any.js.ini
index 14fbd0f2f7..64c0247a07 100644
--- a/testing/web-platform/meta/IndexedDB/idbobjectstore_put.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/idbobjectstore_put.any.js.ini
@@ -1,88 +1,61 @@
[idbobjectstore_put.any.sharedworker.html]
[idbobjectstore_put.any.serviceworker.html]
+
+[idbobjectstore_put.any.worker.html]
expected:
- if (processor == "x86") and not debug: TIMEOUT
- [Attempt to put() a record that does not meet the constraints of an object store's inline key requirements]
+ if (os == "win") and not debug: [OK, TIMEOUT]
+ [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [Attempt to call put() without an key parameter when the object store uses out-of-line keys]
+ [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [Attempt to put() a record where the record's key does not meet the constraints of a valid key]
+ [put() a record where a value being indexed does not meet the constraints of a valid key]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[Attempt to put() a record where the record's in-line key is not defined]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[Attempt to put() a record where the out of line key provided does not meet the constraints of a valid key]
expected:
- if (processor == "x86") and not debug: TIMEOUT
-
- [put() a record where a value being indexed does not meet the constraints of a valid key]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
-
- [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
-
-
-[idbobjectstore_put.any.worker.html]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
- [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
+ [autoIncrement and inline keys]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
+ [Attempt to call put() without an key parameter when the object store uses out-of-line keys]
expected:
- if (processor == "x86") and not debug: TIMEOUT
-
+ if (os == "win") and not debug: [PASS, TIMEOUT]
-[idbobjectstore_put.any.html]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
- [Object store has autoIncrement:true and the key path is an object attribute]
+ [autoIncrement and out-of-line keys]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[Attempt to put() a record that does not meet the constraints of an object store's inline key requirements]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [Attempt to call put() without an key parameter when the object store uses out-of-line keys]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
-
- [Attempt to put() a record where the record's key does not meet the constraints of a valid key]
+ [put() where an index has unique:true specified]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [Attempt to put() a record where the record's in-line key is not defined]
+ [Object store's key path is an object attribute]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [Attempt to put() a record where the out of line key provided does not meet the constraints of a valid key]
+ [Object store has autoIncrement:true and the key path is an object attribute]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [put() a record where a value being indexed does not meet the constraints of a valid key]
+ [Attempt to put() a record where the record's key does not meet the constraints of a valid key]
expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug: [PASS, TIMEOUT]
- [If the transaction this IDBObjectStore belongs to has its mode set to readonly, throw ReadOnlyError]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
- [If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
+[idbobjectstore_put.any.html]
diff --git a/testing/web-platform/meta/IndexedDB/keygenerator-inject.html.ini b/testing/web-platform/meta/IndexedDB/keygenerator-inject.html.ini
index 8aacf79190..2951239fef 100644
--- a/testing/web-platform/meta/IndexedDB/keygenerator-inject.html.ini
+++ b/testing/web-platform/meta/IndexedDB/keygenerator-inject.html.ini
@@ -1,6 +1,7 @@
[keygenerator-inject.html]
expected:
- if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
+ if (os == "linux") and debug and not fission: CRASH
[Key is injected into value - single segment path]
expected:
if (processor == "x86") and not debug: [PASS, TIMEOUT]
@@ -19,4 +20,4 @@
[put() throws if key cannot be injected - multi-segment path]
expected:
- if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
+ if (processor == "x86") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/IndexedDB/serialize-sharedarraybuffer-throws.https.html.ini b/testing/web-platform/meta/IndexedDB/serialize-sharedarraybuffer-throws.https.html.ini
index bcfac5ac85..9a058c09d9 100644
--- a/testing/web-platform/meta/IndexedDB/serialize-sharedarraybuffer-throws.https.html.ini
+++ b/testing/web-platform/meta/IndexedDB/serialize-sharedarraybuffer-throws.https.html.ini
@@ -2,5 +2,3 @@
expected:
if (os == "android") and not debug: [OK, TIMEOUT]
if (os == "android") and debug: [OK, TIMEOUT]
- [IndexedDB: Attempting to serialize a SharedArrayBuffer should throw]
- expected: FAIL
diff --git a/testing/web-platform/meta/IndexedDB/structured-clone.any.js.ini b/testing/web-platform/meta/IndexedDB/structured-clone.any.js.ini
index 343dc96d67..d4a2ee767b 100644
--- a/testing/web-platform/meta/IndexedDB/structured-clone.any.js.ini
+++ b/testing/web-platform/meta/IndexedDB/structured-clone.any.js.ini
@@ -10,141 +10,112 @@
[structured-clone.any.html?101-last]
expected:
- if (os == "linux") and swgl and not fission: [TIMEOUT, OK]
- if (os == "android") and debug and not swgl: [TIMEOUT, OK]
- if (os == "mac") and not debug: [TIMEOUT, OK]
- if os == "win": [TIMEOUT, OK]
- TIMEOUT
- [Not serializable: Window: [object Window\]]
+ if (os == "win") and not debug: [OK, ERROR, TIMEOUT]
+ if os == "linux": TIMEOUT
+ [TIMEOUT, OK, ERROR]
+ [File: [object File\]]
expected:
- if (os == "android") and debug and not swgl: [NOTRUN, PASS]
- if (os == "linux") and swgl and not fission: [NOTRUN, PASS]
- if (os == "mac") and not debug: [NOTRUN, PASS]
- if os == "win": [NOTRUN, PASS]
- NOTRUN
+ if (os == "win") and ccov: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": NOTRUN
+ [NOTRUN, PASS, TIMEOUT]
- [Not serializable: symbol: Symbol(desc)]
+ [Not serializable: MessageChannel: [object MessageChannel\]]
expected:
- if (os == "android") and debug and not swgl: [NOTRUN, FAIL]
- if (os == "linux") and swgl and not fission: [NOTRUN, FAIL]
- if (os == "mac") and not debug: [NOTRUN, FAIL]
- if os == "win": [NOTRUN, FAIL]
+ if (os == "win") and debug: [NOTRUN, PASS]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ if os == "mac": [NOTRUN, PASS]
NOTRUN
- [FileList: [object FileList\]]
+ [Not serializable: symbol: Symbol(desc)]
expected:
- if (os == "android") and debug and not swgl: [NOTRUN, FAIL]
- if (os == "linux") and swgl and not fission: [NOTRUN, FAIL]
- if (os == "mac") and not debug: [NOTRUN, FAIL]
- if os == "win": [NOTRUN, FAIL]
+ if os == "win": [NOTRUN, FAIL, PASS]
+ if os == "mac": [NOTRUN, FAIL]
NOTRUN
- [Not serializable: function: function() {}]
+ [Not serializable: Window: [object Window\]]
expected:
- if (os == "android") and debug and not swgl: [NOTRUN, PASS]
- if (os == "linux") and swgl and not fission: [NOTRUN, PASS]
- if (os == "mac") and not debug: [NOTRUN, PASS]
- if os == "win": [NOTRUN, PASS]
+ if (os == "win") and debug: [NOTRUN, PASS]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ if os == "mac": [NOTRUN, PASS]
NOTRUN
- [File: [object File\]]
+ [Blob: [object Blob\]]
expected:
- if (os == "win") and ccov: [NOTRUN, PASS, TIMEOUT]
- if (os == "linux") and debug and not fission and swgl: [NOTRUN, PASS, TIMEOUT]
- if (os == "linux") and not debug and fission: NOTRUN
- if (os == "android") and debug and not swgl: [NOTRUN, PASS, TIMEOUT]
- if (os == "mac") and not debug: [NOTRUN, PASS, TIMEOUT]
- if os == "win": [NOTRUN, PASS, TIMEOUT]
- [NOTRUN, TIMEOUT]
+ if (os == "win") and debug: [TIMEOUT, PASS]
+ if (os == "win") and not debug: [PASS, TIMEOUT]
+ if os == "mac": [TIMEOUT, PASS]
+ TIMEOUT
- [Not serializable: Event: [object Event\]]
+ [Not serializable: function: function() {}]
expected:
- if (os == "android") and debug and not swgl: [NOTRUN, PASS]
- if (os == "linux") and swgl and not fission: [NOTRUN, PASS]
- if (os == "mac") and not debug: [NOTRUN, PASS]
- if os == "win": [NOTRUN, PASS]
+ if (os == "win") and debug: [NOTRUN, PASS]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ if os == "mac": [NOTRUN, PASS]
NOTRUN
- [Not serializable: MessageChannel: [object MessageChannel\]]
+ [FileList: [object FileList\]]
expected:
- if (os == "linux") and swgl and not fission: [NOTRUN, PASS]
- if (os == "android") and debug and not swgl: [NOTRUN, PASS]
- if (os == "mac") and not debug: [NOTRUN, PASS]
- if os == "win": [NOTRUN, PASS]
+ if (os == "win") and debug: [NOTRUN, FAIL]
+ if (os == "win") and not debug: [FAIL, NOTRUN]
+ if os == "mac": [NOTRUN, FAIL]
NOTRUN
- [Blob: [object Blob\]]
- expected:
- if (os == "linux") and not debug and fission: TIMEOUT
- if (os == "win") and not debug and (processor == "x86"): [TIMEOUT, PASS, NOTRUN]
- [TIMEOUT, PASS]
-
- [DOMRectReadOnly: [object DOMRectReadOnly\]]
- expected:
- if (processor == "x86") and not debug: [PASS, TIMEOUT]
-
- [ImageData: [object ImageData\]]
+ [Not serializable: Event: [object Event\]]
expected:
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (os == "win") and debug: [NOTRUN, PASS]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ if os == "mac": [NOTRUN, PASS]
+ NOTRUN
[structured-clone.any.worker.html?101-last]
expected:
- if (os == "linux") and fission and debug and swgl: TIMEOUT
- if (os == "linux") and fission and not debug: TIMEOUT
- if (os == "mac") and debug: TIMEOUT
- if (os == "android") and not debug: TIMEOUT
- [TIMEOUT, OK]
- [Not serializable: function: function() {}]
+ if (os == "win") and debug: [OK, ERROR, TIMEOUT]
+ if (os == "win") and not debug: [OK, ERROR, TIMEOUT]
+ if os == "linux": TIMEOUT
+ [TIMEOUT, OK, ERROR]
+ [Not serializable: MessageChannel: [object MessageChannel\]]
expected:
- if (os == "linux") and fission and debug and swgl: NOTRUN
- if (os == "linux") and fission and not debug: NOTRUN
- if (os == "mac") and debug: NOTRUN
- if (os == "android") and not debug: NOTRUN
- [NOTRUN, PASS]
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ NOTRUN
- [Not serializable: MessageChannel: [object MessageChannel\]]
+ [Not serializable: DedicatedWorkerGlobalScope: [object DedicatedWorkerGlobalScope\]]
expected:
- if (os == "linux") and fission and debug and swgl: NOTRUN
- if (os == "linux") and fission and not debug: NOTRUN
- if (os == "android") and not debug: NOTRUN
- if (os == "mac") and debug: NOTRUN
- [NOTRUN, PASS]
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ NOTRUN
[Not serializable: symbol: Symbol(desc)]
expected:
- if (os == "linux") and fission and debug and swgl: NOTRUN
- if (os == "linux") and fission and not debug: NOTRUN
- if (os == "android") and not debug: NOTRUN
- if (os == "mac") and debug: NOTRUN
- [NOTRUN, FAIL]
+ if (os == "win") and debug: [PASS, FAIL, NOTRUN]
+ if (os == "win") and not debug: [PASS, FAIL, NOTRUN]
+ NOTRUN
- [File: [object File\]]
+ [Blob: [object Blob\]]
expected:
- if (os == "linux") and fission and debug and swgl: [NOTRUN, TIMEOUT]
- if (os == "linux") and fission and not debug: [NOTRUN, TIMEOUT]
- if (os == "android") and not debug: [NOTRUN, TIMEOUT]
- if (os == "mac") and debug: [NOTRUN, TIMEOUT]
- [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and debug: [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT]
+ TIMEOUT
- [Not serializable: Event: [object Event\]]
+ [File: [object File\]]
expected:
- if (os == "linux") and fission and debug and swgl: NOTRUN
- if (os == "linux") and fission and not debug: NOTRUN
- if (os == "android") and not debug: NOTRUN
- if (os == "mac") and debug: NOTRUN
- [NOTRUN, PASS]
+ if (os == "win") and debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ NOTRUN
- [Not serializable: DedicatedWorkerGlobalScope: [object DedicatedWorkerGlobalScope\]]
+ [Not serializable: function: function() {}]
expected:
- if (os == "linux") and fission and debug and swgl: NOTRUN
- if (os == "linux") and fission and not debug: NOTRUN
- if (os == "android") and not debug: NOTRUN
- if (os == "mac") and debug: NOTRUN
- [NOTRUN, PASS]
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ NOTRUN
- [Blob: [object Blob\]]
- expected: [TIMEOUT, PASS]
+ [Not serializable: Event: [object Event\]]
+ expected:
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
+ NOTRUN
[structured-clone.any.html?1-20]
@@ -152,10 +123,13 @@
[structured-clone.any.worker.html?1-20]
[structured-clone.any.worker.html?21-40]
+ expected:
+ if asan and not fission: [OK, CRASH]
[structured-clone.any.html?21-40]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, ERROR, TIMEOUT]
+ if (os == "linux") and not fission and not debug: [OK, CRASH]
[string: ]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
@@ -218,16 +192,14 @@
[structured-clone.any.html?41-60]
+ expected:
+ if not fission and (os == "linux") and debug: [OK, CRASH]
[structured-clone.any.worker.html?41-60]
[structured-clone.any.html?61-80]
expected:
- if (processor == "x86") and not debug: [OK, TIMEOUT]
- [Uint8Array: 0,1,254,255]
- expected:
- if (processor == "x86") and not debug: [PASS, NOTRUN]
-
+ if (processor == "x86") and not debug: [OK, ERROR, TIMEOUT]
[RegExp: /abc/im]
expected:
if (processor == "x86") and not debug: [PASS, TIMEOUT]
@@ -240,10 +212,6 @@
expected:
if (processor == "x86") and not debug: [PASS, NOTRUN]
- [Uint8Array: ]
- expected:
- if (processor == "x86") and not debug: [PASS, NOTRUN]
-
[ArrayBuffer: [object ArrayBuffer\]]
expected:
if (processor == "x86") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_bits.https.any.js.ini b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_bits.https.any.js.ini
index e6e8b4838e..078bdc3957 100644
--- a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_bits.https.any.js.ini
+++ b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_bits.https.any.js.ini
@@ -19,33 +19,6 @@
[P-384 non-multiple of 8 bits]
expected: FAIL
- [P-521 missing public curve]
- expected: FAIL
-
- [P-256 missing public curve]
- expected: FAIL
-
- [P-384 missing public curve]
- expected: FAIL
-
- [P-521 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-256 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-384 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-521 mismatched curves]
- expected: FAIL
-
- [P-256 mismatched curves]
- expected: FAIL
-
- [P-384 mismatched curves]
- expected: FAIL
-
[P-521 asking for too many bits]
expected: FAIL
@@ -77,33 +50,6 @@
[P-384 non-multiple of 8 bits]
expected: FAIL
- [P-521 missing public curve]
- expected: FAIL
-
- [P-256 missing public curve]
- expected: FAIL
-
- [P-384 missing public curve]
- expected: FAIL
-
- [P-521 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-256 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-384 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-521 mismatched curves]
- expected: FAIL
-
- [P-256 mismatched curves]
- expected: FAIL
-
- [P-384 mismatched curves]
- expected: FAIL
-
[P-521 asking for too many bits]
expected: FAIL
diff --git a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_keys.https.any.js.ini b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_keys.https.any.js.ini
index 77626e97ce..0733cb678c 100644
--- a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_keys.https.any.js.ini
+++ b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/ecdh_keys.https.any.js.ini
@@ -1,60 +1,7 @@
[ecdh_keys.https.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [P-521 missing public curve]
- expected: FAIL
-
- [P-256 missing public curve]
- expected: FAIL
-
- [P-384 missing public curve]
- expected: FAIL
-
- [P-521 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-256 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-384 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-521 mismatched curves]
- expected: FAIL
-
- [P-256 mismatched curves]
- expected: FAIL
-
- [P-384 mismatched curves]
- expected: FAIL
-
[ecdh_keys.https.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [P-521 missing public curve]
- expected: FAIL
-
- [P-256 missing public curve]
- expected: FAIL
-
- [P-384 missing public curve]
- expected: FAIL
-
- [P-521 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-256 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-384 public property of algorithm is not a CryptoKey]
- expected: FAIL
-
- [P-521 mismatched curves]
- expected: FAIL
-
- [P-256 mismatched curves]
- expected: FAIL
-
- [P-384 mismatched curves]
- expected: FAIL
diff --git a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/hkdf.https.any.js.ini b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/hkdf.https.any.js.ini
index 64ea9238c4..be28bfee4b 100644
--- a/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/hkdf.https.any.js.ini
+++ b/testing/web-platform/meta/WebCryptoAPI/derive_bits_keys/hkdf.https.any.js.ini
@@ -7,189 +7,114 @@
[short derivedKey, empty salt, SHA-1, with empty info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with normal info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-256, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with empty info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-256, with empty info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with normal info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-384, with normal info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with empty info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-384, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with normal info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-512, with normal info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with empty info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-512, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with normal info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-1, with normal info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with empty info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-1, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with normal info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-256, with normal info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with empty info with missing salt]
expected: FAIL
[long derivedKey, normal salt, SHA-256, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with normal info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-384, with normal info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with normal info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with empty info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-384, with empty info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
@@ -1821,295 +1746,178 @@
[hkdf.https.any.html?1-1000]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [short derivedKey, normal salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with normal info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-384, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-384, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with empty info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-384, with empty info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-512, with normal info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-512, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-512, with empty info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-512, with empty info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-512, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with normal info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-1, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with empty info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-1, with empty info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-256, with normal info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-256, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-256, with empty info with missing salt]
expected: FAIL
[short derivedKey, normal salt, SHA-256, with empty info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-256, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-384, with normal info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-384, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-384, with empty info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-384, with empty info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with normal info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-512, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with empty info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-512, with empty info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-1, with normal info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-1, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[hkdf.https.any.html?2001-3000]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [long derivedKey, empty salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-512, with normal info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-512, with normal info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-512, with empty info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-512, with empty info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-512, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-1, with normal info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-1, with normal info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-1, with empty info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-1, with empty info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-256, with normal info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-256, with normal info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-256, with empty info with missing salt]
expected: FAIL
[long derivedKey, empty salt, SHA-256, with empty info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-256, with empty info with non-multiple of 8 length]
expected: FAIL
@@ -4917,18 +4725,9 @@
[hkdf.https.any.worker.html?1001-2000]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [long derivedKey, normal salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with empty info with null length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with normal info with missing info]
expected: FAIL
@@ -4947,69 +4746,36 @@
[long derivedKey, normal salt, SHA-384, with normal info with missing salt]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with empty info with missing info]
expected: FAIL
[long derivedKey, normal salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-256, with empty info with missing salt]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with empty info with null length]
- expected: FAIL
-
- [long derivedKey, normal salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
[long derivedKey, empty salt, SHA-384, with normal info with missing salt]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with empty info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with normal info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with empty info with null length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with normal info with missing salt]
expected: FAIL
- [short derivedKey, empty salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with normal info with missing salt]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-1, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
@@ -5019,51 +4785,27 @@
[long derivedKey, normal salt, SHA-256, with normal info with missing salt]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with normal info with null length]
- expected: FAIL
-
- [long derivedKey, normal salt, SHA-1, with normal info with null length]
- expected: FAIL
-
- [long derivedKey, empty salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
[long derivedKey, normal salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
[short derivedKey, empty salt, SHA-1, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-384, with empty info with missing salt]
expected: FAIL
[short derivedKey, empty salt, SHA-1, with empty info with missing salt]
expected: FAIL
- [long derivedKey, normal salt, SHA-384, with normal info with null length]
- expected: FAIL
-
[long derivedKey, normal salt, SHA-512, with empty info with missing info]
expected: FAIL
- [long derivedKey, empty salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
- [long derivedKey, normal salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
@@ -5079,15 +4821,9 @@
[long derivedKey, empty salt, SHA-384, with empty info with missing info]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with empty info with missing salt]
expected: FAIL
- [long derivedKey, normal salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-256, with normal info with non-multiple of 8 length]
expected: FAIL
@@ -5100,9 +4836,6 @@
[long derivedKey, normal salt, SHA-1, with normal info with missing salt]
expected: FAIL
- [long derivedKey, normal salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[long derivedKey, empty salt, SHA-384, with empty info with missing salt]
expected: FAIL
@@ -5113,15 +4846,9 @@
[hkdf.https.any.worker.html?1-1000]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [short derivedKey, normal salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with empty info with non-multiple of 8 length]
expected: FAIL
@@ -5131,12 +4858,6 @@
[short derivedKey, normal salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with empty info with null length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-1, with normal info with missing info]
expected: FAIL
@@ -5155,15 +4876,9 @@
[short derivedKey, empty salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-256, with empty info with missing salt]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with empty info with missing info]
expected: FAIL
@@ -5182,48 +4897,18 @@
[short derivedKey, normal salt, SHA-512, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-512, with empty info with null length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with normal info with non-multiple of 8 length]
expected: FAIL
[short derivedKey, empty salt, SHA-512, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-384, with normal info with null length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-384, with normal info with missing info]
expected: FAIL
- [short derivedKey, normal salt, SHA-256, with normal info with null length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-1, with empty info with null length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-384, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-384, with empty info with non-multiple of 8 length]
expected: FAIL
@@ -5233,24 +4918,12 @@
[short derivedKey, normal salt, SHA-256, with normal info with missing salt]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with empty info with non-multiple of 8 length]
expected: FAIL
[short derivedKey, empty salt, SHA-512, with normal info with non-multiple of 8 length]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with normal info with 0 length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-384, with normal info with null length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-512, with empty info with missing info]
expected: FAIL
@@ -5263,9 +4936,6 @@
[short derivedKey, normal salt, SHA-1, with empty info with missing salt]
expected: FAIL
- [short derivedKey, empty salt, SHA-384, with empty info with null length]
- expected: FAIL
-
[short derivedKey, normal salt, SHA-1, with normal info with non-multiple of 8 length]
expected: FAIL
@@ -5278,27 +4948,9 @@
[short derivedKey, normal salt, SHA-256, with normal info with missing info]
expected: FAIL
- [short derivedKey, empty salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
- [short derivedKey, normal salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
- [short derivedKey, empty salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with normal info with missing salt]
expected: FAIL
- [short derivedKey, normal salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[short derivedKey, empty salt, SHA-512, with empty info with missing salt]
expected: FAIL
@@ -5321,9 +4973,6 @@
[Derived key of type name: AES-CBC length: 128 using empty derivedKey, normal salt, SHA-384, with normal info]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with normal info with null length]
- expected: FAIL
-
[Derived key of type name: AES-GCM length: 192 using empty derivedKey, normal salt, SHA-384, with empty info with bad hash name SHA384]
expected: FAIL
@@ -5504,9 +5153,6 @@
[Derived key of type name: HMAC hash: SHA-384 length: 256 using empty derivedKey, normal salt, SHA-384, with normal info with missing deriveKey usage]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with normal info with 0 length]
- expected: FAIL
-
[Derived key of type name: AES-CTR length: 128 using empty derivedKey, normal salt, SHA-1, with empty info with bad hash name SHA1]
expected: FAIL
@@ -5522,9 +5168,6 @@
[Derived key of type name: HMAC hash: SHA-1 length: 256 using empty derivedKey, normal salt, SHA-1, with empty info with bad hash name SHA1]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with empty info with 0 length]
- expected: FAIL
-
[Derived key of type name: AES-CTR length: 256 using empty derivedKey, normal salt, SHA-384, with empty info]
expected: FAIL
@@ -5576,9 +5219,6 @@
[Derived key of type name: AES-CTR length: 256 using empty derivedKey, normal salt, SHA-1, with empty info with bad hash name SHA1]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with empty info with 0 length]
- expected: FAIL
-
[Derived key of type name: HMAC hash: SHA-512 length: 256 using empty derivedKey, normal salt, SHA-1, with normal info with bad hash name SHA1]
expected: FAIL
@@ -5594,9 +5234,6 @@
[Derived key of type name: AES-KW length: 256 using empty derivedKey, normal salt, SHA-512, with normal info]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with normal info with 0 length]
- expected: FAIL
-
[Derived key of type name: AES-GCM length: 192 using empty derivedKey, normal salt, SHA-1, with empty info with missing deriveKey usage]
expected: FAIL
@@ -5861,15 +5498,9 @@
[Derived key of type name: AES-KW length: 128 using empty derivedKey, normal salt, SHA-1, with normal info with bad hash name SHA1]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with normal info with null length]
- expected: FAIL
-
[Derived key of type name: AES-CTR length: 128 using empty derivedKey, normal salt, SHA-384, with empty info]
expected: FAIL
- [long derivedKey, empty salt, SHA-256, with empty info with null length]
- expected: FAIL
-
[Derived key of type name: HMAC hash: SHA-384 length: 256 using empty derivedKey, normal salt, SHA-384, with empty info with bad hash name SHA384]
expected: FAIL
@@ -6014,9 +5645,6 @@
[empty derivedKey, normal salt, SHA-1, with empty info with missing deriveBits usage]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with empty info with 0 length]
- expected: FAIL
-
[empty derivedKey, normal salt, SHA-512, with normal info with 0 length]
expected: FAIL
@@ -6137,12 +5765,6 @@
[Derived key of type name: HMAC hash: SHA-256 length: 256 using empty derivedKey, normal salt, SHA-256, with normal info with missing deriveKey usage]
expected: FAIL
- [long derivedKey, empty salt, SHA-1, with empty info with null length]
- expected: FAIL
-
- [long derivedKey, empty salt, SHA-256, with normal info with 0 length]
- expected: FAIL
-
[Derived key of type name: AES-KW length: 256 using empty derivedKey, normal salt, SHA-512, with normal info with missing deriveKey usage]
expected: FAIL
@@ -6209,9 +5831,6 @@
[Derived key of type name: AES-CTR length: 192 using empty derivedKey, normal salt, SHA-384, with normal info]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with empty info with null length]
- expected: FAIL
-
[Derived key of type name: AES-CTR length: 192 using empty derivedKey, normal salt, SHA-384, with normal info with missing deriveKey usage]
expected: FAIL
@@ -6374,9 +5993,6 @@
[Derived key of type name: AES-CTR length: 128 using empty derivedKey, normal salt, SHA-384, with normal info with missing deriveKey usage]
expected: FAIL
- [long derivedKey, empty salt, SHA-512, with normal info with null length]
- expected: FAIL
-
[Derived key of type name: AES-CTR length: 192 using empty derivedKey, normal salt, SHA-512, with empty info with bad hash name SHA512]
expected: FAIL
diff --git a/testing/web-platform/meta/WebCryptoAPI/getRandomValues.any.js.ini b/testing/web-platform/meta/WebCryptoAPI/getRandomValues.any.js.ini
index db7b61eeac..be8ca43956 100644
--- a/testing/web-platform/meta/WebCryptoAPI/getRandomValues.any.js.ini
+++ b/testing/web-platform/meta/WebCryptoAPI/getRandomValues.any.js.ini
@@ -1,7 +1,12 @@
[getRandomValues.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [Float arrays]
+ expected: FAIL
+
[getRandomValues.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [Float arrays]
+ expected: FAIL
diff --git a/testing/web-platform/meta/WebCryptoAPI/sign_verify/ecdsa.https.any.js.ini b/testing/web-platform/meta/WebCryptoAPI/sign_verify/ecdsa.https.any.js.ini
deleted file mode 100644
index 82e2430519..0000000000
--- a/testing/web-platform/meta/WebCryptoAPI/sign_verify/ecdsa.https.any.js.ini
+++ /dev/null
@@ -1,74 +0,0 @@
-[ecdsa.https.any.worker.html]
- [ECDSA P-256 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
-
-
-[ecdsa.https.any.html]
- [ECDSA P-256 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-256 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-384 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-1 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-256 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-384 verification failure due to bad hash name]
- expected: FAIL
-
- [ECDSA P-521 with SHA-512 verification failure due to bad hash name]
- expected: FAIL
diff --git a/testing/web-platform/meta/accelerometer/idlharness.https.window.js.ini b/testing/web-platform/meta/accelerometer/idlharness.https.window.js.ini
index 4c4f55c004..81425ed576 100644
--- a/testing/web-platform/meta/accelerometer/idlharness.https.window.js.ini
+++ b/testing/web-platform/meta/accelerometer/idlharness.https.window.js.ini
@@ -1,4 +1,6 @@
[idlharness.https.window.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[Accelerometer interface: existence and properties of interface object]
expected: FAIL
@@ -106,4 +108,3 @@
[LinearAccelerationSensor interface object length]
expected: FAIL
-
diff --git a/testing/web-platform/meta/accessibility/crashtests/computed-node.html.ini b/testing/web-platform/meta/accessibility/crashtests/computed-node.html.ini
new file mode 100644
index 0000000000..677fe96251
--- /dev/null
+++ b/testing/web-platform/meta/accessibility/crashtests/computed-node.html.ini
@@ -0,0 +1,3 @@
+[computed-node.html]
+ expected:
+ if (os == "linux") and (version == "Ubuntu 22.04") and debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/accname/manual/__dir__.ini b/testing/web-platform/meta/accname/manual/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/accname/manual/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/animation-worklet/__dir__.ini b/testing/web-platform/meta/animation-worklet/__dir__.ini
index 2ef043b928..6d72bcb6c0 100644
--- a/testing/web-platform/meta/animation-worklet/__dir__.ini
+++ b/testing/web-platform/meta/animation-worklet/__dir__.ini
@@ -1 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1582695
implementation-status: backlog
diff --git a/testing/web-platform/meta/annotation-model/__dir__.ini b/testing/web-platform/meta/annotation-model/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/annotation-model/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/annotation-protocol/__dir__.ini b/testing/web-platform/meta/annotation-protocol/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/annotation-protocol/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/appmanifest/__dir__.ini b/testing/web-platform/meta/appmanifest/__dir__.ini
new file mode 100644
index 0000000000..1f866b7741
--- /dev/null
+++ b/testing/web-platform/meta/appmanifest/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1407202
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/attribution-reporting/referrer-policy.sub.https.html.ini b/testing/web-platform/meta/attribution-reporting/referrer-policy.sub.https.html.ini
new file mode 100644
index 0000000000..e75004a0e6
--- /dev/null
+++ b/testing/web-platform/meta/attribution-reporting/referrer-policy.sub.https.html.ini
@@ -0,0 +1,38 @@
+[referrer-policy.sub.https.html?method=img&noreferrer]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=script&noreferrer]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=open&noreferrer]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=img]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=script]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=a]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=open]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
+
+
+[referrer-policy.sub.https.html?method=a&noreferrer]
+ [attributionsrc referrer policy is propagated.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/background-sync/__dir__.ini b/testing/web-platform/meta/background-sync/__dir__.ini
new file mode 100644
index 0000000000..eee353b232
--- /dev/null
+++ b/testing/web-platform/meta/background-sync/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1547906
+implementation-status: backlog
diff --git a/testing/web-platform/meta/badging/__dir__.ini b/testing/web-platform/meta/badging/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/badging/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/browsing-topics/__dir__.ini b/testing/web-platform/meta/browsing-topics/__dir__.ini
index 815eb6ffb2..073b921ed2 100644
--- a/testing/web-platform/meta/browsing-topics/__dir__.ini
+++ b/testing/web-platform/meta/browsing-topics/__dir__.ini
@@ -1,2 +1,3 @@
+implementation-status: not-implementing
lsan-allowed: [Alloc, AllocateProtoAndIfaceCache, DoCORSChecks, FetchDriverObserver, MakeSafeRefPtr, MakeUnique, Malloc, NewChannelFromURIWithProxyFlagsInternal, Realloc, WeakPtr, changeTableSize, createTable, mozilla::detail::UniqueSelector, mozilla::dom::FetchDriver::Fetch, mozilla::dom::FetchRequest, mozilla::dom::InternalRequest::GetRequestConstructorCopy, mozilla::dom::Performance::CreateForMainThread, mozilla::dom::PerformanceMainThread::CreateNavigationTimingEntry, mozilla::dom::ReferrerInfo::CloneWithNewPolicy, mozilla::net::HttpBaseChannel::HttpBaseChannel, mozilla::net::HttpChannelChild::HttpChannelChild, mozilla::net::nsHttpHandler::NewProxiedChannel, mozilla::net::nsStandardURL::TemplatedMutator, nsDynamicAtom::Create]
leak-threshold: [tab:256000]
diff --git a/testing/web-platform/meta/captured-mouse-events/__dir__.ini b/testing/web-platform/meta/captured-mouse-events/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/captured-mouse-events/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/client-hints/__dir__.ini b/testing/web-platform/meta/client-hints/__dir__.ini
index daf68383df..f6b0a3320d 100644
--- a/testing/web-platform/meta/client-hints/__dir__.ini
+++ b/testing/web-platform/meta/client-hints/__dir__.ini
@@ -1 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=935216
+implementation-status: backlog
leak-threshold: [default:51200]
diff --git a/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-write-multiple.tentative.https.sub.html.ini b/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-write-multiple.tentative.https.sub.html.ini
index 50fdeab211..9be948e81e 100644
--- a/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-write-multiple.tentative.https.sub.html.ini
+++ b/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-write-multiple.tentative.https.sub.html.ini
@@ -7,4 +7,9 @@ prefs: [dom.events.testing.asyncClipboard:true]
[clipboard.write() should cancel the prior pending one (same document)]
expected:
+ if (os == "android") and debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
+
+ [clipboard.write() should cancel the prior pending one (cross-origin iframe)]
+ expected:
if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/clipboard-apis/clipboard-item.https.html.ini b/testing/web-platform/meta/clipboard-apis/clipboard-item.https.html.ini
index 6d3b91351b..4f872f9187 100644
--- a/testing/web-platform/meta/clipboard-apis/clipboard-item.https.html.ini
+++ b/testing/web-platform/meta/clipboard-apis/clipboard-item.https.html.ini
@@ -1,5 +1,11 @@
[clipboard-item.https.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [supports(DOMString) returns true for types that are supported, false otherwise]
+ [supports(image/svg+xml) returns true]
+ expected: FAIL
+
+ [supports(web foo/bar) returns true]
+ expected: FAIL
+
+ [supports(web text/html) returns true]
expected: FAIL
diff --git a/testing/web-platform/meta/clipboard-apis/idlharness.https.window.js.ini b/testing/web-platform/meta/clipboard-apis/idlharness.https.window.js.ini
index 29856f82da..8e35006d6d 100644
--- a/testing/web-platform/meta/clipboard-apis/idlharness.https.window.js.ini
+++ b/testing/web-platform/meta/clipboard-apis/idlharness.https.window.js.ini
@@ -1,5 +1,3 @@
[idlharness.https.window.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [ClipboardItem interface: operation supports(DOMString)]
- expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/__dir__.ini b/testing/web-platform/meta/close-watcher/__dir__.ini
index 8a73333e77..83fabadf90 100644
--- a/testing/web-platform/meta/close-watcher/__dir__.ini
+++ b/testing/web-platform/meta/close-watcher/__dir__.ini
@@ -1 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1859702
+implementation-status: backlog
prefs: [dom.element.popover.enabled: true]
diff --git a/testing/web-platform/meta/close-watcher/basic.html.ini b/testing/web-platform/meta/close-watcher/basic.html.ini
index b85448e71e..94cc9b0d78 100644
--- a/testing/web-platform/meta/close-watcher/basic.html.ini
+++ b/testing/web-platform/meta/close-watcher/basic.html.ini
@@ -1,75 +1,21 @@
[basic.html]
- [close() then destroy() fires only one close event]
+ [close() then destroy()]
expected: FAIL
- [requestClose() with no user activation only fires close]
+ [destroy() then close request]
expected: FAIL
- [destroy() then requestClose() fires no events]
+ [Close request then destroy()]
expected: FAIL
- [close() then requestClose() fires only one close event]
+ [close() then requestClose()]
expected: FAIL
- [requestClose() then destroy() fires only one close event]
+ [destroy() then requestClose()]
expected: FAIL
- [requestClose() with no user activation only fires close]
+ [requestClose() then destroy()]
expected: FAIL
- [destroy() then requestClose() fires no events]
- expected: FAIL
-
- [close() then requestClose() fires only one close event]
- expected: FAIL
-
- [requestClose() then destroy() fires only one close event]
- expected: FAIL
-
- [requestClose() with no user activation only fires close]
- expected: FAIL
-
- [destroy() then requestClose() fires no events]
- expected: FAIL
-
- [close() then requestClose() fires only one close event]
- expected: FAIL
-
- [requestClose() then destroy() fires only one close event]
- expected: FAIL
-
- [destroy() then close request fires no events]
- expected: FAIL
-
- [Close request then destroy() fires only one close event]
- expected: FAIL
-
- [requestClose() with no user activation only fires close]
- expected: FAIL
-
- [destroy() then requestClose() fires no events]
- expected: FAIL
-
- [close() then requestClose() fires only one close event]
- expected: FAIL
-
- [requestClose() then destroy() fires only one close event]
- expected: FAIL
-
- [destroy() then close request fires no events]
- expected: FAIL
-
- [Close request then destroy() fires only one close event]
- expected: FAIL
-
- [destroy() then close request fires no events]
- expected: FAIL
-
- [Close request then destroy() fires only one close event]
- expected: FAIL
-
- [destroy() then close request fires no events]
- expected: FAIL
-
- [Close request then destroy() fires only one close event]
+ [requestClose() with no user activation]
expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/esc-key/not-user-activation.html.ini b/testing/web-platform/meta/close-watcher/esc-key/not-user-activation.html.ini
index 33dbd15697..a462b70c87 100644
--- a/testing/web-platform/meta/close-watcher/esc-key/not-user-activation.html.ini
+++ b/testing/web-platform/meta/close-watcher/esc-key/not-user-activation.html.ini
@@ -1,3 +1,3 @@
[not-user-activation.html]
- [Esc key does not count as user activation, so if it is the sole user interaction, that fires close but not cancel]
+ [Esc key does not count as user activation, so if it is the sole user interaction, cancel is cancelable=false]
expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nn-CloseWatcher.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nn-CloseWatcher.html.ini
new file mode 100644
index 0000000000..641e1bdfac
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nn-CloseWatcher.html.ini
@@ -0,0 +1,3 @@
+[nn-CloseWatcher.html]
+ [Create two close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nn-dialog.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nn-dialog.html.ini
new file mode 100644
index 0000000000..d28174586e
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nn-dialog.html.ini
@@ -0,0 +1,3 @@
+[nn-dialog.html]
+ [Create two close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nn.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nn.html.ini
deleted file mode 100644
index 88e3644b1f..0000000000
--- a/testing/web-platform/meta/close-watcher/user-activation/nn.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[nn.html?CloseWatcher]
- [Create two close watchers without user activation]
- expected: FAIL
-
-
-[nn.html?dialog]
- [Create two close watchers without user activation]
- expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nnn-CloseWatcher.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nnn-CloseWatcher.html.ini
new file mode 100644
index 0000000000..e107454db7
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nnn-CloseWatcher.html.ini
@@ -0,0 +1,3 @@
+[nnn-CloseWatcher.html]
+ [Create three close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nnn-dialog.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nnn-dialog.html.ini
new file mode 100644
index 0000000000..11b9e67899
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nnn-dialog.html.ini
@@ -0,0 +1,3 @@
+[nnn-dialog.html]
+ [Create three close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nnn.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nnn.html.ini
deleted file mode 100644
index c55baa42f8..0000000000
--- a/testing/web-platform/meta/close-watcher/user-activation/nnn.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[nnn.html?dialog]
- [Create three close watchers without user activation]
- expected: FAIL
-
-
-[nnn.html?CloseWatcher]
- [Create three close watchers without user activation]
- expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyn-CloseWatcher.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyn-CloseWatcher.html.ini
new file mode 100644
index 0000000000..48cd665730
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nyyn-CloseWatcher.html.ini
@@ -0,0 +1,3 @@
+[nyyn-CloseWatcher.html]
+ [Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyn-dialog.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyn-dialog.html.ini
new file mode 100644
index 0000000000..a59d416371
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nyyn-dialog.html.ini
@@ -0,0 +1,3 @@
+[nyyn-dialog.html]
+ [Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyn.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyn.html.ini
deleted file mode 100644
index 943b9f3521..0000000000
--- a/testing/web-platform/meta/close-watcher/user-activation/nyyn.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[nyyn.html?CloseWatcher]
- [Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation]
- expected: FAIL
-
-
-[nyyn.html?dialog]
- [Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation]
- expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyyn-CloseWatcher.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyyn-CloseWatcher.html.ini
new file mode 100644
index 0000000000..75985eeeb2
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nyyyn-CloseWatcher.html.ini
@@ -0,0 +1,3 @@
+[nyyyn-CloseWatcher.html]
+ [Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyyn-dialog.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyyn-dialog.html.ini
new file mode 100644
index 0000000000..d63a1f9617
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/nyyyn-dialog.html.ini
@@ -0,0 +1,3 @@
+[nyyyn-dialog.html]
+ [Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/nyyyn.html.ini b/testing/web-platform/meta/close-watcher/user-activation/nyyyn.html.ini
deleted file mode 100644
index f21a473a65..0000000000
--- a/testing/web-platform/meta/close-watcher/user-activation/nyyyn.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[nyyyn.html?dialog]
- [Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation]
- expected: FAIL
-
-
-[nyyyn.html?CloseWatcher]
- [Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation]
- expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/ynn-CloseWatcher.html.ini b/testing/web-platform/meta/close-watcher/user-activation/ynn-CloseWatcher.html.ini
new file mode 100644
index 0000000000..df2246e1d4
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/ynn-CloseWatcher.html.ini
@@ -0,0 +1,3 @@
+[ynn-CloseWatcher.html]
+ [Create a close watcher with user activation; create two close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/ynn-dialog.html.ini b/testing/web-platform/meta/close-watcher/user-activation/ynn-dialog.html.ini
new file mode 100644
index 0000000000..8e3273e296
--- /dev/null
+++ b/testing/web-platform/meta/close-watcher/user-activation/ynn-dialog.html.ini
@@ -0,0 +1,3 @@
+[ynn-dialog.html]
+ [Create a close watcher with user activation; create two close watchers without user activation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/close-watcher/user-activation/ynn.html.ini b/testing/web-platform/meta/close-watcher/user-activation/ynn.html.ini
deleted file mode 100644
index 6294eed185..0000000000
--- a/testing/web-platform/meta/close-watcher/user-activation/ynn.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[ynn.html?dialog]
- [Create a close watcher with user activation; create two close watchers without user activation]
- expected: FAIL
-
-
-[ynn.html?CloseWatcher]
- [Create a close watcher with user activation; create two close watchers without user activation]
- expected: FAIL
diff --git a/testing/web-platform/meta/compression/decompression-buffersource.tentative.any.js.ini b/testing/web-platform/meta/compression/decompression-buffersource.tentative.any.js.ini
index 3f328ec136..0236587171 100644
--- a/testing/web-platform/meta/compression/decompression-buffersource.tentative.any.js.ini
+++ b/testing/web-platform/meta/compression/decompression-buffersource.tentative.any.js.ini
@@ -3,10 +3,14 @@
[decompression-buffersource.tentative.any.serviceworker.html]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [ERROR, OK, TIMEOUT]
+ ERROR
[decompression-buffersource.tentative.any.worker.html]
+ expected: ERROR
[decompression-buffersource.tentative.any.html]
+ expected: ERROR
[decompression-buffersource.tentative.any.sharedworker.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/compute-pressure/__dir__.ini b/testing/web-platform/meta/compute-pressure/__dir__.ini
new file mode 100644
index 0000000000..620a389b57
--- /dev/null
+++ b/testing/web-platform/meta/compute-pressure/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not implementing
diff --git a/testing/web-platform/meta/compute-pressure/compute_pressure_known_sources.https.any.js.ini b/testing/web-platform/meta/compute-pressure/compute_pressure_known_sources.https.any.js.ini
new file mode 100644
index 0000000000..ec3c6e9da8
--- /dev/null
+++ b/testing/web-platform/meta/compute-pressure/compute_pressure_known_sources.https.any.js.ini
@@ -0,0 +1,31 @@
+[compute_pressure_known_sources.https.any.html]
+ [PressureObserver should support at least "cpu"]
+ expected: FAIL
+
+ [PressureObserver must return always the same array]
+ expected: FAIL
+
+ [PressureObserver must return a frozen array]
+ expected: FAIL
+
+
+[compute_pressure_known_sources.https.any.sharedworker.html]
+ [PressureObserver should support at least "cpu"]
+ expected: FAIL
+
+ [PressureObserver must return always the same array]
+ expected: FAIL
+
+ [PressureObserver must return a frozen array]
+ expected: FAIL
+
+
+[compute_pressure_known_sources.https.any.worker.html]
+ [PressureObserver should support at least "cpu"]
+ expected: FAIL
+
+ [PressureObserver must return always the same array]
+ expected: FAIL
+
+ [PressureObserver must return a frozen array]
+ expected: FAIL
diff --git a/testing/web-platform/meta/compute-pressure/compute_pressure_options.https.any.js.ini b/testing/web-platform/meta/compute-pressure/compute_pressure_options.https.any.js.ini
index b64a8c55ca..d9791059c8 100644
--- a/testing/web-platform/meta/compute-pressure/compute_pressure_options.https.any.js.ini
+++ b/testing/web-platform/meta/compute-pressure/compute_pressure_options.https.any.js.ini
@@ -1,40 +1,31 @@
[compute_pressure_options.https.any.worker.html]
- [PressureObserver constructor doesnt throw error for sampleInterval value 0]
+ [PressureObserver observe method doesnt throw error for sampleInterval value 0]
expected: FAIL
- [PressureObserver constructor requires a positive sampleInterval]
+ [PressureObserver observe method requires a positive sampleInterval]
expected: FAIL
- [PressureObserver constructor requires a sampleInterval in unsigned long range]
- expected: FAIL
-
- [PressureObserver constructor succeeds on empty sampleInterval]
+ [PressureObserver observe method requires a sampleInterval in unsigned long range]
expected: FAIL
[compute_pressure_options.https.any.html]
- [PressureObserver constructor doesnt throw error for sampleInterval value 0]
- expected: FAIL
-
- [PressureObserver constructor requires a positive sampleInterval]
+ [PressureObserver observe method doesnt throw error for sampleInterval value 0]
expected: FAIL
- [PressureObserver constructor requires a sampleInterval in unsigned long range]
+ [PressureObserver observe method requires a positive sampleInterval]
expected: FAIL
- [PressureObserver constructor succeeds on empty sampleInterval]
+ [PressureObserver observe method requires a sampleInterval in unsigned long range]
expected: FAIL
[compute_pressure_options.https.any.sharedworker.html]
- [PressureObserver constructor doesnt throw error for sampleInterval value 0]
- expected: FAIL
-
- [PressureObserver constructor requires a positive sampleInterval]
+ [PressureObserver observe method doesnt throw error for sampleInterval value 0]
expected: FAIL
- [PressureObserver constructor requires a sampleInterval in unsigned long range]
+ [PressureObserver observe method requires a positive sampleInterval]
expected: FAIL
- [PressureObserver constructor succeeds on empty sampleInterval]
+ [PressureObserver observe method requires a sampleInterval in unsigned long range]
expected: FAIL
diff --git a/testing/web-platform/meta/compute-pressure/compute_pressure_supported_sources.https.any.js.ini b/testing/web-platform/meta/compute-pressure/compute_pressure_supported_sources.https.any.js.ini
deleted file mode 100644
index 8946e237d7..0000000000
--- a/testing/web-platform/meta/compute-pressure/compute_pressure_supported_sources.https.any.js.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-[compute_pressure_supported_sources.https.any.sharedworker.html]
- [PressureObserver should support at least "cpu"]
- expected: FAIL
-
- [PressureObserver must return always the same array]
- expected: FAIL
-
- [PressureObserver must return a frozen array]
- expected: FAIL
-
-
-[compute_pressure_supported_sources.https.any.html]
- [PressureObserver should support at least "cpu"]
- expected: FAIL
-
- [PressureObserver must return always the same array]
- expected: FAIL
-
- [PressureObserver must return a frozen array]
- expected: FAIL
-
-
-[compute_pressure_supported_sources.https.any.worker.html]
- [PressureObserver should support at least "cpu"]
- expected: FAIL
-
- [PressureObserver must return always the same array]
- expected: FAIL
-
- [PressureObserver must return a frozen array]
- expected: FAIL
diff --git a/testing/web-platform/meta/compute-pressure/compute_pressure_timestamp.https.any.js.ini b/testing/web-platform/meta/compute-pressure/compute_pressure_timestamp.https.any.js.ini
index 200af8190e..110a2696a0 100644
--- a/testing/web-platform/meta/compute-pressure/compute_pressure_timestamp.https.any.js.ini
+++ b/testing/web-platform/meta/compute-pressure/compute_pressure_timestamp.https.any.js.ini
@@ -5,6 +5,12 @@
[disconnect() should update [[LastRecordMap\]\]]
expected: FAIL
+ [Timestamp from update should be greater than timeOrigin]
+ expected: FAIL
+
+ [Timestamp difference between two changes should be continuously increasing]
+ expected: FAIL
+
[compute_pressure_timestamp.https.any.html]
[Faster collector: Timestamp difference between two changes should be higher or equal to the observer sample rate]
@@ -13,6 +19,12 @@
[disconnect() should update [[LastRecordMap\]\]]
expected: FAIL
+ [Timestamp from update should be greater than timeOrigin]
+ expected: FAIL
+
+ [Timestamp difference between two changes should be continuously increasing]
+ expected: FAIL
+
[compute_pressure_timestamp.https.any.worker.html]
[Faster collector: Timestamp difference between two changes should be higher or equal to the observer sample rate]
@@ -20,3 +32,9 @@
[disconnect() should update [[LastRecordMap\]\]]
expected: FAIL
+
+ [Timestamp from update should be greater than timeOrigin]
+ expected: FAIL
+
+ [Timestamp difference between two changes should be continuously increasing]
+ expected: FAIL
diff --git a/testing/web-platform/meta/compute-pressure/idlharness.https.any.js.ini b/testing/web-platform/meta/compute-pressure/idlharness.https.any.js.ini
index 190a1d8b09..23e015eefd 100644
--- a/testing/web-platform/meta/compute-pressure/idlharness.https.any.js.ini
+++ b/testing/web-platform/meta/compute-pressure/idlharness.https.any.js.ini
@@ -20,9 +20,6 @@
[PressureObserver interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
- [PressureObserver interface: operation observe(PressureSource)]
- expected: FAIL
-
[PressureObserver interface: operation unobserve(PressureSource)]
expected: FAIL
@@ -41,12 +38,6 @@
[Stringification of observer]
expected: FAIL
- [PressureObserver interface: observer must inherit property "observe(PressureSource)" with the proper type]
- expected: FAIL
-
- [PressureObserver interface: calling observe(PressureSource) on observer with too few arguments must throw TypeError]
- expected: FAIL
-
[PressureObserver interface: observer must inherit property "unobserve(PressureSource)" with the proper type]
expected: FAIL
@@ -92,6 +83,15 @@
[PressureRecord interface: operation toJSON()]
expected: FAIL
+ [PressureObserver interface: operation observe(PressureSource, optional PressureObserverOptions)]
+ expected: FAIL
+
+ [PressureObserver interface: observer must inherit property "observe(PressureSource, optional PressureObserverOptions)" with the proper type]
+ expected: FAIL
+
+ [PressureObserver interface: calling observe(PressureSource, optional PressureObserverOptions) on observer with too few arguments must throw TypeError]
+ expected: FAIL
+
[idlharness.https.any.worker.html]
[idl_test setup]
@@ -115,9 +115,6 @@
[PressureObserver interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
- [PressureObserver interface: operation observe(PressureSource)]
- expected: FAIL
-
[PressureObserver interface: operation unobserve(PressureSource)]
expected: FAIL
@@ -136,12 +133,6 @@
[Stringification of observer]
expected: FAIL
- [PressureObserver interface: observer must inherit property "observe(PressureSource)" with the proper type]
- expected: FAIL
-
- [PressureObserver interface: calling observe(PressureSource) on observer with too few arguments must throw TypeError]
- expected: FAIL
-
[PressureObserver interface: observer must inherit property "unobserve(PressureSource)" with the proper type]
expected: FAIL
@@ -187,6 +178,15 @@
[PressureRecord interface: operation toJSON()]
expected: FAIL
+ [PressureObserver interface: operation observe(PressureSource, optional PressureObserverOptions)]
+ expected: FAIL
+
+ [PressureObserver interface: observer must inherit property "observe(PressureSource, optional PressureObserverOptions)" with the proper type]
+ expected: FAIL
+
+ [PressureObserver interface: calling observe(PressureSource, optional PressureObserverOptions) on observer with too few arguments must throw TypeError]
+ expected: FAIL
+
[idlharness.https.any.sharedworker.html]
[idl_test setup]
@@ -210,9 +210,6 @@
[PressureObserver interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
- [PressureObserver interface: operation observe(PressureSource)]
- expected: FAIL
-
[PressureObserver interface: operation unobserve(PressureSource)]
expected: FAIL
@@ -231,12 +228,6 @@
[Stringification of observer]
expected: FAIL
- [PressureObserver interface: observer must inherit property "observe(PressureSource)" with the proper type]
- expected: FAIL
-
- [PressureObserver interface: calling observe(PressureSource) on observer with too few arguments must throw TypeError]
- expected: FAIL
-
[PressureObserver interface: observer must inherit property "unobserve(PressureSource)" with the proper type]
expected: FAIL
@@ -281,3 +272,12 @@
[PressureRecord interface: operation toJSON()]
expected: FAIL
+
+ [PressureObserver interface: operation observe(PressureSource, optional PressureObserverOptions)]
+ expected: FAIL
+
+ [PressureObserver interface: observer must inherit property "observe(PressureSource, optional PressureObserverOptions)" with the proper type]
+ expected: FAIL
+
+ [PressureObserver interface: calling observe(PressureSource, optional PressureObserverOptions) on observer with too few arguments must throw TypeError]
+ expected: FAIL
diff --git a/testing/web-platform/meta/compute-pressure/observe_return_type.https.any.js.ini b/testing/web-platform/meta/compute-pressure/observe_return_type.https.any.js.ini
new file mode 100644
index 0000000000..bb341f2eff
--- /dev/null
+++ b/testing/web-platform/meta/compute-pressure/observe_return_type.https.any.js.ini
@@ -0,0 +1,13 @@
+[observe_return_type.https.any.sharedworker.html]
+ [PressureObserver.observe() is idempotent]
+ expected: FAIL
+
+
+[observe_return_type.https.any.worker.html]
+ [PressureObserver.observe() is idempotent]
+ expected: FAIL
+
+
+[observe_return_type.https.any.html]
+ [PressureObserver.observe() is idempotent]
+ expected: FAIL
diff --git a/testing/web-platform/meta/conformance-checkers/__dir__.ini b/testing/web-platform/meta/conformance-checkers/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/conformance-checkers/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/content-dpr/__dir__.ini b/testing/web-platform/meta/content-dpr/__dir__.ini
index 2ef043b928..b80e19f4a9 100644
--- a/testing/web-platform/meta/content-dpr/__dir__.ini
+++ b/testing/web-platform/meta/content-dpr/__dir__.ini
@@ -1 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1611532
implementation-status: backlog
diff --git a/testing/web-platform/meta/content-index/__dir__.ini b/testing/web-platform/meta/content-index/__dir__.ini
index 4652b4d3fe..b38b31f742 100644
--- a/testing/web-platform/meta/content-index/__dir__.ini
+++ b/testing/web-platform/meta/content-index/__dir__.ini
@@ -1 +1,2 @@
+implementation-status: not-implementing
lsan-allowed: [NS_NewRunnableFunction, detail::ProxyRelease, mozilla::SupportsThreadSafeWeakPtr, mozilla::ipc::BackgroundChildImpl::AllocPRemoteWorkerChild]
diff --git a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-from-serviceworker.https.html.ini b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-from-serviceworker.https.html.ini
index 1f3b994d86..a2ac0c2800 100644
--- a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-from-serviceworker.https.html.ini
+++ b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-from-serviceworker.https.html.ini
@@ -1,9 +1,11 @@
[frame-ancestors-from-serviceworker.https.html]
expected:
- if (os == "linux") and asan and not fission: [OK, CRASH]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "linux") and not fission and not debug: [OK, CRASH]
if (os == "mac") and not debug: [OK, TIMEOUT]
if (os == "android") and not debug: [OK, TIMEOUT]
[A 'frame-ancestors' CSP directive set from a serviceworker response with a value 'none' should block rendering.]
expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "mac") and not debug: [PASS, TIMEOUT]
if (os == "android") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html.ini b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html.ini
index b7c2b0bb97..878248f99d 100644
--- a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html.ini
+++ b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html.ini
@@ -2,7 +2,3 @@
expected:
if (os == "mac") and not debug: [OK, TIMEOUT]
if (os == "android") and not debug: [OK, TIMEOUT]
- [A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.]
- expected:
- if (os == "mac") and not debug: [PASS, NOTRUN]
- if (os == "android") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html.ini b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html.ini
index c4bc352850..6383173f21 100644
--- a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html.ini
+++ b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html.ini
@@ -2,7 +2,3 @@
expected:
if (os == "mac") and not debug: [OK, TIMEOUT]
if (os == "android") and not debug: [OK, TIMEOUT]
- [A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.]
- expected:
- if (os == "mac") and not debug: [PASS, NOTRUN]
- if (os == "android") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html.ini b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html.ini
index 8f9dab50d1..98321b223f 100644
--- a/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html.ini
+++ b/testing/web-platform/meta/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html.ini
@@ -2,7 +2,3 @@
expected:
if (os == "mac") and not debug: [OK, TIMEOUT]
if (os == "android") and not debug: [OK, TIMEOUT]
- [A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.]
- expected:
- if (os == "mac") and not debug: [PASS, NOTRUN]
- if (os == "android") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/content-security-policy/inside-worker/sharedworker-script-src.sub.html.ini b/testing/web-platform/meta/content-security-policy/inside-worker/sharedworker-script-src.sub.html.ini
index 0ad2e3eba5..6df007a640 100644
--- a/testing/web-platform/meta/content-security-policy/inside-worker/sharedworker-script-src.sub.html.ini
+++ b/testing/web-platform/meta/content-security-policy/inside-worker/sharedworker-script-src.sub.html.ini
@@ -1,3 +1,4 @@
[sharedworker-script-src.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Reports are sent for http: with default-src 'self']
+ expected:
+ if (processor == "x86") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/contenteditable/__dir__.ini b/testing/web-platform/meta/contenteditable/__dir__.ini
index daf68383df..1a43bd4d85 100644
--- a/testing/web-platform/meta/contenteditable/__dir__.ini
+++ b/testing/web-platform/meta/contenteditable/__dir__.ini
@@ -1 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1291467
+implementation-status: backlog
leak-threshold: [default:51200]
diff --git a/testing/web-platform/meta/cookie-store/__dir__.ini b/testing/web-platform/meta/cookie-store/__dir__.ini
index 7872d5878d..50828dcc79 100644
--- a/testing/web-platform/meta/cookie-store/__dir__.ini
+++ b/testing/web-platform/meta/cookie-store/__dir__.ini
@@ -1,2 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1475599
implementation-status: backlog
lsan-allowed: [Alloc, Malloc, Then, mozilla::BasePrincipal::CreateContentPrincipal, mozilla::dom::DocGroup::Create, mozilla::dom::ServiceWorkerJobQueue::RunJob, mozilla::dom::ServiceWorkerManager::Unregister, mozilla::dom::ServiceWorkerRegistrationMainThread::Unregister, mozilla::dom::UnregisterCallback::UnregisterCallback, mozilla::net::nsStandardURL::TemplatedMutator, operator]
diff --git a/testing/web-platform/meta/cookie-store/cookieStoreManager_getSubscriptions_multiple.https.any.js.ini b/testing/web-platform/meta/cookie-store/cookieStoreManager_getSubscriptions_multiple.https.any.js.ini
index e8dcb70198..8cfe93049e 100644
--- a/testing/web-platform/meta/cookie-store/cookieStoreManager_getSubscriptions_multiple.https.any.js.ini
+++ b/testing/web-platform/meta/cookie-store/cookieStoreManager_getSubscriptions_multiple.https.any.js.ini
@@ -1,6 +1,10 @@
[cookieStoreManager_getSubscriptions_multiple.https.any.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[getSubscriptions returns a subscription passed to subscribe]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT]
+ FAIL
[cookieStoreManager_getSubscriptions_multiple.https.any.serviceworker.html]
diff --git a/testing/web-platform/meta/cookie-store/cookieStore_getAll_set_basic.https.any.js.ini b/testing/web-platform/meta/cookie-store/cookieStore_getAll_set_basic.https.any.js.ini
index 534bdcecd1..072bc4e482 100644
--- a/testing/web-platform/meta/cookie-store/cookieStore_getAll_set_basic.https.any.js.ini
+++ b/testing/web-platform/meta/cookie-store/cookieStore_getAll_set_basic.https.any.js.ini
@@ -4,5 +4,7 @@
[cookieStore_getAll_set_basic.https.any.serviceworker.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[cookieStore.getAll returns the cookie written by cookieStore.set]
expected: FAIL
diff --git a/testing/web-platform/meta/cookie-store/cookieStore_get_arguments.https.any.js.ini b/testing/web-platform/meta/cookie-store/cookieStore_get_arguments.https.any.js.ini
index 9c4b8f3c4b..089f2b62be 100644
--- a/testing/web-platform/meta/cookie-store/cookieStore_get_arguments.https.any.js.ini
+++ b/testing/web-platform/meta/cookie-store/cookieStore_get_arguments.https.any.js.ini
@@ -1,4 +1,6 @@
[cookieStore_get_arguments.https.any.serviceworker.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[cookieStore.get with no arguments returns TypeError]
expected: FAIL
diff --git a/testing/web-platform/meta/cookie-store/cookieStore_get_set_ordering.https.any.js.ini b/testing/web-platform/meta/cookie-store/cookieStore_get_set_ordering.https.any.js.ini
index bbf52866ca..adf995f38f 100644
--- a/testing/web-platform/meta/cookie-store/cookieStore_get_set_ordering.https.any.js.ini
+++ b/testing/web-platform/meta/cookie-store/cookieStore_get_set_ordering.https.any.js.ini
@@ -7,6 +7,8 @@
[cookieStore_get_set_ordering.https.any.serviceworker.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[Set three simple origin session cookies sequentially and ensure they all end up in the cookie jar in order.]
expected: FAIL
diff --git a/testing/web-platform/meta/cookies/attributes/attributes-ctl.sub.html.ini b/testing/web-platform/meta/cookies/attributes/attributes-ctl.sub.html.ini
index 2aa54d2105..257448fa2e 100644
--- a/testing/web-platform/meta/cookies/attributes/attributes-ctl.sub.html.ini
+++ b/testing/web-platform/meta/cookies/attributes/attributes-ctl.sub.html.ini
@@ -1,292 +1,10 @@
[attributes-ctl.sub.html]
- [Cookie with %x0 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 after Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 after Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
[Cookie with %x9 after Secure attribute is handled correctly.]
expected: FAIL
- [Cookie with %xa after Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xa after Path attribute value is handled correctly.]
- expected: FAIL
-
[Cookie with %xa in Max-Age attribute value is handled correctly.]
expected: FAIL
- [Cookie with %xa after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xa after Expires attribute value is handled correctly.]
- expected: FAIL
-
[Cookie with %xa in Secure attribute is handled correctly.]
expected: FAIL
@@ -296,81 +14,9 @@
[Cookie with %xa in SameSite attribute value is handled correctly.]
expected: FAIL
- [Cookie with %xb in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xd after Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xd after Path attribute value is handled correctly.]
- expected: FAIL
-
[Cookie with %xd in Max-Age attribute value is handled correctly.]
expected: FAIL
- [Cookie with %xd after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xd after Expires attribute value is handled correctly.]
- expected: FAIL
-
[Cookie with %xd in Secure attribute is handled correctly.]
expected: FAIL
@@ -379,673 +25,3 @@
[Cookie with %xd in SameSite attribute value is handled correctly.]
expected: FAIL
-
- [Cookie with %xe in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in Domain attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in Path attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f after Max-Age attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f after Expires attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f after Secure attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in HttpOnly attribute is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x0 after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x2 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x3 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x4 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x5 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x6 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x8 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xa after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xb in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xc in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xd after SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xe in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %xf in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x10 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x11 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x12 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x13 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x14 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x15 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x16 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x17 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x18 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x19 in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1a in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1b in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1c in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1d in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1e in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x1f in SameSite attribute value is handled correctly.]
- expected: FAIL
-
- [Cookie with %x7f in SameSite attribute value is handled correctly.]
- expected: FAIL
-
diff --git a/testing/web-platform/meta/cookies/name/name-ctl.html.ini b/testing/web-platform/meta/cookies/name/name-ctl.html.ini
index a4a6c8eebf..db77c80b75 100644
--- a/testing/web-platform/meta/cookies/name/name-ctl.html.ini
+++ b/testing/web-platform/meta/cookies/name/name-ctl.html.ini
@@ -1,7 +1,4 @@
[name-ctl.html]
- [Cookie with %x0 in name is rejected (DOM).]
- expected: FAIL
-
[Cookie with %x9 in name is accepted (DOM).]
expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__host.document-cookie.html.ini b/testing/web-platform/meta/cookies/prefix/__host.document-cookie.html.ini
deleted file mode 100644
index 6f8ab2d4cb..0000000000
--- a/testing/web-platform/meta/cookies/prefix/__host.document-cookie.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[__host.document-cookie.html]
- [__HoSt: Non-secure origin: 'Path=/;']
- expected: FAIL
-
- [__HoSt: Non-secure origin: 'Path=/;domain=web-platform.test']
- expected: FAIL
-
- [__HoSt: Non-secure origin: 'Path=/;MaxAge=10']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__host.document-cookie.https.html.ini b/testing/web-platform/meta/cookies/prefix/__host.document-cookie.https.html.ini
deleted file mode 100644
index cf3ab5fa14..0000000000
--- a/testing/web-platform/meta/cookies/prefix/__host.document-cookie.https.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[__host.document-cookie.https.html]
- [__HoSt: Secure origin: Does not set 'Path=/;']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; ']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; MaxAge=10']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Secure; Path=/cookies/resources/list.py']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__host.header.html.ini b/testing/web-platform/meta/cookies/prefix/__host.header.html.ini
index d6dbc27575..05c87562a6 100644
--- a/testing/web-platform/meta/cookies/prefix/__host.header.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__host.header.html.ini
@@ -1,14 +1,3 @@
[__host.header.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__HoSt: Non-secure origin: Does not set 'Path=/;']
- expected: FAIL
-
- [__HoSt: Non-secure origin: Does not set 'Path=/;domain=web-platform.test']
- expected: FAIL
-
- [__HoSt: Non-secure origin: Does not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__HoSt: Non-secure origin: Does not set 'Path=/;HttpOnly']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__host.header.https.html.ini b/testing/web-platform/meta/cookies/prefix/__host.header.https.html.ini
index e7559b063a..5753abc508 100644
--- a/testing/web-platform/meta/cookies/prefix/__host.header.https.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__host.header.https.html.ini
@@ -1,34 +1,22 @@
[__host.header.https.html]
expected:
if (processor == "x86") and debug: [OK, TIMEOUT]
- [__HoSt: Secure origin: Does not set 'Path=/;']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; ']
- expected: FAIL
-
- [__HoSt: Secure origin: Does not set 'Path=/;MaxAge=10']
- expected: FAIL
[__HoSt: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; MaxAge=10']
expected:
- if (processor == "x86") and debug: [FAIL, NOTRUN]
- FAIL
+ if (processor == "x86") and debug: [PASS, FAIL, NOTRUN]
[__HoSt: Secure origin: Does not set 'Path=/;HttpOnly']
expected:
- if (processor == "x86") and debug: [FAIL, NOTRUN]
- FAIL
+ if (processor == "x86") and debug: [PASS, FAIL, NOTRUN]
[__HoSt: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; HttpOnly']
expected:
- if (processor == "x86") and debug: [FAIL, NOTRUN]
- FAIL
+ if (processor == "x86") and debug: [PASS, FAIL, NOTRUN]
[__HoSt: Secure origin: Does not set 'Secure; Path=/cookies/resources/list.py']
expected:
- if (processor == "x86") and debug: [FAIL, NOTRUN]
- FAIL
+ if (processor == "x86") and debug: [PASS, FAIL, NOTRUN]
[__Host: Secure origin: Does not set 'Secure; Path=/; Domain=web-platform.test; MaxAge=10']
expected:
diff --git a/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.html.ini b/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.html.ini
index 45e9ad21b9..8bee7cdd73 100644
--- a/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.html.ini
@@ -1,11 +1,3 @@
[__secure.document-cookie.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;domain=web-platform.test']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.https.html.ini b/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.https.html.ini
index a6c32ec84c..cf0e874625 100644
--- a/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.https.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__secure.document-cookie.https.html.ini
@@ -1,11 +1,3 @@
[__secure.document-cookie.https.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__SeCuRe: Secure origin: Should not set 'Path=/;']
- expected: FAIL
-
- [__SeCuRe: Secure origin: Should not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__SeCuRe: Secure origin: Should not set 'Path=/;domain=web-platform.test']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__secure.header.html.ini b/testing/web-platform/meta/cookies/prefix/__secure.header.html.ini
index cd08b714d9..af14d52d39 100644
--- a/testing/web-platform/meta/cookies/prefix/__secure.header.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__secure.header.html.ini
@@ -1,14 +1,3 @@
[__secure.header.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;domain=web-platform.test']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: Should not set 'Path=/;HttpOnly']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/__secure.header.https.html.ini b/testing/web-platform/meta/cookies/prefix/__secure.header.https.html.ini
index e2955b8945..f6c451a0d9 100644
--- a/testing/web-platform/meta/cookies/prefix/__secure.header.https.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/__secure.header.https.html.ini
@@ -1,15 +1,4 @@
+prefs: [network.cookie.cookieBehavior.optInPartitioning:false]
[__secure.header.https.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__SeCuRe: secure origin: Should not set 'Path=/;']
- expected: FAIL
-
- [__SeCuRe: secure origin: Should not set 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__SeCuRe: secure origin: Should not set 'Path=/;HttpOnly']
- expected: FAIL
-
- [__SeCuRe: secure origin: Should not set 'Path=/;domain=not-web-platform.test']
- expected:
- if not early_beta_or_earlier: FAIL
diff --git a/testing/web-platform/meta/cookies/prefix/document-cookie.non-secure.html.ini b/testing/web-platform/meta/cookies/prefix/document-cookie.non-secure.html.ini
index e577a52b78..b5df822251 100644
--- a/testing/web-platform/meta/cookies/prefix/document-cookie.non-secure.html.ini
+++ b/testing/web-platform/meta/cookies/prefix/document-cookie.non-secure.html.ini
@@ -1,20 +1,3 @@
[document-cookie.non-secure.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [__SeCuRe: Non-secure origin: 'Path=/;']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: 'Path=/;domain=web-platform.test']
- expected: FAIL
-
- [__SeCuRe: Non-secure origin: 'Path=/;MaxAge=10']
- expected: FAIL
-
- [__HoSt: Non-secure origin: 'Path=/; ']
- expected: FAIL
-
- [__HoSt: Non-secure origin: 'Path=/; domain=web-platform.test']
- expected: FAIL
-
- [__HoSt: Non-secure origin: 'Path=/; MaxAge=10']
- expected: FAIL
diff --git a/testing/web-platform/meta/cookies/samesite/iframe.document.https.html.ini b/testing/web-platform/meta/cookies/samesite/iframe.document.https.html.ini
index cd18ab2cbd..3285d774ca 100644
--- a/testing/web-platform/meta/cookies/samesite/iframe.document.https.html.ini
+++ b/testing/web-platform/meta/cookies/samesite/iframe.document.https.html.ini
@@ -1,3 +1,4 @@
+prefs: [network.cookie.cookieBehavior.optInPartitioning:false]
[iframe.document.https.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/cookies/third-party-cookies/third-party-cookies.tentative.https.html.ini b/testing/web-platform/meta/cookies/third-party-cookies/third-party-cookies.tentative.https.html.ini
index 9cd88e3d85..0c0175fcd5 100644
--- a/testing/web-platform/meta/cookies/third-party-cookies/third-party-cookies.tentative.https.html.ini
+++ b/testing/web-platform/meta/cookies/third-party-cookies/third-party-cookies.tentative.https.html.ini
@@ -1,6 +1,11 @@
+prefs: [network.cookie.cookieBehavior.optInPartitioning:true]
[third-party-cookies.tentative.https.html]
+ expected:
+ if (os == "android") and debug: CRASH
[3P fetch: Cookies are not accessible via HTTP]
- expected: [FAIL, PASS]
+ expected:
+ if os == "android": FAIL
[3P fetch: Cross site window setting HTTP cookies]
- expected: [FAIL, PASS]
+ expected:
+ if os == "android": FAIL
diff --git a/testing/web-platform/meta/cookies/value/value-ctl.html.ini b/testing/web-platform/meta/cookies/value/value-ctl.html.ini
index 803fca4000..035d9aee2f 100644
--- a/testing/web-platform/meta/cookies/value/value-ctl.html.ini
+++ b/testing/web-platform/meta/cookies/value/value-ctl.html.ini
@@ -1,7 +1,4 @@
[value-ctl.html]
- [Cookie with %x0 in value is rejected (DOM).]
- expected: FAIL
-
[Cookie with %xa in value is rejected (DOM).]
expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/digital-identity.https.html.ini b/testing/web-platform/meta/credential-management/digital-identity.https.html.ini
index b65637a456..72f5534a4c 100644
--- a/testing/web-platform/meta/credential-management/digital-identity.https.html.ini
+++ b/testing/web-platform/meta/credential-management/digital-identity.https.html.ini
@@ -1,13 +1,4 @@
[digital-identity.https.html]
- [navigator.credentials.get() API works in toplevel frame.]
- expected: FAIL
-
- [navigator.credentials.get() API fails if IdentityCredentialRequestOptions::providers is not specified.]
- expected: FAIL
-
- [navigator.credentials.get() API fails if there are no providers.]
- expected: FAIL
-
[navigator.identity.get() API works in toplevel frame.]
expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html.ini
deleted file mode 100644
index 4d4461cb1e..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[abort-multiple-gets-through-first-idp.https.html]
- expected: ERROR
- [Test abort signal for a multi IDP request by aborting the first IDP]
- expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html.ini
deleted file mode 100644
index 6739dd2432..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[abort-multiple-gets-through-second-idp.https.html]
- expected: ERROR
- [Test abort signal for a multi IDP request by aborting the second IDP]
- expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html.ini
new file mode 100644
index 0000000000..f4b68663b8
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html.ini
@@ -0,0 +1,4 @@
+[fedcm-multi-idp-abort.https.html]
+ expected: TIMEOUT
+ [Test that the abort signal works when multiple IDPs are used.]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html.ini
new file mode 100644
index 0000000000..877afc2199
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html.ini
@@ -0,0 +1,7 @@
+[fedcm-multi-idp-basic.https.html]
+ expected: TIMEOUT
+ [Multi IDP FedCM call succeeds when picking the first account.]
+ expected: TIMEOUT
+
+ [Multi IDP FedCM call succeeds when picking account from the second IDP.]
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html.ini
new file mode 100644
index 0000000000..b0ba22c91f
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html.ini
@@ -0,0 +1,7 @@
+[fedcm-multi-idp-context.https.html]
+ expected: TIMEOUT
+ [FedCM multi IDP call defaults to 'signin' context.]
+ expected: TIMEOUT
+
+ [FedCM multi IDP with non-default context.]
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html.ini
new file mode 100644
index 0000000000..ccb377dfcf
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html.ini
@@ -0,0 +1,10 @@
+[fedcm-multi-idp-mediation-optional.https.html]
+ expected: TIMEOUT
+ [Mediation optional can succeed without a returning account.]
+ expected: TIMEOUT
+
+ [Mediation optional automatically succeeds when there is one returning account.]
+ expected: NOTRUN
+
+ [Mediation optional can succeed when there is more than one returning account.]
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html.ini
new file mode 100644
index 0000000000..6e6ba1b34c
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html.ini
@@ -0,0 +1,10 @@
+[fedcm-multi-idp-mediation-silent.https.html]
+ expected: TIMEOUT
+ [Mediation silent fails if there is no returning account.]
+ expected: TIMEOUT
+
+ [Mediation silent succeeds when there is one returning account.]
+ expected: NOTRUN
+
+ [Mediation silent fails when there is more than one returning account.]
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html.ini
deleted file mode 100644
index 9cc9e7d60f..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[get-before-and-after-onload.https.html]
- expected:
- if os == "win": ERROR
- [ERROR, CRASH]
- [When there's a `get` call before onload, a `get` call which occurs after onload but before the first `get` call resolves, should be rejected.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html.ini
deleted file mode 100644
index 94219488ba..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[get-before-and-during-onload.https.html]
- expected:
- if os == "win": ERROR
- [ERROR, CRASH]
- [A `get` call before onload and a `get` call during onload should be combined.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html.ini
deleted file mode 100644
index cbe39824f8..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[get-before-onload-and-during-dom-content-loaded.https.html]
- expected:
- if os == "win": ERROR
- [ERROR, CRASH]
- [A `get` call before onload and a `get` call during DOMContentLoaded event should combine despite being called from different tasks.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html.ini
deleted file mode 100644
index bff023c0b7..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[multiple-gets-after-abort.https.html]
- expected: ERROR
- [Multiple gets after aborting a multi IDP request should work]
- expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html.ini
deleted file mode 100644
index ab2816bba6..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[multiple-gets-after-onload.https.html]
- expected: ERROR
- [No `get` calls before or during onload, multiple `get` calls after onload in the same task are allowed.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html.ini
deleted file mode 100644
index c501cd31ab..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[multiple-gets-before-onload.https.html]
- expected: ERROR
- [Multiple get calls before window onload are allowed.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html.ini
deleted file mode 100644
index 0ca0731487..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[multiple-gets-during-onload.https.html]
- expected:
- if os == "linux": ERROR
- [ERROR, CRASH]
- [No `get` calls before onload, multiple `get` calls during onload are allowed.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-after-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-after-onload.https.html.ini
deleted file mode 100644
index 4a39256958..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-after-onload.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[single-get-after-onload.https.html]
- expected:
- if os == "win": [TIMEOUT, ERROR, CRASH]
- TIMEOUT
- [Single `get` call after onload is allowed.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-before-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-before-onload.https.html.ini
deleted file mode 100644
index 9626d221cb..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-before-onload.https.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[single-get-before-onload.https.html]
- expected: TIMEOUT
- [Single `get` call before onload is allowed even if account is selected after.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-during-onload.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-during-onload.https.html.ini
deleted file mode 100644
index f29a2a3df7..0000000000
--- a/testing/web-platform/meta/credential-management/fedcm-multi-idp/single-get-during-onload.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[single-get-during-onload.https.html]
- expected:
- if os == "mac": [TIMEOUT, ERROR, CRASH]
- TIMEOUT
- [Single `get` call during onload is allowed.]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/credential-management/fedcm-register/fedcm-no-registered-idps.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-register/fedcm-no-registered-idps.https.html.ini
new file mode 100644
index 0000000000..007e286734
--- /dev/null
+++ b/testing/web-platform/meta/credential-management/fedcm-register/fedcm-no-registered-idps.https.html.ini
@@ -0,0 +1,3 @@
+[fedcm-no-registered-idps.https.html]
+ [When no providers are registered an error should be returned.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html.ini b/testing/web-platform/meta/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html.ini
index 2a26855088..fa6a8efa84 100644
--- a/testing/web-platform/meta/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html.ini
+++ b/testing/web-platform/meta/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html.ini
@@ -1,4 +1,4 @@
[fedcm-same-site-none.https.html]
expected: TIMEOUT
- [FedCM requests should be considered cross-origin and therefore not send SameSite=Strict cookies.]
+ [FedCM requests should be considered cross-origin and therefore not send SameSite=Strict or Lax cookies.]
expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini
index 86289cdac2..eae50d59af 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini
@@ -1,2 +1,2 @@
[bidi-005.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini
index c48ebe38be..6933a5148c 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini
@@ -1,2 +1,2 @@
[bidi-006.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini
index 3ad433b3b2..8575065fe8 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini
@@ -1,2 +1,2 @@
[bidi-007.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini
index 78e74fba22..71239fd80f 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini
@@ -1,2 +1,2 @@
[bidi-008.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini
index 5512b703ee..24f5c324f0 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini
@@ -1,2 +1,2 @@
[bidi-009.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini
index 6a99a28b88..c68495f6a8 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini
@@ -1,2 +1,2 @@
[bidi-010.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-005b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-005b.xht.ini
index 1796c03d5f..6aaee0e243 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-005b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-005b.xht.ini
@@ -1,2 +1,2 @@
[bidi-005b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-006b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-006b.xht.ini
index 196a9306f4..3491d8ca8e 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-006b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-006b.xht.ini
@@ -1,2 +1,2 @@
[bidi-006b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-007b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-007b.xht.ini
index 0275ad54a6..f753d0d72c 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-007b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-007b.xht.ini
@@ -1,2 +1,2 @@
[bidi-007b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-008b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-008b.xht.ini
index fb4ac97311..290e2f793e 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-008b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-008b.xht.ini
@@ -1,2 +1,2 @@
[bidi-008b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-009b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-009b.xht.ini
index 344e4a508e..a08b7ed4dd 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-009b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-009b.xht.ini
@@ -1,2 +1,2 @@
[bidi-009b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-010b.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-010b.xht.ini
index 7c08a8c70f..c86aba8184 100644
--- a/testing/web-platform/meta/css/CSS2/bidi-text/bidi-010b.xht.ini
+++ b/testing/web-platform/meta/css/CSS2/bidi-text/bidi-010b.xht.ini
@@ -1,2 +1,2 @@
[bidi-010b.xht]
- expected: FAIL
+ prefs: [layout.css.letter-spacing.model:2]
diff --git a/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-000.xht.ini b/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-000.xht.ini
new file mode 100644
index 0000000000..029f248ed5
--- /dev/null
+++ b/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-000.xht.ini
@@ -0,0 +1,2 @@
+[c542-letter-sp-000.xht]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-001.xht.ini b/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-001.xht.ini
new file mode 100644
index 0000000000..e7bfc288d1
--- /dev/null
+++ b/testing/web-platform/meta/css/CSS2/css1/c542-letter-sp-001.xht.ini
@@ -0,0 +1,2 @@
+[c542-letter-sp-001.xht]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/CSS2/text/__dir__.ini b/testing/web-platform/meta/css/CSS2/text/__dir__.ini
index daf68383df..667bc0c992 100644
--- a/testing/web-platform/meta/css/CSS2/text/__dir__.ini
+++ b/testing/web-platform/meta/css/CSS2/text/__dir__.ini
@@ -1 +1,2 @@
leak-threshold: [default:51200]
+prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-center-offset-change.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-center-offset-change.html.ini
new file mode 100644
index 0000000000..deec3c9b71
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-center-offset-change.html.ini
@@ -0,0 +1,6 @@
+[anchor-center-offset-change.html]
+ [Anchored initially have the same width as the anchor]
+ expected: FAIL
+
+ [Increase the height of the anchor to move the anchor-center offset]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-center-scroll.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-center-scroll.html.ini
new file mode 100644
index 0000000000..fb251a6fd4
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-center-scroll.html.ini
@@ -0,0 +1,2 @@
+[anchor-center-scroll.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-fallback-invalidation.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-fallback-invalidation.html.ini
new file mode 100644
index 0000000000..b7b639ff90
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-fallback-invalidation.html.ini
@@ -0,0 +1,3 @@
+[anchor-fallback-invalidation.html]
+ [Correct invalidation when fallbacks match the old style]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-inherited.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-inherited.html.ini
new file mode 100644
index 0000000000..68ad07f80e
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-inherited.html.ini
@@ -0,0 +1,3 @@
+[anchor-inherited.html]
+ [.child 1]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-invalid-fallback.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-invalid-fallback.html.ini
new file mode 100644
index 0000000000..219297d169
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-invalid-fallback.html.ini
@@ -0,0 +1,9 @@
+[anchor-invalid-fallback.html]
+ [Element can be anchor positioned]
+ expected: FAIL
+
+ [Element can use <length> fallback if present]
+ expected: FAIL
+
+ [Flip to invalid anchor()]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.html.ini
new file mode 100644
index 0000000000..213f316588
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-chained-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.tentative.html.ini
deleted file mode 100644
index 7fa7db4093..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-001.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[anchor-scroll-chained-001.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.html.ini
new file mode 100644
index 0000000000..173ba0e5b7
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-chained-002.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.tentative.html.ini
deleted file mode 100644
index dcde6d0f2d..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-002.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[anchor-scroll-chained-002.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.html.ini
new file mode 100644
index 0000000000..7319dd60bb
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-chained-003.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.tentative.html.ini
deleted file mode 100644
index 194120a755..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-003.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[anchor-scroll-chained-003.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.html.ini
new file mode 100644
index 0000000000..5676291c91
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-chained-004.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.tentative.html.ini
deleted file mode 100644
index 707a25ba8f..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-004.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[anchor-scroll-chained-004.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.html.ini
new file mode 100644
index 0000000000..aac86791da
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-chained-fallback.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html.ini
deleted file mode 100644
index 102b40de4b..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[anchor-scroll-chained-fallback.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-overflow-hidden.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-overflow-hidden.html.ini
new file mode 100644
index 0000000000..69a3691f90
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-overflow-hidden.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-overflow-hidden.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-013.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-013.html.ini
new file mode 100644
index 0000000000..9955c5c3e2
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-013.html.ini
@@ -0,0 +1,9 @@
+[anchor-scroll-position-try-013.html]
+ [anchor-scroll-position-try-013]
+ expected: FAIL
+
+ [anchor-scroll-position-try-013 1]
+ expected: FAIL
+
+ [anchor-scroll-position-try-013 2]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-014.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-014.html.ini
new file mode 100644
index 0000000000..2aba84c898
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-position-try-014.html.ini
@@ -0,0 +1,9 @@
+[anchor-scroll-position-try-014.html]
+ [anchor-scroll-position-try-014]
+ expected: FAIL
+
+ [anchor-scroll-position-try-014 1]
+ expected: FAIL
+
+ [anchor-scroll-position-try-014 2]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-scrollable-anchor.html.ini b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-scrollable-anchor.html.ini
new file mode 100644
index 0000000000..de2a413dc6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/anchor-scroll-scrollable-anchor.html.ini
@@ -0,0 +1,2 @@
+[anchor-scroll-scrollable-anchor.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/at-position-try-cssom.html.ini b/testing/web-platform/meta/css/css-anchor-position/at-position-try-cssom.html.ini
index e998436951..419f99918a 100644
--- a/testing/web-platform/meta/css/css-anchor-position/at-position-try-cssom.html.ini
+++ b/testing/web-platform/meta/css/css-anchor-position/at-position-try-cssom.html.ini
@@ -4,3 +4,789 @@
[CSSPositionTryRule.style.setProperty setting allowed and disallowed properties]
expected: FAIL
+
+ [CSSPositionTryDescriptors.item]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.cssText]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-top)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-top)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-top\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-top\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginTop\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginTop\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-right)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-right)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-right\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-right\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginRight\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginRight\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-bottom)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-bottom)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-bottom\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-bottom\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBottom\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBottom\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-left)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-left)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-left\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-left\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginLeft\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginLeft\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-block)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-block)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlock\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlock\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-block-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-block-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block-start\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block-start\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlockStart\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlockStart\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-block-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-block-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block-end\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-block-end\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlockEnd\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginBlockEnd\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-inline)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-inline)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInline\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInline\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-inline-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-inline-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline-start\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline-start\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInlineStart\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInlineStart\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(margin-inline-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(margin-inline-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline-end\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[margin-inline-end\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInlineEnd\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[marginInlineEnd\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(top)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(top)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[top\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[top\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(left)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(left)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[left\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[left\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(right)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(right)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[right\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[right\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(bottom)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(bottom)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[bottom\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[bottom\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-block)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-block)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlock\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlock\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-block-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-block-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block-start\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block-start\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlockStart\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlockStart\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-block-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-block-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block-end\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-block-end\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlockEnd\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetBlockEnd\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-inline)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-inline)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInline\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInline\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-inline-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-inline-start)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline-start\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline-start\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInlineStart\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInlineStart\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-inline-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-inline-end)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline-end\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-inline-end\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInlineEnd\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetInlineEnd\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[width\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[width\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[height\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[height\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(min-width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(min-width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-width\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-width\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minWidth\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minWidth\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(max-width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(max-width)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-width\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-width\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxWidth\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxWidth\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(min-height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(min-height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-height\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-height\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minHeight\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minHeight\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(max-height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(max-height)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-height\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-height\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxHeight\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxHeight\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[block-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[block-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[blockSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[blockSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(min-block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(min-block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-block-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-block-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minBlockSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minBlockSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(max-block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(max-block-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-block-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-block-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxBlockSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxBlockSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inline-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inline-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inlineSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inlineSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(min-inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(min-inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-inline-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[min-inline-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minInlineSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[minInlineSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(max-inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(max-inline-size)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-inline-size\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[max-inline-size\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxInlineSize\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[maxInlineSize\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(place-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(place-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[place-self\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[place-self\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[placeSelf\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[placeSelf\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(align-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(align-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-self\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-self\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignSelf\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignSelf\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(justify-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(justify-self)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[justify-self\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[justify-self\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[justifySelf\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[justifySelf\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(position-anchor)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(position-anchor)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[position-anchor\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[position-anchor\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[positionAnchor\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[positionAnchor\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(inset-area)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(inset-area)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-area\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[inset-area\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetArea\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[insetArea\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(color)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(color)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[color\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[color\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(align-items)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(align-items)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-items\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-items\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignItems\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignItems\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(align-content)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(align-content)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-content\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[align-content\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignContent\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[alignContent\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(background)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(background)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[background\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[background\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(display)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(display)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[display\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[display\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(position)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(position)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[position\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[position\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(writing-mode)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(writing-mode)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[writing-mode\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[writing-mode\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[writingMode\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[writingMode\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(direction)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(direction)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[direction\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[direction\] (get)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.getPropertyValue(syntax)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors.setProperty(syntax)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[syntax\] (set)]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors[syntax\] (get)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/base-style-invalidation.html.ini b/testing/web-platform/meta/css/css-anchor-position/base-style-invalidation.html.ini
new file mode 100644
index 0000000000..9c0e77ffae
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/base-style-invalidation.html.ini
@@ -0,0 +1,3 @@
+[base-style-invalidation.html]
+ [The chosen position options changes when the base style differs]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/idlharness.html.ini b/testing/web-platform/meta/css/css-anchor-position/idlharness.html.ini
index b1873f3724..54a37ef889 100644
--- a/testing/web-platform/meta/css/css-anchor-position/idlharness.html.ini
+++ b/testing/web-platform/meta/css/css-anchor-position/idlharness.html.ini
@@ -22,3 +22,231 @@
[CSSPositionTryRule interface: attribute style]
expected: FAIL
+
+ [CSSPositionTryDescriptors interface: existence and properties of interface object]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface object length]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface object name]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginTop]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginRight]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginBottom]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginLeft]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginBlock]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginBlockStart]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginBlockEnd]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginInline]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginInlineStart]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute marginInlineEnd]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-top]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-right]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-bottom]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-left]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-block]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-block-start]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-block-end]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-inline]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-inline-start]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute margin-inline-end]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetBlock]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetBlockStart]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetBlockEnd]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetInline]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetInlineStart]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetInlineEnd]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute top]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute left]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute right]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute bottom]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-block]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-block-start]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-block-end]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-inline]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-inline-start]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-inline-end]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute width]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute minWidth]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute maxWidth]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute height]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute minHeight]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute maxHeight]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute blockSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute minBlockSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute maxBlockSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inlineSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute minInlineSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute maxInlineSize]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute min-width]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute max-width]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute min-height]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute max-height]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute block-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute min-block-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute max-block-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inline-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute min-inline-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute max-inline-size]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute placeSelf]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute alignSelf]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute justifySelf]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute place-self]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute align-self]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute justify-self]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute positionAnchor]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute position-anchor]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute insetArea]
+ expected: FAIL
+
+ [CSSPositionTryDescriptors interface: attribute inset-area]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/inset-area-in-position-try.html.ini b/testing/web-platform/meta/css/css-anchor-position/inset-area-in-position-try.html.ini
new file mode 100644
index 0000000000..37d5ffe353
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/inset-area-in-position-try.html.ini
@@ -0,0 +1,177 @@
+[inset-area-in-position-try.html]
+ [none]
+ expected: FAIL
+
+ [span-all]
+ expected: FAIL
+
+ [span-all span-all]
+ expected: FAIL
+
+ [top left]
+ expected: FAIL
+
+ [top center]
+ expected: FAIL
+
+ [top right]
+ expected: FAIL
+
+ [center left]
+ expected: FAIL
+
+ [center center]
+ expected: FAIL
+
+ [center right]
+ expected: FAIL
+
+ [bottom left]
+ expected: FAIL
+
+ [bottom center]
+ expected: FAIL
+
+ [bottom right]
+ expected: FAIL
+
+ [start start]
+ expected: FAIL
+
+ [start center]
+ expected: FAIL
+
+ [start end]
+ expected: FAIL
+
+ [center start]
+ expected: FAIL
+
+ [center end]
+ expected: FAIL
+
+ [end start]
+ expected: FAIL
+
+ [end center]
+ expected: FAIL
+
+ [end end]
+ expected: FAIL
+
+ [self-start self-start]
+ expected: FAIL
+
+ [self-start center]
+ expected: FAIL
+
+ [self-start self-end]
+ expected: FAIL
+
+ [center self-start]
+ expected: FAIL
+
+ [center self-end]
+ expected: FAIL
+
+ [self-end self-start]
+ expected: FAIL
+
+ [self-end center]
+ expected: FAIL
+
+ [self-end self-end]
+ expected: FAIL
+
+ [y-start x-start]
+ expected: FAIL
+
+ [y-start center]
+ expected: FAIL
+
+ [y-start x-end]
+ expected: FAIL
+
+ [center x-start]
+ expected: FAIL
+
+ [center x-end]
+ expected: FAIL
+
+ [y-end x-start]
+ expected: FAIL
+
+ [y-end center]
+ expected: FAIL
+
+ [y-end x-end]
+ expected: FAIL
+
+ [y-self-start x-self-start]
+ expected: FAIL
+
+ [y-self-start center]
+ expected: FAIL
+
+ [y-self-start x-self-end]
+ expected: FAIL
+
+ [center x-self-start]
+ expected: FAIL
+
+ [center x-self-end]
+ expected: FAIL
+
+ [y-self-end x-self-start]
+ expected: FAIL
+
+ [y-self-end center]
+ expected: FAIL
+
+ [y-self-end x-self-end]
+ expected: FAIL
+
+ [span-y-self-start span-x-self-end]
+ expected: FAIL
+
+ [span-bottom span-all]
+ expected: FAIL
+
+ [Placement: --top]
+ expected: FAIL
+
+ [Placement: --left]
+ expected: FAIL
+
+ [Placement: --right, --top]
+ expected: FAIL
+
+ [Placement: --bottom, --top]
+ expected: FAIL
+
+ [Placement: --bottom, --right, --top]
+ expected: FAIL
+
+ [Placement: --bottom, --right, --left, --top]
+ expected: FAIL
+
+ [Placement: --bottom, --left, --top, --right]
+ expected: FAIL
+
+ [Placement: --right flip-inline]
+ expected: FAIL
+
+ [Placement: --bottom flip-block]
+ expected: FAIL
+
+ [Placement: --left flip-start]
+ expected: FAIL
+
+ [Placement: --left flip-inline, --top]
+ expected: FAIL
+
+ [Placement: --top flip-block, --left]
+ expected: FAIL
+
+ [Placement: --left flip-start flip-block, --left]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-try-backdrop.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-try-backdrop.html.ini
new file mode 100644
index 0000000000..d872495d7f
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-try-backdrop.html.ini
@@ -0,0 +1,3 @@
+[position-try-backdrop.html]
+ [::backdrop can use position-try-options]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-try-order-inset-area.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-try-order-inset-area.html.ini
new file mode 100644
index 0000000000..ec2a0b0244
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-try-order-inset-area.html.ini
@@ -0,0 +1,81 @@
+[position-try-order-inset-area.html]
+ [--right | --right]
+ expected: FAIL
+
+ [--left | --left]
+ expected: FAIL
+
+ [--top | --top]
+ expected: FAIL
+
+ [--bottom | --bottom]
+ expected: FAIL
+
+ [--right, --left, --bottom, --top | --right]
+ expected: FAIL
+
+ [normal --right, --left, --bottom, --top | --right]
+ expected: FAIL
+
+ [normal --top, --left, --bottom, --right | --top]
+ expected: FAIL
+
+ [most-block-size --right, --left | --right]
+ expected: FAIL
+
+ [most-height --right, --left | --right]
+ expected: FAIL
+
+ [most-inline-size --right, --left | --left]
+ expected: FAIL
+
+ [most-width --right, --left | --left]
+ expected: FAIL
+
+ [most-inline-size --bottom, --top | --bottom]
+ expected: FAIL
+
+ [most-width --bottom, --top | --bottom]
+ expected: FAIL
+
+ [most-block-size --bottom, --top | --top]
+ expected: FAIL
+
+ [most-height --bottom, --top | --top]
+ expected: FAIL
+
+ [most-inline-size --right, --left, --bottom, --top | --bottom]
+ expected: FAIL
+
+ [most-inline-size --right, --left, --top, --bottom | --top]
+ expected: FAIL
+
+ [most-block-size --bottom, --top, --right, --left | --right]
+ expected: FAIL
+
+ [most-block-size --bottom, --top, --left, --right | --left]
+ expected: FAIL
+
+ [most-inline-size --left-sweep, --bottom-sweep | --left-sweep]
+ expected: FAIL
+
+ [most-inline-size --bottom-sweep, --left-sweep | --bottom-sweep]
+ expected: FAIL
+
+ [most-block-size --left-sweep, --bottom-sweep | --left-sweep]
+ expected: FAIL
+
+ [most-block-size --bottom-sweep, --left-sweep | --left-sweep]
+ expected: FAIL
+
+ [most-inline-size --right-sweep, --left-sweep, --bottom-sweep, --top-sweep | --left-sweep]
+ expected: FAIL
+
+ [most-block-size --right-sweep, --left-sweep, --bottom-sweep, --top-sweep | --top-sweep]
+ expected: FAIL
+
+ [most-inline-size\n --right-sweep, --left-sweep, --bottom-sweep, --top-sweep,\n --right, --left, --bottom, --top\n | --left-sweep]
+ expected: FAIL
+
+ [most-block-size\n --right-sweep, --left-sweep, --bottom-sweep, --top-sweep,\n --right, --left, --bottom, --top\n | --right]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.html.ini
new file mode 100644
index 0000000000..3d5d5d875d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-add-no-overflow.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html.ini
deleted file mode 100644
index 120f58423b..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-add-no-overflow.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html.ini
new file mode 100644
index 0000000000..2d8669ecc6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-after-scroll-in.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html.ini
deleted file mode 100644
index 4e48cc764d..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-after-scroll-in.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html.ini
new file mode 100644
index 0000000000..d18631dcb7
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-after-scroll-out.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html.ini
deleted file mode 100644
index fef78484bf..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-after-scroll-out.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html.ini
new file mode 100644
index 0000000000..ceccdb9ca2
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-both-position-fixed.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html.ini
new file mode 100644
index 0000000000..e12c1309f5
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-chained-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html.ini
new file mode 100644
index 0000000000..00d6e9ecab
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-chained-002.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html.ini
new file mode 100644
index 0000000000..0c9539f7f1
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-chained-003.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html.ini
new file mode 100644
index 0000000000..02beaae9cc
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-chained-004.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html.ini
new file mode 100644
index 0000000000..25f7c7c8d1
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-change-anchor.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html.ini
deleted file mode 100644
index 35ead71fcf..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-change-anchor.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html.ini
new file mode 100644
index 0000000000..836b28479d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-change-css-visibility.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html.ini
deleted file mode 100644
index 76c3c60118..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-change-css-visibility.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html.ini
new file mode 100644
index 0000000000..3ea6611e5c
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-css-visibility.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html.ini
deleted file mode 100644
index 278741c7f3..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-css-visibility.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html.ini
new file mode 100644
index 0000000000..b4400a798a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-non-intervening-container.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html.ini
deleted file mode 100644
index 52927f6a6b..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible-non-intervening-container.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html.ini
new file mode 100644
index 0000000000..7c86e8c3dc
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible-stacked-child.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.html.ini
new file mode 100644
index 0000000000..d8c2cf5d30
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-anchors-visible.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.tentative.html.ini
deleted file mode 100644
index 003412f960..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-anchors-visible.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-anchors-visible.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.html.ini
new file mode 100644
index 0000000000..25dc9ae43f
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-no-overflow-scroll.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html.ini
deleted file mode 100644
index 7778b801ba..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-no-overflow-scroll.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html.ini
new file mode 100644
index 0000000000..898d10a473
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-no-overflow-stacked-child.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html.ini
deleted file mode 100644
index 609ceb3c1a..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-no-overflow-stacked-child.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.html.ini
new file mode 100644
index 0000000000..c1f5e52df9
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-no-overflow.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.tentative.html.ini
deleted file mode 100644
index 3a7bbc8636..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-no-overflow.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-no-overflow.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.html.ini
new file mode 100644
index 0000000000..a698919286
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-remove-anchors-visible.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html.ini
deleted file mode 100644
index 8551beb8a4..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-remove-anchors-visible.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.html.ini
new file mode 100644
index 0000000000..7290bac75c
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.html.ini
@@ -0,0 +1,2 @@
+[position-visibility-remove-no-overflow.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html.ini b/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html.ini
deleted file mode 100644
index 2d701034fa..0000000000
--- a/testing/web-platform/meta/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[position-visibility-remove-no-overflow.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor-dynamic.html.ini b/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor-dynamic.html.ini
new file mode 100644
index 0000000000..b4702568e5
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor-dynamic.html.ini
@@ -0,0 +1,6 @@
+[pseudo-element-anchor-dynamic.html]
+ [::before as anchor dynamically generated]
+ expected: FAIL
+
+ [::after as anchor dynamically generated]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor.html.ini b/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor.html.ini
new file mode 100644
index 0000000000..72080d37e8
--- /dev/null
+++ b/testing/web-platform/meta/css/css-anchor-position/pseudo-element-anchor.html.ini
@@ -0,0 +1,6 @@
+[pseudo-element-anchor.html]
+ [::before as anchor]
+ expected: FAIL
+
+ [::after as anchor]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-computed.tentative.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-computed.tentative.html.ini
deleted file mode 100644
index f4ec3b330f..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-computed.tentative.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[animation-delay-end-computed.tentative.html]
- [Property animation-delay-end value 'initial']
- expected: FAIL
-
- [Property animation-delay-end value '-500ms']
- expected: FAIL
-
- [Property animation-delay-end value 'calc(2 * 3s)']
- expected: FAIL
-
- [Property animation-delay-end value '20s, 10s']
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-valid.tentative.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-valid.tentative.html.ini
deleted file mode 100644
index 0809ede942..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-end-valid.tentative.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[animation-delay-end-valid.tentative.html]
- [e.style['animation-delay-end'\] = "-5ms" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-end'\] = "0s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-end'\] = "10s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-end'\] = "20s, 10s" should set the property value]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand-computed.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand-computed.html.ini
deleted file mode 100644
index 52d53d8201..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand-computed.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[animation-delay-shorthand-computed.html]
- [Property animation-delay value '1s 2s']
- expected: FAIL
-
- [Property animation-delay value '1s 2s, 3s']
- expected: FAIL
-
- [Property animation-delay value '1s, 2s 3s']
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand.html.ini
deleted file mode 100644
index 18a633cf66..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-shorthand.html.ini
+++ /dev/null
@@ -1,45 +0,0 @@
-[animation-delay-shorthand.html]
- [e.style['animation-delay'\] = "1s 2s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s, 2s 3s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s" should set animation-delay-end]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s" should set animation-delay-start]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s" should not set unrelated longhands]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s" should set animation-delay-end]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s" should set animation-delay-start]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s" should not set unrelated longhands]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s 4s" should set animation-delay-end]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s 4s" should set animation-delay-start]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s 4s" should not set unrelated longhands]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s, 4s 5s" should set animation-delay-end]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s, 4s 5s" should set animation-delay-start]
- expected: FAIL
-
- [e.style['animation-delay'\] = "1s 2s, 3s, 4s 5s" should not set unrelated longhands]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-computed.tentative.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-computed.tentative.html.ini
deleted file mode 100644
index 8341379e4d..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-computed.tentative.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[animation-delay-start-computed.tentative.html]
- [Property animation-delay-start value 'initial']
- expected: FAIL
-
- [Property animation-delay-start value '-500ms']
- expected: FAIL
-
- [Property animation-delay-start value 'calc(2 * 3s)']
- expected: FAIL
-
- [Property animation-delay-start value '20s, 10s']
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-valid.tentative.html.ini b/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-valid.tentative.html.ini
deleted file mode 100644
index 4ad3bb1e96..0000000000
--- a/testing/web-platform/meta/css/css-animations/parsing/animation-delay-start-valid.tentative.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[animation-delay-start-valid.tentative.html]
- [e.style['animation-delay-start'\] = "-5ms" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-start'\] = "0s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-start'\] = "10s" should set the property value]
- expected: FAIL
-
- [e.style['animation-delay-start'\] = "20s, 10s" should set the property value]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-animations/stability/animation-event-destroy-renderer.html.ini b/testing/web-platform/meta/css/css-animations/stability/animation-event-destroy-renderer.html.ini
index 4fe69a873d..eaf3d74352 100644
--- a/testing/web-platform/meta/css/css-animations/stability/animation-event-destroy-renderer.html.ini
+++ b/testing/web-platform/meta/css/css-animations/stability/animation-event-destroy-renderer.html.ini
@@ -1,11 +1,13 @@
[animation-event-destroy-renderer.html?animationiteration]
expected:
- if not asan and (os == "linux") and not debug and not tsan: [OK, TIMEOUT]
- if asan and not fission: [OK, TIMEOUT]
+ if (os == "linux") and not tsan and not debug and asan and not fission: [OK, TIMEOUT]
+ if (os == "linux") and not tsan and not debug and not asan: [OK, TIMEOUT]
+ if (os == "linux") and tsan: [OK, TIMEOUT]
[Triggering the cancel of an animation during event handling does not crash.]
expected:
- if not asan and (os == "linux") and not debug and not tsan: [PASS, TIMEOUT]
- if asan and not fission: [PASS, TIMEOUT]
+ if (os == "linux") and not tsan and not debug and asan and not fission: [PASS, TIMEOUT]
+ if (os == "linux") and not tsan and not debug and not asan: [PASS, TIMEOUT]
+ if (os == "linux") and tsan: [PASS, TIMEOUT]
[animation-event-destroy-renderer.html?animationstart]
diff --git a/testing/web-platform/meta/css/css-animations/transition-ready-time-offscreen.html.ini b/testing/web-platform/meta/css/css-animations/transition-ready-time-offscreen.html.ini
new file mode 100644
index 0000000000..5a6e15446d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-animations/transition-ready-time-offscreen.html.ini
@@ -0,0 +1,5 @@
+[transition-ready-time-offscreen.html]
+ [Transitions start at the same time regardless of on-screen status]
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-018.html.ini b/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-018.html.ini
index f00b643435..3b79198f3b 100644
--- a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-018.html.ini
+++ b/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-018.html.ini
@@ -1,2 +1,4 @@
[multi-line-row-flex-fragmentation-018.html]
- expected: FAIL
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-019.html.ini b/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-019.html.ini
deleted file mode 100644
index ac8dd78b07..0000000000
--- a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-019.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[multi-line-row-flex-fragmentation-019.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-030.html.ini b/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-030.html.ini
index f73477fd32..d831697b6f 100644
--- a/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-030.html.ini
+++ b/testing/web-platform/meta/css/css-break/flexbox/multi-line-row-flex-fragmentation-030.html.ini
@@ -1,2 +1,4 @@
[multi-line-row-flex-fragmentation-030.html]
- expected: FAIL
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-015.html.ini b/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-015.html.ini
index 80955370ba..9ddf71df5a 100644
--- a/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-015.html.ini
+++ b/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-015.html.ini
@@ -1,2 +1,4 @@
[single-line-column-flex-fragmentation-015.html]
- expected: FAIL
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-057.html.ini b/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-057.html.ini
index ea8a1f5a68..f8a65b96ed 100644
--- a/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-057.html.ini
+++ b/testing/web-platform/meta/css/css-break/flexbox/single-line-column-flex-fragmentation-057.html.ini
@@ -1,2 +1,4 @@
[single-line-column-flex-fragmentation-057.html]
- expected: FAIL
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-cascade/scope-pseudo-element.html.ini b/testing/web-platform/meta/css/css-cascade/scope-pseudo-element.html.ini
new file mode 100644
index 0000000000..80b96e894a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-cascade/scope-pseudo-element.html.ini
@@ -0,0 +1,2 @@
+[scope-pseudo-element.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html.ini b/testing/web-platform/meta/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html.ini
new file mode 100644
index 0000000000..f9d86ad256
--- /dev/null
+++ b/testing/web-platform/meta/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html.ini
@@ -0,0 +1,2 @@
+[color-scheme-iframe-background-about-blank.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-color/parsing/color-computed-relative-color.html.ini b/testing/web-platform/meta/css/css-color/parsing/color-computed-relative-color.html.ini
index 21b32c6ad3..873c8e496a 100644
--- a/testing/web-platform/meta/css/css-color/parsing/color-computed-relative-color.html.ini
+++ b/testing/web-platform/meta/css/css-color/parsing/color-computed-relative-color.html.ini
@@ -1,175 +1,4 @@
[color-computed-relative-color.html]
- [Property color value 'rgb(from rebeccapurple r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from hsl(120deg 20% 50% / .5) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(from rebeccapurple r g b) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 0 0 0)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 0 0 0 / 0)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g b / 0)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g b / 0)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 25 g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 25 b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g 25 / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g b / .25)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) 25 g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 25 b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g 25 / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g b / .20)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g b / 20%)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g b / 20%)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 25 g b / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 25 b / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r g 25 / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) 25 g b / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 25 b / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r g 25 / 25%)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple g b r)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple b alpha r / g)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r r r / r)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) g b r)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) b alpha r / g)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r r r / r)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 20% 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r 10 20%)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple 0% 10 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 20% 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) r 10 20%)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) 0% 10 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r calc(g * 2) 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple b calc(r * .5) 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r calc(g * .5 + g * .5) 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple r calc(b * .5 - g * .5) 10)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20%, 40%, 60%, 80%) calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
[Property color value 'rgb(from rebeccapurple none none none)']
expected: FAIL
@@ -182,2621 +11,20 @@
[Property color value 'rgb(from rebeccapurple r g none / alpha)']
expected: FAIL
- [Property color value 'rgb(from rebeccapurple r g b / none)']
- expected: FAIL
-
[Property color value 'rgb(from rgb(20% 40% 60% / 80%) r g none / alpha)']
expected: FAIL
- [Property color value 'rgb(from rgb(20% 40% 60% / 80%) r g b / none)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(none none none) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(none none none / none) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20% none 60%) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(20% 40% 60% / none) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s l)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg 20% 50% / .5) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(from rebeccapurple h s l) h s l)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0 0% 0%)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0deg 0% 0%)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0 0% 0% / 0)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0deg 0% 0% / 0)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0 s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 0deg s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h 0% l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s 0% / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s l / 0)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) 0 s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) 0deg s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h 0% l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h s 0% / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h s l / 0)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 25 s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple 25deg s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h 20% l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s 20% / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s l / .25)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) 25 s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) 25deg s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h 20% l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h s 20% / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h s l / .2)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h l s)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h alpha l / s)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h l l / l)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h l s)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h alpha l / s)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h l l / l)']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) h alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple calc(h) calc(s) calc(l))']
- expected: FAIL
-
- [Property color value 'hsl(from rgb(20%, 40%, 60%, 80%) calc(h) calc(s) calc(l) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple none none none)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple none none none / none)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s none)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s none / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple h s l / none)']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple none s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg 20% 50% / .5) h s none / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg 20% 50% / .5) h s l / none)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg 20% 50% / .5) none s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(none none none) h s l)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(none none none / none) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg none 50% / .5) h s l)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(120deg 20% 50% / none) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(none 20% 50% / .5) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w b)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hsl(120deg 20% 50% / .5) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(from rebeccapurple h w b) h w b)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0 0% 0%)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0deg 0% 0%)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0 0% 0% / 0)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0deg 0% 0% / 0)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0 w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 0deg w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h 0% b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w 0% / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w b / 0)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) 0 w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) 0deg w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h 0% b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w 0% / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w b / 0)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 25 w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple 25deg w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w 20% / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w b / .2)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) 25 w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) 25deg w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w 20% / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w b / .2)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h b w)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h alpha w / b)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w w / w)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h b w)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h alpha w / b)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h w w / w)']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) h alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple calc(h) calc(w) calc(b))']
- expected: FAIL
-
- [Property color value 'hwb(from rgb(20%, 40%, 60%, 80%) calc(h) calc(w) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple none none none)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple none none none / none)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w none)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w none / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple h w b / none)']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple none w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(120deg 20% 50% / .5) h w none / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(120deg 20% 50% / .5) h w b / none)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(120deg 20% 50% / .5) none w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(none none none) h w b)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(none none none / none) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(120deg none 50% / .5) h w b)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(120deg 20% 50% / none) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(none 20% 50% / .5) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a b)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(200 300 400 / 500%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(-200 -300 -400 / -500%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(from lab(25 20 50) l a b) l a b)']
- expected: FAIL
-
- [Property color value 'lab(from color(display-p3 0 0 0) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) 0 a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a 0 / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a b / 0)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) 0 a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a 0 / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a b / 0)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) 35 a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l 35 b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a 35 / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a b / .35)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) 35 a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l 35 b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a 35 / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a b / .35)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l b a)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a a / a)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l b a)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a a / a)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) calc(l) calc(a) calc(b))']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) calc(l) calc(a) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a none)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a none / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) l a b / none)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a none / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / 40%) l a b / none)']
- expected: FAIL
-
- [Property color value 'lab(from lab(none none none) l a b)']
- expected: FAIL
-
- [Property color value 'lab(from lab(none none none / none) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 none 50) l a b)']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50 / none) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from color(display-p3 0 0 0) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(none none none) l a b)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(none none none / none) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c h)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(200 300 400 / 500%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(-200 -300 -400 / -500%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(from lch(0.7 45 30) l c h) l c h)']
- expected: FAIL
-
- [Property color value 'lch(from color(display-p3 0 0 0) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lab(0.7 45 30) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) 0 c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l 0 h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c 0 / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c 0deg / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c h / 0)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) 0 c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l 0 h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c 0 / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c 0deg / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c h / 0)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) 25 c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l 25 h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c 25 / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c 25deg / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c h / .25)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) 25 c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l 25 h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c 25 / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c 25deg / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c h / .25)']
- expected: FAIL
-
- [Property color value 'lch(from lch(.7 45 30) l c c / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(.7 45 30 / 40%) l c c / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) calc(l) calc(c) calc(h))']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) calc(l) calc(c) calc(h) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c none)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c none / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) l c h / none)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c none / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / 40%) l c h / none)']
- expected: FAIL
-
- [Property color value 'lch(from lch(none none none) l c h)']
- expected: FAIL
-
- [Property color value 'lch(from lch(none none none / none) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 none 30) l c h)']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30 / none) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from color(display-p3 0 0 0) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklab(0.7 45 30) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(none none none) l c h)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(none none none / none) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 none 30) l c h)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb 0.7 0.5 0.3) srgb r g b) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 1.7 1.5 1.3) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 1.7 1.5 1.3) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 1.7 1.5 1.3 / 140%) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 1.7 1.5 1.3 / 140%) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb -0.7 -0.5 -0.3) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb -0.7 -0.5 -0.3) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb -0.7 -0.5 -0.3 / -40%) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb -0.7 -0.5 -0.3 / -40%) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb none none none) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb none none none / none) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 none 0.3) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / none) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 1.7 1.5 1.3) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 1.7 1.5 1.3) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 1.7 1.5 1.3 / 140%) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 1.7 1.5 1.3 / 140%) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear -0.7 -0.5 -0.3) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear -0.7 -0.5 -0.3) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear -0.7 -0.5 -0.3 / -40%) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear -0.7 -0.5 -0.3 / -40%) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear none none none) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear none none none / none) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 none 0.3) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / none) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 1.7 1.5 1.3) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 1.7 1.5 1.3) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 1.7 1.5 1.3 / 140%) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 1.7 1.5 1.3 / 140%) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb -0.7 -0.5 -0.3) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb -0.7 -0.5 -0.3) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb -0.7 -0.5 -0.3 / -40%) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb -0.7 -0.5 -0.3 / -40%) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb none none none) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb none none none / none) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 none 0.3) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / none) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 1.7 1.5 1.3) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 1.7 1.5 1.3) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 1.7 1.5 1.3 / 140%) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 1.7 1.5 1.3 / 140%) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 -0.7 -0.5 -0.3) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 -0.7 -0.5 -0.3) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 -0.7 -0.5 -0.3 / -40%) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 -0.7 -0.5 -0.3 / -40%) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 none none none) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 none none none / none) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 none 0.3) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / none) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 1.7 1.5 1.3) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 1.7 1.5 1.3) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 1.7 1.5 1.3 / 140%) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 1.7 1.5 1.3 / 140%) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb -0.7 -0.5 -0.3) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb -0.7 -0.5 -0.3) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb -0.7 -0.5 -0.3 / -40%) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb -0.7 -0.5 -0.3 / -40%) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb none none none) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb none none none / none) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 none 0.3) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / none) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 0 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 0.2 g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 20% g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 0.2 b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 20% b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 20% / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 g b r)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 b alpha r / g)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r r r / r)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 alpha alpha alpha / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 1.7 1.5 1.3) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 1.7 1.5 1.3) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 1.7 1.5 1.3 / 140%) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 1.7 1.5 1.3 / 140%) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 -0.7 -0.5 -0.3) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 -0.7 -0.5 -0.3) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 -0.7 -0.5 -0.3 / -40%) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 -0.7 -0.5 -0.3 / -40%) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 calc(r) calc(g) calc(b))']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 calc(r) calc(g) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g none)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / none)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 none none none) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 none none none / none) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 none 0.3) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / none) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz 7 -20.5 100) xyz x y z) xyz x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz calc(x) calc(y) calc(z))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz calc(x) calc(y) calc(z) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz none none none) xyz x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz none none none / none) xyz x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 none 100) xyz x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / none) xyz x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 calc(x) calc(y) calc(z))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 calc(x) calc(y) calc(z) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 none none none) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 none none none / none) xyz-d50 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 none 100) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / none) xyz-d50 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 0 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x 0 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y 0 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / 0)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 20%)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 0.2 y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x 0.2 z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y 0.2 / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / 0.2)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 y z x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x x x / x)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 calc(x) calc(y) calc(z))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 calc(x) calc(y) calc(z) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y none / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / none)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 none none none) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 none none none / none) xyz-d65 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 none 100) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / none) xyz-d65 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from var(--bg-color) r g b / 80%)']
- expected: FAIL
-
- [Property color value 'lch(from var(--color) calc(l / 2) c h)']
- expected: FAIL
-
- [Property color value 'rgb(from var(--color) calc(r * .3 + g * .59 + b * .11) calc(r * .3 + g * .59 + b * .11) calc(r * .3 + g * .59 + b * .11))']
- expected: FAIL
-
- [Property color value 'lch(from var(--color) l 0 h)']
- expected: FAIL
-
- [Property color value 'rgb(from indianred 255 g b)']
- expected: FAIL
-
- [Property color value 'lab(from var(--mycolor) l a b / 100%)']
- expected: FAIL
-
- [Property color value 'lab(from var(--mycolor) l a b / calc(alpha * 0.8))']
- expected: FAIL
-
- [Property color value 'lab(from var(--mycolor) l 0 0)']
- expected: FAIL
-
- [Property color value 'lch(from peru calc(l * 0.8) c h)']
- expected: FAIL
-
- [Property color value 'lch(from var(--mycolor) l 0 h)']
- expected: FAIL
-
- [Property color value 'var(--mygray)']
- expected: FAIL
-
- [Property color value 'lch(from var(--mygray) l 30 h)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a b)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(2 3 4 / 500%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(-2 -3 -4 / -500%) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(from oklab(0.25 0.2 0.5) l a b) l a b)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) 0 a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a 0 / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a b / 0)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) 0 a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l 0 b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a 0 / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / 0)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) 0.35 a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l 0.35 b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a 0.35 / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a b / .35)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) 0.35 a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l 0.35 b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a 0.35 / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / .35)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l b a)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a a / a)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l b a)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a a / a)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) calc(l) calc(a) calc(b))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) calc(l) calc(a) calc(b) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a none)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a none / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) l a b / none)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a none / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / none)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 none 0.5) l a b)']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5 / none) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c h)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(2 3 400 / 500%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(-2 -3 -400 / -500%) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(from oklch(0.7 0.45 30) l c h) l c h)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) 0 c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l 0 h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c 0 / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c 0deg / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c h / 0)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) 0 c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l 0 h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c 0 / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c 0deg / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c h / 0)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) 0.25 c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l 0.25 h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c 25 / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c 25deg / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c h / .25)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) 0.25 c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l 0.25 h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c 25 / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c 25deg / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c h / .25)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(.7 0.45 30) l c c / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(.7 0.45 30 / 40%) l c c / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) calc(l) calc(c) calc(h))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) calc(l) calc(c) calc(h) / calc(alpha))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c none)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c none / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) l c h / none)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c none / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / 40%) l c h / none)']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30 / none) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from var(--accent) calc(h + 180) s l)']
- expected: FAIL
-
- [Property color value 'LCH(from var(--accent) l c calc(h + 180))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) srgb-linear r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) display-p3 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) a98-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) prophoto-rgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) rec2020 r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 0.25 0.5 0.75) srgb r g b)']
- expected: FAIL
-
- [Property color value 'lab(from color(srgb 0.25 0.5 0.75) l a b)']
- expected: FAIL
-
- [Property color value 'color(from lab(67.5345 -8.6911 -41.6019) srgb r g b)']
- expected: FAIL
-
- [Property color value 'oklab(from color(srgb 0.25 0.5 0.75) l a b)']
- expected: FAIL
-
- [Property color value 'color(from oklab(72.322% -0.0465 -0.1150) srgb r g b)']
- expected: FAIL
-
[Property color value 'lch(from color(srgb 0.25 0.5 0.75) l c h)']
expected: FAIL
- [Property color value 'color(from lch(67.5345% 42.5 258.2) srgb r g b)']
- expected: FAIL
-
- [Property color value 'oklch(from color(srgb 0.25 0.5 0.75) l c h)']
- expected: FAIL
-
- [Property color value 'color(from oklch(72.322% 0.12403 247.996) srgb r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(100 110 120 / 0.8) calc(r + 1) calc(g + 1) calc(b + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(20 30 40 / 0.8) calc(h + 1) calc(s + 1) calc(l + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(20 30 40 / 0.8) calc(h + 1) calc(w + 1) calc(b + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'lab(from lab(50 5 10 / 0.8) calc(l + 1) calc(a + 1) calc(b + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.5 .05 0.1 / 0.8) calc(l + 0.01) calc(a + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'lch(from lch(50 5 10 / 0.8) calc(l + 1) calc(c + 1) calc(h + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.5 .05 0.1 / 0.8) calc(l + 0.01) calc(c + 0.01) calc(h + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3 / 0.8) srgb calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3 / 0.8) srgb-linear calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3 / 0.8) a98-rgb calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3 / 0.8) rec2020 calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3 / 0.8) prophoto-rgb calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3 / 0.8) display-p3 calc(r + 0.01) calc(g + 0.01) calc(b + 0.01) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100 / 0.8) xyz calc(x + 1) calc(y + 1) calc(z + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100 / 0.8) xyz-d50 calc(x + 1) calc(y + 1) calc(z + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100 / 0.8) xyz-d65 calc(x + 1) calc(y + 1) calc(z + 1) / calc(alpha + 0.01))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.25 0.5 0.75) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'rgb(from color-mix(in srgb, red, red) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'hsl(from color-mix(in srgb, red, red) h s l / alpha)']
- expected: FAIL
-
- [Property color value 'hwb(from color-mix(in srgb, red, red) h w b / alpha)']
- expected: FAIL
-
- [Property color value 'lab(from color-mix(in lab, lab(25 20 50), lab(25 20 50)) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'oklab(from color-mix(in oklab, oklab(0.25 0.2 0.5), oklab(0.25 0.2 0.5)) l a b / alpha)']
- expected: FAIL
-
- [Property color value 'lch(from color-mix(in lch, lch(70 45 30), lch(70 45 30)) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'oklch(from color-mix(in oklch, oklch(0.7 0.45 30), oklch(0.7 0.45 30)) l c h / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(srgb 0.7 0.5 0.3), color(srgb 0.7 0.5 0.3)) srgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(srgb-linear 0.7 0.5 0.3), color(srgb-linear 0.7 0.5 0.3)) srgb-linear r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(a98-rgb 0.7 0.5 0.3), color(a98-rgb 0.7 0.5 0.3)) a98-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(rec2020 0.7 0.5 0.3), color(rec2020 0.7 0.5 0.3)) rec2020 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(prophoto-rgb 0.7 0.5 0.3), color(prophoto-rgb 0.7 0.5 0.3)) prophoto-rgb r g b / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(display-p3 0.7 0.5 0.3), color(display-p3 0.7 0.5 0.3)) display-p3 r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from rebeccapurple calc((r / 255) * 100%) calc((g / 255) * 100%) calc((b / 255) * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'hsl(from rebeccapurple calc((h / 360) * 360deg) calc((s / 100) * 100%) calc((l / 100) * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'hwb(from rebeccapurple calc((h / 360) * 360deg) calc((w / 100) * 100%) calc((b / 100) * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'lab(from lab(25 20 50) calc((l / 100) * 100%) calc((a / 125) * 100%) calc((b / 125) * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(0.25 0.2 0.5) calc(l * 100%) calc((a / 0.4) * 100%) calc((b / 0.4) * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'lch(from lch(0.7 45 30) calc((l / 100) * 100%) calc((c / 150) * 100%) calc((h / 360) * 360deg) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(0.7 0.45 30) calc(l * 100%) calc((c / 0.4) * 100%) calc((h / 360) * 360deg) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb 0.7 0.5 0.3) srgb calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(rec2020 0.7 0.5 0.3) rec2020 calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(display-p3 0.7 0.5 0.3) display-p3 calc(r * 100%) calc(g * 100%) calc(b * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color(xyz 7 -20.5 100) xyz calc(x * 100%) calc(y * 100%) calc(z * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(xyz 0.7 0.5 0.3), color(xyz 0.7 0.5 0.3)) xyz x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d50 7 -20.5 100) xyz-d50 calc(x * 100%) calc(y * 100%) calc(z * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(xyz-d50 0.7 0.5 0.3), color(xyz-d50 0.7 0.5 0.3)) xyz-d50 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from color(xyz-d65 7 -20.5 100) xyz-d65 calc(x * 100%) calc(y * 100%) calc(z * 100%) / calc(alpha * 100%))']
- expected: FAIL
-
- [Property color value 'color(from color-mix(in xyz, color(xyz-d65 0.7 0.5 0.3), color(xyz-d65 0.7 0.5 0.3)) xyz-d65 x y z / alpha)']
- expected: FAIL
-
- [Property color value 'color(from rgb(from color(xyz-d50 0.99 0.88 0.77) r g b) xyz-d50 x y z)']
- expected: FAIL
-
[Property color value 'color(from hsl(from color(xyz-d50 0.99 0.88 0.77) h s l) xyz-d50 x y z)']
expected: FAIL
[Property color value 'color(from hwb(from color(xyz-d50 0.99 0.88 0.77) h w b) xyz-d50 x y z)']
expected: FAIL
- [Property color value 'color(from lab(from color(xyz-d50 0.99 0.88 0.77) l a b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from lch(from color(xyz-d50 0.99 0.88 0.77) l c h) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from oklab(from color(xyz-d50 0.99 0.88 0.77) l a b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from oklch(from color(xyz-d50 0.99 0.88 0.77) l c h) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) srgb r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) srgb-linear r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) display-p3 r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) a98-rgb r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) prophoto-rgb r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) rec2020 r g b) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) xyz x y z) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) xyz-d50 x y z) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 0.99 0.88 0.77) xyz-d65 x y z) xyz-d50 x y z)']
- expected: FAIL
-
- [Property color value 'color(from rgb(from color(xyz-d65 0.99 0.88 0.77) r g b) xyz-d65 x y z)']
- expected: FAIL
-
[Property color value 'color(from hsl(from color(xyz-d65 0.99 0.88 0.77) h s l) xyz-d65 x y z)']
expected: FAIL
[Property color value 'color(from hwb(from color(xyz-d65 0.99 0.88 0.77) h w b) xyz-d65 x y z)']
expected: FAIL
-
- [Property color value 'color(from lab(from color(xyz-d65 0.99 0.88 0.77) l a b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from lch(from color(xyz-d65 0.99 0.88 0.77) l c h) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from oklab(from color(xyz-d65 0.99 0.88 0.77) l a b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from oklch(from color(xyz-d65 0.99 0.88 0.77) l c h) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) srgb r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) srgb-linear r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) display-p3 r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) a98-rgb r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) prophoto-rgb r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) rec2020 r g b) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) xyz x y z) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) xyz-d50 x y z) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 0.99 0.88 0.77) xyz-d65 x y z) xyz-d65 x y z)']
- expected: FAIL
-
- [Property color value 'color-mix(in srgb, rgb(from rebeccapurple none g b), rebeccapurple)']
- expected: FAIL
-
- [Property color value 'color-mix(in hsl, hsl(from rebeccapurple none s l), rebeccapurple)']
- expected: FAIL
-
- [Property color value 'color-mix(in hwb, hwb(from rebeccapurple none w b), rebeccapurple)']
- expected: FAIL
-
- [Property color value 'color-mix(in lab, lab(from lab(25 20 50) none a b), lab(25 20 50))']
- expected: FAIL
-
- [Property color value 'color-mix(in oklab, oklab(from oklab(0.25 0.2 0.5) none a b), oklab(0.25 0.2 0.5))']
- expected: FAIL
-
- [Property color value 'color-mix(in lch, lch(from lch(0.7 45 30) l c none), lch(0.7 45 30))']
- expected: FAIL
-
- [Property color value 'color-mix(in oklch, oklch(from oklch(0.7 0.45 30) l c none), oklch(0.7 0.45 30))']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(from rebeccapurple r g b / calc(alpha + 0.5)) r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'rgb(from rgb(from rebeccapurple r g b / calc(alpha - 1.5)) r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(from rebeccapurple h s l / calc(alpha + 0.5)) h s l / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'hsl(from hsl(from rebeccapurple h s l / calc(alpha - 1.5)) h s l / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(from rebeccapurple h w b / calc(alpha + 0.5)) h w b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'hwb(from hwb(from rebeccapurple h w b / calc(alpha - 1.5)) h w b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'lab(from lab(from lab(25 20 50) l a b / calc(alpha + 0.5)) l a b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'lab(from lab(from lab(25 20 50) l a b / calc(alpha - 1.5)) l a b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(from oklab(0.25 0.2 0.5) l a b / calc(alpha + 0.5)) l a b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'oklab(from oklab(from oklab(0.25 0.2 0.5) l a b / calc(alpha - 1.5)) l a b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'lch(from lch(from lch(0.7 45 30) l c h / calc(alpha + 0.5)) l c h / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'lch(from lch(from lch(0.7 45 30) l c h / calc(alpha - 1.5)) l c h / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(from oklch(0.7 0.45 30) l c h / calc(alpha + 0.5)) l c h / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'oklch(from oklch(from oklch(0.7 0.45 30) l c h / calc(alpha - 1.5)) l c h / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb 0.7 0.5 0.3) srgb r g b / calc(alpha + 0.5)) srgb r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb 0.7 0.5 0.3) srgb r g b / calc(alpha - 1.5)) srgb r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / calc(alpha + 0.5)) srgb-linear r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / calc(alpha - 1.5)) srgb-linear r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / calc(alpha + 0.5)) a98-rgb r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / calc(alpha - 1.5)) a98-rgb r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / calc(alpha + 0.5)) rec2020 r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / calc(alpha - 1.5)) rec2020 r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / calc(alpha + 0.5)) prophoto-rgb r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / calc(alpha - 1.5)) prophoto-rgb r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / calc(alpha + 0.5)) display-p3 r g b / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / calc(alpha - 1.5)) display-p3 r g b / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz 7 -20.5 100) xyz x y z / calc(alpha + 0.5)) xyz x y z / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz 7 -20.5 100) xyz x y z / calc(alpha - 1.5)) xyz x y z / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / calc(alpha + 0.5)) xyz-d50 x y z / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / calc(alpha - 1.5)) xyz-d50 x y z / calc(alpha + 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / calc(alpha + 0.5)) xyz-d65 x y z / calc(alpha - 0.5))']
- expected: FAIL
-
- [Property color value 'color(from color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / calc(alpha - 1.5)) xyz-d65 x y z / calc(alpha + 0.5))']
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-color/parsing/color-valid-relative-color.html.ini b/testing/web-platform/meta/css/css-color/parsing/color-valid-relative-color.html.ini
index 6955697378..ef46fa0371 100644
--- a/testing/web-platform/meta/css/css-color/parsing/color-valid-relative-color.html.ini
+++ b/testing/web-platform/meta/css/css-color/parsing/color-valid-relative-color.html.ini
@@ -1,2347 +1,7 @@
[color-valid-relative-color.html]
- [e.style['color'\] = "rgb(from rebeccapurple r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from hsl(120deg 20% 50% / .5) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(from rebeccapurple r g b) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 0 0 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 0 0 0 / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 25 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 25 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g b / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) 25 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 25 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g b / .20)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 25 g b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 25 b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g 25 / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) 25 g b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 25 b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r g 25 / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 20% 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r 10 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple 0% 10 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 20% 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) r 10 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) 0% 10 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r calc(g * 2) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple b calc(r * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r calc(g * .5 + g * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r calc(b * .5 - g * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20%, 40%, 60%, 80%) calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple none none none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple none none none / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rebeccapurple r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20% 40% 60% / 80%) r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20% 40% 60% / 80%) r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(none none none) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(none none none / none) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20% none 60%) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from rgb(20% 40% 60% / none) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg 20% 50% / .5) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(from rebeccapurple h s l) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0deg 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0deg 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 0deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h 0% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s l / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) 0 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) 0deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h 0% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h s 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h s l / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 25 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple 25deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h 20% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s l / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) 25 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) 25deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h 20% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h s 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h s l / .2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h l s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h alpha l / s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h l l / l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h l s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h alpha l / s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h l l / l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple calc(h) calc(s) calc(l))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rgb(20%, 40%, 60%, 80%) calc(h) calc(s) calc(l) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple none none none)" should set the property value]
- expected: FAIL
-
[e.style['color'\] = "hsl(from rebeccapurple none none none / none)" should set the property value]
expected: FAIL
- [e.style['color'\] = "hsl(from rebeccapurple h s none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple h s l / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from rebeccapurple none s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg 20% 50% / .5) h s none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg 20% 50% / .5) h s l / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg 20% 50% / .5) none s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(none none none) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(none none none / none) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg none 50% / .5) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(120deg 20% 50% / none) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from hsl(none 20% 50% / .5) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hsl(120deg 20% 50% / .5) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(from rebeccapurple h w b) h w b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0deg 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0deg 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0 w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 0deg w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h 0% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) 0 w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) 0deg w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h 0% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 25 w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple 25deg w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w b / .2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) 25 w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) 25deg w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w b / .2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h b w)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h alpha w / b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w w / w)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h b w)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h alpha w / b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h w w / w)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple calc(h) calc(w) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rgb(20%, 40%, 60%, 80%) calc(h) calc(w) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple none none none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple none none none / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple h w b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from rebeccapurple none w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(120deg 20% 50% / .5) h w none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(120deg 20% 50% / .5) h w b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(120deg 20% 50% / .5) none w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(none none none) h w b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(none none none / none) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(120deg none 50% / .5) h w b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(120deg 20% 50% / none) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from hwb(none 20% 50% / .5) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(200 300 400 / 500%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(-200 -300 -400 / -500%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(from lab(25 20 50) l a b) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from color(display-p3 0 0 0) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) 0 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) 0 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) 35 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l 35 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a 35 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a b / .35)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) 35 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l 35 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a 35 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a b / .35)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l b a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a a / a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l b a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a a / a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) calc(l) calc(a) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) calc(l) calc(a) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50) l a b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / 40%) l a b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(none none none) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(none none none / none) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 none 50) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(25 20 50 / none) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from color(display-p3 0 0 0) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(none none none) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(none none none / none) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(200 300 400 / 500%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(-200 -300 -400 / -500%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(from lch(0.7 45 30) l c h) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from color(display-p3 0 0 0) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lab(0.7 45 30) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) 0 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l 0 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c 0deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c h / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) 0 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l 0 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c 0deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c h / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) 25 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l 25 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c 25deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c h / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) 25 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l 25 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c 25deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c h / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(.7 45 30) l c c / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(.7 45 30 / 40%) l c c / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) calc(l) calc(c) calc(h))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) calc(l) calc(c) calc(h) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30) l c h / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / 40%) l c h / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(none none none) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(none none none / none) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 none 30) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(0.7 45 30 / none) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from color(display-p3 0 0 0) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklab(0.7 45 30) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(none none none) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(none none none / none) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 none 30) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(srgb 0.7 0.5 0.3) srgb r g b) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 1.7 1.5 1.3) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 1.7 1.5 1.3) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 1.7 1.5 1.3 / 140%) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 1.7 1.5 1.3 / 140%) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb -0.7 -0.5 -0.3) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb -0.7 -0.5 -0.3) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb -0.7 -0.5 -0.3 / -40%) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb -0.7 -0.5 -0.3 / -40%) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3) srgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / 40%) srgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb none none none) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb none none none / none) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 none 0.3) srgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb 0.7 0.5 0.3 / none) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 1.7 1.5 1.3) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 1.7 1.5 1.3) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 1.7 1.5 1.3 / 140%) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 1.7 1.5 1.3 / 140%) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear -0.7 -0.5 -0.3) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear -0.7 -0.5 -0.3) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear -0.7 -0.5 -0.3 / -40%) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear -0.7 -0.5 -0.3 / -40%) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3) srgb-linear r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / 40%) srgb-linear r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear none none none) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear none none none / none) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 none 0.3) srgb-linear r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(srgb-linear 0.7 0.5 0.3 / none) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 1.7 1.5 1.3) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 1.7 1.5 1.3) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 1.7 1.5 1.3 / 140%) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 1.7 1.5 1.3 / 140%) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb -0.7 -0.5 -0.3) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb -0.7 -0.5 -0.3) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb -0.7 -0.5 -0.3 / -40%) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb -0.7 -0.5 -0.3 / -40%) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3) a98-rgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / 40%) a98-rgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb none none none) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb none none none / none) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 none 0.3) a98-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(a98-rgb 0.7 0.5 0.3 / none) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 1.7 1.5 1.3) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 1.7 1.5 1.3) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 1.7 1.5 1.3 / 140%) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 1.7 1.5 1.3 / 140%) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 -0.7 -0.5 -0.3) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 -0.7 -0.5 -0.3) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 -0.7 -0.5 -0.3 / -40%) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 -0.7 -0.5 -0.3 / -40%) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3) rec2020 r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / 40%) rec2020 r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 none none none) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 none none none / none) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 none 0.3) rec2020 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(rec2020 0.7 0.5 0.3 / none) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 1.7 1.5 1.3) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 1.7 1.5 1.3) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 1.7 1.5 1.3 / 140%) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 1.7 1.5 1.3 / 140%) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb -0.7 -0.5 -0.3) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb -0.7 -0.5 -0.3) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb -0.7 -0.5 -0.3 / -40%) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb -0.7 -0.5 -0.3 / -40%) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3) prophoto-rgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / 40%) prophoto-rgb r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb none none none) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb none none none / none) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 none 0.3) prophoto-rgb r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(prophoto-rgb 0.7 0.5 0.3 / none) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 0.2 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 0.2 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 1.7 1.5 1.3) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 1.7 1.5 1.3) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 1.7 1.5 1.3 / 140%) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 1.7 1.5 1.3 / 140%) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 -0.7 -0.5 -0.3) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 -0.7 -0.5 -0.3) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 -0.7 -0.5 -0.3 / -40%) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 -0.7 -0.5 -0.3 / -40%) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3) display-p3 r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / 40%) display-p3 r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 none none none) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 none none none / none) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 none 0.3) display-p3 r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(display-p3 0.7 0.5 0.3 / none) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(xyz 7 -20.5 100) xyz x y z) xyz x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz calc(x) calc(y) calc(z))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz calc(x) calc(y) calc(z) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100) xyz x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / 40%) xyz x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz none none none) xyz x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz none none none / none) xyz x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 none 100) xyz x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz 7 -20.5 100 / none) xyz x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z) xyz-d50 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 calc(x) calc(y) calc(z))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 calc(x) calc(y) calc(z) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100) xyz-d50 x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / 40%) xyz-d50 x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 none none none) xyz-d50 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 none none none / none) xyz-d50 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 none 100) xyz-d50 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d50 7 -20.5 100 / none) xyz-d50 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z) xyz-d65 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 0 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x 0 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 0.2 y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x 0.2 z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y 0.2 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / 0.2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 y z x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x x x / x)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 calc(x) calc(y) calc(z))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 calc(x) calc(y) calc(z) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100) xyz-d65 x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / 40%) xyz-d65 x y z / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 none none none) xyz-d65 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 none none none / none) xyz-d65 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 none 100) xyz-d65 x y z)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color(xyz-d65 7 -20.5 100 / none) xyz-d65 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from indianred 255 g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from peru calc(l * 0.8) c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(2 3 4 / 500%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(-2 -3 -4 / -500%) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(from oklab(0.25 0.2 0.5) l a b) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) 0 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) 0 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) 0.35 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l 0.35 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a 0.35 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a b / .35)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) 0.35 a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l 0.35 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a 0.35 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / .35)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l b a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a a / a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l b a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a a / a)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) calc(l) calc(a) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) calc(l) calc(a) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5) l a b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / 40%) l a b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 none 0.5) l a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.25 0.2 0.5 / none) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(2 3 400 / 500%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(-2 -3 -400 / -500%) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(from oklch(0.7 0.45 30) l c h) l c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) 0 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l 0 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c 0deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c h / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) 0 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l 0 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c 0deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c h / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) 0.25 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l 0.25 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c 0.25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c 25deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c h / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) 0.25 c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l 0.25 h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c 0.25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c 25deg / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c h / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(.7 0.45 30) l c c / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(.7 0.45 30 / 40%) l c c / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) calc(l) calc(c) calc(h))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) calc(l) calc(c) calc(h) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30) l c h / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / 40%) l c h / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.45 30 / none) l c h / alpha)" should set the property value]
- expected: FAIL
-
[e.style['color'\] = "rgb(from currentColor r g b)" should set the property value]
expected: FAIL
@@ -2390,455 +50,11 @@
[e.style['color'\] = "color(from currentColor xyz-d65 x y z)" should set the property value]
expected: FAIL
- [e.style['color'\] = "lab(from lab(50 -30 40) calc(l - 20) a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from lab(50 -30 40) l calc(a / 3) calc(b / 2))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.7 0.25 -0.15) calc(l - 0.2) a b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from oklab(0.7 0.25 -0.15) l calc(a / 2) calc(b / 3))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(50 100 300) calc(l - 20) c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(50 100 300) l calc(c / 2) h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from lch(50 100 300) l c calc(h * 2.5))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.2 300) calc(l - 0.2) c h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.2 300) l calc(c / 2) h)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from oklch(0.7 0.2 300) l c calc(h * 2.5))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgb(from color-mix(in srgb, red, red) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsl(from color-mix(in srgb, red, red) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hwb(from color-mix(in srgb, red, red) h w b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lab(from color-mix(in lab, lab(25 20 50), lab(25 20 50)) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklab(from color-mix(in oklab, oklab(0.25 0.2 0.5), oklab(0.25 0.2 0.5)) l a b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "lch(from color-mix(in lch, lch(70 45 30), lch(70 45 30)) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "oklch(from color-mix(in oklch, oklch(0.7 0.45 30), oklch(0.7 0.45 30)) l c h / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(srgb 0.7 0.5 0.3), color(srgb 0.7 0.5 0.3)) srgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(srgb-linear 0.7 0.5 0.3), color(srgb-linear 0.7 0.5 0.3)) srgb-linear r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(a98-rgb 0.7 0.5 0.3), color(a98-rgb 0.7 0.5 0.3)) a98-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(rec2020 0.7 0.5 0.3), color(rec2020 0.7 0.5 0.3)) rec2020 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(prophoto-rgb 0.7 0.5 0.3), color(prophoto-rgb 0.7 0.5 0.3)) prophoto-rgb r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(display-p3 0.7 0.5 0.3), color(display-p3 0.7 0.5 0.3)) display-p3 r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(xyz 0.7 0.5 0.3), color(xyz 0.7 0.5 0.3)) xyz x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(xyz-d50 0.7 0.5 0.3), color(xyz-d50 0.7 0.5 0.3)) xyz-d50 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "color(from color-mix(in xyz, color(xyz-d65 0.7 0.5 0.3), color(xyz-d65 0.7 0.5 0.3)) xyz-d65 x y z / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from hsl(120deg 20% 50% / .5) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(from rebeccapurple r g b) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 0 0 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 0 0 0 / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) 0 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 0 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g 0 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g b / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 25 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 25 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) 25 g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 25 b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g 25 / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g b / .20)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) 20% g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 20% b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g b / 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 25 g b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 25 b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g 25 / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) 25 g b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 25 b / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r g 25 / 25%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) g b r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) b alpha r / g)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r r r / r)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) alpha alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 20% 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r 10 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple 0% 10 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 20% 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) r 10 20%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) 0% 10 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple calc(r) calc(g) calc(b))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r calc(g * 2) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple b calc(r * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r calc(g * .5 + g * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r calc(b * .5 - g * .5) 10)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20%, 40%, 60%, 80%) calc(r) calc(g) calc(b) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple none none none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple none none none / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rebeccapurple r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20% 40% 60% / 80%) r g none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20% 40% 60% / 80%) r g b / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(none none none) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(none none none / none) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20% none 60%) r g b)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "rgba(from rgb(20% 40% 60% / none) r g b / alpha)" should set the property value]
- expected: FAIL
-
[e.style['color'\] = "rgba(from currentColor r g b)" should set the property value]
expected: FAIL
- [e.style['color'\] = "rgba(from color-mix(in srgb, red, red) r g b / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg 20% 50% / .5) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(from rebeccapurple h s l) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0deg 0% 0%)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0deg 0% 0% / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 0deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h 0% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s l / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) 0 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) 0deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h 0% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h s 0% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h s l / 0)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 25 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple 25deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h 20% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s l / .25)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) 25 s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) 25deg s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h 20% l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h s 20% / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h s l / .2)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h l s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h alpha l / s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h l l / l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h l s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h alpha l / s)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h l l / l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) h alpha alpha / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple calc(h) calc(s) calc(l))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rgb(20%, 40%, 60%, 80%) calc(h) calc(s) calc(l) / calc(alpha))" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple none none none)" should set the property value]
- expected: FAIL
-
[e.style['color'\] = "hsla(from rebeccapurple none none none / none)" should set the property value]
expected: FAIL
- [e.style['color'\] = "hsla(from rebeccapurple h s none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple h s l / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from rebeccapurple none s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg 20% 50% / .5) h s none / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg 20% 50% / .5) h s l / none)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg 20% 50% / .5) none s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(none none none) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(none none none / none) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg none 50% / .5) h s l)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(120deg 20% 50% / none) h s l / alpha)" should set the property value]
- expected: FAIL
-
- [e.style['color'\] = "hsla(from hsl(none 20% 50% / .5) h s l / alpha)" should set the property value]
- expected: FAIL
-
[e.style['color'\] = "hsla(from currentColor h s l)" should set the property value]
expected: FAIL
-
- [e.style['color'\] = "hsla(from color-mix(in srgb, red, red) h s l / alpha)" should set the property value]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-color/parsing/relative-color-out-of-gamut.html.ini b/testing/web-platform/meta/css/css-color/parsing/relative-color-out-of-gamut.html.ini
index 33f7c5c685..0c8198b02f 100644
--- a/testing/web-platform/meta/css/css-color/parsing/relative-color-out-of-gamut.html.ini
+++ b/testing/web-platform/meta/css/css-color/parsing/relative-color-out-of-gamut.html.ini
@@ -1,31 +1,4 @@
[relative-color-out-of-gamut.html]
- [Property color value 'rgb(from color(display-p3 0 1 0) r g b / alpha)']
- expected: FAIL
-
- [Property color value 'rgb(from lab(100 104.3 -50.9) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from lab(0 104.3 -50.9) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from lch(100 116 334) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from lch(0 116 334) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from oklab(1 0.365 -0.16) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from oklab(0 0.365 -0.16) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from oklch(1 0.399 336.3) r g b)']
- expected: FAIL
-
- [Property color value 'rgb(from oklch(0 0.399 336.3) r g b)']
- expected: FAIL
-
[Property color value 'hsl(from color(display-p3 0 1 0) h s l / alpha)']
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-contain/contain-layout-button-001.tentative.html.ini b/testing/web-platform/meta/css/css-contain/contain-layout-button-001.tentative.html.ini
new file mode 100644
index 0000000000..0ce7c8a28a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-contain/contain-layout-button-001.tentative.html.ini
@@ -0,0 +1,2 @@
+[contain-layout-button-001.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-contain/contain-layout-button-002.tentative.html.ini b/testing/web-platform/meta/css/css-contain/contain-layout-button-002.tentative.html.ini
new file mode 100644
index 0000000000..ae4f9365ff
--- /dev/null
+++ b/testing/web-platform/meta/css/css-contain/contain-layout-button-002.tentative.html.ini
@@ -0,0 +1,2 @@
+[contain-layout-button-002.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-contain/container-queries/custom-property-style-queries.html.ini b/testing/web-platform/meta/css/css-contain/container-queries/custom-property-style-queries.html.ini
index 35f797b641..8e24e87cf1 100644
--- a/testing/web-platform/meta/css/css-contain/container-queries/custom-property-style-queries.html.ini
+++ b/testing/web-platform/meta/css/css-contain/container-queries/custom-property-style-queries.html.ini
@@ -141,3 +141,15 @@
[Style query matching value-less query against non-initial value]
expected: FAIL
+
+ [Style query 'initial' matching (with explicit 'initial' value)]
+ expected: FAIL
+
+ [Style query matching negated value-less query against initial value (with explicit 'initial' value)]
+ expected: FAIL
+
+ [Style query 'space' matching]
+ expected: FAIL
+
+ [Style query 'space' not matching]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-contain/container-queries/registered-color-style-queries.html.ini b/testing/web-platform/meta/css/css-contain/container-queries/registered-color-style-queries.html.ini
new file mode 100644
index 0000000000..3befc312c6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-contain/container-queries/registered-color-style-queries.html.ini
@@ -0,0 +1,6 @@
+[registered-color-style-queries.html]
+ [Registered color with light color-scheme and light-dark()]
+ expected: FAIL
+
+ [Registered color with dark color-scheme and light-dark()]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-content/__dir__.ini b/testing/web-platform/meta/css/css-content/__dir__.ini
new file mode 100644
index 0000000000..c555ceb450
--- /dev/null
+++ b/testing/web-platform/meta/css/css-content/__dir__.ini
@@ -0,0 +1 @@
+prefs: [layout.css.content.alt-text.enabled:true]
diff --git a/testing/web-platform/meta/css/css-content/parsing/content-computed.html.ini b/testing/web-platform/meta/css/css-content/parsing/content-computed.html.ini
deleted file mode 100644
index 4e09f39cd9..0000000000
--- a/testing/web-platform/meta/css/css-content/parsing/content-computed.html.ini
+++ /dev/null
@@ -1,58 +0,0 @@
-[content-computed.html]
- bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1281158
- [Property content value 'open-quote / "alt text"']
- expected: FAIL
-
- [Property content value 'close-quote / "alt text"']
- expected: FAIL
-
- [Property content value 'no-open-quote / "alt text"']
- expected: FAIL
-
- [Property content value 'no-close-quote / "alt text"']
- expected: FAIL
-
- [Property content value 'counter(counter-name) / "alt text"']
- expected: FAIL
-
- [Property content value 'counter(counter-name, counter-style) / "alt text"']
- expected: FAIL
-
- [Property content value 'counter(counter-name, dECiMaL) / "alt text"']
- expected: FAIL
-
- [Property content value 'counter(counter-name, DECIMAL) / "alt text"']
- expected: FAIL
-
- [Property content value 'counters(counter-name, ".") / "alt text"']
- expected: FAIL
-
- [Property content value 'counters(counter-name, ".", counter-style) / "alt text"']
- expected: FAIL
-
- [Property content value 'counters(counter-name, ".", dECiMaL) / "alt text"']
- expected: FAIL
-
- [Property content value 'counters(counter-name, ".", DECIMAL) / "alt text"']
- expected: FAIL
-
- [Property content value 'url("https://www.example.com/picture.svg") / "alt text"']
- expected: FAIL
-
- [Property content value '"hello" / "alt text"']
- expected: FAIL
-
- [Property content value 'counter(counter-name) "potato" / "alt text"']
- expected: FAIL
-
- [Property content value 'counters(counter-name, ".") "potato" / "alt text"']
- expected: FAIL
-
- [Property content value '"(" counters(counter-name, ".", counter-style) ")" / "alt text"']
- expected: FAIL
-
- [Property content value 'open-quote "hello" "world" close-quote / "alt text"']
- expected: FAIL
-
- [Property content value 'url("https://www.example.com/picture.svg") "hello" / "alt text"']
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-content/parsing/content-valid.html.ini b/testing/web-platform/meta/css/css-content/parsing/content-valid.html.ini
deleted file mode 100644
index c8cc95c8a2..0000000000
--- a/testing/web-platform/meta/css/css-content/parsing/content-valid.html.ini
+++ /dev/null
@@ -1,207 +0,0 @@
-[content-valid.html]
- [e.style['content'\] = "open-quote / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "open-quote / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "open-quote / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "close-quote / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "close-quote / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "close-quote / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-open-quote / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-open-quote / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-open-quote / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-close-quote / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-close-quote / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "no-close-quote / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(alt) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(alt) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(alt) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(data-foo) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(data-foo) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "attr(data-foo) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, counter-style) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, counter-style) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, counter-style) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, dECiMaL) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, dECiMaL) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, dECiMaL) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, DECIMAL) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, DECIMAL) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name, DECIMAL) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", counter-style) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", counter-style) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", counter-style) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", dECiMaL) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", dECiMaL) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", dECiMaL) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", DECIMAL) / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", DECIMAL) / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\", DECIMAL) / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" \\"world\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" \\"world\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" \\"world\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" attr(alt) \\"world\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" attr(alt) \\"world\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"hello\\" attr(alt) \\"world\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) \\"potato\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) \\"potato\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counter(counter-name) \\"potato\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") \\"potato\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") \\"potato\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "counters(counter-name, \\".\\") \\"potato\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"(\\" counters(counter-name, \\".\\", counter-style) \\")\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"(\\" counters(counter-name, \\".\\", counter-style) \\")\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "\\"(\\" counters(counter-name, \\".\\", counter-style) \\")\\" / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "open-quote \\"hello\\" \\"world\\" close-quote / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "open-quote \\"hello\\" \\"world\\" close-quote / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "open-quote \\"hello\\" \\"world\\" close-quote / attr(foo)" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") \\"hello\\" / \\"alt text\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") \\"hello\\" / \\"alt text\\" attr(foo) \\"bar\\"" should set the property value]
- expected: FAIL
-
- [e.style['content'\] = "url(\\"https://www.example.com/picture.svg\\") \\"hello\\" / attr(foo)" should set the property value]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-display/accessibility/display-contents-role-and-label.html.ini b/testing/web-platform/meta/css/css-display/accessibility/display-contents-role-and-label.html.ini
index e7fbc23293..89cd27893f 100644
--- a/testing/web-platform/meta/css/css-display/accessibility/display-contents-role-and-label.html.ini
+++ b/testing/web-platform/meta/css/css-display/accessibility/display-contents-role-and-label.html.ini
@@ -1,40 +1,2 @@
[display-contents-role-and-label.html]
max-asserts: 5
- [Label: g element with display: contents, as child of svg, is labelled via title element]
- expected: FAIL
-
- [Label: td as child of tr with display: contents, within table with display: flex, has cell role]
- expected: FAIL
-
- [Label: td as child of tr with display: contents, within table with role=table with display: flex, has cell role]
- expected: FAIL
-
- [Label: listitem within ul with display: contents, as child of div with display: grid, has listitem role]
- expected: FAIL
-
- [Label: nav with display: contents and aria-label has navigation role]
- expected: FAIL
-
- [Label: aside with display: contents and aria-label has complementary role]
- expected: FAIL
-
- [Label: div with role navigation, aria-label and display: contents has navigation role]
- expected: FAIL
-
- [Label: div with role complementary, aria-label and display: contents has complementary role]
- expected: FAIL
-
- [Label: div with role search and display: contents has search role]
- expected: FAIL
-
- [Label: li, as child of ul with role list and display: contents, has listitem role]
- expected: FAIL
-
- [Label: li, as child of ol with role list and display: contents, has listitem role]
- expected: FAIL
-
- [Label: td within tr in table with role table, all with display: contents, has cell role]
- expected: FAIL
-
- [Role: g element with display: contents, as child of svg, is labelled via title element]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-display/run-in/letter-spacing-applies-to-004.xht.ini b/testing/web-platform/meta/css/css-display/run-in/letter-spacing-applies-to-004.xht.ini
new file mode 100644
index 0000000000..14d54eb42d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-display/run-in/letter-spacing-applies-to-004.xht.ini
@@ -0,0 +1,2 @@
+[letter-spacing-applies-to-004.xht]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-flexbox/intrinsic-size/col-wrap-020.html.ini b/testing/web-platform/meta/css/css-flexbox/intrinsic-size/col-wrap-020.html.ini
new file mode 100644
index 0000000000..5895cfc676
--- /dev/null
+++ b/testing/web-platform/meta/css/css-flexbox/intrinsic-size/col-wrap-020.html.ini
@@ -0,0 +1,2 @@
+[col-wrap-020.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-fonts/__dir__.ini b/testing/web-platform/meta/css/css-fonts/__dir__.ini
index 3f806dd440..4961ae33f1 100644
--- a/testing/web-platform/meta/css/css-fonts/__dir__.ini
+++ b/testing/web-platform/meta/css/css-fonts/__dir__.ini
@@ -1,3 +1,3 @@
prefs: [layout.css.font-variations.enabled:true, layout.css.system-ui.enabled:true, layout.css.font-palette.enabled:true, layout.css.font-variant-emoji.enabled:true]
-lsan-allowed: [PLDHashTable::MakeEntryHandle, gfxFontEntry::TryGetSVGData, hb_object_create]
-leak-threshold: [default:51200]
+lsan-allowed: [PLDHashTable::MakeEntryHandle, gfxFontEntry::TryGetSVGData, hb_object_create, mozilla::detail::HashTable]
+leak-threshold: [default:51200, tab:307200]
diff --git a/testing/web-platform/meta/css/css-fonts/font-size-adjust-reload.html.ini b/testing/web-platform/meta/css/css-fonts/font-size-adjust-reload.html.ini
new file mode 100644
index 0000000000..8b2516f355
--- /dev/null
+++ b/testing/web-platform/meta/css/css-fonts/font-size-adjust-reload.html.ini
@@ -0,0 +1,3 @@
+[font-size-adjust-reload.html]
+ expected:
+ if os == "android": FAIL
diff --git a/testing/web-platform/meta/css/css-fonts/matching/font-unicode-PUA-primary-font.html.ini b/testing/web-platform/meta/css/css-fonts/matching/font-unicode-PUA-primary-font.html.ini
new file mode 100644
index 0000000000..be62d1ac16
--- /dev/null
+++ b/testing/web-platform/meta/css/css-fonts/matching/font-unicode-PUA-primary-font.html.ini
@@ -0,0 +1,3 @@
+[font-unicode-PUA-primary-font.html]
+ expected:
+ if os == "android": FAIL
diff --git a/testing/web-platform/meta/css/css-fonts/parsing/font-palette-values-valid.html.ini b/testing/web-platform/meta/css/css-fonts/parsing/font-palette-values-valid.html.ini
index 0f2388315a..e7e1ec3ac4 100644
--- a/testing/web-platform/meta/css/css-fonts/parsing/font-palette-values-valid.html.ini
+++ b/testing/web-platform/meta/css/css-fonts/parsing/font-palette-values-valid.html.ini
@@ -1,3 +1,5 @@
[font-palette-values-valid.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [CSS Fonts Module Level 4: parsing @font-palette-values 33]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-fonts/variation-sequences.html.ini b/testing/web-platform/meta/css/css-fonts/variation-sequences.html.ini
new file mode 100644
index 0000000000..c9053836d5
--- /dev/null
+++ b/testing/web-platform/meta/css/css-fonts/variation-sequences.html.ini
@@ -0,0 +1,2 @@
+[variation-sequences.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini b/testing/web-platform/meta/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini
new file mode 100644
index 0000000000..9f960a3b50
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini
@@ -0,0 +1,3 @@
+[grid-item-mixed-baseline-002.html]
+ expected:
+ if swgl and (os == "linux") and debug and not fission: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html.ini
new file mode 100644
index 0000000000..3f37219fe9
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html.ini
@@ -0,0 +1,2 @@
+[masonry-align-content-003.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/gap/masonry-gap-002.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/gap/masonry-gap-002.html.ini
new file mode 100644
index 0000000000..c661d85004
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/gap/masonry-gap-002.html.ini
@@ -0,0 +1,2 @@
+[masonry-gap-002.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html.ini
new file mode 100644
index 0000000000..93e428fe03
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html.ini
@@ -0,0 +1,2 @@
+[masonry-intrinsic-sizing-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html.ini
new file mode 100644
index 0000000000..c5734b19fa
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html.ini
@@ -0,0 +1,2 @@
+[masonry-intrinsic-sizing-002.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html.ini
new file mode 100644
index 0000000000..2782ba6cff
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html.ini
@@ -0,0 +1,2 @@
+[masonry-intrinsic-sizing-003.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html.ini
new file mode 100644
index 0000000000..bcc970cf75
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html.ini
@@ -0,0 +1,2 @@
+[masonry-intrinsic-sizing-004.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html.ini
new file mode 100644
index 0000000000..8ee4692c02
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html.ini
@@ -0,0 +1,2 @@
+[masonry-intrinsic-sizing-005.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini
index e98375f92c..cdf28ea120 100644
--- a/testing/web-platform/meta/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini
@@ -1,3 +1,9 @@
[masonry-grid-template-columns-computed-withcontent.html]
[Property grid-template-columns value 'repeat(auto-fit, [one\] 20%)']
expected: FAIL
+
+ [Property grid-template-columns value 'repeat(2, minmax(10px, auto))']
+ expected: FAIL
+
+ [Property grid-template-columns value 'repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])']
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side.html.ini
new file mode 100644
index 0000000000..36fdc52959
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side.html.ini
@@ -0,0 +1,2 @@
+[masonry-track-sizing-overflow-left-side.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side.html.ini b/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side.html.ini
new file mode 100644
index 0000000000..7375f961f2
--- /dev/null
+++ b/testing/web-platform/meta/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side.html.ini
@@ -0,0 +1,2 @@
+[masonry-track-sizing-overflow-right-side.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-invalidation-007.html.ini b/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-invalidation-007.html.ini
index 2204433cde..32ddc85255 100644
--- a/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-invalidation-007.html.ini
+++ b/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-invalidation-007.html.ini
@@ -1,6 +1,5 @@
[custom-highlight-painting-invalidation-007.html]
expected:
- if (os == "linux") and not debug and not swgl and fission and asan: [FAIL, PASS]
- if (os == "linux") and debug and fission and swgl: [FAIL, PASS]
- if (os == "linux") and not debug and not swgl and not fission: [FAIL, PASS]
+ if (os == "linux") and not asan and swgl and fission: [FAIL, PASS]
+ if (os == "linux") and asan and not swgl: [FAIL, PASS]
FAIL
diff --git a/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html.ini b/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html.ini
deleted file mode 100644
index b8c870173d..0000000000
--- a/testing/web-platform/meta/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[custom-highlight-painting-vertical-writing-mode-001.html]
- expected:
- if os == "mac": PASS
- FAIL
diff --git a/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html.ini b/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html.ini
new file mode 100644
index 0000000000..3b918126c8
--- /dev/null
+++ b/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html.ini
@@ -0,0 +1,2 @@
+[object-fit-containcontainintrinsicsize-png-001e.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html.ini b/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html.ini
new file mode 100644
index 0000000000..5ef4246def
--- /dev/null
+++ b/testing/web-platform/meta/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html.ini
@@ -0,0 +1,2 @@
+[object-fit-containcontainintrinsicsize-png-001i.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001e.tentative.html.ini b/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001e.tentative.html.ini
new file mode 100644
index 0000000000..e503267117
--- /dev/null
+++ b/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001e.tentative.html.ini
@@ -0,0 +1,2 @@
+[object-fit-containsize-png-001e.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001i.tentative.html.ini b/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001i.tentative.html.ini
new file mode 100644
index 0000000000..51e67fefc2
--- /dev/null
+++ b/testing/web-platform/meta/css/css-images/object-fit-containsize-png-001i.tentative.html.ini
@@ -0,0 +1,2 @@
+[object-fit-containsize-png-001i.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html.ini b/testing/web-platform/meta/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html.ini
new file mode 100644
index 0000000000..122454ea0b
--- /dev/null
+++ b/testing/web-platform/meta/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html.ini
@@ -0,0 +1,2 @@
+[text-box-trim-half-leading-block-box-002.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-layout-api/child-constraints/percentage-size-quirks-mode.https.html.ini b/testing/web-platform/meta/css/css-layout-api/child-constraints/percentage-size-quirks-mode.https.html.ini
index 37c9ef2209..c61982b598 100644
--- a/testing/web-platform/meta/css/css-layout-api/child-constraints/percentage-size-quirks-mode.https.html.ini
+++ b/testing/web-platform/meta/css/css-layout-api/child-constraints/percentage-size-quirks-mode.https.html.ini
@@ -1,2 +1,4 @@
[percentage-size-quirks-mode.https.html]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT]
+ FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-021.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-021.tentative.html.ini
new file mode 100644
index 0000000000..82000c76c6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-021.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-021.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-abspos-011.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-abspos-011.tentative.html.ini
new file mode 100644
index 0000000000..b399afd232
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-abspos-011.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-abspos-011.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-001.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-001.tentative.html.ini
new file mode 100644
index 0000000000..b3a7f12f4e
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-001.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-001.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-002.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-002.tentative.html.ini
new file mode 100644
index 0000000000..73ed3ce544
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-002.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-002.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-003.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-003.tentative.html.ini
new file mode 100644
index 0000000000..daeb119383
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-003.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-003.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-004.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-004.tentative.html.ini
new file mode 100644
index 0000000000..ee7aa7cffa
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-004.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-004.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-005.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-005.tentative.html.ini
new file mode 100644
index 0000000000..0321cf6b3d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-005.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-005.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-006.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-006.tentative.html.ini
new file mode 100644
index 0000000000..9cb5ff1b37
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-006.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-006.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-007.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-007.tentative.html.ini
new file mode 100644
index 0000000000..547cac7a2c
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-007.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-007.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-008.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-008.tentative.html.ini
new file mode 100644
index 0000000000..23716f1941
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-008.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-008.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-009.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-009.tentative.html.ini
new file mode 100644
index 0000000000..1f92c2b17f
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-009.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-009.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-010.tentative.html.ini b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-010.tentative.html.ini
new file mode 100644
index 0000000000..a47629e1f4
--- /dev/null
+++ b/testing/web-platform/meta/css/css-overflow/line-clamp-with-floats-010.tentative.html.ini
@@ -0,0 +1,2 @@
+[line-clamp-with-floats-010.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-page/fixedpos-010-print.html.ini b/testing/web-platform/meta/css/css-page/fixedpos-010-print.html.ini
new file mode 100644
index 0000000000..6e40a3b50d
--- /dev/null
+++ b/testing/web-platform/meta/css/css-page/fixedpos-010-print.html.ini
@@ -0,0 +1,2 @@
+[fixedpos-010-print.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-page/page-box-000-print.html.ini b/testing/web-platform/meta/css/css-page/page-box-000-print.html.ini
new file mode 100644
index 0000000000..a8491f2791
--- /dev/null
+++ b/testing/web-platform/meta/css/css-page/page-box-000-print.html.ini
@@ -0,0 +1,2 @@
+[page-box-000-print.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-page/page-size-012-print.html.ini b/testing/web-platform/meta/css/css-page/page-size-012-print.html.ini
new file mode 100644
index 0000000000..f523f56acb
--- /dev/null
+++ b/testing/web-platform/meta/css/css-page/page-size-012-print.html.ini
@@ -0,0 +1,2 @@
+[page-size-012-print.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-position/sticky/position-sticky-fractional-offset.html.ini b/testing/web-platform/meta/css/css-position/sticky/position-sticky-fractional-offset.html.ini
new file mode 100644
index 0000000000..d6bfe98789
--- /dev/null
+++ b/testing/web-platform/meta/css/css-position/sticky/position-sticky-fractional-offset.html.ini
@@ -0,0 +1,3 @@
+[position-sticky-fractional-offset.html]
+ fuzzy:
+ if (os == "android"): maxDifference=0-1;totalPixels=0-54
diff --git a/testing/web-platform/meta/css/css-position/sticky/position-sticky-scrolled-remove-sibling.html.ini b/testing/web-platform/meta/css/css-position/sticky/position-sticky-scrolled-remove-sibling.html.ini
deleted file mode 100644
index 31d7879759..0000000000
--- a/testing/web-platform/meta/css/css-position/sticky/position-sticky-scrolled-remove-sibling.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[position-sticky-scrolled-remove-sibling.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [Sticky position and its overflow contribution in the vertical axis]
- expected: FAIL
-
- [Sticky position and its overflow contribution in the horizontal axis]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-properties-values-api/registered-property-computation.html.ini b/testing/web-platform/meta/css/css-properties-values-api/registered-property-computation.html.ini
new file mode 100644
index 0000000000..c3ad5e69a3
--- /dev/null
+++ b/testing/web-platform/meta/css/css-properties-values-api/registered-property-computation.html.ini
@@ -0,0 +1,3 @@
+[registered-property-computation.html]
+ [<color> values are computed correctly [color(from lime srgb g g g)\]]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade-001.html.ini
deleted file mode 100644
index 819a1cb8d9..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-001.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[highlight-cascade-001.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-002.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade-002.html.ini
deleted file mode 100644
index 59c9d5fe2c..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-002.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[highlight-cascade-002.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/cascade-highlight-004.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-004.html.ini
index 5630d0776b..5630d0776b 100644
--- a/testing/web-platform/meta/css/css-pseudo/cascade-highlight-004.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-004.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/cascade-highlight-005.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-005.html.ini
index e0dd642794..e0dd642794 100644
--- a/testing/web-platform/meta/css/css-pseudo/cascade-highlight-005.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/cascade-highlight-005.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-004.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-004.html.ini
index b595124410..b595124410 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-004.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-004.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-007.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-007.html.ini
index 36448b29f2..36448b29f2 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-cascade-007.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-007.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-009.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-009.html.ini
new file mode 100644
index 0000000000..0cd6cc8e9b
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-cascade-009.html.ini
@@ -0,0 +1,9 @@
+[highlight-cascade-009.html]
+ [body ::selection does not use its own custom property]
+ expected: FAIL
+
+ [div::selection uses the originating element custom property]
+ expected: FAIL
+
+ [div::selection does not use its own custom property]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-inheritance.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html.ini
index ff94170c4e..99456944d4 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-inheritance.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html.ini
@@ -1,6 +1,4 @@
[highlight-currentcolor-computed-inheritance.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[getComputedStyle() for ::selection]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-visited.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html.ini
index 455a9b9fa3..afcc72e82c 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed-visited.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html.ini
@@ -1,6 +1,4 @@
[highlight-currentcolor-computed-visited.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[getComputedStyle() for ::spelling-error at #target1]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html.ini
index 7dc660e742..6916ac6e66 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-computed.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html.ini
@@ -1,6 +1,4 @@
[highlight-currentcolor-computed.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[getComputedStyle() for ::spelling-error at #target1]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html.ini
index 3919445a96..3919445a96 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-001.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-002.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html.ini
index 44b19e7edb..44b19e7edb 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-properties-002.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html.ini
index 9cbcacbddd..9cbcacbddd 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html.ini
index e5976d0888..e5976d0888 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html.ini
index ad2279b704..ad2279b704 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html.ini
index 1310b157b1..1310b157b1 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html.ini
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-computed.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html.ini
index 6556075287..a85b03c6eb 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-computed.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html.ini
@@ -1,5 +1,4 @@
[highlight-pseudos-computed.html]
-
[getComputedStyle() for ::spelling-error]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html.ini
index a00d02fb98..a4e4bdc95a 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html.ini
@@ -1,6 +1,4 @@
[highlight-pseudos-inheritance-computed-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[getComputedStyle() for ::selection at #child1]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-visited-computed-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html.ini
index 6e4c4d4073..a1007c2d4a 100644
--- a/testing/web-platform/meta/css/css-pseudo/highlight-pseudos-visited-computed-001.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html.ini
@@ -1,6 +1,4 @@
[highlight-pseudos-visited-computed-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[getComputedStyle() for ::spelling-error at #target1]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-custom-properties-dynamic-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-custom-properties-dynamic-001.html.ini
new file mode 100644
index 0000000000..6c8f3ebc9b
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-custom-properties-dynamic-001.html.ini
@@ -0,0 +1,2 @@
+[highlight-custom-properties-dynamic-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-horizontal.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-horizontal.html.ini
new file mode 100644
index 0000000000..b15ba58b7c
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-horizontal.html.ini
@@ -0,0 +1,2 @@
+[highlight-painting-shadows-horizontal.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-vertical.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-vertical.html.ini
new file mode 100644
index 0000000000..b39e4c85fc
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-painting-shadows-vertical.html.ini
@@ -0,0 +1,2 @@
+[highlight-painting-shadows-vertical.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-003.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-003.html.ini
deleted file mode 100644
index d072f192d7..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-003.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[highlight-paired-cascade-003.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-006.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-006.html.ini
deleted file mode 100644
index e50cd23de7..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/highlight-paired-cascade-006.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[highlight-paired-cascade-006.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-styling-001.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-styling-001.html.ini
new file mode 100644
index 0000000000..9d81a2d624
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/highlight-styling-001.html.ini
@@ -0,0 +1,2 @@
+[highlight-styling-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/highlight-styling-002.html.ini b/testing/web-platform/meta/css/css-pseudo/highlight-styling-002.html.ini
deleted file mode 100644
index 7a3e98ca55..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/highlight-styling-002.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[highlight-styling-002.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/selection-over-highlight-001.html.ini b/testing/web-platform/meta/css/css-pseudo/selection-over-highlight-001.html.ini
new file mode 100644
index 0000000000..99bac19c15
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/selection-over-highlight-001.html.ini
@@ -0,0 +1,2 @@
+[selection-over-highlight-001.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-002.html.ini b/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-002.html.ini
index 7ab9a36a64..5bc3d5b5b6 100644
--- a/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-002.html.ini
+++ b/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-002.html.ini
@@ -1,2 +1,4 @@
[target-text-dynamic-002.html]
- expected: FAIL
+ expected:
+ if not fission and (os == "linux") and debug and not swgl: [FAIL, PASS]
+ FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-004.html.ini b/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-004.html.ini
deleted file mode 100644
index c8b5a4ab11..0000000000
--- a/testing/web-platform/meta/css/css-pseudo/target-text-dynamic-004.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[target-text-dynamic-004.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/target-text-shadow-horizontal.html.ini b/testing/web-platform/meta/css/css-pseudo/target-text-shadow-horizontal.html.ini
new file mode 100644
index 0000000000..d0ac640e63
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/target-text-shadow-horizontal.html.ini
@@ -0,0 +1,2 @@
+[target-text-shadow-horizontal.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-pseudo/target-text-shadow-vertical.html.ini b/testing/web-platform/meta/css/css-pseudo/target-text-shadow-vertical.html.ini
new file mode 100644
index 0000000000..1297931898
--- /dev/null
+++ b/testing/web-platform/meta/css/css-pseudo/target-text-shadow-vertical.html.ini
@@ -0,0 +1,2 @@
+[target-text-shadow-vertical.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scoping/font-face-002.html.ini b/testing/web-platform/meta/css/css-scoping/font-face-002.html.ini
deleted file mode 100644
index d96d99ec07..0000000000
--- a/testing/web-platform/meta/css/css-scoping/font-face-002.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[font-face-002.html]
- [@font-face from the document applies in the shadow tree]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scoping/font-face-003.html.ini b/testing/web-platform/meta/css/css-scoping/font-face-003.html.ini
deleted file mode 100644
index c5dcb20205..0000000000
--- a/testing/web-platform/meta/css/css-scoping/font-face-003.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[font-face-003.html]
- [@font-face from document applies to :host]
- expected:
- if os == "android": FAIL
diff --git a/testing/web-platform/meta/css/css-scoping/font-face-004.html.ini b/testing/web-platform/meta/css/css-scoping/font-face-004.html.ini
deleted file mode 100644
index 296198dc73..0000000000
--- a/testing/web-platform/meta/css/css-scoping/font-face-004.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[font-face-004.html]
- [@font-face from document applies to a slotted element]
- expected:
- if (os == "linux") and asan and not fission: [PASS, FAIL]
- if os == "android": FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html.ini
new file mode 100644
index 0000000000..2fa3bf143f
--- /dev/null
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html.ini
@@ -0,0 +1,6 @@
+[snap-events-with-pseudo-target.tentative.html]
+ [snapTarget for snapchanged is the owning element when a snap area belongs to a pseudo-element]
+ expected: FAIL
+
+ [snapTarget for snapchanging is the owning element when a snap area belongs to a pseudo-element]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html.ini
index 32a5cf1740..1d95085b49 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html.ini
@@ -4,3 +4,6 @@
[snapchanged is not fired if snap target doesn't change on programmatic scroll]
expected: FAIL
+
+ [Document.onsnapchanged event fires after snap target changes viascrollTo]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html.ini
index 2bf653f08b..67b1fae520 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html.ini
@@ -4,3 +4,6 @@
[snapchanged is not fired if snap target doesn't change on programmatic scroll]
expected: FAIL
+
+ [Element.onsnapchanged event fires after snap target changes viascrollTo]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html.ini
index dd1c693e8a..133eaf3f50 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html.ini
@@ -15,3 +15,6 @@
[snapchanged is not fired if snap target doesn't change on user scroll]
expected: FAIL
+
+ [Document.snapchanged event fires after snap target changes on touch scroll]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html.ini
index 4e34360439..f7eff5b121 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html.ini
@@ -15,3 +15,6 @@
[snapchanged is not fired if snap target doesn't change on user scroll]
expected: FAIL
+
+ [Element.onsnapchanged event fires after snap target changes on touch scroll]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html.ini
new file mode 100644
index 0000000000..0de1eb4490
--- /dev/null
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html.ini
@@ -0,0 +1,4 @@
+[snapchanged-scrolling-non-snapping-axis.tentative.html]
+ expected: TIMEOUT
+ [wheel scroll on non-snapping axis doesn't trigger snapchanged]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html.ini
index 7201a86c2b..8f6e409d88 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html.ini
@@ -5,5 +5,5 @@
[snapchanging does not fire on programmatic scrolls that don't trigger a change in snap targets.]
expected: FAIL
- [programmatic scroll triggers Document.snapchanging when scrolling a snap container]
+ [Document.snapchanging fires on programmatic scrolls that changes ascroller's snap targets.]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html.ini
index c686048d58..fbf0fc4d64 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html.ini
@@ -2,7 +2,10 @@
[snapchanging fires on programmatic scrolls that changes a scroller's snap targets.]
expected: FAIL
- [programmatic scroll triggers Element.onsnapchanging when scrolling a snap container]
+ [snapchanging should not fire since the snap target doesn't change.]
+ expected: FAIL
+
+ [Element.onsnapchanging fires on programmatic scrolls that changes a scroller's snap targets.]
expected: FAIL
[snapchanging should not fire since the snap target doesn't change.]
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html.ini
index 598a9e13bd..e87ae568da 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html.ini
@@ -18,5 +18,5 @@
[snapchanging doesn't fire if scroll doesn't reach different snap targets.]
expected: NOTRUN
- [Document.onsnapchanging fires when scrolling a snap container.]
+ [touch scrolling fires Document.onsnapchanging.]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html.ini b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html.ini
index 1a5a8d9444..bb43d4f6a5 100644
--- a/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html.ini
@@ -18,5 +18,5 @@
[snapchanging doesn't fire if scroll doesn't reach different snap targets.]
expected: NOTRUN
- [Element.onsnapchanging fires when scrolling a snap container.]
+ [touch scrolling fires Element.onsnapchanging.]
expected: NOTRUN
diff --git a/testing/web-platform/meta/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html.ini b/testing/web-platform/meta/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html.ini
new file mode 100644
index 0000000000..b8c85ddb69
--- /dev/null
+++ b/testing/web-platform/meta/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html.ini
@@ -0,0 +1,12 @@
+[layout-follows-focused-targeted-block.html]
+ [focused area prefered over targeted area.]
+ expected: FAIL
+
+ [targeted area prefered over non-focused area.]
+ expected: FAIL
+
+ [block axis area is preferred.]
+ expected: FAIL
+
+ [block axis area is preferred (vertical writing-mode).]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-syntax/custom-property-rule-ambiguity.html.ini b/testing/web-platform/meta/css/css-syntax/custom-property-rule-ambiguity.html.ini
deleted file mode 100644
index d0ceac7c52..0000000000
--- a/testing/web-platform/meta/css/css-syntax/custom-property-rule-ambiguity.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[custom-property-rule-ambiguity.html]
- [Rule that looks like a custom property declaration is ignored]
- expected: FAIL
-
- [Rule that looks like an invalid custom property declaration is ignored]
- expected: FAIL
-
- [Nested rule that looks like a custom property declaration]
- expected: FAIL
-
- [Nested rule that looks like an invalid custom property declaration]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-syntax/var-with-blocks.html.ini b/testing/web-platform/meta/css/css-syntax/var-with-blocks.html.ini
deleted file mode 100644
index c0cd6ecc9c..0000000000
--- a/testing/web-platform/meta/css/css-syntax/var-with-blocks.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[var-with-blocks.html]
- [Trailing block, leading var()]
- expected: FAIL
-
- [Leading block, trailing var()]
- expected: FAIL
-
- [In-block var() with trailing token]
- expected: FAIL
-
- [In-block var() with leading token]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-tables/col_removal.html.ini b/testing/web-platform/meta/css/css-tables/col_removal.html.ini
deleted file mode 100644
index ba37d329f7..0000000000
--- a/testing/web-platform/meta/css/css-tables/col_removal.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[col_removal.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [Table grid syncs after COL removal]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-211.html.ini b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-211.html.ini
new file mode 100644
index 0000000000..1559e04651
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-211.html.ini
@@ -0,0 +1,2 @@
+[letter-spacing-211.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-212.html.ini b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-212.html.ini
new file mode 100644
index 0000000000..ea9c921377
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-212.html.ini
@@ -0,0 +1,2 @@
+[letter-spacing-212.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-bengali-yaphala-001.html.ini b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-bengali-yaphala-001.html.ini
new file mode 100644
index 0000000000..409e44a065
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-bengali-yaphala-001.html.ini
@@ -0,0 +1,2 @@
+[letter-spacing-bengali-yaphala-001.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-002.html.ini b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-002.html.ini
new file mode 100644
index 0000000000..1a9e0413ed
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-002.html.ini
@@ -0,0 +1,2 @@
+[letter-spacing-ligatures-002.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-004.html.ini b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-004.html.ini
new file mode 100644
index 0000000000..54f70a7907
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/letter-spacing/letter-spacing-ligatures-004.html.ini
@@ -0,0 +1,2 @@
+[letter-spacing-ligatures-004.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/tab-size/tab-size-integer-004.html.ini b/testing/web-platform/meta/css/css-text/tab-size/tab-size-integer-004.html.ini
new file mode 100644
index 0000000000..0011f9fbec
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/tab-size/tab-size-integer-004.html.ini
@@ -0,0 +1,2 @@
+[tab-size-integer-004.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-002.html.ini b/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-002.html.ini
new file mode 100644
index 0000000000..bcbe7c4629
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-002.html.ini
@@ -0,0 +1,2 @@
+[tab-size-spacing-002.html]
+ prefs: [layout.css.letter-spacing.model:0]
diff --git a/testing/web-platform/meta/css/css-text/text-autospace/text-autospace-mixed-001.html.ini b/testing/web-platform/meta/css/css-text/text-autospace/text-autospace-mixed-001.html.ini
index 932fd98518..bd7f120cad 100644
--- a/testing/web-platform/meta/css/css-text/text-autospace/text-autospace-mixed-001.html.ini
+++ b/testing/web-platform/meta/css/css-text/text-autospace/text-autospace-mixed-001.html.ini
@@ -1,4 +1,6 @@
[text-autospace-mixed-001.html]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
[text-autospace-mixed-001]
expected: FAIL
diff --git a/testing/web-platform/meta/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html.ini b/testing/web-platform/meta/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html.ini
new file mode 100644
index 0000000000..7d6e3312e6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html.ini
@@ -0,0 +1,5 @@
+[text-spacing-trim-subset-001.html?class=halt,htb]
+ expected: FAIL
+
+[text-spacing-trim-subset-001.html?class=halt,vrl]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-transitions/starting-style-cascade.html.ini b/testing/web-platform/meta/css/css-transitions/starting-style-cascade.html.ini
deleted file mode 100644
index a494b94b2d..0000000000
--- a/testing/web-platform/meta/css/css-transitions/starting-style-cascade.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[starting-style-cascade.html]
- [@starting-style with higher specificity]
- expected: FAIL
-
- [Starting style inheriting from parent's after-change style]
- expected: FAIL
-
- [Starting style inheriting from parent's after-change style while parent transitioning]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-transitions/starting-style-rule-basic.html.ini b/testing/web-platform/meta/css/css-transitions/starting-style-rule-basic.html.ini
deleted file mode 100644
index 14812a2868..0000000000
--- a/testing/web-platform/meta/css/css-transitions/starting-style-rule-basic.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[starting-style-rule-basic.html]
- [Triggered transition from first style update]
- expected: FAIL
-
- [Triggered transition from display:none to display:block]
- expected: FAIL
-
- [Triggered transition on DOM insertion]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-transitions/starting-style-rule-none.html.ini b/testing/web-platform/meta/css/css-transitions/starting-style-rule-none.html.ini
deleted file mode 100644
index f01ead5128..0000000000
--- a/testing/web-platform/meta/css/css-transitions/starting-style-rule-none.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[starting-style-rule-none.html]
- [@starting-style with display:none]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-transitions/starting-style-rule-pseudo-elements.html.ini b/testing/web-platform/meta/css/css-transitions/starting-style-rule-pseudo-elements.html.ini
deleted file mode 100644
index ee7bb66a7e..0000000000
--- a/testing/web-platform/meta/css/css-transitions/starting-style-rule-pseudo-elements.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[starting-style-rule-pseudo-elements.html]
- [Triggered transition from first style update]
- expected: FAIL
-
- [Triggered transition from display:none to display:block]
- expected: FAIL
-
- [Triggered transition on DOM insertion]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-transitions/transition-events-with-document-change.html.ini b/testing/web-platform/meta/css/css-transitions/transition-events-with-document-change.html.ini
new file mode 100644
index 0000000000..4022cece1a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-transitions/transition-events-with-document-change.html.ini
@@ -0,0 +1,8 @@
+[transition-events-with-document-change.html]
+ expected:
+ if (os == "linux") and not tsan and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "linux") and tsan: [OK, TIMEOUT]
+ [transition events for an element changing document]
+ expected:
+ if (os == "linux") and not tsan and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "linux") and tsan: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html.ini b/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html.ini
deleted file mode 100644
index 335dbb9430..0000000000
--- a/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[animation-delay-end.tentative.html]
- expected: ERROR
diff --git a/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html.ini b/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html.ini
deleted file mode 100644
index 1f5d80503a..0000000000
--- a/testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[animation-delay-start.tentative.html]
- expected: ERROR
diff --git a/testing/web-platform/meta/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html.ini b/testing/web-platform/meta/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html.ini
index 5055ad4054..0d5d8d556f 100644
--- a/testing/web-platform/meta/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html.ini
@@ -2764,3 +2764,123 @@
[Web Animations: property <height> from [calc-size(37px, 200px)\] to [calc-size(37px, size * 2 + 3% + 17px)\] at (1.25) should be [75px\]]
expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size)\] to [50%\] at (-0.25) should be [87.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size)\] to [50%\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size)\] to [50%\] at (0.75) should be [137.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size)\] to [50%\] at (1) should be [150px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size)\] to [50%\] at (1.25) should be [162.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size)\] to [50%\] at (-0.25) should be [87.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size)\] to [50%\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size)\] to [50%\] at (0.75) should be [137.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size)\] to [50%\] at (1) should be [150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size)\] to [50%\] at (1.25) should be [162.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (-0.25) should be [87.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (0.75) should be [137.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (1) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (1.25) should be [162.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (-0.25) should be [87.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (0.75) should be [137.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (1) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size)\] to [50%\] at (1.25) should be [162.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (-0.25) should be [250px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0) should be [200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1.25) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (-0.25) should be [250px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0) should be [200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1.25) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (-0.25) should be [250px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0) should be [200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1.25) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (-0.25) should be [250px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0) should be [200px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <height> from [calc-size(auto, size * 2)\] to [50%\] at (1.25) should be [0px\]]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-values/calc-size/calc-size-parsing.tentative.html.ini b/testing/web-platform/meta/css/css-values/calc-size/calc-size-parsing.tentative.html.ini
index f60cb82ef1..cbe530a96c 100644
--- a/testing/web-platform/meta/css/css-values/calc-size/calc-size-parsing.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-values/calc-size/calc-size-parsing.tentative.html.ini
@@ -52,3 +52,21 @@
[e.style['width'\] = "calc-size(10px, sign(size) * size)" should set the property value]
expected: FAIL
+
+ [e.style['width'\] = "calc-size(30px)" should set the property value]
+ expected: FAIL
+
+ [e.style['width'\] = "calc-size(min(30px, 2em))" should set the property value]
+ expected: FAIL
+
+ [e.style['width'\] = "calc-size(calc-size(any, 30px))" should set the property value]
+ expected: FAIL
+
+ [e.style['width'\] = "calc-size(fit-content)" should set the property value]
+ expected: FAIL
+
+ [e.style['width'\] = "calc-size(calc-size(fit-content, size * 2))" should set the property value]
+ expected: FAIL
+
+ [e.style['width'\] = "calc-size(calc-size(30px))" should set the property value]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-values/container-progress-computed.tentative.html.ini b/testing/web-platform/meta/css/css-values/container-progress-computed.tentative.html.ini
index 23dc9dcbaf..a3ed59486a 100644
--- a/testing/web-platform/meta/css/css-values/container-progress-computed.tentative.html.ini
+++ b/testing/web-platform/meta/css/css-values/container-progress-computed.tentative.html.ini
@@ -26,16 +26,16 @@
[calc(container-progress(height of my-container from 10px to sign(50px - 500em) * 10px)) should be used-value-equivalent to -10.9]
expected: FAIL
- [container-progress(width of non-existing-container from 0px to 1px) should be used-value-equivalent to 1280]
+ [container-progress() width fallback for non-existing container name]
expected: FAIL
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 891]
+ [container-progress() height fallback for non-existing container names]
expected: FAIL
- [container-progress(width of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 1280]
+ [container-progress() width fallback for out of scope container]
expected: FAIL
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 891]
+ [container-progress() height fallback for out of scope container]
expected: FAIL
[calc(container-progress(width from 0px to 1px) * 1px) should be used-value-equivalent to 228px]
@@ -47,46 +47,10 @@
[calc(container-progress(width of my-container-2 from 0px to 1px) * 1deg) should be used-value-equivalent to 5051deg]
expected: FAIL
- [container-progress(width of non-existing-container from 0px to 1px) should be used-value-equivalent to 800]
- expected: FAIL
-
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 1136]
- expected: FAIL
-
- [container-progress(width of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 800]
- expected: FAIL
-
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 1136]
- expected: FAIL
-
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 955]
- expected: FAIL
-
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 955]
- expected: FAIL
-
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 865]
- expected: FAIL
-
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 865]
- expected: FAIL
-
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 954]
- expected: FAIL
-
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 915]
- expected: FAIL
-
- [container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 954]
- expected: FAIL
-
- [container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 915]
- expected: FAIL
-
[container-progress(height of non-existing-container from 0px to 1px) should be used-value-equivalent to 866]
expected:
- if os == "mac" and release_or_beta: FAIL
+ if (os == "mac") and release_or_beta: FAIL
[container-progress(height of out-of-scope-container from 0px to 1px) should be used-value-equivalent to 866]
expected:
- if os == "mac" and release_or_beta: FAIL
+ if (os == "mac") and release_or_beta: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html.ini
new file mode 100644
index 0000000000..9817197bff
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-new-main-new-iframe.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html.ini
new file mode 100644
index 0000000000..31a4f2660a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-new-main-old-iframe.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html.ini
new file mode 100644
index 0000000000..776ec0eb1a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-old-main-new-iframe.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html.ini
new file mode 100644
index 0000000000..9e0a168fd9
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-old-main-old-iframe.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html.ini
new file mode 100644
index 0000000000..cfe2261dc7
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-old-main.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html.ini
new file mode 100644
index 0000000000..aa8e604d5a
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html.ini
@@ -0,0 +1,2 @@
+[iframe-and-main-frame-transition-with-name-on-iframe.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/iframe-transition-destroyed-document-crash.html.ini b/testing/web-platform/meta/css/css-view-transitions/iframe-transition-destroyed-document-crash.html.ini
new file mode 100644
index 0000000000..ce8ee0f0ae
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/iframe-transition-destroyed-document-crash.html.ini
@@ -0,0 +1,2 @@
+[iframe-transition-destroyed-document-crash.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/new-content-ancestor-clipped.html.ini b/testing/web-platform/meta/css/css-view-transitions/new-content-ancestor-clipped.html.ini
new file mode 100644
index 0000000000..5a81458648
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/new-content-ancestor-clipped.html.ini
@@ -0,0 +1,2 @@
+[new-content-ancestor-clipped.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/new-content-changes-overflow-left.html.ini b/testing/web-platform/meta/css/css-view-transitions/new-content-changes-overflow-left.html.ini
new file mode 100644
index 0000000000..bc4607868c
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/new-content-changes-overflow-left.html.ini
@@ -0,0 +1,2 @@
+[new-content-changes-overflow-left.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/css-view-transitions/pseudo-element-overflow-hidden.html.ini b/testing/web-platform/meta/css/css-view-transitions/pseudo-element-overflow-hidden.html.ini
new file mode 100644
index 0000000000..52cd70333e
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/pseudo-element-overflow-hidden.html.ini
@@ -0,0 +1,2 @@
+[pseudo-element-overflow-hidden.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/pseudo-element-preserve-3d.html.ini b/testing/web-platform/meta/css/css-view-transitions/pseudo-element-preserve-3d.html.ini
new file mode 100644
index 0000000000..10fa40b5a2
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/pseudo-element-preserve-3d.html.ini
@@ -0,0 +1,2 @@
+[pseudo-element-preserve-3d.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildard.html.ini b/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildard.html.ini
deleted file mode 100644
index fc3df33399..0000000000
--- a/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildard.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[pseudo-with-classes-match-wildard.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildcard.html.ini b/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildcard.html.ini
new file mode 100644
index 0000000000..c6f6571d5f
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/pseudo-with-classes-match-wildcard.html.ini
@@ -0,0 +1,2 @@
+[pseudo-with-classes-match-wildcard.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/css-view-transitions/root-element-display-none-during-transition-crash.html.ini b/testing/web-platform/meta/css/css-view-transitions/root-element-display-none-during-transition-crash.html.ini
new file mode 100644
index 0000000000..41d3e40fb6
--- /dev/null
+++ b/testing/web-platform/meta/css/css-view-transitions/root-element-display-none-during-transition-crash.html.ini
@@ -0,0 +1,2 @@
+[root-element-display-none-during-transition-crash.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/css/zoom/iframe-zoom-nested.html.ini b/testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom-nested.html.ini
index 9ca681f122..9ca681f122 100644
--- a/testing/web-platform/meta/css/zoom/iframe-zoom-nested.html.ini
+++ b/testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom-nested.html.ini
diff --git a/testing/web-platform/meta/css/zoom/iframe-zoom.sub.html.ini b/testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom.sub.html.ini
index cdc7190e5e..cdc7190e5e 100644
--- a/testing/web-platform/meta/css/zoom/iframe-zoom.sub.html.ini
+++ b/testing/web-platform/meta/css/css-viewport/zoom/iframe-zoom.sub.html.ini
diff --git a/testing/web-platform/meta/css/cssom-view/offsetTop-offsetLeft-with-zoom.html.ini b/testing/web-platform/meta/css/cssom-view/offsetTop-offsetLeft-with-zoom.html.ini
deleted file mode 100644
index 0e344ab958..0000000000
--- a/testing/web-platform/meta/css/cssom-view/offsetTop-offsetLeft-with-zoom.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[offsetTop-offsetLeft-with-zoom.html]
- [Verifies that offsetTop and offsetLeft find the right OffsetParent and return values excluding the target zoom]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-element.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-element.html.ini
index 88fc41c002..81dea603f4 100644
--- a/testing/web-platform/meta/css/cssom-view/scroll-behavior-element.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-element.html.ini
@@ -4,12 +4,11 @@
[Element with smooth scroll-behavior ; scrollBy() with auto behavior]
expected:
- if (os == "win") and swgl: [PASS, FAIL]
if os == "linux": [PASS, FAIL]
[Element with smooth scroll-behavior ; scrollTo() with auto behavior]
expected:
- if (os == "win") and debug and not swgl: [PASS, FAIL]
+ if (os == "win") and debug: [PASS, FAIL]
if os == "linux": [PASS, FAIL]
[Element with smooth scroll-behavior ; scroll() with default behavior]
@@ -22,23 +21,17 @@
[Element with auto scroll-behavior ; scrollIntoView() with smooth behavior]
expected:
- if debug and (os == "linux") and not fission and not swgl: [PASS, FAIL]
+ if debug and (os == "linux") and not fission: [PASS, FAIL]
if debug and (os == "mac"): [PASS, FAIL]
[Element with smooth scroll-behavior ; scrollIntoView() with auto behavior]
expected:
- if not swgl and debug and (os == "linux") and not fission: [PASS, FAIL]
- if swgl: [PASS, FAIL]
+ if not fission and (os == "linux") and debug: [PASS, FAIL]
[Element with smooth scroll-behavior ; scroll() with auto behavior]
expected:
- if (os == "linux") and debug and fission and swgl: [PASS, FAIL]
- if (os == "linux") and debug and not fission: [PASS, FAIL]
+ if not fission and (os == "linux") and debug: [PASS, FAIL]
[Element with smooth scroll-behavior ; scroll() with smooth behavior]
expected:
if (processor == "x86") and not debug: [PASS, FAIL]
-
- [Element with auto scroll-behavior ; scrollBy() with smooth behavior]
- expected:
- if swgl and (os == "linux") and not fission: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-main-frame-window.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-main-frame-window.html.ini
new file mode 100644
index 0000000000..a782282d75
--- /dev/null
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-main-frame-window.html.ini
@@ -0,0 +1,4 @@
+[scroll-behavior-main-frame-window.html]
+ [Main frame with smooth scroll-behavior ; scroll() with default behavior]
+ expected:
+ if not fission and (os == "linux") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-scrollintoview-nested.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-scrollintoview-nested.html.ini
index 89f51ee229..5e18ed0daa 100644
--- a/testing/web-platform/meta/css/cssom-view/scroll-behavior-scrollintoview-nested.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-scrollintoview-nested.html.ini
@@ -1,5 +1,5 @@
[scroll-behavior-scrollintoview-nested.html]
[scrollIntoView with nested elements with different scroll-behavior]
expected:
- if (os == "linux") and not fission and not swgl: [PASS, FAIL]
- if os == "android": FAIL
+ if not fission and (os == "linux"): [PASS, FAIL]
+ if not fission and (os == "android"): FAIL
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-smooth-positions.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-smooth-positions.html.ini
index 7c7983f540..b1d9973082 100644
--- a/testing/web-platform/meta/css/cssom-view/scroll-behavior-smooth-positions.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-smooth-positions.html.ini
@@ -8,6 +8,7 @@
expected:
if (os == "win") and debug: [PASS, FAIL]
if (os == "linux") and not fission: [PASS, FAIL]
+ if (os == "android") and debug: [PASS, FAIL]
[Scroll positions when performing smooth scrolling from (1000, 500) to (500, 250) using scrollBy() ]
expected:
@@ -17,15 +18,6 @@
expected:
if (os == "win") and debug: [PASS, FAIL]
- [Scroll positions when performing smooth scrolling from 0 to 250 by setting scrollTop ]
- expected:
- if swgl and (os == "win"): [PASS, FAIL]
-
[Scroll positions when performing smooth scrolling from (0, 500) to (500, 250) using scrollTo() ]
expected:
- if (os == "linux") and swgl and not fission: [PASS, FAIL]
if (os == "win") and not debug: [PASS, FAIL]
-
- [Scroll positions when performing smooth scrolling from (1000, 0) to (500, 250) using scrollTo() ]
- expected:
- if swgl and (os == "linux") and not fission: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-root.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-root.html.ini
index ae344d3d26..6737ece6f5 100644
--- a/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-root.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-root.html.ini
@@ -7,7 +7,7 @@
[Subframe setting scrollTop with smooth scroll-behavior]
expected:
- if (os == "win") and debug and not swgl: [PASS, FAIL]
+ if (os == "win") and debug: [PASS, FAIL]
[Subframe with smooth scroll-behavior ; scrollTo() with smooth behavior]
expected:
@@ -19,9 +19,12 @@
[Subframe with smooth scroll-behavior ; scroll() with default behavior]
expected:
- if not fission and not swgl and debug: [PASS, FAIL]
- if not fission and swgl: [PASS, FAIL]
+ if not fission and debug: [PASS, FAIL]
[Subframe with smooth scroll-behavior ; scrollBy() with auto behavior]
expected:
- if not fission and debug and not swgl: [PASS, FAIL]
+ if not fission and debug: [PASS, FAIL]
+
+ [Subframe with auto scroll-behavior ; scroll() with smooth behavior]
+ expected:
+ if not fission and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-window.html.ini b/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-window.html.ini
index f80bab1793..931a52f70f 100644
--- a/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-window.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scroll-behavior-subframe-window.html.ini
@@ -8,11 +8,6 @@
if debug and (os == "linux") and not fission: [PASS, FAIL]
if debug and (os == "mac"): [PASS, FAIL]
- [Main frame with smooth scroll-behavior ; scrollTo() with auto behavior]
- expected:
- if swgl and (os == "win"): [PASS, FAIL]
- if swgl and (os == "linux"): [PASS, FAIL]
-
[Main frame with smooth scroll-behavior ; scrollTo() with smooth behavior]
expected:
if (os == "win") and debug: [PASS, FAIL]
@@ -24,3 +19,7 @@
[Main frame with auto scroll-behavior ; scrollBy() with smooth behavior]
expected:
if (processor == "x86") and debug: [PASS, FAIL]
+
+ [Main frame with auto scroll-behavior ; scroll() with smooth behavior]
+ expected:
+ if not fission and (os == "linux") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/css/cssom-view/scrollIntoView-smooth.html.ini b/testing/web-platform/meta/css/cssom-view/scrollIntoView-smooth.html.ini
index ae9764e572..158d14c244 100644
--- a/testing/web-platform/meta/css/cssom-view/scrollIntoView-smooth.html.ini
+++ b/testing/web-platform/meta/css/cssom-view/scrollIntoView-smooth.html.ini
@@ -11,6 +11,7 @@
[Smooth scrollIntoView should scroll the element to the 'nearest' position]
expected:
+ if (os == "linux") and debug and not fission: [PASS, FAIL]
if os == "android": FAIL
[Smooth scrollIntoView should scroll the element to the 'start' position]
diff --git a/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html.ini b/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html.ini
deleted file mode 100644
index 83cd26a560..0000000000
--- a/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[CSSStyleSheet-constructable-baseURL.tentative.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html.ini
new file mode 100644
index 0000000000..1709005e02
--- /dev/null
+++ b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html.ini
@@ -0,0 +1,2 @@
+[backdrop-filter-backdrop-root-backdrop-filter.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html.ini
new file mode 100644
index 0000000000..f8828e82b5
--- /dev/null
+++ b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html.ini
@@ -0,0 +1,2 @@
+[backdrop-filter-backdrop-root-clip-path.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-filter.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-filter.html.ini
new file mode 100644
index 0000000000..025a99e41f
--- /dev/null
+++ b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-filter.html.ini
@@ -0,0 +1,2 @@
+[backdrop-filter-backdrop-root-filter.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html.ini
new file mode 100644
index 0000000000..5852be841d
--- /dev/null
+++ b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html.ini
@@ -0,0 +1,2 @@
+[backdrop-filter-backdrop-root-mix-blend-mode.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-opacity.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-opacity.html.ini
new file mode 100644
index 0000000000..95f299d827
--- /dev/null
+++ b/testing/web-platform/meta/css/filter-effects/backdrop-filter-backdrop-root-opacity.html.ini
@@ -0,0 +1,2 @@
+[backdrop-filter-backdrop-root-opacity.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/backdrop-filter-isolation.html.ini b/testing/web-platform/meta/css/filter-effects/backdrop-filter-isolation.html.ini
deleted file mode 100644
index ac98c983cc..0000000000
--- a/testing/web-platform/meta/css/filter-effects/backdrop-filter-isolation.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[backdrop-filter-isolation.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/css/filter-effects/svg-external-filter-resource.html.ini b/testing/web-platform/meta/css/filter-effects/svg-external-filter-resource.html.ini
index 2cec121ac6..40afa9668a 100644
--- a/testing/web-platform/meta/css/filter-effects/svg-external-filter-resource.html.ini
+++ b/testing/web-platform/meta/css/filter-effects/svg-external-filter-resource.html.ini
@@ -1,2 +1,4 @@
[svg-external-filter-resource.html]
- expected: FAIL
+ expected:
+ if (os == "win") and (processor == "x86_64") and debug and not swgl: [FAIL, PASS]
+ if (os == "win") and (processor == "x86_64") and not debug: FAIL
diff --git a/testing/web-platform/meta/css/printing/existing-transition-in-media-print.tentative.html.ini b/testing/web-platform/meta/css/printing/existing-transition-in-media-print.tentative.html.ini
index f1928f6c08..d0df72b99b 100644
--- a/testing/web-platform/meta/css/printing/existing-transition-in-media-print.tentative.html.ini
+++ b/testing/web-platform/meta/css/printing/existing-transition-in-media-print.tentative.html.ini
@@ -1,3 +1,4 @@
[existing-transition-in-media-print.tentative.html]
expected:
- if (os == "mac") and not debug: [PASS, TIMEOUT]
+ if (os == "win") and swgl: PASS
+ if os == "mac": [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/css/selectors/user-invalid.html.ini b/testing/web-platform/meta/css/selectors/user-invalid.html.ini
new file mode 100644
index 0000000000..c009355afe
--- /dev/null
+++ b/testing/web-platform/meta/css/selectors/user-invalid.html.ini
@@ -0,0 +1,3 @@
+[user-invalid.html]
+ [A required date should match :user-invalid if the user unchecks it and blurs.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html.ini b/testing/web-platform/meta/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html.ini
new file mode 100644
index 0000000000..398c5bc45b
--- /dev/null
+++ b/testing/web-platform/meta/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html.ini
@@ -0,0 +1,9 @@
+[user-valid-user-invalid-multifield-inputs.tentative.html]
+ [<input type=date> keyboard behavior for :user-valid/:user-invalid.]
+ expected: FAIL
+
+ [<input type=time> keyboard behavior for :user-valid/:user-invalid.]
+ expected: FAIL
+
+ [<input type=datetime-local> keyboard behavior for :user-valid/:user-invalid.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/css/selectors/user-valid.html.ini b/testing/web-platform/meta/css/selectors/user-valid.html.ini
new file mode 100644
index 0000000000..fcfd6596c6
--- /dev/null
+++ b/testing/web-platform/meta/css/selectors/user-valid.html.ini
@@ -0,0 +1,3 @@
+[user-valid.html]
+ [Date inputs should match :user-valid after the user types a value into it.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/device-memory/__dir__.ini b/testing/web-platform/meta/device-memory/__dir__.ini
new file mode 100644
index 0000000000..717fd98173
--- /dev/null
+++ b/testing/web-platform/meta/device-memory/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1629868
+implementation-status: backlog \ No newline at end of file
diff --git a/testing/web-platform/meta/device-posture/__dir__.ini b/testing/web-platform/meta/device-posture/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/device-posture/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/direct-sockets/__dir__.ini b/testing/web-platform/meta/direct-sockets/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/direct-sockets/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/document-picture-in-picture/__dir__.ini b/testing/web-platform/meta/document-picture-in-picture/__dir__.ini
new file mode 100644
index 0000000000..a683aedfcb
--- /dev/null
+++ b/testing/web-platform/meta/document-picture-in-picture/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1676069
+implementation-status: not-implementing
diff --git a/testing/web-platform/meta/document-policy/experimental-features/unsized-media.tentative.https.sub.html.ini b/testing/web-platform/meta/document-policy/experimental-features/unsized-media.tentative.https.sub.html.ini
index 33eae65a15..c1450e42cb 100644
--- a/testing/web-platform/meta/document-policy/experimental-features/unsized-media.tentative.https.sub.html.ini
+++ b/testing/web-platform/meta/document-policy/experimental-features/unsized-media.tentative.https.sub.html.ini
@@ -1,7 +1,8 @@
[unsized-media.tentative.https.sub.html]
expected:
+ if (os == "linux") and not debug and (processor == "x86_64"): [OK, CRASH]
+ if (os == "linux") and not debug and (processor == "x86"): [TIMEOUT, OK, CRASH]
if (os == "mac") and not debug: [OK, TIMEOUT]
- if (os == "linux") and not debug: [OK, CRASH]
if (os == "android") and not debug: [OK, ERROR]
[Test image with attribute style=width:500px; and attribute undefined=undefined on src /document-policy/experimental-features/resources/image.jpg]
expected: FAIL
@@ -9,6 +10,7 @@
[Test video with attribute height=800 and attribute undefined=undefined]
expected:
if (os == "mac") and not debug: [FAIL, TIMEOUT]
+ if (os == "linux") and (processor == "x86"): TIMEOUT
FAIL
[Test image with attribute height=800 and attribute undefined=undefined on src /document-policy/experimental-features/resources/image.png]
@@ -24,9 +26,7 @@
expected: FAIL
[Test video with attribute style=height:800px; and attribute undefined=undefined]
- expected:
- if (os == "mac") and not debug: [FAIL, TIMEOUT]
- [FAIL, TIMEOUT]
+ expected: [FAIL, TIMEOUT]
[Test image with attribute undefined=undefined and attribute undefined=undefined on src /document-policy/experimental-features/resources/image.svg]
expected: FAIL
diff --git a/testing/web-platform/meta/dom/events/webkit-animation-iteration-event.html.ini b/testing/web-platform/meta/dom/events/webkit-animation-iteration-event.html.ini
index dce8796746..e40a5a6f88 100644
--- a/testing/web-platform/meta/dom/events/webkit-animation-iteration-event.html.ini
+++ b/testing/web-platform/meta/dom/events/webkit-animation-iteration-event.html.ini
@@ -5,40 +5,33 @@
[webkitAnimationIteration event listener is case sensitive]
expected:
if (os == "linux") and fission and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if (os == "win") and not debug: PASS
+ if (os == "linux") and fission and not debug: [PASS, NOTRUN]
+ if (os == "win") and debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "mac") and debug: [PASS, NOTRUN]
if (os == "linux") and not fission: [PASS, FAIL, NOTRUN]
- if os == "mac": PASS
- if os == "android": PASS
- [PASS, NOTRUN]
[onwebkitanimationiteration event handler should trigger for an animation]
expected: [PASS, TIMEOUT]
[webkitAnimationIteration event listener should trigger for an animation]
expected:
- if debug and fission and (os == "win") and (processor == "x86_64") and not swgl: [PASS, NOTRUN, TIMEOUT]
- if debug and not fission: [PASS, NOTRUN]
- if not debug: [PASS, NOTRUN]
- [PASS, TIMEOUT, NOTRUN]
+ if debug and fission: [PASS, TIMEOUT, NOTRUN]
+ [PASS, NOTRUN]
[webkitAnimationIteration event listener should not trigger if an unprefixed listener also exists]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
if (os == "linux") and debug and fission: [PASS, TIMEOUT, NOTRUN]
+ if (os == "mac") and debug: [PASS, TIMEOUT, NOTRUN]
if os == "android": PASS
[PASS, NOTRUN]
[onwebkitanimationiteration event handler should not trigger if an unprefixed event handler also exists]
- expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN, TIMEOUT]
- [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[event types for prefixed and unprefixed animationiteration event handlers should be named appropriately]
expected:
- if debug and not fission: [PASS, NOTRUN]
- if not debug: [PASS, NOTRUN]
- [PASS, TIMEOUT, NOTRUN]
+ if debug and fission: [PASS, TIMEOUT, NOTRUN]
+ [PASS, NOTRUN]
[event types for prefixed and unprefixed animationiteration event listeners should be named appropriately]
expected:
@@ -48,14 +41,12 @@
[webkitAnimationIteration event listener should not trigger if an unprefixed event handler also exists]
expected:
- if debug and fission and (processor == "x86_64") and (os == "win") and not swgl: [PASS, NOTRUN, TIMEOUT]
- if debug and not fission: [PASS, NOTRUN]
- if not debug: [PASS, NOTRUN]
- [PASS, TIMEOUT, NOTRUN]
+ if debug and (os == "linux") and fission: [PASS, TIMEOUT, NOTRUN]
+ if debug and (os == "win"): [PASS, TIMEOUT, NOTRUN]
+ if debug and (os == "mac"): [PASS, TIMEOUT, NOTRUN]
+ [PASS, NOTRUN]
[onwebkitanimationiteration event handler should not trigger if an unprefixed listener also exists]
expected:
- if debug and fission and (os == "win") and (processor == "x86_64") and not swgl: [PASS, NOTRUN, TIMEOUT]
- if debug and not fission: [PASS, NOTRUN]
- if not debug: [PASS, NOTRUN]
- [PASS, TIMEOUT, NOTRUN]
+ if debug and fission: [PASS, TIMEOUT, NOTRUN]
+ [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/dom/idlharness.window.js.ini b/testing/web-platform/meta/dom/idlharness.window.js.ini
index a99b583219..f40ae6720b 100644
--- a/testing/web-platform/meta/dom/idlharness.window.js.ini
+++ b/testing/web-platform/meta/dom/idlharness.window.js.ini
@@ -5,4 +5,5 @@
[idlharness.window.html?exclude=Node]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
-
+ [ShadowRoot interface: attribute serializable]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html.ini b/testing/web-platform/meta/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html.ini
new file mode 100644
index 0000000000..c274062d8b
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html.ini
@@ -0,0 +1,3 @@
+[Node-append-meta-referrer-and-script-from-fragment.tentative.html]
+ [<meta name=referrer> gets processed and applied in the post-insertion steps]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/Node-moveBefore.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/Node-moveBefore.html.ini
new file mode 100644
index 0000000000..2a4bd6c32f
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/Node-moveBefore.html.ini
@@ -0,0 +1,102 @@
+[Node-moveBefore.html]
+ [Should check the 'parent' type before checking whether 'child' is a child of 'parent']
+ expected: FAIL
+
+ [Should check that 'node' is not an ancestor of 'parent' before checking whether 'child' is a child of 'parent']
+ expected: FAIL
+
+ [Should check whether 'child' is a child of 'parent' before checking whether 'node' is of a type that can have a parent.]
+ expected: FAIL
+
+ [Should check whether 'child' is a child of 'parent' before checking whether 'node' is of a type that can have a parent of the type that 'parent' is.]
+ expected: FAIL
+
+ [Should check whether 'child' is a child of 'parent' before checking whether 'node' can be inserted into the document given the kids the document has right now.]
+ expected: FAIL
+
+ [If node is a host-including inclusive ancestor of parent, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is not a DocumentFragment, DocumentType, Element, Text, ProcessingInstruction, or Comment node, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a Text node and parent is a document, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a doctype and parent is not a document, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a DocumentFragment with multiple elements and parent is a document, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a DocumentFragment with an element and parent is a document with another element, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is an Element and parent is a document with another element, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a doctype and parent is a document with another doctype, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [If node is a doctype and parent is a document with an element, then throw a HierarchyRequestError DOMException.]
+ expected: FAIL
+
+ [Calling moveBefore an a leaf node DocumentType must throw HIERARCHY_REQUEST_ERR.]
+ expected: FAIL
+
+ [Calling moveBefore an a leaf node Text must throw HIERARCHY_REQUEST_ERR.]
+ expected: FAIL
+
+ [Calling moveBefore an a leaf node Comment must throw HIERARCHY_REQUEST_ERR.]
+ expected: FAIL
+
+ [Calling moveBefore an a leaf node ProcessingInstruction must throw HIERARCHY_REQUEST_ERR.]
+ expected: FAIL
+
+ [Calling moveBefore with an inclusive ancestor of the context object must throw HIERARCHY_REQUEST_ERR.]
+ expected: FAIL
+
+ [Calling moveBefore with a reference child whose parent is not the context node must throw a NotFoundError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a document or text node should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a DocumentFragment that contains a text node or too many elements should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a DocumentFragment with an element if there already is an element child should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document and a doctype is following the reference child, inserting a DocumentFragment with an element should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a DocumentFragment with an element before the doctype should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting an element if there already is an element child should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting an element before the doctype should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document and a doctype is following the reference child, inserting an element should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a doctype if there already is a doctype child should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document, inserting a doctype after the document element should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a document with and element child, appending a doctype should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is a DocumentFragment, inserting a document or a doctype should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [If the context node is an element, inserting a document or a doctype should throw a HierarchyRequestError.]
+ expected: FAIL
+
+ [Inserting a node before itself should not move the node]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-left.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-left.html.ini
new file mode 100644
index 0000000000..f109b605d2
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-left.html.ini
@@ -0,0 +1,3 @@
+[continue-css-animation-left.html]
+ [Node.moveBefore should preserve CSS animation state (left)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html.ini
new file mode 100644
index 0000000000..05654dd2a4
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html.ini
@@ -0,0 +1,3 @@
+[continue-css-animation-transform.html]
+ [Node.moveBefore should preserve CSS animation state (transform)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html.ini
new file mode 100644
index 0000000000..2d225501ec
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html.ini
@@ -0,0 +1,3 @@
+[continue-css-transition-left-pseudo.html]
+ [Node.moveBefore should preserve CSS transition state on pseudo-elements (left)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left.html.ini
new file mode 100644
index 0000000000..60f17eb404
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-left.html.ini
@@ -0,0 +1,3 @@
+[continue-css-transition-left.html]
+ [Node.moveBefore should preserve CSS transition state (left)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html.ini
new file mode 100644
index 0000000000..866de2a12b
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html.ini
@@ -0,0 +1,3 @@
+[continue-css-transition-transform-pseudo.html]
+ [Node.moveBefore should preserve CSS transition state on pseudo-elements (transform)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html.ini
new file mode 100644
index 0000000000..895b331eff
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html.ini
@@ -0,0 +1,3 @@
+[continue-css-transition-transform.html]
+ [Node.moveBefore should preserve CSS transition state (transform)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html.ini
new file mode 100644
index 0000000000..e38f3a2648
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html.ini
@@ -0,0 +1,3 @@
+[css-animation-commit-styles.html]
+ [Calling commitStyles after Node.moveBefore should commit mid-transition value]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-document.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-document.html.ini
new file mode 100644
index 0000000000..11bd069d36
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-document.html.ini
@@ -0,0 +1,16 @@
+[css-transition-cross-document.html]
+ expected:
+ if (os == "linux") and debug and fission: [OK, TIMEOUT]
+ if (os == "linux") and debug and not fission: [OK, TIMEOUT]
+ if (os == "win") and not debug: TIMEOUT
+ if (os == "linux") and not debug: TIMEOUT
+ if os == "android": OK
+ [TIMEOUT, OK]
+ [Moving a transition across documents should reset its state]
+ expected:
+ if (os == "linux") and debug and fission: [FAIL, TIMEOUT]
+ if (os == "linux") and debug and not fission: [FAIL, TIMEOUT]
+ if (os == "win") and not debug: TIMEOUT
+ if (os == "linux") and not debug: TIMEOUT
+ if os == "android": FAIL
+ [TIMEOUT, FAIL]
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html.ini
new file mode 100644
index 0000000000..a19b4f2e5d
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html.ini
@@ -0,0 +1,3 @@
+[css-transition-cross-shadow.html]
+ [Moving an element with a transition across shadow boundaries should reset the transition]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html.ini
new file mode 100644
index 0000000000..dd6192bc1b
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html.ini
@@ -0,0 +1,3 @@
+[css-transition-to-disconnected-document.html]
+ [Moving an element with a transition to a disconnected document should reset the transitionm state]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-trigger.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-trigger.html.ini
new file mode 100644
index 0000000000..272163fb32
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/css-transition-trigger.html.ini
@@ -0,0 +1,3 @@
+[css-transition-trigger.html]
+ [Node.moveBefore should trigger CSS transition state (left) if needed]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/focus-preserve.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/focus-preserve.html.ini
new file mode 100644
index 0000000000..f51e042347
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/focus-preserve.html.ini
@@ -0,0 +1,12 @@
+[focus-preserve.html]
+ [when reparenting an element, don't automatically reset the document focus]
+ expected: FAIL
+
+ [when reparenting a focused element into an inert parent, reset the document focus]
+ expected: FAIL
+
+ [when reparenting a focused element into a hidden parent, reset the document focus]
+ expected: FAIL
+
+ [when reparenting an ancestor of an focused element into a hidden parent, reset the document focus]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/nodes/moveBefore/tentative/fullscreen-preserve.html.ini b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/fullscreen-preserve.html.ini
new file mode 100644
index 0000000000..19a5e7273f
--- /dev/null
+++ b/testing/web-platform/meta/dom/nodes/moveBefore/tentative/fullscreen-preserve.html.ini
@@ -0,0 +1,3 @@
+[fullscreen-preserve.html]
+ [Document#fullscreenElement]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/observable/tentative/observable-every.any.js.ini b/testing/web-platform/meta/dom/observable/tentative/observable-every.any.js.ini
new file mode 100644
index 0000000000..bcf426a807
--- /dev/null
+++ b/testing/web-platform/meta/dom/observable/tentative/observable-every.any.js.ini
@@ -0,0 +1,62 @@
+[observable-every.any.html]
+ [every(): Promise resolves to true if all values pass the predicate]
+ expected: FAIL
+
+ [every(): Promise resolves to false if any value fails the predicate]
+ expected: FAIL
+
+ [every(): Abort the subscription to the source if the predicate does not pass]
+ expected: FAIL
+
+ [every(): Lifecycle checks when all values pass the predicate]
+ expected: FAIL
+
+ [every(): Lifecycle checks when any value fails the predicate]
+ expected: FAIL
+
+ [every(): Resolves with true if the observable completes without emitting a value]
+ expected: FAIL
+
+ [every(): Rejects with any error emitted from the source observable]
+ expected: FAIL
+
+ [every(): Rejects with any error thrown from the predicate]
+ expected: FAIL
+
+ [every(): Index is passed into the predicate]
+ expected: FAIL
+
+ [every(): Rejects with a DOMException if the source Observable is aborted]
+ expected: FAIL
+
+
+[observable-every.any.worker.html]
+ [every(): Promise resolves to true if all values pass the predicate]
+ expected: FAIL
+
+ [every(): Promise resolves to false if any value fails the predicate]
+ expected: FAIL
+
+ [every(): Abort the subscription to the source if the predicate does not pass]
+ expected: FAIL
+
+ [every(): Lifecycle checks when all values pass the predicate]
+ expected: FAIL
+
+ [every(): Lifecycle checks when any value fails the predicate]
+ expected: FAIL
+
+ [every(): Resolves with true if the observable completes without emitting a value]
+ expected: FAIL
+
+ [every(): Rejects with any error emitted from the source observable]
+ expected: FAIL
+
+ [every(): Rejects with any error thrown from the predicate]
+ expected: FAIL
+
+ [every(): Index is passed into the predicate]
+ expected: FAIL
+
+ [every(): Rejects with a DOMException if the source Observable is aborted]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/observable/tentative/observable-filter.any.js.ini b/testing/web-platform/meta/dom/observable/tentative/observable-filter.any.js.ini
index 996a85a908..e813df1744 100644
--- a/testing/web-platform/meta/dom/observable/tentative/observable-filter.any.js.ini
+++ b/testing/web-platform/meta/dom/observable/tentative/observable-filter.any.js.ini
@@ -14,6 +14,9 @@
[filter(): Upon source completion, source Observable teardown sequence happens after downstream filter complete() is called]
expected: FAIL
+ [filter(): Index is passed correctly to predicate]
+ expected: FAIL
+
[observable-filter.any.html]
[filter(): Returned Observable filters out results based on predicate]
@@ -30,3 +33,6 @@
[filter(): Upon source completion, source Observable teardown sequence happens after downstream filter complete() is called]
expected: FAIL
+
+ [filter(): Index is passed correctly to predicate]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/observable/tentative/observable-find.any.js.ini b/testing/web-platform/meta/dom/observable/tentative/observable-find.any.js.ini
new file mode 100644
index 0000000000..719eaa35c4
--- /dev/null
+++ b/testing/web-platform/meta/dom/observable/tentative/observable-find.any.js.ini
@@ -0,0 +1,38 @@
+[observable-find.any.worker.html]
+ [find(): Promise resolves with the first value that passes the predicate]
+ expected: FAIL
+
+ [find(): Promise resolves with undefined if no value passes the predicate]
+ expected: FAIL
+
+ [find(): Promise rejects with the error emitted from the source Observable]
+ expected: FAIL
+
+ [find(): Promise rejects with any error thrown from the predicate]
+ expected: FAIL
+
+ [find(): Passes the index of the value to the predicate]
+ expected: FAIL
+
+ [find(): Rejects with AbortError when the signal is aborted]
+ expected: FAIL
+
+
+[observable-find.any.html]
+ [find(): Promise resolves with the first value that passes the predicate]
+ expected: FAIL
+
+ [find(): Promise resolves with undefined if no value passes the predicate]
+ expected: FAIL
+
+ [find(): Promise rejects with the error emitted from the source Observable]
+ expected: FAIL
+
+ [find(): Promise rejects with any error thrown from the predicate]
+ expected: FAIL
+
+ [find(): Passes the index of the value to the predicate]
+ expected: FAIL
+
+ [find(): Rejects with AbortError when the signal is aborted]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/observable/tentative/observable-inspect.any.js.ini b/testing/web-platform/meta/dom/observable/tentative/observable-inspect.any.js.ini
new file mode 100644
index 0000000000..467445ed86
--- /dev/null
+++ b/testing/web-platform/meta/dom/observable/tentative/observable-inspect.any.js.ini
@@ -0,0 +1,80 @@
+[observable-inspect.any.worker.html]
+ [inspect(): Provides a pre-subscription subscribe callback]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the values and completions of the source observable using an observer]
+ expected: FAIL
+
+ [inspect(): Error handler does not stop error from being reported to the global, when subscriber does not pass error handler]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the values and errors of the source observable using an observer. Errors are passed through]
+ expected: FAIL
+
+ [inspect(): ObserverCallback passed in]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer next handler is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer error handler in inspect() is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer complete handler is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the next handler function in do should be caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Errors thrown in subscribe() Inspector handler subscribe handler are caught and sent to error callback]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the moment a source observable is unsubscribed from]
+ expected: FAIL
+
+ [inspect(): Inspector abort() handler is not called if the source completes before the result is unsubscribed from]
+ expected: FAIL
+
+ [inspect(): Errors thrown from inspect()'s abort() handler are caught and reported to the global, because the subscription is already closed by the time the handler runs]
+ expected: FAIL
+
+
+[observable-inspect.any.html]
+ [inspect(): Provides a pre-subscription subscribe callback]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the values and completions of the source observable using an observer]
+ expected: FAIL
+
+ [inspect(): Error handler does not stop error from being reported to the global, when subscriber does not pass error handler]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the values and errors of the source observable using an observer. Errors are passed through]
+ expected: FAIL
+
+ [inspect(): ObserverCallback passed in]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer next handler is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer error handler in inspect() is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the observer complete handler is caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Throwing an error in the next handler function in do should be caught and sent to the error callback of the result observable]
+ expected: FAIL
+
+ [inspect(): Errors thrown in subscribe() Inspector handler subscribe handler are caught and sent to error callback]
+ expected: FAIL
+
+ [inspect(): Provides a way to tap into the moment a source observable is unsubscribed from]
+ expected: FAIL
+
+ [inspect(): Inspector abort() handler is not called if the source completes before the result is unsubscribed from]
+ expected: FAIL
+
+ [inspect(): Errors thrown from inspect()'s abort() handler are caught and reported to the global, because the subscription is already closed by the time the handler runs]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/observable/tentative/observable-some.any.js.ini b/testing/web-platform/meta/dom/observable/tentative/observable-some.any.js.ini
new file mode 100644
index 0000000000..12776e6465
--- /dev/null
+++ b/testing/web-platform/meta/dom/observable/tentative/observable-some.any.js.ini
@@ -0,0 +1,44 @@
+[observable-some.any.html]
+ [some(): subscriber is inactive after the first value that passes the predicate, because the source was unsubscribed from]
+ expected: FAIL
+
+ [observable-some]
+ expected: FAIL
+
+ [observable-some 1]
+ expected: FAIL
+
+ [some(): The returned promise rejects with an error if the predicate errors]
+ expected: FAIL
+
+ [some(): The returned promise rejects with an error if the source observable errors]
+ expected: FAIL
+
+ [some(): The returned promise resolves as false if the source observable completes without emitting a value]
+ expected: FAIL
+
+ [some(): The return promise rejects with a DOMException if the signal is aborted]
+ expected: FAIL
+
+
+[observable-some.any.worker.html]
+ [some(): subscriber is inactive after the first value that passes the predicate, because the source was unsubscribed from]
+ expected: FAIL
+
+ [observable-some]
+ expected: FAIL
+
+ [observable-some 1]
+ expected: FAIL
+
+ [some(): The returned promise rejects with an error if the predicate errors]
+ expected: FAIL
+
+ [some(): The returned promise rejects with an error if the source observable errors]
+ expected: FAIL
+
+ [some(): The returned promise resolves as false if the source observable completes without emitting a value]
+ expected: FAIL
+
+ [some(): The return promise rejects with a DOMException if the signal is aborted]
+ expected: FAIL
diff --git a/testing/web-platform/meta/dom/ranges/Range-isPointInRange-shadowdom.tentative.html.ini b/testing/web-platform/meta/dom/ranges/Range-isPointInRange-shadowdom.tentative.html.ini
new file mode 100644
index 0000000000..9aaa5225b7
--- /dev/null
+++ b/testing/web-platform/meta/dom/ranges/Range-isPointInRange-shadowdom.tentative.html.ini
@@ -0,0 +1,7 @@
+[Range-isPointInRange-shadowdom.tentative.html]
+ [isPointInRange() test for collapsed selection]
+ expected:
+ if release_or_beta: FAIL # ShadowDOM Selection is not enabled for release_or_beta, so getComposedRanges() doesn't exist
+ [isPointInRange() test for non-collapsed selection]
+ expected:
+ if release_or_beta: FAIL # ShadowDOM Selection is not enabled for release_or_beta, so getComposedRanges() doesn't exist
diff --git a/testing/web-platform/meta/dom/xslt/large-cdata.html.ini b/testing/web-platform/meta/dom/xslt/large-cdata.html.ini
deleted file mode 100644
index 00fb643e54..0000000000
--- a/testing/web-platform/meta/dom/xslt/large-cdata.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[large-cdata.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/dpub-aam/role/roles.html.ini b/testing/web-platform/meta/dpub-aam/role/roles.html.ini
deleted file mode 100644
index 834675c34d..0000000000
--- a/testing/web-platform/meta/dpub-aam/role/roles.html.ini
+++ /dev/null
@@ -1,54 +0,0 @@
-[roles.html]
- [role: doc-abstract]
- expected: FAIL
-
- [role: doc-backlink]
- expected: FAIL
-
- [role: doc-biblioref]
- expected: FAIL
-
- [role: doc-colophon]
- expected: FAIL
-
- [role: doc-cover]
- expected: FAIL
-
- [role: doc-dedication]
- expected: FAIL
-
- [role: doc-epigraph]
- expected: FAIL
-
- [role: doc-example]
- expected: FAIL
-
- [role: doc-glossref]
- expected: FAIL
-
- [role: doc-noteref]
- expected: FAIL
-
- [role: doc-notice]
- expected: FAIL
-
- [role: doc-pagebreak]
- expected: FAIL
-
- [role: doc-pagefooter]
- expected: FAIL
-
- [role: doc-pageheader]
- expected: FAIL
-
- [role: doc-pullquote]
- expected: FAIL
-
- [role: doc-qna]
- expected: FAIL
-
- [role: doc-subtitle]
- expected: FAIL
-
- [role: doc-tip]
- expected: FAIL
diff --git a/testing/web-platform/meta/editing/run/delete.html.ini b/testing/web-platform/meta/editing/run/delete.html.ini
index 4c98409d7b..d82d94957e 100644
--- a/testing/web-platform/meta/editing/run/delete.html.ini
+++ b/testing/web-platform/meta/editing/run/delete.html.ini
@@ -10,9 +10,6 @@
[[["delete",""\]\] "foo<script>bar</script>[\]baz" compare innerHTML]
expected: FAIL
- [[["delete",""\]\] "foo<br><br><p>[\]bar</p>" compare innerHTML]
- expected: FAIL
-
[[["defaultparagraphseparator","div"\],["delete",""\]\] "foo<div><p>[\]bar</p></div>" compare innerHTML]
expected: FAIL
@@ -25,9 +22,6 @@
[[["delete",""\]\] "<p>foo</p><br><p>[\]bar</p>" compare innerHTML]
expected: FAIL
- [[["delete",""\]\] "<p>foo</p><br><br><p>[\]bar</p>" compare innerHTML]
- expected: FAIL
-
[[["delete",""\]\] "<a>foo</a>[\]bar" compare innerHTML]
expected: FAIL
diff --git a/testing/web-platform/meta/editing/run/forwarddelete.html.ini b/testing/web-platform/meta/editing/run/forwarddelete.html.ini
index 51934197f7..51fb842867 100644
--- a/testing/web-platform/meta/editing/run/forwarddelete.html.ini
+++ b/testing/web-platform/meta/editing/run/forwarddelete.html.ini
@@ -436,9 +436,6 @@
[[["forwarddelete",""\]\] "<ol><li><p>foo</ol><p>{}<br></p><ol><li>bar</ol>" compare innerHTML]
expected: FAIL
- [[["forwarddelete",""\]\] "<ol><ol><li>foo</ol><li>{}<br><ol><li>bar</ol></ol>": execCommand("forwarddelete", false, "") return value]
- expected: FAIL
-
[[["forwarddelete",""\]\] "<ol><ol><li>foo</ol><li>{}<br><ol><li>bar</ol></ol>" compare innerHTML]
expected: FAIL
diff --git a/testing/web-platform/meta/encoding/encodeInto.any.js.ini b/testing/web-platform/meta/encoding/encodeInto.any.js.ini
index 05cdea6d67..ba1648ab5c 100644
--- a/testing/web-platform/meta/encoding/encodeInto.any.js.ini
+++ b/testing/web-platform/meta/encoding/encodeInto.any.js.ini
@@ -137,6 +137,12 @@
[encodeInto() into SharedArrayBuffer with 𝌆 and destination length 4, offset 4, filler 128]
expected: FAIL
+ [Invalid encodeInto() destination: Float16Array, backed by: ArrayBuffer]
+ expected: FAIL
+
+ [Invalid encodeInto() destination: Float16Array, backed by: SharedArrayBuffer]
+ expected: FAIL
+
[encodeInto.any.worker.html]
[encodeInto() into SharedArrayBuffer with Hi and destination length 0, offset 4, filler 0]
@@ -277,6 +283,12 @@
[encodeInto() into SharedArrayBuffer with 𝌆 and destination length 4, offset 4, filler 128]
expected: FAIL
+ [Invalid encodeInto() destination: Float16Array, backed by: ArrayBuffer]
+ expected: FAIL
+
+ [Invalid encodeInto() destination: Float16Array, backed by: SharedArrayBuffer]
+ expected: FAIL
+
[encodeInto.any.serviceworker.html]
expected:
@@ -408,6 +420,12 @@
[encodeInto() into SharedArrayBuffer with 𝌆 and destination length 4, offset 4, filler 128]
expected: FAIL
+ [Invalid encodeInto() destination: Float16Array, backed by: ArrayBuffer]
+ expected: FAIL
+
+ [Invalid encodeInto() destination: Float16Array, backed by: SharedArrayBuffer]
+ expected: FAIL
+
[encodeInto.any.sharedworker.html]
[encodeInto() into SharedArrayBuffer with Hi and destination length 0, offset 4, filler 0]
@@ -536,3 +554,9 @@
[encodeInto() into SharedArrayBuffer with 𝌆 and destination length 4, offset 4, filler 128]
expected: FAIL
+
+ [Invalid encodeInto() destination: Float16Array, backed by: ArrayBuffer]
+ expected: FAIL
+
+ [Invalid encodeInto() destination: Float16Array, backed by: SharedArrayBuffer]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/__dir__.ini b/testing/web-platform/meta/fenced-frame/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html.ini
new file mode 100644
index 0000000000..b9a021cf69
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-content-initiated.https.html]
+ [window.fence.reportEvent from a content-initiated cross-origin navigation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html.ini
new file mode 100644
index 0000000000..61fcb82385
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-nested-urn-iframe.https.html]
+ [window.fence.reportEvent from a nested cross-origin subframe of a URN iframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested.https.html.ini
new file mode 100644
index 0000000000..39f9db8793
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-nested.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-nested.https.html]
+ [window.fence.reportEvent from a nested cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html.ini
new file mode 100644
index 0000000000..d0955a5c98
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-no-embedder-opt-in.https.html]
+ [Cross-origin window.fence.reportEvent without embedder opt-in]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html.ini
new file mode 100644
index 0000000000..249d234f33
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-no-subframe-opt-in.https.html]
+ [Cross-origin window.fence.reportEvent without subframe opt-in]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html.ini
new file mode 100644
index 0000000000..6cd0097a71
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-urn-iframe-content-initiated.https.html]
+ [window.fence.reportEvent from a content-initiated cross-origin navigation]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html.ini
new file mode 100644
index 0000000000..8991d47699
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html]
+ [Cross-origin window.fence.reportEvent without embedder opt-in]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html.ini
new file mode 100644
index 0000000000..7520f17229
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html]
+ [Cross-origin window.fence.reportEvent without subframe opt-in]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html.ini
new file mode 100644
index 0000000000..f77e508b2d
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin-urn-iframe.https.html]
+ [window.fence.reportEvent from a cross-origin iframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin.https.html.ini
new file mode 100644
index 0000000000..68076b8c97
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-cross-origin.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-cross-origin.https.html]
+ [window.fence.reportEvent from a cross-origin subframe]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fenced-frame/fence-report-event-sub-fencedframe.https.html.ini b/testing/web-platform/meta/fenced-frame/fence-report-event-sub-fencedframe.https.html.ini
new file mode 100644
index 0000000000..503eb08191
--- /dev/null
+++ b/testing/web-platform/meta/fenced-frame/fence-report-event-sub-fencedframe.https.html.ini
@@ -0,0 +1,3 @@
+[fence-report-event-sub-fencedframe.https.html]
+ [window.fence.reportEvent should not work in a nested fenced frame]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/api/abort/serviceworker-intercepted.https.html.ini b/testing/web-platform/meta/fetch/api/abort/serviceworker-intercepted.https.html.ini
index cefd4c59ff..e2f64d7563 100644
--- a/testing/web-platform/meta/fetch/api/abort/serviceworker-intercepted.https.html.ini
+++ b/testing/web-platform/meta/fetch/api/abort/serviceworker-intercepted.https.html.ini
@@ -2,7 +2,7 @@
expected: TIMEOUT
[Service Worker can observe the fetch abort and associated abort reason]
expected:
- if os == "win": [TIMEOUT, NOTRUN]
+ if os == "win": [NOTRUN, TIMEOUT]
TIMEOUT
[Abort reason serialization happens on abort]
@@ -14,7 +14,7 @@
[Stream errors once aborted.]
expected:
- if os == "win": [PASS, NOTRUN]
+ if os == "win": [TIMEOUT, PASS, NOTRUN]
[Already aborted request does not land in service worker]
expected:
@@ -22,7 +22,7 @@
[fetch() rejects with abort reason]
expected:
- if os == "win": [PASS, NOTRUN]
+ if os == "win": [NOTRUN, PASS]
[response.json() rejects if already aborted]
expected:
@@ -34,7 +34,7 @@
[fetch() response body has abort reason]
expected:
- if os == "win": [PASS, NOTRUN]
+ if os == "win": [NOTRUN, PASS]
[response.formData() rejects if already aborted]
expected:
diff --git a/testing/web-platform/meta/fetch/api/basic/request-headers.any.js.ini b/testing/web-platform/meta/fetch/api/basic/request-headers.any.js.ini
index 0fe20d2bd0..adad435167 100644
--- a/testing/web-platform/meta/fetch/api/basic/request-headers.any.js.ini
+++ b/testing/web-platform/meta/fetch/api/basic/request-headers.any.js.ini
@@ -1,15 +1,19 @@
[request-headers.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ ERROR
[request-headers.any.sharedworker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ ERROR
[request-headers.any.serviceworker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ ERROR
[request-headers.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ ERROR
diff --git a/testing/web-platform/meta/fetch/api/basic/request-upload.any.js.ini b/testing/web-platform/meta/fetch/api/basic/request-upload.any.js.ini
index 20a1725e9b..231d6c743e 100644
--- a/testing/web-platform/meta/fetch/api/basic/request-upload.any.js.ini
+++ b/testing/web-platform/meta/fetch/api/basic/request-upload.any.js.ini
@@ -19,6 +19,9 @@
[Streaming upload shouldn't work on Http/1.1.]
expected: FAIL
+ [Fetch with POST with Float16Array body]
+ expected: FAIL
+
[request-upload.any.html]
expected:
@@ -41,6 +44,9 @@
[Streaming upload shouldn't work on Http/1.1.]
expected: FAIL
+ [Fetch with POST with Float16Array body]
+ expected: FAIL
+
[request-upload.any.serviceworker.html]
expected:
@@ -64,6 +70,9 @@
[Streaming upload shouldn't work on Http/1.1.]
expected: FAIL
+ [Fetch with POST with Float16Array body]
+ expected: FAIL
+
[request-upload.any.sharedworker.html]
expected:
@@ -85,3 +94,6 @@
[Streaming upload shouldn't work on Http/1.1.]
expected: FAIL
+
+ [Fetch with POST with Float16Array body]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/api/crashtests/huge-fetch.any.js.ini b/testing/web-platform/meta/fetch/api/crashtests/huge-fetch.any.js.ini
new file mode 100644
index 0000000000..01ad9ff78f
--- /dev/null
+++ b/testing/web-platform/meta/fetch/api/crashtests/huge-fetch.any.js.ini
@@ -0,0 +1,13 @@
+[huge-fetch.any.sharedworker.html]
+
+[huge-fetch.any.worker.html]
+
+[huge-fetch.any.serviceworker.html]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ [fetching a huge cacheable file but not reading it should not crash]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
+
+
+[huge-fetch.any.html]
diff --git a/testing/web-platform/meta/fetch/api/redirect/redirect-keepalive.https.any.js.ini b/testing/web-platform/meta/fetch/api/redirect/redirect-keepalive.https.any.js.ini
index 60a2d2f498..3ab5cf62a1 100644
--- a/testing/web-platform/meta/fetch/api/redirect/redirect-keepalive.https.any.js.ini
+++ b/testing/web-platform/meta/fetch/api/redirect/redirect-keepalive.https.any.js.ini
@@ -1,12 +1,18 @@
[redirect-keepalive.https.any.html]
expected:
- if fission and (os == "win") and (processor == "x86") and not debug: OK
- if fission and (os == "mac") and debug: OK
- if not fission: OK
+ if (os == "linux") and fission and not debug and asan: [TIMEOUT, OK]
+ if (os == "win") and not debug and (processor == "x86"): OK
+ if (os == "linux") and fission and debug: [TIMEOUT, OK]
+ if (os == "mac") and debug: TIMEOUT
+ if (os == "linux") and not fission: OK
+ if os == "android": OK
[OK, TIMEOUT]
[[keepalive\][iframe\][load\] mixed content redirect; setting up]
expected:
- if fission and (os == "win") and (processor == "x86") and not debug: PASS
- if fission and (os == "mac") and debug: PASS
- if not fission: PASS
+ if (os == "linux") and fission and not debug and asan: [TIMEOUT, PASS]
+ if (os == "win") and not debug and (processor == "x86"): PASS
+ if (os == "linux") and fission and debug: [TIMEOUT, PASS]
+ if (os == "mac") and debug: TIMEOUT
+ if (os == "linux") and not fission: PASS
+ if os == "android": PASS
[PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/fetch/api/request/request-bad-port.any.js.ini b/testing/web-platform/meta/fetch/api/request/request-bad-port.any.js.ini
deleted file mode 100644
index e30013b1c1..0000000000
--- a/testing/web-platform/meta/fetch/api/request/request-bad-port.any.js.ini
+++ /dev/null
@@ -1,14 +0,0 @@
-[request-bad-port.any.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- CRASH
-
-[request-bad-port.any.serviceworker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
-
-[request-bad-port.any.worker.html]
- expected: CRASH
-
-[request-bad-port.any.sharedworker.html]
- expected: CRASH
diff --git a/testing/web-platform/meta/fetch/api/response/response-clone.any.js.ini b/testing/web-platform/meta/fetch/api/response/response-clone.any.js.ini
index 6c8dade15d..d805c674cf 100644
--- a/testing/web-platform/meta/fetch/api/response/response-clone.any.js.ini
+++ b/testing/web-platform/meta/fetch/api/response/response-clone.any.js.ini
@@ -40,6 +40,9 @@
[Check response clone use structureClone for teed ReadableStreams (BigUint64Arraychunk)]
expected: FAIL
+ [Check response clone use structureClone for teed ReadableStreams (Float16Arraychunk)]
+ expected: FAIL
+
[response-clone.any.html]
expected:
@@ -83,6 +86,9 @@
[Check response clone use structureClone for teed ReadableStreams (BigUint64Arraychunk)]
expected: FAIL
+ [Check response clone use structureClone for teed ReadableStreams (Float16Arraychunk)]
+ expected: FAIL
+
[response-clone.any.serviceworker.html]
expected:
@@ -127,6 +133,9 @@
[Check response clone use structureClone for teed ReadableStreams (BigUint64Arraychunk)]
expected: FAIL
+ [Check response clone use structureClone for teed ReadableStreams (Float16Arraychunk)]
+ expected: FAIL
+
[response-clone.any.worker.html]
expected:
@@ -169,3 +178,6 @@
[Check response clone use structureClone for teed ReadableStreams (BigUint64Arraychunk)]
expected: FAIL
+
+ [Check response clone use structureClone for teed ReadableStreams (Float16Arraychunk)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html.ini b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html.ini
new file mode 100644
index 0000000000..dedfd3a888
--- /dev/null
+++ b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html.ini
@@ -0,0 +1,3 @@
+[dictionary-clear-site-data-cache.tentative.https.html]
+ [Clear-Site-Data with "cache" directive must unregister dictionary]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html.ini b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html.ini
new file mode 100644
index 0000000000..2f09565cd3
--- /dev/null
+++ b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html.ini
@@ -0,0 +1,3 @@
+[dictionary-clear-site-data-cookies.tentative.https.html]
+ [Clear-Site-Data with "cookies" directive must unregister dictionary]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html.ini b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html.ini
new file mode 100644
index 0000000000..51dfb7011d
--- /dev/null
+++ b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html.ini
@@ -0,0 +1,3 @@
+[dictionary-clear-site-data-storage.tentative.https.html]
+ [Clear-Site-Data with "storage" directive must not unregister dictionary]
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html.ini b/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html.ini
deleted file mode 100644
index a757741d96..0000000000
--- a/testing/web-platform/meta/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[dictionary-clear-site-data.tentative.https.html]
- [Clear-Site-Data with "cache" directive must unregister dictionary]
- expected: FAIL
-
- [Clear-Site-Data with "cookies" directive must unregister dictionary]
- expected: FAIL
-
- [Clear-Site-Data with "storage" directive must not unregister dictionary]
- expected: FAIL
diff --git a/testing/web-platform/meta/fetch/content-length/too-long.window.js.ini b/testing/web-platform/meta/fetch/content-length/too-long.window.js.ini
index 0422064103..152299e6ad 100644
--- a/testing/web-platform/meta/fetch/content-length/too-long.window.js.ini
+++ b/testing/web-platform/meta/fetch/content-length/too-long.window.js.ini
@@ -1,5 +1,3 @@
[too-long.window.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Content-Length header value of network response exceeds response body]
- expected: FAIL
diff --git a/testing/web-platform/meta/fetch/fetch-later/activate-after.tentative.https.window.js.ini b/testing/web-platform/meta/fetch/fetch-later/activate-after.tentative.https.window.js.ini
index 974e367b16..8c5362eac9 100644
--- a/testing/web-platform/meta/fetch/fetch-later/activate-after.tentative.https.window.js.ini
+++ b/testing/web-platform/meta/fetch/fetch-later/activate-after.tentative.https.window.js.ini
@@ -1,17 +1,17 @@
[activate-after.tentative.https.window.html]
expected:
- if (os == "win") and debug and (processor == "x86_64"): OK
- if (os == "win") and not debug: TIMEOUT
+ if (os == "linux") and debug and fission: [OK, TIMEOUT]
+ if (os == "win") and (processor == "x86_64"): TIMEOUT
if (os == "linux") and not debug: TIMEOUT
if os == "android": OK
- [OK, TIMEOUT]
+ [TIMEOUT, OK]
[fetchLater() sends out based on activateAfter.]
expected:
- if (os == "win") and debug and (processor == "x86_64"): FAIL
- if (os == "win") and not debug: TIMEOUT
+ if (os == "linux") and debug and fission: [FAIL, TIMEOUT]
+ if (os == "win") and (processor == "x86_64"): TIMEOUT
if (os == "linux") and not debug: TIMEOUT
if os == "android": FAIL
- [FAIL, TIMEOUT]
+ [TIMEOUT, FAIL]
[fetchLater() sends out based on activateAfter, even if document is in BFCache.]
expected: FAIL
diff --git a/testing/web-platform/meta/fetch/http-cache/cache-mode.any.js.ini b/testing/web-platform/meta/fetch/http-cache/cache-mode.any.js.ini
index 996dbab4b0..fe0b49f060 100644
--- a/testing/web-platform/meta/fetch/http-cache/cache-mode.any.js.ini
+++ b/testing/web-platform/meta/fetch/http-cache/cache-mode.any.js.ini
@@ -1,50 +1,18 @@
[cache-mode.any.sharedworker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetch doesn't touch Cache-Control when cache mode is no-store and Cache-Control is already present]
- expected: FAIL
-
- [Fetch sends Cache-Control: max-age=0 when cache mode is no-cache]
- expected: FAIL
-
- [Fetch doesn't touch Pragma when cache mode is no-store and Pragma is already present]
- expected: FAIL
[cache-mode.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetch doesn't touch Cache-Control when cache mode is no-store and Cache-Control is already present]
- expected: FAIL
-
- [Fetch sends Cache-Control: max-age=0 when cache mode is no-cache]
- expected: FAIL
-
- [Fetch doesn't touch Pragma when cache mode is no-store and Pragma is already present]
- expected: FAIL
[cache-mode.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetch doesn't touch Cache-Control when cache mode is no-store and Cache-Control is already present]
- expected: FAIL
-
- [Fetch sends Cache-Control: max-age=0 when cache mode is no-cache]
- expected: FAIL
-
- [Fetch doesn't touch Pragma when cache mode is no-store and Pragma is already present]
- expected: FAIL
[cache-mode.any.serviceworker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetch doesn't touch Cache-Control when cache mode is no-store and Cache-Control is already present]
- expected: FAIL
-
- [Fetch sends Cache-Control: max-age=0 when cache mode is no-cache]
- expected: FAIL
-
- [Fetch doesn't touch Pragma when cache mode is no-store and Pragma is already present]
- expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/appcache-manifest.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/appcache-manifest.https.sub.html.ini
deleted file mode 100644
index aca36eed75..0000000000
--- a/testing/web-platform/meta/fetch/metadata/generated/appcache-manifest.https.sub.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[appcache-manifest.https.sub.html]
- disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1677718
diff --git a/testing/web-platform/meta/fetch/metadata/generated/css-images.https.sub.tentative.html.ini b/testing/web-platform/meta/fetch/metadata/generated/css-images.https.sub.tentative.html.ini
index 342f319993..636f2bbd29 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/css-images.https.sub.tentative.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/css-images.https.sub.tentative.html.ini
@@ -51,24 +51,14 @@
[background-image sec-fetch-dest]
expected: TIMEOUT
- # Mixed content level 2 is upgrading resources like audio, img and video. For that reason we expect it to fail.
- # See https://github.com/web-platform-tests/wpt/issues/37080
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
-
[border-image sec-fetch-site - HTTPS downgrade-upgrade]
- expected:
- if nightly_build: FAIL
+ expected: FAIL
[content sec-fetch-site - HTTPS downgrade-upgrade]
- expected:
- if nightly_build: FAIL
+ expected: FAIL
[cursor sec-fetch-site - HTTPS downgrade-upgrade]
- expected:
- if nightly_build: FAIL
+ expected: FAIL
[list-style-image sec-fetch-site - HTTPS downgrade-upgrade]
- expected:
- if nightly_build: FAIL
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-audio.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-audio.https.sub.html.ini
index 9537ac6e7f..f0ae6f9fd4 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/element-audio.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/element-audio.https.sub.html.ini
@@ -1,11 +1,3 @@
[element-audio.https.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
-
[sec-fetch-site - HTTPS downgrade-upgrade, no attributes]
- expected:
- if release_or_beta: PASS
- FAIL
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-img.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-img.https.sub.html.ini
index e147b7c5a6..90be57f7fd 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/element-img.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/element-img.https.sub.html.ini
@@ -1,11 +1,3 @@
[element-img.https.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
-
[sec-fetch-site - src - HTTPS downgrade-upgrade, no attributes]
- expected:
- if release_or_beta: PASS
- FAIL
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-input-image.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-input-image.https.sub.html.ini
index 17be643541..04ba0e6003 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/element-input-image.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/element-input-image.https.sub.html.ini
@@ -2,5 +2,4 @@
# Mixed content level 2 is upgrading resources like audio, img and video. For that reason we expect it to fail.
# See https://github.com/web-platform-tests/wpt/issues/37080
[sec-fetch-site - HTTPS downgrade-upgrade, no attributes]
- expected:
- if nightly_build: FAIL
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-input-image.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-input-image.sub.html.ini
deleted file mode 100644
index 37b734895f..0000000000
--- a/testing/web-platform/meta/fetch/metadata/generated/element-input-image.sub.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[element-input-image.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.https.sub.html.ini
index 73780d4094..f72e1c74b4 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.https.sub.html.ini
@@ -1,20 +1,15 @@
[element-video-poster.https.sub.html]
# Mixed content level 2 is upgrading resources like audio, img and video. For that reason we expect it to fail.
# See https://github.com/web-platform-tests/wpt/issues/37080
- expected:
- if nightly_build: TIMEOUT
+ expected: TIMEOUT
[sec-fetch-site - HTTPS downgrade-upgrade]
- expected:
- if nightly_build: TIMEOUT
+ expected: TIMEOUT
[sec-fetch-mode]
- expected:
- if nightly_build: NOTRUN
+ expected: NOTRUN
[sec-fetch-dest]
- expected:
- if nightly_build: NOTRUN
+ expected: NOTRUN
[sec-fetch-user]
- expected:
- if nightly_build: NOTRUN
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.sub.html.ini
deleted file mode 100644
index 3f9f22ea11..0000000000
--- a/testing/web-platform/meta/fetch/metadata/generated/element-video-poster.sub.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[element-video-poster.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- # Mixed content level 2 is upgrading resources like audio, img and video. For that reason we expect it to fail.
- # See https://github.com/web-platform-tests/wpt/issues/37080
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/element-video.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/element-video.https.sub.html.ini
index b6b616a553..00bbf81d88 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/element-video.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/element-video.https.sub.html.ini
@@ -1,11 +1,3 @@
[element-video.https.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if nightly_build: FAIL
-
[sec-fetch-site - HTTPS downgrade-upgrade, no attributes]
- expected:
- if release_or_beta: PASS
- FAIL
+ expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/generated/svg-image.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/svg-image.https.sub.html.ini
index 5d705d01ba..c42c31792c 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/svg-image.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/svg-image.https.sub.html.ini
@@ -7,9 +7,7 @@
# Mixed content level 2 is upgrading resources like audio, img and video. For that reason we expect it to fail.
# See https://github.com/web-platform-tests/wpt/issues/37080
[sec-fetch-site - HTTPS downgrade-upgrade no attributes]
- expected:
- if release_or_beta: PASS
- FAIL
+ expected: FAIL
[sec-fetch-mode attributes: crossorigin]
expected:
diff --git a/testing/web-platform/meta/fetch/metadata/generated/window-location.https.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/window-location.https.sub.html.ini
index 327a6a304d..289fd27a97 100644
--- a/testing/web-platform/meta/fetch/metadata/generated/window-location.https.sub.html.ini
+++ b/testing/web-platform/meta/fetch/metadata/generated/window-location.https.sub.html.ini
@@ -1,4 +1,4 @@
[window-location.https.sub.html]
expected:
- if not swgl and debug and (os == "linux") and fission: CRASH
+ if not swgl and debug and (os == "linux") and fission: OK
if swgl and (os == "linux") and fission: [OK, CRASH]
diff --git a/testing/web-platform/meta/fetch/metadata/generated/worker-dedicated-constructor.sub.html.ini b/testing/web-platform/meta/fetch/metadata/generated/worker-dedicated-constructor.sub.html.ini
deleted file mode 100644
index 8ed0e3f8a1..0000000000
--- a/testing/web-platform/meta/fetch/metadata/generated/worker-dedicated-constructor.sub.html.ini
+++ /dev/null
@@ -1,26 +0,0 @@
-[worker-dedicated-constructor.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [sec-fetch-site - Not sent to non-trustworthy same-site destination, no options]
- expected: FAIL
-
- [sec-fetch-site - Not sent to non-trustworthy cross-site destination, no options]
- expected: FAIL
-
- [sec-fetch-mode - Not sent to non-trustworthy same-site destination, no options]
- expected: FAIL
-
- [sec-fetch-mode - Not sent to non-trustworthy cross-site destination, no options]
- expected: FAIL
-
- [sec-fetch-dest - Not sent to non-trustworthy same-site destination, no options]
- expected: FAIL
-
- [sec-fetch-dest - Not sent to non-trustworthy cross-site destination, no options]
- expected: FAIL
-
- [sec-fetch-user - Not sent to non-trustworthy same-site destination, no options]
- expected: FAIL
-
- [sec-fetch-user - Not sent to non-trustworthy cross-site destination, no options]
- expected: FAIL
diff --git a/testing/web-platform/meta/fetch/metadata/trailing-dot.https.sub.any.js.ini b/testing/web-platform/meta/fetch/metadata/trailing-dot.https.sub.any.js.ini
index c3a093718e..df4a980783 100644
--- a/testing/web-platform/meta/fetch/metadata/trailing-dot.https.sub.any.js.ini
+++ b/testing/web-platform/meta/fetch/metadata/trailing-dot.https.sub.any.js.ini
@@ -1,50 +1,15 @@
[trailing-dot.https.sub.any.serviceworker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetching a resource from a cross-site host, spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same origin, but spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same site, but spelled with a trailing dot.]
- expected: FAIL
-
[trailing-dot.https.sub.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetching a resource from a cross-site host, spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same origin, but spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same site, but spelled with a trailing dot.]
- expected: FAIL
-
[trailing-dot.https.sub.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [Fetching a resource from a cross-site host, spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same origin, but spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same site, but spelled with a trailing dot.]
- expected: FAIL
-
[trailing-dot.https.sub.any.sharedworker.html]
expected:
if (os == "android") and fission: [TIMEOUT, OK]
- [Fetching a resource from a cross-site host, spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same origin, but spelled with a trailing dot.]
- expected: FAIL
-
- [Fetching a resource from the same site, but spelled with a trailing dot.]
- expected: FAIL
diff --git a/testing/web-platform/meta/fledge/__dir__.ini b/testing/web-platform/meta/fledge/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/fledge/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/fledge/tentative/interest-group-update.https.window.js.ini b/testing/web-platform/meta/fledge/tentative/interest-group-update.https.window.js.ini
new file mode 100644
index 0000000000..29a738a1dd
--- /dev/null
+++ b/testing/web-platform/meta/fledge/tentative/interest-group-update.https.window.js.ini
@@ -0,0 +1,74 @@
+[interest-group-update.https.window.html?15-19]
+ [executionMode updated to frozen context]
+ expected: FAIL
+
+ [executionMode updated to compatibility]
+ expected: FAIL
+
+ [executionMode updated to group by origin]
+ expected: FAIL
+
+ [executionMode updated with invalid input]
+ expected: FAIL
+
+ [owner cannot be updated.]
+ expected: FAIL
+
+
+[interest-group-update.https.window.html?10-14]
+ [trustedBiddingSignalsSlotSizeMode updated to unknown, defaults to none]
+ expected: FAIL
+
+ [ads updated from 2 ads to 1.]
+ expected: FAIL
+
+ [ads updated from 1 ad to 2.]
+ expected: FAIL
+
+ [adComponents updated from 1 adComponent to 2.]
+ expected: FAIL
+
+ [adComponents updated from 2 adComponents to 1.]
+ expected: FAIL
+
+
+[interest-group-update.https.window.html?5-9]
+ [trustedBiddingSignalsKeys updated correctly]
+ expected: FAIL
+
+ [trustedBiddingSignalsKeys updated to empty array.]
+ expected: FAIL
+
+ [trustedBiddingSignalsSlotSizeMode updated to slot-size]
+ expected: FAIL
+
+ [trustedBiddingSignalsSlotSizeMode updated to all-slots-requested-sizes]
+ expected: FAIL
+
+ [trustedBiddingSignalsSlotSizeMode updated to none]
+ expected: FAIL
+
+
+[interest-group-update.https.window.html?20-last]
+ [name cannot be updated.]
+ expected: FAIL
+
+ [executionMode not updated when unknown type.]
+ expected: FAIL
+
+ [trustedBiddingSignalsKeys not updated when bad value.]
+ expected: FAIL
+
+
+[interest-group-update.https.window.html?1-4]
+ [userBiddingSignals update overwrites everything in the field.]
+ expected: FAIL
+
+ [userBiddingSignals updated multi-type]
+ expected: FAIL
+
+ [userBiddingSignals updated to non object]
+ expected: FAIL
+
+ [userBiddingSignals updated to null]
+ expected: FAIL
diff --git a/testing/web-platform/meta/font-access/__dir__.ini b/testing/web-platform/meta/font-access/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/font-access/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/fs/FileSystemBaseHandle-getUniqueId.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemBaseHandle-getUniqueId.https.any.js.ini
index 2bd8cd9e55..cb39be5f5a 100644
--- a/testing/web-platform/meta/fs/FileSystemBaseHandle-getUniqueId.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemBaseHandle-getUniqueId.https.any.js.ini
@@ -1,7 +1,6 @@
[FileSystemBaseHandle-getUniqueId.https.any.html]
expected:
- if (os == "win") and debug and swgl: [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [ERROR, OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, ERROR, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [OK, ERROR, TIMEOUT]
[identical directory handles return the same ID]
expected: FAIL
@@ -21,56 +20,51 @@
[different files return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT]
if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[different handles for the same file return the same ID]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[two files of the same name in different directories return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT, NOTRUN]
if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [FAIL, TIMEOUT, NOTRUN]
FAIL
[a file and a directory return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[a file and a directory of the same path return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[unique ID of a file handle does not change after writes]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[unique ID is in GUID version 4 format]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, FAIL, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[FileSystemBaseHandle-getUniqueId.https.any.worker.html]
expected:
- if (os == "win") and debug and swgl: [OK, TIMEOUT]
- if (os == "win") and not debug: [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
[identical directory handles return the same ID]
expected: FAIL
@@ -87,44 +81,42 @@
[different files return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT]
if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[different handles for the same file return the same ID]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[two files of the same name in different directories return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, TIMEOUT, NOTRUN]
FAIL
[a file and a directory return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [FAIL, TIMEOUT, NOTRUN]
FAIL
[a file and a directory of the same path return different IDs]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[unique ID of a file handle does not change after writes]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
[unique ID is in GUID version 4 format]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT, NOTRUN]
- if (os == "win") and not debug: [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
FAIL
diff --git a/testing/web-platform/meta/fs/FileSystemBaseHandle-remove.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemBaseHandle-remove.https.any.js.ini
index ea76026b5b..ec0fb59f11 100644
--- a/testing/web-platform/meta/fs/FileSystemBaseHandle-remove.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemBaseHandle-remove.https.any.js.ini
@@ -1,107 +1,97 @@
[FileSystemBaseHandle-remove.https.any.worker.html]
expected:
- if (os == "win") and debug and swgl: [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [TIMEOUT, OK]
+ if (os == "win") and not debug: [OK, TIMEOUT]
[remove() to remove a file]
expected:
- if (processor == "x86") and not debug: [FAIL, TIMEOUT]
+ if (processor == "x86") and (os == "linux"): [FAIL, TIMEOUT]
FAIL
[remove() on an already removed file should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() to remove an empty directory]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on an already removed directory should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on a non-empty directory should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on a directory recursively should delete all sub-items]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on a file should ignore the recursive option]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [FAIL, NOTRUN]
+ if (os == "win") and not debug: [FAIL, TIMEOUT]
FAIL
[remove() while the file has an open writable fails]
expected:
- if (os == "win") and debug and swgl: [FAIL, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [TIMEOUT, FAIL, NOTRUN]
+ if (os == "win") and not debug: [FAIL, TIMEOUT, NOTRUN]
FAIL
[can remove the root of a sandbox file system]
expected:
- if (os == "win") and debug and swgl: [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [NOTRUN, FAIL]
+ if (os == "win") and not debug: [FAIL, NOTRUN]
FAIL
[FileSystemBaseHandle-remove.https.any.html]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [TIMEOUT, OK]
+ if (os == "win") and not debug: [OK, TIMEOUT]
[remove() to remove a file]
expected:
- if (processor == "x86") and not debug: [FAIL, TIMEOUT]
+ if (processor == "x86") and (os == "linux"): [FAIL, TIMEOUT]
FAIL
[remove() on an already removed file should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() to remove an empty directory]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on an already removed directory should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on a non-empty directory should fail]
expected:
- if (processor == "x86") and not debug: [FAIL, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [FAIL, NOTRUN]
FAIL
[remove() on a directory recursively should delete all sub-items]
expected:
- if (processor == "x86") and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: [FAIL, TIMEOUT]
+ if (os == "linux") and (processor == "x86"): [FAIL, TIMEOUT, NOTRUN]
FAIL
[remove() on a file should ignore the recursive option]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [TIMEOUT, FAIL, NOTRUN]
+ if (os == "win") and not debug: [FAIL, NOTRUN, TIMEOUT]
FAIL
[remove() while the file has an open writable fails]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [NOTRUN, FAIL]
+ if (os == "win") and not debug: [FAIL, NOTRUN]
FAIL
[can remove the root of a sandbox file system]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [FAIL, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [NOTRUN, FAIL]
+ if (os == "win") and not debug: [FAIL, NOTRUN]
FAIL
diff --git a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-getFileHandle.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-getFileHandle.https.any.js.ini
index 943d8410ae..f8f2ae343d 100644
--- a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-getFileHandle.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-getFileHandle.https.any.js.ini
@@ -1,28 +1,50 @@
[FileSystemDirectoryHandle-getFileHandle.https.any.html]
expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
[getFileHandle(create=false) when a directory already exists with the same name]
expected:
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[getFileHandle(create=true) when a directory already exists with the same name]
expected:
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[getFileHandle(create=false) with a path separator when the file exists.]
expected:
- if os == "win": PASS
+ if (os == "win") and not debug and (processor == "x86_64"): PASS
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and debug: PASS
FAIL
[getFileHandle(create=true) with a path separator]
expected:
- if os == "win": PASS
+ if (os == "win") and not debug and (processor == "x86_64"): PASS
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and debug: PASS
FAIL
+ [getFileHandle(create=true) returns existing files without erasing]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
+
+ [getFileHandle() with ".." name]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, NOTRUN]
+
+ [getFileHandle() with empty name]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, NOTRUN]
+
+ [getFileHandle() with "." name]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, NOTRUN]
+
[FileSystemDirectoryHandle-getFileHandle.https.any.worker.html]
expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
[getFileHandle(create=false) when a directory already exists with the same name]
expected:
if (os == "android") and not debug: [PASS, FAIL]
@@ -33,10 +55,18 @@
[getFileHandle(create=false) with a path separator when the file exists.]
expected:
- if os == "win": PASS
+ if (os == "win") and not debug and (processor == "x86_64"): PASS
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and debug: PASS
FAIL
[getFileHandle(create=true) with a path separator]
expected:
- if os == "win": PASS
+ if (os == "win") and not debug and (processor == "x86_64"): PASS
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and debug: PASS
FAIL
+
+ [getFileHandle() with ".." name]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-iteration.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-iteration.https.any.js.ini
index f683fc14b0..3ee2310a95 100644
--- a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-iteration.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-iteration.https.any.js.ini
@@ -1,30 +1,36 @@
[FileSystemDirectoryHandle-iteration.https.any.worker.html]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [OK, TIMEOUT]
- if (os == "win") and not debug: [OK, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
[iteration while iterator gets garbage collected]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[keys: full iteration works]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[values: full iteration works]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[entries: full iteration works]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, TIMEOUT]
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[@@asyncIterator: full iteration works]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[returning early from an iteration doesn't crash]
expected:
@@ -33,21 +39,30 @@
[FileSystemDirectoryHandle-iteration.https.any.html]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [OK, ERROR]
+ if (os == "win") and debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT, ERROR]
if (os == "win") and not debug and (processor == "x86"): [OK, ERROR, TIMEOUT]
[iteration while iterator gets garbage collected]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
- if (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[keys: full iteration works]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[values: full iteration works]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, TIMEOUT]
if (os == "win") and not debug: [PASS, NOTRUN]
+
+ [entries: full iteration works]
+ expected:
+ if (os == "win") and not debug: [PASS, NOTRUN]
+
+ [@@asyncIterator: full iteration works]
+ expected:
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-removeEntry.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-removeEntry.https.any.js.ini
index e19e28c491..8eab6182b7 100644
--- a/testing/web-platform/meta/fs/FileSystemDirectoryHandle-removeEntry.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemDirectoryHandle-removeEntry.https.any.js.ini
@@ -7,33 +7,29 @@
[ERROR, TIMEOUT]
[removeEntry() to remove a file]
expected:
- if (os == "win") and debug and swgl: [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() on an already removed file should fail]
expected:
- if (os == "win") and debug and swgl: [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() to remove an empty directory]
expected:
- if (os == "win") and debug and swgl: [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[removeEntry() on a directory recursively should delete all sub-items]
expected:
- if (os == "win") and debug and swgl: [PASS, NOTRUN]
if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[removeEntry() while the file has an open writable fails]
expected:
- if (os == "win") and (processor == "x86_64") and debug and swgl: [PASS, NOTRUN]
if (os == "win") and (processor == "x86_64") and not debug: [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN]
if (os == "mac") and not debug: [PASS, TIMEOUT]
[createWritable after removeEntry succeeds but doesnt recreate the file]
@@ -45,86 +41,76 @@
[removeEntry() with a path separator should fail.]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86_64") and not swgl: PASS
+ if (os == "win") and debug and (processor == "x86_64"): PASS
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
FAIL
[removeEntry() with empty name should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, TIMEOUT, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, TIMEOUT]
if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() with "." name should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN]
[removeEntry() on a non-empty directory should fail]
expected:
- if (os == "win") and debug and swgl: [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[removeEntry() of a directory while a containing file has an open writable fails]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, TIMEOUT]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
[removeEntry() with ".." name should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[FileSystemDirectoryHandle-removeEntry.https.any.worker.html]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [TIMEOUT, OK, ERROR]
- if (os == "win") and not debug and (processor == "x86"): [ERROR, OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [ERROR, TIMEOUT, OK]
if (os == "win") and debug: [ERROR, TIMEOUT]
if (os == "mac") and not debug: [ERROR, TIMEOUT]
ERROR
[removeEntry() with "." name should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() with ".." name should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN]
[removeEntry() with a path separator should fail.]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86_64") and not swgl: PASS
+ if (os == "win") and debug and (processor == "x86_64"): PASS
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
FAIL
[removeEntry() while the file has an open writable fails]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, TIMEOUT, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, FAIL, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, FAIL, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, FAIL, TIMEOUT]
if (os == "mac") and not debug: [PASS, TIMEOUT]
[createWritable after removeEntry succeeds but doesnt recreate the file]
@@ -136,49 +122,44 @@
[removeEntry() on a directory recursively should delete all sub-items]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() on an already removed file should fail]
expected:
- if (os == "win") and (processor == "x86_64") and debug and swgl: [PASS, TIMEOUT, NOTRUN]
if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN]
[removeEntry() to remove an empty directory]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() with empty name should fail]
expected:
- if (os == "win") and not swgl and debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
- if (os == "win") and not swgl and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and swgl: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and (processor == "x86") and debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN, TIMEOUT]
[removeEntry() on a non-empty directory should fail]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN, TIMEOUT]
[removeEntry() to remove a file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and swgl: [PASS, NOTRUN]
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
[removeEntry() of a directory while a containing file has an open writable fails]
expected:
- if (os == "win") and (processor == "x86_64") and debug and swgl: [PASS, NOTRUN]
- if (os == "win") and (processor == "x86_64") and debug and not swgl: [PASS, TIMEOUT]
+ if (os == "win") and (processor == "x86_64") and debug: [PASS, TIMEOUT]
if (os == "win") and (processor == "x86_64") and not debug: [NOTRUN, PASS]
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and debug: [PASS, NOTRUN]
+ if (os == "win") and (processor == "x86") and not debug: [PASS, NOTRUN]
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/meta/fs/FileSystemFileHandle-getFile.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemFileHandle-getFile.https.any.js.ini
index f61b92be27..27cfa4b709 100644
--- a/testing/web-platform/meta/fs/FileSystemFileHandle-getFile.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemFileHandle-getFile.https.any.js.ini
@@ -1,11 +1,6 @@
[FileSystemFileHandle-getFile.https.any.worker.html]
expected:
- if swgl and (os == "win"): [OK, TIMEOUT]
- if (os == "win") and not swgl and not debug and (processor == "x86"): [OK, TIMEOUT]
- [getFile() returns last modified time]
- expected:
- if swgl and (os == "win"): [PASS, TIMEOUT]
-
+ if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
[getFile() returns expected name]
expected:
if (processor == "x86") and not debug: [PASS, TIMEOUT]
@@ -14,7 +9,7 @@
[FileSystemFileHandle-getFile.https.any.html]
expected:
if (os == "win") and not debug and (processor == "x86_64"): [OK, ERROR, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, ERROR, TIMEOUT]
[getFile() provides a file that can be sliced]
expected:
if (processor == "x86") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/fs/FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js.ini b/testing/web-platform/meta/fs/FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js.ini
index 5a80c327c7..fc91356a95 100644
--- a/testing/web-platform/meta/fs/FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js.ini
@@ -1,6 +1,6 @@
[FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.html]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [OK, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64"): [OK, TIMEOUT]
if (os == "win") and not debug: [TIMEOUT, OK]
[A sync access handle opens in readwrite mode by default]
expected:
@@ -9,12 +9,12 @@
[An access handle in readwrite mode has a mode property equal to readwrite]
expected:
- if (os == "win") and not debug: [FAIL, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug: [FAIL, TIMEOUT, NOTRUN]
FAIL
[An access handle in read-only mode has a mode property equal to read-only]
expected:
- if (os == "win") and not debug: [NOTRUN, TIMEOUT, FAIL]
+ if (os == "win") and not debug: [FAIL, NOTRUN, TIMEOUT]
FAIL
[An access handle in readwrite-unsafe mode has a mode property equal to readwrite-unsafe]
@@ -24,17 +24,17 @@
[An access handle in read-only mode takes a lock that is shared]
expected:
- if (os == "win") and not debug: [NOTRUN, FAIL, TIMEOUT]
+ if (os == "win") and not debug: [FAIL, NOTRUN, TIMEOUT]
FAIL
[An access handle in read-only mode is not writable]
expected:
- if (os == "win") and not debug: [NOTRUN, FAIL, TIMEOUT]
+ if (os == "win") and not debug: [FAIL, NOTRUN, TIMEOUT]
FAIL
[After all access handles in read-only mode on a file has been closed, can open another access handle in readwrite on the same file]
expected:
- if (os == "win") and not debug: [NOTRUN, FAIL, TIMEOUT]
+ if (os == "win") and not debug: [NOTRUN, TIMEOUT, FAIL]
FAIL
[After all access handles in read-only mode on a file has been closed, can open another access handle in readwrite-unsafe on the same file]
@@ -44,35 +44,35 @@
[An access handle in readwrite-unsafe mode takes a lock that is shared]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [FAIL, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64"): [FAIL, TIMEOUT]
if (os == "win") and not debug: [NOTRUN, FAIL]
FAIL
[After all access handles in readwrite-unsafe mode on a file has been closed, can open another access handle in readwrite on the same file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [FAIL, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [FAIL, NOTRUN]
if (os == "win") and not debug: [NOTRUN, FAIL]
FAIL
[After all access handles in readwrite-unsafe mode on a file has been closed, can open another access handle in read-only on the same file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [FAIL, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [FAIL, NOTRUN]
if (os == "win") and not debug: [NOTRUN, FAIL]
FAIL
[When there's an open access handle in readwrite-unsafe mode on a file, cannot open another access handle in readwrite on that same file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS]
[When there's an open access handle in readwrite-unsafe mode on a file, cannot open another access handle in read-only on that same file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS]
[When there's an open access handle in readwrite mode on a file, cannot open another access handle in readwrite-unsafe on that same file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
[When there's an open access handle in read-only mode on a file, can open another access handle in readwrite-unsafe on a different file]
expected:
@@ -80,34 +80,34 @@
[When there's an open access handle in readwrite-unsafe mode on a file, can open another access handle in readwrite on a different file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS]
[An access handle in readwrite-unsafe mode is writable]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS]
[When there's an open access handle in read-only mode on a file, cannot open another access handle in readwrite-unsafe on that same file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS]
+ if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
[When there's an open access handle in readwrite-unsafe mode on a file, can open another access handle in read-only on a different file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
[When there's an open access handle in readwrite mode on a file, can open another access handle in readwrite-unsafe on a different file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
[After an access handle in readwrite mode on a file has been closed, can open another access handle in readwrite-unsafe on the same file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
[When there's an open access handle in readwrite-unsafe mode on a file, can open another access handle in readwrite-unsafe on a different file]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, NOTRUN]
if (os == "win") and not debug: [NOTRUN, PASS]
[When there's an open access handle in read-only mode on a file, can open another access handle in read-only on a different file]
@@ -116,11 +116,11 @@
[When there's an open access handle in read-only mode on a file, cannot open another access handle in readwrite on that same file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [NOTRUN, TIMEOUT, PASS]
[When there's an open access handle in read-only mode on a file, can open another access handle in readwrite on a different file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
[When there's an open access handle in readwrite mode on a file, can open another access handle in read-only on a different file]
expected:
@@ -132,7 +132,7 @@
[After an access handle in readwrite mode on a file has been closed, can open another access handle in read-only on the same file]
expected:
- if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
[When there's an open access handle in readwrite mode on a file, cannot open another access handle in readwrite on that same file]
expected:
@@ -144,7 +144,7 @@
[When there's an open access handle in readwrite mode on a file, can open another access handle in readwrite on a different file]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
[An access handle in readwrite mode is writable]
expected:
@@ -152,4 +152,4 @@
[An access handle in readwrite mode takes a lock that is exclusive]
expected:
- if (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/meta/fs/FileSystemWritableFileStream-write.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemWritableFileStream-write.https.any.js.ini
index 0b27b8cded..be459f3da7 100644
--- a/testing/web-platform/meta/fs/FileSystemWritableFileStream-write.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemWritableFileStream-write.https.any.js.ini
@@ -1,91 +1,83 @@
[FileSystemWritableFileStream-write.https.any.html]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [OK, ERROR, TIMEOUT]
- if (os == "win") and (processor == "x86") and debug: [OK, TIMEOUT, ERROR]
- if (os == "win") and (processor == "x86") and not debug: [OK, TIMEOUT, ERROR]
+ if (os == "win") and not debug and (processor == "x86_64"): [TIMEOUT, ERROR, OK]
+ if (os == "win") and not debug and (processor == "x86"): [OK, ERROR, TIMEOUT]
if (os == "mac") and not debug: [OK, TIMEOUT]
[write() with a string with windows line ending preserved]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
if processor == "x86": [PASS, NOTRUN]
[write() with an empty array buffer to an empty file]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS]
if processor == "x86": [PASS, TIMEOUT, NOTRUN]
[write() with a valid typed array buffer]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS]
if processor == "x86": [PASS, NOTRUN]
[atomic writes: writable file streams make atomic changes on close]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if processor == "x86": [PASS, TIMEOUT, NOTRUN]
[atomic writes: write() after close() fails]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS]
+ if processor == "x86": [PASS, NOTRUN]
[atomic writes: truncate() after close() fails]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS]
+ if processor == "x86": [PASS, NOTRUN]
[atomic writes: close() after close() fails]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (processor == "x86") and (os == "win") and debug: [PASS, NOTRUN]
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [PASS, NOTRUN]
[atomic writes: only one close() operation may succeed]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (processor == "x86") and (os == "win") and debug: [PASS, TIMEOUT, NOTRUN]
+ if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (processor == "x86") and (os == "linux"): [PASS, TIMEOUT, NOTRUN]
[getWriter() can be used]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS]
+ if processor == "x86": [PASS, NOTRUN]
[WriteParams: truncate missing size param]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if processor == "x86": [PASS, NOTRUN]
[WriteParams: write missing data param]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if processor == "x86": [PASS, NOTRUN]
[WriteParams: seek missing position param]
expected:
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
if (os == "mac") and not debug: [PASS, TIMEOUT]
[write() with an invalid blob to an empty file should reject]
expected:
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
if (os == "mac") and not debug: [PASS, NOTRUN]
[WriteParams: write null data param]
expected:
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
if (os == "linux") and not fission and not debug: [PASS, FAIL]
[write() with an empty blob to an empty file]
@@ -99,29 +91,33 @@
[an errored writable stream releases its lock]
expected:
- if (processor == "x86_64") and (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
- if (processor == "x86") and debug: [PASS, NOTRUN]
- if (processor == "x86") and not debug: [PASS, NOTRUN]
+ if (processor == "x86_64") and (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if processor == "x86": [PASS, NOTRUN]
[write() called with a blob and a valid offset]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[write() called with an offset beyond the end of the file]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[write() with a string with unix line ending preserved]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[write() with a valid utf-8 string]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[write() with an empty string to an empty file]
expected:
- if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
[write() called with a string and a valid offset]
expected:
@@ -129,7 +125,8 @@
[write() WriteParams without position and blob appends]
expected:
- if (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[write() a blob to an empty file with zero offset]
expected:
@@ -145,7 +142,8 @@
[write() a string to an empty file with zero offset]
expected:
- if (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[write() a blob to an empty file]
expected:
@@ -155,86 +153,94 @@
expected:
if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
+ [an errored writable stream should reject the next write call]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): NOTRUN
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
+
[FileSystemWritableFileStream-write.https.any.worker.html]
expected:
- if (processor == "x86_64") and (os == "mac") and not debug: [OK, TIMEOUT]
- if processor == "x86": [OK, TIMEOUT]
+ if (os == "win") and not debug: TIMEOUT
+ if (os == "mac") and not debug: [OK, TIMEOUT]
[write() called with a blob and a valid offset]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[write() called with an offset beyond the end of the file]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [TIMEOUT, PASS, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[write() with an empty string to an empty file]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[write() with a valid utf-8 string]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, PASS, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[write() with a string with unix line ending preserved]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, TIMEOUT, PASS]
if (os == "android") and not debug: [PASS, FAIL]
[write() with a string with windows line ending preserved]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[write() with an empty array buffer to an empty file]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "android") and not debug: [PASS, FAIL]
[write() with a valid typed array buffer]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "android") and not debug: [PASS, FAIL]
[atomic writes: writable file streams make atomic changes on close]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
if processor == "x86": [PASS, TIMEOUT, NOTRUN]
[getWriter() can be used]
expected:
- if (os == "win") and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "android") and not debug: [PASS, FAIL]
[WriteParams: truncate missing size param]
expected:
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, PASS]
if (os == "android") and not debug: [PASS, FAIL]
- if os == "win": [PASS, NOTRUN]
[WriteParams: write missing data param]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "android") and not debug: [PASS, FAIL]
[WriteParams: seek missing position param]
expected:
if (os == "linux") and not fission and not debug: [PASS, FAIL]
+ if (os == "win") and debug: [PASS, NOTRUN]
+ if (os == "win") and not debug: [NOTRUN, PASS]
if (os == "mac") and not debug: [PASS, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
- if os == "win": [PASS, NOTRUN]
[write() with an invalid blob to an empty file should reject]
expected:
if (os == "linux") and not fission and not debug: [PASS, FAIL]
- if (os == "win") and (processor == "x86"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "mac") and not debug: [PASS, NOTRUN]
[WriteParams: write null data param]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: NOTRUN
if (os == "mac") and not debug: [PASS, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
@@ -256,46 +262,59 @@
[write() a blob to an empty file with zero offset]
expected:
+ if (os == "win") and not debug: [PASS, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[write() called consecutively appends]
expected:
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[write() WriteParams without position and string appends]
expected:
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[write() WriteParams without position and blob appends]
expected:
- if (os == "win") and (processor == "x86"): [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
if (os == "android") and not debug: [PASS, FAIL]
[write() called with a string and a valid offset]
expected:
- if (os == "win") and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
if (os == "android") and not debug: [PASS, FAIL]
[atomic writes: only one close() operation may succeed]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
if processor == "x86": [PASS, NOTRUN]
[atomic writes: write() after close() fails]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
if processor == "x86": [PASS, TIMEOUT, NOTRUN]
[atomic writes: truncate() after close() fails]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
if processor == "x86": [PASS, NOTRUN]
[atomic writes: close() after close() fails]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
if processor == "x86": [PASS, NOTRUN]
[write() called with a string and a valid offset after seek]
expected:
- if processor == "x86": [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN, TIMEOUT]
+ if (os == "linux") and (processor == "x86"): [PASS, NOTRUN]
[an errored writable stream releases its lock]
expected:
- if processor == "x86": [PASS, NOTRUN, TIMEOUT]
+ if (processor == "x86_64") and (os == "win") and not debug: NOTRUN
+ if processor == "x86": [PASS, TIMEOUT, NOTRUN]
+
+ [an errored writable stream should reject the next write call]
+ expected:
+ if (os == "win") and not debug: NOTRUN
diff --git a/testing/web-platform/meta/fs/FileSystemWritableFileStream.https.any.js.ini b/testing/web-platform/meta/fs/FileSystemWritableFileStream.https.any.js.ini
index 01d0329980..cd4168ee31 100644
--- a/testing/web-platform/meta/fs/FileSystemWritableFileStream.https.any.js.ini
+++ b/testing/web-platform/meta/fs/FileSystemWritableFileStream.https.any.js.ini
@@ -1,81 +1,70 @@
[FileSystemWritableFileStream.https.any.html]
expected:
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [OK, TIMEOUT]
- if (os == "win") and not swgl and not debug and (processor == "x86"): [TIMEOUT, OK, ERROR]
- if (os == "win") and not swgl and debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
[truncate() to grow a file]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[createWritable() fails when parent directory is removed]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
[createWritable({keepExistingData: true}): atomic writable file stream initialized with source contents]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
[createWritable({keepExistingData: false}): atomic writable file stream initialized with empty file]
expected:
- if (os == "win") and debug and not swgl: [PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and debug: [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN]
[cursor position: truncate size > offset]
expected:
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [PASS, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86"): TIMEOUT
- if (os == "win") and not swgl and debug: [PASS, NOTRUN]
+ if os == "win": [PASS, NOTRUN]
[cursor position: truncate size < offset]
expected:
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [PASS, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86"): NOTRUN
- if (os == "win") and not swgl and debug: [PASS, NOTRUN]
+ if os == "win": [PASS, NOTRUN]
[commands are queued, stream is unlocked after each operation]
expected:
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [PASS, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86"): NOTRUN
- if (os == "win") and not swgl and debug: [PASS, NOTRUN]
+ if os == "win": [PASS, NOTRUN]
[FileSystemWritableFileStream.https.any.worker.html]
expected:
- if (os == "win") and debug and (processor == "x86"): [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): TIMEOUT
+ if (os == "win") and debug and (processor == "x86"): [TIMEOUT, OK]
+ if (os == "win") and not debug: [OK, TIMEOUT]
[createWritable({keepExistingData: false}): atomic writable file stream initialized with empty file]
expected:
- if (os == "win") and not swgl and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
[commands are queued, stream is unlocked after each operation]
expected:
- if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): NOTRUN
+ if (os == "win") and debug and (processor == "x86"): [TIMEOUT, PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
[cursor position: truncate size < offset]
expected:
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86"): TIMEOUT
+ if (os == "win") and not debug: [PASS, NOTRUN]
[createWritable({keepExistingData: true}): atomic writable file stream initialized with source contents]
expected:
if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug: [PASS, TIMEOUT, NOTRUN]
[createWritable() fails when parent directory is removed]
expected:
if (os == "win") and debug and (processor == "x86"): [PASS, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
[truncate() to grow a file]
expected:
- if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[cursor position: truncate size > offset]
expected:
- if (os == "win") and not swgl and debug and (processor == "x86"): [PASS, NOTRUN]
- if (os == "win") and not swgl and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and debug and (processor == "x86"): [PASS, NOTRUN]
+ if (os == "win") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/generic-sensor/__dir__.ini b/testing/web-platform/meta/generic-sensor/__dir__.ini
index 2ef043b928..7741abbcc8 100644
--- a/testing/web-platform/meta/generic-sensor/__dir__.ini
+++ b/testing/web-platform/meta/generic-sensor/__dir__.ini
@@ -1 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1432631
implementation-status: backlog
diff --git a/testing/web-platform/meta/geolocation-API/disabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/geolocation-API/disabled-by-permissions-policy.https.sub.html.ini
index a78859e9b8..3af42ce78e 100644
--- a/testing/web-platform/meta/geolocation-API/disabled-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/geolocation-API/disabled-by-permissions-policy.https.sub.html.ini
@@ -1,10 +1,10 @@
[disabled-by-permissions-policy.https.sub.html]
- expected: TIMEOUT
+ expected: ERROR
[Permissions-Policy header geolocation=() disallows the top-level document.]
- expected: FAIL
+ expected: NOTRUN
[Permissions-Policy header geolocation=() disallows same-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
[Permissions-Policy header geolocation=() disallows cross-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html.ini b/testing/web-platform/meta/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html.ini
deleted file mode 100644
index 9d59460bfa..0000000000
--- a/testing/web-platform/meta/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html]
- expected: TIMEOUT
- [Permissions-Policy allow="geolocation" allows same-origin relocation]
- expected: TIMEOUT
-
- [Permissions-Policy allow="geolocation" allows cross-origin relocation]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/geolocation-API/enabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/geolocation-API/enabled-by-permissions-policy.https.sub.html.ini
index f6fe35d93a..1dbd4615b4 100644
--- a/testing/web-platform/meta/geolocation-API/enabled-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/geolocation-API/enabled-by-permissions-policy.https.sub.html.ini
@@ -1,10 +1,10 @@
[enabled-by-permissions-policy.https.sub.html]
- expected: TIMEOUT
+ expected: ERROR
[Permissions-Policy header geolocation=* allows the top-level document.]
- expected: FAIL
+ expected: NOTRUN
[Permissions-Policy header geolocation=* allows same-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
[Permissions-Policy header geolocation=* allows cross-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html.ini
index 7331fbf87e..46b5d536c8 100644
--- a/testing/web-platform/meta/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html.ini
@@ -1,10 +1,10 @@
[enabled-on-self-origin-by-permissions-policy.https.sub.html]
- expected: TIMEOUT
+ expected: ERROR
[Permissions-Policy header geolocation=(self) allows the top-level document.]
- expected: FAIL
+ expected: NOTRUN
[Permissions-Policy header geolocation=(self) allows same-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
[Permissions-Policy header geolocation=(self) disallows cross-origin iframes.]
- expected: TIMEOUT
+ expected: NOTRUN
diff --git a/testing/web-platform/meta/geolocation-API/idlharness.https.window.js.ini b/testing/web-platform/meta/geolocation-API/idlharness.https.window.js.ini
new file mode 100644
index 0000000000..782e2025cf
--- /dev/null
+++ b/testing/web-platform/meta/geolocation-API/idlharness.https.window.js.ini
@@ -0,0 +1,6 @@
+[idlharness.https.window.html]
+ [GeolocationPosition interface: operation toJSON()]
+ expected: FAIL
+
+ [GeolocationCoordinates interface: operation toJSON()]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html-aam/fragile/area-role.html.ini b/testing/web-platform/meta/html-aam/fragile/area-role.html.ini
deleted file mode 100644
index 8f658517d7..0000000000
--- a/testing/web-platform/meta/html-aam/fragile/area-role.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[area-role.html]
- [el-area]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/browsers/browsing-the-web/__dir__.ini b/testing/web-platform/meta/html/browsers/browsing-the-web/__dir__.ini
index bdffd14563..319f47d84f 100644
--- a/testing/web-platform/meta/html/browsers/browsing-the-web/__dir__.ini
+++ b/testing/web-platform/meta/html/browsers/browsing-the-web/__dir__.ini
@@ -1,2 +1,2 @@
-lsan-allowed: [Alloc, AllocateProtoAndIfaceCache, AtomizeAndCopyCharsNonStaticValidLengthFromLookup, Create, JS::Call, NewObject, PLDHashTable::ChangeTable, PLDHashTable::MakeEntryHandle, ProtoAndIfaceCache, RunHandler, WeakPtr, changeTableSize, createTable, js::frontend::InstantiateStencils, make_unique, mozilla::ThrottledEventQueue::Create, mozilla::detail::HashTable, mozilla::dom::BrowsingContext::Attach, mozilla::dom::BrowsingContext::CreateChildSHistory, mozilla::dom::BrowsingContext::CreateDetached, mozilla::dom::CanonicalBrowsingContext::GetSecureBrowserUI, mozilla::dom::Event::ConstructorInit, mozilla::dom::EventListener::HandleEvent, mozilla::dom::FetchDriver::OnStartRequest, mozilla::dom::JSActor::InvokeCallback, mozilla::dom::PageTransitionEvent::Constructor, mozilla::net::EarlyHintsService::EarlyHintsService, nsDocShell::CreateAboutBlankDocumentViewer, nsDocShell::SetupNewViewer, nsDynamicAtom::Create, operator, pod_malloc, unknown stack, xpc::XrayWrapper]
+lsan-allowed: [Alloc, AllocateProtoAndIfaceCache, AtomizeAndCopyCharsNonStaticValidLengthFromLookup, Create, DoGetOrCreateDOMReflector, GetOrCreateDOMReflector, JS::Call, NativeDefineDataProperty, NewObject, PLDHashTable::ChangeTable, PLDHashTable::MakeEntryHandle, ProtoAndIfaceCache, RunHandler, WeakPtr, changeTableSize, createTable, js::DefineAccessorProperty, js::NativeObject::addProperty, js::frontend::InstantiateStencils, make_unique, mozilla::ThrottledEventQueue::Create, mozilla::detail::HashTable, mozilla::dom::BrowsingContext::Attach, mozilla::dom::BrowsingContext::CreateChildSHistory, mozilla::dom::BrowsingContext::CreateDetached, mozilla::dom::CanonicalBrowsingContext::GetSecureBrowserUI, mozilla::dom::Event::ConstructorInit, mozilla::dom::EventListener::HandleEvent, mozilla::dom::FetchDriver::OnStartRequest, mozilla::dom::GetPerInterfaceObjectHandle, mozilla::dom::HTMLDocument_Binding::CreateInterfaceObjects, mozilla::dom::JSActor::InvokeCallback, mozilla::dom::PageTransitionEvent::Constructor, mozilla::net::EarlyHintsService::EarlyHintsService, nsDSURIContentListener::DoContent, nsDocShell::CreateAboutBlankDocumentViewer, nsDocShell::Embed, nsDocShell::SetupNewViewer, nsDynamicAtom::Create, operator, pod_malloc, unknown stack, xpc::XrayWrapper]
leak-threshold: [default:102400, tab:409600]
diff --git a/testing/web-platform/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-204-fragment.html.ini b/testing/web-platform/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-204-fragment.html.ini
index 897d98574a..d131aa5ac3 100644
--- a/testing/web-platform/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-204-fragment.html.ini
+++ b/testing/web-platform/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-204-fragment.html.ini
@@ -1,13 +1,13 @@
[iframe-src-204-fragment.html]
[src]
expected:
- if (os == "linux") and not debug and not asan and not fission: [FAIL, PASS]
+ if (os == "linux") and (processor == "x86"): [FAIL, PASS]
if os == "android": [FAIL, PASS]
[PASS, FAIL]
[location.href]
expected:
- if (os == "linux") and not debug and not asan and not fission: [FAIL, PASS]
+ if (os == "linux") and (processor == "x86"): [FAIL, PASS]
if os == "android": [FAIL, PASS]
[PASS, FAIL]
@@ -19,6 +19,5 @@
[link click]
expected:
- if not fission and not swgl and debug and (os == "linux"): [FAIL, PASS]
- if not fission and swgl and (os == "linux"): [FAIL, PASS]
+ if not fission and (os == "linux") and debug: [FAIL, PASS]
FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html.ini
deleted file mode 100644
index a41844bcec..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsl-clamp-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html.ini
deleted file mode 100644
index a1874e702a..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsl-clamp-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html.ini
deleted file mode 100644
index b853b77b78..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsl-clamp-3.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html.ini
deleted file mode 100644
index b4d3ab8745..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsl-clamp-4.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html.ini
deleted file mode 100644
index 8294c145d2..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html.ini
deleted file mode 100644
index 081c4f1839..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html.ini
deleted file mode 100644
index 4749aa648f..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-3.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html.ini
deleted file mode 100644
index f78bafaab3..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-4.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html.ini
deleted file mode 100644
index 1177b9dd1e..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-5.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html.ini b/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html.ini
deleted file mode 100644
index 8511183277..0000000000
--- a/testing/web-platform/meta/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.fillStyle.parse.hsla-clamp-6.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini
deleted file mode 100644
index ad57223953..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini
deleted file mode 100644
index 059da4018e..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini
deleted file mode 100644
index 390e5c2df6..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini
new file mode 100644
index 0000000000..9a24e32b98
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.canvasFilterObject.gaussianBlur.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini
deleted file mode 100644
index f25c403cba..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini
deleted file mode 100644
index 6860810164..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html.ini
new file mode 100644
index 0000000000..98f326c567
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.layers.gaussianBlur.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini
deleted file mode 100644
index b748c5dfa0..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.isotropic.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini
deleted file mode 100644
index 07ba56ece2..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-x.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini
deleted file mode 100644
index 82c9e26ef6..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-y.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html.ini
deleted file mode 100644
index 1936477694..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.x-only.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html.ini b/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html.ini
deleted file mode 100644
index 48cf358991..0000000000
--- a/testing/web-platform/meta/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.y-only.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html.ini
deleted file mode 100644
index 54b3cc045f..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html.ini
deleted file mode 100644
index 626eff7336..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html.ini
deleted file mode 100644
index d09675134e..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html.ini
deleted file mode 100644
index b55252d174..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.html.ini
deleted file mode 100644
index 2486a283d2..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html.ini
deleted file mode 100644
index 370ae9c250..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.html.ini
deleted file mode 100644
index 83afb17f2c..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..404c45da07
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..5f0ae34ff4
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html.ini
deleted file mode 100644
index 45de627636..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..a5415c367c
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html.ini
new file mode 100644
index 0000000000..6cb0dd3611
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.html.ini
deleted file mode 100644
index 98cc7085fa..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..1c6480ede0
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..1327e04cf8
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html.ini
deleted file mode 100644
index 74c1944327..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..cb0410d476
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html.ini
new file mode 100644
index 0000000000..8af32a1f6d
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..7e434389ba
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..e4e1d2ecfe
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..b3ddf29a40
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html.ini
new file mode 100644
index 0000000000..73cf933797
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html.ini
deleted file mode 100644
index 6dc2a0be3d..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini
deleted file mode 100644
index cc06756d37..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html.ini
deleted file mode 100644
index f870e31ef5..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini
deleted file mode 100644
index c648a53b3b..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html.ini
deleted file mode 100644
index b34278cdbd..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html.ini
deleted file mode 100644
index 82902cb9f8..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.html.ini
deleted file mode 100644
index 8a5b9e3474..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..320c0788bd
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..ffdea0f0bb
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html.ini
deleted file mode 100644
index bf8addbcad..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..4c9e8f0182
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini
new file mode 100644
index 0000000000..f3e73bbc0c
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.html.ini
deleted file mode 100644
index c0e9b5cd2e..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..625607575e
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..0d03f3d549
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html.ini
deleted file mode 100644
index aceed076ab..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..6951a25326
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini
new file mode 100644
index 0000000000..5bd2f825d0
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..a11a235607
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..11e660c56b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..98c792d69b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini
new file mode 100644
index 0000000000..7352700efe
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..2bca108715
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..6084e59852
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..4521ebd917
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini
new file mode 100644
index 0000000000..b55fabce62
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html.ini
deleted file mode 100644
index 22eb1011e3..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.no-global-states.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html.ini
deleted file mode 100644
index 5ce131519d..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..e1271b0887
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..8ad13f6691
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..61897735a8
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini
new file mode 100644
index 0000000000..99afebe84a
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-global-states.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-global-states.html.ini
deleted file mode 100644
index 17fb3603ea..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.no-global-states.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.no-global-states.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.shadow.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.shadow.html.ini
deleted file mode 100644
index 1257735885..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.global-states.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.globalCompositeOperation.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.globalCompositeOperation.html.ini
new file mode 100644
index 0000000000..f50e122758
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.globalCompositeOperation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.globalCompositeOperation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini
deleted file mode 100644
index d1998dcc7f..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.createImageBitmap.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html.ini
new file mode 100644
index 0000000000..37483c4620
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html.ini
@@ -0,0 +1,6 @@
+[2d.layer.malformed-operations-with-promises.html]
+ [Throws if createImageBitmap is called while layers are open.]
+ expected: FAIL
+
+ [Throws if toBlob is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html.ini
deleted file mode 100644
index 0095db27ee..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.toBlob.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html.ini
deleted file mode 100644
index 46ed88ffcf..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.createPattern.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html.ini
deleted file mode 100644
index 54c6406829..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.drawImage.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html.ini
deleted file mode 100644
index be1b5447dd..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.getImageData.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.html.ini
new file mode 100644
index 0000000000..101c6fd60a
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.html.ini
@@ -0,0 +1,15 @@
+[2d.layer.malformed-operations.html]
+ [Throws if createPattern is called while layers are open.]
+ expected: FAIL
+
+ [Throws if drawImage is called while layers are open.]
+ expected: FAIL
+
+ [Throws if getImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if putImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if toDataURL is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html.ini
deleted file mode 100644
index 712523e193..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.putImageData.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html.ini b/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html.ini
deleted file mode 100644
index 55ce1b318c..0000000000
--- a/testing/web-platform/meta/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.toDataURL.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini
deleted file mode 100644
index ad57223953..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html.ini
deleted file mode 100644
index f75a14cc30..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini
deleted file mode 100644
index 059da4018e..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html.ini
deleted file mode 100644
index 8959869db5..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini
deleted file mode 100644
index 390e5c2df6..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html.ini
deleted file mode 100644
index bc247e7beb..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini
new file mode 100644
index 0000000000..9a24e32b98
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.canvasFilterObject.gaussianBlur.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html.ini
new file mode 100644
index 0000000000..49a757678b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini
deleted file mode 100644
index f25c403cba..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html.ini
deleted file mode 100644
index 313bdcf7ff..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini
deleted file mode 100644
index 6860810164..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html.ini
deleted file mode 100644
index 2c60f9dd80..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html.ini
new file mode 100644
index 0000000000..98f326c567
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.layers.gaussianBlur.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini
deleted file mode 100644
index b748c5dfa0..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.isotropic.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html.ini
deleted file mode 100644
index 35968d5306..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.isotropic.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini
deleted file mode 100644
index 07ba56ece2..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-x.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html.ini
deleted file mode 100644
index 86ab5962ea..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-x.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini
deleted file mode 100644
index 82c9e26ef6..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-y.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html.ini
deleted file mode 100644
index 6f82af0f57..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.mostly-y.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html.ini
new file mode 100644
index 0000000000..a15fb4e137
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html.ini
@@ -0,0 +1,2 @@
+[2d.filter.layers.gaussianBlur.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html.ini
deleted file mode 100644
index 1936477694..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.x-only.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html.ini
deleted file mode 100644
index d2d77fbcf5..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.x-only.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html.ini
deleted file mode 100644
index 48cf358991..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.y-only.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html.ini
deleted file mode 100644
index 3514179242..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.filter.layers.gaussianBlur.y-only.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html.ini
deleted file mode 100644
index 54b3cc045f..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html.ini
deleted file mode 100644
index 626eff7336..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html.ini
deleted file mode 100644
index ff559e5d88..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html.ini
deleted file mode 100644
index c2a8c981f8..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.blending.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html.ini
deleted file mode 100644
index d09675134e..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html.ini
deleted file mode 100644
index b55252d174..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html.ini
deleted file mode 100644
index aaa6765253..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html.ini
deleted file mode 100644
index 75d1661461..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.composite.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html.ini
deleted file mode 100644
index 2486a283d2..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html.ini
deleted file mode 100644
index 370ae9c250..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html.ini
deleted file mode 100644
index 4f0d5b6562..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html.ini
deleted file mode 100644
index 562e7fb544..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.alpha.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.html.ini
deleted file mode 100644
index 83afb17f2c..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..404c45da07
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..6d3f867402
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..5f0ae34ff4
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..865516930b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html.ini
deleted file mode 100644
index 45de627636..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..a5415c367c
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..eb0f9ac9be
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html.ini
new file mode 100644
index 0000000000..6cb0dd3611
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..69749d1d22
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.blending.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html.ini
deleted file mode 100644
index 319d3a5bb3..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html.ini
deleted file mode 100644
index ee82c17f0e..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.blending.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.html.ini
deleted file mode 100644
index 98cc7085fa..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..1c6480ede0
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..5896105e3b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..1327e04cf8
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..3990f08265
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html.ini
deleted file mode 100644
index 74c1944327..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..cb0410d476
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..b1cec0976d
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html.ini
new file mode 100644
index 0000000000..8af32a1f6d
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..00e24ab0f4
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.composite.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html.ini
deleted file mode 100644
index ed51ae3219..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html.ini
deleted file mode 100644
index 8b69d01955..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.composite.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..7e434389ba
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..8b6afbe31c
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..e4e1d2ecfe
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..61b8d7e2d9
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..b3ddf29a40
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..ad7a10db03
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html.ini
new file mode 100644
index 0000000000..73cf933797
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..f7dc71e799
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.copy.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html.ini
deleted file mode 100644
index 6dc2a0be3d..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini
deleted file mode 100644
index cc06756d37..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html.ini
deleted file mode 100644
index 92cd7f4821..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html.ini
deleted file mode 100644
index b7a4f44aa7..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.blending.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html.ini
deleted file mode 100644
index f870e31ef5..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini
deleted file mode 100644
index c648a53b3b..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html.ini
deleted file mode 100644
index fcb4853232..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html.ini
deleted file mode 100644
index a7455df441..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.composite.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html.ini
deleted file mode 100644
index b34278cdbd..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html.ini
deleted file mode 100644
index 82902cb9f8..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html.ini
deleted file mode 100644
index c3ef52e8b4..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html.ini
deleted file mode 100644
index c080e87457..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.alpha.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html.ini
deleted file mode 100644
index 8a5b9e3474..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..320c0788bd
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..11e566f624
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..ffdea0f0bb
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..504e6dbe00
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html.ini
deleted file mode 100644
index bf8addbcad..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..4c9e8f0182
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..e160d39a8b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini
new file mode 100644
index 0000000000..f3e73bbc0c
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..fd8f19fffb
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.blending.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html.ini
deleted file mode 100644
index bdd2399328..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html.ini
deleted file mode 100644
index 54369d7e0d..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.blending.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html.ini
deleted file mode 100644
index c0e9b5cd2e..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..625607575e
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..856ca9b5dd
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..0d03f3d549
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..c65e4e6af7
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html.ini
deleted file mode 100644
index aceed076ab..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..6951a25326
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..bc8ba3b7d1
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini
new file mode 100644
index 0000000000..5bd2f825d0
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..8697b8ee55
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.composite.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html.ini
deleted file mode 100644
index 7315fffcb1..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html.ini
deleted file mode 100644
index 87fe1c1338..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.composite.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..a11a235607
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..b4350ad384
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..11e660c56b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..46f49fe022
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..98c792d69b
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..529082f039
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini
new file mode 100644
index 0000000000..7352700efe
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..787f83ec5e
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.copy.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..2bca108715
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..e84b41a07a
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..6084e59852
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..4c5a408b48
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..4521ebd917
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..3c57414972
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini
new file mode 100644
index 0000000000..b55fabce62
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..6f27126360
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html.ini
deleted file mode 100644
index 22eb1011e3..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.no-global-states.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html.ini
deleted file mode 100644
index 84c5a0e63c..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.no-global-states.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html.ini
deleted file mode 100644
index 5ce131519d..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html.ini
deleted file mode 100644
index 1ffdc5dc7e..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.filter.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini
new file mode 100644
index 0000000000..e1271b0887
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..b810cf1c28
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini
new file mode 100644
index 0000000000..8ad13f6691
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..a8cef47194
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini
new file mode 100644
index 0000000000..61897735a8
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.no-transform.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html.ini
new file mode 100644
index 0000000000..25ab7cbc35
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.no-transform.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini
new file mode 100644
index 0000000000..99afebe84a
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.rotation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html.ini
new file mode 100644
index 0000000000..6d5d73e185
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.global-states.no-composite-op.shadow.rotation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html.ini
deleted file mode 100644
index 17fb3603ea..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.no-global-states.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html.ini
deleted file mode 100644
index cc51506010..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.no-global-states.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html.ini
deleted file mode 100644
index 1257735885..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.shadow.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html.ini
deleted file mode 100644
index 66861cfabf..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[2d.layer.global-states.shadow.w.html]
- expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html.ini
new file mode 100644
index 0000000000..f50e122758
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.globalCompositeOperation.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html.ini
new file mode 100644
index 0000000000..da6d1e895f
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html.ini
@@ -0,0 +1,2 @@
+[2d.layer.globalCompositeOperation.w.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html.ini
deleted file mode 100644
index 080078d8ea..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.convertToBlob.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js.ini
deleted file mode 100644
index 22dfe0ef88..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.convertToBlob.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini
deleted file mode 100644
index d1998dcc7f..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.createImageBitmap.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js.ini
deleted file mode 100644
index 32ea8dfecf..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations-with-promises.createImageBitmap.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html.ini
new file mode 100644
index 0000000000..8dd4189baa
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html.ini
@@ -0,0 +1,6 @@
+[2d.layer.malformed-operations-with-promises.html]
+ [Throws if convertToBlob is called while layers are open.]
+ expected: FAIL
+
+ [Throws if createImageBitmap is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js.ini
new file mode 100644
index 0000000000..111b5ffc83
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js.ini
@@ -0,0 +1,6 @@
+[2d.layer.malformed-operations-with-promises.worker.html]
+ [Throws if convertToBlob is called while layers are open.]
+ expected: FAIL
+
+ [Throws if createImageBitmap is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html.ini
deleted file mode 100644
index 46ed88ffcf..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.createPattern.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js.ini
deleted file mode 100644
index 4e526d044d..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.createPattern.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html.ini
deleted file mode 100644
index 54c6406829..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.drawImage.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js.ini
deleted file mode 100644
index 83e4758621..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.drawImage.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html.ini
deleted file mode 100644
index be1b5447dd..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.getImageData.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js.ini
deleted file mode 100644
index 635df9bd32..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.getImageData.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.html.ini
new file mode 100644
index 0000000000..e82efdbd1d
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.html.ini
@@ -0,0 +1,15 @@
+[2d.layer.malformed-operations.html]
+ [Throws if createPattern is called while layers are open.]
+ expected: FAIL
+
+ [Throws if drawImage is called while layers are open.]
+ expected: FAIL
+
+ [Throws if getImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if putImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if transferToImageBitmap is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html.ini
deleted file mode 100644
index 712523e193..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.putImageData.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js.ini
deleted file mode 100644
index f17c7da697..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.putImageData.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html.ini
deleted file mode 100644
index c63b82d5a9..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.transferToImageBitmap.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js.ini
deleted file mode 100644
index 6642d085e1..0000000000
--- a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[2d.layer.malformed-operations.transferToImageBitmap.worker.html]
- [Check that exceptions are thrown for operations that are malformed while layers are open.]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js.ini b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js.ini
new file mode 100644
index 0000000000..bcb22804fc
--- /dev/null
+++ b/testing/web-platform/meta/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js.ini
@@ -0,0 +1,15 @@
+[2d.layer.malformed-operations.worker.html]
+ [Throws if createPattern is called while layers are open.]
+ expected: FAIL
+
+ [Throws if drawImage is called while layers are open.]
+ expected: FAIL
+
+ [Throws if getImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if putImageData is called while layers are open.]
+ expected: FAIL
+
+ [Throws if transferToImageBitmap is called while layers are open.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/cross-origin-embedder-policy/dedicated-worker-cache-storage.https.html.ini b/testing/web-platform/meta/html/cross-origin-embedder-policy/dedicated-worker-cache-storage.https.html.ini
index c9c1e3d2d8..311dbcccf0 100644
--- a/testing/web-platform/meta/html/cross-origin-embedder-policy/dedicated-worker-cache-storage.https.html.ini
+++ b/testing/web-platform/meta/html/cross-origin-embedder-policy/dedicated-worker-cache-storage.https.html.ini
@@ -1,14 +1,34 @@
[dedicated-worker-cache-storage.https.html]
expected:
- if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
[coep-require-corp coep-require-corp corp-cross-origin]
expected:
- if (processor == "x86") and (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[coep-require-corp coep-require-corp corp-undefined]
expected:
- if (processor == "x86") and (os == "win") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[coep-require-corp coep-none corp-undefined]
expected:
- if (processor == "x86") and (os == "win") and not debug: [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, TIMEOUT]
+
+ [coep-require-corp coep-none corp-cross-origin]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+
+ [coep-none coep-none corp-undefined]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
+
+ [coep-none coep-require-corp corp-undefined]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+
+ [coep-none coep-require-corp corp-cross-origin]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html.ini b/testing/web-platform/meta/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html.ini
index 0703495a05..a926fcb707 100644
--- a/testing/web-platform/meta/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html.ini
+++ b/testing/web-platform/meta/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html.ini
@@ -1,94 +1,93 @@
[none-load-from-cache-storage.https.html]
expected:
- if (processor == "x86") and not debug: [TIMEOUT, OK]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
[Fetch cross-origin no-cors cors-enabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: [NOTRUN, PASS]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch cross-origin no-cors cors-enabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch cross-origin no-cors cors-enabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: [NOTRUN, PASS]
-
- [Fetch same-origin cors cors-enabled corp-cross-origin from network and CacheStorage.]
- expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch cross-origin no-cors cors-disabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
-
- [Fetch same-origin cors cors-disabled corp-same-origin from network and CacheStorage.]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch same-origin no-cors cors-disabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch cross-origin no-cors cors-disabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch cross-origin cors cors-enabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch cross-origin cors cors-disabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch same-origin no-cors cors-enabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch cross-origin cors cors-enabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch same-origin no-cors cors-disabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch same-origin no-cors cors-disabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch cross-origin cors cors-disabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch cross-origin cors cors-disabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch same-origin cors cors-enabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch same-origin no-cors cors-enabled corp-undefined from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch cross-origin no-cors cors-disabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
[Fetch same-origin no-cors cors-enabled corp-cross-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
-
- [Fetch same-origin cors cors-disabled corp-undefined from network and CacheStorage.]
- expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, NOTRUN]
[Fetch same-origin cors cors-enabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug: [PASS, TIMEOUT]
[Fetch cross-origin cors cors-enabled corp-same-origin from network and CacheStorage.]
expected:
- if (processor == "x86") and not debug: NOTRUN
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86"): [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/html/cross-origin-opener-policy/coep-with-same-origin.https.html.ini b/testing/web-platform/meta/html/cross-origin-opener-policy/coep-with-same-origin.https.html.ini
index bd71db8ebd..0c9f0e5d3e 100644
--- a/testing/web-platform/meta/html/cross-origin-opener-policy/coep-with-same-origin.https.html.ini
+++ b/testing/web-platform/meta/html/cross-origin-opener-policy/coep-with-same-origin.https.html.ini
@@ -1,4 +1,4 @@
[coep-with-same-origin.https.html]
expected:
- if (os == "android") and debug and swgl: [OK, TIMEOUT]
+ if (os == "android") and debug: [OK, TIMEOUT]
if (os == "android") and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/cross-origin-opener-policy/coop-sandbox.https.html.ini b/testing/web-platform/meta/html/cross-origin-opener-policy/coop-sandbox.https.html.ini
index 2c854239d3..1d4db7d548 100644
--- a/testing/web-platform/meta/html/cross-origin-opener-policy/coop-sandbox.https.html.ini
+++ b/testing/web-platform/meta/html/cross-origin-opener-policy/coop-sandbox.https.html.ini
@@ -1,4 +1,4 @@
[coop-sandbox.https.html]
expected:
- if (os == "android") and debug and swgl: [OK, TIMEOUT]
+ if (os == "android") and debug: TIMEOUT
if (os == "android") and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/dom/documents/resource-metadata-management/document-cookie.html.ini b/testing/web-platform/meta/html/dom/documents/resource-metadata-management/document-cookie.html.ini
deleted file mode 100644
index bfdc1a58d7..0000000000
--- a/testing/web-platform/meta/html/dom/documents/resource-metadata-management/document-cookie.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[document-cookie.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [document.cookie 2]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html.ini b/testing/web-platform/meta/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html.ini
new file mode 100644
index 0000000000..3d8482ac28
--- /dev/null
+++ b/testing/web-platform/meta/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html.ini
@@ -0,0 +1,3 @@
+[the-anchor-attribute-xml.tentative.html]
+ [the-anchor-attribute-xml]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/dom/idlharness.https.html.ini b/testing/web-platform/meta/html/dom/idlharness.https.html.ini
index f666d3f736..8acbca1462 100644
--- a/testing/web-platform/meta/html/dom/idlharness.https.html.ini
+++ b/testing/web-platform/meta/html/dom/idlharness.https.html.ini
@@ -747,6 +747,18 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu
[SVGSVGElement interface: attribute onpageswap]
expected: FAIL
+ [Element interface: document.createElement("noscript") must inherit property "getHTML(optional GetHTMLOptions)" with the proper type]
+ expected: FAIL
+
+ [Element interface: calling getHTML(optional GetHTMLOptions) on document.createElement("noscript") with too few arguments must throw TypeError]
+ expected: FAIL
+
+ [ShadowRoot interface: operation getHTML(optional GetHTMLOptions)]
+ expected: FAIL
+
+ [Element interface: operation getHTML(optional GetHTMLOptions)]
+ expected: FAIL
+
[idlharness.https.html?include=(Document|Window)]
[Window interface: window must inherit property "originAgentCluster" with the proper type]
@@ -900,3 +912,9 @@ prefs: [dom.security.featurePolicy.experimental.enabled:true, dom.security.featu
[HTMLFrameSetElement interface: document.createElement("frameset") must inherit property "onpageswap" with the proper type]
expected: FAIL
+
+ [HTMLTemplateElement interface: attribute shadowRootSerializable]
+ expected: FAIL
+
+ [HTMLTemplateElement interface: document.createElement("template") must inherit property "shadowRootSerializable" with the proper type]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/dom/usvstring-reflection.https.html.ini b/testing/web-platform/meta/html/dom/usvstring-reflection.https.html.ini
index a4f6d8749f..c91b52e0ab 100644
--- a/testing/web-platform/meta/html/dom/usvstring-reflection.https.html.ini
+++ b/testing/web-platform/meta/html/dom/usvstring-reflection.https.html.ini
@@ -1,20 +1,9 @@
[usvstring-reflection.https.html]
expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [source : unpaired surrogate codepoint should be replaced with U+FFFD]
- expected: FAIL
-
- [anchor : unpaired surrogate codepoint should be replaced with U+FFFD]
- expected: FAIL
-
- [area : unpaired surrogate codepoint should be replaced with U+FFFD]
- expected: FAIL
-
- [storage event : unpaired surrogate codepoint should be replaced with U+FFFD]
- expected: FAIL
-
+ if (os == "mac") and not debug: [OK, TIMEOUT]
[UnregisterProtocolHandler URL: unpaired surrogate codepoint should not make any exceptions.]
expected: FAIL
[RTCDataChannel.send: unpaired surrogate codepoint should be replaced with U+FFFD.]
- expected: FAIL
+ expected:
+ if (os == "mac") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js.ini b/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js.ini
index 59a85ebb49..f4b638dab8 100644
--- a/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js.ini
+++ b/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js.ini
@@ -1,20 +1,13 @@
[serialization-via-idb.any.worker.html]
expected:
- if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ if (processor == "x86") and not debug: [OK, TIMEOUT]
[SharedArrayBuffer cloning via IndexedDB: basic case]
expected:
- if (processor == "x86") and (os == "win") and not debug: [FAIL, TIMEOUT]
- FAIL
+ if (processor == "x86") and not debug: [PASS, FAIL, TIMEOUT]
[SharedArrayBuffer cloning via the IndexedDB: is interleaved correctly]
expected:
- if (processor == "x86") and (os == "win") and not debug: [FAIL, TIMEOUT]
- FAIL
+ if (processor == "x86") and not debug: [PASS, FAIL, TIMEOUT]
[serialization-via-idb.any.html]
- [SharedArrayBuffer cloning via IndexedDB: basic case]
- expected: FAIL
-
- [SharedArrayBuffer cloning via the IndexedDB: is interleaved correctly]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html.ini b/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html.ini
new file mode 100644
index 0000000000..47081a549d
--- /dev/null
+++ b/testing/web-platform/meta/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html.ini
@@ -0,0 +1,3 @@
+[window-simple-success.https.html]
+ [postMessaging to a dedicated worker allows them to see each others' modifications with Float16Array]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/meta/refresh-time.html.ini b/testing/web-platform/meta/html/meta/refresh-time.html.ini
new file mode 100644
index 0000000000..8fd126ae47
--- /dev/null
+++ b/testing/web-platform/meta/html/meta/refresh-time.html.ini
@@ -0,0 +1,28 @@
+[refresh-time.html]
+ [Ensure that refresh is observed]
+ expected:
+ if not debug and (os == "linux") and not asan and tsan: [FAIL, PASS]
+ if not debug and (os == "win") and (processor == "x86_64"): [PASS, FAIL]
+ if not debug and (os == "linux") and asan: FAIL
+ if not debug and (os == "android"): FAIL
+ if debug: FAIL
+
+ [Ensure that fractions in refresh time are ignored]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, FAIL]
+
+ [Ensure that non-fractional part in refresh time does not get discarded]
+ expected:
+ if (os == "linux") and (processor == "x86_64") and not debug and not asan and not tsan: PASS
+ if (os == "win") and not debug: [PASS, FAIL]
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "linux") and (processor == "x86"): PASS
+ FAIL
+
+ [Ensure that multiple periods in refresh time just get ignored]
+ expected:
+ if (os == "linux") and (processor == "x86_64") and not debug and not asan and not tsan: PASS
+ if (os == "win") and not debug: [PASS, FAIL]
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "linux") and (processor == "x86"): PASS
+ FAIL
diff --git a/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-quirks-mode.html.ini b/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-quirks-mode.html.ini
index 3f4c8bb5fb..170ee2b765 100644
--- a/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-quirks-mode.html.ini
+++ b/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-quirks-mode.html.ini
@@ -1,5 +1,3 @@
[multicol-quirks-mode.html]
expected:
if (os == "android") and fission: [TIMEOUT, OK]
- [multicol default styles (quirks mode)]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-standards-mode.html.ini b/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-standards-mode.html.ini
index c64af955cc..15d3dff946 100644
--- a/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-standards-mode.html.ini
+++ b/testing/web-platform/meta/html/rendering/non-replaced-elements/margin-collapsing-quirks/multicol-standards-mode.html.ini
@@ -1,5 +1,3 @@
[multicol-standards-mode.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [multicol default styles (standards mode)]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html.ini b/testing/web-platform/meta/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html.ini
deleted file mode 100644
index a97bd551c5..0000000000
--- a/testing/web-platform/meta/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[select-1-block-size-001-ref.html]
- expected:
- if os == "android": PASS
- if os == "mac": PASS
- if os == "linux": PASS
- FAIL
diff --git a/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-data.html.ini b/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-data.html.ini
index 859fbc431b..dfbc2021a4 100644
--- a/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-data.html.ini
+++ b/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-data.html.ini
@@ -1,6 +1,14 @@
[base-data.html]
[First <base> has a data: URL so fallback is used]
- expected: FAIL
+ expected:
+ if not debug and (os == "linux") and not asan and not tsan: [PASS, FAIL]
+ if not debug and (os == "win"): [PASS, FAIL]
+ if not debug and (os == "mac"): [PASS, FAIL]
+ if not debug and (os == "android"): [PASS, FAIL]
[Dynamically inserted first <base> has a data: URL so fallback is used]
- expected: FAIL
+ expected:
+ if not debug and (os == "linux") and not asan and not tsan: [PASS, FAIL]
+ if not debug and (os == "win"): [PASS, FAIL]
+ if not debug and (os == "mac"): [PASS, FAIL]
+ if not debug and (os == "android"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-javascript.html.ini b/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-javascript.html.ini
index 0cd8cecf4f..46fad851e3 100644
--- a/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-javascript.html.ini
+++ b/testing/web-platform/meta/html/semantics/document-metadata/the-base-element/base-javascript.html.ini
@@ -1,6 +1,14 @@
[base-javascript.html]
[First <base> has a javascript: URL so fallback is used]
- expected: FAIL
+ expected:
+ if not debug and (os == "linux") and not asan and not tsan: [PASS, FAIL]
+ if not debug and (os == "win"): [PASS, FAIL]
+ if not debug and (os == "mac"): [PASS, FAIL]
+ if not debug and (os == "android"): [PASS, FAIL]
[Dynamically inserted first <base> has a javascript: URL so fallback is used]
- expected: FAIL
+ expected:
+ if not debug and (os == "linux") and not asan and not tsan: [PASS, FAIL]
+ if not debug and (os == "win"): [PASS, FAIL]
+ if not debug and (os == "mac"): [PASS, FAIL]
+ if not debug and (os == "android"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini
new file mode 100644
index 0000000000..88b760811d
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini
@@ -0,0 +1,3 @@
+[iframe_sandbox_popups_escaping-1.html]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.js.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.js.ini
index 6c1ef5bb5e..dd34a3b747 100644
--- a/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.js.ini
+++ b/testing/web-platform/meta/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.js.ini
@@ -1,5 +1,8 @@
[sandbox-top-navigation-child-cross-origin-delivered.tentative.sub.window.html]
expected:
- if (os == "linux") and not fission and debug and not swgl: [OK, CRASH]
+ if debug and (os == "linux") and fission: [OK, TIMEOUT]
+ if debug and (os == "linux") and not fission: [OK, CRASH]
[A cross-origin frame with delivered sandbox flags can not navigate top]
- expected: FAIL
+ expected:
+ if debug and (os == "linux") and fission: [FAIL, TIMEOUT]
+ FAIL
diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html.ini
index 669a2fce36..3bd071109c 100644
--- a/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html.ini
+++ b/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html.ini
@@ -1,3 +1,3 @@
[image-loading-lazy-data-url-to-https.html]
expected:
- if debug and (os == "linux") and not fission and not swgl: [PASS, FAIL]
+ if not fission and (os == "linux") and debug and not swgl: [PASS, FAIL]
diff --git a/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html.ini b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html.ini
new file mode 100644
index 0000000000..4663af098f
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html.ini
@@ -0,0 +1,2 @@
+[native-popup-with-datalist.tentative.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html.ini b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html.ini
new file mode 100644
index 0000000000..cccb9b6387
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html.ini
@@ -0,0 +1,6 @@
+[nested-options.tenative.html]
+ [The HTML parser should disallow nested options in select datalist.]
+ expected: FAIL
+
+ [Nested <options> should be listed in <select> IDLs.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html.ini b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html.ini
new file mode 100644
index 0000000000..3b64ad3a46
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html.ini
@@ -0,0 +1,2 @@
+[select-appearance-writing-mode-vertical-lr.tentative.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html.ini b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html.ini
new file mode 100644
index 0000000000..a3843b0849
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html.ini
@@ -0,0 +1,2 @@
+[select-appearance-writing-mode-vertical-rl.tentative.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html.ini b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html.ini
new file mode 100644
index 0000000000..468b6496e7
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html.ini
@@ -0,0 +1,18 @@
+[select-datalist-popover-behavior.tentative.html]
+ [showPopover and hidePopover should work on the select datalist.]
+ expected: FAIL
+
+ [showPicker should show the select datalist.]
+ expected: FAIL
+
+ [preventDefault on beforetoggle should prevent the datalist from showing.]
+ expected: FAIL
+
+ [showPopover on a disconnected datalist should throw an exception.]
+ expected: FAIL
+
+ [Disconnecting while internally showing the datalist should not crash or show the popover.]
+ expected: FAIL
+
+ [Disconnecting while internally hiding the datalist should not crash.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/interactive-elements/the-summary-element/interactive-content.html.ini b/testing/web-platform/meta/html/semantics/interactive-elements/the-summary-element/interactive-content.html.ini
index 1301bf9dc6..6f0966515d 100644
--- a/testing/web-platform/meta/html/semantics/interactive-elements/the-summary-element/interactive-content.html.ini
+++ b/testing/web-platform/meta/html/semantics/interactive-elements/the-summary-element/interactive-content.html.ini
@@ -1,6 +1,7 @@
prefs: [apz.zoom-to-focused-input.enabled:false]
[interactive-content.html]
expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
if (os == "mac") and not debug: TIMEOUT
if (os == "linux") and not debug: [TIMEOUT, OK]
if (os == "android") and not debug: [OK, CRASH]
@@ -11,15 +12,13 @@ prefs: [apz.zoom-to-focused-input.enabled:false]
expected:
if (os == "mac") and not debug: [NOTRUN, PASS]
if (os == "linux") and not debug: NOTRUN
- if (os == "android") and debug: [FAIL, PASS]
- if (os == "android") and not debug: [PASS, FAIL]
+ if os == "android": [PASS, FAIL]
[Clicking an <input type=number> doesn't open <details>]
expected:
if (os == "mac") and not debug: [NOTRUN, PASS]
if (os == "linux") and not debug: NOTRUN
- if (os == "android") and debug: [FAIL, PASS]
- if (os == "android") and not debug: [PASS, FAIL]
+ if os == "android": [PASS, FAIL]
[Clicking an <input type=color> doesn't open <details>]
expected:
@@ -44,6 +43,7 @@ prefs: [apz.zoom-to-focused-input.enabled:false]
[Clicking a <video> doesn't open <details>]
expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
if (os == "mac") and not debug: NOTRUN
if (os == "linux") and not debug: NOTRUN
@@ -65,7 +65,7 @@ prefs: [apz.zoom-to-focused-input.enabled:false]
[Clicking in an <iframe> doesn't open <details>]
expected:
- if (os == "mac") and not debug: [NOTRUN, PASS, TIMEOUT]
+ if (os == "mac") and not debug: [TIMEOUT, PASS, NOTRUN]
if (os == "linux") and not debug: [TIMEOUT, NOTRUN]
[Clicking an <input type=password> doesn't open <details>]
@@ -115,7 +115,7 @@ prefs: [apz.zoom-to-focused-input.enabled:false]
[Clicking the content of an <embed> doesn't open <details>]
expected:
- if (os == "mac") and not debug: TIMEOUT
+ if (os == "mac") and not debug: [PASS, TIMEOUT]
if (os == "linux") and not debug: [PASS, TIMEOUT]
[Clicking an <input type=submit> doesn't open <details>]
diff --git a/testing/web-platform/meta/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html.ini b/testing/web-platform/meta/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html.ini
new file mode 100644
index 0000000000..c924420849
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html.ini
@@ -0,0 +1,6 @@
+[interesttarget-anchor-event-dispatch.tentative.html]
+ [InterestEvent dispatches on anchor focus]
+ expected: FAIL
+
+ [InterestEvent dispatches on anchor hover]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html.ini b/testing/web-platform/meta/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html.ini
new file mode 100644
index 0000000000..205bf94760
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html.ini
@@ -0,0 +1,6 @@
+[interesttarget-area-event-dispatch.tentative.html]
+ [InterestEvent dispatches on area focus]
+ expected: FAIL
+
+ [InterestEvent dispatches on area hover]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html.ini b/testing/web-platform/meta/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html.ini
index fc3a1dbcb1..979193c75d 100644
--- a/testing/web-platform/meta/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html.ini
+++ b/testing/web-platform/meta/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html.ini
@@ -5,12 +5,6 @@
[InterestEvent dispatches on button hover]
expected: FAIL
- [InterestEvent dispatches on anchor focus]
- expected: FAIL
-
- [InterestEvent dispatches on anchor hover]
- expected: FAIL
-
[event action is set to interestAction]
expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html.ini b/testing/web-platform/meta/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html.ini
new file mode 100644
index 0000000000..4f94ff56be
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html.ini
@@ -0,0 +1,6 @@
+[interesttarget-svg-a-event-dispatch.tentative.html]
+ [InterestEvent dispatches on svg a focus]
+ expected: FAIL
+
+ [InterestEvent dispatches on svg a hover]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/invokers/invoketarget-on-input-number.tentative.html.ini b/testing/web-platform/meta/html/semantics/invokers/invoketarget-on-input-number.tentative.html.ini
new file mode 100644
index 0000000000..0f710f1658
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/invokers/invoketarget-on-input-number.tentative.html.ini
@@ -0,0 +1,12 @@
+[invoketarget-on-input-number.tentative.html]
+ [invoking number input with stepup action increments value]
+ expected: FAIL
+
+ [invoking number input with stepup action (case-insensitive) increments value]
+ expected: FAIL
+
+ [invoking number input with stepdown action decrements value]
+ expected: FAIL
+
+ [invoking number input with stepdown action (case-insensitive) decrements value]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes-reftest.tentative.html.ini b/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes-reftest.tentative.html.ini
new file mode 100644
index 0000000000..d4757fa0c1
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes-reftest.tentative.html.ini
@@ -0,0 +1,2 @@
+[bounded-sizes-reftest.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes.tentative.html.ini b/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes.tentative.html.ini
new file mode 100644
index 0000000000..365e0b46b9
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/permission-element/bounded-sizes.tentative.html.ini
@@ -0,0 +1,6 @@
+[bounded-sizes.tentative.html]
+ [Properties with out-of-bounds values should be corrected]
+ expected: FAIL
+
+ [Properties with values in bounds should not be modified]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reference.tentative.html.ini b/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reference.tentative.html.ini
deleted file mode 100644
index 75572897f7..0000000000
--- a/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reference.tentative.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[display-css-property-reference.tentative.html]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reftest.tentative.html.ini b/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reftest.tentative.html.ini
new file mode 100644
index 0000000000..01e47dd899
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/permission-element/display-css-property-reftest.tentative.html.ini
@@ -0,0 +1,2 @@
+[display-css-property-reftest.tentative.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html.ini b/testing/web-platform/meta/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html.ini
deleted file mode 100644
index 6d2d158177..0000000000
--- a/testing/web-platform/meta/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[popover-anchor-transition.tentative.tentative.html]
- [Transitioning display property of an anchored popover should not cause a position shift]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/popovers/popover-focus-2.html.ini b/testing/web-platform/meta/html/semantics/popovers/popover-focus-2.html.ini
index ada9635704..5a578262d8 100644
--- a/testing/web-platform/meta/html/semantics/popovers/popover-focus-2.html.ini
+++ b/testing/web-platform/meta/html/semantics/popovers/popover-focus-2.html.ini
@@ -1,23 +1,23 @@
[popover-focus-2.html]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [OK, TIMEOUT]
- if (os == "mac") and (processor == "x86_64") and not debug: [OK, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ if (os == "mac") and not debug: [OK, TIMEOUT]
[Popover focus navigation]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [PASS, TIMEOUT]
- if (os == "mac") and (processor == "x86_64") and not debug: [PASS, TIMEOUT]
+ if (os == "win") and not debug and (processor == "x86_64"): [FAIL, PASS, TIMEOUT]
+ if (os == "mac") and not debug: [FAIL, PASS, TIMEOUT]
[Circular reference tab navigation]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
- if (os == "mac") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "mac") and not debug: [PASS, NOTRUN]
[Popover focus returns when popover is hidden by invoker]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
- if (os == "mac") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
-
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "mac") and not debug: [PASS, NOTRUN]
+
[Popover focus only returns to invoker when focus is within the popover]
expected:
- if (os == "win") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
- if (os == "mac") and (processor == "x86_64") and not debug: [PASS, NOTRUN]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, NOTRUN]
+ if (os == "mac") and not debug: [PASS, NOTRUN]
diff --git a/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss-scroll-within.html.ini b/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss-scroll-within.html.ini
new file mode 100644
index 0000000000..9cfe855c31
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss-scroll-within.html.ini
@@ -0,0 +1,3 @@
+[popover-light-dismiss-scroll-within.html]
+ [Scrolling within a popover should not close the popover]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss.html.ini b/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss.html.ini
deleted file mode 100644
index 471a9a22a4..0000000000
--- a/testing/web-platform/meta/html/semantics/popovers/popover-light-dismiss.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[popover-light-dismiss.html]
- [Scrolling within a popover should not close the popover]
- expected:
- if (os == "linux") and not tsan and fission and asan: [PASS, FAIL]
- if (os == "linux") and not tsan and not fission: [PASS, FAIL]
- if (os == "linux") and tsan: [PASS, FAIL]
-
- [Pointer down inside invoker and up outside that invoker shouldn't dismiss popover]
- expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html.ini b/testing/web-platform/meta/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html.ini
index 215da4659e..475aad2cc9 100644
--- a/testing/web-platform/meta/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html.ini
+++ b/testing/web-platform/meta/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html.ini
@@ -12,7 +12,7 @@
[Single popover=manual ancestor with fullscreen]
expected:
- if (os == "mac") and not debug: [TIMEOUT, FAIL]
+ if (os == "mac") and not debug: [PASS, FAIL, TIMEOUT]
[Single popover=manual ancestor with fullscreen, anchor attribute]
expected:
@@ -95,7 +95,7 @@
[Single popover=manual ancestor with fullscreen, top layer element *is* a popover]
expected:
- if (os == "mac") and not debug: [NOTRUN, TIMEOUT]
+ if (os == "mac") and not debug: [TIMEOUT, NOTRUN]
[Nested popover=auto ancestors, target is outer with dialog, top layer element *is* a popover]
expected:
diff --git a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js.ini b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js.ini
index b192fcf1d8..a58ff3fb44 100644
--- a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js.ini
+++ b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js.ini
@@ -1,13 +1,27 @@
[basic.any.html]
- expected: [TIMEOUT, OK]
+ expected:
+ if debug and (os == "linux"): [OK, TIMEOUT]
+ if not debug and not tsan: [OK, TIMEOUT]
+ [TIMEOUT, OK]
+ [import() should not drain the microtask queue when loading an already loaded module]
+ expected: FAIL
+
[basic.any.sharedworker.html]
- expected: TIMEOUT
+ expected:
+ if tsan: TIMEOUT
+ if os == "android": TIMEOUT
[import() should drain the microtask queue when fetching a new module]
- expected: TIMEOUT
+ expected:
+ if tsan: TIMEOUT
+ if os == "android": TIMEOUT
[basic.any.worker.html]
- expected: [TIMEOUT, OK]
+ expected:
+ if tsan: [TIMEOUT, OK]
+ [OK, TIMEOUT]
[import() should drain the microtask queue when fetching a new module]
- expected: TIMEOUT
+ expected:
+ if tsan: TIMEOUT
+ if os == "android": TIMEOUT
diff --git a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html.ini b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html.ini
new file mode 100644
index 0000000000..655ca47e4a
--- /dev/null
+++ b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html.ini
@@ -0,0 +1,3 @@
+[inline-async-inserted-execorder.html]
+ [Inline async="" module scripts execute or throw parse errors asynchronously]
+ expected: FAIL
diff --git a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html.ini b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html.ini
index 37ff4cdd20..0808f8c9c7 100644
--- a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html.ini
+++ b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html.ini
@@ -4,9 +4,9 @@
[window error: Move parse-error inline classic script to iframe after-prepare]
expected:
if (os == "win") and ccov: [FAIL, PASS]
- if (os == "linux") and not debug and fission and (processor == "x86"): [PASS, FAIL]
- if (os == "linux") and not debug and not fission: [PASS, FAIL]
+ if (os == "linux") and (processor == "x86_64") and fission and not debug and not asan and not tsan: [PASS, FAIL]
if (os == "win") and not debug: [PASS, FAIL]
if (os == "mac") and debug: FAIL
- if (os == "mac") and not debug: PASS
+ if (os == "mac") and not debug: [PASS, FAIL]
+ if (os == "linux") and (processor == "x86"): [PASS, FAIL]
[FAIL, PASS]
diff --git a/testing/web-platform/meta/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.js.ini b/testing/web-platform/meta/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.js.ini
index 917d667521..01e028dc00 100644
--- a/testing/web-platform/meta/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.js.ini
+++ b/testing/web-platform/meta/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.js.ini
@@ -1,16 +1,9 @@
[queue-microtask-exceptions.any.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[queue-microtask-exceptions.any.worker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[queue-microtask-exceptions.any.sharedworker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[queue-microtask-exceptions.any.serviceworker.html]
expected:
- if (os == "win") and not debug and (processor == "x86"): [OK, TIMEOUT]
- if (os == "android") and fission: [OK, TIMEOUT]
+ if (processor == "x86") and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/atomics-wait-async.https.any.js.ini b/testing/web-platform/meta/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/atomics-wait-async.https.any.js.ini
index bd704a7587..ec70a3ab5a 100644
--- a/testing/web-platform/meta/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/atomics-wait-async.https.any.js.ini
+++ b/testing/web-platform/meta/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/atomics-wait-async.https.any.js.ini
@@ -1,6 +1,6 @@
[atomics-wait-async.https.any.html]
expected:
- if (os == "android") and debug and not swgl: TIMEOUT
+ if (os == "android") and debug: [OK, TIMEOUT]
[Atomics.waitAsync timeout in a Window]
expected: FAIL
@@ -9,6 +9,8 @@
[atomics-wait-async.https.any.worker.html]
+ expected:
+ if (os == "android") and debug: [OK, TIMEOUT]
[Atomics.waitAsync timeout in a DedicatedWorkerGlobalScope]
expected: FAIL
diff --git a/testing/web-platform/meta/html/webappapis/timers/setinterval-cross-realm-callback-report-exception.html.ini b/testing/web-platform/meta/html/webappapis/timers/setinterval-cross-realm-callback-report-exception.html.ini
index cc9261df7c..962c328876 100644
--- a/testing/web-platform/meta/html/webappapis/timers/setinterval-cross-realm-callback-report-exception.html.ini
+++ b/testing/web-platform/meta/html/webappapis/timers/setinterval-cross-realm-callback-report-exception.html.ini
@@ -1,6 +1,7 @@
[setinterval-cross-realm-callback-report-exception.html]
[window.setInterval() reports the exception from its callback in the callback's global object]
expected:
+ if (os == "linux") and fission and not tsan and not asan and not debug and (processor == "x86"): [PASS, FAIL]
+ if (os == "linux") and fission and not tsan and not asan and debug: [PASS, FAIL]
if (os == "linux") and fission and tsan: [PASS, FAIL]
- if (os == "linux") and not fission: [PASS, FAIL]
- if (os == "android") and swgl: [PASS, FAIL]
+ if (os == "linux") and not fission: [FAIL, PASS]
diff --git a/testing/web-platform/meta/idle-detection/idle-detection-allowed-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/idle-detection/idle-detection-allowed-by-permissions-policy.https.sub.html.ini
index 6f363c189c..c318436681 100644
--- a/testing/web-platform/meta/idle-detection/idle-detection-allowed-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/idle-detection/idle-detection-allowed-by-permissions-policy.https.sub.html.ini
@@ -14,3 +14,8 @@
[Permissions-Policy idle-detection=* explicity set by top-level frame allows workers in cross-origin iframes.]
expected: NOTRUN
+
+ [Inherited header permissions policy allows dedicated workers.]
+ expected:
+ if os == "android": [FAIL, TIMEOUT]
+ FAIL
diff --git a/testing/web-platform/meta/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html.ini b/testing/web-platform/meta/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html.ini
index 41e6572e80..2136cc6380 100644
--- a/testing/web-platform/meta/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html.ini
+++ b/testing/web-platform/meta/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html.ini
@@ -7,9 +7,6 @@
[Backspace at "<ul><li>list-item1[</li></ul><ul><li>}list-item2<br>second line in list-item2</li></ul>" - comparing innerHTML]
expected: FAIL
- [Backspace at "<ul><li>list-item1</li><li>[list-item2</li><ol><li>list-item3</li><li>}list-item4</li></ol></ul>" - comparing innerHTML]
- expected: FAIL
-
[Backspace at "<ul><ol><li>list-item1</li><li>[list-item2</li></ol><li>}list-item3</li></ul>" - comparing innerHTML]
expected: FAIL
@@ -355,9 +352,6 @@
[Backspace at "<ul><li>list-item1</li><li><p>[\]list-item2</p></li></ul>" - comparing innerHTML]
expected: FAIL
- [Backspace at "<ul><li>list-item1</li><li>[list-item2</li><ul><li>list-item3</li><li>}list-item4</li></ul></ul>" - comparing innerHTML]
- expected: FAIL
-
[Backspace at "<ul><ul><li>list-item1[</li></ul></ul><ol><li>list-item2\]</li></ol>"]
expected: FAIL
@@ -875,15 +869,9 @@
[Delete at "<ul><ol><li>[list-item1</li></ol><li>list-item2\]</li></ul>" - comparing innerHTML]
expected: FAIL
- [Delete at "<ul><li>list-item1</li><li>[list-item2</li><ul><li>list-item3</li><li>}list-item4</li></ul></ul>" - comparing innerHTML]
- expected: FAIL
-
[Delete at "<ul><ul><li>[list-item1</li></ul><li>list-item2\]</li></ul>" - comparing innerHTML]
expected: FAIL
- [Delete at "<ul><li>list-item1</li><li>[list-item2</li><ol><li>list-item3</li><li>}list-item4</li></ol></ul>" - comparing innerHTML]
- expected: FAIL
-
[Delete at "<ul><li>[list-item1</li></ul><ul><li>list-item2\]</li></ul>" - comparing innerHTML]
expected: FAIL
@@ -1128,9 +1116,6 @@
[Backspace at "<ol><ol><li>list-item1[</li></ol></ol><ul><li>list-item2\]</li></ul>"]
expected: FAIL
- [Backspace at "<ol><li>list-item1</li><li>[list-item2</li><ol><li>list-item3</li><li>}list-item4</li></ol></ol>" - comparing innerHTML]
- expected: FAIL
-
[Backspace at "<ol><ul><li>[list-item1</li></ul></ol><ul><li>}list-item2</li></ul>"]
expected: FAIL
@@ -1155,9 +1140,6 @@
[Backspace at "<ol><li>[list-item1</li></ol><ul><ol><li>}list-item2</li></ol></ul>" - comparing innerHTML]
expected: FAIL
- [Backspace at "<ol><li>list-item1</li><li>[list-item2</li><ul><li>list-item3</li><li>}list-item4</li></ul></ol>" - comparing innerHTML]
- expected: FAIL
-
[Backspace at "<ol><ul><li>list-item1</li><li>[list-item2</li></ul><li>}list-item3</li></ol>" - comparing innerHTML]
expected: FAIL
@@ -1718,9 +1700,6 @@
[Delete at "<ol><ol><li>[list-item1</li></ol><li>list-item2\]</li></ol>" - comparing innerHTML]
expected: FAIL
- [Delete at "<ol><li>list-item1</li><li>[list-item2</li><ul><li>list-item3</li><li>}list-item4</li></ul></ol>" - comparing innerHTML]
- expected: FAIL
-
[Delete at "<ol><li><ul><li>[list-item1</li></ul><li>}list-item2</li></ol>" - comparing innerHTML]
expected: FAIL
@@ -1847,9 +1826,6 @@
[Delete at "<ol><li>[list-item1</li></ol><ul><li><ol><li>list-item2\]</li></ol></li></ul>" - comparing innerHTML]
expected: FAIL
- [Delete at "<ol><li>list-item1</li><li>[list-item2</li><ol><li>list-item3</li><li>}list-item4</li></ol></ol>" - comparing innerHTML]
- expected: FAIL
-
[Delete at "<ol><ul><li>[list-item1</li></ul></ol><ol><li>}list-item2</li></ol>"]
expected: FAIL
diff --git a/testing/web-platform/meta/intersection-observer/remove-element.html.ini b/testing/web-platform/meta/intersection-observer/remove-element.html.ini
new file mode 100644
index 0000000000..7d7c38d58c
--- /dev/null
+++ b/testing/web-platform/meta/intersection-observer/remove-element.html.ini
@@ -0,0 +1,4 @@
+[remove-element.html]
+ [First rAF]
+ expected:
+ if (os == "android") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/intervention-reporting/__dir__.ini b/testing/web-platform/meta/intervention-reporting/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/intervention-reporting/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/is-input-pending/__dir__.ini b/testing/web-platform/meta/is-input-pending/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/is-input-pending/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/lifecycle/__dir__.ini b/testing/web-platform/meta/lifecycle/__dir__.ini
index 6a588e47a4..63ab718085 100644
--- a/testing/web-platform/meta/lifecycle/__dir__.ini
+++ b/testing/web-platform/meta/lifecycle/__dir__.ini
@@ -1,2 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1480376
implementation-status: backlog
leak-threshold: [default:51200]
diff --git a/testing/web-platform/meta/managed/__dir__.ini b/testing/web-platform/meta/managed/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/managed/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-2.html.ini b/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-2.html.ini
deleted file mode 100644
index 2f7cbbc296..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-2.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[frac-parameters-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-3.html.ini b/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-3.html.ini
index 914cda2898..7e384ea799 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-3.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/fractions/frac-parameters-3.html.ini
@@ -1,6 +1,4 @@
[frac-parameters-3.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
[nonzero linethickness, displaystyle=false]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html.ini b/testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html.ini
deleted file mode 100644
index 130198cba7..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[legacy-mstyle-attributes.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/mrow/merror-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/mrow/merror-001.html.ini
index 21b87eb20c..40b0e98d22 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/merror-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/mrow/merror-001.html.ini
@@ -1,6 +1,4 @@
[merror-001.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
[Default CSS properties on merror]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/mrow/mrow-fallback.html.ini b/testing/web-platform/meta/mathml/presentation-markup/mrow/mrow-fallback.html.ini
deleted file mode 100644
index 61e2503176..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/mrow-fallback.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[mrow-fallback.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/mrow/no-spacing.html.ini b/testing/web-platform/meta/mathml/presentation-markup/mrow/no-spacing.html.ini
index ffc62e31eb..f195e3b8fd 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/no-spacing.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/mrow/no-spacing.html.ini
@@ -1,6 +1,4 @@
[no-spacing.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Spacing inside <mfrac>.]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/mrow/spacing.html.ini b/testing/web-platform/meta/mathml/presentation-markup/mrow/spacing.html.ini
index 0941dff6bb..1663478255 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/spacing.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/mrow/spacing.html.ini
@@ -1,5 +1,3 @@
[spacing.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[operator spacing inside Error]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/embellished-operator-dynamic-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/embellished-operator-dynamic-002.html.ini
index d52e9a0830..59b36c410c 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/embellished-operator-dynamic-002.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/embellished-operator-dynamic-002.html.ini
@@ -1,6 +1,4 @@
[embellished-operator-dynamic-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[container1: Initially an embellished operator]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/largeop-hit-testing.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/largeop-hit-testing.html.ini
deleted file mode 100644
index 3036f7100c..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/largeop-hit-testing.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[largeop-hit-testing.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-axis-height-1.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-axis-height-1.html.ini
index 3e32a344dd..5ffa7e7003 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-axis-height-1.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-axis-height-1.html.ini
@@ -1,3 +1,15 @@
[mo-axis-height-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Tascent = Tdescent = 0, minsize = 14em]
+ expected: FAIL
+
+ [Tascent = 6em > AxisHeight, Tdescent = 1em, symmetric = false, minsize = 14em]
+ expected: FAIL
+
+ [Tascent = 4em < AxisHeight, Tdescent = 3em, symmetric = false, minsize = 14em]
+ expected: FAIL
+
+ [Tascent = 6em > AxisHeight, Tdescent = 22em, symmetric = false, maxsize = 14em]
+ expected: FAIL
+
+ [Tascent = 4em < AxisHeight, Tdescent = 24em, symmetric = false, maxsize = 14em]
+ expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html.ini
index 7fb5ba8854..8369ac132b 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html.ini
@@ -1,6 +1,4 @@
[mo-font-relative-lengths-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[font-relative minsize refers to the core operator]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html.ini
index 843be0fe40..e5f30e5599 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html.ini
@@ -2,5 +2,5 @@
[minsize < maxsize < 0 is treated as maxsize = minsize = 0]
expected: FAIL
- [minsize/maxsize percentages are relative to the target size]
+ [default minsize/maxsize values]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/mo-no-vertical-adjustment-for-basic-binary-operators.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-no-vertical-adjustment-for-basic-binary-operators.html.ini
new file mode 100644
index 0000000000..524be7bec3
--- /dev/null
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/mo-no-vertical-adjustment-for-basic-binary-operators.html.ini
@@ -0,0 +1,4 @@
+[mo-no-vertical-adjustment-for-basic-binary-operators.html]
+ [Vertical alignment of basic binary operators is not adjusted.]
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-combining.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-combining.html.ini
deleted file mode 100644
index b07344b503..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-combining.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-combining.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-001.html.ini
deleted file mode 100644
index 0b68fb6c9d..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-001.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-002.html.ini
deleted file mode 100644
index a6ac9e8b45..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-002.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-003.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-003.html.ini
deleted file mode 100644
index e9104b3d07..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-003.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-003.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-004.html.ini
deleted file mode 100644
index dc63a8a014..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-004.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-005.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-005.html.ini
deleted file mode 100644
index dffdb020a7..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-005.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-005.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-006.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-006.html.ini
deleted file mode 100644
index c0ab298b7d..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-largeop-006.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-largeop-006.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-001.html.ini
index 2f770329d7..d631cfb797 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-001.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-002.html.ini
index f17f6406b5..ff97b6ae46 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-002.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-002.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-003.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-003.html.ini
index 4732b25ad4..7d0fb3d30f 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-003.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-003.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-003.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004.html.ini
index d1bde51b48..2536e5fd15 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-005.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-005.html.ini
index b07c51ef84..20b72b7ef4 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-005.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-005.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-005.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006.html.ini
index f203b6a2e8..1a438f64cd 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-movablelimits-006.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - movablelimits]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-001.html.ini
index d874d506da..421d3b4c8c 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-001.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 1 - lspace/rspace]
expected: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-002.html.ini
index 427fd08ab2..80e5e9a21d 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-002.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-002.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 1 - lspace/rspace]
expected: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-003.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-003.html.ini
index d4e2a62bf4..90defd4d81 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-003.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-003.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-003.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
[Operator dictionary chunk 1 - lspace/rspace]
expected:
if os == "mac": [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-004.html.ini
index e27d420700..bd697666cb 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-004.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-004.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 1 - lspace/rspace]
disabled:
if os == "android": https://bugzilla.mozilla.org/show_bug.cgi?id=1668892
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-005.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-005.html.ini
index f6a5440dc7..6e259d96f0 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-005.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-005.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-005.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - lspace/rspace]
expected: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-006.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-006.html.ini
index de7c174f7d..26dbc3fced 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-006.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-spacing-006.html.ini
@@ -1,6 +1,4 @@
[operator-dictionary-spacing-006.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Operator dictionary chunk 3 - lspace/rspace]
expected:
if os == "win": PASS
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-001.html.ini
deleted file mode 100644
index 721d9cd465..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-001.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-001.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-002.html.ini
deleted file mode 100644
index 6f80fdd489..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-002.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-003.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-003.html.ini
deleted file mode 100644
index 024f9bbe09..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-003.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-003.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-004.html.ini
deleted file mode 100644
index 9e32137c0d..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-004.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-005.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-005.html.ini
deleted file mode 100644
index 97f34249b9..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-005.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-005.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-006.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-006.html.ini
deleted file mode 100644
index 1da7f3ddb5..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-stretchy-006.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-stretchy-006.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-001.html.ini
deleted file mode 100644
index a7a400a781..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-001.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-002.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-002.html.ini
deleted file mode 100644
index 26a4af2610..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-002.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-003.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-003.html.ini
deleted file mode 100644
index 2830f762fc..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-003.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-003.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-004.html.ini
deleted file mode 100644
index 803870b432..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-004.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-005.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-005.html.ini
deleted file mode 100644
index 09b08b8fd9..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-005.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-005.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-006.html.ini b/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-006.html.ini
deleted file mode 100644
index 3bf6c29c1b..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/operators/operator-dictionary-symmetric-006.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[operator-dictionary-symmetric-006.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-3.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-3.html.ini
index 166363a771..b473c8ea4a 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-3.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-3.html.ini
@@ -1,6 +1,4 @@
[subsup-3.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Vertical positions of scripts]
expected:
if os == "android": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-4.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-4.html.ini
deleted file mode 100644
index ce4b63193d..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-4.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[subsup-4.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-5.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-5.html.ini
deleted file mode 100644
index 79f9c68a07..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-5.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[subsup-5.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-1.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-1.html.ini
index afa4a63750..085c4adda4 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-1.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-1.html.ini
@@ -1,6 +1,5 @@
[subsup-parameters-1.html]
expected:
- if (os == "android") and fission: [OK, TIMEOUT]
if os == "win": [OK, TIMEOUT]
[SpaceAfterScript]
expected:
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-2.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-2.html.ini
index 91a3711df6..af74486da6 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-2.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/subsup-parameters-2.html.ini
@@ -1,6 +1,4 @@
[subsup-parameters-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Null Italic Correction]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-1.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-1.html.ini
index de663cc7f1..66f7a240d5 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-1.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-1.html.ini
@@ -1,6 +1,4 @@
[underover-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Height of scripted elements]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-1.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-1.html.ini
index 85ee002bf5..c628e2ff85 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-1.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-1.html.ini
@@ -1,6 +1,4 @@
[underover-parameters-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[LowerLimitBaselineDropMin]
expected:
if (processor == "x86") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-2.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-2.html.ini
index 08cb974221..4afcf0d8a0 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-2.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-2.html.ini
@@ -1,6 +1,4 @@
[underover-parameters-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[StretchStackBottomShiftDown]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-3.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-3.html.ini
index 067247baa8..a8420a5ef4 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-3.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-3.html.ini
@@ -1,6 +1,4 @@
[underover-parameters-3.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[AccentBaseHeight, UnderbarExtraDescender]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-4.tentative.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-4.tentative.html.ini
index 7dcb1ef4ed..ce2dab0a68 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-4.tentative.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-4.tentative.html.ini
@@ -1,6 +1,4 @@
[underover-parameters-4.tentative.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[AccentBaseHeight, OverbarVerticalGap]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-1.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-1.html.ini
deleted file mode 100644
index 4cd82fd9f1..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-1.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[underover-parameters-and-embellished-operator-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-2.html.ini b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-2.html.ini
index 6b0a25cfcd..aedfb75058 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-2.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/scripts/underover-parameters-and-embellished-operator-2.html.ini
@@ -1,6 +1,4 @@
[underover-parameters-and-embellished-operator-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[StretchStackBottomShiftDown]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/spaces/space-like-004.html.ini b/testing/web-platform/meta/mathml/presentation-markup/spaces/space-like-004.html.ini
index 56a1dc8b59..9bb752e2e4 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/spaces/space-like-004.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/spaces/space-like-004.html.ini
@@ -1,6 +1,4 @@
[space-like-004.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[complex non-space-like subtree, from in-flow children]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/presentation-markup/tables/table-axis-height.html.ini b/testing/web-platform/meta/mathml/presentation-markup/tables/table-axis-height.html.ini
deleted file mode 100644
index 8d5207d6b7..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/tables/table-axis-height.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[table-axis-height.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/tables/table-cell-mrow-layout.html.ini b/testing/web-platform/meta/mathml/presentation-markup/tables/table-cell-mrow-layout.html.ini
deleted file mode 100644
index a221491e4f..0000000000
--- a/testing/web-platform/meta/mathml/presentation-markup/tables/table-cell-mrow-layout.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[table-cell-mrow-layout.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
diff --git a/testing/web-platform/meta/mathml/presentation-markup/tables/table-default-styles-001.html.ini b/testing/web-platform/meta/mathml/presentation-markup/tables/table-default-styles-001.html.ini
index 07ca63cb16..e2f1a2dcd8 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/tables/table-default-styles-001.html.ini
+++ b/testing/web-platform/meta/mathml/presentation-markup/tables/table-default-styles-001.html.ini
@@ -1,6 +1,4 @@
[table-default-styles-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Default text-align value on mtd]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/default-properties-on-the-math-root.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/default-properties-on-the-math-root.html.ini
deleted file mode 100644
index 68b9d82fa3..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/default-properties-on-the-math-root.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[default-properties-on-the-math-root.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/display-2.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/display-2.html.ini
index 740abfc185..36307d8db7 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/display-2.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/display-2.html.ini
@@ -1,6 +1,4 @@
[display-2.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
max-asserts: 2
[flexbox display (mrow)]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/display-contents.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/display-contents.html.ini
deleted file mode 100644
index d206015395..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/display-contents.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[display-contents.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-1.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-1.html.ini
deleted file mode 100644
index bb1edd1e0c..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-1.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[displaystyle-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-2.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-2.html.ini
deleted file mode 100644
index 89b13d4ca5..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-2.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[displaystyle-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-3.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-3.html.ini
deleted file mode 100644
index 955d9f9528..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/displaystyle-3.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[displaystyle-3.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html.ini
new file mode 100644
index 0000000000..8271e8a3f1
--- /dev/null
+++ b/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html.ini
@@ -0,0 +1,2 @@
+[first-line-first-letter-pseudo-elements-003.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html.ini
new file mode 100644
index 0000000000..f8db064021
--- /dev/null
+++ b/testing/web-platform/meta/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html.ini
@@ -0,0 +1,2 @@
+[first-line-first-letter-pseudo-elements-004.html]
+ expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/floats/not-floating-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/floats/not-floating-001.html.ini
index 7d55f4a881..aeccc0e813 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/floats/not-floating-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/floats/not-floating-001.html.ini
@@ -1,6 +1,4 @@
[not-floating-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[float child ignored in mi]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/ignored-properties-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/ignored-properties-001.html.ini
index 09c58f48b6..c9674d3582 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/ignored-properties-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/ignored-properties-001.html.ini
@@ -1,4 +1,2 @@
[ignored-properties-001.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
max-asserts: 51
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/lengths-2.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/lengths-2.html.ini
index 874932c4c0..f0051a1091 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/lengths-2.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/lengths-2.html.ini
@@ -1,6 +1,4 @@
[lengths-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Trimming of space]
expected:
if (processor == "x86") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/multi-column-layout.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/multi-column-layout.html.ini
deleted file mode 100644
index fa00dff6c2..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/multi-column-layout.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[multi-column-layout.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/not-participating-to-parent-layout.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/not-participating-to-parent-layout.html.ini
index d045a4df13..3a68bba622 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/not-participating-to-parent-layout.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/not-participating-to-parent-layout.html.ini
@@ -1,6 +1,4 @@
[not-participating-to-parent-layout.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[menclose layout is not affected by children with "position: fixed" style]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/out-of-flow/all-mathml-containers.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/out-of-flow/all-mathml-containers.html.ini
index 1ca245e990..0adfef69da 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/out-of-flow/all-mathml-containers.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/out-of-flow/all-mathml-containers.html.ini
@@ -1,6 +1,4 @@
[all-mathml-containers.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[position: absolute; children in maction]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/overflow/computed-value-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/overflow/computed-value-001.html.ini
deleted file mode 100644
index fa5f334b6d..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/overflow/computed-value-001.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[computed-value-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-001.html.ini
index 3717f6d396..ed7dc38f23 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-001.html.ini
@@ -1,6 +1,4 @@
[border-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Border properties on mrow (logical, shorthand)]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-002.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-002.html.ini
index a6af759587..de1e3e1b7f 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-002.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/border-002.html.ini
@@ -1,6 +1,4 @@
[border-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Border properties on mmultiscripts]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-001.html.ini
index b28b968492..2ebcd1d4e7 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-001.html.ini
@@ -1,6 +1,4 @@
[margin-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Margin properties on mrow (logical, shorthand)]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-002.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-002.html.ini
index 6225f809e3..d9bc449359 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-002.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-002.html.ini
@@ -1,6 +1,4 @@
[margin-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Margin properties on msup]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-003.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-003.html.ini
index a8f4a39f85..8e93cfbf49 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-003.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/margin-003.html.ini
@@ -1,6 +1,4 @@
[margin-003.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Margin properties on the children of munderover]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-001.html.ini
index 4307bc021b..ac818f3c82 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-001.html.ini
@@ -1,6 +1,4 @@
[padding-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Padding properties on mrow (shorthand)]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-002.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-002.html.ini
index 4f7520587f..6c8e73705b 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-002.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/padding-border-margin/padding-002.html.ini
@@ -1,6 +1,4 @@
[padding-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Padding properties on mphantom]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/scriptlevel-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/scriptlevel-001.html.ini
index d7bf45891a..f9cf398b29 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/scriptlevel-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/scriptlevel-001.html.ini
@@ -1,5 +1,3 @@
[scriptlevel-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[checking dynamic/case-insensitive accent/accentunder]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/force-horizontal-tb.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/force-horizontal-tb.html.ini
deleted file mode 100644
index 20181eea9a..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/force-horizontal-tb.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[force-horizontal-tb.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-001.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-001.html.ini
deleted file mode 100644
index d000fc6ccd..0000000000
--- a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-001.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[writing-mode-001.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-002.html.ini b/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-002.html.ini
index a37f41a887..30d7e2e18a 100644
--- a/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-002.html.ini
+++ b/testing/web-platform/meta/mathml/relations/css-styling/writing-mode/writing-mode-002.html.ini
@@ -1,6 +1,4 @@
[writing-mode-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[Layout of mn (writing-mode: horizontal-tb; direction: rtl;)]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/css-inline-style-interface.tentative.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/css-inline-style-interface.tentative.html.ini
deleted file mode 100644
index 21627b35eb..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/css-inline-style-interface.tentative.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[css-inline-style-interface.tentative.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/display-1.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/display-1.html.ini
deleted file mode 100644
index 28a12b91e6..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/display-1.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[display-1.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-001.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-001.html.ini
index 129ca05e3c..ef81b8bd47 100644
--- a/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-001.html.ini
+++ b/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-001.html.ini
@@ -1,6 +1,4 @@
[dynamic-childlist-001.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
[Removing extra child from mfrac]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-002.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-002.html.ini
deleted file mode 100644
index c44583b413..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/dynamic-childlist-002.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[dynamic-childlist-002.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/html-or-foreign-element-interfaces.tentative.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/html-or-foreign-element-interfaces.tentative.html.ini
deleted file mode 100644
index 2d5c864fb7..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/html-or-foreign-element-interfaces.tentative.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[html-or-foreign-element-interfaces.tentative.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-4.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-4.html.ini
deleted file mode 100644
index c9a986387f..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-4.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[integration-point-4.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-5.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-5.html.ini
deleted file mode 100644
index f432c89a24..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/integration-point-5.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[integration-point-5.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/math-global-event-handlers.tentative.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/math-global-event-handlers.tentative.html.ini
index 4dfd835f5f..bbf3d202ca 100644
--- a/testing/web-platform/meta/mathml/relations/html5-tree/math-global-event-handlers.tentative.html.ini
+++ b/testing/web-platform/meta/mathml/relations/html5-tree/math-global-event-handlers.tentative.html.ini
@@ -1,6 +1,4 @@
[math-global-event-handlers.tentative.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[onbeforematch: must be on the appropriate locations for GlobalEventHandlers]
expected: FAIL
diff --git a/testing/web-platform/meta/mathml/relations/html5-tree/unique-identifier-2.html.ini b/testing/web-platform/meta/mathml/relations/html5-tree/unique-identifier-2.html.ini
deleted file mode 100644
index 633051f85f..0000000000
--- a/testing/web-platform/meta/mathml/relations/html5-tree/unique-identifier-2.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[unique-identifier-2.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/mathml/relations/text-and-math/basic-mathematical-alphanumeric-symbols-with-default-font.html.ini b/testing/web-platform/meta/mathml/relations/text-and-math/basic-mathematical-alphanumeric-symbols-with-default-font.html.ini
index e8d10ad178..7ce780bb94 100644
--- a/testing/web-platform/meta/mathml/relations/text-and-math/basic-mathematical-alphanumeric-symbols-with-default-font.html.ini
+++ b/testing/web-platform/meta/mathml/relations/text-and-math/basic-mathematical-alphanumeric-symbols-with-default-font.html.ini
@@ -1,13 +1,13 @@
[basic-mathematical-alphanumeric-symbols-with-default-font.html]
[Bold mathematical alphanumeric symbol with the default font]
expected:
- if os == "android": FAIL
+ if os == "android": FAIL # bug 1010679
[Italic mathematical alphanumeric symbol with the default font]
expected:
- if os == "android": FAIL
+ if os == "android": FAIL # bug 1010679
[Bold-italic mathematical alphanumeric symbol with the default font]
expected:
- if os == "android": FAIL
+ if os == "android": FAIL # bug 1010679
diff --git a/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html.ini b/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html.ini
new file mode 100644
index 0000000000..424df7daa5
--- /dev/null
+++ b/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html.ini
@@ -0,0 +1,30 @@
+[MediaStreamTrack-audio-stats.https.html]
+ [totalFrames and totalFramesDuration increase over time]
+ expected: FAIL
+
+ [deliveredFrames and deliveredFramesDuration are at most as large as totalFrames and totalFramesDuration]
+ expected: FAIL
+
+ [Latency and averageLatency is within the bounds of minimumLatency and maximumLatency]
+ expected: FAIL
+
+ [Immediately after resetLatency(), latency, averageLatency, minimumLatency and maximumLatency are equal to the most recent latency.]
+ expected: FAIL
+
+ [Stats do not change within the same task execution cycle.]
+ expected: FAIL
+
+ [Stats are frozen while disabled]
+ expected: FAIL
+
+ [SameObject policy applies]
+ expected: FAIL
+
+ [Counters increase even if we don't call the track.stats getter]
+ expected: FAIL
+
+ [Disabling and re-enabling does not reset the counters]
+ expected: FAIL
+
+ [New stats baselines when a track is cloned from an enabled track]
+ expected: FAIL
diff --git a/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-video-stats.https.html.ini b/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-video-stats.https.html.ini
index 7c9de6aef2..bceb23d683 100644
--- a/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-video-stats.https.html.ini
+++ b/testing/web-platform/meta/mediacapture-extensions/MediaStreamTrack-video-stats.https.html.ini
@@ -41,9 +41,6 @@
[track.stats is supported on getDisplayMedia tracks]
expected: FAIL
- [track.stats is null on audio tracks]
- expected: FAIL
-
[track.stats is null on non-device tracks, such as canvas]
expected: FAIL
diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-canvas-media-source.https.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-canvas-media-source.https.html.ini
index 4cb1b6f516..623724b6b7 100644
--- a/testing/web-platform/meta/mediacapture-record/MediaRecorder-canvas-media-source.https.html.ini
+++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-canvas-media-source.https.html.ini
@@ -7,19 +7,10 @@
[MediaRecorder-canvas-media-source.https.html?mimeType='']
- [MediaRecorder returns frames containing video content]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-canvas-media-source.https.html?mimeType=video/mp4;codecs=avc1,mp4a.40.2]
- [MediaRecorder returns frames containing video content]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-canvas-media-source.https.html?mimeType=video/webm;codecs=av1,opus]
- [MediaRecorder returns frames containing video content]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-canvas-media-source.https.html?mimeType=video/webm;codecs=vp8,opus]
expected: ERROR
@@ -28,5 +19,7 @@
[MediaRecorder-canvas-media-source.https.html?mimeType=video/webm;codecs=vp9,opus]
- [MediaRecorder returns frames containing video content]
- expected: PRECONDITION_FAILED
+
+[MediaRecorder-canvas-media-source.https.html?mimeType=video/mp4;codecs=vp9,opus]
+
+[MediaRecorder-canvas-media-source.https.html?mimeType=video/mp4]
diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini
index 135fa39bd8..614180c603 100644
--- a/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini
+++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini
@@ -7,19 +7,10 @@
[MediaRecorder-events-and-exceptions.html?mimeType=video/webm;codecs=av1,opus]
- [MediaRecorder events and exceptions]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-events-and-exceptions.html?mimeType=video/mp4;codecs=avc1,mp4a.40.2]
- [MediaRecorder events and exceptions]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-events-and-exceptions.html?mimeType=video/webm;codecs=vp9,opus]
- [MediaRecorder events and exceptions]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-events-and-exceptions.html?mimeType=video/webm;codecs=vp8,opus]
expected: TIMEOUT
@@ -28,5 +19,7 @@
[MediaRecorder-events-and-exceptions.html?mimeType='']
- [MediaRecorder events and exceptions]
- expected: PRECONDITION_FAILED
+
+[MediaRecorder-events-and-exceptions.html?mimeType=video/mp4;codecs=vp9,opus]
+
+[MediaRecorder-events-and-exceptions.html?mimeType=video/mp4]
diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-peerconnection.https.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-peerconnection.https.html.ini
index d065e3c7eb..c8d6f5103b 100644
--- a/testing/web-platform/meta/mediacapture-record/MediaRecorder-peerconnection.https.html.ini
+++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-peerconnection.https.html.ini
@@ -90,3 +90,40 @@
expected:
if (os == "android") and release_or_beta: PASS
if os == "android": [NOTRUN, PASS]
+
+
+[MediaRecorder-peerconnection.https.html?kinds=video&mimeType='']
+
+[MediaRecorder-peerconnection.https.html?kinds=video&mimeType=video/mp4;codecs=vp9]
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType='']
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType=video/webm;codecs=vp8,opus]
+
+[MediaRecorder-peerconnection.https.html?kinds=audio&mimeType=audio/mp4;codecs=opus]
+
+[MediaRecorder-peerconnection.https.html?kinds=video&mimeType=video/webm;codecs=vp8]
+ expected:
+ if os == "android": TIMEOUT
+ [PeerConnection MediaRecorder receives data after onstart, kinds "video "mimeType "video/webm;codecs=vp8"]
+ expected:
+ if os == "android": TIMEOUT
+
+ [PeerConnection MediaRecorder gets ondata on stopping tracks, kinds "video "mimeType "video/webm;codecs=vp8"]
+ expected:
+ if os == "android": NOTRUN
+
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType=video/webm;codecs=vp9,opus]
+
+[MediaRecorder-peerconnection.https.html?kinds=video&mimeType=video/webm;codecs=vp9]
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType=video/mp4;codecs=avc1,mp4a.40.2]
+
+[MediaRecorder-peerconnection.https.html?kinds=audio&mimeType=audio/webm;codecs=opus]
+
+[MediaRecorder-peerconnection.https.html?kinds=audio&mimeType='']
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType=video/mp4;codecs=vp9,opus]
+
+[MediaRecorder-peerconnection.https.html?kinds=video,audio&mimeType=video/mp4]
diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-stop.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-stop.html.ini
index 1259d2f509..d500cc8c85 100644
--- a/testing/web-platform/meta/mediacapture-record/MediaRecorder-stop.html.ini
+++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-stop.html.ini
@@ -11,30 +11,6 @@
[MediaRecorder-stop.html?mimeType=video/webm;codecs=vp9,opus]
- [MediaRecorder will stop recording and fire a stop event when all tracks are ended]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will stop recording and fire a stop event when stop() is called]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after creation]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if stopped synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if a track is removed synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire only start and stop events in a basic recording flow.]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-stop.html?mimeType=video/webm;codecs=vp8,opus]
expected: TIMEOUT
@@ -64,78 +40,11 @@
[MediaRecorder-stop.html?mimeType=video/webm;codecs=av1,opus]
- [MediaRecorder will stop recording and fire a stop event when all tracks are ended]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will stop recording and fire a stop event when stop() is called]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after creation]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if stopped synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if a track is removed synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire only start and stop events in a basic recording flow.]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-stop.html?mimeType=video/mp4;codecs=avc1,mp4a.40.2]
- [MediaRecorder will stop recording and fire a stop event when all tracks are ended]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will stop recording and fire a stop event when stop() is called]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after creation]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if stopped synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if a track is removed synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire only start and stop events in a basic recording flow.]
- expected: PRECONDITION_FAILED
-
[MediaRecorder-stop.html?mimeType='']
- [MediaRecorder will stop recording and fire a stop event when all tracks are ended]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will stop recording and fire a stop event when stop() is called]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will not fire an exception when stopped after creation]
- expected: PRECONDITION_FAILED
- [MediaRecorder will not fire an exception when stopped after having just been stopped]
- expected: PRECONDITION_FAILED
+[MediaRecorder-stop.html?mimeType=video/mp4;codecs=vp9,opus]
- [MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if stopped synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire start event even if a track is removed synchronously]
- expected: PRECONDITION_FAILED
-
- [MediaRecorder will fire only start and stop events in a basic recording flow.]
- expected: PRECONDITION_FAILED
+[MediaRecorder-stop.html?mimeType=video/mp4]
diff --git a/testing/web-platform/meta/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html.ini b/testing/web-platform/meta/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html.ini
new file mode 100644
index 0000000000..6f48a36ebf
--- /dev/null
+++ b/testing/web-platform/meta/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html.ini
@@ -0,0 +1,18 @@
+[BrowserCaptureMediaStreamTrack-restrictTo.https.html]
+ expected:
+ if os == "android": OK
+ ERROR
+ [Tests that restricting MediaStreamTrack objects works as expected (StackingContext).]
+ expected:
+ if os == "mac": TIMEOUT
+ FAIL
+
+ [Tests that restricting MediaStreamTrack objects works as expected (OnlyOneBoxFragment).]
+ expected:
+ if os == "android": FAIL
+ NOTRUN
+
+ [Tests that restricting MediaStreamTrack objects works as expected (FlattenedIn3D).]
+ expected:
+ if os == "android": FAIL
+ NOTRUN
diff --git a/testing/web-platform/meta/mediasession/idlharness.window.js.ini b/testing/web-platform/meta/mediasession/idlharness.window.js.ini
index 6af25e2257..9bce47fdd4 100644
--- a/testing/web-platform/meta/mediasession/idlharness.window.js.ini
+++ b/testing/web-platform/meta/mediasession/idlharness.window.js.ini
@@ -17,3 +17,35 @@
[MediaSession interface: calling setCameraActive(boolean) on navigator.mediaSession with too few arguments must throw TypeError]
expected: FAIL
+ [MediaMetadata interface: attribute chapterInfo]
+ expected: FAIL
+
+ [MediaMetadata interface: new MediaMetadata() must inherit property "chapterInfo" with the proper type]
+ expected: FAIL
+
+ [ChapterInformation interface: existence and properties of interface object]
+ expected: FAIL
+
+ [ChapterInformation interface object length]
+ expected: FAIL
+
+ [ChapterInformation interface object name]
+ expected: FAIL
+
+ [ChapterInformation interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [ChapterInformation interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [ChapterInformation interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [ChapterInformation interface: attribute title]
+ expected: FAIL
+
+ [ChapterInformation interface: attribute startTime]
+ expected: FAIL
+
+ [ChapterInformation interface: attribute artwork]
+ expected: FAIL
diff --git a/testing/web-platform/meta/mimesniff/mime-types/parsing.any.js.ini b/testing/web-platform/meta/mimesniff/mime-types/parsing.any.js.ini
index 9c218c3784..6af69d68a4 100644
--- a/testing/web-platform/meta/mimesniff/mime-types/parsing.any.js.ini
+++ b/testing/web-platform/meta/mimesniff/mime-types/parsing.any.js.ini
@@ -3097,18 +3097,6 @@
[text/html;test=ÿ;charset=gbk (Request/Response)]
expected: FAIL
- [\x0bx/x (Request/Response)]
- expected: FAIL
-
- [\x0cx/x (Request/Response)]
- expected: FAIL
-
- [x/x\x0b (Request/Response)]
- expected: FAIL
-
- [x/x\x0c (Request/Response)]
- expected: FAIL
-
[/ (Request/Response)]
expected: FAIL
@@ -3127,9 +3115,6 @@
[(/) (Request/Response)]
expected: FAIL
- [ÿ/ÿ (Request/Response)]
- expected: FAIL
-
[text/html(;doesnot=matter (Request/Response)]
expected: FAIL
@@ -3145,12 +3130,6 @@
["text/html" (Request/Response)]
expected: FAIL
- [\x01/x (Request/Response)]
- expected: FAIL
-
- [x/\x01 (Request/Response)]
- expected: FAIL
-
[x/x;\x01=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3160,12 +3139,6 @@
[x/x;x="\x01";bonus=x (Request/Response)]
expected: FAIL
- [\x02/x (Request/Response)]
- expected: FAIL
-
- [x/\x02 (Request/Response)]
- expected: FAIL
-
[x/x;\x02=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3175,12 +3148,6 @@
[x/x;x="\x02";bonus=x (Request/Response)]
expected: FAIL
- [\x03/x (Request/Response)]
- expected: FAIL
-
- [x/\x03 (Request/Response)]
- expected: FAIL
-
[x/x;\x03=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3190,12 +3157,6 @@
[x/x;x="\x03";bonus=x (Request/Response)]
expected: FAIL
- [\x04/x (Request/Response)]
- expected: FAIL
-
- [x/\x04 (Request/Response)]
- expected: FAIL
-
[x/x;\x04=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3205,12 +3166,6 @@
[x/x;x="\x04";bonus=x (Request/Response)]
expected: FAIL
- [\x05/x (Request/Response)]
- expected: FAIL
-
- [x/\x05 (Request/Response)]
- expected: FAIL
-
[x/x;\x05=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3220,12 +3175,6 @@
[x/x;x="\x05";bonus=x (Request/Response)]
expected: FAIL
- [\x06/x (Request/Response)]
- expected: FAIL
-
- [x/\x06 (Request/Response)]
- expected: FAIL
-
[x/x;\x06=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3235,12 +3184,6 @@
[x/x;x="\x06";bonus=x (Request/Response)]
expected: FAIL
- [\x07/x (Request/Response)]
- expected: FAIL
-
- [x/\x07 (Request/Response)]
- expected: FAIL
-
[x/x;\x07=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3250,12 +3193,6 @@
[x/x;x="\x07";bonus=x (Request/Response)]
expected: FAIL
- [\x08/x (Request/Response)]
- expected: FAIL
-
- [x/\x08 (Request/Response)]
- expected: FAIL
-
[x/x;\x08=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3268,12 +3205,6 @@
[x/x;\t=x;bonus=x (Request/Response)]
expected: FAIL
- [\x0b/x (Request/Response)]
- expected: FAIL
-
- [x/\x0b (Request/Response)]
- expected: FAIL
-
[x/x;\x0b=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3283,12 +3214,6 @@
[x/x;x="\x0b";bonus=x (Request/Response)]
expected: FAIL
- [\x0c/x (Request/Response)]
- expected: FAIL
-
- [x/\x0c (Request/Response)]
- expected: FAIL
-
[x/x;\x0c=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3298,12 +3223,6 @@
[x/x;x="\x0c";bonus=x (Request/Response)]
expected: FAIL
- [\x0e/x (Request/Response)]
- expected: FAIL
-
- [x/\x0e (Request/Response)]
- expected: FAIL
-
[x/x;\x0e=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3313,12 +3232,6 @@
[x/x;x="\x0e";bonus=x (Request/Response)]
expected: FAIL
- [\x0f/x (Request/Response)]
- expected: FAIL
-
- [x/\x0f (Request/Response)]
- expected: FAIL
-
[x/x;\x0f=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3328,12 +3241,6 @@
[x/x;x="\x0f";bonus=x (Request/Response)]
expected: FAIL
- [\x10/x (Request/Response)]
- expected: FAIL
-
- [x/\x10 (Request/Response)]
- expected: FAIL
-
[x/x;\x10=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3343,12 +3250,6 @@
[x/x;x="\x10";bonus=x (Request/Response)]
expected: FAIL
- [\x11/x (Request/Response)]
- expected: FAIL
-
- [x/\x11 (Request/Response)]
- expected: FAIL
-
[x/x;\x11=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3358,12 +3259,6 @@
[x/x;x="\x11";bonus=x (Request/Response)]
expected: FAIL
- [\x12/x (Request/Response)]
- expected: FAIL
-
- [x/\x12 (Request/Response)]
- expected: FAIL
-
[x/x;\x12=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3373,12 +3268,6 @@
[x/x;x="\x12";bonus=x (Request/Response)]
expected: FAIL
- [\x13/x (Request/Response)]
- expected: FAIL
-
- [x/\x13 (Request/Response)]
- expected: FAIL
-
[x/x;\x13=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3388,12 +3277,6 @@
[x/x;x="\x13";bonus=x (Request/Response)]
expected: FAIL
- [\x14/x (Request/Response)]
- expected: FAIL
-
- [x/\x14 (Request/Response)]
- expected: FAIL
-
[x/x;\x14=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3403,12 +3286,6 @@
[x/x;x="\x14";bonus=x (Request/Response)]
expected: FAIL
- [\x15/x (Request/Response)]
- expected: FAIL
-
- [x/\x15 (Request/Response)]
- expected: FAIL
-
[x/x;\x15=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3418,12 +3295,6 @@
[x/x;x="\x15";bonus=x (Request/Response)]
expected: FAIL
- [\x16/x (Request/Response)]
- expected: FAIL
-
- [x/\x16 (Request/Response)]
- expected: FAIL
-
[x/x;\x16=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3433,12 +3304,6 @@
[x/x;x="\x16";bonus=x (Request/Response)]
expected: FAIL
- [\x17/x (Request/Response)]
- expected: FAIL
-
- [x/\x17 (Request/Response)]
- expected: FAIL
-
[x/x;\x17=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3448,12 +3313,6 @@
[x/x;x="\x17";bonus=x (Request/Response)]
expected: FAIL
- [\x18/x (Request/Response)]
- expected: FAIL
-
- [x/\x18 (Request/Response)]
- expected: FAIL
-
[x/x;\x18=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3463,12 +3322,6 @@
[x/x;x="\x18";bonus=x (Request/Response)]
expected: FAIL
- [\x19/x (Request/Response)]
- expected: FAIL
-
- [x/\x19 (Request/Response)]
- expected: FAIL
-
[x/x;\x19=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3478,12 +3331,6 @@
[x/x;x="\x19";bonus=x (Request/Response)]
expected: FAIL
- [\x1a/x (Request/Response)]
- expected: FAIL
-
- [x/\x1a (Request/Response)]
- expected: FAIL
-
[x/x;\x1a=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3493,12 +3340,6 @@
[x/x;x="\x1a";bonus=x (Request/Response)]
expected: FAIL
- [\x1b/x (Request/Response)]
- expected: FAIL
-
- [x/\x1b (Request/Response)]
- expected: FAIL
-
[x/x;\x1b=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3508,12 +3349,6 @@
[x/x;x="\x1b";bonus=x (Request/Response)]
expected: FAIL
- [\x1c/x (Request/Response)]
- expected: FAIL
-
- [x/\x1c (Request/Response)]
- expected: FAIL
-
[x/x;\x1c=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3523,12 +3358,6 @@
[x/x;x="\x1c";bonus=x (Request/Response)]
expected: FAIL
- [\x1d/x (Request/Response)]
- expected: FAIL
-
- [x/\x1d (Request/Response)]
- expected: FAIL
-
[x/x;\x1d=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3538,12 +3367,6 @@
[x/x;x="\x1d";bonus=x (Request/Response)]
expected: FAIL
- [\x1e/x (Request/Response)]
- expected: FAIL
-
- [x/\x1e (Request/Response)]
- expected: FAIL
-
[x/x;\x1e=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3553,12 +3376,6 @@
[x/x;x="\x1e";bonus=x (Request/Response)]
expected: FAIL
- [\x1f/x (Request/Response)]
- expected: FAIL
-
- [x/\x1f (Request/Response)]
- expected: FAIL
-
[x/x;\x1f=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3742,12 +3559,6 @@
[x/x;x=};bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
@@ -3757,1540 +3568,1156 @@
[x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [€/x (Request/Response)]
- expected: FAIL
-
- [x/€ (Request/Response)]
- expected: FAIL
-
[x/x;€=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=€;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [‚/x (Request/Response)]
- expected: FAIL
-
- [x/‚ (Request/Response)]
- expected: FAIL
-
[x/x;‚=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‚;bonus=x (Request/Response)]
expected: FAIL
- [ƒ/x (Request/Response)]
- expected: FAIL
-
- [x/ƒ (Request/Response)]
- expected: FAIL
-
[x/x;ƒ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ƒ;bonus=x (Request/Response)]
expected: FAIL
- [„/x (Request/Response)]
- expected: FAIL
-
- [x/„ (Request/Response)]
- expected: FAIL
-
[x/x;„=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=„;bonus=x (Request/Response)]
expected: FAIL
- […/x (Request/Response)]
- expected: FAIL
-
- [x/… (Request/Response)]
- expected: FAIL
-
[x/x;…=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=…;bonus=x (Request/Response)]
expected: FAIL
- [†/x (Request/Response)]
- expected: FAIL
-
- [x/† (Request/Response)]
- expected: FAIL
-
[x/x;†=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=†;bonus=x (Request/Response)]
expected: FAIL
- [‡/x (Request/Response)]
- expected: FAIL
-
- [x/‡ (Request/Response)]
- expected: FAIL
-
[x/x;‡=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‡;bonus=x (Request/Response)]
expected: FAIL
- [ˆ/x (Request/Response)]
- expected: FAIL
-
- [x/ˆ (Request/Response)]
- expected: FAIL
-
[x/x;ˆ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ˆ;bonus=x (Request/Response)]
expected: FAIL
- [‰/x (Request/Response)]
- expected: FAIL
-
- [x/‰ (Request/Response)]
- expected: FAIL
-
[x/x;‰=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‰;bonus=x (Request/Response)]
expected: FAIL
- [Š/x (Request/Response)]
- expected: FAIL
-
- [x/Š (Request/Response)]
- expected: FAIL
-
[x/x;Š=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Š;bonus=x (Request/Response)]
expected: FAIL
- [‹/x (Request/Response)]
- expected: FAIL
-
- [x/‹ (Request/Response)]
- expected: FAIL
-
[x/x;‹=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‹;bonus=x (Request/Response)]
expected: FAIL
- [Œ/x (Request/Response)]
- expected: FAIL
-
- [x/Œ (Request/Response)]
- expected: FAIL
-
[x/x;Œ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Œ;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [Ž/x (Request/Response)]
- expected: FAIL
-
- [x/Ž (Request/Response)]
- expected: FAIL
-
[x/x;Ž=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Ž;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [‘/x (Request/Response)]
- expected: FAIL
-
- [x/‘ (Request/Response)]
- expected: FAIL
-
[x/x;‘=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‘;bonus=x (Request/Response)]
expected: FAIL
- [’/x (Request/Response)]
- expected: FAIL
-
- [x/’ (Request/Response)]
- expected: FAIL
-
[x/x;’=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=’;bonus=x (Request/Response)]
expected: FAIL
- [“/x (Request/Response)]
- expected: FAIL
-
- [x/“ (Request/Response)]
- expected: FAIL
-
[x/x;“=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=“;bonus=x (Request/Response)]
expected: FAIL
- [”/x (Request/Response)]
- expected: FAIL
-
- [x/” (Request/Response)]
- expected: FAIL
-
[x/x;”=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=”;bonus=x (Request/Response)]
expected: FAIL
- [•/x (Request/Response)]
- expected: FAIL
-
- [x/• (Request/Response)]
- expected: FAIL
-
[x/x;•=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=•;bonus=x (Request/Response)]
expected: FAIL
- [–/x (Request/Response)]
- expected: FAIL
-
- [x/– (Request/Response)]
- expected: FAIL
-
[x/x;–=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=–;bonus=x (Request/Response)]
expected: FAIL
- [—/x (Request/Response)]
- expected: FAIL
-
- [x/— (Request/Response)]
- expected: FAIL
-
[x/x;—=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=—;bonus=x (Request/Response)]
expected: FAIL
- [˜/x (Request/Response)]
- expected: FAIL
-
- [x/˜ (Request/Response)]
- expected: FAIL
-
[x/x;˜=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=˜;bonus=x (Request/Response)]
expected: FAIL
- [™/x (Request/Response)]
- expected: FAIL
-
- [x/™ (Request/Response)]
- expected: FAIL
-
[x/x;™=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=™;bonus=x (Request/Response)]
expected: FAIL
- [š/x (Request/Response)]
- expected: FAIL
-
- [x/š (Request/Response)]
- expected: FAIL
-
[x/x;š=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=š;bonus=x (Request/Response)]
expected: FAIL
- [›/x (Request/Response)]
- expected: FAIL
-
- [x/› (Request/Response)]
- expected: FAIL
-
[x/x;›=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=›;bonus=x (Request/Response)]
expected: FAIL
- [œ/x (Request/Response)]
- expected: FAIL
-
- [x/œ (Request/Response)]
- expected: FAIL
-
[x/x;œ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=œ;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [ž/x (Request/Response)]
- expected: FAIL
-
- [x/ž (Request/Response)]
- expected: FAIL
-
[x/x;ž=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ž;bonus=x (Request/Response)]
expected: FAIL
- [Ÿ/x (Request/Response)]
- expected: FAIL
-
- [x/Ÿ (Request/Response)]
- expected: FAIL
-
[x/x;Ÿ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Ÿ;bonus=x (Request/Response)]
expected: FAIL
- [ /x (Request/Response)]
- expected: FAIL
-
- [x/  (Request/Response)]
- expected: FAIL
-
[x/x; =x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x= ;bonus=x (Request/Response)]
expected: FAIL
- [¡/x (Request/Response)]
- expected: FAIL
-
- [x/¡ (Request/Response)]
- expected: FAIL
-
[x/x;¡=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¡;bonus=x (Request/Response)]
expected: FAIL
- [¢/x (Request/Response)]
- expected: FAIL
-
- [x/¢ (Request/Response)]
- expected: FAIL
-
[x/x;¢=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¢;bonus=x (Request/Response)]
expected: FAIL
- [£/x (Request/Response)]
- expected: FAIL
-
- [x/£ (Request/Response)]
- expected: FAIL
-
[x/x;£=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=£;bonus=x (Request/Response)]
expected: FAIL
- [¤/x (Request/Response)]
- expected: FAIL
-
- [x/¤ (Request/Response)]
- expected: FAIL
-
[x/x;¤=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¤;bonus=x (Request/Response)]
expected: FAIL
- [¥/x (Request/Response)]
- expected: FAIL
-
- [x/¥ (Request/Response)]
- expected: FAIL
-
[x/x;¥=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¥;bonus=x (Request/Response)]
expected: FAIL
- [¦/x (Request/Response)]
- expected: FAIL
-
- [x/¦ (Request/Response)]
- expected: FAIL
-
[x/x;¦=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¦;bonus=x (Request/Response)]
expected: FAIL
- [§/x (Request/Response)]
- expected: FAIL
-
- [x/§ (Request/Response)]
- expected: FAIL
-
[x/x;§=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=§;bonus=x (Request/Response)]
expected: FAIL
- [¨/x (Request/Response)]
- expected: FAIL
-
- [x/¨ (Request/Response)]
- expected: FAIL
-
[x/x;¨=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¨;bonus=x (Request/Response)]
expected: FAIL
- [©/x (Request/Response)]
- expected: FAIL
-
- [x/© (Request/Response)]
- expected: FAIL
-
[x/x;©=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=©;bonus=x (Request/Response)]
expected: FAIL
- [ª/x (Request/Response)]
- expected: FAIL
-
- [x/ª (Request/Response)]
- expected: FAIL
-
[x/x;ª=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ª;bonus=x (Request/Response)]
expected: FAIL
- [«/x (Request/Response)]
- expected: FAIL
-
- [x/« (Request/Response)]
- expected: FAIL
-
[x/x;«=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=«;bonus=x (Request/Response)]
expected: FAIL
- [¬/x (Request/Response)]
- expected: FAIL
-
- [x/¬ (Request/Response)]
- expected: FAIL
-
[x/x;¬=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¬;bonus=x (Request/Response)]
expected: FAIL
- [­/x (Request/Response)]
- expected: FAIL
-
- [x/­ (Request/Response)]
- expected: FAIL
-
[x/x;­=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=­;bonus=x (Request/Response)]
expected: FAIL
- [®/x (Request/Response)]
- expected: FAIL
-
- [x/® (Request/Response)]
- expected: FAIL
-
[x/x;®=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=®;bonus=x (Request/Response)]
expected: FAIL
- [¯/x (Request/Response)]
- expected: FAIL
-
- [x/¯ (Request/Response)]
- expected: FAIL
-
[x/x;¯=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¯;bonus=x (Request/Response)]
expected: FAIL
- [°/x (Request/Response)]
- expected: FAIL
-
- [x/° (Request/Response)]
- expected: FAIL
-
[x/x;°=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=°;bonus=x (Request/Response)]
expected: FAIL
- [±/x (Request/Response)]
- expected: FAIL
-
- [x/± (Request/Response)]
- expected: FAIL
-
[x/x;±=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=±;bonus=x (Request/Response)]
expected: FAIL
- [²/x (Request/Response)]
- expected: FAIL
-
- [x/² (Request/Response)]
- expected: FAIL
-
[x/x;²=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=²;bonus=x (Request/Response)]
expected: FAIL
- [³/x (Request/Response)]
- expected: FAIL
-
- [x/³ (Request/Response)]
- expected: FAIL
-
[x/x;³=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=³;bonus=x (Request/Response)]
expected: FAIL
- [´/x (Request/Response)]
- expected: FAIL
-
- [x/´ (Request/Response)]
- expected: FAIL
-
[x/x;´=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=´;bonus=x (Request/Response)]
expected: FAIL
- [µ/x (Request/Response)]
- expected: FAIL
-
- [x/µ (Request/Response)]
- expected: FAIL
-
[x/x;µ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=µ;bonus=x (Request/Response)]
expected: FAIL
- [¶/x (Request/Response)]
- expected: FAIL
-
- [x/¶ (Request/Response)]
- expected: FAIL
-
[x/x;¶=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¶;bonus=x (Request/Response)]
expected: FAIL
- [·/x (Request/Response)]
- expected: FAIL
-
- [x/· (Request/Response)]
- expected: FAIL
-
[x/x;·=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=·;bonus=x (Request/Response)]
expected: FAIL
- [¸/x (Request/Response)]
- expected: FAIL
-
- [x/¸ (Request/Response)]
- expected: FAIL
-
[x/x;¸=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¸;bonus=x (Request/Response)]
expected: FAIL
- [¹/x (Request/Response)]
- expected: FAIL
-
- [x/¹ (Request/Response)]
- expected: FAIL
-
[x/x;¹=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¹;bonus=x (Request/Response)]
expected: FAIL
- [º/x (Request/Response)]
- expected: FAIL
-
- [x/º (Request/Response)]
- expected: FAIL
-
[x/x;º=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=º;bonus=x (Request/Response)]
expected: FAIL
- [»/x (Request/Response)]
- expected: FAIL
-
- [x/» (Request/Response)]
- expected: FAIL
-
[x/x;»=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=»;bonus=x (Request/Response)]
expected: FAIL
- [¼/x (Request/Response)]
- expected: FAIL
-
- [x/¼ (Request/Response)]
- expected: FAIL
-
[x/x;¼=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¼;bonus=x (Request/Response)]
expected: FAIL
- [½/x (Request/Response)]
- expected: FAIL
-
- [x/½ (Request/Response)]
- expected: FAIL
-
[x/x;½=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=½;bonus=x (Request/Response)]
expected: FAIL
- [¾/x (Request/Response)]
- expected: FAIL
-
- [x/¾ (Request/Response)]
- expected: FAIL
-
[x/x;¾=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¾;bonus=x (Request/Response)]
expected: FAIL
- [¿/x (Request/Response)]
- expected: FAIL
-
- [x/¿ (Request/Response)]
- expected: FAIL
-
[x/x;¿=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¿;bonus=x (Request/Response)]
expected: FAIL
- [À/x (Request/Response)]
+ [x/x;À=x;bonus=x (Request/Response)]
expected: FAIL
- [x/À (Request/Response)]
+ [x/x;x=À;bonus=x (Request/Response)]
expected: FAIL
- [x/x;À=x;bonus=x (Request/Response)]
+ [x/x;Á=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=À;bonus=x (Request/Response)]
+ [x/x;x=Á;bonus=x (Request/Response)]
expected: FAIL
- [Á/x (Request/Response)]
+ [x/x;Â=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Á (Request/Response)]
+ [x/x;x=Â;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Á=x;bonus=x (Request/Response)]
+ [x/x;Ã=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Á;bonus=x (Request/Response)]
+ [x/x;x=Ã;bonus=x (Request/Response)]
expected: FAIL
- [Â/x (Request/Response)]
+ [x/x;Ä=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Â (Request/Response)]
+ [x/x;x=Ä;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Â=x;bonus=x (Request/Response)]
+ [x/x;Å=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Â;bonus=x (Request/Response)]
+ [x/x;x=Å;bonus=x (Request/Response)]
expected: FAIL
- [Ã/x (Request/Response)]
+ [x/x;Æ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ã (Request/Response)]
+ [x/x;x=Æ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ã=x;bonus=x (Request/Response)]
+ [x/x;Ç=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ã;bonus=x (Request/Response)]
+ [x/x;x=Ç;bonus=x (Request/Response)]
expected: FAIL
- [Ä/x (Request/Response)]
+ [x/x;È=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ä (Request/Response)]
+ [x/x;x=È;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ä=x;bonus=x (Request/Response)]
+ [x/x;É=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ä;bonus=x (Request/Response)]
+ [x/x;x=É;bonus=x (Request/Response)]
expected: FAIL
- [Å/x (Request/Response)]
+ [x/x;Ê=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Å (Request/Response)]
+ [x/x;x=Ê;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Å=x;bonus=x (Request/Response)]
+ [x/x;Ë=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Å;bonus=x (Request/Response)]
+ [x/x;x=Ë;bonus=x (Request/Response)]
expected: FAIL
- [Æ/x (Request/Response)]
+ [x/x;Ì=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Æ (Request/Response)]
+ [x/x;x=Ì;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Æ=x;bonus=x (Request/Response)]
+ [x/x;Í=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Æ;bonus=x (Request/Response)]
+ [x/x;x=Í;bonus=x (Request/Response)]
expected: FAIL
- [Ç/x (Request/Response)]
+ [x/x;Î=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ç (Request/Response)]
+ [x/x;x=Î;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ç=x;bonus=x (Request/Response)]
+ [x/x;Ï=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ç;bonus=x (Request/Response)]
+ [x/x;x=Ï;bonus=x (Request/Response)]
expected: FAIL
- [È/x (Request/Response)]
+ [x/x;Ð=x;bonus=x (Request/Response)]
expected: FAIL
- [x/È (Request/Response)]
+ [x/x;x=Ð;bonus=x (Request/Response)]
expected: FAIL
- [x/x;È=x;bonus=x (Request/Response)]
+ [x/x;Ñ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=È;bonus=x (Request/Response)]
+ [x/x;x=Ñ;bonus=x (Request/Response)]
expected: FAIL
- [É/x (Request/Response)]
+ [x/x;Ò=x;bonus=x (Request/Response)]
expected: FAIL
- [x/É (Request/Response)]
+ [x/x;x=Ò;bonus=x (Request/Response)]
expected: FAIL
- [x/x;É=x;bonus=x (Request/Response)]
+ [x/x;Ó=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=É;bonus=x (Request/Response)]
+ [x/x;x=Ó;bonus=x (Request/Response)]
expected: FAIL
- [Ê/x (Request/Response)]
+ [x/x;Ô=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ê (Request/Response)]
+ [x/x;x=Ô;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ê=x;bonus=x (Request/Response)]
+ [x/x;Õ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ê;bonus=x (Request/Response)]
+ [x/x;x=Õ;bonus=x (Request/Response)]
expected: FAIL
- [Ë/x (Request/Response)]
+ [x/x;Ö=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ë (Request/Response)]
+ [x/x;x=Ö;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ë=x;bonus=x (Request/Response)]
+ [x/x;×=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ë;bonus=x (Request/Response)]
+ [x/x;x=×;bonus=x (Request/Response)]
expected: FAIL
- [Ì/x (Request/Response)]
+ [x/x;Ø=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ì (Request/Response)]
+ [x/x;x=Ø;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ì=x;bonus=x (Request/Response)]
+ [x/x;Ù=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ì;bonus=x (Request/Response)]
+ [x/x;x=Ù;bonus=x (Request/Response)]
expected: FAIL
- [Í/x (Request/Response)]
+ [x/x;Ú=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Í (Request/Response)]
+ [x/x;x=Ú;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Í=x;bonus=x (Request/Response)]
+ [x/x;Û=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Í;bonus=x (Request/Response)]
+ [x/x;x=Û;bonus=x (Request/Response)]
expected: FAIL
- [Î/x (Request/Response)]
+ [x/x;Ü=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Î (Request/Response)]
+ [x/x;x=Ü;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Î=x;bonus=x (Request/Response)]
+ [x/x;Ý=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Î;bonus=x (Request/Response)]
+ [x/x;x=Ý;bonus=x (Request/Response)]
expected: FAIL
- [Ï/x (Request/Response)]
+ [x/x;Þ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ï (Request/Response)]
+ [x/x;x=Þ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ï=x;bonus=x (Request/Response)]
+ [x/x;ß=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ï;bonus=x (Request/Response)]
+ [x/x;x=ß;bonus=x (Request/Response)]
expected: FAIL
- [Ð/x (Request/Response)]
+ [x/x;à=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ð (Request/Response)]
+ [x/x;x=à;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ð=x;bonus=x (Request/Response)]
+ [x/x;á=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ð;bonus=x (Request/Response)]
+ [x/x;x=á;bonus=x (Request/Response)]
expected: FAIL
- [Ñ/x (Request/Response)]
+ [x/x;â=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ñ (Request/Response)]
+ [x/x;x=â;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ñ=x;bonus=x (Request/Response)]
+ [x/x;ã=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ñ;bonus=x (Request/Response)]
+ [x/x;x=ã;bonus=x (Request/Response)]
expected: FAIL
- [Ò/x (Request/Response)]
+ [x/x;ä=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ò (Request/Response)]
+ [x/x;x=ä;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ò=x;bonus=x (Request/Response)]
+ [x/x;å=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ò;bonus=x (Request/Response)]
+ [x/x;x=å;bonus=x (Request/Response)]
expected: FAIL
- [Ó/x (Request/Response)]
+ [x/x;æ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ó (Request/Response)]
+ [x/x;x=æ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ó=x;bonus=x (Request/Response)]
+ [x/x;ç=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ó;bonus=x (Request/Response)]
+ [x/x;x=ç;bonus=x (Request/Response)]
expected: FAIL
- [Ô/x (Request/Response)]
+ [x/x;è=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ô (Request/Response)]
+ [x/x;x=è;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ô=x;bonus=x (Request/Response)]
+ [x/x;é=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ô;bonus=x (Request/Response)]
+ [x/x;x=é;bonus=x (Request/Response)]
expected: FAIL
- [Õ/x (Request/Response)]
+ [x/x;ê=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Õ (Request/Response)]
+ [x/x;x=ê;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Õ=x;bonus=x (Request/Response)]
+ [x/x;ë=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Õ;bonus=x (Request/Response)]
+ [x/x;x=ë;bonus=x (Request/Response)]
expected: FAIL
- [Ö/x (Request/Response)]
+ [x/x;ì=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ö (Request/Response)]
+ [x/x;x=ì;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ö=x;bonus=x (Request/Response)]
+ [x/x;í=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ö;bonus=x (Request/Response)]
+ [x/x;x=í;bonus=x (Request/Response)]
expected: FAIL
- [×/x (Request/Response)]
+ [x/x;î=x;bonus=x (Request/Response)]
expected: FAIL
- [x/× (Request/Response)]
+ [x/x;x=î;bonus=x (Request/Response)]
expected: FAIL
- [x/x;×=x;bonus=x (Request/Response)]
+ [x/x;ï=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=×;bonus=x (Request/Response)]
+ [x/x;x=ï;bonus=x (Request/Response)]
expected: FAIL
- [Ø/x (Request/Response)]
+ [x/x;ð=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ø (Request/Response)]
+ [x/x;x=ð;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ø=x;bonus=x (Request/Response)]
+ [x/x;ñ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ø;bonus=x (Request/Response)]
+ [x/x;x=ñ;bonus=x (Request/Response)]
expected: FAIL
- [Ù/x (Request/Response)]
+ [x/x;ò=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ù (Request/Response)]
+ [x/x;x=ò;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ù=x;bonus=x (Request/Response)]
+ [x/x;ó=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ù;bonus=x (Request/Response)]
+ [x/x;x=ó;bonus=x (Request/Response)]
expected: FAIL
- [Ú/x (Request/Response)]
+ [x/x;ô=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ú (Request/Response)]
+ [x/x;x=ô;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ú=x;bonus=x (Request/Response)]
+ [x/x;õ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ú;bonus=x (Request/Response)]
+ [x/x;x=õ;bonus=x (Request/Response)]
expected: FAIL
- [Û/x (Request/Response)]
+ [x/x;ö=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Û (Request/Response)]
+ [x/x;x=ö;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Û=x;bonus=x (Request/Response)]
+ [x/x;÷=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Û;bonus=x (Request/Response)]
+ [x/x;x=÷;bonus=x (Request/Response)]
expected: FAIL
- [Ü/x (Request/Response)]
+ [x/x;ø=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ü (Request/Response)]
+ [x/x;x=ø;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ü=x;bonus=x (Request/Response)]
+ [x/x;ù=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ü;bonus=x (Request/Response)]
+ [x/x;x=ù;bonus=x (Request/Response)]
expected: FAIL
- [Ý/x (Request/Response)]
+ [x/x;ú=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ý (Request/Response)]
+ [x/x;x=ú;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ý=x;bonus=x (Request/Response)]
+ [x/x;û=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ý;bonus=x (Request/Response)]
+ [x/x;x=û;bonus=x (Request/Response)]
expected: FAIL
- [Þ/x (Request/Response)]
+ [x/x;ü=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Þ (Request/Response)]
+ [x/x;x=ü;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Þ=x;bonus=x (Request/Response)]
+ [x/x;ý=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Þ;bonus=x (Request/Response)]
+ [x/x;x=ý;bonus=x (Request/Response)]
expected: FAIL
- [ß/x (Request/Response)]
+ [x/x;þ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/ß (Request/Response)]
+ [x/x;x=þ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;ß=x;bonus=x (Request/Response)]
+ [x/x;ÿ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ß;bonus=x (Request/Response)]
+ [x/x;x=ÿ;bonus=x (Request/Response)]
expected: FAIL
- [à/x (Request/Response)]
+ [x/x;x="€";bonus=x (Request/Response)]
expected: FAIL
- [x/à (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;à=x;bonus=x (Request/Response)]
+ [x/x;x="‚";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=à;bonus=x (Request/Response)]
+ [x/x;x="ƒ";bonus=x (Request/Response)]
expected: FAIL
- [á/x (Request/Response)]
+ [x/x;x="„";bonus=x (Request/Response)]
expected: FAIL
- [x/á (Request/Response)]
+ [x/x;x="…";bonus=x (Request/Response)]
expected: FAIL
- [x/x;á=x;bonus=x (Request/Response)]
+ [x/x;x="†";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=á;bonus=x (Request/Response)]
+ [x/x;x="‡";bonus=x (Request/Response)]
expected: FAIL
- [â/x (Request/Response)]
+ [x/x;x="ˆ";bonus=x (Request/Response)]
expected: FAIL
- [x/â (Request/Response)]
+ [x/x;x="‰";bonus=x (Request/Response)]
expected: FAIL
- [x/x;â=x;bonus=x (Request/Response)]
+ [x/x;x="Š";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=â;bonus=x (Request/Response)]
+ [x/x;x="‹";bonus=x (Request/Response)]
expected: FAIL
- [ã/x (Request/Response)]
+ [x/x;x="Œ";bonus=x (Request/Response)]
expected: FAIL
- [x/ã (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ã=x;bonus=x (Request/Response)]
+ [x/x;x="Ž";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ã;bonus=x (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [ä/x (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/ä (Request/Response)]
+ [x/x;x="‘";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ä=x;bonus=x (Request/Response)]
+ [x/x;x="’";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ä;bonus=x (Request/Response)]
+ [x/x;x="“";bonus=x (Request/Response)]
expected: FAIL
- [å/x (Request/Response)]
+ [x/x;x="”";bonus=x (Request/Response)]
expected: FAIL
- [x/å (Request/Response)]
+ [x/x;x="•";bonus=x (Request/Response)]
expected: FAIL
- [x/x;å=x;bonus=x (Request/Response)]
+ [x/x;x="–";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=å;bonus=x (Request/Response)]
+ [x/x;x="—";bonus=x (Request/Response)]
expected: FAIL
- [æ/x (Request/Response)]
+ [x/x;x="˜";bonus=x (Request/Response)]
expected: FAIL
- [x/æ (Request/Response)]
+ [x/x;x="™";bonus=x (Request/Response)]
expected: FAIL
- [x/x;æ=x;bonus=x (Request/Response)]
+ [x/x;x="š";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=æ;bonus=x (Request/Response)]
+ [x/x;x="›";bonus=x (Request/Response)]
expected: FAIL
- [ç/x (Request/Response)]
+ [x/x;x="œ";bonus=x (Request/Response)]
expected: FAIL
- [x/ç (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ç=x;bonus=x (Request/Response)]
+ [x/x;x="ž";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ç;bonus=x (Request/Response)]
+ [x/x;x="Ÿ";bonus=x (Request/Response)]
expected: FAIL
- [è/x (Request/Response)]
+ [x/x;x=" ";bonus=x (Request/Response)]
expected: FAIL
- [x/è (Request/Response)]
+ [x/x;x="¡";bonus=x (Request/Response)]
expected: FAIL
- [x/x;è=x;bonus=x (Request/Response)]
+ [x/x;x="¢";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=è;bonus=x (Request/Response)]
+ [x/x;x="£";bonus=x (Request/Response)]
expected: FAIL
- [é/x (Request/Response)]
+ [x/x;x="¤";bonus=x (Request/Response)]
expected: FAIL
- [x/é (Request/Response)]
+ [x/x;x="¥";bonus=x (Request/Response)]
expected: FAIL
- [x/x;é=x;bonus=x (Request/Response)]
+ [x/x;x="¦";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=é;bonus=x (Request/Response)]
+ [x/x;x="§";bonus=x (Request/Response)]
expected: FAIL
- [ê/x (Request/Response)]
+ [x/x;x="¨";bonus=x (Request/Response)]
expected: FAIL
- [x/ê (Request/Response)]
+ [x/x;x="©";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ê=x;bonus=x (Request/Response)]
+ [x/x;x="ª";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ê;bonus=x (Request/Response)]
+ [x/x;x="«";bonus=x (Request/Response)]
expected: FAIL
- [ë/x (Request/Response)]
+ [x/x;x="¬";bonus=x (Request/Response)]
expected: FAIL
- [x/ë (Request/Response)]
+ [x/x;x="­";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ë=x;bonus=x (Request/Response)]
+ [x/x;x="®";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ë;bonus=x (Request/Response)]
+ [x/x;x="¯";bonus=x (Request/Response)]
expected: FAIL
- [ì/x (Request/Response)]
+ [x/x;x="°";bonus=x (Request/Response)]
expected: FAIL
- [x/ì (Request/Response)]
+ [x/x;x="±";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ì=x;bonus=x (Request/Response)]
+ [x/x;x="²";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ì;bonus=x (Request/Response)]
+ [x/x;x="³";bonus=x (Request/Response)]
expected: FAIL
- [í/x (Request/Response)]
+ [x/x;x="´";bonus=x (Request/Response)]
expected: FAIL
- [x/í (Request/Response)]
+ [x/x;x="µ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;í=x;bonus=x (Request/Response)]
+ [x/x;x="¶";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=í;bonus=x (Request/Response)]
+ [x/x;x="·";bonus=x (Request/Response)]
expected: FAIL
- [î/x (Request/Response)]
+ [x/x;x="¸";bonus=x (Request/Response)]
expected: FAIL
- [x/î (Request/Response)]
+ [x/x;x="¹";bonus=x (Request/Response)]
expected: FAIL
- [x/x;î=x;bonus=x (Request/Response)]
+ [x/x;x="º";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=î;bonus=x (Request/Response)]
+ [x/x;x="»";bonus=x (Request/Response)]
expected: FAIL
- [ï/x (Request/Response)]
+ [x/x;x="¼";bonus=x (Request/Response)]
expected: FAIL
- [x/ï (Request/Response)]
+ [x/x;x="½";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ï=x;bonus=x (Request/Response)]
+ [x/x;x="¾";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ï;bonus=x (Request/Response)]
+ [x/x;x="¿";bonus=x (Request/Response)]
expected: FAIL
- [ð/x (Request/Response)]
+ [x/x;x="À";bonus=x (Request/Response)]
expected: FAIL
- [x/ð (Request/Response)]
+ [x/x;x="Á";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ð=x;bonus=x (Request/Response)]
+ [x/x;x="Â";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ð;bonus=x (Request/Response)]
+ [x/x;x="Ã";bonus=x (Request/Response)]
expected: FAIL
- [ñ/x (Request/Response)]
+ [x/x;x="Ä";bonus=x (Request/Response)]
expected: FAIL
- [x/ñ (Request/Response)]
+ [x/x;x="Å";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ñ=x;bonus=x (Request/Response)]
+ [x/x;x="Æ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ñ;bonus=x (Request/Response)]
+ [x/x;x="Ç";bonus=x (Request/Response)]
expected: FAIL
- [ò/x (Request/Response)]
+ [x/x;x="È";bonus=x (Request/Response)]
expected: FAIL
- [x/ò (Request/Response)]
+ [x/x;x="É";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ò=x;bonus=x (Request/Response)]
+ [x/x;x="Ê";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ò;bonus=x (Request/Response)]
+ [x/x;x="Ë";bonus=x (Request/Response)]
expected: FAIL
- [ó/x (Request/Response)]
+ [x/x;x="Ì";bonus=x (Request/Response)]
expected: FAIL
- [x/ó (Request/Response)]
+ [x/x;x="Í";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ó=x;bonus=x (Request/Response)]
+ [x/x;x="Î";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ó;bonus=x (Request/Response)]
+ [x/x;x="Ï";bonus=x (Request/Response)]
expected: FAIL
- [ô/x (Request/Response)]
+ [x/x;x="Ð";bonus=x (Request/Response)]
expected: FAIL
- [x/ô (Request/Response)]
+ [x/x;x="Ñ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ô=x;bonus=x (Request/Response)]
+ [x/x;x="Ò";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ô;bonus=x (Request/Response)]
+ [x/x;x="Ó";bonus=x (Request/Response)]
expected: FAIL
- [õ/x (Request/Response)]
+ [x/x;x="Ô";bonus=x (Request/Response)]
expected: FAIL
- [x/õ (Request/Response)]
+ [x/x;x="Õ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;õ=x;bonus=x (Request/Response)]
+ [x/x;x="Ö";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=õ;bonus=x (Request/Response)]
+ [x/x;x="×";bonus=x (Request/Response)]
expected: FAIL
- [ö/x (Request/Response)]
+ [x/x;x="Ø";bonus=x (Request/Response)]
expected: FAIL
- [x/ö (Request/Response)]
+ [x/x;x="Ù";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ö=x;bonus=x (Request/Response)]
+ [x/x;x="Ú";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ö;bonus=x (Request/Response)]
+ [x/x;x="Û";bonus=x (Request/Response)]
expected: FAIL
- [÷/x (Request/Response)]
+ [x/x;x="Ü";bonus=x (Request/Response)]
expected: FAIL
- [x/÷ (Request/Response)]
+ [x/x;x="Ý";bonus=x (Request/Response)]
expected: FAIL
- [x/x;÷=x;bonus=x (Request/Response)]
+ [x/x;x="Þ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=÷;bonus=x (Request/Response)]
+ [x/x;x="ß";bonus=x (Request/Response)]
expected: FAIL
- [ø/x (Request/Response)]
+ [x/x;x="à";bonus=x (Request/Response)]
expected: FAIL
- [x/ø (Request/Response)]
+ [x/x;x="á";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ø=x;bonus=x (Request/Response)]
+ [x/x;x="â";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ø;bonus=x (Request/Response)]
+ [x/x;x="ã";bonus=x (Request/Response)]
expected: FAIL
- [ù/x (Request/Response)]
+ [x/x;x="ä";bonus=x (Request/Response)]
expected: FAIL
- [x/ù (Request/Response)]
+ [x/x;x="å";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ù=x;bonus=x (Request/Response)]
+ [x/x;x="æ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ù;bonus=x (Request/Response)]
+ [x/x;x="ç";bonus=x (Request/Response)]
expected: FAIL
- [ú/x (Request/Response)]
+ [x/x;x="è";bonus=x (Request/Response)]
expected: FAIL
- [x/ú (Request/Response)]
+ [x/x;x="é";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ú=x;bonus=x (Request/Response)]
+ [x/x;x="ê";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ú;bonus=x (Request/Response)]
+ [x/x;x="ë";bonus=x (Request/Response)]
expected: FAIL
- [û/x (Request/Response)]
+ [x/x;x="ì";bonus=x (Request/Response)]
expected: FAIL
- [x/û (Request/Response)]
+ [x/x;x="í";bonus=x (Request/Response)]
expected: FAIL
- [x/x;û=x;bonus=x (Request/Response)]
+ [x/x;x="î";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=û;bonus=x (Request/Response)]
+ [x/x;x="ï";bonus=x (Request/Response)]
expected: FAIL
- [ü/x (Request/Response)]
+ [x/x;x="ð";bonus=x (Request/Response)]
expected: FAIL
- [x/ü (Request/Response)]
+ [x/x;x="ñ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ü=x;bonus=x (Request/Response)]
+ [x/x;x="ò";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ü;bonus=x (Request/Response)]
+ [x/x;x="ó";bonus=x (Request/Response)]
expected: FAIL
- [ý/x (Request/Response)]
+ [x/x;x="ô";bonus=x (Request/Response)]
expected: FAIL
- [x/ý (Request/Response)]
+ [x/x;x="õ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ý=x;bonus=x (Request/Response)]
+ [x/x;x="ö";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ý;bonus=x (Request/Response)]
+ [x/x;x="÷";bonus=x (Request/Response)]
expected: FAIL
- [þ/x (Request/Response)]
+ [x/x;x="ø";bonus=x (Request/Response)]
expected: FAIL
- [x/þ (Request/Response)]
+ [x/x;x="ù";bonus=x (Request/Response)]
expected: FAIL
- [x/x;þ=x;bonus=x (Request/Response)]
+ [x/x;x="ú";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=þ;bonus=x (Request/Response)]
+ [x/x;x="û";bonus=x (Request/Response)]
expected: FAIL
- [ÿ/x (Request/Response)]
+ [x/x;x="ü";bonus=x (Request/Response)]
expected: FAIL
- [x/ÿ (Request/Response)]
+ [x/x;x="ý";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ÿ=x;bonus=x (Request/Response)]
+ [x/x;x="þ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ÿ;bonus=x (Request/Response)]
+ [x/x;x="ÿ";bonus=x (Request/Response)]
expected: FAIL
@@ -8393,18 +7820,6 @@
[text/html;test=ÿ;charset=gbk (Request/Response)]
expected: FAIL
- [\x0bx/x (Request/Response)]
- expected: FAIL
-
- [\x0cx/x (Request/Response)]
- expected: FAIL
-
- [x/x\x0b (Request/Response)]
- expected: FAIL
-
- [x/x\x0c (Request/Response)]
- expected: FAIL
-
[/ (Request/Response)]
expected: FAIL
@@ -8423,9 +7838,6 @@
[(/) (Request/Response)]
expected: FAIL
- [ÿ/ÿ (Request/Response)]
- expected: FAIL
-
[text/html(;doesnot=matter (Request/Response)]
expected: FAIL
@@ -8441,12 +7853,6 @@
["text/html" (Request/Response)]
expected: FAIL
- [\x01/x (Request/Response)]
- expected: FAIL
-
- [x/\x01 (Request/Response)]
- expected: FAIL
-
[x/x;\x01=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8456,12 +7862,6 @@
[x/x;x="\x01";bonus=x (Request/Response)]
expected: FAIL
- [\x02/x (Request/Response)]
- expected: FAIL
-
- [x/\x02 (Request/Response)]
- expected: FAIL
-
[x/x;\x02=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8471,12 +7871,6 @@
[x/x;x="\x02";bonus=x (Request/Response)]
expected: FAIL
- [\x03/x (Request/Response)]
- expected: FAIL
-
- [x/\x03 (Request/Response)]
- expected: FAIL
-
[x/x;\x03=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8486,12 +7880,6 @@
[x/x;x="\x03";bonus=x (Request/Response)]
expected: FAIL
- [\x04/x (Request/Response)]
- expected: FAIL
-
- [x/\x04 (Request/Response)]
- expected: FAIL
-
[x/x;\x04=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8501,12 +7889,6 @@
[x/x;x="\x04";bonus=x (Request/Response)]
expected: FAIL
- [\x05/x (Request/Response)]
- expected: FAIL
-
- [x/\x05 (Request/Response)]
- expected: FAIL
-
[x/x;\x05=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8516,12 +7898,6 @@
[x/x;x="\x05";bonus=x (Request/Response)]
expected: FAIL
- [\x06/x (Request/Response)]
- expected: FAIL
-
- [x/\x06 (Request/Response)]
- expected: FAIL
-
[x/x;\x06=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8531,12 +7907,6 @@
[x/x;x="\x06";bonus=x (Request/Response)]
expected: FAIL
- [\x07/x (Request/Response)]
- expected: FAIL
-
- [x/\x07 (Request/Response)]
- expected: FAIL
-
[x/x;\x07=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8546,12 +7916,6 @@
[x/x;x="\x07";bonus=x (Request/Response)]
expected: FAIL
- [\x08/x (Request/Response)]
- expected: FAIL
-
- [x/\x08 (Request/Response)]
- expected: FAIL
-
[x/x;\x08=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8564,12 +7928,6 @@
[x/x;\t=x;bonus=x (Request/Response)]
expected: FAIL
- [\x0b/x (Request/Response)]
- expected: FAIL
-
- [x/\x0b (Request/Response)]
- expected: FAIL
-
[x/x;\x0b=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8579,12 +7937,6 @@
[x/x;x="\x0b";bonus=x (Request/Response)]
expected: FAIL
- [\x0c/x (Request/Response)]
- expected: FAIL
-
- [x/\x0c (Request/Response)]
- expected: FAIL
-
[x/x;\x0c=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8594,12 +7946,6 @@
[x/x;x="\x0c";bonus=x (Request/Response)]
expected: FAIL
- [\x0e/x (Request/Response)]
- expected: FAIL
-
- [x/\x0e (Request/Response)]
- expected: FAIL
-
[x/x;\x0e=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8609,12 +7955,6 @@
[x/x;x="\x0e";bonus=x (Request/Response)]
expected: FAIL
- [\x0f/x (Request/Response)]
- expected: FAIL
-
- [x/\x0f (Request/Response)]
- expected: FAIL
-
[x/x;\x0f=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8624,12 +7964,6 @@
[x/x;x="\x0f";bonus=x (Request/Response)]
expected: FAIL
- [\x10/x (Request/Response)]
- expected: FAIL
-
- [x/\x10 (Request/Response)]
- expected: FAIL
-
[x/x;\x10=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8639,12 +7973,6 @@
[x/x;x="\x10";bonus=x (Request/Response)]
expected: FAIL
- [\x11/x (Request/Response)]
- expected: FAIL
-
- [x/\x11 (Request/Response)]
- expected: FAIL
-
[x/x;\x11=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8654,12 +7982,6 @@
[x/x;x="\x11";bonus=x (Request/Response)]
expected: FAIL
- [\x12/x (Request/Response)]
- expected: FAIL
-
- [x/\x12 (Request/Response)]
- expected: FAIL
-
[x/x;\x12=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8669,12 +7991,6 @@
[x/x;x="\x12";bonus=x (Request/Response)]
expected: FAIL
- [\x13/x (Request/Response)]
- expected: FAIL
-
- [x/\x13 (Request/Response)]
- expected: FAIL
-
[x/x;\x13=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8684,12 +8000,6 @@
[x/x;x="\x13";bonus=x (Request/Response)]
expected: FAIL
- [\x14/x (Request/Response)]
- expected: FAIL
-
- [x/\x14 (Request/Response)]
- expected: FAIL
-
[x/x;\x14=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8699,12 +8009,6 @@
[x/x;x="\x14";bonus=x (Request/Response)]
expected: FAIL
- [\x15/x (Request/Response)]
- expected: FAIL
-
- [x/\x15 (Request/Response)]
- expected: FAIL
-
[x/x;\x15=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8714,12 +8018,6 @@
[x/x;x="\x15";bonus=x (Request/Response)]
expected: FAIL
- [\x16/x (Request/Response)]
- expected: FAIL
-
- [x/\x16 (Request/Response)]
- expected: FAIL
-
[x/x;\x16=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8729,12 +8027,6 @@
[x/x;x="\x16";bonus=x (Request/Response)]
expected: FAIL
- [\x17/x (Request/Response)]
- expected: FAIL
-
- [x/\x17 (Request/Response)]
- expected: FAIL
-
[x/x;\x17=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8744,12 +8036,6 @@
[x/x;x="\x17";bonus=x (Request/Response)]
expected: FAIL
- [\x18/x (Request/Response)]
- expected: FAIL
-
- [x/\x18 (Request/Response)]
- expected: FAIL
-
[x/x;\x18=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8759,12 +8045,6 @@
[x/x;x="\x18";bonus=x (Request/Response)]
expected: FAIL
- [\x19/x (Request/Response)]
- expected: FAIL
-
- [x/\x19 (Request/Response)]
- expected: FAIL
-
[x/x;\x19=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8774,12 +8054,6 @@
[x/x;x="\x19";bonus=x (Request/Response)]
expected: FAIL
- [\x1a/x (Request/Response)]
- expected: FAIL
-
- [x/\x1a (Request/Response)]
- expected: FAIL
-
[x/x;\x1a=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8789,12 +8063,6 @@
[x/x;x="\x1a";bonus=x (Request/Response)]
expected: FAIL
- [\x1b/x (Request/Response)]
- expected: FAIL
-
- [x/\x1b (Request/Response)]
- expected: FAIL
-
[x/x;\x1b=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8804,12 +8072,6 @@
[x/x;x="\x1b";bonus=x (Request/Response)]
expected: FAIL
- [\x1c/x (Request/Response)]
- expected: FAIL
-
- [x/\x1c (Request/Response)]
- expected: FAIL
-
[x/x;\x1c=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8819,12 +8081,6 @@
[x/x;x="\x1c";bonus=x (Request/Response)]
expected: FAIL
- [\x1d/x (Request/Response)]
- expected: FAIL
-
- [x/\x1d (Request/Response)]
- expected: FAIL
-
[x/x;\x1d=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8834,12 +8090,6 @@
[x/x;x="\x1d";bonus=x (Request/Response)]
expected: FAIL
- [\x1e/x (Request/Response)]
- expected: FAIL
-
- [x/\x1e (Request/Response)]
- expected: FAIL
-
[x/x;\x1e=x;bonus=x (Request/Response)]
expected: FAIL
@@ -8849,12 +8099,6 @@
[x/x;x="\x1e";bonus=x (Request/Response)]
expected: FAIL
- [\x1f/x (Request/Response)]
- expected: FAIL
-
- [x/\x1f (Request/Response)]
- expected: FAIL
-
[x/x;\x1f=x;bonus=x (Request/Response)]
expected: FAIL
@@ -9038,12 +8282,6 @@
[x/x;x=};bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
@@ -9053,1538 +8291,1154 @@
[x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [€/x (Request/Response)]
- expected: FAIL
-
- [x/€ (Request/Response)]
- expected: FAIL
-
[x/x;€=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=€;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [‚/x (Request/Response)]
- expected: FAIL
-
- [x/‚ (Request/Response)]
- expected: FAIL
-
[x/x;‚=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‚;bonus=x (Request/Response)]
expected: FAIL
- [ƒ/x (Request/Response)]
- expected: FAIL
-
- [x/ƒ (Request/Response)]
- expected: FAIL
-
[x/x;ƒ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ƒ;bonus=x (Request/Response)]
expected: FAIL
- [„/x (Request/Response)]
- expected: FAIL
-
- [x/„ (Request/Response)]
- expected: FAIL
-
[x/x;„=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=„;bonus=x (Request/Response)]
expected: FAIL
- […/x (Request/Response)]
- expected: FAIL
-
- [x/… (Request/Response)]
- expected: FAIL
-
[x/x;…=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=…;bonus=x (Request/Response)]
expected: FAIL
- [†/x (Request/Response)]
- expected: FAIL
-
- [x/† (Request/Response)]
- expected: FAIL
-
[x/x;†=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=†;bonus=x (Request/Response)]
expected: FAIL
- [‡/x (Request/Response)]
- expected: FAIL
-
- [x/‡ (Request/Response)]
- expected: FAIL
-
[x/x;‡=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‡;bonus=x (Request/Response)]
expected: FAIL
- [ˆ/x (Request/Response)]
- expected: FAIL
-
- [x/ˆ (Request/Response)]
- expected: FAIL
-
[x/x;ˆ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ˆ;bonus=x (Request/Response)]
expected: FAIL
- [‰/x (Request/Response)]
- expected: FAIL
-
- [x/‰ (Request/Response)]
- expected: FAIL
-
[x/x;‰=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‰;bonus=x (Request/Response)]
expected: FAIL
- [Š/x (Request/Response)]
- expected: FAIL
-
- [x/Š (Request/Response)]
- expected: FAIL
-
[x/x;Š=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Š;bonus=x (Request/Response)]
expected: FAIL
- [‹/x (Request/Response)]
- expected: FAIL
-
- [x/‹ (Request/Response)]
- expected: FAIL
-
[x/x;‹=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‹;bonus=x (Request/Response)]
expected: FAIL
- [Œ/x (Request/Response)]
- expected: FAIL
-
- [x/Œ (Request/Response)]
- expected: FAIL
-
[x/x;Œ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Œ;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [Ž/x (Request/Response)]
- expected: FAIL
-
- [x/Ž (Request/Response)]
- expected: FAIL
-
[x/x;Ž=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Ž;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [‘/x (Request/Response)]
- expected: FAIL
-
- [x/‘ (Request/Response)]
- expected: FAIL
-
[x/x;‘=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=‘;bonus=x (Request/Response)]
expected: FAIL
- [’/x (Request/Response)]
- expected: FAIL
-
- [x/’ (Request/Response)]
- expected: FAIL
-
[x/x;’=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=’;bonus=x (Request/Response)]
expected: FAIL
- [“/x (Request/Response)]
- expected: FAIL
-
- [x/“ (Request/Response)]
- expected: FAIL
-
[x/x;“=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=“;bonus=x (Request/Response)]
expected: FAIL
- [”/x (Request/Response)]
- expected: FAIL
-
- [x/” (Request/Response)]
- expected: FAIL
-
[x/x;”=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=”;bonus=x (Request/Response)]
expected: FAIL
- [•/x (Request/Response)]
- expected: FAIL
-
- [x/• (Request/Response)]
- expected: FAIL
-
[x/x;•=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=•;bonus=x (Request/Response)]
expected: FAIL
- [–/x (Request/Response)]
- expected: FAIL
-
- [x/– (Request/Response)]
- expected: FAIL
-
[x/x;–=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=–;bonus=x (Request/Response)]
expected: FAIL
- [—/x (Request/Response)]
- expected: FAIL
-
- [x/— (Request/Response)]
- expected: FAIL
-
[x/x;—=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=—;bonus=x (Request/Response)]
expected: FAIL
- [˜/x (Request/Response)]
- expected: FAIL
-
- [x/˜ (Request/Response)]
- expected: FAIL
-
[x/x;˜=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=˜;bonus=x (Request/Response)]
expected: FAIL
- [™/x (Request/Response)]
- expected: FAIL
-
- [x/™ (Request/Response)]
- expected: FAIL
-
[x/x;™=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=™;bonus=x (Request/Response)]
expected: FAIL
- [š/x (Request/Response)]
- expected: FAIL
-
- [x/š (Request/Response)]
- expected: FAIL
-
[x/x;š=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=š;bonus=x (Request/Response)]
expected: FAIL
- [›/x (Request/Response)]
- expected: FAIL
-
- [x/› (Request/Response)]
- expected: FAIL
-
[x/x;›=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=›;bonus=x (Request/Response)]
expected: FAIL
- [œ/x (Request/Response)]
- expected: FAIL
-
- [x/œ (Request/Response)]
- expected: FAIL
-
[x/x;œ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=œ;bonus=x (Request/Response)]
expected: FAIL
- [/x (Request/Response)]
- expected: FAIL
-
- [x/ (Request/Response)]
- expected: FAIL
-
[x/x;=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=;bonus=x (Request/Response)]
expected: FAIL
- [ž/x (Request/Response)]
- expected: FAIL
-
- [x/ž (Request/Response)]
- expected: FAIL
-
[x/x;ž=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ž;bonus=x (Request/Response)]
expected: FAIL
- [Ÿ/x (Request/Response)]
- expected: FAIL
-
- [x/Ÿ (Request/Response)]
- expected: FAIL
-
[x/x;Ÿ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=Ÿ;bonus=x (Request/Response)]
expected: FAIL
- [ /x (Request/Response)]
- expected: FAIL
-
- [x/  (Request/Response)]
- expected: FAIL
-
[x/x; =x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x= ;bonus=x (Request/Response)]
expected: FAIL
- [¡/x (Request/Response)]
- expected: FAIL
-
- [x/¡ (Request/Response)]
- expected: FAIL
-
[x/x;¡=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¡;bonus=x (Request/Response)]
expected: FAIL
- [¢/x (Request/Response)]
- expected: FAIL
-
- [x/¢ (Request/Response)]
- expected: FAIL
-
[x/x;¢=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¢;bonus=x (Request/Response)]
expected: FAIL
- [£/x (Request/Response)]
- expected: FAIL
-
- [x/£ (Request/Response)]
- expected: FAIL
-
[x/x;£=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=£;bonus=x (Request/Response)]
expected: FAIL
- [¤/x (Request/Response)]
- expected: FAIL
-
- [x/¤ (Request/Response)]
- expected: FAIL
-
[x/x;¤=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¤;bonus=x (Request/Response)]
expected: FAIL
- [¥/x (Request/Response)]
- expected: FAIL
-
- [x/¥ (Request/Response)]
- expected: FAIL
-
[x/x;¥=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¥;bonus=x (Request/Response)]
expected: FAIL
- [¦/x (Request/Response)]
- expected: FAIL
-
- [x/¦ (Request/Response)]
- expected: FAIL
-
[x/x;¦=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¦;bonus=x (Request/Response)]
expected: FAIL
- [§/x (Request/Response)]
- expected: FAIL
-
- [x/§ (Request/Response)]
- expected: FAIL
-
[x/x;§=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=§;bonus=x (Request/Response)]
expected: FAIL
- [¨/x (Request/Response)]
- expected: FAIL
-
- [x/¨ (Request/Response)]
- expected: FAIL
-
[x/x;¨=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¨;bonus=x (Request/Response)]
expected: FAIL
- [©/x (Request/Response)]
- expected: FAIL
-
- [x/© (Request/Response)]
- expected: FAIL
-
[x/x;©=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=©;bonus=x (Request/Response)]
expected: FAIL
- [ª/x (Request/Response)]
- expected: FAIL
-
- [x/ª (Request/Response)]
- expected: FAIL
-
[x/x;ª=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=ª;bonus=x (Request/Response)]
expected: FAIL
- [«/x (Request/Response)]
- expected: FAIL
-
- [x/« (Request/Response)]
- expected: FAIL
-
[x/x;«=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=«;bonus=x (Request/Response)]
expected: FAIL
- [¬/x (Request/Response)]
- expected: FAIL
-
- [x/¬ (Request/Response)]
- expected: FAIL
-
[x/x;¬=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¬;bonus=x (Request/Response)]
expected: FAIL
- [­/x (Request/Response)]
- expected: FAIL
-
- [x/­ (Request/Response)]
- expected: FAIL
-
[x/x;­=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=­;bonus=x (Request/Response)]
expected: FAIL
- [®/x (Request/Response)]
- expected: FAIL
-
- [x/® (Request/Response)]
- expected: FAIL
-
[x/x;®=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=®;bonus=x (Request/Response)]
expected: FAIL
- [¯/x (Request/Response)]
- expected: FAIL
-
- [x/¯ (Request/Response)]
- expected: FAIL
-
[x/x;¯=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¯;bonus=x (Request/Response)]
expected: FAIL
- [°/x (Request/Response)]
- expected: FAIL
-
- [x/° (Request/Response)]
- expected: FAIL
-
[x/x;°=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=°;bonus=x (Request/Response)]
expected: FAIL
- [±/x (Request/Response)]
- expected: FAIL
-
- [x/± (Request/Response)]
- expected: FAIL
-
[x/x;±=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=±;bonus=x (Request/Response)]
expected: FAIL
- [²/x (Request/Response)]
- expected: FAIL
-
- [x/² (Request/Response)]
- expected: FAIL
-
[x/x;²=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=²;bonus=x (Request/Response)]
expected: FAIL
- [³/x (Request/Response)]
- expected: FAIL
-
- [x/³ (Request/Response)]
- expected: FAIL
-
[x/x;³=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=³;bonus=x (Request/Response)]
expected: FAIL
- [´/x (Request/Response)]
- expected: FAIL
-
- [x/´ (Request/Response)]
- expected: FAIL
-
[x/x;´=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=´;bonus=x (Request/Response)]
expected: FAIL
- [µ/x (Request/Response)]
- expected: FAIL
-
- [x/µ (Request/Response)]
- expected: FAIL
-
[x/x;µ=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=µ;bonus=x (Request/Response)]
expected: FAIL
- [¶/x (Request/Response)]
- expected: FAIL
-
- [x/¶ (Request/Response)]
- expected: FAIL
-
[x/x;¶=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¶;bonus=x (Request/Response)]
expected: FAIL
- [·/x (Request/Response)]
- expected: FAIL
-
- [x/· (Request/Response)]
- expected: FAIL
-
[x/x;·=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=·;bonus=x (Request/Response)]
expected: FAIL
- [¸/x (Request/Response)]
- expected: FAIL
-
- [x/¸ (Request/Response)]
- expected: FAIL
-
[x/x;¸=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¸;bonus=x (Request/Response)]
expected: FAIL
- [¹/x (Request/Response)]
- expected: FAIL
-
- [x/¹ (Request/Response)]
- expected: FAIL
-
[x/x;¹=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¹;bonus=x (Request/Response)]
expected: FAIL
- [º/x (Request/Response)]
- expected: FAIL
-
- [x/º (Request/Response)]
- expected: FAIL
-
[x/x;º=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=º;bonus=x (Request/Response)]
expected: FAIL
- [»/x (Request/Response)]
- expected: FAIL
-
- [x/» (Request/Response)]
- expected: FAIL
-
[x/x;»=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=»;bonus=x (Request/Response)]
expected: FAIL
- [¼/x (Request/Response)]
- expected: FAIL
-
- [x/¼ (Request/Response)]
- expected: FAIL
-
[x/x;¼=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¼;bonus=x (Request/Response)]
expected: FAIL
- [½/x (Request/Response)]
- expected: FAIL
-
- [x/½ (Request/Response)]
- expected: FAIL
-
[x/x;½=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=½;bonus=x (Request/Response)]
expected: FAIL
- [¾/x (Request/Response)]
- expected: FAIL
-
- [x/¾ (Request/Response)]
- expected: FAIL
-
[x/x;¾=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¾;bonus=x (Request/Response)]
expected: FAIL
- [¿/x (Request/Response)]
- expected: FAIL
-
- [x/¿ (Request/Response)]
- expected: FAIL
-
[x/x;¿=x;bonus=x (Request/Response)]
expected: FAIL
[x/x;x=¿;bonus=x (Request/Response)]
expected: FAIL
- [À/x (Request/Response)]
+ [x/x;À=x;bonus=x (Request/Response)]
expected: FAIL
- [x/À (Request/Response)]
+ [x/x;x=À;bonus=x (Request/Response)]
expected: FAIL
- [x/x;À=x;bonus=x (Request/Response)]
+ [x/x;Á=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=À;bonus=x (Request/Response)]
+ [x/x;x=Á;bonus=x (Request/Response)]
expected: FAIL
- [Á/x (Request/Response)]
+ [x/x;Â=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Á (Request/Response)]
+ [x/x;x=Â;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Á=x;bonus=x (Request/Response)]
+ [x/x;Ã=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Á;bonus=x (Request/Response)]
+ [x/x;x=Ã;bonus=x (Request/Response)]
expected: FAIL
- [Â/x (Request/Response)]
+ [x/x;Ä=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Â (Request/Response)]
+ [x/x;x=Ä;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Â=x;bonus=x (Request/Response)]
+ [x/x;Å=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Â;bonus=x (Request/Response)]
+ [x/x;x=Å;bonus=x (Request/Response)]
expected: FAIL
- [Ã/x (Request/Response)]
+ [x/x;Æ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ã (Request/Response)]
+ [x/x;x=Æ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ã=x;bonus=x (Request/Response)]
+ [x/x;Ç=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ã;bonus=x (Request/Response)]
+ [x/x;x=Ç;bonus=x (Request/Response)]
expected: FAIL
- [Ä/x (Request/Response)]
+ [x/x;È=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ä (Request/Response)]
+ [x/x;x=È;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ä=x;bonus=x (Request/Response)]
+ [x/x;É=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ä;bonus=x (Request/Response)]
+ [x/x;x=É;bonus=x (Request/Response)]
expected: FAIL
- [Å/x (Request/Response)]
+ [x/x;Ê=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Å (Request/Response)]
+ [x/x;x=Ê;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Å=x;bonus=x (Request/Response)]
+ [x/x;Ë=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Å;bonus=x (Request/Response)]
+ [x/x;x=Ë;bonus=x (Request/Response)]
expected: FAIL
- [Æ/x (Request/Response)]
+ [x/x;Ì=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Æ (Request/Response)]
+ [x/x;x=Ì;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Æ=x;bonus=x (Request/Response)]
+ [x/x;Í=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Æ;bonus=x (Request/Response)]
+ [x/x;x=Í;bonus=x (Request/Response)]
expected: FAIL
- [Ç/x (Request/Response)]
+ [x/x;Î=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ç (Request/Response)]
+ [x/x;x=Î;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ç=x;bonus=x (Request/Response)]
+ [x/x;Ï=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ç;bonus=x (Request/Response)]
+ [x/x;x=Ï;bonus=x (Request/Response)]
expected: FAIL
- [È/x (Request/Response)]
+ [x/x;Ð=x;bonus=x (Request/Response)]
expected: FAIL
- [x/È (Request/Response)]
+ [x/x;x=Ð;bonus=x (Request/Response)]
expected: FAIL
- [x/x;È=x;bonus=x (Request/Response)]
+ [x/x;Ñ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=È;bonus=x (Request/Response)]
+ [x/x;x=Ñ;bonus=x (Request/Response)]
expected: FAIL
- [É/x (Request/Response)]
+ [x/x;Ò=x;bonus=x (Request/Response)]
expected: FAIL
- [x/É (Request/Response)]
+ [x/x;x=Ò;bonus=x (Request/Response)]
expected: FAIL
- [x/x;É=x;bonus=x (Request/Response)]
+ [x/x;Ó=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=É;bonus=x (Request/Response)]
+ [x/x;x=Ó;bonus=x (Request/Response)]
expected: FAIL
- [Ê/x (Request/Response)]
+ [x/x;Ô=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ê (Request/Response)]
+ [x/x;x=Ô;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ê=x;bonus=x (Request/Response)]
+ [x/x;Õ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ê;bonus=x (Request/Response)]
+ [x/x;x=Õ;bonus=x (Request/Response)]
expected: FAIL
- [Ë/x (Request/Response)]
+ [x/x;Ö=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ë (Request/Response)]
+ [x/x;x=Ö;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ë=x;bonus=x (Request/Response)]
+ [x/x;×=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ë;bonus=x (Request/Response)]
+ [x/x;x=×;bonus=x (Request/Response)]
expected: FAIL
- [Ì/x (Request/Response)]
+ [x/x;Ø=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ì (Request/Response)]
+ [x/x;x=Ø;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ì=x;bonus=x (Request/Response)]
+ [x/x;Ù=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ì;bonus=x (Request/Response)]
+ [x/x;x=Ù;bonus=x (Request/Response)]
expected: FAIL
- [Í/x (Request/Response)]
+ [x/x;Ú=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Í (Request/Response)]
+ [x/x;x=Ú;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Í=x;bonus=x (Request/Response)]
+ [x/x;Û=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Í;bonus=x (Request/Response)]
+ [x/x;x=Û;bonus=x (Request/Response)]
expected: FAIL
- [Î/x (Request/Response)]
+ [x/x;Ü=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Î (Request/Response)]
+ [x/x;x=Ü;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Î=x;bonus=x (Request/Response)]
+ [x/x;Ý=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Î;bonus=x (Request/Response)]
+ [x/x;x=Ý;bonus=x (Request/Response)]
expected: FAIL
- [Ï/x (Request/Response)]
+ [x/x;Þ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ï (Request/Response)]
+ [x/x;x=Þ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ï=x;bonus=x (Request/Response)]
+ [x/x;ß=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ï;bonus=x (Request/Response)]
+ [x/x;x=ß;bonus=x (Request/Response)]
expected: FAIL
- [Ð/x (Request/Response)]
+ [x/x;à=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ð (Request/Response)]
+ [x/x;x=à;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ð=x;bonus=x (Request/Response)]
+ [x/x;á=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ð;bonus=x (Request/Response)]
+ [x/x;x=á;bonus=x (Request/Response)]
expected: FAIL
- [Ñ/x (Request/Response)]
+ [x/x;â=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ñ (Request/Response)]
+ [x/x;x=â;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ñ=x;bonus=x (Request/Response)]
+ [x/x;ã=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ñ;bonus=x (Request/Response)]
+ [x/x;x=ã;bonus=x (Request/Response)]
expected: FAIL
- [Ò/x (Request/Response)]
+ [x/x;ä=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ò (Request/Response)]
+ [x/x;x=ä;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ò=x;bonus=x (Request/Response)]
+ [x/x;å=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ò;bonus=x (Request/Response)]
+ [x/x;x=å;bonus=x (Request/Response)]
expected: FAIL
- [Ó/x (Request/Response)]
+ [x/x;æ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ó (Request/Response)]
+ [x/x;x=æ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ó=x;bonus=x (Request/Response)]
+ [x/x;ç=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ó;bonus=x (Request/Response)]
+ [x/x;x=ç;bonus=x (Request/Response)]
expected: FAIL
- [Ô/x (Request/Response)]
+ [x/x;è=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ô (Request/Response)]
+ [x/x;x=è;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ô=x;bonus=x (Request/Response)]
+ [x/x;é=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ô;bonus=x (Request/Response)]
+ [x/x;x=é;bonus=x (Request/Response)]
expected: FAIL
- [Õ/x (Request/Response)]
+ [x/x;ê=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Õ (Request/Response)]
+ [x/x;x=ê;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Õ=x;bonus=x (Request/Response)]
+ [x/x;ë=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Õ;bonus=x (Request/Response)]
+ [x/x;x=ë;bonus=x (Request/Response)]
expected: FAIL
- [Ö/x (Request/Response)]
+ [x/x;ì=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ö (Request/Response)]
+ [x/x;x=ì;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ö=x;bonus=x (Request/Response)]
+ [x/x;í=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ö;bonus=x (Request/Response)]
+ [x/x;x=í;bonus=x (Request/Response)]
expected: FAIL
- [×/x (Request/Response)]
+ [x/x;î=x;bonus=x (Request/Response)]
expected: FAIL
- [x/× (Request/Response)]
+ [x/x;x=î;bonus=x (Request/Response)]
expected: FAIL
- [x/x;×=x;bonus=x (Request/Response)]
+ [x/x;ï=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=×;bonus=x (Request/Response)]
+ [x/x;x=ï;bonus=x (Request/Response)]
expected: FAIL
- [Ø/x (Request/Response)]
+ [x/x;ð=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ø (Request/Response)]
+ [x/x;x=ð;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ø=x;bonus=x (Request/Response)]
+ [x/x;ñ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ø;bonus=x (Request/Response)]
+ [x/x;x=ñ;bonus=x (Request/Response)]
expected: FAIL
- [Ù/x (Request/Response)]
+ [x/x;ò=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ù (Request/Response)]
+ [x/x;x=ò;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ù=x;bonus=x (Request/Response)]
+ [x/x;ó=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ù;bonus=x (Request/Response)]
+ [x/x;x=ó;bonus=x (Request/Response)]
expected: FAIL
- [Ú/x (Request/Response)]
+ [x/x;ô=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ú (Request/Response)]
+ [x/x;x=ô;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ú=x;bonus=x (Request/Response)]
+ [x/x;õ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ú;bonus=x (Request/Response)]
+ [x/x;x=õ;bonus=x (Request/Response)]
expected: FAIL
- [Û/x (Request/Response)]
+ [x/x;ö=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Û (Request/Response)]
+ [x/x;x=ö;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Û=x;bonus=x (Request/Response)]
+ [x/x;÷=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Û;bonus=x (Request/Response)]
+ [x/x;x=÷;bonus=x (Request/Response)]
expected: FAIL
- [Ü/x (Request/Response)]
+ [x/x;ø=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ü (Request/Response)]
+ [x/x;x=ø;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ü=x;bonus=x (Request/Response)]
+ [x/x;ù=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ü;bonus=x (Request/Response)]
+ [x/x;x=ù;bonus=x (Request/Response)]
expected: FAIL
- [Ý/x (Request/Response)]
+ [x/x;ú=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Ý (Request/Response)]
+ [x/x;x=ú;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Ý=x;bonus=x (Request/Response)]
+ [x/x;û=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Ý;bonus=x (Request/Response)]
+ [x/x;x=û;bonus=x (Request/Response)]
expected: FAIL
- [Þ/x (Request/Response)]
+ [x/x;ü=x;bonus=x (Request/Response)]
expected: FAIL
- [x/Þ (Request/Response)]
+ [x/x;x=ü;bonus=x (Request/Response)]
expected: FAIL
- [x/x;Þ=x;bonus=x (Request/Response)]
+ [x/x;ý=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=Þ;bonus=x (Request/Response)]
+ [x/x;x=ý;bonus=x (Request/Response)]
expected: FAIL
- [ß/x (Request/Response)]
+ [x/x;þ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/ß (Request/Response)]
+ [x/x;x=þ;bonus=x (Request/Response)]
expected: FAIL
- [x/x;ß=x;bonus=x (Request/Response)]
+ [x/x;ÿ=x;bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ß;bonus=x (Request/Response)]
+ [x/x;x=ÿ;bonus=x (Request/Response)]
expected: FAIL
- [à/x (Request/Response)]
+ [x/x;x="€";bonus=x (Request/Response)]
expected: FAIL
- [x/à (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;à=x;bonus=x (Request/Response)]
+ [x/x;x="‚";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=à;bonus=x (Request/Response)]
+ [x/x;x="ƒ";bonus=x (Request/Response)]
expected: FAIL
- [á/x (Request/Response)]
+ [x/x;x="„";bonus=x (Request/Response)]
expected: FAIL
- [x/á (Request/Response)]
+ [x/x;x="…";bonus=x (Request/Response)]
expected: FAIL
- [x/x;á=x;bonus=x (Request/Response)]
+ [x/x;x="†";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=á;bonus=x (Request/Response)]
+ [x/x;x="‡";bonus=x (Request/Response)]
expected: FAIL
- [â/x (Request/Response)]
+ [x/x;x="ˆ";bonus=x (Request/Response)]
expected: FAIL
- [x/â (Request/Response)]
+ [x/x;x="‰";bonus=x (Request/Response)]
expected: FAIL
- [x/x;â=x;bonus=x (Request/Response)]
+ [x/x;x="Š";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=â;bonus=x (Request/Response)]
+ [x/x;x="‹";bonus=x (Request/Response)]
expected: FAIL
- [ã/x (Request/Response)]
+ [x/x;x="Œ";bonus=x (Request/Response)]
expected: FAIL
- [x/ã (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ã=x;bonus=x (Request/Response)]
+ [x/x;x="Ž";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ã;bonus=x (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [ä/x (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/ä (Request/Response)]
+ [x/x;x="‘";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ä=x;bonus=x (Request/Response)]
+ [x/x;x="’";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ä;bonus=x (Request/Response)]
+ [x/x;x="“";bonus=x (Request/Response)]
expected: FAIL
- [å/x (Request/Response)]
+ [x/x;x="”";bonus=x (Request/Response)]
expected: FAIL
- [x/å (Request/Response)]
+ [x/x;x="•";bonus=x (Request/Response)]
expected: FAIL
- [x/x;å=x;bonus=x (Request/Response)]
+ [x/x;x="–";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=å;bonus=x (Request/Response)]
+ [x/x;x="—";bonus=x (Request/Response)]
expected: FAIL
- [æ/x (Request/Response)]
+ [x/x;x="˜";bonus=x (Request/Response)]
expected: FAIL
- [x/æ (Request/Response)]
+ [x/x;x="™";bonus=x (Request/Response)]
expected: FAIL
- [x/x;æ=x;bonus=x (Request/Response)]
+ [x/x;x="š";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=æ;bonus=x (Request/Response)]
+ [x/x;x="›";bonus=x (Request/Response)]
expected: FAIL
- [ç/x (Request/Response)]
+ [x/x;x="œ";bonus=x (Request/Response)]
expected: FAIL
- [x/ç (Request/Response)]
+ [x/x;x="";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ç=x;bonus=x (Request/Response)]
+ [x/x;x="ž";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ç;bonus=x (Request/Response)]
+ [x/x;x="Ÿ";bonus=x (Request/Response)]
expected: FAIL
- [è/x (Request/Response)]
+ [x/x;x=" ";bonus=x (Request/Response)]
expected: FAIL
- [x/è (Request/Response)]
+ [x/x;x="¡";bonus=x (Request/Response)]
expected: FAIL
- [x/x;è=x;bonus=x (Request/Response)]
+ [x/x;x="¢";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=è;bonus=x (Request/Response)]
+ [x/x;x="£";bonus=x (Request/Response)]
expected: FAIL
- [é/x (Request/Response)]
+ [x/x;x="¤";bonus=x (Request/Response)]
expected: FAIL
- [x/é (Request/Response)]
+ [x/x;x="¥";bonus=x (Request/Response)]
expected: FAIL
- [x/x;é=x;bonus=x (Request/Response)]
+ [x/x;x="¦";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=é;bonus=x (Request/Response)]
+ [x/x;x="§";bonus=x (Request/Response)]
expected: FAIL
- [ê/x (Request/Response)]
+ [x/x;x="¨";bonus=x (Request/Response)]
expected: FAIL
- [x/ê (Request/Response)]
+ [x/x;x="©";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ê=x;bonus=x (Request/Response)]
+ [x/x;x="ª";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ê;bonus=x (Request/Response)]
+ [x/x;x="«";bonus=x (Request/Response)]
expected: FAIL
- [ë/x (Request/Response)]
+ [x/x;x="¬";bonus=x (Request/Response)]
expected: FAIL
- [x/ë (Request/Response)]
+ [x/x;x="­";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ë=x;bonus=x (Request/Response)]
+ [x/x;x="®";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ë;bonus=x (Request/Response)]
+ [x/x;x="¯";bonus=x (Request/Response)]
expected: FAIL
- [ì/x (Request/Response)]
+ [x/x;x="°";bonus=x (Request/Response)]
expected: FAIL
- [x/ì (Request/Response)]
+ [x/x;x="±";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ì=x;bonus=x (Request/Response)]
+ [x/x;x="²";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ì;bonus=x (Request/Response)]
+ [x/x;x="³";bonus=x (Request/Response)]
expected: FAIL
- [í/x (Request/Response)]
+ [x/x;x="´";bonus=x (Request/Response)]
expected: FAIL
- [x/í (Request/Response)]
+ [x/x;x="µ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;í=x;bonus=x (Request/Response)]
+ [x/x;x="¶";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=í;bonus=x (Request/Response)]
+ [x/x;x="·";bonus=x (Request/Response)]
expected: FAIL
- [î/x (Request/Response)]
+ [x/x;x="¸";bonus=x (Request/Response)]
expected: FAIL
- [x/î (Request/Response)]
+ [x/x;x="¹";bonus=x (Request/Response)]
expected: FAIL
- [x/x;î=x;bonus=x (Request/Response)]
+ [x/x;x="º";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=î;bonus=x (Request/Response)]
+ [x/x;x="»";bonus=x (Request/Response)]
expected: FAIL
- [ï/x (Request/Response)]
+ [x/x;x="¼";bonus=x (Request/Response)]
expected: FAIL
- [x/ï (Request/Response)]
+ [x/x;x="½";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ï=x;bonus=x (Request/Response)]
+ [x/x;x="¾";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ï;bonus=x (Request/Response)]
+ [x/x;x="¿";bonus=x (Request/Response)]
expected: FAIL
- [ð/x (Request/Response)]
+ [x/x;x="À";bonus=x (Request/Response)]
expected: FAIL
- [x/ð (Request/Response)]
+ [x/x;x="Á";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ð=x;bonus=x (Request/Response)]
+ [x/x;x="Â";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ð;bonus=x (Request/Response)]
+ [x/x;x="Ã";bonus=x (Request/Response)]
expected: FAIL
- [ñ/x (Request/Response)]
+ [x/x;x="Ä";bonus=x (Request/Response)]
expected: FAIL
- [x/ñ (Request/Response)]
+ [x/x;x="Å";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ñ=x;bonus=x (Request/Response)]
+ [x/x;x="Æ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ñ;bonus=x (Request/Response)]
+ [x/x;x="Ç";bonus=x (Request/Response)]
expected: FAIL
- [ò/x (Request/Response)]
+ [x/x;x="È";bonus=x (Request/Response)]
expected: FAIL
- [x/ò (Request/Response)]
+ [x/x;x="É";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ò=x;bonus=x (Request/Response)]
+ [x/x;x="Ê";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ò;bonus=x (Request/Response)]
+ [x/x;x="Ë";bonus=x (Request/Response)]
expected: FAIL
- [ó/x (Request/Response)]
+ [x/x;x="Ì";bonus=x (Request/Response)]
expected: FAIL
- [x/ó (Request/Response)]
+ [x/x;x="Í";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ó=x;bonus=x (Request/Response)]
+ [x/x;x="Î";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ó;bonus=x (Request/Response)]
+ [x/x;x="Ï";bonus=x (Request/Response)]
expected: FAIL
- [ô/x (Request/Response)]
+ [x/x;x="Ð";bonus=x (Request/Response)]
expected: FAIL
- [x/ô (Request/Response)]
+ [x/x;x="Ñ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ô=x;bonus=x (Request/Response)]
+ [x/x;x="Ò";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ô;bonus=x (Request/Response)]
+ [x/x;x="Ó";bonus=x (Request/Response)]
expected: FAIL
- [õ/x (Request/Response)]
+ [x/x;x="Ô";bonus=x (Request/Response)]
expected: FAIL
- [x/õ (Request/Response)]
+ [x/x;x="Õ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;õ=x;bonus=x (Request/Response)]
+ [x/x;x="Ö";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=õ;bonus=x (Request/Response)]
+ [x/x;x="×";bonus=x (Request/Response)]
expected: FAIL
- [ö/x (Request/Response)]
+ [x/x;x="Ø";bonus=x (Request/Response)]
expected: FAIL
- [x/ö (Request/Response)]
+ [x/x;x="Ù";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ö=x;bonus=x (Request/Response)]
+ [x/x;x="Ú";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ö;bonus=x (Request/Response)]
+ [x/x;x="Û";bonus=x (Request/Response)]
expected: FAIL
- [÷/x (Request/Response)]
+ [x/x;x="Ü";bonus=x (Request/Response)]
expected: FAIL
- [x/÷ (Request/Response)]
+ [x/x;x="Ý";bonus=x (Request/Response)]
expected: FAIL
- [x/x;÷=x;bonus=x (Request/Response)]
+ [x/x;x="Þ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=÷;bonus=x (Request/Response)]
+ [x/x;x="ß";bonus=x (Request/Response)]
expected: FAIL
- [ø/x (Request/Response)]
+ [x/x;x="à";bonus=x (Request/Response)]
expected: FAIL
- [x/ø (Request/Response)]
+ [x/x;x="á";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ø=x;bonus=x (Request/Response)]
+ [x/x;x="â";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ø;bonus=x (Request/Response)]
+ [x/x;x="ã";bonus=x (Request/Response)]
expected: FAIL
- [ù/x (Request/Response)]
+ [x/x;x="ä";bonus=x (Request/Response)]
expected: FAIL
- [x/ù (Request/Response)]
+ [x/x;x="å";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ù=x;bonus=x (Request/Response)]
+ [x/x;x="æ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ù;bonus=x (Request/Response)]
+ [x/x;x="ç";bonus=x (Request/Response)]
expected: FAIL
- [ú/x (Request/Response)]
+ [x/x;x="è";bonus=x (Request/Response)]
expected: FAIL
- [x/ú (Request/Response)]
+ [x/x;x="é";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ú=x;bonus=x (Request/Response)]
+ [x/x;x="ê";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ú;bonus=x (Request/Response)]
+ [x/x;x="ë";bonus=x (Request/Response)]
expected: FAIL
- [û/x (Request/Response)]
+ [x/x;x="ì";bonus=x (Request/Response)]
expected: FAIL
- [x/û (Request/Response)]
+ [x/x;x="í";bonus=x (Request/Response)]
expected: FAIL
- [x/x;û=x;bonus=x (Request/Response)]
+ [x/x;x="î";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=û;bonus=x (Request/Response)]
+ [x/x;x="ï";bonus=x (Request/Response)]
expected: FAIL
- [ü/x (Request/Response)]
+ [x/x;x="ð";bonus=x (Request/Response)]
expected: FAIL
- [x/ü (Request/Response)]
+ [x/x;x="ñ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ü=x;bonus=x (Request/Response)]
+ [x/x;x="ò";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ü;bonus=x (Request/Response)]
+ [x/x;x="ó";bonus=x (Request/Response)]
expected: FAIL
- [ý/x (Request/Response)]
+ [x/x;x="ô";bonus=x (Request/Response)]
expected: FAIL
- [x/ý (Request/Response)]
+ [x/x;x="õ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ý=x;bonus=x (Request/Response)]
+ [x/x;x="ö";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ý;bonus=x (Request/Response)]
+ [x/x;x="÷";bonus=x (Request/Response)]
expected: FAIL
- [þ/x (Request/Response)]
+ [x/x;x="ø";bonus=x (Request/Response)]
expected: FAIL
- [x/þ (Request/Response)]
+ [x/x;x="ù";bonus=x (Request/Response)]
expected: FAIL
- [x/x;þ=x;bonus=x (Request/Response)]
+ [x/x;x="ú";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=þ;bonus=x (Request/Response)]
+ [x/x;x="û";bonus=x (Request/Response)]
expected: FAIL
- [ÿ/x (Request/Response)]
+ [x/x;x="ü";bonus=x (Request/Response)]
expected: FAIL
- [x/ÿ (Request/Response)]
+ [x/x;x="ý";bonus=x (Request/Response)]
expected: FAIL
- [x/x;ÿ=x;bonus=x (Request/Response)]
+ [x/x;x="þ";bonus=x (Request/Response)]
expected: FAIL
- [x/x;x=ÿ;bonus=x (Request/Response)]
+ [x/x;x="ÿ";bonus=x (Request/Response)]
expected: FAIL
diff --git a/testing/web-platform/meta/mixed-content/tentative/autoupgrades/mixed-content-cors.https.sub.html.ini b/testing/web-platform/meta/mixed-content/tentative/autoupgrades/mixed-content-cors.https.sub.html.ini
index 8748b3fc92..b7ef3f0663 100644
--- a/testing/web-platform/meta/mixed-content/tentative/autoupgrades/mixed-content-cors.https.sub.html.ini
+++ b/testing/web-platform/meta/mixed-content/tentative/autoupgrades/mixed-content-cors.https.sub.html.ini
@@ -1,13 +1,20 @@
[mixed-content-cors.https.sub.html]
expected:
- if (os == "linux") and debug: [OK, TIMEOUT]
- if (os == "linux") and not debug: [OK, TIMEOUT]
+ if (os == "linux") and not debug and not asan and not tsan: [TIMEOUT, OK]
+ if (os == "win") and debug and (processor == "x86_64"): TIMEOUT
+ if (os == "win") and debug and (processor == "x86"): OK
+ if (os == "win") and not debug: OK
+ if (os == "android") and debug: OK
if (os == "android") and not debug: [OK, ERROR, TIMEOUT]
+ [OK, TIMEOUT]
[Cross-Origin audio should get upgraded even if CORS is set]
expected:
- if (os == "linux") and debug: [PASS, TIMEOUT]
- if (os == "linux") and not debug: [PASS, TIMEOUT]
- if (os == "android") and not debug: [PASS, TIMEOUT]
+ if (os == "linux") and not debug and not asan and not tsan: [TIMEOUT, PASS]
+ if (os == "win") and debug and (processor == "x86_64"): TIMEOUT
+ if (os == "win") and debug and (processor == "x86"): PASS
+ if (os == "win") and not debug: PASS
+ if (os == "android") and debug: PASS
+ [PASS, TIMEOUT]
[Cross-Origin video should get upgraded even if CORS is set]
expected:
diff --git a/testing/web-platform/meta/mozilla-sync b/testing/web-platform/meta/mozilla-sync
index 1b0794092d..ec1b40aafe 100644
--- a/testing/web-platform/meta/mozilla-sync
+++ b/testing/web-platform/meta/mozilla-sync
@@ -1 +1 @@
-upstream: e733e65472186b2067abe92088c26a62d2332b06
+upstream: 26ca0e1b63c8746f54c660fe063dae65cbc484d4
diff --git a/testing/web-platform/meta/mst-content-hint/__dir__.ini b/testing/web-platform/meta/mst-content-hint/__dir__.ini
index daf68383df..4dc814392f 100644
--- a/testing/web-platform/meta/mst-content-hint/__dir__.ini
+++ b/testing/web-platform/meta/mst-content-hint/__dir__.ini
@@ -1 +1,3 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1831521
+implementation-status: not-implementing
leak-threshold: [default:51200]
diff --git a/testing/web-platform/meta/navigation-api/navigate-event/navigate-history-back-bfcache.html.ini b/testing/web-platform/meta/navigation-api/navigate-event/navigate-history-back-bfcache.html.ini
index b7a915faed..30c2d1fe7e 100644
--- a/testing/web-platform/meta/navigation-api/navigate-event/navigate-history-back-bfcache.html.ini
+++ b/testing/web-platform/meta/navigation-api/navigate-event/navigate-history-back-bfcache.html.ini
@@ -1,8 +1,8 @@
[navigate-history-back-bfcache.html]
expected:
- if os == "win": [TIMEOUT, OK]
- TIMEOUT
+ if os == "android": OK
+ [TIMEOUT, OK]
[navigate event should fire when traversing to a bfcache hit]
expected:
- if os == "win": [TIMEOUT, FAIL]
- TIMEOUT
+ if os == "android": FAIL
+ [TIMEOUT, FAIL]
diff --git a/testing/web-platform/meta/navigation-api/navigation-activation/activation-after-bfcache.html.ini b/testing/web-platform/meta/navigation-api/navigation-activation/activation-after-bfcache.html.ini
index bf594507b8..3c8d5acf22 100644
--- a/testing/web-platform/meta/navigation-api/navigation-activation/activation-after-bfcache.html.ini
+++ b/testing/web-platform/meta/navigation-api/navigation-activation/activation-after-bfcache.html.ini
@@ -1,10 +1,10 @@
[activation-after-bfcache.html]
expected:
if os == "win": [TIMEOUT, OK]
- if os == "android": OK
+ if os == "android": [OK, TIMEOUT]
TIMEOUT
[navigation.activation must be updated when restored from bfcache]
expected:
if os == "win": [TIMEOUT, FAIL]
- if os == "android": FAIL
+ if os == "android": [FAIL, TIMEOUT]
TIMEOUT
diff --git a/testing/web-platform/meta/network-error-logging/sends-report-on-success.https.html.ini b/testing/web-platform/meta/network-error-logging/sends-report-on-success.https.html.ini
index 45db215e00..bbed63088f 100644
--- a/testing/web-platform/meta/network-error-logging/sends-report-on-success.https.html.ini
+++ b/testing/web-platform/meta/network-error-logging/sends-report-on-success.https.html.ini
@@ -1,7 +1,9 @@
[sends-report-on-success.https.html]
expected:
- if os == "mac": [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "mac": [TIMEOUT, OK]
[\n Test that NEL reports are sent for successful requests\n ]
expected:
- if os == "mac": [FAIL, TIMEOUT]
+ if os == "win": [FAIL, TIMEOUT]
+ if os == "mac": [TIMEOUT, FAIL]
FAIL
diff --git a/testing/web-platform/meta/notifications/getnotifications-across-processes.https.window.js.ini b/testing/web-platform/meta/notifications/getnotifications-across-processes.https.window.js.ini
index 34d8c0cbb6..f88a3148a6 100644
--- a/testing/web-platform/meta/notifications/getnotifications-across-processes.https.window.js.ini
+++ b/testing/web-platform/meta/notifications/getnotifications-across-processes.https.window.js.ini
@@ -1 +1,11 @@
prefs: [notification.prompt.testing:true, marionette.setpermission.enabled:true, dom.webnotifications.loglevel:All]
+[getnotifications-across-processes.https.window.html]
+ [Get notification created from window]
+ expected:
+ if not asan and not fission and (os == "android"): PASS
+ if not asan and fission: PASS
+ [PASS, FAIL]
+
+ [Create and get notification within service worker]
+ expected:
+ if not fission and (os == "linux") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/notifications/tag.https.html.ini b/testing/web-platform/meta/notifications/tag.https.html.ini
new file mode 100644
index 0000000000..274e91c6f7
--- /dev/null
+++ b/testing/web-platform/meta/notifications/tag.https.html.ini
@@ -0,0 +1,10 @@
+prefs: [notification.prompt.testing:true,marionette.setpermission.enabled:true]
+
+[tag.https.html]
+ bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1891536
+ expected:
+ if (os == "android"): TIMEOUT
+
+ [Opening two notifications with the same tag should close the first one]
+ expected:
+ if (os == "android"): TIMEOUT
diff --git a/testing/web-platform/meta/parakeet/__dir__.ini b/testing/web-platform/meta/parakeet/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/parakeet/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/periodic-background-sync/__dir__.ini b/testing/web-platform/meta/periodic-background-sync/__dir__.ini
new file mode 100644
index 0000000000..3821c895cb
--- /dev/null
+++ b/testing/web-platform/meta/periodic-background-sync/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1217544
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini
index 4bf9baa39f..20d7cad80b 100644
--- a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini
+++ b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html.ini
@@ -6,3 +6,6 @@
[permissions policy "payment" can be enabled in same-origin iframe using allow="payment" attribute]
expected: FAIL
+
+ [permissions policy "payment" is enabled by default]
+ expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini
index 089b6cdfa3..f8cee0c885 100644
--- a/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html.ini
@@ -1,11 +1,9 @@
[payment-allowed-by-permissions-policy.https.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [permissions policy header "payment=*" allows same-origin iframes.]
+ [permissions policy header "payment=*" allows Payment Request API the top-level document.]
expected: FAIL
- [permissions policy header "payment=*" allows the top-level document.]
+ [permissions policy header "payment=*" allows Payment Request API same-origin iframes.]
expected: FAIL
- [permissions policy header "payment=*" allow="payment" allows cross-origin iframes.]
+ [permissions policy header "payment=*" allow="payment" allows Payment Request in cross-origin iframes.]
expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini
index 6a8f47cb65..e56f5220f9 100644
--- a/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/permissions-policy/payment-default-permissions-policy.https.sub.html.ini
@@ -1,6 +1,6 @@
[payment-default-permissions-policy.https.sub.html]
- [Default "payment" permissions policy allows the top-level document.]
+ [Payment Request API is enabled by default the top-level document.]
expected: FAIL
- [Default "payment" permissions policy allows same-origin iframes.]
+ [Payment Request API is enabled by default in same-origin iframes.]
expected: FAIL
diff --git a/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini b/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini
index baacbea72e..86b0bfe8c2 100644
--- a/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini
+++ b/testing/web-platform/meta/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html.ini
@@ -1,5 +1,3 @@
[payment-disabled-by-permissions-policy.https.sub.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [permissions policy header "payment=()" disallows the top-level document.]
+ [permissions policy header "payment=()" disallows Payment Request API in top-level document.]
expected: FAIL
diff --git a/testing/web-platform/meta/permissions-request/__dir__.ini b/testing/web-platform/meta/permissions-request/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/permissions-request/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini
index 9412ad7a8a..ff767577a8 100644
--- a/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini
+++ b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini
@@ -1,6 +1,7 @@
[pointerevent_suppress_compat_events_on_click.html]
[Event log]
expected:
- if not debug and (os == "linux") and not tsan and asan and not fission: [PASS, FAIL]
- if not debug and (os == "linux") and not tsan and not asan: [PASS, FAIL]
- if not debug and (os == "win") and (processor == "x86_64"): [PASS, FAIL]
+ if (os == "linux") and not debug and fission and not asan and not tsan: [PASS, FAIL]
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, FAIL]
+ if (os == "linux") and not debug and not fission: [PASS, FAIL]
+ if (os == "mac") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/reporting/reporting-isolated-across-navigations.https.sub.html.ini b/testing/web-platform/meta/reporting/reporting-isolated-across-navigations.https.sub.html.ini
index 0ea7d6cad3..7608ffc81f 100644
--- a/testing/web-platform/meta/reporting/reporting-isolated-across-navigations.https.sub.html.ini
+++ b/testing/web-platform/meta/reporting/reporting-isolated-across-navigations.https.sub.html.ini
@@ -1,7 +1,9 @@
[reporting-isolated-across-navigations.https.sub.html]
expected:
- if os == "android": TIMEOUT
+ if os == "mac": [OK, TIMEOUT]
+ if os == "android": [TIMEOUT, OK]
[Reports should be sent to the correct endpoints]
expected:
- if os == "android": TIMEOUT
+ if os == "mac": [FAIL, TIMEOUT]
+ if os == "android": [TIMEOUT, FAIL]
FAIL
diff --git a/testing/web-platform/meta/requestidlecallback/deadline-max-rAF-dynamic.html.ini b/testing/web-platform/meta/requestidlecallback/deadline-max-rAF-dynamic.html.ini
index 793ec53fdb..8eac939a9f 100644
--- a/testing/web-platform/meta/requestidlecallback/deadline-max-rAF-dynamic.html.ini
+++ b/testing/web-platform/meta/requestidlecallback/deadline-max-rAF-dynamic.html.ini
@@ -1,9 +1,9 @@
[deadline-max-rAF-dynamic.html]
[Check that the deadline is changed if there is a new requestAnimationFrame from within requestIdleCallback.]
expected:
- if (os == "linux") and not swgl and fission and debug: [PASS, FAIL]
- if (os == "linux") and not swgl and not fission and not debug: [PASS, FAIL]
- if (os == "win") and (processor == "x86") and debug: [PASS, FAIL]
- if (os == "linux") and swgl and fission: [PASS, FAIL]
- if (os == "mac") and debug: [PASS, FAIL]
- if (os == "mac") and not debug: [FAIL, PASS]
+ if (os == "linux") and not asan and debug and not fission: PASS
+ if (os == "win") and debug and (processor == "x86_64"): PASS
+ if (os == "linux") and not asan and not debug: PASS
+ if (os == "win") and not debug: PASS
+ if os == "android": PASS
+ [PASS, FAIL]
diff --git a/testing/web-platform/meta/resource-timing/initiator-type/workers.html.ini b/testing/web-platform/meta/resource-timing/initiator-type/workers.html.ini
index 3a8d654f12..fbba498ebf 100644
--- a/testing/web-platform/meta/resource-timing/initiator-type/workers.html.ini
+++ b/testing/web-platform/meta/resource-timing/initiator-type/workers.html.ini
@@ -1,3 +1,5 @@
[workers.html]
expected:
if (os == "android") and not debug: [OK, CRASH]
+ [The initiator type for module worker must be 'script']
+ expected: FAIL
diff --git a/testing/web-platform/meta/savedata/__dir__.ini b/testing/web-platform/meta/savedata/__dir__.ini
new file mode 100644
index 0000000000..d9eb4c559e
--- /dev/null
+++ b/testing/web-platform/meta/savedata/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing
diff --git a/testing/web-platform/meta/scheduler/tentative/yield/yield-priority-posttask.any.js.ini b/testing/web-platform/meta/scheduler/tentative/yield/yield-priority-posttask.any.js.ini
index 662bec8a3b..f39a75376c 100644
--- a/testing/web-platform/meta/scheduler/tentative/yield/yield-priority-posttask.any.js.ini
+++ b/testing/web-platform/meta/scheduler/tentative/yield/yield-priority-posttask.any.js.ini
@@ -26,6 +26,9 @@
[yield() with postTask tasks (inherit priority)]
expected: FAIL
+ [yield() with postTask tasks (inherit signal by default)]
+ expected: FAIL
+
[yield-priority-posttask.any.html]
[yield() with postTask tasks (priority option)]
@@ -54,3 +57,6 @@
[yield() with postTask tasks (inherit priority)]
expected: FAIL
+
+ [yield() with postTask tasks (inherit signal by default)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/screen-capture/getallscreensmedia-exposure.tentative.https.window.js.ini b/testing/web-platform/meta/screen-capture/getallscreensmedia-exposure.tentative.https.window.js.ini
new file mode 100644
index 0000000000..06d3693874
--- /dev/null
+++ b/testing/web-platform/meta/screen-capture/getallscreensmedia-exposure.tentative.https.window.js.ini
@@ -0,0 +1,3 @@
+[getallscreensmedia-exposure.tentative.https.window.html]
+ [Strict CSP + TT, exposure.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/screen-details/__dir__.ini b/testing/web-platform/meta/screen-details/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/screen-details/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/scroll-animations/css/animation-shorthand.html.ini b/testing/web-platform/meta/scroll-animations/css/animation-shorthand.html.ini
index 85591dd0a2..df564bc9dd 100644
--- a/testing/web-platform/meta/scroll-animations/css/animation-shorthand.html.ini
+++ b/testing/web-platform/meta/scroll-animations/css/animation-shorthand.html.ini
@@ -23,12 +23,6 @@
[Animation shorthand can not represent non-initial timelines (computed)]
expected: FAIL
- [Animation shorthand can not represent non-initial animation-delay-end (specified)]
- expected: FAIL
-
- [Animation shorthand can not represent non-initial animation-delay-end (computed)]
- expected: FAIL
-
[Animation shorthand can not represent non-initial animation-range-start (specified)]
expected: FAIL
diff --git a/testing/web-platform/meta/scroll-animations/css/animation-timeline-view-functional-notation.tentative.html.ini b/testing/web-platform/meta/scroll-animations/css/animation-timeline-view-functional-notation.tentative.html.ini
index 052c448ee9..d66c32bb07 100644
--- a/testing/web-platform/meta/scroll-animations/css/animation-timeline-view-functional-notation.tentative.html.ini
+++ b/testing/web-platform/meta/scroll-animations/css/animation-timeline-view-functional-notation.tentative.html.ini
@@ -1,27 +1,39 @@
[animation-timeline-view-functional-notation.tentative.html]
+ expected:
+ if os == "mac": [TIMEOUT, OK]
[animation-timeline: view()]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
expected: FAIL
[animation-timeline: view(50px)]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
- expected: FAIL
+ expected:
+ if os == "mac": [FAIL, TIMEOUT]
+ FAIL
[animation-timeline: view(auto 50px)]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
- expected: FAIL
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ FAIL
[animation-timeline: view(inline)]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[animation-timeline: view(), view(inline)]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[animation-timeline: view(inline) changes to view(inline 50px)]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1824875
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[animation-timeline: view(x) without timeline range name]
expected: FAIL
@@ -33,10 +45,16 @@
expected: FAIL
[animation-timeline: view(x)]
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[animation-timeline: view(y)]
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[animation-timeline: view(x 50px)]
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
diff --git a/testing/web-platform/meta/scroll-animations/css/scroll-timeline-dynamic.tentative.html.ini b/testing/web-platform/meta/scroll-animations/css/scroll-timeline-dynamic.tentative.html.ini
index 2a6b7a5f0e..04fc91a3f9 100644
--- a/testing/web-platform/meta/scroll-animations/css/scroll-timeline-dynamic.tentative.html.ini
+++ b/testing/web-platform/meta/scroll-animations/css/scroll-timeline-dynamic.tentative.html.ini
@@ -1,22 +1,40 @@
[scroll-timeline-dynamic.tentative.html]
+ expected:
+ if os == "mac": [TIMEOUT, OK]
[Reverse animation direction [immediate\]]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1774060
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[Reverse animation direction [scroll\]]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1774060
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[Switching timelines and pausing at the same time [immediate\]]
bug: https://github.com/w3c/csswg-drafts/issues/5653
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[Switching timelines and pausing at the same time [scroll\]]
bug: https://github.com/w3c/csswg-drafts/issues/5653
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[Change to timeline attachment while paused [immediate\]]
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
[Change to timeline attachment while paused [scroll\]]
- expected: FAIL
+ expected:
+ if os == "mac": [NOTRUN, FAIL]
+ FAIL
+
+ [Changing to/from animation-timeline:none [scroll\]]
+ expected:
+ if os == "mac": [TIMEOUT, PASS]
diff --git a/testing/web-platform/meta/scroll-animations/css/view-timeline-inset-animation.html.ini b/testing/web-platform/meta/scroll-animations/css/view-timeline-inset-animation.html.ini
index 19bdf32e65..51312faabf 100644
--- a/testing/web-platform/meta/scroll-animations/css/view-timeline-inset-animation.html.ini
+++ b/testing/web-platform/meta/scroll-animations/css/view-timeline-inset-animation.html.ini
@@ -1,4 +1,6 @@
[view-timeline-inset-animation.html]
+ expected:
+ if os == "mac": [TIMEOUT, OK]
[view-timeline-inset with horizontal scroller]
expected: FAIL
@@ -43,3 +45,7 @@
[view-timeline-inset:auto, x, vertical-rl]
expected: FAIL
+
+ [view-timeline-inset:auto, mix]
+ expected:
+ if os == "mac": [TIMEOUT, PASS]
diff --git a/testing/web-platform/meta/scroll-to-text-fragment/percent-encoding.html.ini b/testing/web-platform/meta/scroll-to-text-fragment/percent-encoding.html.ini
index 177ffdfe02..4b56425246 100644
--- a/testing/web-platform/meta/scroll-to-text-fragment/percent-encoding.html.ini
+++ b/testing/web-platform/meta/scroll-to-text-fragment/percent-encoding.html.ini
@@ -1,4 +1,13 @@
[percent-encoding.html]
+ [Test navigation with fragment: Percent char without hex digits is invalid..]
+ expected: FAIL
+
+ [Test navigation with fragment: Percent char followed by percent char is invalid..]
+ expected: FAIL
+
+ [Test navigation with fragment: Single digit percent-encoding is invalid..]
+ expected: FAIL
+
[Test navigation with fragment: Percent-encoding limited to two digits..]
expected: FAIL
@@ -7,9 +16,3 @@
[Test navigation with fragment: Percent-encoding multibyte codepoint (CHECKMARK)..]
expected: FAIL
-
- [Test navigation with fragment: Percent char without hex digits is invalid..]
- expected: [FAIL, PASS]
-
- [Test navigation with fragment: Percent char followed by percent char is invalid..]
- expected: [FAIL, PASS]
diff --git a/testing/web-platform/meta/service-workers/service-worker/fetch-event-respond-with-readable-stream.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/fetch-event-respond-with-readable-stream.https.html.ini
index e6079cd8b5..bc59f16bc0 100644
--- a/testing/web-platform/meta/service-workers/service-worker/fetch-event-respond-with-readable-stream.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/fetch-event-respond-with-readable-stream.https.html.ini
@@ -2,13 +2,13 @@
expected: TIMEOUT
[Cancellation in the page should be observable in the service worker with nonempty stream]
expected:
- if os == "win": [FAIL, NOTRUN, PASS, TIMEOUT]
- if os == "mac": [FAIL, PASS, TIMEOUT, NOTRUN]
- [PASS, FAIL]
+ if os == "linux": [FAIL, PASS]
+ [FAIL, PASS, TIMEOUT, NOTRUN]
[Cancellation in the page should be observable in the service worker with empty stream]
expected:
if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
TIMEOUT
[Abort in the page should be observable in the service worker with empty stream]
@@ -16,8 +16,8 @@
[Abort in the page should be observable in the service worker with nonempty stream]
expected:
- if os == "win": [PASS, NOTRUN, TIMEOUT]
- if os == "linux": [FAIL, PASS]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, FAIL]
[Subresource built from a ReadableStream - fetch stream]
expected:
@@ -39,3 +39,7 @@
[Subresource built from a ReadableStream - delayed]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
+
+ [Subresource built from a ReadableStream]
+ expected:
+ if os == "win": [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/service-workers/service-worker/navigation-preload/get-state.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/navigation-preload/get-state.https.html.ini
index 1bbe1ad99a..aac9c3c2d7 100644
--- a/testing/web-platform/meta/service-workers/service-worker/navigation-preload/get-state.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/navigation-preload/get-state.https.html.ini
@@ -7,8 +7,8 @@
[getState from a worker]
expected:
- if os == "win": [PASS, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[no active worker]
expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, NOTRUN, TIMEOUT]
diff --git a/testing/web-platform/meta/service-workers/service-worker/navigation-redirect.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/navigation-redirect.https.html.ini
index d32272c3b8..265a6930e6 100644
--- a/testing/web-platform/meta/service-workers/service-worker/navigation-redirect.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/navigation-redirect.https.html.ini
@@ -55,7 +55,8 @@
[SW-fallbacked redirect to other-origin and back to same-origin.]
expected:
- if os == "win": [PASS, FAIL]
+ if (os == "win") and (processor == "x86_64"): [PASS, FAIL]
+ if (os == "win") and (processor == "x86"): [FAIL, PASS]
[navigation-redirect.https.html?default]
@@ -66,12 +67,15 @@
[SW-fallbacked redirect to same-origin same-scope with a hash fragment.]
expected:
+ if (os == "linux") and not fission and not debug: [PASS, FAIL]
if (os == "win") and debug: [PASS, FAIL]
[SW-fallbacked redirect to same-origin same-scope with different hash fragments.]
expected:
+ if (os == "linux") and (processor == "x86_64") and not tsan and not debug and fission and asan: [PASS, FAIL]
+ if (os == "linux") and (processor == "x86_64") and not tsan and debug and not fission: [PASS, FAIL]
if (os == "win") and debug and (processor == "x86_64"): [PASS, FAIL]
[SW-fallbacked redirect to other-origin and back to same-origin.]
expected:
- if (processor == "x86") and not debug: [PASS, FAIL]
+ if (processor == "x86") and (os == "win") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/service-workers/service-worker/navigation-timing-sizes.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/navigation-timing-sizes.https.html.ini
new file mode 100644
index 0000000000..74e062a9d5
--- /dev/null
+++ b/testing/web-platform/meta/service-workers/service-worker/navigation-timing-sizes.https.html.ini
@@ -0,0 +1,6 @@
+[navigation-timing-sizes.https.html]
+ [Body sizes in a regular pass-through]
+ expected: FAIL
+
+ [Body sizes in a regular pass-through with gzip]
+ expected: FAIL
diff --git a/testing/web-platform/meta/service-workers/service-worker/register-same-scope-different-script-url.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/register-same-scope-different-script-url.https.html.ini
index 98f330a078..d9cca40402 100644
--- a/testing/web-platform/meta/service-workers/service-worker/register-same-scope-different-script-url.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/register-same-scope-different-script-url.https.html.ini
@@ -1,17 +1,17 @@
[register-same-scope-different-script-url.https.html]
max-asserts: 2
expected:
- if not fission and (os == "linux") and not debug: [OK, TIMEOUT]
+ if asan and not fission: [OK, TIMEOUT]
[Register same-scope new script url effect on controller]
expected:
- if not fission and (os == "linux") and not debug: [PASS, TIMEOUT]
+ if asan and not fission: [PASS, TIMEOUT]
[Register then register new script URL that 404s]
expected:
- if not fission and (os == "linux") and not debug: [PASS, TIMEOUT]
+ if asan and not fission: [PASS, TIMEOUT]
[Register different scripts concurrently]
expected:
- if fission and (os == "win") and (processor == "x86") and debug: [PASS, FAIL]
- if fission and (os == "mac") and not debug: [PASS, FAIL]
- if fission and (os == "linux") and not swgl: [PASS, FAIL]
+ if fission and (os == "win") and not debug and (processor == "x86_64"): PASS
+ if not fission: PASS
+ [PASS, FAIL]
diff --git a/testing/web-platform/meta/service-workers/service-worker/registration-updateviacache.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/registration-updateviacache.https.html.ini
index 3bcb9ca2b1..c301e7ecad 100644
--- a/testing/web-platform/meta/service-workers/service-worker/registration-updateviacache.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/registration-updateviacache.https.html.ini
@@ -2,10 +2,6 @@
[updateViaCache is not updated if register() rejects]
expected: FAIL
- [register-with-updateViaCache-none-then-undefined]
- expected:
- if swgl and (os == "win"): [PASS, FAIL]
-
[register-with-updateViaCache-imports]
expected:
if (processor == "x86_64") and (os == "linux") and not debug and fission: [PASS, FAIL]
@@ -13,8 +9,8 @@
[register-with-updateViaCache-all]
expected:
- if (os == "win") and debug and not swgl: [PASS, FAIL]
- if (os == "linux") and not fission and not swgl: [PASS, FAIL]
+ if (os == "win") and debug: [PASS, FAIL]
+ if (os == "linux") and not fission: [PASS, FAIL]
[register-with-updateViaCache-none-then-all]
expected:
diff --git a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html.ini
index 0a251a78f2..534b7748a1 100644
--- a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html.ini
@@ -7,3 +7,12 @@
[addRoutes should raise if the number of router rules exceeds the length limit]
expected: FAIL
+
+ [addRoutes should raise if the conditon does not exist in the rule]
+ expected: FAIL
+
+ [addRoutes should raise if the source does not exiswt in the rule]
+ expected: FAIL
+
+ [addRoutes should raise if not condition exceeds the depth limit]
+ expected: FAIL
diff --git a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html.ini
index 3a61291169..b855e1c13b 100644
--- a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html.ini
@@ -19,3 +19,9 @@
[Main resource load matched with the cache source, with specifying the cache name]
expected: FAIL
+
+ [Main resource load should not match the condition with not]
+ expected: FAIL
+
+ [Main resource load should match the condition without not]
+ expected: FAIL
diff --git a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html.ini
index e725a2bd78..ed90d9b22b 100644
--- a/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html.ini
+++ b/testing/web-platform/meta/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html.ini
@@ -46,3 +46,9 @@
[Subresource load matched with the cache source, with specifying the cache name]
expected: FAIL
+
+ [Subresource load should not match with the not condition]
+ expected: FAIL
+
+ [Subresource load should match with a file other than not]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/delegatesFocus-highlight-sibling.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/delegatesFocus-highlight-sibling.html.ini
new file mode 100644
index 0000000000..a197d0b4c6
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/delegatesFocus-highlight-sibling.html.ini
@@ -0,0 +1,3 @@
+[delegatesFocus-highlight-sibling.html]
+ [crbug/474687 :focus style should properly be applied to shadow hosts.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback-default-tabindex.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback-default-tabindex.html.ini
new file mode 100644
index 0000000000..73b8b69c30
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback-default-tabindex.html.ini
@@ -0,0 +1,3 @@
+[focus-navigation-slot-fallback-default-tabindex.html]
+ [Default tabindex for a slot node should be 0.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback.html.ini
index 5ae48d4eb7..2f49dcea8d 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-fallback.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-fallback.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should jump to fallback elements when a slot does not have any assigned nodes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html.ini
index 4907a24cbc..b3752b0813 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-nested-2levels.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus controller should treat each slot as a focus scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-delegatesFocus.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-delegatesFocus.html.ini
index 5fb6c5f759..71cc335c6b 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-delegatesFocus.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-delegatesFocus.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-nested-delegatesFocus.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus controller should treat each slot as a focus scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-fallback.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-fallback.html.ini
index a8765d268d..ef409fbcef 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-fallback.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested-fallback.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-nested-fallback.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should cover assigned elements of an assigned slot espacially there are fallback contents.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested.html.ini
index 7a43f93026..169a52c785 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-nested.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-nested.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus controller should treat each slot as a focus scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-fallback.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-fallback.html.ini
index df0fd5de46..97d184a11d 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-fallback.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-fallback.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-shadow-in-fallback.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should cover assigned elements of an assigned slot, as well as elements that are directly assigned to a slot.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-slot.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-slot.html.ini
index 42b17fc1d4..c67d53e6bf 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-slot.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-shadow-in-slot.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-shadow-in-slot.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should cover assigned elements of an assigned slot, as well as elements that are directly assigned to a slot.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-with-tabindex.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-with-tabindex.html.ini
index ce098ebef9..a41c73fc03 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-with-tabindex.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slot-with-tabindex.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slot-with-tabindex.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Slots tabindex should be considred in focus navigation.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html.ini
index a299237d0c..880cdc133d 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slots-in-slot.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should cover assigned nodes of slot, especially for nested slots in slot scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots.html.ini
index 97301d1159..a28a0bc5fc 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-slots.html.ini
@@ -1,3 +1,3 @@
[focus-navigation-slots.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus should cover assigned elements of an assigned slot, as well as elements that are directly assigned to a slot.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-web-component-radio.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-web-component-radio.html.ini
new file mode 100644
index 0000000000..5be06dbc8e
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-web-component-radio.html.ini
@@ -0,0 +1,3 @@
+[focus-navigation-web-component-radio.html]
+ [Focus for web component input type elements should be bound by <form> inside shadow DOM]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html.ini
index 106b395184..7dd6c59d7f 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html.ini
@@ -1,40 +1,68 @@
[focus-navigation-with-delegatesFocus.html]
disabled:
if os == "mac": https://bugzilla.mozilla.org/show_bug.cgi?id=1845961
- expected:
- if (os == "mac") and not debug: [TIMEOUT, OK]
+ [Testing tab navigation order with mode open, no tabindex and delegatesFocus=false.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, no tabindex and delegatesFocus=true.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, tabindex=0 and delegatesFocus=false.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, tabindex=0 and delegatesFocus=true.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, tabindex=-1 and delegatesFocus=false.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, tabindex=-1 and delegatesFocus=true.]
+ expected: FAIL
+
+ [Testing tab navigation order with mode open, tabindex=1 and delegatesFocus=false.]
+ expected: FAIL
+
[Testing tab navigation order with mode closed, no tabindex and delegatesFocus=true.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=0 and delegatesFocus=false.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=0 and delegatesFocus=true.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=-1 and delegatesFocus=false.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=-1 and delegatesFocus=true.]
expected:
if (os == "mac") and not debug: [PASS, NOTRUN, TIMEOUT]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=1 and delegatesFocus=false.]
expected:
if (os == "mac") and not debug: [TIMEOUT, NOTRUN, PASS]
+ FAIL
[Testing tab navigation order with mode closed, tabindex=1 and delegatesFocus=true.]
expected:
if (os == "mac") and not debug: [NOTRUN, TIMEOUT, PASS]
+ FAIL
[Testing tab navigation order with mode closed, no tabindex and delegatesFocus=false.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT, NOTRUN]
+ FAIL
[Testing tab navigation order with mode open, tabindex=1 and delegatesFocus=true.]
expected:
if (os == "mac") and not debug: [PASS, TIMEOUT]
+ FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation.html.ini
index 4567aaecaf..be2650ca6f 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-navigation.html.ini
@@ -1,3 +1,3 @@
[focus-navigation.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Focus controller should treat slots as a focus scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-nested-slots.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-nested-slots.html.ini
index 94d47148c6..86fb808f72 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-nested-slots.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-nested-slots.html.ini
@@ -1,3 +1,3 @@
[focus-nested-slots.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Verifies that focus order goes in flat tree order with buttons inside nested slots which have a mixture of assigned and unassigned states.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-unassignable-slot.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-unassignable-slot.html.ini
index f9a27cdcf1..1054d50be8 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-unassignable-slot.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-unassignable-slot.html.ini
@@ -1,3 +1,3 @@
[focus-unassignable-slot.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ [Verifies that focusing forwards from an input inside a slot which has no shadow root goes to the next focusable element in light DOM.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-with-negative-index.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-with-negative-index.html.ini
index f84bfbc096..9ca175f0a7 100644
--- a/testing/web-platform/meta/shadow-dom/focus-navigation/focus-with-negative-index.html.ini
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/focus-with-negative-index.html.ini
@@ -1,5 +1,6 @@
[focus-with-negative-index.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[This is a regression test: After focusing negative tabindex-ed elements, focus moves in tree order.]
expected: FAIL
+
+ [Focus controller should treat slots as a focus scope.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html.ini
new file mode 100644
index 0000000000..33ba1727c8
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html.ini
@@ -0,0 +1,3 @@
+[grid-order-on-shadow-host.html]
+ [Grid items in shadow host without delegatesFocus]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html.ini
new file mode 100644
index 0000000000..e8e3e346f7
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html.ini
@@ -0,0 +1,3 @@
+[grid-order-with-iframe.html]
+ [Grid items are iframes.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html.ini
new file mode 100644
index 0000000000..56dbb62204
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html.ini
@@ -0,0 +1,9 @@
+[grid-order-with-nested-grids.html]
+ [Grid items are not grid containers.]
+ expected: FAIL
+
+ [Grid items are grid containers.]
+ expected: FAIL
+
+ [Only has grid containers.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html.ini
new file mode 100644
index 0000000000..d042f8691a
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html.ini
@@ -0,0 +1,6 @@
+[grid-order-with-popover.html]
+ [Popover in reading-order-items: grid-order container.]
+ expected: FAIL
+
+ [Popover in container and itself with reading-order-items: grid-order.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html.ini
new file mode 100644
index 0000000000..1edebbc9fe
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html.ini
@@ -0,0 +1,21 @@
+[grid-order-with-slots.html]
+ [Slot assigned element is a grid with reading-order-items.]
+ expected: FAIL
+
+ [Slot is a grid with reading-order-items.]
+ expected: FAIL
+
+ [Slot is inside a grid container with reading-order-items.]
+ expected: FAIL
+
+ [Slot is a grid with reading-order-items inside a grid container with reading-order-items.]
+ expected: FAIL
+
+ [Slot is not inside a shadow root.]
+ expected: FAIL
+
+ [Slot is a display contents inside a grid container.]
+ expected: FAIL
+
+ [Slot is a display block inside a grid container.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html.ini b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html.ini
new file mode 100644
index 0000000000..b14df4f41f
--- /dev/null
+++ b/testing/web-platform/meta/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html.ini
@@ -0,0 +1,15 @@
+[grid-order.html]
+ [Grid items with `order` property]
+ expected: FAIL
+
+ [Grid items with `order` property and tabindex]
+ expected: FAIL
+
+ [Items in display contents are sorted in same grid container.]
+ expected: FAIL
+
+ [Items in display block are not in parent grid container.]
+ expected: FAIL
+
+ [Grid items without `order` property]
+ expected: FAIL
diff --git a/testing/web-platform/meta/shared-storage/__dir__.ini b/testing/web-platform/meta/shared-storage/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/shared-storage/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html.ini b/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html.ini
deleted file mode 100644
index a06acaa381..0000000000
--- a/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html]
- [createWorklet() with cross-origin module script and credentials "include", and without the Access-Control-Allow-Credentials response header]
- expected: FAIL
diff --git a/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html.ini b/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html.ini
deleted file mode 100644
index 28787a68c1..0000000000
--- a/testing/web-platform/meta/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html]
- [createWorklet() with cross-origin module script and credentials "include", and without the Access-Control-Allow-Origin response header]
- expected: FAIL
diff --git a/testing/web-platform/meta/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js.ini b/testing/web-platform/meta/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js.ini
deleted file mode 100644
index 75f9fba5fc..0000000000
--- a/testing/web-platform/meta/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[requestStorageAccess-dedicated-worker.tentative.sub.https.window.html]
- [Workers don't observe parent's storage access]
- expected: FAIL
diff --git a/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini b/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini
index a482a26c2c..2ff98308dd 100644
--- a/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini
+++ b/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini
@@ -1,6 +1,5 @@
[estimate-usage-details-service-workers.https.tentative.window.html]
expected:
- if not asan and not fission and (os == "linux") and not debug: [OK, ERROR]
if asan and not fission: [OK, ERROR]
[estimate() shows usage increase after large value is stored]
expected: FAIL
diff --git a/testing/web-platform/meta/streams/readable-streams/async-iterator.any.js.ini b/testing/web-platform/meta/streams/readable-streams/async-iterator.any.js.ini
index 2af34719c7..c46cd54c2a 100644
--- a/testing/web-platform/meta/streams/readable-streams/async-iterator.any.js.ini
+++ b/testing/web-platform/meta/streams/readable-streams/async-iterator.any.js.ini
@@ -2,6 +2,15 @@
[Async iterator instances should have the correct list of properties]
expected: FAIL
+ [return(); next() [no awaiting\]]
+ expected: FAIL
+
+ [return(); next() with delayed cancel() [no awaiting\]]
+ expected: FAIL
+
+ [return(); return() [no awaiting\]]
+ expected: FAIL
+
[async-iterator.any.sharedworker.html]
expected:
@@ -9,16 +18,43 @@
[Async iterator instances should have the correct list of properties]
expected: FAIL
+ [return(); next() [no awaiting\]]
+ expected: FAIL
+
+ [return(); next() with delayed cancel() [no awaiting\]]
+ expected: FAIL
+
+ [return(); return() [no awaiting\]]
+ expected: FAIL
+
[async-iterator.any.worker.html]
[Async iterator instances should have the correct list of properties]
expected: FAIL
+ [return(); next() [no awaiting\]]
+ expected: FAIL
+
+ [return(); next() with delayed cancel() [no awaiting\]]
+ expected: FAIL
+
+ [return(); return() [no awaiting\]]
+ expected: FAIL
+
[async-iterator.any.html]
[Async iterator instances should have the correct list of properties]
expected: FAIL
+ [return(); next() [no awaiting\]]
+ expected: FAIL
+
+ [return(); next() with delayed cancel() [no awaiting\]]
+ expected: FAIL
+
+ [return(); return() [no awaiting\]]
+ expected: FAIL
+
[async-iterator.any.shadowrealm.html]
expected: ERROR
diff --git a/testing/web-platform/meta/streams/transform-streams/backpressure.any.js.ini b/testing/web-platform/meta/streams/transform-streams/backpressure.any.js.ini
index a940d50340..5de5468026 100644
--- a/testing/web-platform/meta/streams/transform-streams/backpressure.any.js.ini
+++ b/testing/web-platform/meta/streams/transform-streams/backpressure.any.js.ini
@@ -1,18 +1,10 @@
[backpressure.any.worker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[backpressure.any.serviceworker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[backpressure.any.html]
- expected:
- if (os == "android") and fission: [TIMEOUT, OK]
[backpressure.any.sharedworker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[backpressure.any.shadowrealm.html]
expected: ERROR
diff --git a/testing/web-platform/meta/streams/writable-streams/close.any.js.ini b/testing/web-platform/meta/streams/writable-streams/close.any.js.ini
index f291cf5b14..c2272406ec 100644
--- a/testing/web-platform/meta/streams/writable-streams/close.any.js.ini
+++ b/testing/web-platform/meta/streams/writable-streams/close.any.js.ini
@@ -1,18 +1,12 @@
[close.any.serviceworker.html]
expected:
- if (os == "android") and fission: [OK, TIMEOUT]
+ if (processor == "x86") and not debug: TIMEOUT
[close.any.worker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[close.any.sharedworker.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[close.any.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
[close.any.shadowrealm.html]
expected: ERROR
diff --git a/testing/web-platform/meta/subapps/__dir__.ini b/testing/web-platform/meta/subapps/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/subapps/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/svg/crashtests/chrome-bug-333487749.html.ini b/testing/web-platform/meta/svg/crashtests/chrome-bug-333487749.html.ini
new file mode 100644
index 0000000000..64b81cf5bc
--- /dev/null
+++ b/testing/web-platform/meta/svg/crashtests/chrome-bug-333487749.html.ini
@@ -0,0 +1,10 @@
+[chrome-bug-333487749.html]
+ expected:
+ if (os == "linux") and not swgl and not debug and not tsan and not asan and (version == "Ubuntu 22.04"): [PASS, TIMEOUT]
+ if (os == "linux") and not swgl and not debug and not tsan and asan: [PASS, TIMEOUT]
+ if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, TIMEOUT]
+ if (os == "linux") and not swgl and debug and fission: TIMEOUT
+ if (os == "linux") and not swgl and debug and not fission: [TIMEOUT, PASS]
+ if (os == "linux") and not swgl and not debug and tsan: [TIMEOUT, PASS]
+ if (os == "linux") and swgl and debug: [PASS, TIMEOUT]
+ if (os == "linux") and swgl and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/svg/painting/reftests/paint-context-007.svg.ini b/testing/web-platform/meta/svg/painting/reftests/paint-context-007.svg.ini
new file mode 100644
index 0000000000..73ed8c231e
--- /dev/null
+++ b/testing/web-platform/meta/svg/painting/reftests/paint-context-007.svg.ini
@@ -0,0 +1,2 @@
+[paint-context-007.svg]
+ expected: FAIL
diff --git a/testing/web-platform/meta/svg/painting/reftests/paint-context-008.svg.ini b/testing/web-platform/meta/svg/painting/reftests/paint-context-008.svg.ini
new file mode 100644
index 0000000000..cfa128a1c0
--- /dev/null
+++ b/testing/web-platform/meta/svg/painting/reftests/paint-context-008.svg.ini
@@ -0,0 +1,2 @@
+[paint-context-008.svg]
+ expected: FAIL
diff --git a/testing/web-platform/meta/svg/path/property/serialization.svg.ini b/testing/web-platform/meta/svg/path/property/serialization.svg.ini
index 370109ae72..47cee44713 100644
--- a/testing/web-platform/meta/svg/path/property/serialization.svg.ini
+++ b/testing/web-platform/meta/svg/path/property/serialization.svg.ini
@@ -16,3 +16,6 @@
[Property d value ' path( "m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50" )']
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1489392
expected: FAIL
+
+ [Property d value 'path("M 0 0 L 100 100 m 0 100 l 100 0 Z l 160 20 Z")']
+ expected: FAIL
diff --git a/testing/web-platform/meta/svg/types/scripted/SVGLength-lh.html.ini b/testing/web-platform/meta/svg/types/scripted/SVGLength-lh.html.ini
deleted file mode 100644
index 1eb0c10b46..0000000000
--- a/testing/web-platform/meta/svg/types/scripted/SVGLength-lh.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[SVGLength-lh.html]
- expected:
- if (os == "android") and fission: [OK, TIMEOUT]
- [lh unit in SVGLength]
- expected: FAIL
-
- [Convert back to lh from new user unit value]
- expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/Document-write.html.ini b/testing/web-platform/meta/trusted-types/Document-write.html.ini
index b8d9410eda..f41bafe432 100644
--- a/testing/web-platform/meta/trusted-types/Document-write.html.ini
+++ b/testing/web-platform/meta/trusted-types/Document-write.html.ini
@@ -1,3 +1,2 @@
[Document-write.html]
- [document.write with html assigned via policy (successful transformation).]
- expected: FAIL
+ prefs: [dom.security.trusted_types.enabled:true]
diff --git a/testing/web-platform/meta/trusted-types/Element-outerHTML.html.ini b/testing/web-platform/meta/trusted-types/Element-outerHTML.html.ini
index f92ced2339..eee47b47a3 100644
--- a/testing/web-platform/meta/trusted-types/Element-outerHTML.html.ini
+++ b/testing/web-platform/meta/trusted-types/Element-outerHTML.html.ini
@@ -1,3 +1,2 @@
[Element-outerHTML.html]
- [outerHTML with html assigned via policy (successful HTML transformation).]
- expected: FAIL
+ prefs: [dom.security.trusted_types.enabled:true]
diff --git a/testing/web-platform/meta/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html.ini b/testing/web-platform/meta/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html.ini
new file mode 100644
index 0000000000..77ec76bd76
--- /dev/null
+++ b/testing/web-platform/meta/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html.ini
@@ -0,0 +1,2 @@
+[Element-setAttribute-respects-Elements-node-documents-globals-CSP.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/trusted-types/Element-setAttribute.html.ini b/testing/web-platform/meta/trusted-types/Element-setAttribute.html.ini
index 3324b89f0e..08606d521a 100644
--- a/testing/web-platform/meta/trusted-types/Element-setAttribute.html.ini
+++ b/testing/web-platform/meta/trusted-types/Element-setAttribute.html.ini
@@ -1,12 +1,2 @@
[Element-setAttribute.html]
- [embed.src assigned via policy (successful ScriptURL transformation)]
- expected: FAIL
-
- [script.src assigned via policy (successful ScriptURL transformation)]
- expected: FAIL
-
- [iframe.srcdoc assigned via policy (successful HTML transformation)]
- expected: FAIL
-
- [script.src assigned via policy (successful script transformation)]
- expected: FAIL
+ prefs: [dom.security.trusted_types.enabled:true]
diff --git a/testing/web-platform/meta/trusted-types/Range-createContextualFragment.html.ini b/testing/web-platform/meta/trusted-types/Range-createContextualFragment.html.ini
index b4a4624016..91b50e665d 100644
--- a/testing/web-platform/meta/trusted-types/Range-createContextualFragment.html.ini
+++ b/testing/web-platform/meta/trusted-types/Range-createContextualFragment.html.ini
@@ -1,3 +1,2 @@
[Range-createContextualFragment.html]
- [range.createContextualFragment assigned via policy (successful HTML transformation).]
- expected: FAIL
+ prefs: [dom.security.trusted_types.enabled:true]
diff --git a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.html.ini b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.html.ini
deleted file mode 100644
index bb3fd7a633..0000000000
--- a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.html.ini
+++ /dev/null
@@ -1,75 +0,0 @@
-[TrustedTypePolicyFactory-getPropertyType.html]
- [sanity check trustedTypes.getPropertyType for the HTML script element.]
- expected: FAIL
-
- [sanity check trustedTypes.getAttributeType.]
- expected: FAIL
-
- [sanity check trustedTypes.getTypeMapping]
- expected: FAIL
-
- [getPropertyType tests adapted from w3c/trusted-types polyfill]
- expected: FAIL
-
- [getAttributeType tests adapted from w3c/trusted-types polyfill]
- expected: FAIL
-
- [getTypeMapping tests adapted from w3c/trusted-types polyfill]
- expected: FAIL
-
- [object[codeBase\] is defined]
- expected: FAIL
-
- [object.codeBase is maybe defined]
- expected: FAIL
-
- [OBJECT[codeBase\] is defined]
- expected: FAIL
-
- [OBJECT.codeBase is maybe defined]
- expected: FAIL
-
- [oBjEcT[codeBase\] is defined]
- expected: FAIL
-
- [oBjEcT.codeBase is maybe defined]
- expected: FAIL
-
- [object[CODEBASE\] is defined]
- expected: FAIL
-
- [object.CODEBASE is maybe defined]
- expected: FAIL
-
- [OBJECT[CODEBASE\] is defined]
- expected: FAIL
-
- [OBJECT.CODEBASE is maybe defined]
- expected: FAIL
-
- [oBjEcT[CODEBASE\] is defined]
- expected: FAIL
-
- [oBjEcT.CODEBASE is maybe defined]
- expected: FAIL
-
- [object[codebase\] is defined]
- expected: FAIL
-
- [object.codebase is maybe defined]
- expected: FAIL
-
- [OBJECT[codebase\] is defined]
- expected: FAIL
-
- [OBJECT.codebase is maybe defined]
- expected: FAIL
-
- [oBjEcT[codebase\] is defined]
- expected: FAIL
-
- [oBjEcT.codebase is maybe defined]
- expected: FAIL
-
- [getPropertyType vs getAttributeType for event handler.]
- expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html.ini b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html.ini
new file mode 100644
index 0000000000..80c538a7d6
--- /dev/null
+++ b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html.ini
@@ -0,0 +1,69 @@
+[TrustedTypePolicyFactory-getPropertyType.tentative.html]
+ [sanity check trustedTypes.getPropertyType for the HTML script element.]
+ expected: FAIL
+
+ [sanity check trustedTypes.getAttributeType.]
+ expected: FAIL
+
+ [getPropertyType tests adapted from w3c/trusted-types polyfill]
+ expected: FAIL
+
+ [getAttributeType tests adapted from w3c/trusted-types polyfill]
+ expected: FAIL
+
+ [iframe[srcDoc\] is defined]
+ expected: FAIL
+
+ [iframe.srcDoc is maybe defined]
+ expected: FAIL
+
+ [IFRAME[srcDoc\] is defined]
+ expected: FAIL
+
+ [IFRAME.srcDoc is maybe defined]
+ expected: FAIL
+
+ [iFrAmE[srcDoc\] is defined]
+ expected: FAIL
+
+ [iFrAmE.srcDoc is maybe defined]
+ expected: FAIL
+
+ [iframe[SRCDOC\] is defined]
+ expected: FAIL
+
+ [iframe.SRCDOC is maybe defined]
+ expected: FAIL
+
+ [IFRAME[SRCDOC\] is defined]
+ expected: FAIL
+
+ [IFRAME.SRCDOC is maybe defined]
+ expected: FAIL
+
+ [iFrAmE[SRCDOC\] is defined]
+ expected: FAIL
+
+ [iFrAmE.SRCDOC is maybe defined]
+ expected: FAIL
+
+ [iframe[srcdoc\] is defined]
+ expected: FAIL
+
+ [iframe.srcdoc is maybe defined]
+ expected: FAIL
+
+ [IFRAME[srcdoc\] is defined]
+ expected: FAIL
+
+ [IFRAME.srcdoc is maybe defined]
+ expected: FAIL
+
+ [iFrAmE[srcdoc\] is defined]
+ expected: FAIL
+
+ [iFrAmE.srcdoc is maybe defined]
+ expected: FAIL
+
+ [getPropertyType vs getAttributeType for event handler.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.html.ini b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.html.ini
deleted file mode 100644
index 850dd1dbc3..0000000000
--- a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[TrustedTypePolicyFactory-metadata.html]
- expected: ERROR
diff --git a/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html.ini b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html.ini
new file mode 100644
index 0000000000..98e8d25b41
--- /dev/null
+++ b/testing/web-platform/meta/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html.ini
@@ -0,0 +1,2 @@
+[TrustedTypePolicyFactory-metadata.tentative.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.html.ini b/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.html.ini
index 321aefbf62..5313f6b134 100644
--- a/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.html.ini
+++ b/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.html.ini
@@ -1,14 +1,5 @@
[block-string-assignment-to-HTMLElement-generic.html]
expected: ERROR
- [embed.src accepts only TrustedScriptURL]
- expected: FAIL
-
- [object.codeBase accepts only TrustedScriptURL]
- expected: FAIL
-
- [object.data accepts only TrustedScriptURL]
- expected: FAIL
-
[script.src accepts only TrustedScriptURL]
expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html.ini b/testing/web-platform/meta/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html.ini
index 26021290bb..24bc8faca5 100644
--- a/testing/web-platform/meta/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html.ini
+++ b/testing/web-platform/meta/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html.ini
@@ -1,22 +1,4 @@
[block-string-assignment-to-attribute-via-attribute-node.html]
- [Set embed.src via textContent]
- expected: FAIL
-
- [Set embed.src via nodeValue]
- expected: FAIL
-
- [Set object.data via textContent]
- expected: FAIL
-
- [Set object.data via nodeValue]
- expected: FAIL
-
- [Set object.codebase via textContent]
- expected: FAIL
-
- [Set object.codebase via nodeValue]
- expected: FAIL
-
[Set script.src via textContent]
expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/modify-attributes-in-callback.html.ini b/testing/web-platform/meta/trusted-types/modify-attributes-in-callback.html.ini
new file mode 100644
index 0000000000..9eefbe0837
--- /dev/null
+++ b/testing/web-platform/meta/trusted-types/modify-attributes-in-callback.html.ini
@@ -0,0 +1,2 @@
+[modify-attributes-in-callback.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/trusted-types/trusted-types-event-handlers.html.ini b/testing/web-platform/meta/trusted-types/trusted-types-event-handlers.html.ini
index 19d3ef57f3..7fa1663a5b 100644
--- a/testing/web-platform/meta/trusted-types/trusted-types-event-handlers.html.ini
+++ b/testing/web-platform/meta/trusted-types/trusted-types-event-handlers.html.ini
@@ -307,3 +307,15 @@
[Event handler div.oncontextlost should be blocked.]
expected: FAIL
+
+ [Event handler div.ontouchend should be blocked.]
+ expected: FAIL
+
+ [Event handler div.ontouchstart should be blocked.]
+ expected: FAIL
+
+ [Event handler div.ontouchmove should be blocked.]
+ expected: FAIL
+
+ [Event handler div.ontouchcancel should be blocked.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/trusted-types/trusted-types-svg-script-set-href.html.ini b/testing/web-platform/meta/trusted-types/trusted-types-svg-script-set-href.html.ini
new file mode 100644
index 0000000000..115f2be20c
--- /dev/null
+++ b/testing/web-platform/meta/trusted-types/trusted-types-svg-script-set-href.html.ini
@@ -0,0 +1,2 @@
+[trusted-types-svg-script-set-href.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
index 63d3292219..fc4eb05c25 100644
--- a/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
+++ b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
@@ -971,9 +971,6 @@
[Parsing: <http://example.com/foo/%2e> against <about:blank>]
expected: FAIL
- [Parsing: <about:/../> against <about:blank>]
- expected: FAIL
-
[Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
expected: FAIL
@@ -983,17 +980,5 @@
[Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
expected: FAIL
- [Parsing: <data:/../> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data://example.com:8080/pathname?search#hash> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data:///test> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data://test/a/../b> against <about:blank>]
- expected: FAIL
-
[a-element-xhtml.xhtml?include=mailto]
diff --git a/testing/web-platform/meta/url/a-element.html.ini b/testing/web-platform/meta/url/a-element.html.ini
index f9f4971786..6d698e5480 100644
--- a/testing/web-platform/meta/url/a-element.html.ini
+++ b/testing/web-platform/meta/url/a-element.html.ini
@@ -1000,9 +1000,6 @@
[Parsing: <http://example.com/foo/%2e> against <about:blank>]
expected: FAIL
- [Parsing: <about:/../> against <about:blank>]
- expected: FAIL
-
[Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
expected: FAIL
@@ -1012,17 +1009,5 @@
[Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
expected: FAIL
- [Parsing: <data:/../> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data://example.com:8080/pathname?search#hash> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data:///test> against <about:blank>]
- expected: FAIL
-
- [Parsing: <data://test/a/../b> against <about:blank>]
- expected: FAIL
-
[a-element.html?include=mailto]
diff --git a/testing/web-platform/meta/url/url-constructor.any.js.ini b/testing/web-platform/meta/url/url-constructor.any.js.ini
index 2429b0c49e..25bdaf4be7 100644
--- a/testing/web-platform/meta/url/url-constructor.any.js.ini
+++ b/testing/web-platform/meta/url/url-constructor.any.js.ini
@@ -1200,9 +1200,6 @@
[Parsing: <http://example.com/foo/%2e> without base]
expected: FAIL
- [Parsing: <about:/../> without base]
- expected: FAIL
-
[Parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
expected: FAIL
@@ -1212,18 +1209,6 @@
[Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> without base]
expected: FAIL
- [Parsing: <data:/../> without base]
- expected: FAIL
-
- [Parsing: <data://example.com:8080/pathname?search#hash> without base]
- expected: FAIL
-
- [Parsing: <data:///test> without base]
- expected: FAIL
-
- [Parsing: <data://test/a/../b> without base]
- expected: FAIL
-
[url-constructor.any.html?include=file]
[Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
@@ -1545,9 +1530,6 @@
[Parsing: <http://example.com/foo/%2e> without base]
expected: FAIL
- [Parsing: <about:/../> without base]
- expected: FAIL
-
[Parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
expected: FAIL
@@ -1557,18 +1539,6 @@
[Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> without base]
expected: FAIL
- [Parsing: <data:/../> without base]
- expected: FAIL
-
- [Parsing: <data://example.com:8080/pathname?search#hash> without base]
- expected: FAIL
-
- [Parsing: <data:///test> without base]
- expected: FAIL
-
- [Parsing: <data://test/a/../b> without base]
- expected: FAIL
-
[url-constructor.any.html?include=javascript]
[Parsing: <javascript:/../> without base]
diff --git a/testing/web-platform/meta/url/url-setters-a-area.window.js.ini b/testing/web-platform/meta/url/url-setters-a-area.window.js.ini
index 09a5b1c3f4..90a088ada1 100644
--- a/testing/web-platform/meta/url/url-setters-a-area.window.js.ini
+++ b/testing/web-platform/meta/url/url-setters-a-area.window.js.ini
@@ -55,12 +55,6 @@
[<area>: Setting <non-spec:/>.pathname = '//p']
expected: FAIL
- [<a>: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
- expected: FAIL
-
- [<area>: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
- expected: FAIL
-
[<a>: Setting <data:space ?query#fragment>.search = '' Do not drop trailing spaces from non-trailing opaque paths]
expected: FAIL
diff --git a/testing/web-platform/meta/url/url-setters.any.js.ini b/testing/web-platform/meta/url/url-setters.any.js.ini
index ba1b9a0da3..eecb145cbc 100644
--- a/testing/web-platform/meta/url/url-setters.any.js.ini
+++ b/testing/web-platform/meta/url/url-setters.any.js.ini
@@ -444,9 +444,6 @@
[URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
expected: FAIL
- [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
- expected: FAIL
-
[url-setters.any.html?include=file]
[URL: Setting <file://hi/path>.protocol = 's']
@@ -507,9 +504,6 @@
[URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
expected: FAIL
- [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
- expected: FAIL
-
[url-setters.any.worker.html?include=file]
[URL: Setting <file://hi/path>.protocol = 's']
diff --git a/testing/web-platform/meta/urlpattern/urlpattern-hasregexpgroups.any.js.ini b/testing/web-platform/meta/urlpattern/urlpattern-hasregexpgroups.any.js.ini
index 72b8cebc88..efde52a710 100644
--- a/testing/web-platform/meta/urlpattern/urlpattern-hasregexpgroups.any.js.ini
+++ b/testing/web-platform/meta/urlpattern/urlpattern-hasregexpgroups.any.js.ini
@@ -14,5 +14,7 @@
[urlpattern-hasregexpgroups.any.serviceworker.html]
+ expected:
+ if os == "win": [OK, TIMEOUT]
[urlpattern-hasregexpgroups]
expected: FAIL
diff --git a/testing/web-platform/meta/urlpattern/urlpattern.any.js.ini b/testing/web-platform/meta/urlpattern/urlpattern.any.js.ini
index bd5b60d600..714f173f43 100644
--- a/testing/web-platform/meta/urlpattern/urlpattern.any.js.ini
+++ b/testing/web-platform/meta/urlpattern/urlpattern.any.js.ini
@@ -3066,7 +3066,7 @@
[urlpattern.any.serviceworker.html]
expected:
- if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
[Pattern: [{"pathname":"/foo/bar"}\] Inputs: [{"pathname":"/foo/bar"}\]]
expected: FAIL
diff --git a/testing/web-platform/meta/urlpattern/urlpattern.https.any.js.ini b/testing/web-platform/meta/urlpattern/urlpattern.https.any.js.ini
index 4fe8ab1538..698f136c48 100644
--- a/testing/web-platform/meta/urlpattern/urlpattern.https.any.js.ini
+++ b/testing/web-platform/meta/urlpattern/urlpattern.https.any.js.ini
@@ -3066,7 +3066,7 @@
[urlpattern.https.any.serviceworker.html]
expected:
- if (processor == "x86") and (os == "win") and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
[Pattern: [{"pathname":"/foo/bar"}\] Inputs: [{"pathname":"/foo/bar"}\]]
expected: FAIL
diff --git a/testing/web-platform/meta/wasm/jsapi/idlharness.any.js.ini b/testing/web-platform/meta/wasm/jsapi/idlharness.any.js.ini
index ac4113f3e2..5702c4b097 100644
--- a/testing/web-platform/meta/wasm/jsapi/idlharness.any.js.ini
+++ b/testing/web-platform/meta/wasm/jsapi/idlharness.any.js.ini
@@ -2,8 +2,31 @@
[Table interface: operation set(unsigned long, optional any)]
expected: FAIL
+ [Memory interface: operation toFixedLengthBuffer()]
+ expected: FAIL
+
+ [Memory interface: operation toResizableBuffer()]
+ expected: FAIL
+
+ [Memory interface: [object WebAssembly.Memory\] must inherit property "toFixedLengthBuffer()" with the proper type]
+ expected: FAIL
+
+ [Memory interface: [object WebAssembly.Memory\] must inherit property "toResizableBuffer()" with the proper type]
+ expected: FAIL
+
[idlharness.any.worker.html]
[Table interface: operation set(unsigned long, optional any)]
expected: FAIL
+ [Memory interface: operation toFixedLengthBuffer()]
+ expected: FAIL
+
+ [Memory interface: operation toResizableBuffer()]
+ expected: FAIL
+
+ [Memory interface: [object WebAssembly.Memory\] must inherit property "toFixedLengthBuffer()" with the proper type]
+ expected: FAIL
+
+ [Memory interface: [object WebAssembly.Memory\] must inherit property "toResizableBuffer()" with the proper type]
+ expected: FAIL
diff --git a/testing/web-platform/meta/web-locks/bfcache/abort.tentative.https.html.ini b/testing/web-platform/meta/web-locks/bfcache/abort.tentative.https.html.ini
new file mode 100644
index 0000000000..ac8dcd9030
--- /dev/null
+++ b/testing/web-platform/meta/web-locks/bfcache/abort.tentative.https.html.ini
@@ -0,0 +1,6 @@
+[abort.tentative.https.html]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
+ [An immediately aborted lock on a shared worker should not prevent bfcache]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/web-otp/__dir__.ini b/testing/web-platform/meta/web-otp/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/web-otp/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html.ini b/testing/web-platform/meta/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html.ini
index 9f785480f6..6d5baaaa47 100644
--- a/testing/web-platform/meta/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html.ini
+++ b/testing/web-platform/meta/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html.ini
@@ -3,8 +3,10 @@
if (os == "android") and not debug: [OK, ERROR]
[All data processed correctly]
expected:
- if (processor == "x86_64") and not tsan and debug and (os == "linux") and not fission: [PASS, FAIL]
- if (processor == "x86_64") and not tsan and debug and (os == "win"): [PASS, FAIL]
- if (processor == "x86_64") and not tsan and debug and (os == "mac"): [PASS, FAIL]
- if (processor == "x86_64") and not tsan and not debug and (os == "android"): [PASS, FAIL]
- if (processor == "x86_64") and tsan: [PASS, FAIL]
+ if not asan and (processor == "x86_64") and fission and not tsan and debug and (os == "win"): [PASS, FAIL]
+ if not asan and (processor == "x86_64") and fission and not tsan and debug and (os == "mac"): [PASS, FAIL]
+ if not asan and (processor == "x86_64") and not fission and debug and (os == "linux"): [PASS, FAIL]
+ if not asan and (processor == "x86_64") and fission and tsan: [PASS, FAIL]
+ if not asan and (processor == "x86_64") and not fission and not debug: [PASS, FAIL]
+ if asan and (processor == "x86_64") and not fission and not debug and (os == "linux"): PASS
+ if asan and not fission: FAIL
diff --git a/testing/web-platform/meta/webauthn/createcredential-pubkeycredparams.https.html.ini b/testing/web-platform/meta/webauthn/createcredential-pubkeycredparams.https.html.ini
deleted file mode 100644
index e53bec4bcc..0000000000
--- a/testing/web-platform/meta/webauthn/createcredential-pubkeycredparams.https.html.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[createcredential-pubkeycredparams.https.html]
- [Bad pubKeyCredParams: first param has bad type ("something-else")]
- expected: FAIL
-
- [Bad pubKeyCredParams: first param has bad type ("")]
- expected: FAIL
-
- [Bad pubKeyCredParams: first param has bad type (null)]
- expected: FAIL
-
- [Bad pubKeyCredParams: first param has bad type (empty object)]
- expected: FAIL
diff --git a/testing/web-platform/meta/webcodecs/audio-encoder-config.https.any.js.ini b/testing/web-platform/meta/webcodecs/audio-encoder-config.https.any.js.ini
index 7fc7b3362e..12bdafa4f1 100644
--- a/testing/web-platform/meta/webcodecs/audio-encoder-config.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/audio-encoder-config.https.any.js.ini
@@ -15,15 +15,15 @@
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"complexity":5,"frameDuration":20000,"packetlossperc":10,"useinbandfec":true}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{}}]
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"format":"opus","complexity":10,"frameDuration":60000,"packetlossperc":20,"usedtx":true,"bogus":456}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"complexity":5,"signal":"music","application":"audio","frameDuration":20000,"packetlossperc":10,"useinbandfec":true}}]
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"format":"opus","signal":"voice","application":"lowdelay","complexity":10,"frameDuration":60000,"packetlossperc":20,"usedtx":true,"bogus":456}}]
expected:
if os == "android": FAIL
@@ -45,14 +45,14 @@
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"complexity":5,"frameDuration":20000,"packetlossperc":10,"useinbandfec":true}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{}}]
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"format":"opus","complexity":10,"frameDuration":60000,"packetlossperc":20,"usedtx":true,"bogus":456}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"complexity":5,"signal":"music","application":"audio","frameDuration":20000,"packetlossperc":10,"useinbandfec":true}}]
expected:
if os == "android": FAIL
- [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{}}]
+ [AudioEncoder.isConfigSupported() supports: {"codec":"opus","sampleRate":48000,"numberOfChannels":2,"opus":{"format":"opus","signal":"voice","application":"lowdelay","complexity":10,"frameDuration":60000,"packetlossperc":20,"usedtx":true,"bogus":456}}]
expected:
if os == "android": FAIL
diff --git a/testing/web-platform/meta/webcodecs/image-decoder.crossOriginIsolated.https.any.js.ini b/testing/web-platform/meta/webcodecs/image-decoder.crossOriginIsolated.https.any.js.ini
index 82663b9d98..324199dfd1 100644
--- a/testing/web-platform/meta/webcodecs/image-decoder.crossOriginIsolated.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/image-decoder.crossOriginIsolated.https.any.js.ini
@@ -1,6 +1,6 @@
[image-decoder.crossOriginIsolated.https.any.html]
expected:
- if (os == "android") and swgl: TIMEOUT
+ if (os == "android") and debug: [OK, TIMEOUT]
[Test ImageDecoder decoding with a SharedArrayBuffer source]
expected: FAIL
@@ -10,7 +10,7 @@
[image-decoder.crossOriginIsolated.https.any.worker.html]
expected:
- if (os == "android") and debug and not swgl: [OK, TIMEOUT]
+ if (os == "android") and debug: [OK, TIMEOUT]
[Test ImageDecoder decoding with a SharedArrayBuffer source]
expected: FAIL
diff --git a/testing/web-platform/meta/webcodecs/reconfiguring-encoder.https.any.js.ini b/testing/web-platform/meta/webcodecs/reconfiguring-encoder.https.any.js.ini
index 3db51b9f4f..bb3ba04897 100644
--- a/testing/web-platform/meta/webcodecs/reconfiguring-encoder.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/reconfiguring-encoder.https.any.js.ini
@@ -8,15 +8,15 @@
[reconfiguring-encoder.https.any.html?vp9_p0]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
[reconfiguring-encoder.https.any.worker.html?vp9_p2]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
[reconfiguring-encoder.https.any.worker.html?vp9_p0]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
[reconfiguring-encoder.https.any.html?h264_annexb]
disabled:
@@ -28,7 +28,7 @@
[reconfiguring-encoder.https.any.html?vp9_p2]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
[reconfiguring-encoder.https.any.worker.html?av1]
disabled:
@@ -42,7 +42,7 @@
[reconfiguring-encoder.https.any.worker.html?vp8]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
[reconfiguring-encoder.https.any.html?h264_avc]
disabled:
@@ -50,4 +50,4 @@
[reconfiguring-encoder.https.any.html?vp8]
disabled:
- if os != "linux": not implemented
+ if (os == "win") or (os == "android"): not implemented
diff --git a/testing/web-platform/meta/webcodecs/temporal-svc-encoding.https.any.js.ini b/testing/web-platform/meta/webcodecs/temporal-svc-encoding.https.any.js.ini
index 59a7198d13..9b99c75bd6 100644
--- a/testing/web-platform/meta/webcodecs/temporal-svc-encoding.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/temporal-svc-encoding.https.any.js.ini
@@ -3,11 +3,11 @@
[temporal-svc-encoding.https.any.worker.html?vp9]
disabled:
- if (os != "linux"): not implemented
+ if (os == "win") or (os == "android"): not implemented
[temporal-svc-encoding.https.any.worker.html?vp8]
disabled:
- if (os != "linux"): not implemented
+ if (os == "win") or (os == "android"): not implemented
[temporal-svc-encoding.https.any.worker.html?h264]
disabled: not implemented
@@ -17,12 +17,12 @@
[temporal-svc-encoding.https.any.html?vp8]
disabled:
- if (os != "linux"): not implemented
+ if (os == "win") or (os == "android"): not implemented
[temporal-svc-encoding.https.any.html?h264]
disabled: not implemented
[temporal-svc-encoding.https.any.html?vp9]
disabled:
- if (os != "linux"): not implemented
+ if (os == "win") or (os == "android"): not implemented
diff --git a/testing/web-platform/meta/webcodecs/video-encoder-config.https.any.js.ini b/testing/web-platform/meta/webcodecs/video-encoder-config.https.any.js.ini
index 1c96987ac1..6040ea789c 100644
--- a/testing/web-platform/meta/webcodecs/video-encoder-config.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/video-encoder-config.https.any.js.ini
@@ -6,9 +6,7 @@
[VideoEncoder.isConfigSupported() supports:{"codec":"vp8","hardwareAcceleration":"no-preference","width":800,"height":600,"bitrate":7000000,"bitrateMode":"variable","framerate":60,"scalabilityMode":"L1T2","futureConfigFeature":"foo","latencyMode":"quality","avc":{"format":"annexb"}}]
expected:
- if os == "mac": PRECONDITION_FAILED
if os == "android": PRECONDITION_FAILED
- if os == "win": PRECONDITION_FAILED
[VideoEncoder.isConfigSupported() supports:{"codec":"vp09.00.10.08","hardwareAcceleration":"no-preference","width":1280,"height":720,"bitrate":7000000,"bitrateMode":"constant","framerate":25,"futureConfigFeature":"foo","latencyMode":"realtime","alpha":"discard"}]
expected:
@@ -24,9 +22,7 @@
[VideoEncoder.isConfigSupported() supports:{"codec":"vp8","hardwareAcceleration":"no-preference","width":800,"height":600,"bitrate":7000000,"bitrateMode":"variable","framerate":60,"scalabilityMode":"L1T2","futureConfigFeature":"foo","latencyMode":"quality","avc":{"format":"annexb"}}]
expected:
- if os == "mac": PRECONDITION_FAILED
if os == "android": PRECONDITION_FAILED
- if os == "win": PRECONDITION_FAILED
[VideoEncoder.isConfigSupported() supports:{"codec":"vp09.00.10.08","hardwareAcceleration":"no-preference","width":1280,"height":720,"bitrate":7000000,"bitrateMode":"constant","framerate":25,"futureConfigFeature":"foo","latencyMode":"realtime","alpha":"discard"}]
expected:
diff --git a/testing/web-platform/meta/webcodecs/video-encoder-flush.https.any.js.ini b/testing/web-platform/meta/webcodecs/video-encoder-flush.https.any.js.ini
index 21a595aa51..3772d2fdb8 100644
--- a/testing/web-platform/meta/webcodecs/video-encoder-flush.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/video-encoder-flush.https.any.js.ini
@@ -1,8 +1,19 @@
-[video-encoder-flush.https.any.worker.html]
+[video-encoder-flush.https.any.worker.html?vp8]
disabled:
- if os != "linux": codec support only on Linux desktop
+ if (os == "win") or (os == "android"): not implemented
-[video-encoder-flush.https.any.html]
+[video-encoder-flush.https.any.html?vp8]
disabled:
- if os != "linux": codec support only on Linux desktop
+ if (os == "win") or (os == "android"): not implemented
+
+
+[video-encoder-flush.https.any.worker.html?h264_avc]
+ disabled:
+ if (os != "linux") or (version == "Ubuntu 18.04"): not implemented
+
+
+[video-encoder-flush.https.any.html?h264_avc]
+ disabled:
+ if (os != "linux") or (version == "Ubuntu 18.04"): not implemented
+
diff --git a/testing/web-platform/meta/webcodecs/video-encoder-h264.https.any.js.ini b/testing/web-platform/meta/webcodecs/video-encoder-h264.https.any.js.ini
index e0d96bb0ff..ca8a1de209 100644
--- a/testing/web-platform/meta/webcodecs/video-encoder-h264.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/video-encoder-h264.https.any.js.ini
@@ -1,7 +1,7 @@
[video-encoder-h264.https.any.html?main]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
if os == "mac": PASS
@@ -9,7 +9,7 @@
[video-encoder-h264.https.any.html?baseline]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "mac": PASS
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
@@ -17,7 +17,7 @@
[video-encoder-h264.https.any.worker.html?baseline]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "mac": PASS
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
@@ -25,7 +25,7 @@
[video-encoder-h264.https.any.html?high]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "mac": PASS
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
@@ -33,7 +33,7 @@
[video-encoder-h264.https.any.worker.html?main]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "mac": PASS
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
@@ -41,7 +41,7 @@
[video-encoder-h264.https.any.worker.html?high]
[Test that encoding with a specific H264 profile actually produces that profile.]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, PASS]
if os == "android": PRECONDITION_FAILED
if os == "mac": PASS
if os == "linux" and version == "Ubuntu 18.04": PRECONDITION_FAILED
diff --git a/testing/web-platform/meta/webcodecs/video-encoder.https.any.js.ini b/testing/web-platform/meta/webcodecs/video-encoder.https.any.js.ini
index 807658b4b2..a30eddaac4 100644
--- a/testing/web-platform/meta/webcodecs/video-encoder.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/video-encoder.https.any.js.ini
@@ -3,35 +3,35 @@
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[encodeQueueSize test]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[Test successful reset() and re-confiugre()]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win") and nightly_build: PASS
FAIL
[Test successful encode() after re-configure().]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[Encode video with negative timestamp]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
@@ -40,33 +40,33 @@
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[encodeQueueSize test]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[Test successful reset() and re-confiugre()]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win") and nightly_build: PASS
FAIL
[Test successful encode() after re-configure().]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
[Encode video with negative timestamp]
expected:
if os == "linux": PASS
if os == "mac": PASS
- if (os == "win") and nightly_build and not ccov: PASS
+ if (os == "win"): PASS
FAIL
diff --git a/testing/web-platform/meta/webcodecs/videoDecoder-codec-specific.https.any.js.ini b/testing/web-platform/meta/webcodecs/videoDecoder-codec-specific.https.any.js.ini
index abcbf5335c..d7a97557cc 100644
--- a/testing/web-platform/meta/webcodecs/videoDecoder-codec-specific.https.any.js.ini
+++ b/testing/web-platform/meta/webcodecs/videoDecoder-codec-specific.https.any.js.ini
@@ -64,6 +64,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -139,6 +147,14 @@
expected:
if (os == "android"): PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if (os == "android"): PRECONDITION_FAILED
@@ -214,6 +230,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -292,6 +316,14 @@
expected:
if (os == "android"): PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if (os == "android"): PRECONDITION_FAILED
@@ -367,6 +399,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -442,6 +482,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -517,6 +565,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -592,6 +648,14 @@
expected:
if os == "android": PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if os == "android": PRECONDITION_FAILED
@@ -667,6 +731,14 @@
expected:
if (os == "android"): PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if (os == "android"): PRECONDITION_FAILED
@@ -745,6 +817,14 @@
expected:
if (os == "android"): PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected:
+ if os == "android": PRECONDITION_FAILED
+
[Test low-latency decoding]
expected:
if (os == "android"): PRECONDITION_FAILED
@@ -804,6 +884,12 @@
[Test reset during flush]
expected: PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
[Test low-latency decoding]
expected: PRECONDITION_FAILED
@@ -861,6 +947,12 @@
[Test reset during flush]
expected: PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
[Test low-latency decoding]
expected: PRECONDITION_FAILED
@@ -918,6 +1010,12 @@
[Test reset during flush]
expected: PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
[Test low-latency decoding]
expected: PRECONDITION_FAILED
@@ -975,6 +1073,12 @@
[Test reset during flush]
expected: PRECONDITION_FAILED
+ [Test new flush after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
+ [Test decoding a corrupt frame after reset in a flush callback]
+ expected: PRECONDITION_FAILED
+
[Test low-latency decoding]
expected: PRECONDITION_FAILED
diff --git a/testing/web-platform/meta/webcodecs/videoFrame-copyTo-rgb.any.js.ini b/testing/web-platform/meta/webcodecs/videoFrame-copyTo-rgb.any.js.ini
new file mode 100644
index 0000000000..573f88c22e
--- /dev/null
+++ b/testing/web-platform/meta/webcodecs/videoFrame-copyTo-rgb.any.js.ini
@@ -0,0 +1,152 @@
+[videoFrame-copyTo-rgb.any.html]
+ [Convert 4x4 I420 frames to RGBA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBX / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRX / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRX / display-p3]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBA / srgb]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBX / srgb]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBA / display-p3]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBX / display-p3]
+ expected: FAIL
+
+ [Unsupported format I420]
+ expected: FAIL
+
+ [Unsupported format I420P10]
+ expected: FAIL
+
+ [Unsupported format I420P12]
+ expected: FAIL
+
+ [Unsupported format I420A]
+ expected: FAIL
+
+ [Unsupported format I422]
+ expected: FAIL
+
+ [Unsupported format I422A]
+ expected: FAIL
+
+ [Unsupported format I444]
+ expected: FAIL
+
+ [Unsupported format I444A]
+ expected: FAIL
+
+ [Unsupported format NV12]
+ expected: FAIL
+
+
+[videoFrame-copyTo-rgb.any.worker.html]
+ [Convert 4x4 I420 frames to RGBA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to RGBX / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 I420 frames to BGRX / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRA / srgb]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRX / srgb]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRA / display-p3]
+ expected: FAIL
+
+ [Convert 4x4 RGBX frames to BGRX / display-p3]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBA / srgb]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBX / srgb]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBA / display-p3]
+ expected: FAIL
+
+ [Convert 4-color canvas frame to RGBX / display-p3]
+ expected: FAIL
+
+ [Unsupported format I420]
+ expected: FAIL
+
+ [Unsupported format I420P10]
+ expected: FAIL
+
+ [Unsupported format I420P12]
+ expected: FAIL
+
+ [Unsupported format I420A]
+ expected: FAIL
+
+ [Unsupported format I422]
+ expected: FAIL
+
+ [Unsupported format I422A]
+ expected: FAIL
+
+ [Unsupported format I444]
+ expected: FAIL
+
+ [Unsupported format I444A]
+ expected: FAIL
+
+ [Unsupported format NV12]
+ expected: FAIL
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py.ini
index 7b783752b4..de6c221775 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py.ini
@@ -16,3 +16,11 @@
[test_capture_with_viewport[height larger-width larger\]]
disabled:
if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
+
+ [test_capture_with_different_dpr[0.5\]]
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
+
+ [test_capture_with_different_dpr[2\]]
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py.ini
index 60533fba25..763c93f85b 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py.ini
@@ -1,3 +1,8 @@
[clip.py]
- expected:
- if (processor == "x86") and not debug: [OK, TIMEOUT]
+ [test_clip_with_different_dpr[0.5\]]
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
+
+ [test_clip_with_different_dpr[2\]]
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/navigation_started/navigation_started.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/navigation_started/navigation_started.py.ini
index 78cffcbc44..5dd5cecee7 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/navigation_started/navigation_started.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/navigation_started/navigation_started.py.ini
@@ -10,4 +10,5 @@
[test_redirect_navigation]
expected:
+ if (processor == "x86_64") and (os == "win") and not debug: [PASS, FAIL]
if (processor == "x86") and debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py.ini
index 57b8a7029e..f8294d1c0c 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py.ini
@@ -1,20 +1,3 @@
[device_pixel_ratio.py]
- [test_device_pixel_ratio_only[0.5\]]
- bug: 1857961
- expected: FAIL
-
- [test_device_pixel_ratio_only[2\]]
- bug: 1857961
- expected: FAIL
-
- [test_device_pixel_ratio_with_viewport[0.5\]]
- bug: 1865618
- expected: FAIL
-
- [test_device_pixel_ratio_with_viewport[2\]]
- bug: 1857961
- expected: FAIL
-
- [test_reset_device_pixel_ratio]
- bug: 1857961
- expected: FAIL
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/invalid.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/invalid.py.ini
index bbbf87d899..773c05751b 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/invalid.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/browsing_context/set_viewport/invalid.py.ini
@@ -1,27 +1,3 @@
[invalid.py]
disabled:
if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1840084
-
- [test_params_devicePixelRatio_invalid_type[False\]]
- bug: 1857961
- expected: FAIL
-
- [test_params_devicePixelRatio_invalid_type[\]]
- bug: 1857961
- expected: FAIL
-
- [test_params_devicePixelRatio_invalid_type[device_pixel_ratio2\]]
- bug: 1857961
- expected: FAIL
-
- [test_params_devicePixelRatio_invalid_type[device_pixel_ratio3\]]
- bug: 1857961
- expected: FAIL
-
- [test_params_devicePixelRatio_invalid_value[0\]]
- bug: 1857961
- expected: FAIL
-
- [test_params_devicePixelRatio_invalid_value[-1\]]
- bug: 1857961
- expected: FAIL
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/invalid.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/invalid.py.ini
deleted file mode 100644
index 4c807f188f..0000000000
--- a/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/invalid.py.ini
+++ /dev/null
@@ -1,68 +0,0 @@
-[invalid.py]
- expected:
- if (processor == "x86") and not debug: [OK, TIMEOUT]
- [test_params_descriptor_invalid_type[False\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[SOME_STRING\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[42\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[descriptor3\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[descriptor4\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[descriptor5\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[None\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_type[descriptor7\]]
- expected: FAIL
-
- [test_params_descriptor_invalid_value[descriptor0\]]
- expected: FAIL
-
- [test_params_state_invalid_type[False\]]
- expected: FAIL
-
- [test_params_state_invalid_type[42\]]
- expected: FAIL
-
- [test_params_state_invalid_type[state2\]]
- expected: FAIL
-
- [test_params_state_invalid_type[state3\]]
- expected: FAIL
-
- [test_params_state_invalid_type[None\]]
- expected: FAIL
-
- [test_params_state_invalid_type[state5\]]
- expected: FAIL
-
- [test_params_state_invalid_value[Granted\]]
- expected: FAIL
-
- [test_params_origin_invalid_type[False\]]
- expected: FAIL
-
- [test_params_origin_invalid_type[42\]]
- expected: FAIL
-
- [test_params_origin_invalid_type[None\]]
- expected: FAIL
-
- [test_params_state_invalid_value[UNKNOWN\]]
- expected: FAIL
-
- [test_params_origin_invalid_type[user_context2\]]
- expected: FAIL
-
- [test_params_origin_invalid_type[user_context3\]]
- expected: FAIL
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py.ini
index 789600d426..1de0c86fe0 100644
--- a/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py.ini
@@ -1,13 +1,4 @@
[set_permission.py]
- [test_set_permission]
- expected: FAIL
-
- [test_set_permission_insecure_context]
- expected: FAIL
-
- [test_set_permission_new_context]
- expected: FAIL
-
[test_set_permission_origin_unknown[UNKNOWN\]]
expected: FAIL
@@ -16,3 +7,6 @@
[test_set_permission_user_context]
expected: FAIL
+ bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1894217
+ disabled:
+ if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1877953
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/key_events.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/key_events.py.ini
deleted file mode 100644
index dcd8ba4c43..0000000000
--- a/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/key_events.py.ini
+++ /dev/null
@@ -1,18 +0,0 @@
-[key_events.py]
- [test_non_printable_key_sends_events[\\ue00c-ESCAPE\]]
- expected: FAIL
-
- [test_non_printable_key_sends_events[\\ue014-RIGHT\]]
- expected: FAIL
-
- [test_key_printable_sequence[True\]]
- expected: FAIL
-
- [test_key_printable_sequence[False\]]
- expected: FAIL
-
- [test_key_space]
- expected: FAIL
-
- [test_keyup_only_sends_no_events]
- expected: FAIL
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/pointer_mouse_multiclick.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/pointer_mouse_multiclick.py.ini
new file mode 100644
index 0000000000..975e9253b9
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/bidi/input/perform_actions/pointer_mouse_multiclick.py.ini
@@ -0,0 +1,32 @@
+[pointer_mouse_multiclick.py]
+ [test_dblclick_at_coordinates[0-True\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_dblclick_at_coordinates[0-False\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_dblclick_at_coordinates[200-True\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_dblclick_at_coordinates[200-False\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_dblclick_at_coordinates[650-True\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_dblclick_at_coordinates[650-False\]]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_no_dblclick_when_mouse_moves]
+ expected:
+ if tsan: [PASS, ERROR]
+
+ [test_tripleclick_at_coordinates]
+ expected:
+ if tsan: [PASS, ERROR]
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/network/response_completed/response_completed.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/network/response_completed/response_completed.py.ini
new file mode 100644
index 0000000000..49bd9d0c25
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/bidi/network/response_completed/response_completed.py.ini
@@ -0,0 +1,3 @@
+[response_completed.py]
+ expected:
+ if (processor == "x86") and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/webdriver/tests/bidi/storage/delete_cookies/filter.py.ini b/testing/web-platform/meta/webdriver/tests/bidi/storage/delete_cookies/filter.py.ini
new file mode 100644
index 0000000000..40ee05331e
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/bidi/storage/delete_cookies/filter.py.ini
@@ -0,0 +1,3 @@
+[filter.py]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/element_clear/clear.py.ini b/testing/web-platform/meta/webdriver/tests/classic/element_clear/clear.py.ini
index beec02684f..a4404f0bed 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/element_clear/clear.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/element_clear/clear.py.ini
@@ -11,7 +11,7 @@
[test_input[url-https://example.com/-\]]
expected:
- if (os == "win") and debug and (processor == "x86_64") and not swgl: [PASS, FAIL]
+ if (os == "win") and debug and (processor == "x86_64"): [PASS, FAIL]
[test_input_readonly[tel\]]
expected:
@@ -20,3 +20,11 @@
[test_input_readonly[text\]]
expected:
if (processor == "x86") and debug: [PASS, FAIL]
+
+ [test_no_browsing_context]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, ERROR]
+
+ [test_no_such_element_with_shadow_root]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/element_click/navigate.py.ini b/testing/web-platform/meta/webdriver/tests/classic/element_click/navigate.py.ini
deleted file mode 100644
index 5b1882ba0b..0000000000
--- a/testing/web-platform/meta/webdriver/tests/classic/element_click/navigate.py.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[navigate.py]
-
- [test_link_unload_event]
- bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1786639
diff --git a/testing/web-platform/meta/webdriver/tests/classic/element_click/user_prompts.py.ini b/testing/web-platform/meta/webdriver/tests/classic/element_click/user_prompts.py.ini
index e8195b6ff4..81663db8f4 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/element_click/user_prompts.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/element_click/user_prompts.py.ini
@@ -10,3 +10,7 @@
[test_dismiss[capabilities0-prompt-None\]]
disabled:
if os == "android": bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1762248
+
+ [test_default[beforeunload-None\]]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/execute_async_script/promise.py.ini b/testing/web-platform/meta/webdriver/tests/classic/execute_async_script/promise.py.ini
index abce0b314e..18338e74c7 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/execute_async_script/promise.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/execute_async_script/promise.py.ini
@@ -1,3 +1,7 @@
[promise.py]
[test_await_promise_resolve]
expected: FAIL
+
+ [test_promise_resolve]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, ERROR]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/find_element_from_element/user_prompts.py.ini b/testing/web-platform/meta/webdriver/tests/classic/find_element_from_element/user_prompts.py.ini
new file mode 100644
index 0000000000..9b3e1ad584
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/classic/find_element_from_element/user_prompts.py.ini
@@ -0,0 +1,4 @@
+[user_prompts.py]
+ [test_dismiss_and_notify[capabilities0-alert-None\]]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/find_element_from_shadow_root/find.py.ini b/testing/web-platform/meta/webdriver/tests/classic/find_element_from_shadow_root/find.py.ini
index 5c55d20d1d..b0ba613ed0 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/find_element_from_shadow_root/find.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/find_element_from_shadow_root/find.py.ini
@@ -16,3 +16,11 @@
[test_find_element[closed-xpath-//a\]]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1822311
expected: FAIL
+
+ [test_find_element_partial_link_text[<a href=# style='text-transform: uppercase'>partial link text</a>-LINK\]]
+ expected:
+ if (processor == "x86") and not debug: [PASS, FAIL]
+
+ [test_find_element_partial_link_text[<a href=#>PARTIAL LINK TEXT</a>-LINK\]]
+ expected:
+ if (processor == "x86") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/get_page_source/user_prompts.py.ini b/testing/web-platform/meta/webdriver/tests/classic/get_page_source/user_prompts.py.ini
new file mode 100644
index 0000000000..f850bc9e5f
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/classic/get_page_source/user_prompts.py.ini
@@ -0,0 +1,4 @@
+[user_prompts.py]
+ [test_accept[capabilities0-alert-None\]]
+ expected:
+ if (os == "android") and debug: [PASS, ERROR]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/get_title/user_prompts.py.ini b/testing/web-platform/meta/webdriver/tests/classic/get_title/user_prompts.py.ini
new file mode 100644
index 0000000000..bb22c692c1
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/classic/get_title/user_prompts.py.ini
@@ -0,0 +1,3 @@
+[user_prompts.py]
+ expected:
+ if (os == "linux") and debug and fission: [OK, CRASH]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/new_session/__dir__.ini b/testing/web-platform/meta/webdriver/tests/classic/new_session/__dir__.ini
index 449e3bbb19..e91def48b7 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/new_session/__dir__.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/new_session/__dir__.ini
@@ -1 +1 @@
-lsan-allowed: [MakeUnique, Malloc, XPCNativeSet::NewInstanceMutate, XPCWrappedNative::GetNewOrUsed, mozilla::extensions::MatchPatternCore::MatchPatternCore, mozilla::extensions::MatchPatternSet::Constructor, mozilla::extensions::MatchPatternSet::GetPatterns, mozilla::extensions::PermittedSchemes, nsLocalFile::Clone, nsStringBuffer::Alloc, nsStringBundleService::insertIntoCache]
+lsan-allowed: [Create, CreateChildSHistory, MakeUnique, Malloc, PLDHashTable::MakeEntryHandle, WeakPtr, XPCNativeSet::NewInstanceMutate, XPCWrappedNative::GetNewOrUsed, mozilla::ThrottledEventQueue::Create, mozilla::dom::BrowsingContext::Attach, mozilla::dom::BrowsingContext::CreateDetached, mozilla::dom::CanonicalBrowsingContext::GetSecureBrowserUI, mozilla::extensions::MatchPatternCore::MatchPatternCore, mozilla::extensions::MatchPatternSet::Constructor, mozilla::extensions::MatchPatternSet::GetPatterns, mozilla::extensions::PermittedSchemes, nsLocalFile::Clone, nsStringBuffer::Alloc, nsStringBundleService::insertIntoCache, operator]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/perform_actions/key_events.py.ini b/testing/web-platform/meta/webdriver/tests/classic/perform_actions/key_events.py.ini
index 68c65444fa..12f1ef5b94 100644
--- a/testing/web-platform/meta/webdriver/tests/classic/perform_actions/key_events.py.ini
+++ b/testing/web-platform/meta/webdriver/tests/classic/perform_actions/key_events.py.ini
@@ -1,3 +1,6 @@
[key_events.py]
expected:
if (processor == "x86") and not debug: [OK, TIMEOUT]
+ [test_special_key_sends_keydown[NUMPAD4-expected37\]]
+ expected:
+ if (os == "mac") and not debug: [PASS, ERROR]
diff --git a/testing/web-platform/meta/webdriver/tests/classic/perform_actions/user_prompts.py.ini b/testing/web-platform/meta/webdriver/tests/classic/perform_actions/user_prompts.py.ini
new file mode 100644
index 0000000000..6d71518f12
--- /dev/null
+++ b/testing/web-platform/meta/webdriver/tests/classic/perform_actions/user_prompts.py.ini
@@ -0,0 +1,16 @@
+[user_prompts.py]
+ [test_default[confirm-False\]]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, ERROR]
+
+ [test_default[prompt-None\]]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, ERROR]
+
+ [test_dismissed_beforeunload]
+ expected:
+ if (os == "win") and not debug and (processor == "x86_64"): [PASS, ERROR]
+
+ [test_ignore[capabilities0-alert\]]
+ expected:
+ if (processor == "x86") and not debug: [PASS, ERROR]
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/arg_min_max.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/arg_min_max.https.any.js.ini
deleted file mode 100644
index 4c60576a9a..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/arg_min_max.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[arg_min_max.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[arg_min_max.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/batch_normalization.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/batch_normalization.https.any.js.ini
deleted file mode 100644
index 0426592cc4..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/batch_normalization.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[batch_normalization.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[batch_normalization.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/buffer.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/buffer.https.any.js.ini
deleted file mode 100644
index ccfef56214..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/buffer.https.any.js.ini
+++ /dev/null
@@ -1,88 +0,0 @@
-[buffer.https.any.html]
- expected: ERROR
- [create / 4]
- expected: NOTRUN
-
- [destroyTwice]
- expected: NOTRUN
-
- [read / destroy]
- expected: NOTRUN
-
- [read / full_size]
- expected: NOTRUN
-
- [read / src_offset_only]
- expected: NOTRUN
-
- [read / zero_write]
- expected: NOTRUN
-
- [read / src_offset_and_size]
- expected: NOTRUN
-
- [read / larger_src_data]
- expected: NOTRUN
-
- [read / no_src_offset]
- expected: NOTRUN
-
- [read / context_mismatch]
- expected: NOTRUN
-
- [write / error]
- expected: NOTRUN
-
- [write / destroy]
- expected: NOTRUN
-
- [write / detached]
- expected: NOTRUN
-
- [write / context_mismatch]
- expected: NOTRUN
-
-
-[buffer.https.any.worker.html]
- expected: ERROR
- [create / 4]
- expected: NOTRUN
-
- [destroyTwice]
- expected: NOTRUN
-
- [read / destroy]
- expected: NOTRUN
-
- [read / full_size]
- expected: NOTRUN
-
- [read / src_offset_only]
- expected: NOTRUN
-
- [read / zero_write]
- expected: NOTRUN
-
- [read / src_offset_and_size]
- expected: NOTRUN
-
- [read / larger_src_data]
- expected: NOTRUN
-
- [read / no_src_offset]
- expected: NOTRUN
-
- [read / context_mismatch]
- expected: NOTRUN
-
- [write / error]
- expected: NOTRUN
-
- [write / destroy]
- expected: NOTRUN
-
- [write / detached]
- expected: NOTRUN
-
- [write / context_mismatch]
- expected: NOTRUN
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/cast.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/cast.https.any.js.ini
deleted file mode 100644
index 458747ead4..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/cast.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[cast.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[cast.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/clamp.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/clamp.https.any.js.ini
deleted file mode 100644
index b0862f21a6..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/clamp.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[clamp.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[clamp.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/concat.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/concat.https.any.js.ini
deleted file mode 100644
index 0f7379c641..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/concat.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[concat.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[concat.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/constant.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/constant.https.any.js.ini
deleted file mode 100644
index 39e67c7150..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/constant.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[constant.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[constant.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/conv2d.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/conv2d.https.any.js.ini
deleted file mode 100644
index 00a0aa0caf..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/conv2d.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[conv2d.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[conv2d.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js.ini
deleted file mode 100644
index 45d041564a..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[conv_transpose2d.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[conv_transpose2d.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_binary.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_binary.https.any.js.ini
deleted file mode 100644
index faaacd133e..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_binary.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[elementwise_binary.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[elementwise_binary.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_logical.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_logical.https.any.js.ini
deleted file mode 100644
index 808d422746..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_logical.https.any.js.ini
+++ /dev/null
@@ -1,14 +0,0 @@
-[elementwise_logical.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator") 1]
- expected: FAIL
-
-
-[elementwise_logical.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator") 1]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_unary.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_unary.https.any.js.ini
deleted file mode 100644
index b9d76799a6..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/elementwise_unary.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[elementwise_unary.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[elementwise_unary.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/elu.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/elu.https.any.js.ini
deleted file mode 100644
index 8acf5519af..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/elu.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[elu.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[elu.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/expand.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/expand.https.any.js.ini
deleted file mode 100644
index 50b30e9c1a..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/expand.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[expand.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[expand.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/gather.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/gather.https.any.js.ini
deleted file mode 100644
index 19877d5e1b..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/gather.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[gather.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[gather.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/gemm.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/gemm.https.any.js.ini
deleted file mode 100644
index 0c72af8fe4..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/gemm.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[gemm.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[gemm.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js.ini
deleted file mode 100644
index e9fccbd3c7..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[hard_sigmoid.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[hard_sigmoid.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_swish.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_swish.https.any.js.ini
deleted file mode 100644
index f250b52fc2..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/hard_swish.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[hard_swish.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[hard_swish.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/instance_normalization.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/instance_normalization.https.any.js.ini
deleted file mode 100644
index 9fc7a2356e..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/instance_normalization.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[instance_normalization.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[instance_normalization.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/layer_normalization.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/layer_normalization.https.any.js.ini
deleted file mode 100644
index ca3d522614..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/layer_normalization.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[layer_normalization.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[layer_normalization.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/leaky_relu.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/leaky_relu.https.any.js.ini
deleted file mode 100644
index 5d9a8d04d7..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/leaky_relu.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[leaky_relu.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[leaky_relu.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/linear.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/linear.https.any.js.ini
deleted file mode 100644
index e7a529ac39..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/linear.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[linear.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[linear.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/matmul.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/matmul.https.any.js.ini
deleted file mode 100644
index 694ab6ce1d..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/matmul.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[matmul.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[matmul.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/pad.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/pad.https.any.js.ini
deleted file mode 100644
index 1be448e4be..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/pad.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[pad.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[pad.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/pooling.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/pooling.https.any.js.ini
deleted file mode 100644
index 1d7688f50e..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/pooling.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[pooling.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[pooling.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/prelu.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/prelu.https.any.js.ini
deleted file mode 100644
index 54ef85f9a7..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/prelu.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[prelu.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[prelu.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/reduction.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/reduction.https.any.js.ini
deleted file mode 100644
index 0f404aeeaa..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/reduction.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[reduction.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[reduction.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/relu.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/relu.https.any.js.ini
deleted file mode 100644
index 4bdd39f9e7..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/relu.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[relu.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[relu.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/resample2d.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/resample2d.https.any.js.ini
deleted file mode 100644
index 81a8f1204d..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/resample2d.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[resample2d.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[resample2d.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/reshape.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/reshape.https.any.js.ini
deleted file mode 100644
index e856cf4682..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/reshape.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[reshape.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[reshape.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/sigmoid.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/sigmoid.https.any.js.ini
deleted file mode 100644
index a2c64a8263..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/sigmoid.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[sigmoid.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[sigmoid.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/slice.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/slice.https.any.js.ini
deleted file mode 100644
index e82211bf35..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/slice.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[slice.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[slice.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/softmax.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/softmax.https.any.js.ini
deleted file mode 100644
index bf323263c4..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/softmax.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[softmax.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[softmax.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/softplus.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/softplus.https.any.js.ini
deleted file mode 100644
index 39fa91d15a..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/softplus.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[softplus.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[softplus.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/softsign.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/softsign.https.any.js.ini
deleted file mode 100644
index 511fbb3639..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/softsign.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[softsign.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[softsign.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/split.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/split.https.any.js.ini
deleted file mode 100644
index d681f089a6..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/split.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[split.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[split.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/tanh.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/tanh.https.any.js.ini
deleted file mode 100644
index 1efbfe6203..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/tanh.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[tanh.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[tanh.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/transpose.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/transpose.https.any.js.ini
deleted file mode 100644
index c46eb5527b..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/transpose.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[transpose.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[transpose.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/triangular.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/triangular.https.any.js.ini
deleted file mode 100644
index 1773ce5484..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/triangular.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[triangular.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[triangular.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/conformance_tests/gpu/where.https.any.js.ini b/testing/web-platform/meta/webnn/conformance_tests/gpu/where.https.any.js.ini
deleted file mode 100644
index c489bd73fd..0000000000
--- a/testing/web-platform/meta/webnn/conformance_tests/gpu/where.https.any.js.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[where.https.any.worker.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
-
-
-[where.https.any.html]
- [assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
- expected: FAIL
diff --git a/testing/web-platform/meta/webnn/validation_tests/convTranspose2d.https.any.js.ini b/testing/web-platform/meta/webnn/validation_tests/convTranspose2d.https.any.js.ini
index c65313c5aa..d33e48ea57 100644
--- a/testing/web-platform/meta/webnn/validation_tests/convTranspose2d.https.any.js.ini
+++ b/testing/web-platform/meta/webnn/validation_tests/convTranspose2d.https.any.js.ini
@@ -14,6 +14,147 @@
[[convTranspose2d\] throw if activation option is from another builder]
expected: FAIL
+ [[convTranspose2d\] Test with default options.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nchw" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nchw" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=[3, 2\], outputSizes=[10, 8\].]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=[3, 2\], outputPadding=[1, 1\].]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with padding=1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with padding=1, groups=3.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=2 and padding=1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test when the output sizes are explicitly specified, the output padding values are ignored though padding value is not smaller than stride along the same axis.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the output operand 's number of elements is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input is not a 4-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the filter is not a 4-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the filter data type doesn't match the input data type.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of padding is not 4.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of strides is not 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if one stride value is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of dilations is not 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the one dilation value is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels inputLayout="nhwc" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if output channels is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the groups is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when calculating the effective filter height.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when calculating the effective filter width.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when dilation height is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when dilation width is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias is not a 1-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias data type doesn't match input data type.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not a sequence of length 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not smaller than stride along the width dimension.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not smaller than stride along the height dimension.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputSizes is not a sequence of length 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the padding height is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the padding width is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to outputSizes values are smaller than the output sizes calculated by not using outputPadding.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to outputSizes values are greater than the output sizes calculated by not using outputPadding.]
+ expected: FAIL
+
[convTranspose2d.https.any.html]
[assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator")]
@@ -30,3 +171,144 @@
[[convTranspose2d\] throw if activation option is from another builder]
expected: FAIL
+
+ [[convTranspose2d\] Test with default options.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nchw" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nchw" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with inputLayout="nhwc" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=[3, 2\], outputSizes=[10, 8\].]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=[3, 2\], outputPadding=[1, 1\].]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with padding=1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with padding=1, groups=3.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test with strides=2 and padding=1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Test when the output sizes are explicitly specified, the output padding values are ignored though padding value is not smaller than stride along the same axis.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the output operand 's number of elements is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input is not a 4-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the filter is not a 4-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the filter data type doesn't match the input data type.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of padding is not 4.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of strides is not 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if one stride value is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the length of dilations is not 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the one dilation value is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels inputLayout="nhwc" and filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if output channels is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the groups is smaller than 1.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when calculating the effective filter height.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when calculating the effective filter width.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when dilation height is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to overflow when dilation width is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias is not a 1-D tensor.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="iohw".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="hwoi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias shape is not equal to [output_channels\] with filterLayout="ohwi".]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the bias data type doesn't match input data type.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not a sequence of length 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not smaller than stride along the width dimension.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputPadding is not smaller than stride along the height dimension.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the outputSizes is not a sequence of length 2.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the padding height is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw if the padding width is too large.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to outputSizes values are smaller than the output sizes calculated by not using outputPadding.]
+ expected: FAIL
+
+ [[convTranspose2d\] Throw due to outputSizes values are greater than the output sizes calculated by not using outputPadding.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/webrtc-encoded-transform/idlharness.https.window.js.ini b/testing/web-platform/meta/webrtc-encoded-transform/idlharness.https.window.js.ini
index 41af1df294..bf40379993 100644
--- a/testing/web-platform/meta/webrtc-encoded-transform/idlharness.https.window.js.ini
+++ b/testing/web-platform/meta/webrtc-encoded-transform/idlharness.https.window.js.ini
@@ -1,80 +1,86 @@
[idlharness.https.window.html]
[SFrameTransform interface object name]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: existence and properties of interface object]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface object length]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: existence and properties of interface prototype object]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: existence and properties of interface prototype object's "constructor" property]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: existence and properties of interface prototype object's @@unscopables property]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: operation setEncryptionKey(CryptoKey, optional CryptoKeyID)]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransform interface: attribute onerror]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: existence and properties of interface object]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface object length]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface object name]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: existence and properties of interface prototype object]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: existence and properties of interface prototype object's "constructor" property]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: existence and properties of interface prototype object's @@unscopables property]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: attribute errorType]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: attribute keyID]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[SFrameTransformErrorEvent interface: attribute frame]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1715625
+ expected: FAIL
[RTCRtpSender interface: operation generateKeyFrame(optional sequence<DOMString>)]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1631263
+ expected: FAIL
[RTCRtpSender interface: calling generateKeyFrame(optional sequence<DOMString>) on new RTCPeerConnection().addTransceiver('audio').sender with too few arguments must throw TypeError]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1631263
+ expected: FAIL
[RTCRtpSender interface: new RTCPeerConnection().addTransceiver('audio').sender must inherit property "generateKeyFrame(optional sequence<DOMString>)" with the proper type]
- expected: FAIL
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1631263
+ expected: FAIL
+
+ [RTCEncodedVideoFrame interface object length]
+ expected: FAIL
+
+ [RTCEncodedAudioFrame interface object length]
+ expected: FAIL
diff --git a/testing/web-platform/meta/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini b/testing/web-platform/meta/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini
deleted file mode 100644
index 6999809037..0000000000
--- a/testing/web-platform/meta/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[RTCRtpReceiver-video-jitterBufferTarget-stats.html]
- [measure raising and lowering video jitterBufferTarget]
- expected:
- if swgl and (os == "win"): [PASS, FAIL]
diff --git a/testing/web-platform/meta/webrtc-ice/__dir__.ini b/testing/web-platform/meta/webrtc-ice/__dir__.ini
new file mode 100644
index 0000000000..a97f412807
--- /dev/null
+++ b/testing/web-platform/meta/webrtc-ice/__dir__.ini
@@ -0,0 +1,2 @@
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1307996
+implementation-status: backlog \ No newline at end of file
diff --git a/testing/web-platform/meta/webrtc-stats/rtp-stats-creation.html.ini b/testing/web-platform/meta/webrtc-stats/rtp-stats-creation.html.ini
index eb7656de24..1737b0f472 100644
--- a/testing/web-platform/meta/webrtc-stats/rtp-stats-creation.html.ini
+++ b/testing/web-platform/meta/webrtc-stats/rtp-stats-creation.html.ini
@@ -1,22 +1,22 @@
[rtp-stats-creation.html]
expected:
- if (os == "win") and debug and not swgl: [OK, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): TIMEOUT
- if os == "mac": [OK, TIMEOUT]
+ if os == "linux": OK
+ if os == "android": OK
+ [OK, TIMEOUT]
[No RTCInboundRtpStreamStats exist until packets have been received]
expected:
- if (os == "win") and debug and swgl: [PASS, FAIL]
- if (os == "win") and debug and not swgl: [PASS, FAIL, TIMEOUT]
- if (os == "win") and not debug and (processor == "x86"): FAIL
+ if (os == "win") and debug: [PASS, FAIL, TIMEOUT]
+ if (os == "win") and not debug: [PASS, NOTRUN]
if (os == "mac") and debug: [PASS, TIMEOUT]
if (os == "mac") and not debug: [PASS, FAIL, NOTRUN]
[RTCAudioPlayoutStats should be present]
expected:
- if (os == "win") and not debug and (processor == "x86"): TIMEOUT
+ if (os == "win") and not debug: [FAIL, NOTRUN]
if (os == "mac") and not debug: [FAIL, TIMEOUT, NOTRUN]
FAIL
[No RTCOutboundRtpStreamStats exist until packets have been sent]
expected:
+ if (os == "win") and not debug: [PASS, TIMEOUT]
if (os == "mac") and not debug: [PASS, FAIL, TIMEOUT]
diff --git a/testing/web-platform/meta/webrtc/RTCDataChannel-send-close.html.ini b/testing/web-platform/meta/webrtc/RTCDataChannel-send-close.html.ini
index e9f2be5f4f..63a12be1c6 100644
--- a/testing/web-platform/meta/webrtc/RTCDataChannel-send-close.html.ini
+++ b/testing/web-platform/meta/webrtc/RTCDataChannel-send-close.html.ini
@@ -1,7 +1,6 @@
[RTCDataChannel-send-close.html]
expected:
- if (os == "win") and (processor == "x86"): CRASH
- if os == "android": CRASH
+ if os == "android": [CRASH, TIMEOUT]
[TIMEOUT, OK]
[Datachannel should be able to send and receive all string messages on close]
expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/meta/webrtc/RTCPeerConnection-iceConnectionState.https.html.ini b/testing/web-platform/meta/webrtc/RTCPeerConnection-iceConnectionState.https.html.ini
index 7fc41ec7d8..ff8279db28 100644
--- a/testing/web-platform/meta/webrtc/RTCPeerConnection-iceConnectionState.https.html.ini
+++ b/testing/web-platform/meta/webrtc/RTCPeerConnection-iceConnectionState.https.html.ini
@@ -1,4 +1,6 @@
[RTCPeerConnection-iceConnectionState.https.html]
+ expected:
+ if tsan: CRASH
[iceConnectionState changes at the right time, with bundle policy max-bundle]
bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1278299
expected: FAIL
diff --git a/testing/web-platform/meta/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html.ini b/testing/web-platform/meta/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html.ini
new file mode 100644
index 0000000000..fa8ca81b19
--- /dev/null
+++ b/testing/web-platform/meta/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html.ini
@@ -0,0 +1,3 @@
+[RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html]
+ [measure raising and lowering audio jitterBufferTarget]
+ expected: FAIL
diff --git a/testing/web-platform/meta/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini b/testing/web-platform/meta/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini
new file mode 100644
index 0000000000..511e0d93b3
--- /dev/null
+++ b/testing/web-platform/meta/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html.ini
@@ -0,0 +1,3 @@
+[RTCRtpReceiver-video-jitterBufferTarget-stats.html]
+ [measure raising and lowering video jitterBufferTarget]
+ expected: FAIL
diff --git a/testing/web-platform/meta/webrtc/idlharness.https.window.js.ini b/testing/web-platform/meta/webrtc/idlharness.https.window.js.ini
index 6a26d4498c..37d9821fde 100644
--- a/testing/web-platform/meta/webrtc/idlharness.https.window.js.ini
+++ b/testing/web-platform/meta/webrtc/idlharness.https.window.js.ini
@@ -215,26 +215,29 @@
[RTCPeerConnectionIceErrorEvent interface: new RTCPeerConnectionIceErrorEvent('ice-error', { port: 0, errorCode: 701 }); must inherit property "address" with the proper type]
expected: FAIL
- [RTCRtpTransceiver interface: operation setCodecPreferences(sequence<RTCRtpCodecCapability>)]
+ [RTCDataChannel interface: new RTCPeerConnection().createDataChannel('') must inherit property "binaryType" with the proper type]
expected: FAIL
- [RTCRtpTransceiver interface: new RTCPeerConnection().addTransceiver('audio') must inherit property "setCodecPreferences(sequence<RTCRtpCodecCapability>)" with the proper type]
+ [RTCIceCandidate interface: attribute relayProtocol]
expected: FAIL
- [RTCRtpTransceiver interface: calling setCodecPreferences(sequence<RTCRtpCodecCapability>) on new RTCPeerConnection().addTransceiver('audio') with too few arguments must throw TypeError]
+ [RTCIceCandidate interface: new RTCIceCandidate({ sdpMid: 1 }) must inherit property "relayProtocol" with the proper type]
expected: FAIL
- [RTCDataChannel interface: new RTCPeerConnection().createDataChannel('') must inherit property "binaryType" with the proper type]
+ [RTCIceCandidate interface: attribute url]
expected: FAIL
- [RTCIceCandidate interface: attribute relayProtocol]
+ [RTCIceCandidate interface: new RTCIceCandidate({ sdpMid: 1 }) must inherit property "url" with the proper type]
expected: FAIL
- [RTCIceCandidate interface: new RTCIceCandidate({ sdpMid: 1 }) must inherit property "relayProtocol" with the proper type]
+ [RTCRtpReceiver interface: new RTCPeerConnection().addTransceiver('audio').receiver must inherit property "jitterBufferTarget" with the proper type]
expected: FAIL
- [RTCIceCandidate interface: attribute url]
+ [RTCRtpTransceiver interface: operation setCodecPreferences(sequence<RTCRtpCodec>)]
expected: FAIL
- [RTCIceCandidate interface: new RTCIceCandidate({ sdpMid: 1 }) must inherit property "url" with the proper type]
+ [RTCRtpTransceiver interface: new RTCPeerConnection().addTransceiver('audio') must inherit property "setCodecPreferences(sequence<RTCRtpCodec>)" with the proper type]
+ expected: FAIL
+
+ [RTCRtpTransceiver interface: calling setCodecPreferences(sequence<RTCRtpCodec>) on new RTCPeerConnection().addTransceiver('audio') with too few arguments must throw TypeError]
expected: FAIL
diff --git a/testing/web-platform/meta/webrtc/legacy/simplecall_callbacks.https.html.ini b/testing/web-platform/meta/webrtc/legacy/simplecall_callbacks.https.html.ini
new file mode 100644
index 0000000000..f640335196
--- /dev/null
+++ b/testing/web-platform/meta/webrtc/legacy/simplecall_callbacks.https.html.ini
@@ -0,0 +1,6 @@
+[simplecall_callbacks.https.html]
+ expected:
+ if (os == "mac") and not debug: [OK, TIMEOUT]
+ [Can set up a basic WebRTC call.]
+ expected:
+ if (os == "mac") and not debug: [PASS, TIMEOUT]
diff --git a/testing/web-platform/meta/webrtc/simulcast/setParameters-active.https.html.ini b/testing/web-platform/meta/webrtc/simulcast/setParameters-active.https.html.ini
new file mode 100644
index 0000000000..9a1ece0772
--- /dev/null
+++ b/testing/web-platform/meta/webrtc/simulcast/setParameters-active.https.html.ini
@@ -0,0 +1,4 @@
+[setParameters-active.https.html]
+ [Simulcast setParameters active=false stops sending frames]
+ expected:
+ if (os == "mac") and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/meta/websockets/Send-binary-arraybufferview-float16.any.js.ini b/testing/web-platform/meta/websockets/Send-binary-arraybufferview-float16.any.js.ini
new file mode 100644
index 0000000000..c167ee06d8
--- /dev/null
+++ b/testing/web-platform/meta/websockets/Send-binary-arraybufferview-float16.any.js.ini
@@ -0,0 +1,28 @@
+[Send-binary-arraybufferview-float16.any.worker.html?wpt_flags=h2]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
+
+
+[Send-binary-arraybufferview-float16.any.html?default]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
+
+
+[Send-binary-arraybufferview-float16.any.html?wpt_flags=h2]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
+
+
+[Send-binary-arraybufferview-float16.any.worker.html?wss]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
+
+
+[Send-binary-arraybufferview-float16.any.html?wss]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
+
+
+[Send-binary-arraybufferview-float16.any.worker.html?default]
+ [Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed]
+ expected: FAIL
diff --git a/testing/web-platform/meta/websockets/basic-auth.any.js.ini b/testing/web-platform/meta/websockets/basic-auth.any.js.ini
index 807d467cd9..9766b57206 100644
--- a/testing/web-platform/meta/websockets/basic-auth.any.js.ini
+++ b/testing/web-platform/meta/websockets/basic-auth.any.js.ini
@@ -8,17 +8,12 @@
[basic-auth.any.sharedworker.html?wss]
expected:
- if not swgl and (os == "android") and debug: [OK, ERROR]
- if swgl and (os == "win"): [OK, TIMEOUT]
- if swgl and (os == "linux"): [OK, ERROR]
- if swgl and (os == "android"): [OK, ERROR]
+ if (os == "android") and debug: [OK, ERROR]
[basic-auth.any.serviceworker.html?wss]
expected:
- if debug and (os == "win") and swgl: [OK, TIMEOUT]
- if debug and (os == "android") and not swgl: [OK, ERROR]
if debug and (os == "linux"): [OK, ERROR]
- if not debug and (processor == "x86"): TIMEOUT
+ if debug and (os == "android"): [OK, ERROR]
[HTTP basic authentication should work with WebSockets]
expected:
if os == "mac": [PASS, TIMEOUT]
@@ -26,30 +21,23 @@
[basic-auth.any.html?wss]
expected:
- if debug and (os == "linux") and not fission and swgl: [OK, ERROR]
if debug and (os == "linux") and fission: [OK, ERROR]
if debug and (os == "win"): [OK, TIMEOUT]
if debug and (os == "android"): [OK, ERROR]
[basic-auth.any.worker.html?wss]
expected:
- if debug and (os == "android") and swgl: [OK, ERROR]
if debug and (os == "win"): [OK, TIMEOUT]
if debug and (os == "linux"): [OK, ERROR]
[basic-auth.any.html?wpt_flags=h2]
- expected:
- if (os == "win") and not swgl and not debug and (processor == "x86"): OK
- if (os == "linux") and debug and not fission and not swgl: OK
- if (os == "win") and swgl: OK
- if (os == "mac") and debug: OK
- if os == "android": OK
- [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[basic-auth.any.worker.html?wpt_flags=h2]
+ expected: [OK, TIMEOUT]
[basic-auth.any.sharedworker.html?wpt_flags=h2]
+ expected: [OK, TIMEOUT]
[basic-auth.any.serviceworker.html?wpt_flags=h2]
- expected:
- if (processor == "x86") and not debug: TIMEOUT
+ expected: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/websockets/cookies/third-party-cookie-accepted.https.html.ini b/testing/web-platform/meta/websockets/cookies/third-party-cookie-accepted.https.html.ini
index a060aaea25..afd8eeb41f 100644
--- a/testing/web-platform/meta/websockets/cookies/third-party-cookie-accepted.https.html.ini
+++ b/testing/web-platform/meta/websockets/cookies/third-party-cookie-accepted.https.html.ini
@@ -1,4 +1,4 @@
-prefs: [network.cookie.sameSite.laxByDefault:true, network.cookie.sameSite.noneRequiresSecure:true]
+prefs: [network.cookie.sameSite.laxByDefault:true, network.cookie.sameSite.noneRequiresSecure:true, network.cookie.cookieBehavior.optInPartitioning:false]
[third-party-cookie-accepted.https.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/websockets/interfaces/WebSocket/readyState/003.html.ini b/testing/web-platform/meta/websockets/interfaces/WebSocket/readyState/003.html.ini
new file mode 100644
index 0000000000..be9dae87ca
--- /dev/null
+++ b/testing/web-platform/meta/websockets/interfaces/WebSocket/readyState/003.html.ini
@@ -0,0 +1,5 @@
+[003.html?wss]
+ expected:
+ if (processor == "x86") and debug: TIMEOUT
+
+[003.html?default]
diff --git a/testing/web-platform/meta/webstorage/event_initstorageevent.window.js.ini b/testing/web-platform/meta/webstorage/event_initstorageevent.window.js.ini
index 19d1a5d79d..7301b75795 100644
--- a/testing/web-platform/meta/webstorage/event_initstorageevent.window.js.ini
+++ b/testing/web-platform/meta/webstorage/event_initstorageevent.window.js.ini
@@ -1,11 +1,3 @@
[event_initstorageevent.window.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [initStorageEvent with 1 argument]
- expected: FAIL
-
- [initStorageEvent with 8 null arguments]
- expected: FAIL
-
- [initStorageEvent with 8 undefined arguments]
- expected: FAIL
diff --git a/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/entities.html.ini b/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/entities.html.ini
deleted file mode 100644
index 9687ed99d9..0000000000
--- a/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/entities.html.ini
+++ /dev/null
@@ -1,37 +0,0 @@
-[entities.html]
- [WebVTT cue data parser test entities - f1869f6e2853635eec81cc3afa3e2b8148ccbdc0]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 261cd4e9df4a12535b66a0c39e9635aab2bb19aa]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 0fd9e3823b62c028c1d50e35b1f3ee3df02a62eb]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 216cd0e914b9f2ccd04eff6d02a0b1ce24441d95]
- expected: FAIL
-
- [WebVTT cue data parser test entities - bd68f6beda2c2264e61dff7359c1ad48bc0a9934]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 5b77a0be23453dfe6eea59d43bb0708f89e1df82]
- expected: FAIL
-
- [WebVTT cue data parser test entities - e3ac2060b915f0f499b2863f999dcdb38a5db79b]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 31c8a5ecfa5c54d8c0ec5b4ee8f0bbea0d6d40af]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 9ed59950764468c4ef2948d71cf75c3f2b60c74d]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 71a6efcfab81264fb95bb3234c59687c11c72baf]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 86d7c20ca3c060f9e699c7da43927c4a07a5d569]
- expected: FAIL
-
- [WebVTT cue data parser test entities - 314cd94292df37044e90ce27b5606bf8ec636b94]
- expected: FAIL
-
diff --git a/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/tree-building.html.ini b/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/tree-building.html.ini
index 85bfb74c51..ca090ce29b 100644
--- a/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/tree-building.html.ini
+++ b/testing/web-platform/meta/webvtt/parsing/cue-text-parsing/tests/tree-building.html.ini
@@ -1,8 +1,3 @@
[tree-building.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [WebVTT cue data parser test tree-building - c94512b045699cb72f730e46b2a0a3bed2c939f9]
- expected: FAIL
-
- [WebVTT cue data parser test tree-building - b85bd616672eba0591718182ef32e3307d223bb0]
- expected: FAIL
diff --git a/testing/web-platform/meta/webxr/idlharness.https.window.js.ini b/testing/web-platform/meta/webxr/idlharness.https.window.js.ini
index b4c5e2081a..37d83bc173 100644
--- a/testing/web-platform/meta/webxr/idlharness.https.window.js.ini
+++ b/testing/web-platform/meta/webxr/idlharness.https.window.js.ini
@@ -841,3 +841,6 @@
[XRSession interface: xrSession must inherit property "isSystemKeyboardSupported" with the proper type]
expected: FAIL
+
+ [XRInputSource interface: attribute skipRendering]
+ expected: FAIL
diff --git a/testing/web-platform/meta/window-management/__dir__.ini b/testing/web-platform/meta/window-management/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/meta/window-management/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/meta/workers/Worker-creation-happens-in-parallel.https.html.ini b/testing/web-platform/meta/workers/Worker-creation-happens-in-parallel.https.html.ini
new file mode 100644
index 0000000000..83bc37d94f
--- /dev/null
+++ b/testing/web-platform/meta/workers/Worker-creation-happens-in-parallel.https.html.ini
@@ -0,0 +1,8 @@
+[Worker-creation-happens-in-parallel.https.html]
+ expected:
+ if debug and (os == "android"): TIMEOUT
+ if not debug and (os == "win"): TIMEOUT
+ if not debug and (os == "mac"): TIMEOUT
+ if not debug and (os == "linux"): TIMEOUT
+ [Tests that creation of a "new Worker()" will occur in parallel]
+ expected: FAIL
diff --git a/testing/web-platform/meta/workers/Worker-postMessage-happens-in-parallel.https.html.ini b/testing/web-platform/meta/workers/Worker-postMessage-happens-in-parallel.https.html.ini
new file mode 100644
index 0000000000..aa0db46798
--- /dev/null
+++ b/testing/web-platform/meta/workers/Worker-postMessage-happens-in-parallel.https.html.ini
@@ -0,0 +1,3 @@
+[Worker-postMessage-happens-in-parallel.https.html]
+ expected:
+ if (os == "android") and debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/workers/baseurl/alpha/sharedworker-in-worker.html.ini b/testing/web-platform/meta/workers/baseurl/alpha/sharedworker-in-worker.html.ini
index 8a60e3dff4..09d1911a19 100644
--- a/testing/web-platform/meta/workers/baseurl/alpha/sharedworker-in-worker.html.ini
+++ b/testing/web-platform/meta/workers/baseurl/alpha/sharedworker-in-worker.html.ini
@@ -1,5 +1,5 @@
[sharedworker-in-worker.html]
expected:
- if not fission and (os == "linux") and not debug and not asan: [OK, ERROR]
+ if (processor == "x86") and (os == "linux"): [OK, ERROR]
[Base URL in workers: new SharedWorker()]
expected: FAIL
diff --git a/testing/web-platform/meta/workers/constructors/SharedWorker/same-origin.html.ini b/testing/web-platform/meta/workers/constructors/SharedWorker/same-origin.html.ini
index b0032ead79..92b746e48d 100644
--- a/testing/web-platform/meta/workers/constructors/SharedWorker/same-origin.html.ini
+++ b/testing/web-platform/meta/workers/constructors/SharedWorker/same-origin.html.ini
@@ -1,5 +1,3 @@
[same-origin.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [unsupported_scheme]
- expected: FAIL
diff --git a/testing/web-platform/meta/workers/constructors/Worker/same-origin.html.ini b/testing/web-platform/meta/workers/constructors/Worker/same-origin.html.ini
index b0032ead79..92b746e48d 100644
--- a/testing/web-platform/meta/workers/constructors/Worker/same-origin.html.ini
+++ b/testing/web-platform/meta/workers/constructors/Worker/same-origin.html.ini
@@ -1,5 +1,3 @@
[same-origin.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
- [unsupported_scheme]
- expected: FAIL
diff --git a/testing/web-platform/meta/workers/semantics/interface-objects/001.worker.js.ini b/testing/web-platform/meta/workers/semantics/interface-objects/001.worker.js.ini
index 95a6a5c68b..f3d392810b 100644
--- a/testing/web-platform/meta/workers/semantics/interface-objects/001.worker.js.ini
+++ b/testing/web-platform/meta/workers/semantics/interface-objects/001.worker.js.ini
@@ -19,3 +19,5 @@
[001.worker.html]
+ [The Float16Array interface object should be exposed.]
+ expected: FAIL
diff --git a/testing/web-platform/meta/workers/semantics/interface-objects/003.any.js.ini b/testing/web-platform/meta/workers/semantics/interface-objects/003.any.js.ini
new file mode 100644
index 0000000000..6729879078
--- /dev/null
+++ b/testing/web-platform/meta/workers/semantics/interface-objects/003.any.js.ini
@@ -0,0 +1,3 @@
+[003.any.sharedworker.html]
+ [The Float16Array interface object should be exposed]
+ expected: FAIL
diff --git a/testing/web-platform/meta/xhr/overridemimetype-blob.html.ini b/testing/web-platform/meta/xhr/overridemimetype-blob.html.ini
index 70a3c0c4e1..d92ca6eb9e 100644
--- a/testing/web-platform/meta/xhr/overridemimetype-blob.html.ini
+++ b/testing/web-platform/meta/xhr/overridemimetype-blob.html.ini
@@ -1,3 +1,23 @@
[overridemimetype-blob.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [2) MIME types need to be parsed and serialized: TEXT/HTML;CHARSET=GBK]
+ expected: FAIL
+
+ [26) MIME types need to be parsed and serialized: text/html;charset= ";charset=GBK]
+ expected: FAIL
+
+ [27) MIME types need to be parsed and serialized: text/html;charset=";charset=foo";charset=GBK]
+ expected: FAIL
+
+ [37) MIME types need to be parsed and serialized: text/html;charset=";charset=GBK]
+ expected: FAIL
+
+ [44) MIME types need to be parsed and serialized: !#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz;!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz]
+ expected: FAIL
+
+ [45) MIME types need to be parsed and serialized: x/x;x="\t !\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"]
+ expected: FAIL
+
+ [53) MIME types need to be parsed and serialized: text/html;test=ÿ;charset=gbk]
+ expected: FAIL
diff --git a/testing/web-platform/meta/xhr/send-data-sharedarraybuffer.any.js.ini b/testing/web-platform/meta/xhr/send-data-sharedarraybuffer.any.js.ini
index a3cab04ab8..d19cad4340 100644
--- a/testing/web-platform/meta/xhr/send-data-sharedarraybuffer.any.js.ini
+++ b/testing/web-platform/meta/xhr/send-data-sharedarraybuffer.any.js.ini
@@ -1,7 +1,12 @@
[send-data-sharedarraybuffer.any.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [sending a Float16Array backed by a SharedArrayBuffer]
+ expected: FAIL
+
[send-data-sharedarraybuffer.any.worker.html]
expected:
if (os == "android") and fission: [OK, TIMEOUT]
+ [sending a Float16Array backed by a SharedArrayBuffer]
+ expected: FAIL
diff --git a/testing/web-platform/moz.build b/testing/web-platform/moz.build
index d298b27de5..5d14892991 100644
--- a/testing/web-platform/moz.build
+++ b/testing/web-platform/moz.build
@@ -119,9 +119,21 @@ with Files("tests/xhr/**"):
with Files("tests/accelerometer/**"):
BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+with Files("tests/accessibility/**"):
+ BUG_COMPONENT = ("Core", "Disability Access APIs")
+
+with Files("tests/accname/**"):
+ BUG_COMPONENT = ("Core", "Disability Access APIs")
+
+with Files("tests/acid/**"):
+ BUG_COMPONENT = ("Core", "Layout")
+
with Files("tests/ambient-light/**"):
BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+with Files("tests/animation-worklet/**"):
+ BUG_COMPONENT = ("Core", "DOM: Animation")
+
with Files("tests/annotation-model/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
@@ -137,6 +149,9 @@ with Files("tests/apng/**"):
with Files("tests/audio-output/**"):
BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+with Files("tests/avif/**"):
+ BUG_COMPONENT = ("Core", "Graphics: ImageLib")
+
with Files("tests/background-fetch/**"):
BUG_COMPONENT = ("Core", "DOM: Service Workers")
@@ -152,9 +167,15 @@ with Files("tests/bluetooth/**"):
with Files("tests/clear-site-data/**"):
BUG_COMPONENT = ("Core", "DOM: Security")
+with Files("tests/client-hints/**"):
+ BUG_COMPONENT = ("Core", "Networking: HTTP")
+
with Files("tests/clipboard-apis/**"):
BUG_COMPONENT = ("Core", "DOM: Copy & Paste and Drag & Drop")
+with Files("tests/close-watcher/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/common/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
@@ -162,18 +183,30 @@ with Files("tests/common/**"):
with Files("tests/compat/**"):
BUG_COMPONENT = ("Core", "Layout")
+with Files("tests/compression/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/conformance-checkers/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
with Files("tests/console/**"):
BUG_COMPONENT = ("DevTools", "Console")
+with Files("tests/content-dpr/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("tests/content-dpr/**"):
+ BUG_COMPONENT = ("Core", "DOM: Editor")
+
with Files("tests/content-security-policy/**"):
BUG_COMPONENT = ("Core", "DOM: Security")
with Files("tests/cookies/**"):
BUG_COMPONENT = ("Core", "Networking: Cookies")
+with Files("tests/cookie-store/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/core-aam/**"):
BUG_COMPONENT = ("Core", "Disability Access APIs")
@@ -405,9 +438,21 @@ with Files("tests/css/selectors/**"):
with Files("tests/custom-elements/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+with Files("tests/device-memory/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("tests/device-posture/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/docs/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
+with Files("tests/document-picture-in-picture/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("tests/document-policy/**"):
+ BUG_COMPONENT = ("Core", "DOM: Security")
+
with Files("tests/dom/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
@@ -423,11 +468,15 @@ with Files("tests/dpub-aam/**"):
with Files("tests/dpub-aria/**"):
BUG_COMPONENT = ("Core", "Disability Access APIs")
+with Files("tests/ecmascript/**"):
+ BUG_COMPONENT = ("Core", "JavaScript Engine")
+
with Files("tests/editing/**"):
BUG_COMPONENT = ("Core", "DOM: Editor")
with Files("tests/element-timing/**"):
BUG_COMPONENT = ("Core", "DOM: Performance")
+
# as per Bug 746911
with Files("tests/encoding/**"):
BUG_COMPONENT = ("Core", "Internationalization")
@@ -444,18 +493,33 @@ with Files("tests/entries-api/**"):
with Files("tests/eventsource/**"):
BUG_COMPONENT = ("Core", "DOM: Events")
+with Files("tests/event-timing/**"):
+ BUG_COMPONENT = ("Core", "DOM: Performance")
+
with Files("tests/feature-policy/**"):
BUG_COMPONENT = ("Core", "DOM: Security")
+with Files("tests/fenced-frame/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/fetch/**"):
BUG_COMPONENT = ("Core", "DOM: Networking")
+with Files("tests/file-system-access/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("tests/focus/**"):
+ BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
+
with Files("tests/fonts/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
with Files("tests/fonts/math/**"):
BUG_COMPONENT = ("Core", "MathML")
+with Files("tests/forced-colors-mode/**"):
+ BUG_COMPONENT = ("Core", "CSS Parsing and Computation")
+
with Files("tests/fs/**"):
BUG_COMPONENT = ("Core", "DOM: File")
@@ -465,9 +529,21 @@ with Files("tests/fullscreen/**"):
with Files("tests/gamepad/**"):
BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+with Files("tests/generic-sensor/**"):
+ BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("tests/geolocation-sensor/**"):
+ BUG_COMPONENT = ("Core", "DOM: Geolocation")
+
with Files("tests/geolocation-API/**"):
BUG_COMPONENT = ("Core", "DOM: Geolocation")
+with Files("tests/graphics-aam/**"):
+ BUG_COMPONENT = ("Core", "Disability Access APIs")
+
+with Files("tests/graphics-aria/**"):
+ BUG_COMPONENT = ("Core", "Disability Access APIs")
+
with Files("tests/gyroscope/**"):
BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
@@ -477,6 +553,9 @@ with Files("tests/hr-time/**"):
with Files("tests/html/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+with Files("tests/html-aam/**"):
+ BUG_COMPONENT = ("Core", "Disability Access APIs")
+
with Files("tests/html/canvas/**"):
BUG_COMPONENT = ("Core", "Graphics: Canvas2D")
@@ -487,6 +566,12 @@ with Files("tests/html-longdesc/**"):
with Files("tests/html-media-capture/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+with Files("tests/https-upgrades/**"):
+ BUG_COMPONENT = ("Core", "DOM: Security")
+
+with Files("tests/idle-detection/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/imagebitmap-renderingcontext/**"):
BUG_COMPONENT = ("Core", "Graphics: Canvas2D")
@@ -499,6 +584,9 @@ with Files("tests/import-maps/**"):
with Files("tests/infrastructure/**"):
BUG_COMPONENT = ("Testing", "web-platform-tests")
+with Files("tests/inert/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/input-events/**"):
BUG_COMPONENT = ("Core", "DOM: Events")
@@ -530,11 +618,15 @@ with Files("tests/largest-contentful-paint/**"):
with Files("tests/layout-instability/**"):
BUG_COMPONENT = ("Core", "Layout")
+# early hints as per https://bugzilla.mozilla.org/show_bug.cgi?id=1407355
+with Files("tests/loading/**"):
+ BUG_COMPONENT = ("Core", "Networking: HTTP")
+
# No reference to longtask in bugzilla or codebase
with Files("tests/longtask-timing/**"):
BUG_COMPONENT = ("Core", "DOM: Performance")
-with Files("tests/long-animation-frame /**"):
+with Files("tests/long-animation-frame/**"):
BUG_COMPONENT = ("Core", "DOM: Performance")
# depends on generic-sensor, check bug 1359076
@@ -550,6 +642,9 @@ with Files("tests/media/**"):
with Files("tests/media-capabilities/**"):
BUG_COMPONENT = ("Core", "WebRTC: Audio/Video")
+with Files("tests/media-playback-quality/**"):
+ BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+
with Files("tests/mediasession/**"):
BUG_COMPONENT = ("Core", "Audio/Video: Playback")
@@ -562,7 +657,7 @@ with Files("tests/mediacapture-fromelement/**"):
with Files("tests/mediacapture-image/**"):
BUG_COMPONENT = ("Core", "Audio/Video: Recording")
-with Files("tests/mediacapture-insertable-stream/**"):
+with Files("tests/mediacapture-insertable-streams/**"):
BUG_COMPONENT = ("Core", "Audio/Video: MediaStreamGraph")
with Files("tests/mediacapture-record/**"):
@@ -580,6 +675,9 @@ with Files("tests/mimesniff/**"):
with Files("tests/mixed-content/**"):
BUG_COMPONENT = ("Core", "DOM: Security")
+with Files("tests/mst-content-hint/**"):
+ BUG_COMPONENT = ("Core", "WebRTC: Audio/Video")
+
with Files("tests/navigation-api/**"):
BUG_COMPONENT = ("Core", "DOM: Navigation")
@@ -637,12 +735,21 @@ with Files("tests/secure-payment-confirmation/**"):
with Files("tests/performance-timeline/**"):
BUG_COMPONENT = ("Core", "DOM: Performance")
+with Files("tests/permissions/**"):
+ BUG_COMPONENT = ("Core", "DOM: Security")
+
with Files("tests/permissions-policy/**"):
BUG_COMPONENT = ("Core", "DOM: Security")
+with Files("tests/permissions-revoke/**"):
+ BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
with Files("tests/picture-in-picture/**"):
BUG_COMPONENT = ("Toolkit", "Video/Audio Controls")
+with Files("tests/png/**"):
+ BUG_COMPONENT = ("Core", "Graphics: ImageLib")
+
with Files("tests/pointerevents/**"):
BUG_COMPONENT = ("Core", "DOM: Events")
@@ -746,6 +853,9 @@ with Files("tests/svg/**"):
with Files("tests/svg-aam/**"):
BUG_COMPONENT = ("Core", "SVG")
+with Files("tests/timing-entrytypes-registry/**"):
+ BUG_COMPONENT = ("Core", "DOM: Performance")
+
with Files("tests/touch-events/**"):
BUG_COMPONENT = ("Core", "DOM: Events")
@@ -815,9 +925,18 @@ with Files("tests/webdriver/tests/bidi/**"):
with Files("tests/webgl/**"):
BUG_COMPONENT = ("Core", "Graphics: CanvasWebGL")
+with Files("tests/webgl/**"):
+ BUG_COMPONENT = ("Core", "Graphics: WebGPU")
+
+with Files("tests/webidl/ecmascript-binding/**"):
+ BUG_COMPONENT = ("Core", "DOM: Bindings (WebIDL)")
+
with Files("tests/webmessaging/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+with Files("tests/webmidi/**"):
+ BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
with Files("tests/web-locks/**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
@@ -833,6 +952,9 @@ with Files("tests/webrtc-encoded-transform/**"):
with Files("tests/webrtc-extensions/**"):
BUG_COMPONENT = ("Core", "WebRTC")
+with Files("tests/webrtc-ice/**"):
+ BUG_COMPONENT = ("Core", "WebRTC: Networking")
+
with Files("tests/webrtc-identity/**"):
BUG_COMPONENT = ("Core", "WebRTC")
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/__dir__.ini b/testing/web-platform/mozilla/meta/webgpu/cts/__dir__.ini
new file mode 100644
index 0000000000..2ef043b928
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: backlog
diff --git a/testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.http.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.http.html.ini
index 5f07c5025b..5f07c5025b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.http.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.http.html.ini
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.https.html.ini
new file mode 100644
index 0000000000..23c70c2667
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/idl/exposed.https.html.ini
@@ -0,0 +1,2 @@
+[exposed.https.html]
+ expected: TIMEOUT
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html.ini
index 75c857b164..1bc4db9e50 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html.ini
@@ -195,6 +195,124 @@
if os == "win": [PASS, FAIL]
+[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,out_of_range:*]
+ expected:
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ [:limit="maxBindGroups"]
+
+ [:limit="maxBindGroupsPlusVertexBuffers"]
+
+ [:limit="maxBindingsPerBindGroup"]
+
+ [:limit="maxBufferSize"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxColorAttachmentBytesPerSample"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxColorAttachments"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeInvocationsPerWorkgroup"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeWorkgroupSizeX"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeWorkgroupSizeY"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeWorkgroupSizeZ"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeWorkgroupStorageSize"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxComputeWorkgroupsPerDimension"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxDynamicStorageBuffersPerPipelineLayout"]
+
+ [:limit="maxDynamicUniformBuffersPerPipelineLayout"]
+
+ [:limit="maxInterStageShaderComponents"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxInterStageShaderVariables"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxSampledTexturesPerShaderStage"]
+
+ [:limit="maxSamplersPerShaderStage"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxStorageBufferBindingSize"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxStorageBuffersPerShaderStage"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxStorageTexturesPerShaderStage"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxTextureArrayLayers"]
+
+ [:limit="maxTextureDimension1D"]
+
+ [:limit="maxTextureDimension2D"]
+
+ [:limit="maxTextureDimension3D"]
+
+ [:limit="maxUniformBufferBindingSize"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxUniformBuffersPerShaderStage"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxVertexAttributes"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxVertexBufferArrayStride"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="maxVertexBuffers"]
+ expected:
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limit="minStorageBufferOffsetAlignment"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:limit="minUniformBufferOffsetAlignment"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,worse_than_default:*]
[:limit="maxBindGroups"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini
index 97ee441f72..6507306d25 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini
@@ -1,4 +1,7 @@
[cts.https.html?q=webgpu:api,operation,buffers,map:mapAsync,mapState:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:usageType="invalid";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false]
expected: FAIL
@@ -175,101 +178,235 @@
expected: FAIL
[:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,buffers,map:mapAsync,read,typedArrayAccess:*]
@@ -289,24 +426,23 @@
[:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="default-expand"]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="explicit-expand"]
expected:
- if os == "win": FAIL
+ if os == "win": [PASS, FAIL]
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="minimal"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="default-expand"]
@@ -318,19 +454,19 @@
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="explicit-expand"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="minimal"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,buffers,map:mapAsync,read:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
[:mapAsyncRegionLeft="default-expand";mapAsyncRegionRight="default-expand"]
expected: FAIL
@@ -354,34 +490,34 @@
[:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="explicit-expand"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, FAIL]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="minimal"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="default-expand"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="explicit-expand"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="minimal"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_ArrayBuffer/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_ArrayBuffer/cts.https.html.ini
index 6652c34315..cd1f2b5d2b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_ArrayBuffer/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_ArrayBuffer/cts.https.html.ini
@@ -1,13 +1,28 @@
[cts.https.html?q=webgpu:api,operation,buffers,map_ArrayBuffer:postMessage:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:transfer=false;mapMode="READ"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:transfer=false;mapMode="WRITE"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:transfer=true;mapMode="READ"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:transfer=true;mapMode="WRITE"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_detach/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_detach/cts.https.html.ini
index 0a3b24a8ea..6b77a24738 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_detach/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map_detach/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,operation,buffers,map_detach:while_mapped:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini
index 75b97ac86a..0c0d55decd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini
@@ -1,8 +1,9 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,basic:b2t2b:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,command_buffer,basic:b2t2t2b:*]
@@ -11,11 +12,11 @@
[:]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,command_buffer,basic:empty:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini
index 59495203e8..02b2b9be0b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini
@@ -1,227 +1,285 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,compressed,array:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bc1-rgba-unorm";dstFormat="bc1-rgba-unorm";dimension="2d"]
expected:
@@ -255,387 +313,520 @@
[:srcFormat="bc2-rgba-unorm-srgb";dstFormat="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc2-rgba-unorm-srgb";dstFormat="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm";dstFormat="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm";dstFormat="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm-srgb";dstFormat="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
[:srcFormat="bc3-rgba-unorm-srgb";dstFormat="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc4-r-snorm";dstFormat="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc4-r-unorm";dstFormat="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc5-rg-snorm";dstFormat="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc5-rg-unorm";dstFormat="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc6h-rgb-float";dstFormat="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc6h-rgb-ufloat";dstFormat="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="eac-r11snorm";dstFormat="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-r11unorm";dstFormat="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-rg11snorm";dstFormat="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-rg11unorm";dstFormat="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,compressed,non_array:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bc1-rgba-unorm";dstFormat="bc1-rgba-unorm";dimension="2d"]
expected:
@@ -652,909 +843,1101 @@
[:srcFormat="bc1-rgba-unorm-srgb";dstFormat="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bc2-rgba-unorm";dstFormat="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc2-rgba-unorm";dstFormat="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc2-rgba-unorm-srgb";dstFormat="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc2-rgba-unorm-srgb";dstFormat="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm";dstFormat="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm";dstFormat="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm-srgb";dstFormat="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc3-rgba-unorm-srgb";dstFormat="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc4-r-snorm";dstFormat="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc4-r-unorm";dstFormat="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc5-rg-snorm";dstFormat="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc5-rg-unorm";dstFormat="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc6h-rgb-float";dstFormat="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="bc6h-rgb-ufloat";dstFormat="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="eac-r11snorm";dstFormat="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-r11unorm";dstFormat="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-rg11snorm";dstFormat="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="eac-rg11unorm";dstFormat="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,non_compressed,array:*]
expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16float";dstFormat="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16float";dstFormat="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16sint";dstFormat="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16sint";dstFormat="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16uint";dstFormat="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r16uint";dstFormat="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32float";dstFormat="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32float";dstFormat="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32sint";dstFormat="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32sint";dstFormat="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32uint";dstFormat="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r32uint";dstFormat="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="r8sint";dstFormat="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8sint";dstFormat="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcFormat="r8snorm";dstFormat="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8snorm";dstFormat="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcFormat="r8uint";dstFormat="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8uint";dstFormat="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcFormat="r8unorm";dstFormat="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8unorm";dstFormat="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcFormat="rg11b10ufloat";dstFormat="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg11b10ufloat";dstFormat="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16float";dstFormat="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16float";dstFormat="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16sint";dstFormat="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16sint";dstFormat="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16uint";dstFormat="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg16uint";dstFormat="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32float";dstFormat="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32float";dstFormat="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32sint";dstFormat="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32sint";dstFormat="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32uint";dstFormat="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg32uint";dstFormat="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rg8sint";dstFormat="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8sint";dstFormat="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rg8snorm";dstFormat="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8snorm";dstFormat="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rg8uint";dstFormat="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8uint";dstFormat="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rg8unorm";dstFormat="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8unorm";dstFormat="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2uint";dstFormat="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2uint";dstFormat="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2unorm";dstFormat="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2unorm";dstFormat="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgb9e5ufloat";dstFormat="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgb9e5ufloat";dstFormat="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16float";dstFormat="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16float";dstFormat="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16sint";dstFormat="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16sint";dstFormat="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16uint";dstFormat="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba16uint";dstFormat="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32float";dstFormat="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32float";dstFormat="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32sint";dstFormat="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32sint";dstFormat="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32uint";dstFormat="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba32uint";dstFormat="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:srcFormat="rgba8sint";dstFormat="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8sint";dstFormat="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8snorm";dstFormat="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8snorm";dstFormat="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8uint";dstFormat="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8uint";dstFormat="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,non_compressed,non_array:*]
expected:
+ if os == "win" and debug: TIMEOUT
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm";dstFormat="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="bgra8unorm-srgb";dstFormat="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16float";dstFormat="r16float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16float";dstFormat="r16float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16float";dstFormat="r16float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16sint";dstFormat="r16sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16sint";dstFormat="r16sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16sint";dstFormat="r16sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16uint";dstFormat="r16uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16uint";dstFormat="r16uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r16uint";dstFormat="r16uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32float";dstFormat="r32float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32float";dstFormat="r32float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="r32float";dstFormat="r32float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32sint";dstFormat="r32sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32sint";dstFormat="r32sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32sint";dstFormat="r32sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32uint";dstFormat="r32uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32uint";dstFormat="r32uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r32uint";dstFormat="r32uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8sint";dstFormat="r8sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8sint";dstFormat="r8sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8sint";dstFormat="r8sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8snorm";dstFormat="r8snorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="r8snorm";dstFormat="r8snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="r8snorm";dstFormat="r8snorm";dimension="3d"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="r8uint";dstFormat="r8uint";dimension="1d"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:srcFormat="r8uint";dstFormat="r8uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8uint";dstFormat="r8uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="r8unorm";dstFormat="r8unorm";dimension="1d"]
expected:
@@ -1563,556 +1946,689 @@
[:srcFormat="r8unorm";dstFormat="r8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
[:srcFormat="r8unorm";dstFormat="r8unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
[:srcFormat="rg11b10ufloat";dstFormat="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg11b10ufloat";dstFormat="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg11b10ufloat";dstFormat="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16float";dstFormat="rg16float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16float";dstFormat="rg16float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16float";dstFormat="rg16float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16sint";dstFormat="rg16sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16sint";dstFormat="rg16sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16sint";dstFormat="rg16sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16uint";dstFormat="rg16uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16uint";dstFormat="rg16uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg16uint";dstFormat="rg16uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32float";dstFormat="rg32float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32float";dstFormat="rg32float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rg32float";dstFormat="rg32float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32sint";dstFormat="rg32sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32sint";dstFormat="rg32sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32sint";dstFormat="rg32sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32uint";dstFormat="rg32uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32uint";dstFormat="rg32uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg32uint";dstFormat="rg32uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8sint";dstFormat="rg8sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8sint";dstFormat="rg8sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8sint";dstFormat="rg8sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8snorm";dstFormat="rg8snorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8snorm";dstFormat="rg8snorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8snorm";dstFormat="rg8snorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8uint";dstFormat="rg8uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8uint";dstFormat="rg8uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8uint";dstFormat="rg8uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8unorm";dstFormat="rg8unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8unorm";dstFormat="rg8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rg8unorm";dstFormat="rg8unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2uint";dstFormat="rgb10a2uint";dimension="1d"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2uint";dstFormat="rgb10a2uint";dimension="2d"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2uint";dstFormat="rgb10a2uint";dimension="3d"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2unorm";dstFormat="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2unorm";dstFormat="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb10a2unorm";dstFormat="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb9e5ufloat";dstFormat="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb9e5ufloat";dstFormat="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgb9e5ufloat";dstFormat="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16float";dstFormat="rgba16float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16float";dstFormat="rgba16float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16float";dstFormat="rgba16float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16sint";dstFormat="rgba16sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16sint";dstFormat="rgba16sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16sint";dstFormat="rgba16sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16uint";dstFormat="rgba16uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16uint";dstFormat="rgba16uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba16uint";dstFormat="rgba16uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32float";dstFormat="rgba32float";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32float";dstFormat="rgba32float";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcFormat="rgba32float";dstFormat="rgba32float";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32sint";dstFormat="rgba32sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32sint";dstFormat="rgba32sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32sint";dstFormat="rgba32sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32uint";dstFormat="rgba32uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32uint";dstFormat="rgba32uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba32uint";dstFormat="rgba32uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8sint";dstFormat="rgba8sint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8sint";dstFormat="rgba8sint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8sint";dstFormat="rgba8sint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8snorm";dstFormat="rgba8snorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8snorm";dstFormat="rgba8snorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8snorm";dstFormat="rgba8snorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8uint";dstFormat="rgba8uint";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8uint";dstFormat="rgba8uint";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8uint";dstFormat="rgba8uint";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm";dstFormat="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormat="rgba8unorm-srgb";dstFormat="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:copy_depth_stencil:*]
expected:
if os == "win": [OK, ERROR]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:format="depth16unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth24plus"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth24plus-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="stencil8"]
expected: FAIL
@@ -2130,6 +2646,9 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:zero_sized:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini
index da2bab89fa..00a57e11b6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini
@@ -1,1033 +1,1255 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:mip_levels:*]
expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
@@ -1064,58 +1286,86 @@
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
@@ -1150,82 +1400,122 @@
if os == "win": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
@@ -1234,14 +1524,17 @@
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
@@ -1262,3074 +1555,4085 @@
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes:*]
expected:
if os == "win" and not debug: [OK, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_depth_stencil:*]
expected:
if os == "win": [OK, ERROR]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:format="depth16unorm";copyMethod="CopyT2B";aspect="depth-only"]
expected: FAIL
[:format="depth24plus-stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth24plus-stencil8";copyMethod="CopyT2B";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth24plus-stencil8";copyMethod="WriteTexture";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float";copyMethod="CopyT2B";aspect="depth-only"]
expected: FAIL
[:format="depth32float-stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float-stencil8";copyMethod="CopyT2B";aspect="depth-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float-stencil8";copyMethod="CopyT2B";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="depth32float-stencil8";copyMethod="WriteTexture";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
expected: FAIL
@@ -4348,12 +5652,14 @@
expected:
if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
@@ -4361,6 +5667,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
@@ -4368,6 +5675,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
@@ -4375,6 +5683,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
@@ -4382,6 +5691,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
@@ -4389,6 +5699,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
@@ -4396,6 +5707,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
@@ -4403,6 +5715,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
@@ -4410,6 +5723,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
@@ -4417,6 +5731,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
@@ -4424,6 +5739,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
@@ -4431,6 +5747,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
@@ -4438,6 +5755,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
@@ -4445,6 +5763,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
@@ -4452,6 +5771,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
@@ -4459,6 +5779,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
@@ -4466,6 +5787,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
@@ -4473,6 +5795,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
@@ -4480,6 +5803,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
@@ -4487,6 +5811,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
@@ -4494,6 +5819,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
@@ -4501,6 +5827,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
@@ -4508,6 +5835,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
@@ -4515,6 +5843,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
@@ -4522,6 +5851,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
@@ -4529,6 +5859,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
@@ -4536,6 +5867,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
@@ -4543,6 +5875,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
@@ -4550,6 +5883,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
@@ -4557,6 +5891,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
@@ -4564,6 +5899,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
@@ -4571,6 +5907,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
@@ -4578,6 +5915,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
@@ -4585,6 +5923,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
@@ -4592,6 +5931,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
@@ -4599,6 +5939,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
@@ -4606,6 +5947,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
@@ -4613,6 +5955,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
@@ -4620,6 +5963,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
@@ -4627,6 +5971,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
@@ -4634,6 +5979,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
@@ -4641,26 +5987,31 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
@@ -4668,6 +6019,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
@@ -4675,6 +6027,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
@@ -4682,7 +6035,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
@@ -4690,6 +6043,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
@@ -4697,6 +6051,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
@@ -4704,6 +6059,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
@@ -4711,6 +6067,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
@@ -4718,6 +6075,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
@@ -4725,6 +6083,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
@@ -4732,6 +6091,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
@@ -4739,6 +6099,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
@@ -4746,6 +6107,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
@@ -4753,6 +6115,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
@@ -4760,6 +6123,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
@@ -4767,6 +6131,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
@@ -4774,7 +6139,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
@@ -4782,6 +6147,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
@@ -4789,6 +6155,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
@@ -4796,7 +6163,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
@@ -4804,6 +6171,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
@@ -4811,6 +6179,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
@@ -4818,7 +6187,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
@@ -4826,6 +6195,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
@@ -4833,6 +6203,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
@@ -4840,7 +6211,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
@@ -4848,6 +6219,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
@@ -4855,6 +6227,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
@@ -4862,7 +6235,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
@@ -4870,6 +6243,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
@@ -4877,6 +6251,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
@@ -4884,87 +6259,91 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
@@ -4972,6 +6351,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
@@ -4979,6 +6359,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
@@ -4986,7 +6367,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
@@ -4994,6 +6375,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
@@ -5001,6 +6383,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
@@ -5008,7 +6391,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
@@ -5016,6 +6399,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
@@ -5023,6 +6407,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
@@ -5030,7 +6415,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
@@ -5038,6 +6423,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
@@ -5045,6 +6431,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
@@ -5052,7 +6439,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
@@ -5060,6 +6447,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
@@ -5067,6 +6455,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
@@ -5074,7 +6463,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
@@ -5082,6 +6471,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
@@ -5089,6 +6479,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
@@ -5096,7 +6487,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
@@ -5104,6 +6495,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
@@ -5111,6 +6503,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
@@ -5118,87 +6511,91 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
@@ -5206,7 +6603,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
@@ -5214,7 +6611,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
@@ -5222,7 +6619,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
@@ -5230,6 +6627,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
@@ -5237,6 +6635,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
@@ -5244,7 +6643,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
@@ -5252,6 +6651,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
@@ -5259,6 +6659,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
@@ -5266,7 +6667,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
@@ -5274,6 +6675,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
@@ -5281,6 +6683,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
@@ -5288,7 +6691,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
@@ -5296,6 +6699,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
@@ -5303,6 +6707,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
@@ -5310,7 +6715,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
@@ -5318,6 +6723,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
@@ -5325,6 +6731,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
@@ -5332,7 +6739,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
@@ -5340,6 +6747,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
@@ -5347,6 +6755,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
@@ -5354,7 +6763,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
@@ -5362,6 +6771,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
@@ -5369,6 +6779,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
@@ -5376,7 +6787,7 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
@@ -5384,6 +6795,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
@@ -5391,6 +6803,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
@@ -5398,1936 +6811,2228 @@
if os == "win": FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow:*]
expected:
if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
@@ -7335,6 +9040,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
@@ -7342,6 +9048,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
@@ -7349,6 +9056,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
@@ -7356,6 +9064,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
@@ -7363,6 +9072,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
@@ -7370,6 +9080,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
@@ -7377,6 +9088,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
@@ -7384,6 +9096,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
@@ -7391,6 +9104,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
@@ -7398,6 +9112,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
@@ -7405,6 +9120,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
@@ -7412,6 +9128,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
@@ -7419,6 +9136,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
@@ -7426,6 +9144,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
@@ -7433,6 +9152,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
@@ -7440,6 +9160,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
@@ -7447,6 +9168,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
@@ -7454,6 +9176,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
@@ -7461,6 +9184,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
@@ -7468,6 +9192,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
@@ -7475,6 +9200,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
@@ -7482,6 +9208,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
@@ -7489,6 +9216,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
@@ -7496,6 +9224,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
@@ -7503,6 +9232,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
@@ -7510,6 +9240,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
@@ -7517,6 +9248,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
@@ -7524,6 +9256,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
@@ -7531,6 +9264,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
@@ -7538,6 +9272,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
@@ -7545,6 +9280,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
@@ -7552,6 +9288,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
@@ -7559,6 +9296,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
@@ -7566,6 +9304,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
@@ -7573,6 +9312,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
@@ -7580,6 +9320,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
@@ -7587,6 +9328,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
@@ -7594,6 +9336,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
@@ -7601,6 +9344,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
@@ -7608,6 +9352,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
@@ -7615,42 +9360,49 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
@@ -7658,6 +9410,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
@@ -7665,6 +9418,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
@@ -7672,6 +9426,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
@@ -7679,6 +9434,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
@@ -7686,6 +9442,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
@@ -7693,6 +9450,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
@@ -7700,6 +9458,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
@@ -7707,6 +9466,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
@@ -7714,6 +9474,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
@@ -7721,186 +9482,234 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
@@ -7908,6 +9717,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
@@ -7915,6 +9725,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
@@ -7922,222 +9733,275 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
@@ -8145,6 +10009,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
@@ -8152,6 +10017,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
@@ -8159,6 +10025,7 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
@@ -8166,498 +10033,783 @@
if os == "win": FAIL
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc4-r-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc5-rg-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8unorm";dimension="1d"]
expected: FAIL
@@ -8669,1327 +10821,1624 @@
expected: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg11b10ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb10a2unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgb9e5ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_depth_stencil:*]
expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win" and not debug: [OK, ERROR]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:format="depth16unorm";copyMethod="CopyT2B";aspect="depth-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="depth24plus-stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="depth24plus-stencil8";copyMethod="CopyT2B";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="depth24plus-stencil8";copyMethod="WriteTexture";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="depth32float";copyMethod="CopyT2B";aspect="depth-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="depth32float-stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="depth32float-stencil8";copyMethod="CopyT2B";aspect="depth-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="depth32float-stencil8";copyMethod="CopyT2B";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="depth32float-stencil8";copyMethod="WriteTexture";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="stencil8";copyMethod="CopyB2T";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="stencil8";copyMethod="CopyT2B";aspect="stencil-only"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="stencil8";copyMethod="WriteTexture";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,command_buffer,image_copy:undefined_params:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:initMethod="CopyB2T";checkMethod="FullCopyT2B";dimension="1d"]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini
index cf086bff00..433acaedf7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_before_pipeline:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13,6 +15,8 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_indices:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win": [PASS, FAIL]
@@ -27,6 +31,8 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_multiple_sets:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -41,6 +47,8 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_order:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win": [PASS, FAIL]
@@ -55,6 +63,8 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:compatible_pipelines:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -69,6 +79,8 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:one_bind_group_multiple_slots:*]
+ expected:
+ if os == "mac": SKIP
[:encoderType="compute%20pass"]
expected:
if os == "win" and debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/queries/occlusionQuery/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/queries/occlusionQuery/cts.https.html.ini
index 65fd4acfb4..214992ce7a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/queries/occlusionQuery/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/queries/occlusionQuery/cts.https.html.ini
@@ -1,33 +1,76 @@
[cts.https.html?q=webgpu:api,operation,command_buffer,queries,occlusionQuery:occlusion_query,alpha_to_coverage:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="non-zero";querySetOffset="zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="zero";querySetOffset="non-zero";alpha=0]
expected: FAIL
@@ -42,7 +85,11 @@
expected: FAIL
[:writeMask=0;renderMode="direct";bufferOffset="zero";querySetOffset="non-zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="direct";bufferOffset="zero";querySetOffset="zero";alpha=0]
expected: FAIL
@@ -60,64 +107,149 @@
expected: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="non-zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="non-zero";querySetOffset="zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="non-zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="non-zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="non-zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="non-zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="non-zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="zero";alpha=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="zero";alpha=0.25]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="zero";alpha=0.5]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="zero";alpha=0.75]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=0;renderMode="render-bundle";bufferOffset="zero";querySetOffset="zero";alpha=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:writeMask=15;renderMode="direct";bufferOffset="non-zero";querySetOffset="non-zero";alpha=0]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini
index b922b54ded..3601f96b4f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini
@@ -1,7 +1,10 @@
[cts.https.html?q=webgpu:api,operation,compute,basic:large_dispatch:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
[:dispatchSize="maximum"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:dispatchSize=2048]
expected:
@@ -10,6 +13,7 @@
[:dispatchSize=2179]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dispatchSize=256]
expected:
@@ -22,6 +26,7 @@
[:dispatchSize=628]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,compute,basic:memcpy:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini
index 2a8a70946c..610722b8e8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini
@@ -1,9 +1,7 @@
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:basic:*]
[:isAsync=false]
- expected: FAIL
[:isAsync=true]
- expected: FAIL
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:multi_entry_points:*]
@@ -16,37 +14,45 @@
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:numeric_id:*]
[:isAsync=false]
- expected: FAIL
[:isAsync=true]
- expected: FAIL
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:precision:*]
[:isAsync=false]
- expected: FAIL
[:isAsync=true]
- expected: FAIL
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:shared_shader_module:*]
[:isAsync=false]
- expected: FAIL
[:isAsync=true]
- expected: FAIL
[cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:workgroup_size:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:isAsync=false;type="i32";size=16;v="x"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="i32";size=16;v="y"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="i32";size=16;v="z"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="i32";size=3;v="x"]
expected: FAIL
@@ -58,13 +64,25 @@
expected: FAIL
[:isAsync=false;type="i32";size=64;v="x"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="i32";size=64;v="y"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="i32";size=64;v="z"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;type="u32";size=16;v="x"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini
index 23122127d9..78c56c471a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini
@@ -22,416 +22,381 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,multiple_buffers:rw:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
@@ -469,6 +434,7 @@
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
@@ -484,677 +450,654 @@
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
-
- [:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,multiple_buffers:wr:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: [TIMEOUT, CRASH]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="pass";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
@@ -1188,18 +1131,23 @@
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
@@ -1207,294 +1155,381 @@
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
-
- [:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,multiple_buffers:ww:*]
- expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:boundary="command-buffer";writeOps=["b2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="dispatch";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="pass";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["b2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
@@ -1503,14 +1538,20 @@
[:boundary="queue-op";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["b2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
@@ -1522,63 +1563,94 @@
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["compute-pass-encoder","queue"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["render-bundle-encoder","queue"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["render-pass-encoder","queue"\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","write-buffer"\];contexts=["command-encoder","queue"\]]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini
index 33a33a4aff..6c87a1bbf9 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini
@@ -1,222 +1,145 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,single_buffer:rw:*]
- expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
@@ -243,58 +166,73 @@
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="write-buffer";writeContext="queue"]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected: FAIL
@@ -315,40 +253,65 @@
expected: FAIL
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected: FAIL
@@ -363,19 +326,42 @@
expected: FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
expected: FAIL
@@ -394,218 +380,147 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,single_buffer:wr:*]
- expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2b-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="command-buffer";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="dispatch";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="pass";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="b2b-copy";readContext="command-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
@@ -632,46 +547,73 @@
[:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="write-buffer";writeContext="queue"]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="constant-uniform";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
expected: FAIL
@@ -692,94 +634,195 @@
expected: FAIL
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-indirect-index";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, FAIL]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[cts.https.html?q=webgpu:api,operation,memory_sync,buffer,single_buffer:ww:*]
+ expected: TIMEOUT
[:boundary="command-buffer";writeOps=["b2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["b2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","b2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["storage","t2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","compute-pass-encoder"\]]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="command-buffer";writeOps=["t2b-copy","t2b-copy"\];contexts=["command-encoder","command-encoder"\]]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="dispatch";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="pass";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
+ expected: [TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["b2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
@@ -794,24 +837,50 @@
[:boundary="queue-op";writeOps=["b2b-copy","write-buffer"\];contexts=["command-encoder","queue"\]]
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","b2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","storage"\];contexts=["compute-pass-encoder","compute-pass-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["compute-pass-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["render-bundle-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["compute-pass-encoder","queue"\]]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["render-bundle-encoder","queue"\]]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["render-pass-encoder","queue"\]]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";writeOps=["t2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html.ini
new file mode 100644
index 0000000000..bfddf7fd0d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html.ini
@@ -0,0 +1,48 @@
+[cts.https.html?q=webgpu:api,operation,memory_sync,texture,readonly_depth_stencil:sampling_while_testing:*]
+ [:format="depth16unorm";depthReadOnly=false;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth16unorm";depthReadOnly=true;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth24plus";depthReadOnly=false;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth24plus";depthReadOnly=true;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth24plus-stencil8";depthReadOnly=false;stencilReadOnly=false]
+ expected: FAIL
+
+ [:format="depth24plus-stencil8";depthReadOnly=false;stencilReadOnly=true]
+ expected: FAIL
+
+ [:format="depth24plus-stencil8";depthReadOnly=true;stencilReadOnly=false]
+ expected: FAIL
+
+ [:format="depth24plus-stencil8";depthReadOnly=true;stencilReadOnly=true]
+ expected: FAIL
+
+ [:format="depth32float";depthReadOnly=false;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth32float";depthReadOnly=true;stencilReadOnly="_undef_"]
+ expected: FAIL
+
+ [:format="depth32float-stencil8";depthReadOnly=false;stencilReadOnly=false]
+ expected: FAIL
+
+ [:format="depth32float-stencil8";depthReadOnly=false;stencilReadOnly=true]
+ expected: FAIL
+
+ [:format="depth32float-stencil8";depthReadOnly=true;stencilReadOnly=false]
+ expected: FAIL
+
+ [:format="depth32float-stencil8";depthReadOnly=true;stencilReadOnly=true]
+ expected: FAIL
+
+ [:format="stencil8";depthReadOnly="_undef_";stencilReadOnly=false]
+ expected: FAIL
+
+ [:format="stencil8";depthReadOnly="_undef_";stencilReadOnly=true]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini
index cef473d5b1..0bf5d78552 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini
@@ -11,147 +11,163 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,texture,same_subresource:rw:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"render-bundle-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"render-bundle-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"render-pass-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"sample","in":"render-pass-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="dispatch";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="pass";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}]
expected:
@@ -166,8 +182,7 @@
[:boundary="queue-op";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:boundary="queue-op";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"storage","in":"compute-pass-encoder"}]
expected:
@@ -178,14 +193,12 @@
[:boundary="queue-op";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:boundary="queue-op";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:boundary="queue-op";read={"op":"sample","in":"render-bundle-encoder"};write={"op":"b2t-copy","in":"command-encoder"}]
expected:
@@ -310,151 +323,167 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,texture,same_subresource:wr:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"b2t-copy","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"b2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"b2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"b2t-copy","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"b2t-copy","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"render-bundle-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"render-bundle-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"render-pass-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"storage","in":"render-pass-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="dispatch";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="pass";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}]
expected:
@@ -619,280 +648,326 @@
[cts.https.html?q=webgpu:api,operation,memory_sync,texture,same_subresource:ww:*]
+ expected: TIMEOUT
[:boundary="command-buffer";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-store","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-store","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-store","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-store","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"attachment-store","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"render-bundle-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"render-bundle-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"render-pass-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"storage","in":"render-pass-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="command-buffer";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="dispatch";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="pass";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-resolve","in":"command-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"attachment-store","in":"command-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
@@ -910,19 +985,19 @@
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
@@ -940,117 +1015,119 @@
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-bundle-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-bundle-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-bundle-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-pass-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-pass-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"storage","in":"render-pass-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"attachment-store","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"b2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-bundle-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"storage","in":"render-pass-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"t2t-copy","in":"command-encoder"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"t2t-copy","in":"command-encoder"};second={"op":"write-texture","in":"queue"}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:boundary="queue-op";first={"op":"write-texture","in":"queue"};second={"op":"attachment-resolve","in":"command-encoder"}]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/onSubmittedWorkDone/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/onSubmittedWorkDone/cts.https.html.ini
index 09d5ac82a0..529efb9be1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/onSubmittedWorkDone/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/onSubmittedWorkDone/cts.https.html.ini
@@ -12,14 +12,16 @@
[cts.https.html?q=webgpu:api,operation,onSubmittedWorkDone:many,serial:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/reflection/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/reflection/cts.https.html.ini
index 7701a2d358..57096b8dbb 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/reflection/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/reflection/cts.https.html.ini
@@ -1,11 +1,24 @@
+[cts.https.html?q=webgpu:api,operation,reflection:buffer_creation_from_reflection:*]
+ [:]
+
+
[cts.https.html?q=webgpu:api,operation,reflection:buffer_reflection_attributes:*]
[:]
+[cts.https.html?q=webgpu:api,operation,reflection:query_set_creation_from_reflection:*]
+ [:]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:api,operation,reflection:query_set_reflection_attributes:*]
[:]
expected: FAIL
+[cts.https.html?q=webgpu:api,operation,reflection:texture_creation_from_reflection:*]
+ [:]
+
+
[cts.https.html?q=webgpu:api,operation,reflection:texture_reflection_attributes:*]
[:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/clear_value/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/clear_value/cts.https.html.ini
index bc69a2938c..2454d79263 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/clear_value/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/clear_value/cts.https.html.ini
@@ -17,6 +17,8 @@
[cts.https.html?q=webgpu:api,operation,render_pass,clear_value:stencil_clear_value:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stencilFormat="depth24plus-stencil8";stencilClearValue=0;applyStencilClearValueAsStencilReferenceValue=false]
expected: FAIL
@@ -66,16 +68,28 @@
expected: FAIL
[:stencilFormat="depth32float-stencil8";stencilClearValue=258;applyStencilClearValueAsStencilReferenceValue=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stencilFormat="depth32float-stencil8";stencilClearValue=258;applyStencilClearValueAsStencilReferenceValue=true]
expected: FAIL
[:stencilFormat="depth32float-stencil8";stencilClearValue=65539;applyStencilClearValueAsStencilReferenceValue=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stencilFormat="depth32float-stencil8";stencilClearValue=65539;applyStencilClearValueAsStencilReferenceValue=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stencilFormat="stencil8";stencilClearValue=0;applyStencilClearValueAsStencilReferenceValue=false]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini
index dfe92693ef..75044cd9a1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini
@@ -1,4 +1,7 @@
[cts.https.html?q=webgpu:api,operation,render_pass,storeOp:render_pass_store_op,color_attachment_only:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:colorFormat="bgra8unorm";storeOperation="discard"]
expected: FAIL
@@ -30,22 +33,52 @@
expected: FAIL
[:colorFormat="r32float";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r32float";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r32sint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r32sint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r32uint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r32uint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="r8sint";storeOperation="discard"]
expected: FAIL
@@ -84,22 +117,47 @@
expected: FAIL
[:colorFormat="rg32float";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rg32float";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rg32sint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rg32sint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rg32uint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rg32uint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rg8sint";storeOperation="discard"]
expected: FAIL
@@ -120,52 +178,109 @@
expected: FAIL
[:colorFormat="rgb10a2uint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgb10a2uint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgb10a2unorm";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgb10a2unorm";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba16float";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rgba16float";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rgba16sint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rgba16sint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rgba16uint";storeOperation="discard"]
expected: FAIL
[:colorFormat="rgba16uint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:colorFormat="rgba32float";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba32float";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba32sint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba32sint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba32uint";storeOperation="discard"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba32uint";storeOperation="store"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:colorFormat="rgba8sint";storeOperation="discard"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini
index 3a659c8a1c..7d2339c82f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,operation,render_pass,storeop2:storeOp_controls_whether_1x1_drawn_quad_is_stored:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:storeOp="discard"]
[:storeOp="store"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini
index 840a0f7d09..855c3d31c0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini
@@ -1,12 +1,22 @@
[cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:basic:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
- expected: FAIL
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[:isAsync=true]
- expected: FAIL
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:multi_entry_points:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
expected:
if os == "win": FAIL
@@ -23,24 +33,32 @@
[cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:precision:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
- expected: FAIL
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[:isAsync=true]
- expected: FAIL
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:shared_shader_module:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:isAsync=true]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini
index ee3b410542..08c324a2af 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini
@@ -235,6 +235,8 @@
[cts.https.html?q=webgpu:api,operation,render_pipeline,pipeline_output_targets:color,component_count:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
[:format="bgra8unorm"]
[:format="bgra8unorm-srgb"]
@@ -246,10 +248,16 @@
[:format="r16uint"]
[:format="r32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r32uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint"]
@@ -264,10 +272,16 @@
[:format="rg16uint"]
[:format="rg32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg8sint"]
@@ -278,23 +292,32 @@
[:format="rgb10a2uint"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="rgb10a2unorm"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rgba16float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16sint"]
[:format="rgba16uint"]
[:format="rgba32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rgba8sint"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini
index 4fd0532bfb..6cffe2448f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini
@@ -1,5 +1,7 @@
[cts.https.html?q=webgpu:api,operation,render_pipeline,primitive_topology:basic:*]
[:topology="line-list";indirect=false;primitiveRestart=false]
+ expected:
+ if os == "linux" and not debug: [PASS, FAIL]
[:topology="line-list";indirect=true;primitiveRestart=false]
expected:
@@ -76,6 +78,8 @@
if os == "mac": FAIL
[:topology="triangle-list";indirect=false;drawCount=4]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
[:topology="triangle-list";indirect=false;drawCount=5]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini
index 2d195225b0..c860d3b621 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini
@@ -1,6 +1,8 @@
[cts.https.html?q=webgpu:api,operation,render_pipeline,sample_mask:alpha_to_coverage_mask:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:interpolated=false;sampleCount=4;rasterizationMask=0]
expected:
if os == "win": FAIL
@@ -17,44 +19,48 @@
[:interpolated=false;sampleCount=4;rasterizationMask=10]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=11]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=12]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=13]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=14]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=15]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=2]
@@ -67,184 +73,173 @@
[:interpolated=false;sampleCount=4;rasterizationMask=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=4]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=5]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=6]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=7]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=8]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=1]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=10]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=11]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=12]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=13]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=14]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=15]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=2]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=3]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=4]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=5]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=6]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=7]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=8]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[cts.https.html?q=webgpu:api,operation,render_pipeline,sample_mask:fragment_output_mask:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:interpolated=false;sampleCount=1;rasterizationMask=0]
expected:
if os == "win": FAIL
@@ -255,247 +250,214 @@
[:interpolated=false;sampleCount=1;rasterizationMask=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=10]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=11]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=12]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=13]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=14]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=15]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=2]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=4]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=5]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=6]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=7]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=8]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=false;sampleCount=4;rasterizationMask=9]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=1;rasterizationMask=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=1;rasterizationMask=1]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=1]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=10]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=11]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=12]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=13]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=14]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=15]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:interpolated=true;sampleCount=4;rasterizationMask=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=5]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=6]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=7]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=8]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:interpolated=true;sampleCount=4;rasterizationMask=9]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html.ini
new file mode 100644
index 0000000000..7abba61d9b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html.ini
@@ -0,0 +1,34 @@
+[cts.https.html?q=webgpu:api,operation,rendering,3d_texture_slices:multiple_color_attachments,same_mip_level:*]
+ [:sameTexture=false]
+ expected: FAIL
+
+ [:sameTexture=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:api,operation,rendering,3d_texture_slices:multiple_color_attachments,same_slice_with_diff_mip_levels:*]
+ [:depthSlice=0]
+ expected: FAIL
+
+ [:depthSlice=1]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:api,operation,rendering,3d_texture_slices:one_color_attachment,mip_levels:*]
+ [:mipLevel=0;depthSlice=0]
+ expected: FAIL
+
+ [:mipLevel=0;depthSlice=1]
+ expected: FAIL
+
+ [:mipLevel=1;depthSlice=0]
+ expected: FAIL
+
+ [:mipLevel=1;depthSlice=1]
+ expected: FAIL
+
+ [:mipLevel=2;depthSlice=0]
+ expected: FAIL
+
+ [:mipLevel=2;depthSlice=1]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini
index faf75397a7..b8892eaf82 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini
@@ -11,22 +11,27 @@
[cts.https.html?q=webgpu:api,operation,rendering,basic:large_draw:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:indexed=false;indirect=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:indexed=false;indirect=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:indexed=true;indirect=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:indexed=true;indirect=true]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini
index 9ca64bc132..65dd69fc69 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini
@@ -24,11 +24,17 @@
[cts.https.html?q=webgpu:api,operation,rendering,color_target_state:blending,GPUBlendComponent:*]
expected:
- if os == "win" and debug: TIMEOUT
- if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
- if os == "mac": TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:component="alpha";srcFactor="constant";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -53,6 +59,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -77,6 +90,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -101,6 +121,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -125,6 +152,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -149,6 +183,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -173,6 +214,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -197,6 +245,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -221,6 +276,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -245,6 +307,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -269,6 +338,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -293,6 +369,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -317,6 +400,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="constant";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="constant";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -341,6 +431,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -362,6 +459,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -383,6 +487,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -404,6 +515,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -425,6 +543,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -446,6 +571,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -467,6 +599,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -488,6 +627,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -509,6 +655,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -530,6 +683,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -551,6 +711,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -572,6 +739,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -593,6 +767,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -614,6 +795,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -635,6 +823,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -656,6 +851,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -677,6 +879,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -698,6 +907,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -720,6 +936,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -741,6 +964,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -762,6 +992,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -783,6 +1020,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -804,6 +1048,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -825,6 +1076,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -846,6 +1104,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -867,6 +1132,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="dst-alpha";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="dst-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -888,6 +1160,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -906,6 +1185,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -927,6 +1213,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -948,6 +1241,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -983,6 +1283,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1001,6 +1308,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1022,6 +1336,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1043,6 +1364,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1064,6 +1392,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1085,6 +1420,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1106,6 +1448,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1127,6 +1476,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1145,6 +1501,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -1166,6 +1529,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1190,6 +1560,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1214,6 +1591,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1238,6 +1622,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1262,6 +1653,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1286,6 +1684,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1310,6 +1715,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1334,6 +1746,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1358,6 +1777,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1382,6 +1808,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1406,6 +1839,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1430,6 +1870,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1454,6 +1901,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-constant";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-constant";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1478,6 +1932,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1499,6 +1960,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1520,6 +1988,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1541,6 +2016,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1562,6 +2044,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1583,6 +2072,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1604,6 +2100,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1625,6 +2128,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1646,6 +2156,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1667,6 +2184,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1688,6 +2212,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1709,6 +2240,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1730,6 +2268,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1751,6 +2296,13 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1775,6 +2327,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1799,6 +2358,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1823,6 +2389,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1847,6 +2420,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -1871,6 +2451,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1895,6 +2482,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1919,6 +2513,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1943,6 +2544,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1967,6 +2575,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -1991,6 +2606,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2015,6 +2637,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -2039,6 +2668,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-dst-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2063,6 +2699,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2084,6 +2727,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2105,6 +2755,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2126,6 +2783,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2147,6 +2811,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2168,6 +2839,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2189,6 +2867,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2210,6 +2895,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2231,6 +2923,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2252,6 +2951,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2273,6 +2979,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2294,6 +3007,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2315,6 +3035,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2336,6 +3063,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2357,6 +3091,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2378,6 +3119,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2399,6 +3147,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2420,6 +3175,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2441,6 +3203,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2462,6 +3231,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2483,6 +3259,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2504,6 +3287,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2525,6 +3315,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2546,6 +3343,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2567,6 +3371,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2588,6 +3399,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="one-minus-src-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2609,6 +3427,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2630,6 +3455,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2648,6 +3480,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2666,6 +3505,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2684,6 +3530,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2705,6 +3558,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2723,6 +3583,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2741,6 +3608,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2759,6 +3633,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2777,6 +3658,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2795,6 +3683,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2813,6 +3708,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2833,6 +3735,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -2851,6 +3760,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2872,6 +3788,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2893,6 +3816,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2914,6 +3844,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2935,6 +3872,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2956,6 +3900,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2977,6 +3928,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -2998,6 +3956,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3019,6 +3984,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3040,6 +4012,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3061,6 +4040,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3082,6 +4068,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3103,6 +4096,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -3124,6 +4124,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3148,6 +4155,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3172,6 +4186,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3196,6 +4217,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3220,6 +4248,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3244,6 +4279,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3268,6 +4310,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3292,6 +4341,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3316,6 +4372,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3340,6 +4403,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3364,6 +4434,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3388,6 +4465,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3412,6 +4496,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="src-alpha-saturated";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="src-alpha-saturated";dstFactor="zero";operation="add"]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -3436,6 +4527,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3457,6 +4555,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3478,6 +4583,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3499,6 +4611,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3520,6 +4639,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3541,6 +4667,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3562,6 +4695,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3583,6 +4723,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one-minus-src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3604,6 +4751,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3625,6 +4779,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="src"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3646,6 +4807,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="src-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3667,6 +4835,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3688,6 +4863,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="alpha";srcFactor="zero";dstFactor="zero"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="alpha";srcFactor="zero";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3709,6 +4891,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3727,6 +4912,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3745,6 +4933,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3763,6 +4954,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3781,6 +4975,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3801,6 +4998,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3819,6 +5019,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3837,6 +5040,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3855,6 +5061,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3873,6 +5082,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3891,6 +5103,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3909,6 +5124,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3927,6 +5145,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="constant";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="constant";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -3945,6 +5166,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -3963,6 +5187,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -3981,6 +5208,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -3999,6 +5229,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4017,6 +5250,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4035,6 +5271,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4053,6 +5292,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4071,6 +5313,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4089,6 +5334,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4107,6 +5355,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4125,6 +5376,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4143,6 +5397,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4161,6 +5418,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4179,6 +5439,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4197,6 +5460,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4215,6 +5481,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4233,6 +5502,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4251,6 +5523,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4269,6 +5544,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4287,6 +5565,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4305,6 +5586,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4323,6 +5607,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4341,6 +5628,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4359,6 +5649,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4377,6 +5670,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4395,6 +5691,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="dst-alpha";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="dst-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4413,6 +5712,10 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one";dstFactor="constant"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4425,6 +5728,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="dst"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4437,6 +5744,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="dst-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4449,6 +5760,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4469,6 +5784,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one-minus-constant"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4481,6 +5800,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one-minus-dst"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4493,6 +5816,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4505,6 +5832,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one-minus-src"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4517,6 +5848,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4529,6 +5864,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="src"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4541,6 +5880,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="src-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4553,6 +5896,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4565,6 +5912,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one";dstFactor="zero"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4577,6 +5928,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4598,6 +5956,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="dst"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4619,6 +5980,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4640,6 +6008,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4661,6 +6032,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4682,6 +6060,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4703,6 +6088,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4724,6 +6116,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-src"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4745,6 +6140,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-src-alpha"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4766,6 +6164,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="src"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4787,6 +6188,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="src-alpha"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4808,6 +6212,13 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4829,6 +6240,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-constant";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-constant";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4850,6 +6264,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4868,6 +6285,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -4886,6 +6306,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4904,6 +6327,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4922,6 +6348,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4940,6 +6369,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -4958,6 +6390,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4976,6 +6411,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4994,6 +6432,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -5012,6 +6453,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5030,6 +6474,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -5048,6 +6495,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5066,6 +6516,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5084,6 +6537,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5102,6 +6558,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5120,6 +6579,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5138,6 +6600,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5156,6 +6621,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5174,6 +6642,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5192,6 +6663,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5210,6 +6684,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5228,6 +6705,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5246,6 +6726,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5264,6 +6747,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5282,6 +6768,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5300,6 +6789,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-dst-alpha";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-dst-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5318,6 +6810,11 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src";dstFactor="constant"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5330,6 +6827,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="dst"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5342,6 +6844,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="dst-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5354,6 +6861,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5366,6 +6878,12 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-constant"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5378,6 +6896,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-dst"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5390,6 +6913,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5402,6 +6930,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-src"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5414,6 +6947,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5426,6 +6964,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="src"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5438,6 +6981,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="src-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5450,6 +6998,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5462,6 +7015,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src";dstFactor="zero"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5474,6 +7032,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5492,6 +7053,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="dst"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5507,6 +7075,9 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5522,6 +7093,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5537,6 +7115,9 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5555,6 +7136,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5570,6 +7154,9 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5586,6 +7173,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5601,6 +7195,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5616,6 +7217,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="src"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5631,6 +7239,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5646,6 +7261,9 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5664,6 +7282,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="zero"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="one-minus-src-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5679,6 +7304,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src";dstFactor="constant"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5691,6 +7322,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="dst"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5703,6 +7338,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="dst-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5715,6 +7354,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5727,6 +7370,12 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one-minus-constant"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5739,6 +7388,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one-minus-dst"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5751,6 +7404,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5763,6 +7421,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one-minus-src"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5775,6 +7437,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5787,6 +7453,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="src"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5799,6 +7469,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="src-alpha"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5811,6 +7485,11 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5823,6 +7502,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src";dstFactor="zero"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5835,6 +7518,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="src-alpha";dstFactor="constant"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5850,6 +7540,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="dst"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5865,6 +7561,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="dst-alpha"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5880,6 +7582,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5895,6 +7602,13 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-constant"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5910,6 +7624,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-dst"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5925,6 +7645,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-dst-alpha"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5940,6 +7666,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-src"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5955,6 +7686,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-src-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5970,6 +7706,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="src"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5985,6 +7726,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="src-alpha"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6000,6 +7746,12 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="src-alpha-saturated"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6015,6 +7767,11 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha";dstFactor="zero"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6030,6 +7787,9 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6048,6 +7808,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6066,6 +7829,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6084,6 +7850,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6102,6 +7871,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-constant"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6120,6 +7892,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6138,6 +7913,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6156,6 +7934,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6174,6 +7955,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6192,6 +7976,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="src"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6210,6 +7997,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="src-alpha"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6228,6 +8018,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="src-alpha-saturated"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6246,6 +8039,9 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="src-alpha-saturated";dstFactor="zero"]
+ expected: [TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="src-alpha-saturated";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6264,6 +8060,8 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:component="color";srcFactor="zero";dstFactor="constant"]
+
[:component="color";srcFactor="zero";dstFactor="constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6276,6 +8074,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="dst"]
+
[:component="color";srcFactor="zero";dstFactor="dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6288,6 +8088,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="dst-alpha"]
+
[:component="color";srcFactor="zero";dstFactor="dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6300,6 +8102,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one"]
+
[:component="color";srcFactor="zero";dstFactor="one";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6312,6 +8116,10 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one-minus-constant"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:component="color";srcFactor="zero";dstFactor="one-minus-constant";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6324,6 +8132,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one-minus-dst"]
+
[:component="color";srcFactor="zero";dstFactor="one-minus-dst";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6336,6 +8146,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one-minus-dst-alpha"]
+
[:component="color";srcFactor="zero";dstFactor="one-minus-dst-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6348,6 +8160,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one-minus-src"]
+
[:component="color";srcFactor="zero";dstFactor="one-minus-src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6360,6 +8174,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="one-minus-src-alpha"]
+
[:component="color";srcFactor="zero";dstFactor="one-minus-src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6372,6 +8188,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="src"]
+
[:component="color";srcFactor="zero";dstFactor="src";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6384,6 +8202,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="src-alpha"]
+
[:component="color";srcFactor="zero";dstFactor="src-alpha";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6396,6 +8216,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="src-alpha-saturated"]
+
[:component="color";srcFactor="zero";dstFactor="src-alpha-saturated";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6408,6 +8230,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:component="color";srcFactor="zero";dstFactor="zero"]
+
[:component="color";srcFactor="zero";dstFactor="zero";operation="add"]
expected:
if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini
index 1a2d89cc9e..6e99c23f88 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini
@@ -1,4 +1,5 @@
[cts.https.html?q=webgpu:api,operation,rendering,depth:depth_compare_func:*]
+ expected: TIMEOUT
[:format="depth16unorm";depthCompare="always";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -97,215 +98,347 @@
[:format="depth24plus";depthCompare="always";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="always";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="always";depthClearValue=1]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater";depthClearValue=0]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater-equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater-equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="greater-equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less-equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less-equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="less-equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="never";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="never";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="never";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="not-equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="not-equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";depthCompare="not-equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="always";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="always";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="always";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="greater-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="less-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="never";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="never";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="never";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="not-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="not-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";depthCompare="not-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="always";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="always";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="always";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="equal";depthClearValue=1]
expected:
@@ -314,26 +447,38 @@
[:format="depth32float";depthCompare="greater";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="greater";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="greater";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="greater-equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="greater-equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="greater-equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="less";depthClearValue=0]
expected:
@@ -374,110 +519,186 @@
[:format="depth32float";depthCompare="not-equal";depthClearValue=0]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="not-equal";depthClearValue=0.5001]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";depthCompare="not-equal";depthClearValue=1]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="always";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="always";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="always";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="greater-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="less-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="never";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="never";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="never";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="not-equal";depthClearValue=0]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="not-equal";depthClearValue=0.5001]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthCompare="not-equal";depthClearValue=1]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,rendering,depth:depth_disabled:*]
@@ -530,7 +751,15 @@
[:reversed=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:reversed=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini
index 7ff7238e9b..8ed35cc68d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:api,operation,rendering,depth_clip_clamp:depth_clamp_and_clip:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:format="depth16unorm";unclippedDepth="_undef_";writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
@@ -54,106 +58,139 @@
[:format="depth24plus";unclippedDepth="_undef_";writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth="_undef_";writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth="_undef_";writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth="_undef_";writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=false;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=false;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=false;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=false;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=true;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=true;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=true;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";unclippedDepth=true;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth="_undef_";writeDepth=false;multisampled=false]
expected:
@@ -180,87 +217,116 @@
[:format="depth32float";unclippedDepth=false;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=false;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=false;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=true;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=true;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=true;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=true;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=false;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=false;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=false;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=false;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;writeDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;writeDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;writeDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;writeDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,rendering,depth_clip_clamp:depth_test_input_clamped:*]
+ expected:
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="depth16unorm";unclippedDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
@@ -300,20 +366,24 @@
[:format="depth24plus-stencil8";unclippedDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";unclippedDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";unclippedDepth=false;multisampled=false]
expected:
@@ -336,17 +406,21 @@
[:format="depth32float-stencil8";unclippedDepth=false;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=false;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;multisampled=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";unclippedDepth=true;multisampled=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini
index 7c8e9e4943..d07e4364a9 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini
@@ -1,6 +1,7 @@
[cts.https.html?q=webgpu:api,operation,rendering,draw:arguments:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
if os == "mac": TIMEOUT
[:first=0;count=0;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
@@ -20,6 +21,7 @@
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
@@ -28,14 +30,17 @@
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
@@ -44,6 +49,7 @@
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
@@ -76,10 +82,12 @@
[:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected: FAIL
@@ -90,4473 +98,4845 @@
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=0;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=0;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=3;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=1;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:first=3;count=6;first_instance=2;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
@@ -4578,93 +4958,141 @@
[cts.https.html?q=webgpu:api,operation,rendering,draw:vertex_attributes,basic:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="float32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="float32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="float32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="float32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=1;vertex_buffer_count=1;vertex_format="float32";step_mode="_undef_"]
expected:
@@ -4777,14 +5205,17 @@
[:vertex_attribute_count=8;vertex_buffer_count=4;vertex_format="float32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=4;vertex_format="float32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=4;vertex_format="float32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=4;vertex_format="uint32";step_mode="_undef_"]
expected:
@@ -4805,34 +5236,46 @@
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="instance"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="mixed"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="vertex"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,rendering,draw:vertex_attributes,formats:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini
index ab4077c952..d24b88cf8e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini
@@ -1,4 +1,5 @@
[cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_compare_func:*]
+ expected: TIMEOUT
[:format="depth24plus-stencil8";stencilCompare="always";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
@@ -62,134 +63,193 @@
[:format="depth24plus-stencil8";stencilCompare="less-equal";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="less-equal";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="less-equal";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater-equal";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater-equal";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="greater-equal";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less-equal";stencilRefValue=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less-equal";stencilRefValue=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="less-equal";stencilRefValue=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=1]
- expected:
- if os == "win": [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=2]
- expected:
- if os == "win": [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="not-equal";stencilRefValue=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="not-equal";stencilRefValue=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";stencilCompare="not-equal";stencilRefValue=2]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="stencil8";stencilCompare="always";stencilRefValue=0]
expected:
@@ -289,6 +349,8 @@
[cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_depthFailOp_operation:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:format="depth24plus-stencil8";depthFailOp="decrement-clamp";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
@@ -344,22 +406,27 @@
[:format="depth32float-stencil8";depthFailOp="decrement-clamp";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="decrement-clamp";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="increment-clamp";initialStencil=1]
expected:
@@ -372,10 +439,12 @@
[:format="depth32float-stencil8";depthFailOp="increment-wrap";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="increment-wrap";initialStencil=255]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";depthFailOp="invert";initialStencil=240]
expected:
@@ -395,6 +464,9 @@
[cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_failOp_operation:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:format="depth24plus-stencil8";failOp="decrement-clamp";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
@@ -450,42 +522,54 @@
[:format="depth32float-stencil8";failOp="decrement-clamp";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="decrement-clamp";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="increment-clamp";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="increment-clamp";initialStencil=255]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="increment-wrap";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="increment-wrap";initialStencil=255]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="invert";initialStencil=240]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="keep";initialStencil=1]
expected:
@@ -494,6 +578,7 @@
[:format="depth32float-stencil8";failOp="replace";initialStencil=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";failOp="zero";initialStencil=1]
expected:
@@ -553,6 +638,8 @@
[cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_passOp_operation:*]
+ expected:
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="depth24plus-stencil8";passOp="decrement-clamp";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
@@ -612,6 +699,7 @@
[:format="depth32float-stencil8";passOp="decrement-wrap";initialStencil=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";passOp="decrement-wrap";initialStencil=1]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini
index 3c6e133ddd..0df275a108 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini
@@ -56,6 +56,7 @@
[:dimension="1d";readMethod="CopyToBuffer";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rg16float"]
expected:
@@ -98,15 +99,21 @@
if os == "win": [PASS, FAIL]
[:dimension="1d";readMethod="CopyToBuffer";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:dimension="1d";readMethod="CopyToBuffer";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rgba16float"]
expected:
@@ -123,14 +130,17 @@
[:dimension="1d";readMethod="CopyToBuffer";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToBuffer";format="rgba8sint"]
expected:
@@ -155,921 +165,1014 @@
[:dimension="1d";readMethod="CopyToTexture";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="CopyToTexture";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r32float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg32float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba32float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";readMethod="Sample";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="depth16unorm"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="depth32float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="depth32float-stencil8"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg11b10ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgb10a2uint"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgb9e5ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToBuffer";format="stencil8"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="bgra8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="bgra8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="depth16unorm"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="depth32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="depth32float-stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r32float"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r32sint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r32uint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg11b10ufloat"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg16float"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg16sint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg32float"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg32sint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg32uint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgb10a2uint"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgb10a2unorm"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgb9e5ufloat"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba16float"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba16sint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba16uint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba32float"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba32sint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba32uint"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="CopyToTexture";format="stencil8"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="DepthTest";format="depth16unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="DepthTest";format="depth24plus"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="DepthTest";format="depth24plus-stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="DepthTest";format="depth32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="DepthTest";format="depth32float-stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="bgra8unorm"]
@@ -1077,7 +1180,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="bgra8unorm-srgb"]
@@ -1085,7 +1188,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r16float"]
@@ -1093,7 +1196,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r16sint"]
@@ -1101,6 +1204,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r16uint"]
@@ -1108,13 +1212,14 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r32sint"]
@@ -1122,6 +1227,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r32uint"]
@@ -1129,6 +1235,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r8sint"]
@@ -1136,6 +1243,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r8snorm"]
@@ -1143,6 +1251,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r8uint"]
@@ -1150,6 +1259,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="r8unorm"]
@@ -1157,13 +1267,14 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg11b10ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg16float"]
@@ -1171,7 +1282,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg16sint"]
@@ -1179,6 +1290,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg16uint"]
@@ -1186,25 +1298,28 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg8sint"]
@@ -1212,6 +1327,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg8snorm"]
@@ -1219,6 +1335,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg8uint"]
@@ -1226,6 +1343,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rg8unorm"]
@@ -1233,27 +1351,28 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgb10a2uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgb10a2unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgb9e5ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba16float"]
@@ -1261,7 +1380,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba16sint"]
@@ -1269,6 +1388,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba16uint"]
@@ -1276,25 +1396,28 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba8sint"]
@@ -1302,6 +1425,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba8snorm"]
@@ -1309,6 +1433,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba8uint"]
@@ -1316,6 +1441,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba8unorm"]
@@ -1323,7 +1449,7 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="Sample";format="rgba8unorm-srgb"]
@@ -1331,472 +1457,546 @@
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="StencilTest";format="depth24plus-stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="StencilTest";format="depth32float-stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";readMethod="StencilTest";format="stencil8"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="bgra8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="bgra8unorm-srgb"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="r8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg11b10ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rg8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgb10a2uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgb10a2unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgb9e5ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToBuffer";format="rgba8unorm-srgb"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="bgra8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="bgra8unorm-srgb"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="r8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg11b10ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rg8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgb10a2uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgb10a2unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgb9e5ufloat"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba16float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba16sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba16uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba32float"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba32sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba32uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba8sint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="CopyToTexture";format="rgba8unorm-srgb"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="Sample";format="bgra8unorm"]
@@ -1859,24 +2059,28 @@
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="Sample";format="r8snorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="Sample";format="r8uint"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="Sample";format="r8unorm"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="3d";readMethod="Sample";format="rg11b10ufloat"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/sampling/filter_mode/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/sampling/filter_mode/cts.https.html.ini
index 6b896f6ac2..fdf03c93ef 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/sampling/filter_mode/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/sampling/filter_mode/cts.https.html.ini
@@ -149,6 +149,8 @@
[cts.https.html?q=webgpu:api,operation,sampling,filter_mode:minFilter,nearest:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:format="bgra8unorm"]
expected: FAIL
@@ -180,7 +182,11 @@
expected: FAIL
[:format="rgb10a2unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="rgba16float"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/shader_module/compilation_info/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/shader_module/compilation_info/cts.https.html.ini
index bc1914a053..6bfc3cb5e7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/shader_module/compilation_info/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/shader_module/compilation_info/cts.https.html.ini
@@ -5,6 +5,8 @@
[:valid=false;name="unicode"]
+ [:valid=false;name="unicode-multi-byte-characters"]
+
[:valid=true;name="ascii"]
expected:
if os == "win": [PASS, FAIL]
@@ -21,6 +23,8 @@
[:valid=false;name="unicode"]
+ [:valid=false;name="unicode-multi-byte-characters"]
+
[cts.https.html?q=webgpu:api,operation,shader_module,compilation_info:offset_and_length:*]
[:valid=false;name="ascii"]
@@ -29,6 +33,8 @@
[:valid=false;name="unicode"]
+ [:valid=false;name="unicode-multi-byte-characters"]
+
[:valid=true;name="ascii"]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini
new file mode 100644
index 0000000000..09f1bea295
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini
@@ -0,0 +1,1345 @@
+[cts.https.html?q=webgpu:api,operation,storage_texture,read_only:basic:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:format="bgra8unorm";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8sint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8snorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8uint";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8uint";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8uint";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba8unorm";shaderStage="compute";dimension="1d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=2]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=2]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1]
+ expected: FAIL
+
+ [:format="rgba8unorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini
new file mode 100644
index 0000000000..74ac5385e2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini
@@ -0,0 +1,152 @@
+[cts.https.html?q=webgpu:api,operation,storage_texture,read_write:basic:*]
+ expected:
+ if os == "mac": SKIP
+ [:format="r32float";shaderStage="compute";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="fragment";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32float";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="compute";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="fragment";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32sint";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="compute";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="compute";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="compute";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="fragment";textureDimension="1d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="fragment";textureDimension="2d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:format="r32uint";shaderStage="fragment";textureDimension="3d";depthOrArrayLayers=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini
index c7fd3b57e0..972f33e50d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini
@@ -11,6 +11,529 @@
[cts.https.html?q=webgpu:api,operation,texture_view,write:format:*]
+ expected: TIMEOUT
[:]
expected:
if os == "win": [PASS, FAIL]
+
+ [:method="render-pass-resolve";format="bgra8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="bgra8unorm-srgb";sampleCount=1]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="r16float";sampleCount=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="r8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rg16float";sampleCount=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rg8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rgb10a2unorm";sampleCount=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rgba16float";sampleCount=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rgba8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-resolve";format="rgba8unorm-srgb";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="bgra8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="bgra8unorm-srgb";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="r16float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="r16sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="r16uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="r32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="r32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="r32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="r8sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="r8uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="r8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="rg16float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rg16sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rg16uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="rg32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rg32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rg32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rg8sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="rg8uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="rg8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="render-pass-store";format="rgb10a2unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba16float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba16sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba16uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:method="render-pass-store";format="rgba8sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="rgba8uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="rgba8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="render-pass-store";format="rgba8unorm-srgb";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:method="storage-write-compute";format="r32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="r32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="r32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rg32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rg32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rg32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba16float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba16sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba16uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba8sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba8snorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba8uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-compute";format="rgba8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="r32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="r32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="r32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rg32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rg32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rg32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba16float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba16sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba16uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba32float";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba32sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba32uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba8sint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba8snorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba8uint";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:method="storage-write-fragment";format="rgba8unorm";sampleCount=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini
index 8ab303be07..aac9b8c1f3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini
@@ -1,127 +1,139 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:array_stride_zero:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux": TIMEOUT
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint8x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [PASS, FAIL]
[:format="sint8x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:format="snorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint8x2"]
expected:
@@ -133,28 +145,32 @@
if os == "linux" and not debug: [PASS, FAIL]
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:buffers_with_varying_step_mode:*]
@@ -172,41 +188,48 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:max_buffers_and_attribs:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="sint16x2"]
@@ -224,27 +247,25 @@
[:format="sint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint8x2"]
@@ -298,25 +319,27 @@
[:format="uint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="uint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="uint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="uint32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="uint8x2"]
@@ -330,7 +353,10 @@
if os == "mac": FAIL
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
@@ -358,68 +384,76 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:non_zero_array_stride_and_attribute_offset:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint8x2"]
expected:
@@ -434,14 +468,12 @@
[:format="snorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2"]
expected:
@@ -457,37 +489,41 @@
[:format="uint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="uint8x2"]
expected:
@@ -499,19 +535,21 @@
if os == "linux": [PASS, FAIL]
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x2"]
expected:
@@ -527,26 +565,24 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:overlapping_attributes:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:format="float16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:format="float32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:format="float32x2"]
@@ -559,14 +595,14 @@
[:format="float32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="float32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
@@ -585,25 +621,25 @@
[:format="sint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="sint8x2"]
@@ -621,15 +657,13 @@
[:format="snorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:format="snorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
if os == "mac": FAIL
[:format="snorm8x2"]
@@ -659,26 +693,26 @@
[:format="uint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:format="uint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="uint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="uint32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="uint8x2"]
@@ -692,7 +726,10 @@
if os == "mac": FAIL
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
@@ -720,76 +757,88 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:setVertexBuffer_offset_and_attribute_offset:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="float16x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="float32x4"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="sint8x2"]
expected:
@@ -805,56 +854,62 @@
[:format="snorm16x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="uint8x2"]
expected:
@@ -866,17 +921,21 @@
if os == "linux": [PASS, FAIL]
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x2"]
expected:
@@ -888,57 +947,77 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:vertex_buffer_used_multiple_times_interleaved:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="float16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="float32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="float32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="float32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="float32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint8x2"]
expected:
@@ -951,42 +1030,52 @@
[:format="snorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="snorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="snorm8x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="snorm8x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="uint16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="uint16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint8x2"]
expected:
@@ -997,15 +1086,21 @@
if os == "win" and not debug: [PASS, FAIL]
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="unorm16x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="unorm8x2"]
expected:
@@ -1017,6 +1112,9 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:vertex_buffer_used_multiple_times_overlapped:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:format="float16x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -1032,14 +1130,17 @@
[:format="float32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="float32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="float32x4"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="sint16x2"]
expected:
@@ -1051,19 +1152,27 @@
[:format="sint32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x3"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="sint8x2"]
expected:
@@ -1100,18 +1209,23 @@
[:format="uint32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x3"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint32x4"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="uint8x2"]
expected:
@@ -1122,7 +1236,11 @@
if os == "win" and not debug: [PASS, FAIL]
[:format="unorm10-10-10-2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:format="unorm16x2"]
expected:
@@ -1142,195 +1260,190 @@
[cts.https.html?q=webgpu:api,operation,vertex_state,correctness:vertex_format_to_shader_format_conversion:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:format="float16x2";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x2";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x2";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x2";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x4";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x4";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x4";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint32";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";shaderComponentCount=2]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";shaderComponentCount=3]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";shaderComponentCount=4]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";shaderComponentCount=1]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";shaderComponentCount=2]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";shaderComponentCount=3]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";shaderComponentCount=4]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";shaderComponentCount=1]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";shaderComponentCount=2]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";shaderComponentCount=3]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";shaderComponentCount=4]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint8x2";shaderComponentCount=1]
expected: FAIL
@@ -1345,136 +1458,220 @@
expected: FAIL
[:format="sint8x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="sint8x4";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="sint8x4";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="sint8x4";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm16x2";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x2";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x2";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x2";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x4";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x4";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x4";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x2";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x2";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x2";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x2";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x4";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint16x4";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint16x4";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint32";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";shaderComponentCount=1]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint8x2";shaderComponentCount=1]
expected: FAIL
@@ -1501,77 +1698,114 @@
expected: FAIL
[:format="unorm10-10-10-2";shaderComponentCount=1]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";shaderComponentCount=2]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";shaderComponentCount=3]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";shaderComponentCount=4]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="unorm16x2";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";shaderComponentCount=2]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";shaderComponentCount=3]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";shaderComponentCount=4]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x2";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x4";shaderComponentCount=1]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x4";shaderComponentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x4";shaderComponentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x4";shaderComponentCount=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini
index 3c8e6817bf..7022cdce1c 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini
@@ -6,7 +6,7 @@
[:setPipelineBeforeSetIndexBuffer=true]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[cts.https.html?q=webgpu:api,operation,vertex_state,index_format:index_format,setIndexBuffer_before_setPipeline:*]
@@ -61,7 +61,7 @@
[:indexFormat="uint16";primitiveTopology="triangle-strip"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:indexFormat="uint32";primitiveTopology="line-list"]
expected:
@@ -81,9 +81,9 @@
[:indexFormat="uint32";primitiveTopology="triangle-list"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
[:indexFormat="uint32";primitiveTopology="triangle-strip"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini
index bc8b442151..4bffbef1dd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini
@@ -15,7 +15,10 @@
[cts.https.html?q=webgpu:api,validation,buffer,create:usage:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:usage1=0;usage2=0]
[:usage1=0;usage2=1]
@@ -43,50 +46,74 @@
[:usage1=128;usage2=0]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=1]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=128]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=16]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=256]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=32]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=32768]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=512]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=64]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=128;usage2=8]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=16;usage2=0]
expected:
@@ -163,50 +190,74 @@
[:usage1=256;usage2=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=128]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=16]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=256]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=32]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=32768]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=512]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=64]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=256;usage2=8]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=2;usage2=0]
@@ -235,50 +286,81 @@
[:usage1=32768;usage2=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=128]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=16]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=256]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=32]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=32768]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=512]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=64]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32768;usage2=8]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=0]
expected:
@@ -291,10 +373,13 @@
[:usage1=32;usage2=128]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=16]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=2]
expected:
@@ -303,30 +388,40 @@
[:usage1=32;usage2=256]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=32]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=32768]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=512]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=64]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=32;usage2=8]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=4;usage2=0]
@@ -355,98 +450,146 @@
[:usage1=512;usage2=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=128]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=16]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=256]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=32]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=32768]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=512]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=64]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=512;usage2=8]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=0]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=1]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=128]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=16]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=256]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=32]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=32768]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=512]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=64]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage1=64;usage2=8]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage1=8;usage2=0]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini
index a15c77f4a8..937662d095 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini
@@ -21,6 +21,8 @@
[cts.https.html?q=webgpu:api,validation,buffer,mapping:getMappedRange,offsetAndSizeAlignment,mapped:*]
+ expected:
+ if debug: CRASH
[:mapMode=1]
expected: FAIL
@@ -29,6 +31,8 @@
[cts.https.html?q=webgpu:api,validation,buffer,mapping:getMappedRange,offsetAndSizeAlignment,mappedAtCreation:*]
+ expected:
+ if debug: CRASH
[:]
expected: FAIL
@@ -113,7 +117,6 @@
[cts.https.html?q=webgpu:api,validation,buffer,mapping:mapAsync,state,destroyed:*]
- expected: ERROR
[:]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html.ini
index 34c87bbf60..2ffe95b20b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html.ini
@@ -17,7 +17,7 @@
if os == "linux": FAIL
-[cts.https.html?q=webgpu:api,validation,capability_checks,features,query_types:writeTimestamp:*]
+[cts.https.html?q=webgpu:api,validation,capability_checks,features,query_types:timestamp:*]
[:featureContainsTimestampQuery=false]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini
index 45faeb68c2..ff7eb8b45a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini
@@ -1,451 +1,651 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:canvas_configuration:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:format="astc-10x10-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";canvasType="offscreen";enable_required_feature=false]
expected: FAIL
@@ -662,22 +862,27 @@
[:format="eac-rg11snorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";canvasType="offscreen";enable_required_feature=true]
expected:
@@ -789,469 +994,687 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:canvas_configuration_view_formats:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:viewFormats=["astc-10x10-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["bc1-rgba-unorm","bgra8unorm"\];canvasType="offscreen";enable_required_feature=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:viewFormats=["bc1-rgba-unorm","bgra8unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["bc1-rgba-unorm","bgra8unorm"\];canvasType="onscreen";enable_required_feature=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:viewFormats=["bc1-rgba-unorm","bgra8unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["bc1-rgba-unorm"\];canvasType="offscreen";enable_required_feature=false]
expected: FAIL
@@ -1478,20 +1901,32 @@
if os == "win" and not debug: FAIL
[:viewFormats=["bgra8unorm","bc1-rgba-unorm"\];canvasType="offscreen";enable_required_feature=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:viewFormats=["bgra8unorm","bc1-rgba-unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["bgra8unorm","bc1-rgba-unorm"\];canvasType="onscreen";enable_required_feature=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:viewFormats=["bgra8unorm","bc1-rgba-unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["depth32float-stencil8"\];canvasType="offscreen";enable_required_feature=false]
expected: FAIL
@@ -1544,30 +1979,37 @@
[:viewFormats=["eac-rg11snorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11snorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11snorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11snorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11unorm"\];canvasType="offscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11unorm"\];canvasType="offscreen";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11unorm"\];canvasType="onscreen";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:viewFormats=["eac-rg11unorm"\];canvasType="onscreen";enable_required_feature=true]
expected:
@@ -1702,6 +2144,8 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:texture_descriptor:*]
+ expected:
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:format="astc-10x10-unorm";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -1785,6 +2229,7 @@
[:format="astc-12x12-unorm";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";enable_required_feature=true]
expected:
@@ -1793,10 +2238,12 @@
[:format="astc-12x12-unorm-srgb";enable_required_feature=false]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";enable_required_feature=true]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";enable_required_feature=false]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini
index 742a4270b2..0a5193ef83 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroups:createPipeline,at_over:*]
+ expected:
+ if os == "linux" and not debug: [OK, CRASH]
[:limitTest="atDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=false]
expected:
if os == "win" and debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini
new file mode 100644
index 0000000000..74cb080dd8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini
@@ -0,0 +1,157 @@
+[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:createRenderPipeline,at_over:*]
+ [:limitTest="atDefault";testValueName="atLimit";async=false]
+ expected: FAIL
+
+ [:limitTest="atDefault";testValueName="atLimit";async=true]
+ expected: FAIL
+
+ [:limitTest="atDefault";testValueName="overLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="atDefault";testValueName="overLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="atMaximum";testValueName="atLimit";async=false]
+ expected: FAIL
+
+ [:limitTest="atMaximum";testValueName="atLimit";async=true]
+ expected: FAIL
+
+ [:limitTest="atMaximum";testValueName="overLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="atMaximum";testValueName="overLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false]
+ expected: FAIL
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true]
+ expected: FAIL
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="overMaximum";testValueName="atLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="overMaximum";testValueName="atLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="overMaximum";testValueName="overLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="overMaximum";testValueName="overLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="underDefault";testValueName="atLimit";async=false]
+ expected: FAIL
+
+ [:limitTest="underDefault";testValueName="atLimit";async=true]
+ expected: FAIL
+
+ [:limitTest="underDefault";testValueName="overLimit";async=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:limitTest="underDefault";testValueName="overLimit";async=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+
+[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:draw,at_over:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:limitTest="atDefault";testValueName="atLimit";encoderType="render"]
+ expected: FAIL
+
+ [:limitTest="atDefault";testValueName="atLimit";encoderType="renderBundle"]
+ expected: FAIL
+
+ [:limitTest="atDefault";testValueName="overLimit";encoderType="render"]
+
+ [:limitTest="atDefault";testValueName="overLimit";encoderType="renderBundle"]
+
+ [:limitTest="atMaximum";testValueName="atLimit";encoderType="render"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:limitTest="atMaximum";testValueName="atLimit";encoderType="renderBundle"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:limitTest="atMaximum";testValueName="overLimit";encoderType="render"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="atMaximum";testValueName="overLimit";encoderType="renderBundle"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";encoderType="render"]
+ expected: FAIL
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";encoderType="renderBundle"]
+ expected: FAIL
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="render"]
+
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="renderBundle"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="overMaximum";testValueName="atLimit";encoderType="render"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="overMaximum";testValueName="atLimit";encoderType="renderBundle"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="overMaximum";testValueName="overLimit";encoderType="render"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="overMaximum";testValueName="overLimit";encoderType="renderBundle"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:limitTest="underDefault";testValueName="atLimit";encoderType="render"]
+ expected: FAIL
+
+ [:limitTest="underDefault";testValueName="atLimit";encoderType="renderBundle"]
+ expected: FAIL
+
+ [:limitTest="underDefault";testValueName="overLimit";encoderType="render"]
+
+ [:limitTest="underDefault";testValueName="overLimit";encoderType="renderBundle"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini
index 667ef9df66..c6aa3dbc6d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini
@@ -33,6 +33,8 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindingsPerBindGroup:createPipeline,at_over:*]
+ expected:
+ if os == "linux" and debug: [OK, CRASH]
[:limitTest="atDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=false]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini
index 550d115f25..15c77e59c5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini
@@ -1,6 +1,9 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:beginRenderPass,at_over:*]
expected:
- if os == "win" and debug: [OK, CRASH]
+ if os == "win" and debug: [OK, TIMEOUT, CRASH]
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -73,243 +76,351 @@
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
@@ -353,37 +464,78 @@
if os == "win": [PASS, FAIL]
[:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:createRenderBundle,at_over:*]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -457,72 +609,122 @@
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
@@ -580,99 +782,166 @@
expected: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
expected: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"]
expected:
@@ -746,6 +1015,11 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:createRenderPipeline,at_over:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win" and not debug: TIMEOUT
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -908,528 +1182,698 @@
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
@@ -1489,124 +1933,190 @@
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini
index 13e87e52b1..5970b764d0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupSizeY:createComputePipeline,at_over:*]
+ expected:
+ if os == "mac": SKIP
[:limitTest="atDefault";testValueName="atLimit";async=false]
expected: FAIL
@@ -88,6 +90,8 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupSizeY:validate,maxComputeInvocationsPerWorkgroup:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini
index 62bcb97fa3..5c5ddcc811 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini
@@ -1,7 +1,10 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupStorageSize:createComputePipeline,at_over:*]
expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: TIMEOUT
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win" and not debug: [TIMEOUT, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [TIMEOUT, CRASH]
+ if os == "mac" and debug: [TIMEOUT, CRASH]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;wgslType="S1"]
@@ -104,3805 +107,4323 @@
[:limitTest="atDefault";testValueName="atLimit";async=false;wgslType="vec4%3Cu32%3E"]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="S1"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="S2"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="S3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="f16"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="S1"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="S2"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="S3"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="f16"]
expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="f32"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="i32"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="S1"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="S2"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="S3"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="f32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="i32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec2%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec3%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cf32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec4%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="S1"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="S2"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="S1"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="S2"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="S1"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="S2"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="S3"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="f32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="i32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="u32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="S1"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="S2"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="S3"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="f32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="i32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="u32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="S1"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="S2"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="S3"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="f32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cu32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Ci32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cu32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Ci32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cu32%3E"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="S1"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="S2"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="f32"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="i32"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="u32"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="S1"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="S2"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="S3"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="f32"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="i32"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="u32"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="S1"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="S2"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="S3"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="f32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="i32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="u32"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="S1"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="S2"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="S1"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="S2"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="S1"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="S2"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="S3"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="S1"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="S2"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="S3"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="f16"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="f32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="i32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="u32"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec2%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec3%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cf32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Ci32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;wgslType="vec4%3Cu32%3E"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="S1"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="S2"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="S3"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="f32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;wgslType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="S1"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="S2"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="S3"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="f32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;wgslType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="S1"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="S2"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="S3"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="f32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat2x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="S1"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="S2"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="S3"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="f32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat2x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat3x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="mat4x4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;wgslType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini
index cba0bbf825..90769fc549 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupsPerDimension:dispatchWorkgroups,at_over:*]
+ expected:
+ if os == "linux" and not debug: [OK, CRASH]
[:limitTest="atDefault";testValueName="atLimit";pipelineType="createComputePipeline";axis=0]
[:limitTest="atDefault";testValueName="atLimit";pipelineType="createComputePipeline";axis=1]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini
index 06c22461f7..72391676ac 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini
@@ -1,7 +1,9 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxInterStageShaderComponents:createRenderPipeline,at_over:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
@@ -170,3682 +172,3583 @@
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini
index bc984c8b9b..b3b95e3386 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini
@@ -1,6 +1,5 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSampledTexturesPerShaderStage:createBindGroupLayout,at_over:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL]
@@ -111,810 +110,1097 @@
[:limitTest="atDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSampledTexturesPerShaderStage:createPipeline,at_over:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [TIMEOUT, CRASH]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -1015,3312 +1301,3402 @@
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSampledTexturesPerShaderStage:createPipelineLayout,at_over:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL]
@@ -4533,598 +4909,647 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
@@ -5200,138 +5625,170 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini
index c49fb1c7d0..3d1dc90a12 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini
@@ -1,6 +1,5 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSamplersPerShaderStage:createBindGroupLayout,at_over:*]
- expected:
- if os == "win": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -178,530 +177,776 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
@@ -785,97 +1030,152 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSamplersPerShaderStage:createPipeline,at_over:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -896,6 +1196,7 @@
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
@@ -1000,3375 +1301,3362 @@
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
-
- [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSamplersPerShaderStage:createPipelineLayout,at_over:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL]
@@ -4602,633 +4890,651 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
@@ -5318,7 +5624,8 @@
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
@@ -5330,133 +5637,134 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini
index 6662fd07bc..c4eb91a8dc 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini
@@ -1,7 +1,5 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageBuffersPerShaderStage:createBindGroupLayout,at_over:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "mac" and not debug: TIMEOUT
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
@@ -399,15 +397,21 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -423,39 +427,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -471,39 +493,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -519,39 +559,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -568,15 +626,21 @@
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -592,39 +656,57 @@
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -640,46 +722,57 @@
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -698,48 +791,57 @@
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -758,15 +860,21 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -782,39 +890,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -830,39 +956,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -878,39 +1022,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -926,15 +1088,21 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -950,39 +1118,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -998,39 +1184,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -1046,39 +1250,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -1094,18 +1316,21 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -1124,57 +1349,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -1196,57 +1421,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -1268,57 +1493,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -1340,21 +1565,21 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -1376,54 +1601,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -1442,48 +1670,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -1502,48 +1739,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -1591,16 +1837,19 @@
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
@@ -1616,21 +1865,25 @@
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -1648,44 +1901,60 @@
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -1701,39 +1970,66 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -1749,15 +2045,24 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -1773,39 +2078,63 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -1821,39 +2150,57 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -1869,39 +2216,57 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -1919,7 +2284,9 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageBuffersPerShaderStage:createPipeline,at_over:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -2068,26 +2435,32 @@
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -2173,11 +2546,13 @@
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -2211,3135 +2586,3330 @@
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageBuffersPerShaderStage:createPipelineLayout,at_over:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5802,7 +6372,8 @@
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";visibility=7;type="storage";order="backward"]
@@ -5822,18 +6393,21 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -5852,48 +6426,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -5909,48 +6492,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -5966,48 +6558,57 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -6022,22 +6623,13 @@
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -6052,58 +6644,31 @@
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -6118,66 +6683,31 @@
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -6195,67 +6725,31 @@
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -6274,15 +6768,21 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -6301,39 +6801,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -6352,39 +6870,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -6403,39 +6939,57 @@
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -6453,25 +7007,13 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -6489,67 +7031,31 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -6567,67 +7073,31 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -6645,67 +7115,31 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -6724,21 +7158,21 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -6760,57 +7194,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -6832,57 +7266,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -6904,57 +7338,57 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -6976,21 +7410,21 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -7012,57 +7446,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -7084,57 +7518,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -7156,57 +7590,57 @@
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -7228,18 +7662,21 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -7258,48 +7695,50 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -7318,48 +7757,52 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -7378,48 +7821,57 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;type="storage";order="backward"]
expected:
@@ -7438,24 +7890,24 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;type="storage";order="backward"]
expected:
@@ -7474,66 +7926,50 @@
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="backward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="forward"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;type="storage";order="backward"]
expected:
@@ -7551,67 +7987,31 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;type="storage";order="backward"]
expected:
@@ -7629,67 +8029,31 @@
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;type="storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="read-only-storage";order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;type="storage";order="backward"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini
index e49c32e9c3..694e728c99 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini
@@ -1,7 +1,9 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageTexturesPerShaderStage:createBindGroupLayout,at_over:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=2;order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -172,6 +174,7 @@
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
@@ -256,75 +259,123 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;order="backward"]
expected:
@@ -414,7 +465,11 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageTexturesPerShaderStage:createPipeline,at_over:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win" and not debug: [TIMEOUT, CRASH]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [TIMEOUT, CRASH]
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
@@ -645,763 +700,886 @@
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
@@ -1418,10 +1596,12 @@
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -1455,169 +1635,243 @@
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageTexturesPerShaderStage:createPipelineLayout,at_over:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=2;order="backward"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -1732,72 +1986,89 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
@@ -1892,75 +2163,105 @@
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=2;order="backward"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini
index cc363d894d..d8fe2883a9 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini
@@ -1,6 +1,5 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxUniformBuffersPerShaderStage:createBindGroupLayout,at_over:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL]
@@ -171,588 +170,759 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
@@ -801,156 +971,219 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxUniformBuffersPerShaderStage:createPipeline,at_over:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [TIMEOUT, CRASH]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -1018,11 +1251,14 @@
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
@@ -1050,3146 +1286,3316 @@
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxUniformBuffersPerShaderStage:createPipelineLayout,at_over:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
if os == "win": [PASS, FAIL]
@@ -4339,493 +4745,633 @@
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="atMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="backward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="forward"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=5;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=6;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="backward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="forward"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="overMaximum";testValueName="overLimit";visibility=7;order="shiftByHalf"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=1;order="backward"]
expected:
@@ -4866,6 +5412,7 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="forward"]
expected:
@@ -4874,102 +5421,214 @@
[:limitTest="underDefault";testValueName="atLimit";visibility=4;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=5;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=6;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=3;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini
index d533f035c4..2f701190c7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBufferArrayStride:createRenderPipeline,at_over:*]
+ expected:
+ if os == "mac": SKIP
[:limitTest="atDefault";testValueName="atLimit";async=false]
expected:
if os == "mac": FAIL
@@ -78,6 +80,8 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBufferArrayStride:validate:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBuffers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBuffers/cts.https.html.ini
index a0765ad38c..06861e4e9f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBuffers/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBuffers/cts.https.html.ini
@@ -1,4 +1,7 @@
[cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBuffers:createRenderPipeline,at_over:*]
+ [:limitTest="atDefault";testValueName="atLimit";async=false]
+ expected: FAIL
+
[:limitTest="atDefault";testValueName="atLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -7,6 +10,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atDefault";testValueName="atLimit";async=true]
+ expected: FAIL
+
[:limitTest="atDefault";testValueName="atLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -15,6 +21,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atDefault";testValueName="overLimit";async=false]
+
[:limitTest="atDefault";testValueName="overLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -23,12 +31,18 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atDefault";testValueName="overLimit";async=true]
+ expected: FAIL
+
[:limitTest="atDefault";testValueName="overLimit";async=true;pipelineType="withLocations"]
expected: FAIL
[:limitTest="atDefault";testValueName="overLimit";async=true;pipelineType="withoutLocations"]
expected: FAIL
+ [:limitTest="atMaximum";testValueName="atLimit";async=false]
+ expected: FAIL
+
[:limitTest="atMaximum";testValueName="atLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -37,6 +51,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atMaximum";testValueName="atLimit";async=true]
+ expected: FAIL
+
[:limitTest="atMaximum";testValueName="atLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -45,6 +62,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atMaximum";testValueName="overLimit";async=false]
+
[:limitTest="atMaximum";testValueName="overLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -53,12 +72,18 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="atMaximum";testValueName="overLimit";async=true]
+ expected: FAIL
+
[:limitTest="atMaximum";testValueName="overLimit";async=true;pipelineType="withLocations"]
expected: FAIL
[:limitTest="atMaximum";testValueName="overLimit";async=true;pipelineType="withoutLocations"]
expected: FAIL
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false]
+ expected: FAIL
+
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -67,6 +92,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true]
+ expected: FAIL
+
[:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -75,6 +103,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false]
+
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -83,12 +113,17 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true]
+ expected: FAIL
+
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pipelineType="withLocations"]
expected: FAIL
[:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;pipelineType="withoutLocations"]
expected: FAIL
+ [:limitTest="overMaximum";testValueName="atLimit";async=false]
+
[:limitTest="overMaximum";testValueName="atLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -97,6 +132,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="overMaximum";testValueName="atLimit";async=true]
+
[:limitTest="overMaximum";testValueName="atLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -105,6 +142,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="overMaximum";testValueName="overLimit";async=false]
+
[:limitTest="overMaximum";testValueName="overLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -113,6 +152,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="overMaximum";testValueName="overLimit";async=true]
+
[:limitTest="overMaximum";testValueName="overLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -121,6 +162,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="underDefault";testValueName="atLimit";async=false]
+ expected: FAIL
+
[:limitTest="underDefault";testValueName="atLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -129,6 +173,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="underDefault";testValueName="atLimit";async=true]
+ expected: FAIL
+
[:limitTest="underDefault";testValueName="atLimit";async=true;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -137,6 +184,8 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="underDefault";testValueName="overLimit";async=false]
+
[:limitTest="underDefault";testValueName="overLimit";async=false;pipelineType="withLocations"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -145,6 +194,9 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:limitTest="underDefault";testValueName="overLimit";async=true]
+ expected: FAIL
+
[:limitTest="underDefault";testValueName="overLimit";async=true;pipelineType="withLocations"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini
index 3be0099bf5..0f99981867 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini
@@ -134,10 +134,8 @@
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,identifier:*]
[:isAsync=false;constants={"%E6%95%B0":0}]
- expected: FAIL
[:isAsync=false;constants={"1":0}]
- expected: FAIL
[:isAsync=false;constants={"1000":0,"c2":0}]
expected:
@@ -146,7 +144,6 @@
if os == "mac": FAIL
[:isAsync=false;constants={"1000":0}]
- expected: FAIL
[:isAsync=false;constants={"2":0}]
expected:
@@ -161,10 +158,8 @@
if os == "mac": FAIL
[:isAsync=false;constants={"c0":0,"c1":1}]
- expected: FAIL
[:isAsync=false;constants={"c0":0}]
- expected: FAIL
[:isAsync=false;constants={"c0%5Cu0000":0}]
expected:
@@ -191,19 +186,15 @@
if os == "mac": FAIL
[:isAsync=false;constants={}]
- expected: FAIL
[:isAsync=true;constants={"%E6%95%B0":0}]
- expected: FAIL
[:isAsync=true;constants={"1":0}]
- expected: FAIL
[:isAsync=true;constants={"1000":0,"c2":0}]
expected: FAIL
[:isAsync=true;constants={"1000":0}]
- expected: FAIL
[:isAsync=true;constants={"2":0}]
expected: FAIL
@@ -212,10 +203,8 @@
expected: FAIL
[:isAsync=true;constants={"c0":0,"c1":1}]
- expected: FAIL
[:isAsync=true;constants={"c0":0}]
- expected: FAIL
[:isAsync=true;constants={"c0%5Cu0000":0}]
expected: FAIL
@@ -230,15 +219,14 @@
expected: FAIL
[:isAsync=true;constants={}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,uninitialized:*]
+ expected:
+ if os == "win" and debug: [OK, CRASH]
[:isAsync=false;constants={"c0":0,"c2":0,"c5":0,"c8":0,"c1":0}]
- expected: FAIL
[:isAsync=false;constants={"c0":0,"c2":0,"c5":0,"c8":0}]
- expected: FAIL
[:isAsync=false;constants={"c0":0,"c2":0,"c8":0}]
expected:
@@ -253,10 +241,8 @@
if os == "mac": FAIL
[:isAsync=true;constants={"c0":0,"c2":0,"c5":0,"c8":0,"c1":0}]
- expected: FAIL
[:isAsync=true;constants={"c0":0,"c2":0,"c5":0,"c8":0}]
- expected: FAIL
[:isAsync=true;constants={"c0":0,"c2":0,"c8":0}]
expected: FAIL
@@ -267,28 +253,20 @@
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,value,type_error:*]
[:isAsync=false;constants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=false;constants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=false;constants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=false;constants={"cf":1}]
- expected: FAIL
[:isAsync=true;constants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=true;constants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=true;constants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=true;constants={"cf":1}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,value,validation_error,f16:*]
@@ -375,13 +353,10 @@
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,value,validation_error:*]
[:isAsync=false;constants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=false;constants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=false;constants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;constants={"cf":-3.4028235677973366e%2B38}]
expected:
@@ -390,7 +365,6 @@
if os == "mac": FAIL
[:isAsync=false;constants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;constants={"cf":3.4028235677973366e%2B38}]
expected:
@@ -399,7 +373,6 @@
if os == "mac": FAIL
[:isAsync=false;constants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=false;constants={"ci":-2147483649}]
expected:
@@ -408,7 +381,6 @@
if os == "mac": FAIL
[:isAsync=false;constants={"ci":2147483647}]
- expected: FAIL
[:isAsync=false;constants={"ci":2147483648}]
expected:
@@ -423,10 +395,8 @@
if os == "mac": FAIL
[:isAsync=false;constants={"cu":0}]
- expected: FAIL
[:isAsync=false;constants={"cu":4294967295}]
- expected: FAIL
[:isAsync=false;constants={"cu":4294967296}]
expected:
@@ -435,31 +405,25 @@
if os == "mac": FAIL
[:isAsync=true;constants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=true;constants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=true;constants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;constants={"cf":-3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;constants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;constants={"cf":3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;constants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=true;constants={"ci":-2147483649}]
expected: FAIL
[:isAsync=true;constants={"ci":2147483647}]
- expected: FAIL
[:isAsync=true;constants={"ci":2147483648}]
expected: FAIL
@@ -468,10 +432,8 @@
expected: FAIL
[:isAsync=true;constants={"cu":0}]
- expected: FAIL
[:isAsync=true;constants={"cu":4294967295}]
- expected: FAIL
[:isAsync=true;constants={"cu":4294967296}]
expected: FAIL
@@ -500,6 +462,8 @@
[cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,workgroup_size:*]
+ expected:
+ if os == "mac" and debug: [OK, CRASH]
[:isAsync=false;type="i32";constants={"x":0,"y":0,"z":0}]
expected:
if os == "win": [PASS, FAIL]
@@ -584,6 +548,503 @@
expected: FAIL
+[cts.https.html?q=webgpu:api,validation,compute_pipeline:resource_compatibility:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac" and debug: TIMEOUT
+ [:apiResource="comparison_sampler"]
+ expected: FAIL
+
+ [:apiResource="filtering_sampler"]
+ expected: FAIL
+
+ [:apiResource="non-filtering_sampler"]
+ expected: FAIL
+
+ [:apiResource="read-only-storage_buffer"]
+ expected: FAIL
+
+ [:apiResource="storage_buffer"]
+ expected: FAIL
+
+ [:apiResource="storage_texture_1d_r32float_read-only"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="storage_texture_1d_r32float_read-write"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="storage_texture_1d_r32float_write-only"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="storage_texture_1d_r32sint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_1d_r32sint_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_1d_r32sint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_1d_r32uint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_1d_r32uint_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_1d_r32uint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32float_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32float_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32float_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32sint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32sint_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32sint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32uint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32uint_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_2d-array_r32uint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32float_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32float_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32float_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32sint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32sint_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32sint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32uint_read-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32uint_read-write"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_2d_r32uint_write-only"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32float_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32float_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32sint_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32sint_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32uint_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="storage_texture_3d_r32uint_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:apiResource="texture_depth_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_depth_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_depth_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_depth_cube-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_depth_cube_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_3d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_cube-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_float_cube_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_3d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_cube-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_sint_cube_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_3d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_cube-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_uint_cube_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_3d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_cube-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="texture_unfilterable-float_cube_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:apiResource="uniform_buffer"]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:api,validation,compute_pipeline:shader_module,compute:*]
[:isAsync=false;shaderModuleStage="compute"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini
index 1cc66db18d..eef8e44319 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini
@@ -22,15 +22,686 @@
[cts.https.html?q=webgpu:api,validation,createBindGroup:binding_must_contain_resource_defined_in_layout:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:]
expected:
if os == "win": [PASS, FAIL]
+ [:resourceType="compareSamp";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="compareSamp";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="compareSamp";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="compareSamp";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="errorBuf";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorBuf";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorSamp";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="errorTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="filtSamp";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="filtSamp";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="filtSamp";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="filtSamp";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="nonFiltSamp";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="nonFiltSamp";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="nonFiltSamp";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="readonlyStorageTex";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="sampledTex";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="sampledTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="sampledTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="sampledTexMS";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:resourceType="sampledTexMS";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="sampledTexMS";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="storageBuf";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="storageBuf";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="storageBuf";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="uniformBuf";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:resourceType="uniformBuf";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="uniformBuf";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+
+ [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"read-only-storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"storage"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"uniform"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"comparison"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"non-filtering"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:api,validation,createBindGroup:binding_resources,device_mismatch:*]
expected:
- if os == "linux" and debug: CRASH
if os == "linux" and not debug: [OK, CRASH]
[:entry={"buffer":{"type":"storage"}}]
expected:
@@ -40,6 +711,14 @@
expected:
if os == "win": [PASS, FAIL]
+ [:entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+
[:entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected:
if os == "win": FAIL
@@ -47,10 +726,6 @@
if os == "mac": FAIL
[:entry={"texture":{"multisampled":false}}]
- expected:
- if os == "win": FAIL
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,createBindGroup:buffer,effective_buffer_binding_size:*]
@@ -168,519 +843,784 @@
[cts.https.html?q=webgpu:api,validation,createBindGroup:storage_texture,format:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:storageTextureFormat="r32float";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32float";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32sint";resourceFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="r32uint";resourceFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32float";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32sint";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rg32uint";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16float";resourceFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16sint";resourceFormat="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16uint";resourceFormat="r32float"]
expected:
@@ -721,14 +1661,18 @@
[:storageTextureFormat="rgba16uint";resourceFormat="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16uint";resourceFormat="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16uint";resourceFormat="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba16uint";resourceFormat="rgba8sint"]
expected:
@@ -748,195 +1692,291 @@
[:storageTextureFormat="rgba32float";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32float";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32sint";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba32uint";resourceFormat="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:storageTextureFormat="rgba8sint";resourceFormat="r32float"]
expected:
@@ -1333,6 +2373,8 @@
[:]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,createBindGroup:texture_must_have_correct_component_type:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini
index 7e094ab1ce..3cd1a69f34 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini
@@ -41,10 +41,20 @@
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:maxedEntry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:maxedEntry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:maxedEntry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+
[:maxedEntry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:maxedEntry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+
[:maxedEntry={"texture":{"multisampled":false}}]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -75,9 +85,21 @@
[:maxedEntry={"sampler":{"type":"non-filtering"}}]
expected: FAIL
+ [:maxedEntry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:maxedEntry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:maxedEntry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected: FAIL
+
[:maxedEntry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected: FAIL
+ [:maxedEntry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}]
+ expected: FAIL
+
[:maxedEntry={"texture":{"multisampled":false}}]
expected: FAIL
@@ -111,346 +133,1311 @@
[cts.https.html?q=webgpu:api,validation,createBindGroupLayout:storage_texture,formats:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x10-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x10-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x10-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x10-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x10-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x10-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x5-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x5-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x6-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x6-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x8-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-10x8-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-12x10-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-12x10-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-12x12-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-12x12-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-4x4-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-4x4-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-5x4-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-5x4-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-5x5-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-5x5-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-6x5-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-6x5-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-6x6-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-6x6-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x5-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x5-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x6-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x6-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x8-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="astc-8x8-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc1-rgba-unorm"]
expected: FAIL
+ [:format="bc1-rgba-unorm";access="read-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm";access="read-write"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm";access="write-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="bc1-rgba-unorm-srgb"]
expected: FAIL
+ [:format="bc1-rgba-unorm-srgb";access="read-only"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm-srgb";access="read-write"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm-srgb";access="write-only"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="bc2-rgba-unorm"]
expected: FAIL
+ [:format="bc2-rgba-unorm";access="read-only"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm";access="read-write"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm";access="write-only"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="bc2-rgba-unorm-srgb"]
expected: FAIL
+ [:format="bc2-rgba-unorm-srgb";access="read-only"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm-srgb";access="read-write"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm-srgb";access="write-only"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="bc3-rgba-unorm"]
expected: FAIL
+ [:format="bc3-rgba-unorm";access="read-only"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm";access="read-write"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm";access="write-only"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="bc3-rgba-unorm-srgb"]
expected: FAIL
+ [:format="bc3-rgba-unorm-srgb";access="read-only"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc4-r-snorm"]
expected: FAIL
+ [:format="bc4-r-snorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-snorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-snorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc4-r-unorm"]
expected: FAIL
+ [:format="bc4-r-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc5-rg-snorm"]
expected: FAIL
+ [:format="bc5-rg-snorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-snorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-snorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc5-rg-unorm"]
expected: FAIL
+ [:format="bc5-rg-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc6h-rgb-float"]
expected: FAIL
+ [:format="bc6h-rgb-float";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-float";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-float";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc6h-rgb-ufloat"]
expected: FAIL
+ [:format="bc6h-rgb-ufloat";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-ufloat";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-ufloat";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc7-rgba-unorm"]
expected: FAIL
+ [:format="bc7-rgba-unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bc7-rgba-unorm-srgb"]
expected: FAIL
+ [:format="bc7-rgba-unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="bgra8unorm"]
expected: FAIL
+ [:format="bgra8unorm";access="read-only"]
+
+ [:format="bgra8unorm";access="read-write"]
+
+ [:format="bgra8unorm";access="write-only"]
+
[:format="bgra8unorm-srgb"]
expected: FAIL
+ [:format="bgra8unorm-srgb";access="read-only"]
+
+ [:format="bgra8unorm-srgb";access="read-write"]
+
+ [:format="bgra8unorm-srgb";access="write-only"]
+
[:format="depth16unorm"]
expected: FAIL
+ [:format="depth16unorm";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth16unorm";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth16unorm";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="depth24plus"]
expected: FAIL
+ [:format="depth24plus";access="read-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth24plus";access="read-write"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth24plus";access="write-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="depth24plus-stencil8"]
expected: FAIL
+ [:format="depth24plus-stencil8";access="read-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";access="read-write"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";access="write-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="depth32float"]
expected: FAIL
+ [:format="depth32float";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth32float";access="read-write"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth32float";access="write-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="depth32float-stencil8"]
expected: FAIL
+ [:format="depth32float-stencil8";access="read-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";access="read-write"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";access="write-only"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="eac-r11snorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-r11snorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-r11snorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="eac-r11unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-r11unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-r11unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="eac-rg11snorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11snorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11snorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="eac-rg11unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgb8a1unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgb8a1unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgb8unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgb8unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgba8unorm";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="etc2-rgba8unorm-srgb";access="read-only"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm-srgb";access="read-write"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm-srgb";access="write-only"]
+ expected: [TIMEOUT, NOTRUN]
+
[:format="r16float"]
expected: FAIL
+ [:format="r16float";access="read-only"]
+
+ [:format="r16float";access="read-write"]
+
+ [:format="r16float";access="write-only"]
+
[:format="r16sint"]
expected: FAIL
+ [:format="r16sint";access="read-only"]
+
+ [:format="r16sint";access="read-write"]
+
+ [:format="r16sint";access="write-only"]
+
[:format="r16uint"]
expected: FAIL
+ [:format="r16uint";access="read-only"]
+
+ [:format="r16uint";access="read-write"]
+
+ [:format="r16uint";access="write-only"]
+
[:format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="r32float";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="r32float";access="read-write"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="r32float";access="write-only"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="r32sint";access="read-only"]
+ expected: FAIL
+
+ [:format="r32sint";access="read-write"]
+ expected: FAIL
+
+ [:format="r32sint";access="write-only"]
+
[:format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="r32uint";access="read-only"]
+ expected: FAIL
+
+ [:format="r32uint";access="read-write"]
+ expected: FAIL
+
+ [:format="r32uint";access="write-only"]
+
[:format="r8sint"]
expected: FAIL
+ [:format="r8sint";access="read-only"]
+
+ [:format="r8sint";access="read-write"]
+
+ [:format="r8sint";access="write-only"]
+
[:format="r8snorm"]
expected: FAIL
+ [:format="r8snorm";access="read-only"]
+
+ [:format="r8snorm";access="read-write"]
+
+ [:format="r8snorm";access="write-only"]
+
[:format="r8uint"]
expected: FAIL
+ [:format="r8uint";access="read-only"]
+
+ [:format="r8uint";access="read-write"]
+
+ [:format="r8uint";access="write-only"]
+
[:format="r8unorm"]
expected: FAIL
+ [:format="r8unorm";access="read-only"]
+
+ [:format="r8unorm";access="read-write"]
+
+ [:format="r8unorm";access="write-only"]
+
[:format="rg11b10ufloat"]
expected: FAIL
+ [:format="rg11b10ufloat";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="rg16float"]
expected: FAIL
+ [:format="rg16float";access="read-only"]
+
+ [:format="rg16float";access="read-write"]
+
+ [:format="rg16float";access="write-only"]
+
[:format="rg16sint"]
expected: FAIL
+ [:format="rg16sint";access="read-only"]
+
+ [:format="rg16sint";access="read-write"]
+
+ [:format="rg16sint";access="write-only"]
+
[:format="rg16uint"]
expected: FAIL
+ [:format="rg16uint";access="read-only"]
+
+ [:format="rg16uint";access="read-write"]
+
+ [:format="rg16uint";access="write-only"]
+
[:format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rg32float";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rg32float";access="read-write"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg32float";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rg32sint";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rg32sint";access="read-write"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";access="write-only"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rg32uint";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rg32uint";access="read-write"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";access="write-only"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rg8sint"]
expected: FAIL
+ [:format="rg8sint";access="read-only"]
+
+ [:format="rg8sint";access="read-write"]
+
+ [:format="rg8sint";access="write-only"]
+
[:format="rg8snorm"]
expected: FAIL
+ [:format="rg8snorm";access="read-only"]
+
+ [:format="rg8snorm";access="read-write"]
+
+ [:format="rg8snorm";access="write-only"]
+
[:format="rg8uint"]
expected: FAIL
+ [:format="rg8uint";access="read-only"]
+
+ [:format="rg8uint";access="read-write"]
+
+ [:format="rg8uint";access="write-only"]
+
[:format="rg8unorm"]
expected: FAIL
+ [:format="rg8unorm";access="read-only"]
+
+ [:format="rg8unorm";access="read-write"]
+
+ [:format="rg8unorm";access="write-only"]
+
[:format="rgb10a2uint"]
expected: FAIL
+ [:format="rgb10a2uint";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2uint";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2uint";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
[:format="rgb10a2unorm"]
expected: FAIL
+ [:format="rgb10a2unorm";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rgb9e5ufloat"]
expected: FAIL
+ [:format="rgb9e5ufloat";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba16float";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba16float";access="read-write"]
+
+ [:format="rgba16float";access="write-only"]
+
[:format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba16sint";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba16sint";access="read-write"]
+
+ [:format="rgba16sint";access="write-only"]
+
[:format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba16uint";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba16uint";access="read-write"]
+
+ [:format="rgba16uint";access="write-only"]
+
[:format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba32float";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba32float";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba32sint";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba32sint";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ [:format="rgba32uint";access="read-only"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:format="rgba32uint";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:format="rgba8sint"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:format="rgba8sint";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba8sint";access="read-write"]
+
+ [:format="rgba8sint";access="write-only"]
+
[:format="rgba8snorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:format="rgba8snorm";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba8snorm";access="read-write"]
+
+ [:format="rgba8snorm";access="write-only"]
+
[:format="rgba8uint"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:format="rgba8uint";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba8uint";access="read-write"]
+
+ [:format="rgba8uint";access="write-only"]
+
[:format="rgba8unorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ [:format="rgba8unorm";access="read-only"]
+ expected: FAIL
+
+ [:format="rgba8unorm";access="read-write"]
+
+ [:format="rgba8unorm";access="write-only"]
+
[:format="rgba8unorm-srgb"]
expected: FAIL
+ [:format="rgba8unorm-srgb";access="read-only"]
+
+ [:format="rgba8unorm-srgb";access="read-write"]
+
+ [:format="rgba8unorm-srgb";access="write-only"]
+
[:format="stencil8"]
expected: FAIL
+ [:format="stencil8";access="read-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="stencil8";access="read-write"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:format="stencil8";access="write-only"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:api,validation,createBindGroupLayout:storage_texture,layout_dimension:*]
expected:
@@ -523,50 +1510,82 @@
if os == "linux" and not debug: [OK, CRASH]
[:shaderStage=0]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=1]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=5]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=6]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:shaderStage=7]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,createBindGroupLayout:visibility:*]
[:visibility=0]
+ expected: FAIL
[:visibility=1]
+ expected: FAIL
[:visibility=2]
+ expected: FAIL
[:visibility=3]
+ expected: FAIL
[:visibility=4]
+ expected: FAIL
[:visibility=5]
+ expected: FAIL
[:visibility=6]
+ expected: FAIL
[:visibility=7]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini
index 0f83b26c42..b6efc6f2cc 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini
@@ -1,173 +1,260 @@
[cts.https.html?q=webgpu:api,validation,createTexture:dimension_type_and_format_compatibility:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:dimension="1d";format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc1-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc1-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc2-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc2-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc3-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc3-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc4-r-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc4-r-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc5-rg-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc5-rg-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc6h-rgb-float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc6h-rgb-ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc7-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bc7-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bgra8unorm"]
expected:
@@ -180,66 +267,97 @@
[:dimension="1d";format="depth16unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="depth24plus"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="depth24plus-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="depth32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16sint"]
expected:
@@ -252,14 +370,17 @@
[:dimension="1d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8sint"]
expected:
@@ -280,30 +401,39 @@
[:dimension="1d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8sint"]
expected:
@@ -322,39 +452,56 @@
if os == "win": [PASS, FAIL]
[:dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8sint"]
expected:
@@ -379,764 +526,1147 @@
[:dimension="1d";format="stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="depth16unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="depth24plus"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="depth24plus-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="depth32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="depth32float-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm"]
expected:
@@ -1536,7 +2066,10 @@
[cts.https.html?q=webgpu:api,validation,createTexture:mipLevelCount,format:*]
expected:
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, TIMEOUT, CRASH]
+ if os == "mac": [OK, TIMEOUT]
[:dimension="1d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -1548,6 +2081,7 @@
[:dimension="1d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16sint"]
expected:
@@ -1560,14 +2094,18 @@
[:dimension="1d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8sint"]
expected:
@@ -1588,30 +2126,41 @@
[:dimension="1d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8sint"]
expected:
@@ -1630,39 +2179,56 @@
if os == "win": [PASS, FAIL]
[:dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8sint"]
expected:
@@ -1686,529 +2252,802 @@
[:dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm"]
expected:
@@ -2591,938 +3430,1362 @@
[cts.https.html?q=webgpu:api,validation,createTexture:sampleCount,valid_sampleCount_with_other_parameter_varies:*]
+ expected: TIMEOUT
[:dimension="1d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc1-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc1-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc2-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc2-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc3-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc3-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc4-r-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc4-r-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc5-rg-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc5-rg-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc6h-rgb-float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc6h-rgb-ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc7-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bc7-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r8sint"]
expected:
@@ -3543,30 +4806,37 @@
[:dimension="_undef_";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint"]
expected:
@@ -3585,51 +4855,66 @@
if os == "win": [PASS, FAIL]
[:dimension="_undef_";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:dimension="_undef_";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm"]
expected:
@@ -3642,268 +4927,400 @@
[:dimension="_undef_";format="stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,createTexture:sampleCount,various_sampleCount_with_all_formats:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:dimension="2d";format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
@@ -3924,34 +5341,49 @@
[:dimension="2d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
@@ -3966,63 +5398,90 @@
if os == "win": [PASS, FAIL]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm"]
expected:
@@ -4578,8 +6037,11 @@
[cts.https.html?q=webgpu:api,validation,createTexture:texture_size,2d_texture,compressed_format:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: TIMEOUT
- if os == "mac" and not debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:dimension="2d";format="astc-10x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x10-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -4776,6 +6238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x10-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -4972,6 +6438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x5-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5168,6 +6638,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x5-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5364,6 +6838,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x6-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5560,6 +7038,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x6-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5756,6 +7238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x8-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x8-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5952,6 +7438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-10x8-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-10x8-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -6148,6 +7638,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-12x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-12x10-unorm";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -6344,6 +7838,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-12x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-12x10-unorm-srgb";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -6540,6 +8038,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-12x12-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-12x12-unorm";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":12},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -6736,6 +8238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-12x12-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-12x12-unorm-srgb";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":12},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -6932,6 +8438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-4x4-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-4x4-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -7128,6 +8638,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-4x4-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-4x4-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -7324,6 +8838,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-5x4-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-5x4-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -7520,6 +9038,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-5x4-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-5x4-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -7716,6 +9238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-5x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-5x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -7912,6 +9438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-5x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-5x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -8108,6 +9638,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-6x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-6x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -8304,6 +9838,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-6x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-6x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -8500,6 +10038,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-6x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-6x6-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -8696,6 +10238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-6x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-6x6-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -8892,6 +10438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -9088,6 +10638,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -9284,6 +10838,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x6-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -9480,6 +11038,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x6-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -9676,6 +11238,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x8-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x8-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -9872,6 +11438,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="astc-8x8-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="astc-8x8-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -10068,6 +11638,8 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc1-rgba-unorm"]
+
[:dimension="2d";format="bc1-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -10208,6 +11780,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc1-rgba-unorm-srgb"]
+
[:dimension="2d";format="bc1-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -10348,6 +11922,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc2-rgba-unorm"]
+
[:dimension="2d";format="bc2-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -10488,6 +12064,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc2-rgba-unorm-srgb"]
+
[:dimension="2d";format="bc2-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -10632,6 +12210,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc3-rgba-unorm"]
+
[:dimension="2d";format="bc3-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -10800,6 +12380,8 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc3-rgba-unorm-srgb"]
+
[:dimension="2d";format="bc3-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -10986,6 +12568,10 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc4-r-snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc4-r-snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -11182,6 +12768,8 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc4-r-unorm"]
+
[:dimension="2d";format="bc4-r-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -11378,6 +12966,10 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc5-rg-snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc5-rg-snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -11574,6 +13166,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc5-rg-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc5-rg-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -11770,6 +13366,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc6h-rgb-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc6h-rgb-float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -11966,6 +13566,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc6h-rgb-ufloat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc6h-rgb-ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -12162,6 +13766,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc7-rgba-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc7-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -12358,6 +13966,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="bc7-rgba-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="bc7-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -12554,6 +14166,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="eac-r11snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="eac-r11snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -12750,6 +14366,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="eac-r11unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="eac-r11unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -12946,6 +14566,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="eac-rg11snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="eac-rg11snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13142,6 +14766,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="eac-rg11unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="eac-rg11unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13338,6 +14966,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgb8a1unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgb8a1unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13534,6 +15166,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgb8a1unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13730,6 +15366,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgb8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgb8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -13926,6 +15566,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgb8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgb8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -14122,6 +15766,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgba8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -14318,6 +15966,10 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="2d";format="etc2-rgba8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:dimension="2d";format="etc2-rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -14514,6 +16166,8 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x10-unorm"]
+
[:dimension="_undef_";format="astc-10x10-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -14654,6 +16308,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x10-unorm-srgb"]
+
[:dimension="_undef_";format="astc-10x10-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -14794,6 +16450,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x5-unorm"]
+
[:dimension="_undef_";format="astc-10x5-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -14934,6 +16592,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x5-unorm-srgb"]
+
[:dimension="_undef_";format="astc-10x5-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15074,6 +16734,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x6-unorm"]
+
[:dimension="_undef_";format="astc-10x6-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15214,6 +16876,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x6-unorm-srgb"]
+
[:dimension="_undef_";format="astc-10x6-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15354,6 +17018,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x8-unorm"]
+
[:dimension="_undef_";format="astc-10x8-unorm";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15494,6 +17160,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-10x8-unorm-srgb"]
+
[:dimension="_undef_";format="astc-10x8-unorm-srgb";sizeVariant=[{"mult":0,"add":10},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15634,6 +17302,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-12x10-unorm"]
+
[:dimension="_undef_";format="astc-12x10-unorm";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15774,6 +17444,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-12x10-unorm-srgb"]
+
[:dimension="_undef_";format="astc-12x10-unorm-srgb";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":10},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -15914,6 +17586,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-12x12-unorm"]
+
[:dimension="_undef_";format="astc-12x12-unorm";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":12},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16054,6 +17728,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-12x12-unorm-srgb"]
+
[:dimension="_undef_";format="astc-12x12-unorm-srgb";sizeVariant=[{"mult":0,"add":12},{"mult":0,"add":12},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16194,6 +17870,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-4x4-unorm"]
+
[:dimension="_undef_";format="astc-4x4-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16334,6 +18012,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-4x4-unorm-srgb"]
+
[:dimension="_undef_";format="astc-4x4-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16474,6 +18154,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-5x4-unorm"]
+
[:dimension="_undef_";format="astc-5x4-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16614,6 +18296,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-5x4-unorm-srgb"]
+
[:dimension="_undef_";format="astc-5x4-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16754,6 +18438,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-5x5-unorm"]
+
[:dimension="_undef_";format="astc-5x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -16894,6 +18580,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-5x5-unorm-srgb"]
+
[:dimension="_undef_";format="astc-5x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17034,6 +18722,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-6x5-unorm"]
+
[:dimension="_undef_";format="astc-6x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17174,6 +18864,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-6x5-unorm-srgb"]
+
[:dimension="_undef_";format="astc-6x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17314,6 +19006,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-6x6-unorm"]
+
[:dimension="_undef_";format="astc-6x6-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17454,6 +19148,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-6x6-unorm-srgb"]
+
[:dimension="_undef_";format="astc-6x6-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17594,6 +19290,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x5-unorm"]
+
[:dimension="_undef_";format="astc-8x5-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17734,6 +19432,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x5-unorm-srgb"]
+
[:dimension="_undef_";format="astc-8x5-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -17874,6 +19574,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x6-unorm"]
+
[:dimension="_undef_";format="astc-8x6-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18014,6 +19716,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x6-unorm-srgb"]
+
[:dimension="_undef_";format="astc-8x6-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18154,6 +19858,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x8-unorm"]
+
[:dimension="_undef_";format="astc-8x8-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18294,6 +20000,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="astc-8x8-unorm-srgb"]
+
[:dimension="_undef_";format="astc-8x8-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18434,6 +20142,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="bc1-rgba-unorm"]
+
[:dimension="_undef_";format="bc1-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18546,6 +20256,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc1-rgba-unorm-srgb"]
+
[:dimension="_undef_";format="bc1-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18658,6 +20370,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc2-rgba-unorm"]
+
[:dimension="_undef_";format="bc2-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18770,6 +20484,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc2-rgba-unorm-srgb"]
+
[:dimension="_undef_";format="bc2-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18882,6 +20598,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc3-rgba-unorm"]
+
[:dimension="_undef_";format="bc3-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -18994,6 +20712,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc3-rgba-unorm-srgb"]
+
[:dimension="_undef_";format="bc3-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19106,6 +20826,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc4-r-snorm"]
+
[:dimension="_undef_";format="bc4-r-snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19218,6 +20940,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc4-r-unorm"]
+
[:dimension="_undef_";format="bc4-r-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19330,6 +21054,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc5-rg-snorm"]
+
[:dimension="_undef_";format="bc5-rg-snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19442,6 +21168,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc5-rg-unorm"]
+
[:dimension="_undef_";format="bc5-rg-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19554,6 +21282,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc6h-rgb-float"]
+
[:dimension="_undef_";format="bc6h-rgb-float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19687,6 +21417,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="bc6h-rgb-ufloat"]
+
[:dimension="_undef_";format="bc6h-rgb-ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19799,6 +21531,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:dimension="_undef_";format="bc7-rgba-unorm"]
+
[:dimension="_undef_";format="bc7-rgba-unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -19939,6 +21673,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="bc7-rgba-unorm-srgb"]
+
[:dimension="_undef_";format="bc7-rgba-unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20079,6 +21815,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="eac-r11snorm"]
+
[:dimension="_undef_";format="eac-r11snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20219,6 +21957,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="eac-r11unorm"]
+
[:dimension="_undef_";format="eac-r11unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20359,6 +22099,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="eac-rg11snorm"]
+
[:dimension="_undef_";format="eac-rg11snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20499,6 +22241,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="eac-rg11unorm"]
+
[:dimension="_undef_";format="eac-rg11unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20639,6 +22383,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgb8a1unorm"]
+
[:dimension="_undef_";format="etc2-rgb8a1unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20779,6 +22525,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgb8a1unorm-srgb"]
+
[:dimension="_undef_";format="etc2-rgb8a1unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -20919,6 +22667,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgb8unorm"]
+
[:dimension="_undef_";format="etc2-rgb8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -21059,6 +22809,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgb8unorm-srgb"]
+
[:dimension="_undef_";format="etc2-rgb8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -21199,6 +22951,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgba8unorm"]
+
[:dimension="_undef_";format="etc2-rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -21339,6 +23093,8 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:dimension="_undef_";format="etc2-rgba8unorm-srgb"]
+
[:dimension="_undef_";format="etc2-rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
@@ -21482,2908 +23238,3818 @@
[cts.https.html?q=webgpu:api,validation,createTexture:texture_size,2d_texture,uncompressed_format:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm-srgb";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth16unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth24plus-stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="depth32float-stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="r8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
@@ -24531,962 +27197,1343 @@
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg11b10ufloat";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8snorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rg8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb10a2unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgb9e5ufloat";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba16uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32float";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba32uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8sint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8snorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8uint";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":0}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":-1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":0},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":0,"add":1},{"mult":1,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":1,"add":-1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":1,"add":0},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="stencil8";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,createTexture:texture_size,3d_texture,compressed_format:*]
@@ -26163,6 +29210,7 @@
[cts.https.html?q=webgpu:api,validation,createTexture:texture_size,default_value_and_smallest_size,uncompressed_format:*]
+ expected: TIMEOUT
[:dimension="1d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -26214,6 +29262,7 @@
[:dimension="1d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16float"]
expected:
@@ -26256,15 +29305,21 @@
if os == "win": [PASS, FAIL]
[:dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="1d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16float"]
expected:
@@ -26313,320 +29368,477 @@
[:dimension="2d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="bgra8unorm"]
expected:
@@ -26801,6 +30013,7 @@
[cts.https.html?q=webgpu:api,validation,createTexture:texture_usage:*]
+ expected: TIMEOUT
[:dimension="1d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -26808,30 +30021,42 @@
[:dimension="1d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="r8sint"]
expected:
@@ -26852,30 +30077,44 @@
[:dimension="1d";format="rg11b10ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rg8sint"]
expected:
@@ -26894,39 +30133,59 @@
if os == "win": [PASS, FAIL]
[:dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgb9e5ufloat"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="1d";format="rgba8sint"]
expected:
@@ -26950,529 +30209,798 @@
[:dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="bgra8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth16unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth24plus-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="depth32float-stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="r8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rg8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb10a2unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba16uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba32uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8sint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8uint"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";format="stencil8"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="_undef_";format="astc-10x10-unorm"]
expected:
@@ -27855,100 +31383,142 @@
[cts.https.html?q=webgpu:api,validation,createTexture:viewFormats:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:formatFeature="_undef_";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:formatFeature="_undef_";viewFormatFeature="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:formatFeature="_undef_";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="_undef_";viewFormatFeature="texture-compression-bc"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:formatFeature="_undef_";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="depth32float-stencil8";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:formatFeature="depth32float-stencil8";viewFormatFeature="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-bc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-astc";viewFormatFeature="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-astc";viewFormatFeature="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-astc";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-astc";viewFormatFeature="texture-compression-bc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-astc";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-bc";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:formatFeature="texture-compression-bc";viewFormatFeature="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-bc";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-bc";viewFormatFeature="texture-compression-bc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-bc";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-etc2";viewFormatFeature="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-etc2";viewFormatFeature="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-bc"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:formatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,createTexture:zero_size_and_usage:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini
index 6b0020d0ca..019a44f161 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini
@@ -37,509 +37,872 @@
[cts.https.html?q=webgpu:api,validation,createView:aspect:*]
+ expected: TIMEOUT
[:format="astc-10x10-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";aspect="depth-only"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";aspect="stencil-only"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";aspect="all"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm";aspect="all"]
expected:
@@ -568,182 +931,302 @@
[:format="depth16unorm";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth16unorm";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth16unorm";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth24plus-stencil8";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";aspect="all"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="depth32float-stencil8";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11snorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11snorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11snorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";aspect="all"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";aspect="depth-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";aspect="stencil-only"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r16float";aspect="all"]
expected:
@@ -784,26 +1267,32 @@
[:format="r32float";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r32float";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r32float";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r32uint";aspect="all"]
expected:
@@ -868,14 +1357,20 @@
[:format="rg11b10ufloat";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg16float";aspect="all"]
expected:
@@ -916,38 +1411,47 @@
[:format="rg32float";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32float";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32float";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rg8sint";aspect="all"]
expected:
@@ -998,37 +1502,61 @@
if os == "win": [PASS, FAIL]
[:format="rgb10a2uint";aspect="all"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="rgb10a2uint";aspect="depth-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="rgb10a2uint";aspect="stencil-only"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgb9e5ufloat";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgb9e5ufloat";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgb9e5ufloat";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba16float";aspect="all"]
expected:
@@ -1069,38 +1597,51 @@
[:format="rgba32float";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32float";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32float";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint";aspect="depth-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint";aspect="stencil-only"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="rgba8sint";aspect="all"]
expected:
@@ -1165,14 +1706,20 @@
[:format="stencil8";aspect="all"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="stencil8";aspect="depth-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="stencil8";aspect="stencil-only"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,createView:cube_faces_square:*]
@@ -1324,100 +1871,158 @@
[cts.https.html?q=webgpu:api,validation,createView:format:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:textureFormatFeature="_undef_";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:textureFormatFeature="_undef_";viewFormatFeature="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:textureFormatFeature="_undef_";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="_undef_";viewFormatFeature="texture-compression-bc"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:textureFormatFeature="_undef_";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="depth32float-stencil8";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:textureFormatFeature="depth32float-stencil8";viewFormatFeature="depth32float-stencil8"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-astc"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-bc"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="depth32float-stencil8";viewFormatFeature="texture-compression-etc2"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-astc";viewFormatFeature="_undef_"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-astc";viewFormatFeature="depth32float-stencil8"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-astc";viewFormatFeature="texture-compression-astc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-astc";viewFormatFeature="texture-compression-bc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-astc";viewFormatFeature="texture-compression-etc2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-bc";viewFormatFeature="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:textureFormatFeature="texture-compression-bc";viewFormatFeature="depth32float-stencil8"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-bc";viewFormatFeature="texture-compression-astc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-bc";viewFormatFeature="texture-compression-bc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-bc";viewFormatFeature="texture-compression-etc2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-etc2";viewFormatFeature="_undef_"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-etc2";viewFormatFeature="depth32float-stencil8"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-astc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-bc"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:textureFormatFeature="texture-compression-etc2";viewFormatFeature="texture-compression-etc2"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,createView:mip_levels:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini
index d9f860f3f7..32fb791d96 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini
@@ -52,6 +52,7 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:copy_ranges:*]
+ expected: TIMEOUT
[:dimension="1d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
@@ -93,101 +94,128 @@
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
@@ -199,58 +227,63 @@
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
@@ -318,38 +351,56 @@
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
@@ -417,38 +468,56 @@
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0]
expected:
@@ -660,677 +729,781 @@
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":0,"z":2,"width":0,"height":1,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":-1,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":0,"y":1,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=0]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=1;dstCopyLevel=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:copy_ranges_with_compressed_texture_formats:*]
@@ -1608,6 +1781,7 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:sample_count:*]
[:]
expected:
+ if os == "win": [PASS, FAIL]
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
@@ -1624,6 +1798,7 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:texture_format_compatibility:*]
expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: [OK, CRASH]
[:srcFormatFeature="_undef_";dstFormatFeature="_undef_"]
expected:
@@ -1642,112 +1817,129 @@
[:srcFormatFeature="_undef_";dstFormatFeature="texture-compression-astc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="_undef_";dstFormatFeature="texture-compression-bc"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="_undef_";dstFormatFeature="texture-compression-etc2"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="depth32float-stencil8";dstFormatFeature="_undef_"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="depth32float-stencil8";dstFormatFeature="depth32float-stencil8"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="depth32float-stencil8";dstFormatFeature="texture-compression-astc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="depth32float-stencil8";dstFormatFeature="texture-compression-bc"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="depth32float-stencil8";dstFormatFeature="texture-compression-etc2"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-astc";dstFormatFeature="_undef_"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-astc";dstFormatFeature="depth32float-stencil8"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-astc";dstFormatFeature="texture-compression-astc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-astc";dstFormatFeature="texture-compression-bc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-astc";dstFormatFeature="texture-compression-etc2"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-bc";dstFormatFeature="_undef_"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="texture-compression-bc";dstFormatFeature="depth32float-stencil8"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="texture-compression-bc";dstFormatFeature="texture-compression-astc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-bc";dstFormatFeature="texture-compression-bc"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:srcFormatFeature="texture-compression-bc";dstFormatFeature="texture-compression-etc2"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-etc2";dstFormatFeature="_undef_"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-etc2";dstFormatFeature="depth32float-stencil8"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-etc2";dstFormatFeature="texture-compression-astc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-etc2";dstFormatFeature="texture-compression-bc"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcFormatFeature="texture-compression-etc2";dstFormatFeature="texture-compression-etc2"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,cmds,copyTextureToTexture:texture_usage:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini
index 0bb7538f75..1da7d29987 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini
@@ -1,21 +1,40 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:buffer_binding_overlap:*]
expected:
- if os == "win": [OK, ERROR]
+ if os == "win" and debug: [OK, TIMEOUT, ERROR]
+ if os == "win" and not debug: [OK, ERROR]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, SKIP]
[:drawType="draw"]
expected: FAIL
[:drawType="drawIndexed"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:drawType="drawIndexedIndirect"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:drawType="drawIndirect"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:index_buffer_OOB:*]
+ expected:
+ if os == "mac": SKIP
[:bufferSizeInElements=100;bindingSizeInElements=10;drawIndexCount=10;drawType="drawIndexed"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -66,6 +85,8 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:last_buffer_setting_take_account:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected:
if os == "mac": FAIL
@@ -74,6 +95,7 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:max_draw_count:*]
expected:
if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, SKIP]
[:bundleFirstHalf=false;bundleSecondHalf=false;maxDrawCount=0]
expected: FAIL
@@ -127,6 +149,7 @@
expected:
if os == "win": [OK, ERROR]
if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, SKIP]
[:smallIndexBuffer=false;smallVertexBuffer=false;smallInstanceBuffer=false]
expected: FAIL
@@ -155,341 +178,378 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:vertex_buffer_OOB:*]
expected:
if os == "win": TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, SKIP]
[:type="draw";VBSize="exact";IBSize="exact";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="exact";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="exact";AStride="zero"]
expected: FAIL
[:type="draw";VBSize="exact";IBSize="oneTooSmall";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="oneTooSmall";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="oneTooSmall";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="zero";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="zero";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="draw";VBSize="exact";IBSize="zero";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="draw";VBSize="oneTooSmall";IBSize="exact";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="oneTooSmall";IBSize="exact";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="oneTooSmall";IBSize="exact";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="zero";IBSize="exact";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="zero";IBSize="exact";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="draw";VBSize="zero";IBSize="exact";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="exact";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="exact";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="exact";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="oneTooSmall";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="oneTooSmall";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="oneTooSmall";AStride="zero"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="zero";AStride="exact"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="zero";AStride="oversize"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="exact";IBSize="zero";AStride="zero"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:type="drawIndexed";VBSize="oneTooSmall";IBSize="exact";AStride="exact"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="oneTooSmall";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="oneTooSmall";IBSize="exact";AStride="zero"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="zero";IBSize="exact";AStride="exact"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="zero";IBSize="exact";AStride="oversize"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexed";VBSize="zero";IBSize="exact";AStride="zero"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="exact";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="exact";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="zero";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="zero";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="exact";IBSize="zero";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="zero";IBSize="exact";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="zero";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndexedIndirect";VBSize="zero";IBSize="exact";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="exact";AStride="exact"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="exact";AStride="zero"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="exact"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="oversize"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="oneTooSmall";AStride="zero"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="zero";AStride="exact"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="zero";AStride="oversize"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="exact";IBSize="zero";AStride="zero"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="exact"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="oversize"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="oneTooSmall";IBSize="exact";AStride="zero"]
expected:
if os == "win": [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="zero";IBSize="exact";AStride="exact"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="zero";IBSize="exact";AStride="oversize"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="drawIndirect";VBSize="zero";IBSize="exact";AStride="zero"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/setBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/setBindGroup/cts.https.html.ini
index eed6c11abb..1170aa04ad 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/setBindGroup/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/setBindGroup/cts.https.html.ini
@@ -326,7 +326,7 @@
[cts.https.html?q=webgpu:api,validation,encoding,cmds,setBindGroup:state_and_binding_index:*]
expected:
if os == "win" and debug: [OK, CRASH]
- if os == "linux" and not debug: [OK, CRASH]
+ if os == "linux": [OK, CRASH]
[:encoderType="compute%20pass";state="destroyed";resourceType="buffer"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html.ini
index 615f79cd4c..6a82705293 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html.ini
@@ -103,22 +103,20 @@
[:depthStencilFormat="depth24plus"]
[:depthStencilFormat="depth24plus-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:depthStencilFormat="depth32float"]
[:depthStencilFormat="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
[:depthStencilFormat="stencil8"]
-[cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:depth_stencil_readonly_with_undefined_depth:*]
- [:]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
-
[cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:valid_texture_formats:*]
[:format="astc-10x10-unorm"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini
index f47d62f763..f712886c14 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini
@@ -93,8 +93,9 @@
[:encoderType="render%20pass";call="drawIndexed";callWithZero=false]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=true]
expected:
@@ -134,74 +135,138 @@
expected:
if os == "win" and debug: [OK, ERROR]
if os == "win" and not debug: [OK, CRASH, ERROR]
+ if os == "mac": [OK, TIMEOUT]
[:encoderType="compute%20pass";call="dispatch";callWithZero=false]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatch";callWithZero=true]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="draw";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="draw";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="draw";callWithZero=false]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="draw";callWithZero=true]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=false]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=true]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:bgl_visibility_mismatch:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:encoderType="compute%20pass";call="dispatch";callWithZero=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -217,44 +282,77 @@
expected: FAIL
[:encoderType="render%20bundle";call="draw";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="draw";callWithZero=true]
expected: FAIL
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20pass";call="draw";callWithZero=false]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL]
[:encoderType="render%20pass";call="draw";callWithZero=true]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, FAIL]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=false]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=true]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
[:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false]
expected: FAIL
@@ -270,168 +368,684 @@
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:bind_groups_and_pipeline_layout_mismatch:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
[:encoderType="compute%20pass";call="dispatch";callWithZero=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatch";callWithZero=true]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="draw";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="draw";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexed";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";call="drawIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="draw";callWithZero=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="draw";callWithZero=true]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexed";callWithZero=true]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndirect";callWithZero=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";call="drawIndirect";callWithZero=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:buffer_binding,render_pipeline:*]
expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:type="read-only-storage"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:type="storage"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:type="uniform"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,compute_pass:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;computeCommand="dispatch"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;computeCommand="dispatch"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;computeCommand="dispatchIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,render_pass:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;renderCommand="draw"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;renderCommand="draw"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;renderCommand="draw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;renderCommand="draw"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndexed"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;renderCommand="draw"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndexed"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndexedIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;renderCommand="drawIndirect"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:empty_bind_group_layouts_requires_empty_bind_groups,compute_pass:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
[:bindGroupLayoutEntryCount=3;computeCommand="dispatch"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=3;computeCommand="dispatchIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;computeCommand="dispatch"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;computeCommand="dispatchIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:empty_bind_group_layouts_requires_empty_bind_groups,render_pass:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
[:bindGroupLayoutEntryCount=3;renderCommand="draw"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=3;renderCommand="drawIndexed"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=3;renderCommand="drawIndexedIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=3;renderCommand="drawIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;renderCommand="draw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;renderCommand="drawIndexed"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;renderCommand="drawIndexedIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:bindGroupLayoutEntryCount=4;renderCommand="drawIndirect"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:sampler_binding,render_pipeline:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
[:bglType="comparison";bgType="comparison"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="comparison";bgType="filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="comparison";bgType="non-filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="filtering";bgType="comparison"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="filtering";bgType="filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="filtering";bgType="non-filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="non-filtering";bgType="comparison"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="non-filtering";bgType="filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:bglType="non-filtering";bgType="non-filtering"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html.ini
index 45d8c21ae5..f8236e7328 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html.ini
@@ -21,21 +21,21 @@
if os == "linux": FAIL
-[cts.https.html?q=webgpu:api,validation,encoding,queries,general:timestamp_query,device_mismatch:*]
+[cts.https.html?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,device_mismatch:*]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
-[cts.https.html?q=webgpu:api,validation,encoding,queries,general:timestamp_query,invalid_query_set:*]
+[cts.https.html?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,invalid_query_set:*]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
-[cts.https.html?q=webgpu:api,validation,encoding,queries,general:timestamp_query,query_type_and_index:*]
+[cts.https.html?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,query_type_and_index:*]
[:type="occlusion"]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini
index 828d9a7064..e7299a996c 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini
@@ -99,6 +99,10 @@
[cts.https.html?q=webgpu:api,validation,error_scope:current_scope:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:errorFilter="out-of-memory";stackDepth=1]
expected:
if os == "win": FAIL
@@ -122,27 +126,38 @@
[:errorFilter="out-of-memory";stackDepth=100000]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:errorFilter="validation";stackDepth=1]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:errorFilter="validation";stackDepth=10]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:errorFilter="validation";stackDepth=100]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:errorFilter="validation";stackDepth=1000]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:errorFilter="validation";stackDepth=100000]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,error_scope:empty:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini
index 3d9db07c2b..933f02949b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini
@@ -26,1694 +26,1839 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_related:bytes_per_row_alignment:*]
- expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="depth16unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="stencil8";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth16unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth32float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="stencil8";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="depth16unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="1d"]
expected:
@@ -1766,98 +1911,134 @@
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8snorm";dimension="1d"]
expected:
@@ -1874,14 +2055,17 @@
[:method="WriteTexture";format="rg8uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8unorm";dimension="1d"]
expected:
@@ -1896,173 +2080,244 @@
if os == "win": [PASS, FAIL]
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="stencil8";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_related:usage:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini
index 6d44e22b8e..4c29182286 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_buffer_offset:*]
+ expected:
+ if os == "mac": SKIP
[:format="depth16unorm";aspect="depth-only";copyType="CopyB2T"]
expected: FAIL
@@ -7,7 +9,7 @@
[:format="depth16unorm";aspect="depth-only";copyType="WriteTexture"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
if os == "mac": FAIL
[:format="depth24plus-stencil8";aspect="stencil-only";copyType="CopyB2T"]
@@ -42,11 +44,13 @@
[:format="stencil8";aspect="stencil-only";copyType="WriteTexture"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_buffer_size:*]
+ expected:
+ if os == "mac": SKIP
[:format="depth16unorm";aspect="depth-only";copyType="CopyB2T"]
expected: FAIL
@@ -95,6 +99,8 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_usage_and_aspect:*]
+ expected:
+ if os == "mac": SKIP
[:format="depth16unorm"]
expected: FAIL
@@ -115,6 +121,8 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:device_mismatch:*]
+ expected:
+ if os == "mac": SKIP
[:copyType="CopyB2T"]
expected: FAIL
@@ -125,9 +133,10 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:sample_count:*]
expected:
if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, SKIP]
[:copyType="CopyB2T"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
if os == "linux": FAIL
if os == "mac": FAIL
@@ -138,6 +147,7 @@
[cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:texture_buffer_usages:*]
expected:
if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, SKIP]
[:copyType="CopyB2T"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini
index 7daad99ade..5e36a31051 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini
@@ -1,2131 +1,2250 @@
[cts.https.html?q=webgpu:api,validation,image_copy,layout_related:bound_on_bytes_per_row:*]
expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac": [OK, TIMEOUT]
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="2d"]
@@ -2140,152 +2259,199 @@
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="2d"]
@@ -2300,6 +2466,7 @@
[:method="WriteTexture";format="r8snorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8snorm";dimension="2d"]
@@ -2314,6 +2481,7 @@
[:method="WriteTexture";format="r8uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8uint";dimension="2d"]
@@ -2344,104 +2512,132 @@
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="2d"]
@@ -2456,6 +2652,7 @@
[:method="WriteTexture";format="rg8snorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8snorm";dimension="2d"]
@@ -2470,6 +2667,7 @@
[:method="WriteTexture";format="rg8uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8uint";dimension="2d"]
@@ -2484,6 +2682,7 @@
[:method="WriteTexture";format="rg8unorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8unorm";dimension="2d"]
@@ -2499,140 +2698,171 @@
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="2d"]
@@ -2647,6 +2877,7 @@
[:method="WriteTexture";format="rgba8snorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";dimension="2d"]
@@ -2661,6 +2892,7 @@
[:method="WriteTexture";format="rgba8uint";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8uint";dimension="2d"]
@@ -2675,6 +2907,7 @@
[:method="WriteTexture";format="rgba8unorm";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm";dimension="2d"]
@@ -2689,6 +2922,7 @@
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="1d"]
expected:
+ if os == "win": [PASS, FAIL]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="2d"]
@@ -2704,6 +2938,7 @@
[:method="WriteTexture";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
@@ -2834,2101 +3069,2576 @@
[cts.https.html?q=webgpu:api,validation,image_copy,layout_related:offset_alignment:*]
expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac": [OK, TIMEOUT]
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="depth16unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="stencil8";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth16unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="stencil8";dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
@@ -4964,56 +5674,67 @@
[:method="WriteTexture";format="depth16unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
@@ -5064,46 +5785,55 @@
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="1d"]
@@ -5169,16 +5899,19 @@
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
@@ -5189,11 +5922,13 @@
[:method="WriteTexture";format="rg16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="1d"]
@@ -5229,46 +5964,55 @@
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
@@ -5334,139 +6078,166 @@
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
@@ -5547,2124 +6318,2618 @@
[:method="WriteTexture";format="stencil8";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,image_copy,layout_related:required_bytes_in_copy:*]
expected:
if os == "win" and not debug: [OK, CRASH]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="bgra8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="depth16unorm";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="r8sint";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8snorm";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8uint";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="r8unorm";dimension="1d"]
expected:
@@ -7674,2120 +8939,2724 @@
expected: FAIL
[:method="WriteTexture";format="r8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="rg32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8snorm";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8uint";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8unorm";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rg8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba16float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba16uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8sint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8snorm";dimension="1d"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8snorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8uint";dimension="1d"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8unorm";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8unorm";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="1d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="rgba8unorm-srgb";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";format="stencil8";dimension="2d"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,image_copy,layout_related:rows_per_image_alignment:*]
- expected:
- if os == "mac": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="depth16unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="stencil8";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth16unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="depth32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="stencil8";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
@@ -9823,56 +11692,67 @@
[:method="WriteTexture";format="depth16unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
@@ -9923,46 +11803,55 @@
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="1d"]
@@ -10028,16 +11917,19 @@
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
@@ -10088,46 +11980,55 @@
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
@@ -10193,79 +12094,94 @@
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
@@ -10286,46 +12202,55 @@
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
@@ -10406,4 +12331,5 @@
[:method="WriteTexture";format="stencil8";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini
index 95858108ac..3c6bb45c95 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini
@@ -29,2412 +29,3323 @@
[cts.https.html?q=webgpu:api,validation,image_copy,texture_related:format:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="bgra8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="bgra8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="r8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg11b10ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rg8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgb9e5ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="1d";format="rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="depth16unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba8snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=1;dimension="2d";format="stencil8"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgb10a2uint"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="depth16unorm"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";depthOrArrayLayers=3;dimension="2d";format="stencil8"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgb10a2uint"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="1d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="depth16unorm"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="depth32float"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgb10a2uint"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=1;dimension="2d";format="stencil8"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgb10a2uint"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc4-r-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc4-r-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="depth16unorm"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="depth32float"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="eac-r11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="eac-r11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="eac-rg11snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="eac-rg11unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="r8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg11b10ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rg8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgb10a2uint"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgb10a2unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgb9e5ufloat"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba16float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba16sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba16uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba32float"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba32sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba32uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba8sint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba8snorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba8uint"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm-srgb"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";depthOrArrayLayers=3;dimension="2d";format="stencil8"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="1d";format="bgra8unorm"]
@@ -2515,126 +3426,301 @@
[:method="WriteTexture";depthOrArrayLayers=1;dimension="1d";format="rgba8unorm-srgb"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-10x8-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-12x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-12x12-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-4x4-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-5x4-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-5x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-6x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-6x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x5-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="astc-8x8-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc1-rgba-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc2-rgba-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc4-r-snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc4-r-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-ufloat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc7-rgba-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bgra8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="depth16unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="eac-r11snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="eac-r11unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="eac-rg11snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="eac-rg11unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgb8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="etc2-rgba8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r16float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r16sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r16uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r32float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r32sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r32uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r8sint"]
@@ -2645,18 +3731,32 @@
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="r8unorm"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg11b10ufloat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg16float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg16sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg16uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg32float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg32sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg32uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg8sint"]
@@ -2667,347 +3767,697 @@
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rg8unorm"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgb10a2unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgb9e5ufloat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba16float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba16sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba16uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba32float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba32sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba32uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8sint"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8snorm"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm-srgb"]
[:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="stencil8"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="bgra8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r16float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r16sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r16uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r32float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r32sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r32uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg11b10ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg16float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg16sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg16uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg32float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg32sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg32uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rg8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgb10a2uint"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgb10a2unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgb9e5ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba16float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba16sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba16uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba32float"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba32sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba32uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba8sint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba8snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba8uint"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=32;dimension="3d";format="rgba8unorm-srgb"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-10x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-12x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-12x12-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-4x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-5x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-5x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-6x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-6x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="astc-8x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc1-rgba-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc2-rgba-unorm-srgb"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm-srgb"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc4-r-snorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc4-r-unorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-snorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-unorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-float"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-ufloat"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="depth16unorm"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="eac-r11snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="eac-r11unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="eac-rg11snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="eac-rg11unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8a1unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgb8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="etc2-rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r16float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r16sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r16uint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r32float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r32sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r32uint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r8sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r8snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r8uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="r8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg11b10ufloat"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg16float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg16sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg16uint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg32float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg32sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg32uint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg8sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg8snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg8uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rg8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgb10a2unorm"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgb9e5ufloat"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba16float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba16sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba16uint"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba32float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba32sint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba32uint"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="stencil8"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,image_copy,texture_related:mip_level:*]
@@ -3050,3137 +4500,3847 @@
[cts.https.html?q=webgpu:api,validation,image_copy,texture_related:origin_alignment:*]
expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:method="CopyB2T";format="astc-10x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";depthOrArrayLayers=1;dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";depthOrArrayLayers=1;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";depthOrArrayLayers=3;dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";depthOrArrayLayers=3;dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm-srgb";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
@@ -6248,115 +8408,169 @@
[:method="WriteTexture";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
@@ -6423,144 +8637,229 @@
if os == "win": [PASS, FAIL]
[:method="WriteTexture";format="rgb10a2uint";depthOrArrayLayers=1;dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";depthOrArrayLayers=1;dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";depthOrArrayLayers=3;dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";depthOrArrayLayers=3;dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";depthOrArrayLayers=1;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";depthOrArrayLayers=3;dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";depthOrArrayLayers=1;dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";depthOrArrayLayers=1;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";depthOrArrayLayers=1;dimension="1d"]
expected:
@@ -6573,10 +8872,12 @@
[:method="WriteTexture";format="rgba8sint";depthOrArrayLayers=3;dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";depthOrArrayLayers=3;dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8snorm";depthOrArrayLayers=1;dimension="1d"]
expected:
@@ -6655,1587 +8956,2129 @@
[cts.https.html?q=webgpu:api,validation,image_copy,texture_related:size_alignment:*]
- expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:method="CopyB2T";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc4-r-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-snorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc5-rg-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-float";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc6h-rgb-ufloat";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8snorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="r8unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyB2T";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-snorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc4-r-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-snorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc5-rg-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-float";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc6h-rgb-ufloat";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="bgra8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-r11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="eac-rg11unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="r8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg11b10ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rg8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="1d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="2d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2uint";dimension="3d"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb10a2unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgb9e5ufloat";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba16uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32float";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba32uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8sint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8snorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8uint";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="1d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="2d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="CopyT2B";format="rgba8unorm-srgb";dimension="3d"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-10x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x10-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-12x12-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-4x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x4-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-5x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-6x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x5-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x6-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="astc-8x8-unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc4-r-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="bgra8unorm";dimension="1d"]
expected:
@@ -8260,118 +11103,165 @@
[:method="WriteTexture";format="bgra8unorm-srgb";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-r11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11snorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="eac-rg11unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8a1unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgb8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="etc2-rgba8unorm-srgb";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="r8sint";dimension="1d"]
expected:
@@ -8424,86 +11314,119 @@
[:method="WriteTexture";format="rg11b10ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg11b10ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rg8sint";dimension="1d"]
expected:
@@ -8554,109 +11477,160 @@
if os == "win": [PASS, FAIL]
[:method="WriteTexture";format="rgb10a2uint";dimension="1d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="2d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2uint";dimension="3d"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb10a2unorm";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba16uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32float";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32sint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="1d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="2d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba32uint";dimension="3d"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:method="WriteTexture";format="rgba8sint";dimension="1d"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini
new file mode 100644
index 0000000000..98ac15a828
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini
@@ -0,0 +1,699 @@
+[cts.https.html?q=webgpu:api,validation,layout_shader_compat:pipeline_layout_shader_exact_match:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="compareSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="filtSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="sampledTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="storageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="compareSamp";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="compareSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="filtSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="sampledTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="storageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="filtSamp";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="compareSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="filtSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="sampledTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="storageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="nonFiltSamp";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="compareSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="filtSamp"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="sampledTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="storageBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="compareSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="filtSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="sampledTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="storageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="compareSamp"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="filtSamp"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="readonlyStorageBuf"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="readonlyStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="readwriteStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="sampledTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="sampledTexMS"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="storageBuf"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="uniformBuf"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="readwriteStorageTex";bindingInShader="writeonlyStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="compareSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="filtSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="sampledTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="storageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTex";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="compareSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="filtSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="sampledTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="storageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="sampledTexMS";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="compareSamp"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="filtSamp"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="readonlyStorageBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="readonlyStorageTex"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="readwriteStorageTex"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="sampledTex"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="sampledTexMS"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="storageBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="uniformBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="storageBuf";bindingInShader="writeonlyStorageTex"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="compareSamp"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="filtSamp"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="readonlyStorageBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="readonlyStorageTex"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="readwriteStorageTex"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="sampledTex"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="sampledTexMS"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="storageBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="uniformBuf"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="uniformBuf";bindingInShader="writeonlyStorageTex"]
+ expected: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="compareSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="filtSamp"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="readonlyStorageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="readonlyStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="readwriteStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="sampledTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="sampledTexMS"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="storageBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="uniformBuf"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="writeonlyStorageTex"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html.ini
index d95922fef4..aaca6de5d7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html.ini
@@ -8,7 +8,7 @@
expected: FAIL
-[cts.https.html?q=webgpu:api,validation,queue,destroyed,query_set:writeTimestamp:*]
+[cts.https.html?q=webgpu:api,validation,queue,destroyed,query_set:timestamps:*]
[:]
expected:
if os == "win": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/attachment_compatibility/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/attachment_compatibility/cts.https.html.ini
index bdc8d729b4..dae66da5e2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/attachment_compatibility/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/attachment_compatibility/cts.https.html.ini
@@ -12,171 +12,177 @@
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,color_sparse:*]
expected:
- if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:attachmentCount=1]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=10]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=11]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=12]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=13]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=14]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=15]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=16]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=17]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=18]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=19]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:attachmentCount=20]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=21]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=22]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=23]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=24]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=25]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=26]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=27]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=28]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=29]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:attachmentCount=30]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=31]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=32]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:attachmentCount=4]
expected:
if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:attachmentCount=5]
expected:
if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:attachmentCount=6]
expected:
if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:attachmentCount=7]
expected:
if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:attachmentCount=8]
expected:
if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:attachmentCount=9]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,depth_format:*]
@@ -211,302 +217,337 @@
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,color_format:*]
expected:
- if os == "win" and debug: [OK, CRASH]
+ if os == "win" and debug: [OK, TIMEOUT, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:encoderType="render%20bundle"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20pass"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,color_sparse:*]
expected:
- if os == "win" and debug: [OK, CRASH]
+ if os == "win" and debug: [OK, TIMEOUT, CRASH]
+ if os == "win" and not debug: [OK, TIMEOUT]
if os == "linux" and debug: TIMEOUT
if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:encoderType="render%20bundle";attachmentCount=1]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=10]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=11]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=12]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=13]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=14]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=15]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=16]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=17]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=18]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=19]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=2]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=20]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=21]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=22]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=23]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=24]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=25]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=26]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=27]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=28]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=29]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=3]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=30]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=31]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=32]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=4]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=5]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=6]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=7]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=8]
expected:
- if os == "win": FAIL
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";attachmentCount=9]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=1]
expected:
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=10]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=11]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=12]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=13]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=14]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=15]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=16]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=17]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=18]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=19]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=2]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=20]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=21]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=22]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=23]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=24]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=25]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=26]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=27]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=28]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=29]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=3]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=30]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=31]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=32]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=4]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=5]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=6]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=7]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=8]
expected:
if os == "win": FAIL
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:encoderType="render%20pass";attachmentCount=9]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,depth_format:*]
@@ -528,27 +569,67 @@
[cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,depth_stencil_read_only_write_state:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:encoderType="render%20bundle";format="_undef_"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:encoderType="render%20bundle";format="depth16unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";format="depth24plus"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";format="depth24plus-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";format="depth32float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";format="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20bundle";format="stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:encoderType="render%20pass";format="_undef_"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "linux" and not debug: [PASS, FAIL]
[:encoderType="render%20pass";format="depth16unorm"]
expected: FAIL
@@ -563,7 +644,11 @@
expected: FAIL
[:encoderType="render%20pass";format="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:encoderType="render%20pass";format="stencil8"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html.ini
index 207318c4b2..751a547fea 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html.ini
@@ -10,27 +10,24 @@
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,layer_count:*]
expected:
- if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:arrayLayerCount=1;baseArrayLayer=0]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:arrayLayerCount=1;baseArrayLayer=9]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:arrayLayerCount=5;baseArrayLayer=0]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,mip_level_count:*]
@@ -81,15 +78,96 @@
if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,bound_check:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:mipLevel=0]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:mipLevel=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:mipLevel=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:mipLevel=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:mipLevel=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,definedness:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:dimension="2d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:dimension="3d"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,overlaps,diff_miplevel:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:sameMipLevel=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:sameMipLevel=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,overlaps,same_miplevel:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:sameDepthSlice=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:sameDepthSlice=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,empty:*]
expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachmentBytesPerSample,aligned:*]
@@ -303,128 +381,125 @@
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,non_multisampled:*]
expected:
- if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT, CRASH]
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,sample_count:*]
expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:depth_stencil_attachment,depth_clear_value:*]
expected:
- if os == "mac" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:depthLoadOp="_undef_";depthClearValue="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="_undef_";depthClearValue=-1]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="_undef_";depthClearValue=0]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="_undef_";depthClearValue=0.5]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="_undef_";depthClearValue=1]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="_undef_";depthClearValue=1.5]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue="_undef_"]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue=-1]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue=0]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue=0.5]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue=1]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="clear";depthClearValue=1.5]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue=-1]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue=0]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue=0.5]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue=1]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:depthLoadOp="load";depthClearValue=1.5]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:depth_stencil_attachment,loadOp_storeOp_match_depthReadOnly_stencilReadOnly:*]
expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "mac": TIMEOUT
[:format="depth16unorm"]
expected:
@@ -453,7 +528,8 @@
[:format="depth32float-stencil8"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": [TIMEOUT, NOTRUN]
[:format="stencil8"]
@@ -666,13 +742,12 @@
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:resolveTarget,mipmap_level_count:*]
expected:
- if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:resolveTarget,sample_count:*]
@@ -696,32 +771,29 @@
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:resolveTarget,usage:*]
expected:
- if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:usage=12]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usage=20]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usage=3]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usage=8]
expected:
if os == "win": FAIL
if os == "linux": FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:timestampWrite,query_index:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini
index 858a0eee02..15173b8da2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini
@@ -78,6 +78,10 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,depth_stencil_state:depth_test:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:isAsync=false;format="depth16unorm";depthCompare="always"]
expected:
if os == "win": [PASS, FAIL]
@@ -305,6 +309,7 @@
[:isAsync=true;format="depth24plus";depthCompare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";depthCompare="equal"]
expected:
@@ -317,6 +322,7 @@
[:isAsync=true;format="depth24plus";depthCompare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";depthCompare="less"]
expected:
@@ -337,34 +343,49 @@
[:isAsync=true;format="depth24plus-stencil8";depthCompare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";depthCompare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";depthCompare="always"]
expected:
@@ -401,34 +422,50 @@
[:isAsync=true;format="depth32float-stencil8";depthCompare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";depthCompare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";depthCompare="always"]
expected:
@@ -609,6 +646,9 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,depth_stencil_state:format:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:isAsync=false;format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
@@ -960,156 +1000,268 @@
[:isAsync=true;format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc1-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc1-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc2-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc2-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc3-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc3-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc4-r-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc4-r-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc5-rg-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc5-rg-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc6h-rgb-float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc6h-rgb-ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc7-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc7-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm"]
expected: FAIL
@@ -1120,62 +1272,92 @@
[:isAsync=true;format="depth16unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16float"]
expected: FAIL
@@ -1187,13 +1369,22 @@
expected: FAIL
[:isAsync=true;format="r32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="r32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="r32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="r8sint"]
expected: FAIL
@@ -1208,10 +1399,17 @@
expected: FAIL
[:isAsync=true;format="rg11b10ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:isAsync=true;format="rg16sint"]
expected: FAIL
@@ -1220,13 +1418,22 @@
expected: FAIL
[:isAsync=true;format="rg32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg8sint"]
expected: FAIL
@@ -1241,31 +1448,59 @@
expected: FAIL
[:isAsync=true;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb10a2unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb9e5ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:isAsync=true;format="rgba32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8sint"]
expected: FAIL
@@ -1285,9 +1520,12 @@
[:isAsync=true;format="stencil8"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pipeline,depth_stencil_state:stencil_test:*]
+ expected: TIMEOUT
[:isAsync=false;format="depth16unorm";face="back";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
@@ -1435,38 +1673,53 @@
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="back";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="_undef_"]
expected:
@@ -1475,18 +1728,22 @@
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="less"]
expected:
@@ -1495,6 +1752,7 @@
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="never"]
expected:
@@ -1503,6 +1761,7 @@
[:isAsync=false;format="depth24plus-stencil8";face="front";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";face="back";compare="_undef_"]
expected:
@@ -1579,74 +1838,110 @@
[:isAsync=false;format="depth32float-stencil8";face="back";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="back";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";face="front";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="stencil8";face="back";compare="_undef_"]
expected:
@@ -1722,507 +2017,729 @@
[:isAsync=true;format="depth16unorm";face="back";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="equal"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="greater"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="greater-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="less"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="less-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="never"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="back";compare="not-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="equal"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="greater"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="greater-equal"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="less"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="less-equal"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="never"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";face="front";compare="not-equal"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="greater"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="greater-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="less"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="less-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="never"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="back";compare="not-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="greater"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="greater-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="less"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="less-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="never"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";face="front";compare="not-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="greater"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="greater-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="less"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="less-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="never"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="back";compare="not-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="greater"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="greater-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="less"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="less-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="never"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";face="front";compare="not-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="greater"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="greater-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="less"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="less-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="never"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="back";compare="not-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="greater"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="greater-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="less"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="less-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="never"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";face="front";compare="not-equal"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="greater"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="greater-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="less"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="less-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="never"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="back";compare="not-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="always"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="greater"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="greater-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="less"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="less-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="never"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";face="front";compare="not-equal"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="back";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="always"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="greater"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="greater-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="less"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="less-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="never"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";face="front";compare="not-equal"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pipeline,depth_stencil_state:stencil_write:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backDepthFailOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backFailOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="backPassOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
@@ -2231,22 +2748,27 @@
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
@@ -2255,10 +2777,12 @@
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontFailOp";op="_undef_"]
expected:
@@ -2299,911 +2823,1356 @@
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontFailOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="invert"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="keep"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="replace"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float";faceAndOpType="frontPassOp";op="zero"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
@@ -3423,2127 +4392,2336 @@
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth24plus-stencil8";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="depth32float-stencil8";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="backPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontDepthFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontFailOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="decrement-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="decrement-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="increment-clamp"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="increment-wrap"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="invert"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="keep"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="replace"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8";faceAndOpType="frontPassOp";op="zero"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini
index 55f75523fc..5dabab3f10 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini
@@ -133,28 +133,43 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:limits,maxColorAttachments:*]
[:isAsync=false;targetsLengthVariant={"mult":1,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
[:isAsync=false;targetsLengthVariant={"mult":1,"add":1}]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
[:isAsync=true;targetsLengthVariant={"mult":1,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
[:isAsync=true;targetsLengthVariant={"mult":1,"add":1}]
expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:pipeline_output_targets,blend:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:isAsync=false;format="bgra8unorm";componentCount=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bgra8unorm";componentCount=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bgra8unorm";componentCount=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bgra8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="r8unorm";componentCount=1]
expected: FAIL
@@ -163,99 +178,234 @@
expected: FAIL
[:isAsync=false;format="r8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rg8unorm";componentCount=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rg8unorm";componentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba8unorm";componentCount=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba8unorm";componentCount=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba8unorm";componentCount=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm";componentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="bgra8unorm";componentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="bgra8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="bgra8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r8unorm";componentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8unorm";componentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg8unorm";componentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8unorm";componentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8unorm";componentCount=1]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm";componentCount=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm";componentCount=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm";componentCount=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:pipeline_output_targets:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:isAsync=false;format="_undef_"]
[:isAsync=false;format="bgra8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="bgra8unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="r8sint"]
expected: FAIL
@@ -267,22 +417,46 @@
expected: FAIL
[:isAsync=false;format="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rg8sint"]
expected: FAIL
@@ -294,155 +468,373 @@
expected: FAIL
[:isAsync=false;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgb10a2unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba8sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba8uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgba8unorm"]
expected: FAIL
[:isAsync=false;format="rgba8unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="_undef_"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="bgra8unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32sint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32uint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgb10a2unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:isAsync=true;format="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32sint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32uint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_blend:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:isAsync=false;component="alpha"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=false;component="color"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;component="alpha"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:isAsync=true;component="color"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_filterable:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
[:isAsync=false;format="bgra8unorm"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -501,7 +893,7 @@
[:isAsync=false;format="rg32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rg32sint"]
expected:
@@ -524,11 +916,15 @@
if os == "win" and debug: [PASS, FAIL]
[:isAsync=false;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=false;format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba16float"]
expected:
@@ -544,15 +940,15 @@
[:isAsync=false;format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="rgba8sint"]
expected:
@@ -572,223 +968,353 @@
[:isAsync=true;format="bgra8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r32uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg32uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba16uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32float"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba32uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8sint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8uint"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_is_color_format:*]
+ [:format="depth16unorm";isAsync=false]
+
+ [:format="depth16unorm";isAsync=true]
+ expected: FAIL
+
+ [:format="depth24plus";isAsync=false]
+
+ [:format="depth24plus";isAsync=true]
+ expected: FAIL
+
+ [:format="depth24plus-stencil8";isAsync=false]
+
+ [:format="depth24plus-stencil8";isAsync=true]
+ expected: FAIL
+
+ [:format="depth32float";isAsync=false]
+
+ [:format="depth32float";isAsync=true]
+ expected: FAIL
+
+ [:format="depth32float-stencil8";isAsync=false]
+
+ [:format="depth32float-stencil8";isAsync=true]
+ expected: FAIL
+
+ [:format="rgba8unorm";isAsync=false]
+
+ [:format="rgba8unorm";isAsync=true]
+ expected: FAIL
+
+ [:format="stencil8";isAsync=false]
+
+ [:format="stencil8";isAsync=true]
+ expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_renderable:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:isAsync=false;format="astc-10x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-10x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-12x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-12x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-12x12-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-12x12-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-4x4-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-4x4-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-5x4-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-5x4-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-5x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-5x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-6x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-6x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-6x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-6x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="astc-8x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc1-rgba-unorm"]
expected:
@@ -812,39 +1338,39 @@
[:isAsync=false;format="bc3-rgba-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc4-r-snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc4-r-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc5-rg-snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc5-rg-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc6h-rgb-float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc6h-rgb-ufloat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc7-rgba-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bc7-rgba-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="bgra8unorm"]
expected:
@@ -876,43 +1402,43 @@
[:isAsync=false;format="eac-r11snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="eac-r11unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="eac-rg11snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="eac-rg11unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgb8a1unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgb8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=false;format="r16float"]
expected:
@@ -1035,7 +1561,7 @@
[:isAsync=false;format="rgba8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
[:isAsync=false;format="rgba8snorm"]
expected:
@@ -1059,165 +1585,277 @@
[:isAsync=true;format="astc-10x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-10x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x10-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x10-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x12-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-12x12-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-4x4-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-4x4-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x4-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x4-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-5x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-6x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x5-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x5-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x6-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x6-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x8-unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="astc-8x8-unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc1-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc1-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc2-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc2-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc3-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc3-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc4-r-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc4-r-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc5-rg-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc5-rg-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc6h-rgb-float"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc6h-rgb-ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc7-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bc7-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="bgra8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="depth16unorm"]
expected: FAIL
@@ -1236,177 +1874,229 @@
[:isAsync=true;format="eac-r11snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-r11unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-rg11snorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="eac-rg11unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8a1unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8a1unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgb8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="etc2-rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r8snorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="r8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="r8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg11b10ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg8snorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rg8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rg8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb10a2unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgb9e5ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba16uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba32float"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba32sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba32uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8sint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8snorm"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:isAsync=true;format="rgba8uint"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8unorm"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="rgba8unorm-srgb"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:isAsync=true;format="stencil8"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/inter_stage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/inter_stage/cts.https.html.ini
index 797ca1e6e9..4408e10b62 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/inter_stage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/inter_stage/cts.https.html.ini
@@ -124,6 +124,12 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,inter_stage:location,superset:*]
[:]
+ [:isAsync=false]
+ expected: FAIL
+
+ [:isAsync=true]
+ expected: FAIL
+
[cts.https.html?q=webgpu:api,validation,render_pipeline,inter_stage:max_components_count,input:*]
[:isAsync=false;numScalarDelta=-2;useExtraBuiltinInputs=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini
index 6a62f83aca..cc8569c52e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,misc:basic:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -8,12 +10,25 @@
if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:api,validation,render_pipeline,misc:external_texture:*]
+ expected:
+ if os == "mac": SKIP
+ [:]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
[cts.https.html?q=webgpu:api,validation,render_pipeline,misc:pipeline_layout,device_mismatch:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,misc:vertex_state_only:*]
+ expected:
+ if os == "mac": SKIP
[:isAsync=false]
expected:
if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/multisample_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/multisample_state/cts.https.html.ini
index ee35c008cd..e9a968febe 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/multisample_state/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/multisample_state/cts.https.html.ini
@@ -1,14 +1,10 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,multisample_state:alpha_to_coverage,count:*]
[:isAsync=false;alphaToCoverageEnabled=false]
- expected:
- if os == "mac": FAIL
[:isAsync=false;alphaToCoverageEnabled=true]
expected: FAIL
[:isAsync=true;alphaToCoverageEnabled=false]
- expected:
- if os == "mac": FAIL
[:isAsync=true;alphaToCoverageEnabled=true]
expected: FAIL
@@ -16,15 +12,11 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,multisample_state:alpha_to_coverage,sample_mask:*]
[:isAsync=false;alphaToCoverageEnabled=false]
- expected:
- if os == "mac": FAIL
[:isAsync=false;alphaToCoverageEnabled=true]
expected: FAIL
[:isAsync=true;alphaToCoverageEnabled=false]
- expected:
- if os == "mac": FAIL
[:isAsync=true;alphaToCoverageEnabled=true]
expected: FAIL
@@ -32,8 +24,6 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,multisample_state:count:*]
[:isAsync=false]
- expected:
- if os == "mac": FAIL
[:isAsync=true]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini
index a2e3473681..7da76bf656 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini
@@ -1,9 +1,7 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:identifier,fragment:*]
[:isAsync=false;fragmentConstants={"%E6%95%B0":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"1":1,"1000":1,"r":1,"g":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"1":1,"b":1}]
expected:
@@ -13,7 +11,6 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"1":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"2":1}]
expected:
@@ -37,7 +34,6 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"r":1,"g":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"r%5Cu0000":1}]
expected:
@@ -61,19 +57,15 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"%E6%95%B0":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"1":1,"1000":1,"r":1,"g":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"1":1,"b":1}]
expected: FAIL
[:isAsync=true;fragmentConstants={"1":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"2":1}]
expected: FAIL
@@ -85,7 +77,6 @@
expected: FAIL
[:isAsync=true;fragmentConstants={"r":1,"g":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"r%5Cu0000":1}]
expected: FAIL
@@ -97,15 +88,12 @@
expected: FAIL
[:isAsync=true;fragmentConstants={}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:identifier,vertex:*]
[:isAsync=false;vertexConstants={"%E6%95%B0":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={"1":1,"1000":1,"x":1,"y":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={"1":1,"z":1}]
expected:
@@ -115,7 +103,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"1":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={"2":1}]
expected:
@@ -139,7 +126,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"x":1,"y":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={"x%5Cu0000":1,"y":1}]
expected:
@@ -163,19 +149,15 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={}]
- expected: FAIL
[:isAsync=true;vertexConstants={"%E6%95%B0":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"1":1,"1000":1,"x":1,"y":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"1":1,"z":1}]
expected: FAIL
[:isAsync=true;vertexConstants={"1":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"2":1}]
expected: FAIL
@@ -187,7 +169,6 @@
expected: FAIL
[:isAsync=true;vertexConstants={"x":1,"y":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"x%5Cu0000":1,"y":1}]
expected: FAIL
@@ -199,15 +180,12 @@
expected: FAIL
[:isAsync=true;vertexConstants={}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:uninitialized,fragment:*]
[:isAsync=false;fragmentConstants={"r":1,"b":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"r":1,"g":1,"b":1,"a":1}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"r":1,"g":1}]
expected:
@@ -224,10 +202,8 @@
if os == "mac": FAIL
[:isAsync=true;fragmentConstants={"r":1,"b":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"r":1,"g":1,"b":1,"a":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"r":1,"g":1}]
expected: FAIL
@@ -238,7 +214,6 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:uninitialized,vertex:*]
[:isAsync=false;vertexConstants={"x":1,"y":1,"z":1,"w":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={"x":1,"y":1}]
expected:
@@ -248,7 +223,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"x":1,"z":1}]
- expected: FAIL
[:isAsync=false;vertexConstants={}]
expected:
@@ -258,13 +232,11 @@
if os == "mac": FAIL
[:isAsync=true;vertexConstants={"x":1,"y":1,"z":1,"w":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"x":1,"y":1}]
expected: FAIL
[:isAsync=true;vertexConstants={"x":1,"z":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={}]
expected: FAIL
@@ -272,54 +244,38 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,type_error,fragment:*]
[:isAsync=false;fragmentConstants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":1}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":1}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,type_error,vertex:*]
[:isAsync=false;vertexConstants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":1}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":"_nan_"}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":"_neginfinity_"}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":"_posinfinity_"}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":1}]
- expected: FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,validation_error,f16,fragment:*]
@@ -488,13 +444,10 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,validation_error,fragment:*]
[:isAsync=false;fragmentConstants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":-3.4028235677973366e%2B38}]
expected:
@@ -504,7 +457,6 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cf":3.4028235677973366e%2B38}]
expected:
@@ -514,7 +466,6 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"ci":-2147483649}]
expected:
@@ -524,7 +475,6 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"ci":2147483647}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"ci":2147483648}]
expected:
@@ -541,10 +491,8 @@
if os == "mac": FAIL
[:isAsync=false;fragmentConstants={"cu":0}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cu":4294967295}]
- expected: FAIL
[:isAsync=false;fragmentConstants={"cu":4294967296}]
expected:
@@ -554,31 +502,25 @@
if os == "mac": FAIL
[:isAsync=true;fragmentConstants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":-3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;fragmentConstants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cf":3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;fragmentConstants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"ci":-2147483649}]
expected: FAIL
[:isAsync=true;fragmentConstants={"ci":2147483647}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"ci":2147483648}]
expected: FAIL
@@ -587,10 +529,8 @@
expected: FAIL
[:isAsync=true;fragmentConstants={"cu":0}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cu":4294967295}]
- expected: FAIL
[:isAsync=true;fragmentConstants={"cu":4294967296}]
expected: FAIL
@@ -598,13 +538,10 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,validation_error,vertex:*]
[:isAsync=false;vertexConstants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":-3.4028235677973366e%2B38}]
expected:
@@ -614,7 +551,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cf":3.4028235677973366e%2B38}]
expected:
@@ -624,7 +560,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=false;vertexConstants={"ci":-2147483649}]
expected:
@@ -634,7 +569,6 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"ci":2147483647}]
- expected: FAIL
[:isAsync=false;vertexConstants={"ci":2147483648}]
expected:
@@ -651,10 +585,8 @@
if os == "mac": FAIL
[:isAsync=false;vertexConstants={"cu":0}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cu":4294967295}]
- expected: FAIL
[:isAsync=false;vertexConstants={"cu":4294967296}]
expected:
@@ -664,31 +596,25 @@
if os == "mac": FAIL
[:isAsync=true;vertexConstants={"cb":-2147483649}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cb":1.7976931348623157e%2B308}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":-3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":-3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;vertexConstants={"cf":3.4028234663852886e%2B38}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cf":3.4028235677973366e%2B38}]
expected: FAIL
[:isAsync=true;vertexConstants={"ci":-2147483648}]
- expected: FAIL
[:isAsync=true;vertexConstants={"ci":-2147483649}]
expected: FAIL
[:isAsync=true;vertexConstants={"ci":2147483647}]
- expected: FAIL
[:isAsync=true;vertexConstants={"ci":2147483648}]
expected: FAIL
@@ -697,10 +623,8 @@
expected: FAIL
[:isAsync=true;vertexConstants={"cu":0}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cu":4294967295}]
- expected: FAIL
[:isAsync=true;vertexConstants={"cu":4294967296}]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini
new file mode 100644
index 0000000000..b7879023bb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini
@@ -0,0 +1,742 @@
+[cts.https.html?q=webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:*]
+ expected: TIMEOUT
+ [:stage="fragment";apiResource="comparison_sampler"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="filtering_sampler"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="non-filtering_sampler"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="read-only-storage_buffer"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_buffer"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32float_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32float_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32sint_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32sint_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32uint_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_1d_r32uint_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32float_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32float_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32float_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32sint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32sint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32sint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32uint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32uint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d-array_r32uint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32float_read-write"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32float_write-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32sint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32sint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32sint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32uint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32uint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_2d_r32uint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32float_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32float_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32float_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32sint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32sint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32sint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32uint_read-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32uint_read-write"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="storage_texture_3d_r32uint_write-only"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="fragment";apiResource="texture_depth_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_depth_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_depth_2d_true"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_depth_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_depth_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_1d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_float_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_1d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_2d_true"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_sint_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_1d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_2d_true"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_uint_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_1d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_2d_true"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="texture_unfilterable-float_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="fragment";apiResource="uniform_buffer"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="comparison_sampler"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="filtering_sampler"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="non-filtering_sampler"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="read-only-storage_buffer"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_1d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_1d_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_1d_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d-array_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d-array_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d-array_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_2d_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="storage_texture_3d_r32float_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_3d_r32sint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="storage_texture_3d_r32uint_read-only"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="vertex";apiResource="texture_depth_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_depth_2d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_depth_2d_true"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="texture_depth_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_depth_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_float_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_sint_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_2d-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_2d_true"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_uint_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_1d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_2d-array_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_2d_false"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_2d_true"]
+ expected: FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_3d_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_cube-array_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="texture_unfilterable-float_cube_false"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="vertex";apiResource="uniform_buffer"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini
index 3dc6a4198a..0c9d27baf1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini
@@ -23,1111 +23,1120 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,vertex_state:vertex_attribute_contained_in_stride:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:format="float16x2"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="float16x4"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="float32"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="float32x2"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="float32x3"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="float32x4"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint16x2"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="sint16x4"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="sint32"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint32x2"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint32x3"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint32x4"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="sint8x2"]
- expected: FAIL
-
- [:format="sint8x4"]
- expected: FAIL
-
- [:format="snorm16x2"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
if os == "linux": FAIL
if os == "mac": FAIL
- [:format="snorm16x4"]
+ [:format="sint8x4"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="snorm16x2"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:format="snorm16x4"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="snorm8x2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="snorm8x4"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x2"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint16x4"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="uint32"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint32x2"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint32x3"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint32x4"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="uint8x2"]
expected: FAIL
[:format="uint8x4"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="unorm10-10-10-2"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="unorm16x2"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm16x4"]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:format="unorm8x2"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:format="unorm8x4"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,render_pipeline,vertex_state:vertex_attribute_offset_alignment:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "mac": CRASH
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [TIMEOUT, CRASH]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="float32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":1}]
expected: FAIL
@@ -1135,832 +1144,920 @@
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":1}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="sint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":1}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":1}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="snorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-14}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x3";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-16}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-18}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-20}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint32x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-24}]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":1}]
expected: FAIL
@@ -1968,17 +2065,17 @@
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-2}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-3}]
expected: FAIL
@@ -1986,17 +2083,17 @@
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":1}]
expected: FAIL
@@ -2004,17 +2101,17 @@
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-2}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-3}]
expected: FAIL
@@ -2023,17 +2120,17 @@
expected:
if os == "win": [PASS, FAIL]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
expected: FAIL
@@ -2041,12 +2138,12 @@
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
expected: FAIL
@@ -2054,12 +2151,12 @@
[:format="uint8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
expected: FAIL
@@ -2067,12 +2164,12 @@
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
expected: FAIL
@@ -2080,317 +2177,361 @@
[:format="uint8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [PASS, FAIL]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm10-10-10-2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-10}]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-12}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm16x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":1}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":1}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-2}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-3}]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":0}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":2}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":0,"add":4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-4}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:format="unorm8x4";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-8}]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, FAIL]
[cts.https.html?q=webgpu:api,validation,render_pipeline,vertex_state:vertex_attribute_shaderLocation_limit:*]
@@ -2400,10 +2541,11 @@
[cts.https.html?q=webgpu:api,validation,render_pipeline,vertex_state:vertex_attribute_shaderLocation_unique:*]
expected:
- if os == "win" and debug: [OK, CRASH]
+ if os == "win" and debug: [OK, TIMEOUT, CRASH]
[:]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
[cts.https.html?q=webgpu:api,validation,render_pipeline,vertex_state:vertex_buffer_array_stride_limit_alignment:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini
index 9eecbc8ea3..5544144b69 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini
@@ -61,8 +61,12 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,buffer,in_pass_encoder:subresources,buffer_usage_in_one_compute_pass_with_one_dispatch:*]
[:usage0AccessibleInDispatch=false;usage1AccessibleInDispatch=false;dispatchBeforeUsage1=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
[:usage0AccessibleInDispatch=false;usage1AccessibleInDispatch=false;dispatchBeforeUsage1=true]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
[:usage0AccessibleInDispatch=false;usage1AccessibleInDispatch=true;dispatchBeforeUsage1=false]
expected: FAIL
@@ -137,13 +141,25 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,buffer,in_pass_encoder:subresources,buffer_usage_in_one_render_pass_with_one_draw:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
[:usage0="index";usage1="index"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage0="index";usage1="indexedIndirect"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="index";usage1="indirect"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="index";usage1="read-only-storage"]
@@ -153,36 +169,78 @@
[:usage0="index";usage1="uniform"]
[:usage0="index";usage1="vertex"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
[:usage0="indexedIndirect";usage1="index"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indexedIndirect";usage1="read-only-storage"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indexedIndirect";usage1="storage"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indexedIndirect";usage1="uniform"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indexedIndirect";usage1="vertex"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indirect";usage1="index"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indirect";usage1="read-only-storage"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indirect";usage1="storage"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indirect";usage1="uniform"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="indirect";usage1="vertex"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:usage0="read-only-storage";usage1="index"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini
index f6369b5fb3..773ea4a05b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini
@@ -6,15 +6,57 @@
[:type0="multisampled-texture";type1="render-target"]
expected: FAIL
+ [:type0="readonly-storage-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="readonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:type0="readonly-storage-texture";type1="render-target"]
+ expected: FAIL
+
+ [:type0="readonly-storage-texture";type1="sampled-texture"]
+ expected: FAIL
+
+ [:type0="readonly-storage-texture";type1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="readwrite-storage-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="readwrite-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:type0="readwrite-storage-texture";type1="render-target"]
+ expected: FAIL
+
+ [:type0="readwrite-storage-texture";type1="sampled-texture"]
+ expected: FAIL
+
+ [:type0="readwrite-storage-texture";type1="writeonly-storage-texture"]
+ expected: FAIL
+
[:type0="render-target";type1="multisampled-texture"]
expected: FAIL
+ [:type0="render-target";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="render-target";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:type0="render-target";type1="sampled-texture"]
expected: FAIL
[:type0="render-target";type1="writeonly-storage-texture"]
expected: FAIL
+ [:type0="sampled-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="sampled-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:type0="sampled-texture";type1="render-target"]
expected: FAIL
@@ -25,6 +67,12 @@
[:type0="sampled-texture";type1="writeonly-storage-texture"]
expected: FAIL
+ [:type0="writeonly-storage-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:type0="writeonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:type0="writeonly-storage-texture";type1="render-target"]
expected: FAIL
@@ -37,32 +85,74 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:replaced_binding:*]
+ [:compute=false;callDrawOrDispatch=false;entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=false;callDrawOrDispatch=false;entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=false;callDrawOrDispatch=false;entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected: FAIL
+
[:compute=false;callDrawOrDispatch=false;entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected: FAIL
+ [:compute=false;callDrawOrDispatch=false;entry={"texture":{"sampleType":"unfilterable-float"}}]
+
[:compute=false;callDrawOrDispatch=false;entry={"texture":{}}]
expected:
if os == "win": [PASS, FAIL]
+ [:compute=false;callDrawOrDispatch=true;entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=false;callDrawOrDispatch=true;entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=false;callDrawOrDispatch=true;entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+ expected: FAIL
+
[:compute=false;callDrawOrDispatch=true;entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected: FAIL
+ [:compute=false;callDrawOrDispatch=true;entry={"texture":{"sampleType":"unfilterable-float"}}]
+
[:compute=false;callDrawOrDispatch=true;entry={"texture":{}}]
expected:
if os == "win": [PASS, FAIL]
+ [:compute=true;callDrawOrDispatch=false;entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=true;callDrawOrDispatch=false;entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=true;callDrawOrDispatch=false;entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+
[:compute=true;callDrawOrDispatch=false;entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected:
if os == "win": [PASS, FAIL]
+ [:compute=true;callDrawOrDispatch=false;entry={"texture":{"sampleType":"unfilterable-float"}}]
+
[:compute=true;callDrawOrDispatch=false;entry={"texture":{}}]
expected:
if os == "win": [PASS, FAIL]
+ [:compute=true;callDrawOrDispatch=true;entry={"storageTexture":{"access":"read-only","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=true;callDrawOrDispatch=true;entry={"storageTexture":{"access":"read-write","format":"r32float"}}]
+ expected: FAIL
+
+ [:compute=true;callDrawOrDispatch=true;entry={"storageTexture":{"access":"write-only","format":"r32float"}}]
+
[:compute=true;callDrawOrDispatch=true;entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}}]
expected:
if os == "win": [PASS, FAIL]
+ [:compute=true;callDrawOrDispatch=true;entry={"texture":{"sampleType":"unfilterable-float"}}]
+
[:compute=true;callDrawOrDispatch=true;entry={"texture":{}}]
expected:
if os == "win": [PASS, FAIL]
@@ -77,18 +167,64 @@
[:dispatch="direct"]
expected: FAIL
+ [:dispatch="direct";usage1="readonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="direct";usage1="readonly-storage-texture";usage2="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="direct";usage1="sampled-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="direct";usage1="sampled-texture";usage2="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="direct";usage1="writeonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
[:dispatch="indirect"]
expected: FAIL
+ [:dispatch="indirect";usage1="readonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="indirect";usage1="readonly-storage-texture";usage2="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="indirect";usage1="sampled-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="indirect";usage1="sampled-texture";usage2="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="indirect";usage1="writeonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
[:dispatch="none"]
expected:
if os == "win": [PASS, FAIL]
+ [:dispatch="none";usage1="readonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="none";usage1="readonly-storage-texture";usage2="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="none";usage1="sampled-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:dispatch="none";usage1="sampled-texture";usage2="writeonly-storage-texture"]
+
+ [:dispatch="none";usage1="writeonly-storage-texture";usage2="readwrite-storage-texture"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:scope,pass_boundary,compute:*]
[:]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:scope,pass_boundary,render:*]
@@ -220,9 +356,33 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:subresources_and_binding_types_combination_for_color:*]
+ [:compute=false;type0="readonly-storage-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=false;type0="readonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:compute=false;type0="readonly-storage-texture";type1="render-target"]
+ expected: FAIL
+
+ [:compute=false;type0="readonly-storage-texture";type1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=false;type0="readwrite-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:compute=false;type0="readwrite-storage-texture";type1="render-target"]
+ expected: FAIL
+
[:compute=false;type0="render-target";type1="render-target"]
expected: FAIL
+ [:compute=false;type0="sampled-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=false;type0="sampled-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:compute=false;type0="sampled-texture";type1="render-target"]
expected: FAIL
@@ -233,6 +393,9 @@
[:compute=false;type0="sampled-texture";type1="writeonly-storage-texture"]
expected: FAIL
+ [:compute=false;type0="writeonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:compute=false;type0="writeonly-storage-texture";type1="render-target"]
expected: FAIL
@@ -240,6 +403,24 @@
expected:
if os == "win": [PASS, FAIL]
+ [:compute=true;type0="readonly-storage-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=true;type0="readonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:compute=true;type0="readonly-storage-texture";type1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=true;type0="readwrite-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:compute=true;type0="sampled-texture";type1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:compute=true;type0="sampled-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:compute=true;type0="sampled-texture";type1="sampled-texture"]
expected:
if os == "win": [PASS, FAIL]
@@ -247,11 +428,929 @@
[:compute=true;type0="sampled-texture";type1="writeonly-storage-texture"]
expected: FAIL
+ [:compute=true;type0="writeonly-storage-texture";type1="readwrite-storage-texture"]
+ expected: FAIL
+
[:compute=true;type0="writeonly-storage-texture";type1="writeonly-storage-texture"]
expected: FAIL
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:unused_bindings_in_pipeline:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: FAIL
+
+ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: FAIL
+
[:compute=false;useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
expected: FAIL
@@ -444,6 +1543,1462 @@
[:compute=false;useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
expected: FAIL
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="readonly-storage-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="after";callDrawOrDispatch=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="before";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="middle";callDrawOrDispatch=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:compute=true;readOnlyUsage="sampled-texture";writableUsage="writeonly-storage-texture";useBindGroup0=true;useBindGroup1=true;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:compute=true;useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini
index a981caea56..9ee3e6ad14 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini
@@ -1,4 +1,22 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_common:subresources,color_attachment_and_bind_group:*]
+ expected: TIMEOUT
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: FAIL
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -13,6 +31,27 @@
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -29,6 +68,26 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -45,6 +104,26 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -61,6 +140,26 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -77,6 +176,26 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -93,6 +212,14 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -101,6 +228,10 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -109,6 +240,10 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -117,6 +252,22 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -133,6 +284,27 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: FAIL
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -147,6 +319,32 @@
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: FAIL
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -161,6 +359,43 @@
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: FAIL
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -177,6 +412,51 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -193,6 +473,52 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -209,6 +535,26 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -217,6 +563,16 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -225,6 +581,16 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -233,6 +599,40 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -249,6 +649,52 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -265,6 +711,52 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -281,6 +773,48 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -295,6 +829,46 @@
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -311,6 +885,38 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -327,6 +933,18 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -334,6 +952,12 @@
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -342,6 +966,12 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -350,6 +980,24 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -366,6 +1014,30 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -382,6 +1054,30 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -398,6 +1094,30 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -414,6 +1134,30 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -428,6 +1172,30 @@
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="readwrite-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -442,6 +1210,18 @@
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=2;bgUsage="writeonly-storage-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -450,6 +1230,12 @@
expected:
if os == "win": [PASS, FAIL]
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -457,6 +1243,12 @@
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=true]
expected: FAIL
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:colorAttachmentLevel=1;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -671,6 +1463,7 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_common:subresources,depth_stencil_texture_in_bind_groups:*]
expected:
+ if debug: [OK, TIMEOUT]
if not debug: TIMEOUT
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
@@ -813,1933 +1606,3151 @@
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
+ expected: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":1};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[:view0Levels={"base":1,"count":2};view0Layers={"base":1,"count":2};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true]
expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
if not debug: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_common:subresources,multiple_bind_groups:*]
expected:
- if os == "mac" and not debug: TIMEOUT
+ if debug: [OK, TIMEOUT]
+ if not debug: TIMEOUT
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2770,6 +4781,51 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2802,6 +4858,50 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2834,6 +4934,62 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2866,6 +5022,98 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2898,6 +5146,109 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2930,6 +5281,51 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2946,6 +5342,30 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2962,6 +5382,29 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2978,6 +5421,83 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3010,6 +5530,102 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3040,6 +5656,74 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3070,6 +5754,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3102,6 +5834,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3134,6 +5914,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3166,6 +5994,27 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3182,6 +6031,18 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3198,6 +6059,18 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3214,6 +6087,45 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3246,6 +6158,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3276,6 +6236,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3306,6 +6314,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3338,6 +6394,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3370,6 +6474,54 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3402,6 +6554,27 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3418,6 +6591,18 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3434,6 +6619,18 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3450,6 +6647,77 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3482,6 +6750,102 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3514,6 +6878,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3546,6 +7022,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3576,6 +7164,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3608,6 +7308,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3640,6 +7452,55 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3655,6 +7516,34 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3671,6 +7560,34 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3687,6 +7604,97 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3719,6 +7727,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3751,6 +7871,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3783,6 +8015,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3815,6 +8159,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3845,6 +8301,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3875,6 +8443,55 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3891,6 +8508,34 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3906,6 +8551,34 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3921,6 +8594,97 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3953,6 +8717,118 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -3991,6 +8867,123 @@
expected:
if os == "win": [PASS, FAIL]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4031,6 +9024,100 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4071,6 +9158,86 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4115,6 +9282,86 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4159,6 +9406,41 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4179,6 +9461,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4201,6 +9503,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="storage";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4223,6 +9545,31 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":1};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4243,6 +9590,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4263,6 +9630,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4283,6 +9670,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4305,6 +9712,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4325,6 +9752,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4345,6 +9792,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4355,6 +9807,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4365,6 +9822,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4375,6 +9837,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4395,6 +9877,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4415,6 +9917,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4435,6 +9957,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4455,6 +9997,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4477,6 +10039,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4499,6 +10081,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4509,6 +10096,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4519,6 +10111,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4529,6 +10126,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4549,6 +10166,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4569,6 +10206,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4589,6 +10246,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4609,6 +10286,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4631,6 +10328,26 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"]
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="storage";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4653,6 +10370,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4663,6 +10385,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":1};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
@@ -4673,6 +10400,11 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
[:bg0Levels={"base":1,"count":2};bg0Layers={"base":1,"count":2};bg1Levels={"base":1,"count":2};bg1Layers={"base":1,"count":2};bgUsage0="texture";bgUsage1="texture";inSamePass=false]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_misc/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_misc/cts.https.html.ini
index 7ce32e04ee..7f0ccf1e55 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_misc/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_misc/cts.https.html.ini
@@ -1,4 +1,106 @@
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_misc:subresources,set_bind_group_on_same_index_color_texture:*]
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="sampled-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="sampled-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="sampled-texture";view2Binding="sampled-texture"]
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="sampled-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="writeonly-storage-texture"]
+
[:useDifferentTextureAsTexture2=false;baseLayer2=0;view2Binding="storage";hasConflict=false]
expected:
if os == "win": [PASS, FAIL]
@@ -13,6 +115,108 @@
[:useDifferentTextureAsTexture2=false;baseLayer2=0;view2Binding="texture";hasConflict=true]
expected: FAIL
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="sampled-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="sampled-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="sampled-texture";view2Binding="sampled-texture"]
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="sampled-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=false;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="writeonly-storage-texture"]
+
[:useDifferentTextureAsTexture2=false;baseLayer2=1;view2Binding="storage";hasConflict=false]
expected:
if os == "win": [PASS, FAIL]
@@ -27,6 +231,108 @@
[:useDifferentTextureAsTexture2=false;baseLayer2=1;view2Binding="texture";hasConflict=true]
expected: FAIL
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readonly-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="readwrite-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="sampled-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="sampled-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="sampled-texture";view2Binding="sampled-texture"]
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="sampled-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=0;view1Binding="writeonly-storage-texture";view2Binding="writeonly-storage-texture"]
+
[:useDifferentTextureAsTexture2=true;baseLayer2=0;view2Binding="texture";hasConflict=false]
expected:
if os == "win": [PASS, FAIL]
@@ -34,6 +340,108 @@
[:useDifferentTextureAsTexture2=true;baseLayer2=0;view2Binding="texture";hasConflict=true]
expected: FAIL
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readonly-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="readwrite-storage-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="sampled-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="sampled-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="sampled-texture";view2Binding="sampled-texture"]
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="sampled-texture";view2Binding="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:useDifferentTextureAsTexture2=true;baseLayer2=1;view1Binding="writeonly-storage-texture";view2Binding="writeonly-storage-texture"]
+
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_misc:subresources,set_bind_group_on_same_index_depth_stencil_texture:*]
[:bindAspect="depth-only";depthStencilReadOnly=false]
@@ -58,6 +466,63 @@
expected:
if os == "win": [PASS, FAIL]
+ [:inRenderPass=false;textureUsage0="readonly-storage-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=false;textureUsage0="readonly-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="readonly-storage-texture";textureUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=false;textureUsage0="readonly-storage-texture";textureUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=false;textureUsage0="readwrite-storage-texture";textureUsage1="readonly-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="readwrite-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="readwrite-storage-texture";textureUsage1="sampled-texture"]
+
+ [:inRenderPass=false;textureUsage0="readwrite-storage-texture";textureUsage1="writeonly-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="sampled-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=false;textureUsage0="sampled-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="sampled-texture";textureUsage1="sampled-texture"]
+
+ [:inRenderPass=false;textureUsage0="sampled-texture";textureUsage1="writeonly-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="writeonly-storage-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=false;textureUsage0="writeonly-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=false;textureUsage0="writeonly-storage-texture";textureUsage1="sampled-texture"]
+
+ [:inRenderPass=false;textureUsage0="writeonly-storage-texture";textureUsage1="writeonly-storage-texture"]
+
[:inRenderPass=true;hasConflict=false]
expected:
if os == "win": [PASS, FAIL]
@@ -65,6 +530,73 @@
[:inRenderPass=true;hasConflict=true]
expected: FAIL
+ [:inRenderPass=true;textureUsage0="readonly-storage-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="readonly-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="readonly-storage-texture";textureUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="readonly-storage-texture";textureUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="readwrite-storage-texture";textureUsage1="readonly-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="readwrite-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="readwrite-storage-texture";textureUsage1="sampled-texture"]
+
+ [:inRenderPass=true;textureUsage0="readwrite-storage-texture";textureUsage1="writeonly-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="sampled-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="sampled-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="sampled-texture";textureUsage1="sampled-texture"]
+
+ [:inRenderPass=true;textureUsage0="sampled-texture";textureUsage1="writeonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="writeonly-storage-texture";textureUsage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="writeonly-storage-texture";textureUsage1="readwrite-storage-texture"]
+
+ [:inRenderPass=true;textureUsage0="writeonly-storage-texture";textureUsage1="sampled-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inRenderPass=true;textureUsage0="writeonly-storage-texture";textureUsage1="writeonly-storage-texture"]
+
[cts.https.html?q=webgpu:api,validation,resource_usages,texture,in_render_misc:subresources,texture_usages_in_copy_and_render_pass:*]
[:usage0="color-attachment";usage1="copy-dst"]
@@ -87,6 +619,22 @@
expected:
if os == "win": [PASS, FAIL]
+ [:usage0="copy-dst";usage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="copy-dst";usage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="copy-dst";usage1="sampled-texture"]
+
[:usage0="copy-dst";usage1="storage"]
expected:
if os == "win": [PASS, FAIL]
@@ -95,6 +643,8 @@
expected:
if os == "win": [PASS, FAIL]
+ [:usage0="copy-dst";usage1="writeonly-storage-texture"]
+
[:usage0="copy-src";usage1="color-attachment"]
expected:
if os == "win": [PASS, FAIL]
@@ -107,6 +657,22 @@
expected:
if os == "win": [PASS, FAIL]
+ [:usage0="copy-src";usage1="readonly-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="copy-src";usage1="readwrite-storage-texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="copy-src";usage1="sampled-texture"]
+
[:usage0="copy-src";usage1="storage"]
expected:
if os == "win": [PASS, FAIL]
@@ -115,6 +681,40 @@
expected:
if os == "win": [PASS, FAIL]
+ [:usage0="copy-src";usage1="writeonly-storage-texture"]
+
+ [:usage0="readonly-storage-texture";usage1="copy-dst"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="readonly-storage-texture";usage1="copy-src"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="readwrite-storage-texture";usage1="copy-dst"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="readwrite-storage-texture";usage1="copy-src"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:usage0="sampled-texture";usage1="copy-dst"]
+
+ [:usage0="sampled-texture";usage1="copy-src"]
+
[:usage0="storage";usage1="copy-dst"]
expected:
if os == "win": [PASS, FAIL]
@@ -130,3 +730,7 @@
[:usage0="texture";usage1="copy-src"]
expected:
if os == "win": [PASS, FAIL]
+
+ [:usage0="writeonly-storage-texture";usage1="copy-dst"]
+
+ [:usage0="writeonly-storage-texture";usage1="copy-src"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini
index f265f0598b..b30171db10 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini
@@ -65,6 +65,13 @@
expected:
if os == "win": [PASS, FAIL]
+ [:isAsync=false;shaderModuleStage="compute"]
+ expected: FAIL
+
+ [:isAsync=false;shaderModuleStage="fragment"]
+
+ [:isAsync=false;shaderModuleStage="vertex"]
+
[:isAsync=true;shaderModuleEntryPoint="main";stageEntryPoint=""]
expected: FAIL
@@ -121,6 +128,30 @@
[:isAsync=true;shaderModuleEntryPoint="s%C3%A9quen%C3%A7age";stageEntryPoint="se%CC%81quen%C3%A7age"]
expected: FAIL
+ [:isAsync=true;shaderModuleStage="compute"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="fragment"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="vertex"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:api,validation,shader_module,entry_point:compute_undefined_entry_point_and_extra_stage:*]
+ [:isAsync=false;extraShaderModuleStage="compute"]
+
+ [:isAsync=false;extraShaderModuleStage="fragment"]
+
+ [:isAsync=false;extraShaderModuleStage="vertex"]
+
+ [:isAsync=true;extraShaderModuleStage="compute"]
+ expected: FAIL
+
+ [:isAsync=true;extraShaderModuleStage="fragment"]
+
+ [:isAsync=true;extraShaderModuleStage="vertex"]
+
[cts.https.html?q=webgpu:api,validation,shader_module,entry_point:fragment:*]
[:isAsync=false;shaderModuleEntryPoint="main";stageEntryPoint=""]
@@ -197,6 +228,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:isAsync=false;shaderModuleStage="compute"]
+
+ [:isAsync=false;shaderModuleStage="fragment"]
+ expected: FAIL
+
+ [:isAsync=false;shaderModuleStage="vertex"]
+
[:isAsync=true;shaderModuleEntryPoint="main";stageEntryPoint=""]
expected:
if os == "win": FAIL
@@ -301,6 +339,32 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:isAsync=true;shaderModuleStage="compute"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="fragment"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="vertex"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:api,validation,shader_module,entry_point:fragment_undefined_entry_point_and_extra_stage:*]
+ expected:
+ if os == "linux" and not debug: [OK, CRASH]
+ [:isAsync=false;extraShaderModuleStage="compute"]
+
+ [:isAsync=false;extraShaderModuleStage="fragment"]
+
+ [:isAsync=false;extraShaderModuleStage="vertex"]
+
+ [:isAsync=true;extraShaderModuleStage="compute"]
+
+ [:isAsync=true;extraShaderModuleStage="fragment"]
+ expected: FAIL
+
+ [:isAsync=true;extraShaderModuleStage="vertex"]
+
[cts.https.html?q=webgpu:api,validation,shader_module,entry_point:vertex:*]
[:isAsync=false;shaderModuleEntryPoint="main";stageEntryPoint=""]
@@ -377,6 +441,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:isAsync=false;shaderModuleStage="compute"]
+
+ [:isAsync=false;shaderModuleStage="fragment"]
+
+ [:isAsync=false;shaderModuleStage="vertex"]
+ expected: FAIL
+
[:isAsync=true;shaderModuleEntryPoint="main";stageEntryPoint=""]
expected:
if os == "win": FAIL
@@ -480,3 +551,29 @@
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+
+ [:isAsync=true;shaderModuleStage="compute"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="fragment"]
+ expected: FAIL
+
+ [:isAsync=true;shaderModuleStage="vertex"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:api,validation,shader_module,entry_point:vertex_undefined_entry_point_and_extra_stage:*]
+ expected:
+ if os == "linux" and not debug: [OK, CRASH]
+ [:isAsync=false;extraShaderModuleStage="compute"]
+
+ [:isAsync=false;extraShaderModuleStage="fragment"]
+
+ [:isAsync=false;extraShaderModuleStage="vertex"]
+
+ [:isAsync=true;extraShaderModuleStage="compute"]
+
+ [:isAsync=true;extraShaderModuleStage="fragment"]
+
+ [:isAsync=true;extraShaderModuleStage="vertex"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/overrides/cts.https.html.ini
index 8ccb62f05e..418c78ad00 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/overrides/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/overrides/cts.https.html.ini
@@ -1,10 +1,7 @@
[cts.https.html?q=webgpu:api,validation,shader_module,overrides:id_conflict:*]
[:]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,shader_module,overrides:name_conflict:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini
index bcb4ffcd45..c68645a5bf 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini
@@ -1,185 +1,185 @@
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,clearBuffer:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,computePass,dispatch:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,copyBufferToBuffer:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,copyBufferToTexture:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,copyTextureToBuffer:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,copyTextureToTexture:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,renderPass,draw:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,renderPass,renderBundle:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="finish";awaitLost=true]
@@ -189,152 +189,139 @@
[:stage="submit";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="submit";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,resolveQuerySet:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="finish";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="finish";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="submit";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="submit";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:command,writeTimestamp:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:type="occlusion";stage="finish";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="occlusion";stage="finish";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="occlusion";stage="submit";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="occlusion";stage="submit";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="timestamp";stage="finish";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="timestamp";stage="finish";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="timestamp";stage="submit";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[:type="timestamp";stage="submit";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createBindGroup:*]
- expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:resourceType="compareSamp";entry={"sampler":{"type":"comparison"}};awaitLost=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:resourceType="compareSamp";entry={"sampler":{"type":"comparison"}};awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:resourceType="filtSamp";entry={"sampler":{"type":"filtering"}};awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:resourceType="filtSamp";entry={"sampler":{"type":"filtering"}};awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:resourceType="nonFiltSamp";entry={"sampler":{"type":"filtering"}};awaitLost=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:resourceType="nonFiltSamp";entry={"sampler":{"type":"filtering"}};awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:resourceType="nonFiltSamp";entry={"sampler":{"type":"non-filtering"}};awaitLost=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:resourceType="nonFiltSamp";entry={"sampler":{"type":"non-filtering"}};awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="readwriteStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="sampledTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:resourceType="sampledTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:resourceType="sampledTex";entry={"texture":{"multisampled":false}};awaitLost=false]
expected:
@@ -349,39 +336,31 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:resourceType="sampledTexMS";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:resourceType="sampledTexMS";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:resourceType="storageBuf";entry={"buffer":{"type":"read-only-storage"}};awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:resourceType="storageBuf";entry={"buffer":{"type":"read-only-storage"}};awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:resourceType="storageBuf";entry={"buffer":{"type":"storage"}};awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:resourceType="storageBuf";entry={"buffer":{"type":"storage"}};awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:resourceType="storageTex";entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}};awaitLost=false]
@@ -398,8 +377,7 @@
[:resourceType="uniformBuf";entry={"buffer":{"type":"uniform"}};awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
@@ -408,11 +386,15 @@
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createBindGroupLayout:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:entry={"buffer":{"type":"read-only-storage"}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -458,26 +440,34 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"filtering"}};awaitLost=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"filtering"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"non-filtering"}};awaitLost=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"non-filtering"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}};awaitLost=false]
expected:
@@ -490,6 +480,12 @@
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ [:entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:entry={"texture":{"multisampled":false}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -502,15 +498,10 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createBuffer:*]
@@ -526,104 +517,112 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDEX";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=false]
expected:
@@ -631,7 +630,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
@@ -640,7 +639,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
@@ -649,6 +648,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
@@ -657,6 +657,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
@@ -665,7 +666,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
@@ -674,7 +675,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
@@ -683,6 +684,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
@@ -691,6 +693,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
@@ -699,7 +702,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
@@ -708,7 +711,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
@@ -717,6 +720,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
@@ -725,6 +729,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
@@ -733,7 +738,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=true]
@@ -742,7 +747,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=false]
@@ -751,6 +756,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="INDIRECT";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=true]
@@ -759,51 +765,44 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="MAP_READ";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:usageType="MAP_READ";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:usageType="MAP_READ";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_READ";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_READ";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:usageType="MAP_READ";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:usageType="MAP_READ";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_READ";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
@@ -812,56 +811,52 @@
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="MAP_WRITE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=false]
expected:
@@ -905,7 +900,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
@@ -914,7 +909,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
@@ -923,6 +918,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
@@ -931,6 +927,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
@@ -948,7 +945,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
@@ -957,6 +954,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
@@ -965,6 +963,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="QUERY_RESOLVE";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
@@ -1009,7 +1008,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
@@ -1018,7 +1017,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
@@ -1027,6 +1026,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
@@ -1035,6 +1035,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
@@ -1043,7 +1044,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
@@ -1052,7 +1053,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
@@ -1061,6 +1062,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
@@ -1069,6 +1071,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
@@ -1077,7 +1080,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
@@ -1086,7 +1089,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
@@ -1095,6 +1098,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
@@ -1103,6 +1107,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
@@ -1111,7 +1116,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=true]
@@ -1120,7 +1125,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=false]
@@ -1129,6 +1134,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="STORAGE";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=true]
@@ -1137,6 +1143,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=false]
@@ -1145,7 +1152,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
@@ -1154,7 +1161,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
@@ -1163,6 +1170,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
@@ -1171,6 +1179,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
@@ -1179,7 +1188,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
@@ -1187,7 +1196,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
@@ -1195,6 +1204,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
@@ -1202,6 +1212,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
@@ -1210,7 +1221,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
@@ -1219,7 +1230,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
@@ -1228,6 +1239,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
@@ -1236,6 +1248,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
@@ -1244,7 +1257,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=true]
@@ -1253,7 +1266,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=false]
@@ -1262,6 +1275,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="UNIFORM";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=true]
@@ -1270,6 +1284,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=false]
@@ -1277,96 +1292,91 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_DST";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_DST";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_NONE";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_NONE";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC";awaitLost=false;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC";awaitLost=true;mappedAtCreation=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC_DST";awaitLost=false;mappedAtCreation=true]
@@ -1374,7 +1384,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=false]
@@ -1382,6 +1392,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:usageType="VERTEX";usageCopy="COPY_SRC_DST";awaitLost=true;mappedAtCreation=true]
@@ -1389,148 +1400,149 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createCommandEncoder:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createComputePipeline:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createComputePipelineAsync:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:valid=false;awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:valid=false;awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:valid=true;awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:valid=true;awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createPipelineLayout:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:entry={"buffer":{"type":"read-only-storage"}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:entry={"buffer":{"type":"read-only-storage"}};awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:entry={"buffer":{"type":"storage"}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:entry={"buffer":{"type":"storage"}};awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:entry={"buffer":{"type":"uniform"}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:entry={"buffer":{"type":"uniform"}};awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"comparison"}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:entry={"sampler":{"type":"comparison"}};awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"filtering"}};awaitLost=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"filtering"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"non-filtering"}};awaitLost=false]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:entry={"sampler":{"type":"non-filtering"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"read-write","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:entry={"storageTexture":{"access":"write-only","format":"r32float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:entry={"storageTexture":{"access":"write-only","format":"rgba8unorm"}};awaitLost=false]
expected:
@@ -1544,6 +1556,12 @@
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ [:entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}};awaitLost=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
[:entry={"texture":{"multisampled":false}};awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -1557,16 +1575,10 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=false]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}};awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createQuerySet:*]
@@ -1599,483 +1611,402 @@
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createRenderBundleEncoder:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:format="bgra8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32float";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r32float";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r32sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32float";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg32float";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg32sint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg32sint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg32uint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg32uint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="rg8unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="rgb10a2uint";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2uint";awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32float";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba32float";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba32sint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba32sint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba32uint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba32uint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createRenderPipeline:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createRenderPipelineAsync:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:valid=false;awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:valid=false;awaitLost=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:valid=true;awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:valid=true;awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createSampler:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createShaderModule:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="COMPUTE";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="COMPUTE";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="FRAGMENT";awaitLost=false]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="FRAGMENT";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:stage="VERTEX";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="VERTEX";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:createTexture,2d,compressed_format:*]
expected:
if os == "win" and debug: [OK, TIMEOUT]
if os == "win" and not debug: TIMEOUT
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:format="astc-10x10-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2083,8 +2014,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2092,8 +2022,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2101,8 +2030,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2110,8 +2038,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2119,8 +2046,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2128,8 +2054,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2137,8 +2062,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2146,8 +2070,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2155,8 +2078,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2164,8 +2086,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2173,8 +2094,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2182,8 +2102,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2191,8 +2110,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2200,8 +2118,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2209,8 +2126,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2218,8 +2134,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2227,8 +2142,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2236,8 +2150,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2245,8 +2158,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2254,8 +2166,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2263,8 +2174,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2272,8 +2182,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2281,8 +2190,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2290,8 +2198,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2299,8 +2206,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2308,8 +2214,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2317,8 +2222,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2326,8 +2230,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2335,8 +2238,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2344,8 +2246,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2353,8 +2254,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2362,8 +2262,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2371,8 +2270,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2380,8 +2278,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2389,8 +2286,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2398,8 +2294,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2407,8 +2302,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2416,8 +2310,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2425,8 +2318,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2434,8 +2326,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2443,8 +2334,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2452,8 +2342,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2461,8 +2350,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2470,8 +2358,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2479,8 +2366,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2488,8 +2374,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2497,8 +2382,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2506,8 +2390,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2515,8 +2398,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2524,8 +2406,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2533,8 +2414,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2542,8 +2422,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2551,8 +2430,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2560,8 +2438,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2569,8 +2446,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2578,8 +2454,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2587,8 +2462,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2596,8 +2470,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2605,8 +2478,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2614,8 +2486,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2623,8 +2494,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2632,8 +2502,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2641,8 +2510,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2650,8 +2518,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2659,8 +2526,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2668,8 +2534,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2677,8 +2542,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2686,8 +2550,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2695,8 +2558,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2704,8 +2566,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2713,8 +2574,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2722,8 +2582,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2731,8 +2590,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2740,8 +2598,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2749,8 +2606,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2758,8 +2614,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2767,8 +2622,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2776,8 +2630,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2785,8 +2638,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2794,8 +2646,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2803,8 +2654,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2812,8 +2662,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2821,8 +2670,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2830,8 +2678,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2839,8 +2686,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2848,8 +2694,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2857,8 +2702,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2866,8 +2710,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2875,8 +2718,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2884,8 +2726,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2893,8 +2734,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2902,8 +2742,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2911,8 +2750,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2920,8 +2758,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2929,8 +2766,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2938,8 +2774,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2947,8 +2782,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2956,8 +2790,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2965,8 +2798,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2974,8 +2806,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2983,8 +2814,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2992,8 +2822,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3001,8 +2830,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3010,8 +2838,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3019,8 +2846,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3028,8 +2854,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3037,8 +2862,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3046,8 +2870,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3055,8 +2878,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3064,8 +2886,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3073,8 +2894,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3082,8 +2902,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3091,8 +2910,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3100,8 +2918,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3109,8 +2926,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3118,8 +2934,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3127,8 +2942,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3136,8 +2950,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3145,8 +2958,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3154,8 +2966,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3163,8 +2974,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3172,8 +2982,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3181,8 +2990,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3190,8 +2998,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3199,8 +3006,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3208,8 +3014,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3217,8 +3022,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3226,8 +3030,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3235,8 +3038,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3244,8 +3046,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3253,8 +3054,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3262,8 +3062,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3271,8 +3070,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3280,8 +3078,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3289,8 +3086,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3298,8 +3094,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3307,8 +3102,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3316,8 +3110,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3325,8 +3118,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3334,8 +3126,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3343,8 +3134,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3352,8 +3142,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3361,8 +3150,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3370,8 +3158,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3379,8 +3166,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3388,8 +3174,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3397,8 +3182,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3406,8 +3190,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3415,8 +3198,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3424,8 +3206,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3433,8 +3214,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3442,8 +3222,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3451,8 +3230,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3460,8 +3238,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3469,8 +3246,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3478,8 +3254,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3487,8 +3262,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3496,8 +3270,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3505,8 +3278,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3514,8 +3286,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3523,8 +3294,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3532,8 +3302,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3541,8 +3310,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3550,8 +3318,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3559,8 +3326,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3568,8 +3334,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3577,8 +3342,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3586,8 +3350,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3595,8 +3358,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3604,8 +3366,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3613,8 +3374,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3622,8 +3382,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3631,8 +3390,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3640,8 +3398,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3649,8 +3406,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3658,8 +3414,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3667,8 +3422,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3676,8 +3430,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3685,8 +3438,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3694,8 +3446,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3703,8 +3454,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3712,8 +3462,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3721,8 +3470,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3730,8 +3478,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3739,8 +3486,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3748,8 +3494,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3757,8 +3502,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3766,8 +3510,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3775,8 +3518,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3784,8 +3526,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3793,8 +3534,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3802,8 +3542,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3811,8 +3550,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3820,8 +3558,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3829,8 +3566,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3838,8 +3574,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3847,8 +3582,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3856,8 +3590,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3865,8 +3598,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3874,8 +3606,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3883,8 +3614,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3892,8 +3622,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3901,8 +3630,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3910,8 +3638,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3919,8 +3646,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3928,8 +3654,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3937,8 +3662,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3946,8 +3670,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3955,8 +3678,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3964,8 +3686,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3973,8 +3694,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3982,8 +3702,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -3991,8 +3710,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4000,8 +3718,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4009,8 +3726,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4018,8 +3734,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4027,8 +3742,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4036,8 +3750,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4045,8 +3758,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4054,8 +3766,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4063,8 +3774,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4072,8 +3782,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4081,771 +3790,753 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4854,8 +4545,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4863,41 +4553,41 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4906,8 +4596,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4915,7 +4604,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4924,8 +4613,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4933,7 +4621,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4942,8 +4630,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4951,7 +4638,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4960,8 +4647,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4969,7 +4655,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4978,8 +4664,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4987,8 +4672,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -4996,8 +4680,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5005,8 +4688,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5014,8 +4696,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5023,8 +4704,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5032,8 +4712,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5041,8 +4720,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5050,8 +4728,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5059,8 +4736,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5068,8 +4744,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5077,8 +4752,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5086,8 +4760,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5095,8 +4768,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5104,8 +4776,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5113,8 +4784,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5122,8 +4792,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5131,8 +4800,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5140,8 +4808,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5149,8 +4816,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5158,8 +4824,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5167,8 +4832,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5176,8 +4840,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5185,8 +4848,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5194,8 +4856,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5203,8 +4864,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5212,8 +4872,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5221,8 +4880,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5230,8 +4888,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5239,8 +4896,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5248,8 +4904,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5257,8 +4912,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5266,8 +4920,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5275,8 +4928,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5284,8 +4936,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5293,8 +4944,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5302,8 +4952,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5311,8 +4960,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5320,8 +4968,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5329,8 +4976,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5338,8 +4984,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5347,8 +4992,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5356,8 +5000,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5365,8 +5008,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5374,8 +5016,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5383,8 +5024,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5392,8 +5032,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5401,8 +5040,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5410,8 +5048,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5419,8 +5056,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5428,8 +5064,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5437,8 +5072,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5446,8 +5080,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5455,8 +5088,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5464,8 +5096,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5473,8 +5104,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5482,8 +5112,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5491,8 +5120,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5500,8 +5128,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5509,8 +5136,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5518,8 +5144,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5527,8 +5152,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5536,8 +5160,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5545,8 +5168,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5554,8 +5176,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5563,8 +5184,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5572,8 +5192,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5581,8 +5200,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5590,8 +5208,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5599,8 +5216,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5608,8 +5224,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5617,8 +5232,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5626,8 +5240,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5635,8 +5248,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5644,8 +5256,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5653,8 +5264,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5662,8 +5272,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5671,8 +5280,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5680,8 +5288,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5689,8 +5296,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -5698,8 +5304,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -6933,7 +6538,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="dst";awaitLost=true]
@@ -6941,6 +6546,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="none";awaitLost=false]
@@ -6948,7 +6554,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="none";awaitLost=true]
@@ -6956,6 +6562,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src";awaitLost=false]
@@ -6963,7 +6570,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src";awaitLost=true]
@@ -6971,6 +6578,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -6979,7 +6587,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -6987,6 +6595,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -6994,52 +6603,49 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -7047,6 +6653,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -7054,268 +6661,269 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="dst";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:format="r8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="r8unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:format="r8unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
@@ -8415,7 +8023,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -8423,6 +8031,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="none";awaitLost=false]
@@ -8431,7 +8040,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="none";awaitLost=true]
@@ -8439,6 +8048,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src";awaitLost=false]
@@ -8447,7 +8057,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src";awaitLost=true]
@@ -8455,6 +8065,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -8480,7 +8091,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -8488,6 +8099,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -8496,7 +8108,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -8504,6 +8116,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -8512,7 +8125,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -8520,6 +8133,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -8528,7 +8142,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -8536,6 +8150,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="dst";awaitLost=false]
@@ -8544,7 +8159,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="dst";awaitLost=true]
@@ -8552,6 +8167,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="none";awaitLost=false]
@@ -8560,7 +8176,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="none";awaitLost=true]
@@ -8568,6 +8184,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src";awaitLost=false]
@@ -8576,7 +8193,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src";awaitLost=true]
@@ -8584,6 +8201,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -8592,7 +8210,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -8600,6 +8218,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -8608,7 +8227,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -8616,6 +8235,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="none";awaitLost=false]
@@ -8624,7 +8244,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="none";awaitLost=true]
@@ -8632,6 +8252,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src";awaitLost=false]
@@ -8640,7 +8261,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src";awaitLost=true]
@@ -8648,6 +8269,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -8656,7 +8278,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -8664,6 +8286,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="dst";awaitLost=false]
@@ -8672,7 +8295,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="dst";awaitLost=true]
@@ -8680,6 +8303,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="none";awaitLost=false]
@@ -8688,7 +8312,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="none";awaitLost=true]
@@ -8696,6 +8320,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src";awaitLost=false]
@@ -8704,7 +8329,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src";awaitLost=true]
@@ -8712,6 +8337,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -8720,7 +8346,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -8728,6 +8354,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -8736,7 +8363,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -8744,6 +8371,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -8751,7 +8379,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -8759,6 +8387,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -8767,7 +8396,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -8775,6 +8404,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -8783,7 +8413,7 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -8791,6 +8421,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2uint";usageType="render";usageCopy="dst";awaitLost=false]
@@ -11082,12 +10713,14 @@
if os == "win" and debug: [OK, TIMEOUT]
if os == "win" and not debug: TIMEOUT
if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:format="astc-10x10-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11095,6 +10728,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11102,6 +10736,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11109,6 +10744,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11116,6 +10752,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11123,6 +10760,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11130,6 +10768,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11137,6 +10776,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11144,6 +10784,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11151,6 +10792,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11158,6 +10800,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11165,6 +10808,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11172,6 +10816,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11179,6 +10824,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11186,6 +10832,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11193,6 +10840,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11200,6 +10848,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11207,6 +10856,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11214,6 +10864,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11221,6 +10872,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11228,6 +10880,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11235,6 +10888,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11242,6 +10896,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11249,6 +10904,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11256,6 +10912,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11263,6 +10920,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11270,6 +10928,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11277,6 +10936,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11284,6 +10944,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11291,6 +10952,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11298,6 +10960,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11305,6 +10968,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11312,6 +10976,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11319,6 +10984,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11326,6 +10992,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11333,6 +11000,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11340,6 +11008,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11347,6 +11016,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11354,6 +11024,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11361,6 +11032,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11368,6 +11040,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11375,6 +11048,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11382,6 +11056,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11389,6 +11064,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11396,6 +11072,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11403,6 +11080,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11410,6 +11088,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11417,6 +11096,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11424,6 +11104,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11431,6 +11112,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11438,6 +11120,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11445,6 +11128,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11452,6 +11136,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11459,6 +11144,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11466,6 +11152,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11473,6 +11160,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11480,6 +11168,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11487,6 +11176,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11494,6 +11184,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11501,6 +11192,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11508,6 +11200,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11515,6 +11208,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11522,6 +11216,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11529,6 +11224,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11536,6 +11232,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11543,6 +11240,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11550,6 +11248,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11557,6 +11256,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11564,6 +11264,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11571,6 +11272,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11578,6 +11280,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11585,6 +11288,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11592,6 +11296,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11599,6 +11304,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11606,6 +11312,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11613,6 +11320,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11620,6 +11328,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11627,6 +11336,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11634,6 +11344,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11641,6 +11352,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11648,6 +11360,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11655,6 +11368,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11662,6 +11376,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11669,6 +11384,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11676,6 +11392,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11683,6 +11400,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11690,6 +11408,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11697,6 +11416,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11704,6 +11424,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11711,6 +11432,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11718,6 +11440,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11725,6 +11448,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11732,6 +11456,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11739,6 +11464,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11746,6 +11472,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11753,6 +11480,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11760,6 +11488,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11767,6 +11496,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11774,6 +11504,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11781,6 +11512,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11788,6 +11520,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11795,6 +11528,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11802,6 +11536,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11809,6 +11544,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11816,6 +11552,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11823,6 +11560,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11830,6 +11568,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11837,6 +11576,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11844,6 +11584,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11851,6 +11592,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11858,6 +11600,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11865,6 +11608,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11872,6 +11616,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11879,6 +11624,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11886,6 +11632,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11893,6 +11640,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11900,6 +11648,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11907,6 +11656,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11914,6 +11664,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11921,6 +11672,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11928,6 +11680,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11935,6 +11688,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11942,6 +11696,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -11949,6 +11704,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -11956,6 +11712,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -11963,6 +11720,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -11970,6 +11728,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -11977,6 +11736,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -11984,6 +11744,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -11991,6 +11752,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -11998,6 +11760,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12005,6 +11768,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12012,6 +11776,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12019,6 +11784,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12026,6 +11792,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12033,6 +11800,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12040,6 +11808,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12047,6 +11816,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12054,6 +11824,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12061,6 +11832,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12068,6 +11840,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12075,6 +11848,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12082,6 +11856,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12089,6 +11864,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12096,6 +11872,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12103,6 +11880,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12110,6 +11888,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12117,6 +11896,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12124,6 +11904,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12131,6 +11912,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12138,6 +11920,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12145,6 +11928,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12152,6 +11936,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12159,6 +11944,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12166,6 +11952,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12173,6 +11960,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12180,6 +11968,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12187,6 +11976,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12194,6 +11984,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12201,6 +11992,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12208,6 +12000,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12215,6 +12008,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12222,6 +12016,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12229,6 +12024,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12236,6 +12032,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12243,6 +12040,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12250,6 +12048,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12257,6 +12056,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12264,6 +12064,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12271,6 +12072,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12278,6 +12080,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12285,6 +12088,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12292,6 +12096,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12299,6 +12104,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12306,6 +12112,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12313,6 +12120,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12320,6 +12128,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12327,6 +12136,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12334,6 +12144,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12341,6 +12152,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12348,6 +12160,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12355,6 +12168,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12362,6 +12176,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12369,6 +12184,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12376,6 +12192,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12383,6 +12200,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12390,6 +12208,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12397,6 +12216,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12404,6 +12224,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12411,6 +12232,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12418,6 +12240,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12425,6 +12248,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12432,6 +12256,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12439,6 +12264,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12446,6 +12272,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12453,6 +12280,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12460,6 +12288,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12467,6 +12296,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12474,6 +12304,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12481,6 +12312,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12488,6 +12320,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12495,6 +12328,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12502,6 +12336,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12509,6 +12344,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12516,6 +12352,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12523,6 +12360,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12530,6 +12368,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12537,6 +12376,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12544,6 +12384,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12551,6 +12392,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12558,6 +12400,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12565,6 +12408,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12572,6 +12416,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12579,6 +12424,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12586,6 +12432,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12593,6 +12440,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -12600,6 +12448,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -12607,6 +12456,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -12614,6 +12464,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12621,6 +12472,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -12628,6 +12480,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -12635,6 +12488,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -12642,6 +12496,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -12649,21 +12504,22 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -12673,510 +12529,404 @@
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13184,6 +12934,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13191,20 +12942,21 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13212,6 +12964,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13219,6 +12972,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13226,6 +12980,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13233,6 +12988,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13240,6 +12996,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13247,6 +13004,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13254,6 +13012,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13261,6 +13020,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13268,6 +13028,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13275,6 +13036,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13282,6 +13044,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13289,6 +13052,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13296,6 +13060,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13303,6 +13068,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13310,6 +13076,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13317,6 +13084,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13324,6 +13092,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13331,6 +13100,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13338,6 +13108,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13345,6 +13116,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13352,6 +13124,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13359,6 +13132,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13366,6 +13140,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13373,6 +13148,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13380,6 +13156,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13387,6 +13164,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13394,6 +13172,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-r11unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13401,6 +13180,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13408,6 +13188,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13415,6 +13196,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13422,6 +13204,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13429,6 +13212,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13436,6 +13220,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13443,6 +13228,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13450,6 +13236,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13457,6 +13244,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13464,6 +13252,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13471,6 +13260,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13478,6 +13268,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13485,6 +13276,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13492,6 +13284,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13499,6 +13292,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13506,6 +13300,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13513,6 +13308,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13520,6 +13316,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13527,6 +13324,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13534,6 +13332,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13541,6 +13340,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13548,6 +13348,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13555,6 +13356,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13562,6 +13364,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13569,6 +13372,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13576,6 +13380,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13583,6 +13388,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13590,6 +13396,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13597,6 +13404,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13604,6 +13412,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13611,6 +13420,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13618,6 +13428,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13625,6 +13436,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13632,6 +13444,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13639,6 +13452,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13646,6 +13460,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13653,6 +13468,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13660,6 +13476,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13667,6 +13484,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13674,6 +13492,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13681,6 +13500,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13688,6 +13508,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13695,6 +13516,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13702,6 +13524,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13709,6 +13532,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13716,6 +13540,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13723,6 +13548,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13730,6 +13556,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13737,6 +13564,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13744,6 +13572,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13751,6 +13580,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13758,6 +13588,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13765,6 +13596,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13772,6 +13604,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13779,6 +13612,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13786,6 +13620,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13793,6 +13628,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -13800,6 +13636,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -13807,6 +13644,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -13814,6 +13652,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -13821,6 +13660,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -13828,6 +13668,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -13835,6 +13676,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -13842,6 +13684,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -13849,6 +13692,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -14133,7 +13977,7 @@
[:format="r16float";usageType="render";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -14287,40 +14131,35 @@
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16sint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16sint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16sint";usageType="texture";usageCopy="src";awaitLost=false]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16sint";usageType="texture";usageCopy="src";awaitLost=true]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16sint";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -14343,8 +14182,7 @@
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16uint";usageType="render";usageCopy="dst";awaitLost=true]
@@ -14386,16 +14224,14 @@
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16uint";usageType="render";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r16uint";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -15031,293 +14867,196 @@
if os == "mac": [TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="render";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="render";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="none";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="none";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";usageType="texture";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="dst";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="dst";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src-dest";awaitLost=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="render";usageCopy="src-dest";awaitLost=true]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
@@ -15721,7 +15460,7 @@
[:format="rg16uint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -15729,7 +15468,7 @@
[:format="rg16uint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -15745,7 +15484,7 @@
[:format="rg16uint";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -16348,6 +16087,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="dst";awaitLost=true]
@@ -16355,6 +16095,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="none";awaitLost=false]
@@ -16362,6 +16103,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="none";awaitLost=true]
@@ -16369,6 +16111,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="src";awaitLost=false]
@@ -16376,6 +16119,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="src";awaitLost=true]
@@ -16383,6 +16127,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -16390,6 +16135,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -16397,6 +16143,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -16404,6 +16151,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -16411,18 +16159,21 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src";awaitLost=false]
@@ -16430,6 +16181,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src";awaitLost=true]
@@ -16437,6 +16189,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -16444,6 +16197,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8sint";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -16451,246 +16205,287 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8snorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="dst";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="dst";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src-dest";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="render";usageCopy="src-dest";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8uint";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="render";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="none";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="none";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2uint";usageType="render";usageCopy="dst";awaitLost=false]
@@ -18426,6 +18221,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8snorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -18636,6 +18432,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="dst";awaitLost=true]
@@ -18643,6 +18440,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="none";awaitLost=false]
@@ -18650,6 +18448,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="none";awaitLost=true]
@@ -18657,6 +18456,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="src";awaitLost=false]
@@ -18664,6 +18464,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="src";awaitLost=true]
@@ -18671,6 +18472,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -18678,6 +18480,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -18685,6 +18488,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="dst";awaitLost=false]
@@ -18692,6 +18496,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="dst";awaitLost=true]
@@ -18699,6 +18504,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="none";awaitLost=false]
@@ -18706,6 +18512,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="none";awaitLost=true]
@@ -18713,6 +18520,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="src";awaitLost=false]
@@ -18720,6 +18528,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="src";awaitLost=true]
@@ -18727,6 +18536,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="src-dest";awaitLost=false]
@@ -18734,6 +18544,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="storage";usageCopy="src-dest";awaitLost=true]
@@ -18741,6 +18552,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -18748,6 +18560,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -18755,6 +18568,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="none";awaitLost=false]
@@ -18762,6 +18576,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="none";awaitLost=true]
@@ -18769,6 +18584,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="src";awaitLost=false]
@@ -18776,6 +18592,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="src";awaitLost=true]
@@ -18783,6 +18600,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -18790,6 +18608,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -18797,6 +18616,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="dst";awaitLost=false]
@@ -18804,6 +18624,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="dst";awaitLost=true]
@@ -18811,6 +18632,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="none";awaitLost=false]
@@ -18818,6 +18640,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="none";awaitLost=true]
@@ -18825,6 +18648,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="src";awaitLost=false]
@@ -18832,6 +18656,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="src";awaitLost=true]
@@ -18839,6 +18664,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="src-dest";awaitLost=false]
@@ -18846,6 +18672,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="render";usageCopy="src-dest";awaitLost=true]
@@ -18853,6 +18680,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=false]
@@ -18860,6 +18688,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="dst";awaitLost=true]
@@ -18867,6 +18696,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=false]
@@ -18874,6 +18704,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="none";awaitLost=true]
@@ -18881,6 +18712,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false]
@@ -18888,6 +18720,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="src";awaitLost=true]
@@ -18895,6 +18728,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=false]
@@ -18902,6 +18736,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";usageType="texture";usageCopy="src-dest";awaitLost=true]
@@ -18909,141 +18744,123 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:importExternalTexture:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:sourceType="VideoElement";awaitLost=false]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:sourceType="VideoElement";awaitLost=true]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:sourceType="VideoFrame";awaitLost=false]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:sourceType="VideoFrame";awaitLost=true]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:queue,copyExternalImageToTexture,canvas:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:canvasType="offscreen";contextType="2d";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="2d";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="bitmaprenderer";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="bitmaprenderer";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgl";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgl";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgl2";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgl2";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgpu";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextType="webgpu";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="2d";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="2d";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="bitmaprenderer";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="bitmaprenderer";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgl";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgl";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgl2";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgl2";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgpu";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextType="webgpu";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:queue,copyExternalImageToTexture,imageBitmap:*]
@@ -19063,961 +18880,649 @@
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:queue,writeBuffer:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:numElements=16;awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:numElements=16;awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:numElements=4;awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:numElements=4;awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:numElements=8;awaitLost=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:numElements=8;awaitLost=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:queue,writeTexture,2d,compressed_format:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:format="astc-10x10-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x10-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x5-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x6-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-10x8-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x10-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-12x12-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-4x4-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x4-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-5x5-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x5-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-6x6-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x5-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x6-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="astc-8x8-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc1-rgba-unorm-srgb";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc2-rgba-unorm-srgb";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc3-rgba-unorm-srgb";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc4-r-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc5-rg-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc6h-rgb-ufloat";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bc7-rgba-unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-r11unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="eac-rg11unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8a1unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgb8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="etc2-rgba8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:api,validation,state,device_lost,destroy:queue,writeTexture,2d,uncompressed_format:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:format="bgra8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="bgra8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r32uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8sint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8snorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8uint";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="r8unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg11b10ufloat";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rg16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg32uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rg8unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rg8unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:format="rgb10a2uint";awaitLost=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2uint";awaitLost=true]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb10a2unorm";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb9e5ufloat";awaitLost=false]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgb9e5ufloat";awaitLost=true]
expected:
if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:format="rgba16float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba16uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32float";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32float";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba32uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8sint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8sint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8snorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8snorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8uint";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8uint";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";awaitLost=false]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:format="rgba8unorm-srgb";awaitLost=true]
- expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html.ini
index 51d204b505..3109776259 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html.ini
@@ -18,19 +18,5 @@
[:]
-[cts.https.html?q=webgpu:api,validation,texture,bgra8unorm_storage:create_shader_module_with_bgra8unorm_storage:*]
- [:shaderType="compute"]
-
- [:shaderType="fragment"]
-
-
-[cts.https.html?q=webgpu:api,validation,texture,bgra8unorm_storage:create_shader_module_without_bgra8unorm_storage:*]
- [:shaderType="compute"]
- expected: FAIL
-
- [:shaderType="fragment"]
- expected: FAIL
-
-
[cts.https.html?q=webgpu:api,validation,texture,bgra8unorm_storage:create_texture:*]
[:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html.ini
new file mode 100644
index 0000000000..6802279321
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html.ini
@@ -0,0 +1,124 @@
+[cts.https.html?q=webgpu:compat,api,validation,createBindGroup:viewDimension_matches_textureBindingViewDimension:*]
+ [:dimension="1d";textureBindingViewDimension="1d";viewDimension="1d";depthOrArrayLayers=1]
+
+ [:dimension="1d";textureBindingViewDimension="1d";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array";viewDimension="cube";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=2]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="_undef_";viewDimension="cube";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="cube";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="cube";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="cube";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="2d";textureBindingViewDimension="cube";viewDimension="cube";depthOrArrayLayers=6]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="3d";depthOrArrayLayers=1]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="3d";depthOrArrayLayers=2]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="3d";depthOrArrayLayers=6]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="_undef_";depthOrArrayLayers=2]
+
+ [:dimension="3d";textureBindingViewDimension="3d";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="2d-array";viewDimension="cube";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=1]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=2]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="_undef_";viewDimension="cube";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="cube";viewDimension="2d";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="cube";viewDimension="2d-array";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="cube";viewDimension="_undef_";depthOrArrayLayers=6]
+
+ [:dimension="_undef_";textureBindingViewDimension="cube";viewDimension="cube";depthOrArrayLayers=6]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini
new file mode 100644
index 0000000000..065e48b6fa
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini
@@ -0,0 +1,8 @@
+[cts.https.html?q=webgpu:compat,api,validation,createBindGroupLayout:unsupportedStorageTextureFormats:*]
+ expected:
+ if os == "mac": SKIP
+ [:format="rg32float"]
+
+ [:format="rg32sint"]
+
+ [:format="rg32uint"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini
new file mode 100644
index 0000000000..49c932d5b6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini
@@ -0,0 +1,108 @@
+[cts.https.html?q=webgpu:compat,api,validation,encoding,cmds,copyTextureToTexture:compressed:*]
+ [:format="astc-10x10-unorm"]
+
+ [:format="astc-10x10-unorm-srgb"]
+
+ [:format="astc-10x5-unorm"]
+
+ [:format="astc-10x5-unorm-srgb"]
+
+ [:format="astc-10x6-unorm"]
+
+ [:format="astc-10x6-unorm-srgb"]
+
+ [:format="astc-10x8-unorm"]
+
+ [:format="astc-10x8-unorm-srgb"]
+
+ [:format="astc-12x10-unorm"]
+
+ [:format="astc-12x10-unorm-srgb"]
+
+ [:format="astc-12x12-unorm"]
+
+ [:format="astc-12x12-unorm-srgb"]
+
+ [:format="astc-4x4-unorm"]
+
+ [:format="astc-4x4-unorm-srgb"]
+
+ [:format="astc-5x4-unorm"]
+
+ [:format="astc-5x4-unorm-srgb"]
+
+ [:format="astc-5x5-unorm"]
+
+ [:format="astc-5x5-unorm-srgb"]
+
+ [:format="astc-6x5-unorm"]
+
+ [:format="astc-6x5-unorm-srgb"]
+
+ [:format="astc-6x6-unorm"]
+
+ [:format="astc-6x6-unorm-srgb"]
+
+ [:format="astc-8x5-unorm"]
+
+ [:format="astc-8x5-unorm-srgb"]
+
+ [:format="astc-8x6-unorm"]
+
+ [:format="astc-8x6-unorm-srgb"]
+
+ [:format="astc-8x8-unorm"]
+
+ [:format="astc-8x8-unorm-srgb"]
+
+ [:format="bc1-rgba-unorm"]
+
+ [:format="bc1-rgba-unorm-srgb"]
+
+ [:format="bc2-rgba-unorm"]
+
+ [:format="bc2-rgba-unorm-srgb"]
+
+ [:format="bc3-rgba-unorm"]
+
+ [:format="bc3-rgba-unorm-srgb"]
+
+ [:format="bc4-r-snorm"]
+
+ [:format="bc4-r-unorm"]
+
+ [:format="bc5-rg-snorm"]
+
+ [:format="bc5-rg-unorm"]
+
+ [:format="bc6h-rgb-float"]
+
+ [:format="bc6h-rgb-ufloat"]
+
+ [:format="bc7-rgba-unorm"]
+
+ [:format="bc7-rgba-unorm-srgb"]
+
+ [:format="eac-r11snorm"]
+
+ [:format="eac-r11unorm"]
+
+ [:format="eac-rg11snorm"]
+
+ [:format="eac-rg11unorm"]
+
+ [:format="etc2-rgb8a1unorm"]
+
+ [:format="etc2-rgb8a1unorm-srgb"]
+
+ [:format="etc2-rgb8unorm"]
+
+ [:format="etc2-rgb8unorm-srgb"]
+
+ [:format="etc2-rgba8unorm"]
+
+ [:format="etc2-rgba8unorm-srgb"]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,encoding,cmds,copyTextureToTexture:multisample:*]
+ [:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini
new file mode 100644
index 0000000000..67141742a5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini
@@ -0,0 +1,16 @@
+[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,depth_stencil_state:depthBiasClamp:*]
+ [:depthBiasClamp="_undef_";async=false]
+
+ [:depthBiasClamp="_undef_";async=true]
+
+ [:depthBiasClamp=0.1;async=false]
+
+ [:depthBiasClamp=0.1;async=true]
+
+ [:depthBiasClamp=0;async=false]
+
+ [:depthBiasClamp=0;async=true]
+
+ [:depthBiasClamp=1;async=false]
+
+ [:depthBiasClamp=1;async=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html.ini
index 99080be134..92faaec664 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html.ini
@@ -1,8 +1,72 @@
+[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,shader_module:interpolate:*]
+ [:interpolate="";entryPoint="fsWithInterpolationUsage1"]
+
+ [:interpolate="";entryPoint="fsWithInterpolationUsage2"]
+
+ [:interpolate="";entryPoint="fsWithInterpolationUsage3"]
+
+ [:interpolate="";entryPoint="fsWithoutInterpolationUsage"]
+
+ [:interpolate="%40interpolate(linear)";entryPoint="fsWithInterpolationUsage1"]
+
+ [:interpolate="%40interpolate(linear)";entryPoint="fsWithInterpolationUsage2"]
+
+ [:interpolate="%40interpolate(linear)";entryPoint="fsWithInterpolationUsage3"]
+
+ [:interpolate="%40interpolate(linear)";entryPoint="fsWithoutInterpolationUsage"]
+
+ [:interpolate="%40interpolate(linear,%20sample)";entryPoint="fsWithInterpolationUsage1"]
+
+ [:interpolate="%40interpolate(linear,%20sample)";entryPoint="fsWithInterpolationUsage2"]
+
+ [:interpolate="%40interpolate(linear,%20sample)";entryPoint="fsWithInterpolationUsage3"]
+
+ [:interpolate="%40interpolate(linear,%20sample)";entryPoint="fsWithoutInterpolationUsage"]
+
+ [:interpolate="%40interpolate(perspective,%20sample)";entryPoint="fsWithInterpolationUsage1"]
+
+ [:interpolate="%40interpolate(perspective,%20sample)";entryPoint="fsWithInterpolationUsage2"]
+
+ [:interpolate="%40interpolate(perspective,%20sample)";entryPoint="fsWithInterpolationUsage3"]
+
+ [:interpolate="%40interpolate(perspective,%20sample)";entryPoint="fsWithoutInterpolationUsage"]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,shader_module:sample_index:*]
+ [:entryPoint="fsWithSampleIndexUsage"]
+
+ [:entryPoint="fsWithoutSampleIndexUsage"]
+
+
[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,shader_module:sample_mask:*]
[:entryPoint="fsWithSampleMaskUsage"]
- expected:
- if os == "mac": FAIL
[:entryPoint="fsWithoutSampleMaskUsage"]
- expected:
- if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,shader_module:unsupportedStorageTextureFormats,computePipeline:*]
+ [:format="rg32float";async=false]
+
+ [:format="rg32float";async=true]
+
+ [:format="rg32sint";async=false]
+
+ [:format="rg32sint";async=true]
+
+ [:format="rg32uint";async=false]
+
+ [:format="rg32uint";async=true]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,render_pipeline,shader_module:unsupportedStorageTextureFormats,renderPipeline:*]
+ [:format="rg32float";async=false]
+
+ [:format="rg32float";async=true]
+
+ [:format="rg32sint";async=false]
+
+ [:format="rg32sint";async=true]
+
+ [:format="rg32uint";async=false]
+
+ [:format="rg32uint";async=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html.ini
index 3a0f384ff1..ef70b01f45 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html.ini
@@ -1,3 +1,115 @@
+[cts.https.html?q=webgpu:compat,api,validation,texture,createTexture:depthOrArrayLayers_incompatible_with_textureBindingViewDimension:*]
+ [:textureBindingViewDimension="2d";depthOrArrayLayers=1]
+
+ [:textureBindingViewDimension="2d";depthOrArrayLayers=12]
+
+ [:textureBindingViewDimension="2d";depthOrArrayLayers=3]
+
+ [:textureBindingViewDimension="2d";depthOrArrayLayers=6]
+
+ [:textureBindingViewDimension="cube";depthOrArrayLayers=1]
+
+ [:textureBindingViewDimension="cube";depthOrArrayLayers=12]
+
+ [:textureBindingViewDimension="cube";depthOrArrayLayers=3]
+
+ [:textureBindingViewDimension="cube";depthOrArrayLayers=6]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,texture,createTexture:format_reinterpretation:*]
+ [:format="astc-10x10-unorm-srgb"]
+
+ [:format="astc-10x5-unorm-srgb"]
+
+ [:format="astc-10x6-unorm-srgb"]
+
+ [:format="astc-10x8-unorm-srgb"]
+
+ [:format="astc-12x10-unorm-srgb"]
+
+ [:format="astc-12x12-unorm-srgb"]
+
+ [:format="astc-4x4-unorm-srgb"]
+
+ [:format="astc-5x4-unorm-srgb"]
+
+ [:format="astc-5x5-unorm-srgb"]
+
+ [:format="astc-6x5-unorm-srgb"]
+
+ [:format="astc-6x6-unorm-srgb"]
+
+ [:format="astc-8x5-unorm-srgb"]
+
+ [:format="astc-8x6-unorm-srgb"]
+
+ [:format="astc-8x8-unorm-srgb"]
+
+ [:format="bc1-rgba-unorm-srgb"]
+
+ [:format="bc2-rgba-unorm-srgb"]
+
+ [:format="bc3-rgba-unorm-srgb"]
+
+ [:format="bc7-rgba-unorm-srgb"]
+
+ [:format="bgra8unorm-srgb"]
+
+ [:format="etc2-rgb8a1unorm-srgb"]
+
+ [:format="etc2-rgb8unorm-srgb"]
+
+ [:format="etc2-rgba8unorm-srgb"]
+
+ [:format="rgba8unorm-srgb"]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,texture,createTexture:invalidTextureBindingViewDimension:*]
+ [:dimension="1d";textureBindingViewDimension="1d"]
+
+ [:dimension="1d";textureBindingViewDimension="2d"]
+
+ [:dimension="1d";textureBindingViewDimension="2d-array"]
+
+ [:dimension="1d";textureBindingViewDimension="3d"]
+
+ [:dimension="1d";textureBindingViewDimension="cube"]
+
+ [:dimension="1d";textureBindingViewDimension="cube-array"]
+
+ [:dimension="2d";textureBindingViewDimension="1d"]
+
+ [:dimension="2d";textureBindingViewDimension="2d"]
+
+ [:dimension="2d";textureBindingViewDimension="2d-array"]
+
+ [:dimension="2d";textureBindingViewDimension="3d"]
+
+ [:dimension="2d";textureBindingViewDimension="cube"]
+
+ [:dimension="2d";textureBindingViewDimension="cube-array"]
+
+ [:dimension="3d";textureBindingViewDimension="1d"]
+
+ [:dimension="3d";textureBindingViewDimension="2d"]
+
+ [:dimension="3d";textureBindingViewDimension="2d-array"]
+
+ [:dimension="3d";textureBindingViewDimension="3d"]
+
+ [:dimension="3d";textureBindingViewDimension="cube"]
+
+ [:dimension="3d";textureBindingViewDimension="cube-array"]
+
+
+[cts.https.html?q=webgpu:compat,api,validation,texture,createTexture:unsupportedStorageTextureFormats:*]
+ [:format="rg32float"]
+
+ [:format="rg32sint"]
+
+ [:format="rg32uint"]
+
+
[cts.https.html?q=webgpu:compat,api,validation,texture,createTexture:unsupportedTextureFormats:*]
[:]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/idl/constructable/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/idl/constructable/cts.https.html.ini
new file mode 100644
index 0000000000..649ce85965
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/idl/constructable/cts.https.html.ini
@@ -0,0 +1,24 @@
+[cts.https.html?q=webgpu:idl,constructable:gpu_errors:*]
+ [:errorType="GPUInternalError"]
+
+ [:errorType="GPUOutOfMemoryError"]
+
+ [:errorType="GPUValidationError"]
+
+
+[cts.https.html?q=webgpu:idl,constructable:pipeline_errors:*]
+ [:msg="_undef_";options={"reason":"internal"}]
+ expected: FAIL
+
+ [:msg="_undef_";options={"reason":"validation"}]
+ expected: FAIL
+
+ [:msg="some%20msg";options={"reason":"internal"}]
+ expected: FAIL
+
+ [:msg="some%20msg";options={"reason":"validation"}]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:idl,constructable:uncaptured_error_event:*]
+ [:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/print_environment/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/print_environment/cts.https.html.ini
new file mode 100644
index 0000000000..7332e42544
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/print_environment/cts.https.html.ini
@@ -0,0 +1,2 @@
+[cts.https.html?q=webgpu:print_environment:info:*]
+ [:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html.ini
new file mode 100644
index 0000000000..9884c4d538
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html.ini
@@ -0,0 +1,220 @@
+[cts.https.html?q=webgpu:shader,execution,expression,access,array,index:abstract_scalar:*]
+ [:elementType="abstract-float";indexType="i32"]
+
+ [:elementType="abstract-float";indexType="u32"]
+
+ [:elementType="abstract-int";indexType="i32"]
+ expected: FAIL
+
+ [:elementType="abstract-int";indexType="u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,array,index:bool:*]
+ [:inputSource="const";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="storage_r";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="storage_r";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="storage_rw";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="storage_rw";indexType="u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,array,index:concrete_scalar:*]
+ [:inputSource="const";elementType="f16";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="i32";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="i32";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="u32";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="u32";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32"]
+
+ [:inputSource="storage_r";elementType="i32";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="i32";indexType="u32"]
+
+ [:inputSource="storage_r";elementType="u32";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="u32";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="u32"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,array,index:runtime_sized:*]
+ [:elementType="f16";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:elementType="f16";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:elementType="f32";indexType="i32"]
+
+ [:elementType="f32";indexType="u32"]
+
+ [:elementType="i32";indexType="i32"]
+
+ [:elementType="i32";indexType="u32"]
+
+ [:elementType="u32";indexType="i32"]
+
+ [:elementType="u32";indexType="u32"]
+
+ [:elementType="vec2h";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:elementType="vec2h";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:elementType="vec2u";indexType="i32"]
+
+ [:elementType="vec2u";indexType="u32"]
+
+ [:elementType="vec3f";indexType="i32"]
+
+ [:elementType="vec3f";indexType="u32"]
+
+ [:elementType="vec4i";indexType="i32"]
+
+ [:elementType="vec4i";indexType="u32"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,array,index:vector:*]
+ [:inputSource="const";elementType="vec4f";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="vec4f";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="vec4h";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="vec4h";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="vec4i";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="vec4i";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="vec4u";indexType="i32"]
+ expected: FAIL
+
+ [:inputSource="const";elementType="vec4u";indexType="u32"]
+ expected: FAIL
+
+ [:inputSource="storage_r";elementType="vec4f";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="vec4f";indexType="u32"]
+
+ [:inputSource="storage_r";elementType="vec4h";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="vec4h";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="vec4i";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="vec4i";indexType="u32"]
+
+ [:inputSource="storage_r";elementType="vec4u";indexType="i32"]
+
+ [:inputSource="storage_r";elementType="vec4u";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="vec4f";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="vec4f";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="vec4h";indexType="i32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_rw";elementType="vec4h";indexType="u32"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="storage_rw";elementType="vec4i";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="vec4i";indexType="u32"]
+
+ [:inputSource="storage_rw";elementType="vec4u";indexType="i32"]
+
+ [:inputSource="storage_rw";elementType="vec4u";indexType="u32"]
+
+ [:inputSource="uniform";elementType="vec4f";indexType="i32"]
+
+ [:inputSource="uniform";elementType="vec4f";indexType="u32"]
+
+ [:inputSource="uniform";elementType="vec4i";indexType="i32"]
+
+ [:inputSource="uniform";elementType="vec4i";indexType="u32"]
+
+ [:inputSource="uniform";elementType="vec4u";indexType="i32"]
+
+ [:inputSource="uniform";elementType="vec4u";indexType="u32"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini
new file mode 100644
index 0000000000..ea4df5297f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini
@@ -0,0 +1,1447 @@
+[cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:abstract_float_column:*]
+ [:indexType="i32";columns=2;rows=2]
+
+ [:indexType="i32";columns=2;rows=3]
+
+ [:indexType="i32";columns=2;rows=4]
+
+ [:indexType="i32";columns=3;rows=2]
+
+ [:indexType="i32";columns=3;rows=3]
+
+ [:indexType="i32";columns=3;rows=4]
+
+ [:indexType="i32";columns=4;rows=2]
+
+ [:indexType="i32";columns=4;rows=3]
+
+ [:indexType="i32";columns=4;rows=4]
+
+ [:indexType="u32";columns=2;rows=2]
+
+ [:indexType="u32";columns=2;rows=3]
+
+ [:indexType="u32";columns=2;rows=4]
+
+ [:indexType="u32";columns=3;rows=2]
+
+ [:indexType="u32";columns=3;rows=3]
+
+ [:indexType="u32";columns=3;rows=4]
+
+ [:indexType="u32";columns=4;rows=2]
+
+ [:indexType="u32";columns=4;rows=3]
+
+ [:indexType="u32";columns=4;rows=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:abstract_float_element:*]
+ [:indexType="i32";columns=2;rows=2]
+
+ [:indexType="i32";columns=2;rows=3]
+
+ [:indexType="i32";columns=2;rows=4]
+
+ [:indexType="i32";columns=3;rows=2]
+
+ [:indexType="i32";columns=3;rows=3]
+
+ [:indexType="i32";columns=3;rows=4]
+
+ [:indexType="i32";columns=4;rows=2]
+
+ [:indexType="i32";columns=4;rows=3]
+
+ [:indexType="i32";columns=4;rows=4]
+
+ [:indexType="u32";columns=2;rows=2]
+
+ [:indexType="u32";columns=2;rows=3]
+
+ [:indexType="u32";columns=2;rows=4]
+
+ [:indexType="u32";columns=3;rows=2]
+
+ [:indexType="u32";columns=3;rows=3]
+
+ [:indexType="u32";columns=3;rows=4]
+
+ [:indexType="u32";columns=4;rows=2]
+
+ [:indexType="u32";columns=4;rows=3]
+
+ [:indexType="u32";columns=4;rows=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_column:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected: FAIL
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "win" and not debug: FAIL
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_element:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected: FAIL
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=2]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=3]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=2]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=3]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=3;rows=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";columns=4;rows=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=2;rows=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=3;rows=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";columns=4;rows=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html.ini
new file mode 100644
index 0000000000..540ba67c32
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html.ini
@@ -0,0 +1,161 @@
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:buffer:*]
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];inputSource="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];inputSource="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];inputSource="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];inputSource="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\];inputSource="storage"]
+
+ [:member_types=["i32","u32"\];inputSource="uniform"]
+
+ [:member_types=["u32"\];inputSource="storage"]
+
+ [:member_types=["u32"\];inputSource="uniform"]
+
+ [:member_types=["vec3f"\];inputSource="storage"]
+
+ [:member_types=["vec3f"\];inputSource="uniform"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:buffer_align:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:buffer_pointer:*]
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];inputSource="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];inputSource="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];inputSource="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];inputSource="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\];inputSource="storage"]
+ expected: FAIL
+
+ [:member_types=["i32","u32"\];inputSource="uniform"]
+ expected: FAIL
+
+ [:member_types=["u32"\];inputSource="storage"]
+ expected: FAIL
+
+ [:member_types=["u32"\];inputSource="uniform"]
+ expected: FAIL
+
+ [:member_types=["vec3f"\];inputSource="storage"]
+ expected: FAIL
+
+ [:member_types=["vec3f"\];inputSource="uniform"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:buffer_size:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:const:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool"\]]
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\]]
+
+ [:member_types=["u32"\]]
+
+ [:member_types=["vec3f"\]]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:const_nested:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool"\]]
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\]]
+
+ [:member_types=["u32"\]]
+
+ [:member_types=["vec3f"\]]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:let:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool"\]]
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\]]
+
+ [:member_types=["u32"\]]
+
+ [:member_types=["vec3f"\]]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,structure,index:param:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool"\]]
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\]]
+
+ [:member_types=["u32"\]]
+
+ [:member_types=["vec3f"\]]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini
new file mode 100644
index 0000000000..d28c5ed195
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini
@@ -0,0 +1,689 @@
+[cts.https.html?q=webgpu:shader,execution,expression,access,vector,components:abstract_scalar:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:elementType="abstract-float";width=2;components="rgba"]
+
+ [:elementType="abstract-float";width=2;components="xyzw"]
+
+ [:elementType="abstract-float";width=3;components="rgba"]
+
+ [:elementType="abstract-float";width=3;components="xyzw"]
+
+ [:elementType="abstract-float";width=4;components="rgba"]
+
+ [:elementType="abstract-float";width=4;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:elementType="abstract-int";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,vector,components:concrete_scalar:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [TIMEOUT, CRASH]
+ if os == "linux": TIMEOUT
+ if os == "mac" and debug: [TIMEOUT, CRASH]
+ if os == "mac" and not debug: TIMEOUT
+ [:inputSource="const";elementType="bool";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=2;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=2;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=3;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=3;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=4;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";width=4;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="bool";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=2;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=2;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=3;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=3;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=4;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";width=4;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=2;components="rgba"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=2;components="xyzw"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=2;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=2;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=3;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=3;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=4;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";width=4;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=2;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=2;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=3;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=3;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=4;components="rgba"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";width=4;components="xyzw"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=2;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=2;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=3;components="rgba"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=3;components="xyzw"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=4;components="rgba"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";width=4;components="xyzw"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=2;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=2;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=3;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=3;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=4;components="rgba"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";width=4;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=2;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=2;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=3;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=3;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=4;components="rgba"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";width=4;components="xyzw"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=2;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=2;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=3;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=3;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=4;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";width=4;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=2;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=2;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=3;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=3;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=4;components="rgba"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";width=4;components="xyzw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini
new file mode 100644
index 0000000000..43cebab602
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini
@@ -0,0 +1,660 @@
+[cts.https.html?q=webgpu:shader,execution,expression,access,vector,index:abstract_scalar:*]
+ [:elementType="abstract-float";indexType="i32";width=2]
+
+ [:elementType="abstract-float";indexType="i32";width=3]
+
+ [:elementType="abstract-float";indexType="i32";width=4]
+
+ [:elementType="abstract-float";indexType="u32";width=2]
+
+ [:elementType="abstract-float";indexType="u32";width=3]
+
+ [:elementType="abstract-float";indexType="u32";width=4]
+
+ [:elementType="abstract-int";indexType="i32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";indexType="i32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";indexType="i32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";indexType="u32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";indexType="u32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:elementType="abstract-int";indexType="u32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,access,vector,index:concrete_scalar:*]
+ expected: TIMEOUT
+ [:inputSource="const";elementType="bool";indexType="i32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";indexType="i32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";indexType="i32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";indexType="u32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";indexType="u32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="bool";indexType="u32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="i32";width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f16";indexType="u32";width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="i32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="f32";indexType="u32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="i32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="i32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="i32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="u32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="u32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="i32";indexType="u32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="i32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="i32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="i32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="u32";width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="u32";width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";elementType="u32";indexType="u32";width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r";elementType="bool";indexType="i32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";indexType="i32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";indexType="i32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";indexType="u32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";indexType="u32";width=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="bool";indexType="u32";width=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="i32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f16";indexType="u32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="i32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="f32";indexType="u32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="i32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="i32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="i32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="u32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="u32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="i32";indexType="u32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="i32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="i32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="i32";width=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="u32";width=2]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="u32";width=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";elementType="u32";indexType="u32";width=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="i32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="i32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="i32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="u32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="u32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="bool";indexType="u32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";width=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";width=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="i32";width=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";width=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";width=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f16";indexType="u32";width=4]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="i32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="f32";indexType="u32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="i32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="i32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="i32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="u32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="u32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="i32";indexType="u32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="i32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="i32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="i32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="u32";width=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="u32";width=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";elementType="u32";indexType="u32";width=4]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="i32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="i32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="i32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="u32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="u32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="bool";indexType="u32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="i32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f16";indexType="u32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";width=2]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";width=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="i32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="f32";indexType="u32";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="i32";indexType="i32";width=2]
+
+ [:inputSource="uniform";elementType="i32";indexType="i32";width=3]
+
+ [:inputSource="uniform";elementType="i32";indexType="i32";width=4]
+
+ [:inputSource="uniform";elementType="i32";indexType="u32";width=2]
+
+ [:inputSource="uniform";elementType="i32";indexType="u32";width=3]
+
+ [:inputSource="uniform";elementType="i32";indexType="u32";width=4]
+
+ [:inputSource="uniform";elementType="u32";indexType="i32";width=2]
+
+ [:inputSource="uniform";elementType="u32";indexType="i32";width=3]
+
+ [:inputSource="uniform";elementType="u32";indexType="i32";width=4]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";indexType="u32";width=2]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";indexType="u32";width=3]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";elementType="u32";indexType="u32";width=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini
index c1593a4a06..f5804ba21c 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini
@@ -1,18 +1,26 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:greater_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -33,6 +41,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:greater_than:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -53,6 +63,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:less_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -73,6 +85,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:less_than:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -93,14 +107,20 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:not_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini
index 2199fb1b0e..e4881051c7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini
@@ -1,39 +1,62 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_addition:matrix:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html.ini
new file mode 100644
index 0000000000..ed36ae1aae
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html.ini
@@ -0,0 +1,136 @@
+[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_matrix_multiplication:matrix_matrix:*]
+ expected: TIMEOUT
+ [:inputSource="const";common_dim=2;x_rows=2;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=2;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=2;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=3;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=3;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=3;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=4;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=4;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=2;x_rows=4;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=2;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=2;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=2;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=3;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=3;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=3;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=4;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=4;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=3;x_rows=4;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=2;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=2;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=2;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=3;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=3;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=3;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=4;y_cols=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=4;y_cols=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";common_dim=4;x_rows=4;y_cols=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html.ini
new file mode 100644
index 0000000000..e8e9297095
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html.ini
@@ -0,0 +1,132 @@
+[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_scalar_multiplication:matrix_scalar:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const";cols=2;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_scalar_multiplication:scalar_matrix:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const";cols=2;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini
index 65db8d21a3..dd162546ad 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_subtraction:matrix:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected: FAIL
@@ -24,4 +26,8 @@
expected: FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html.ini
new file mode 100644
index 0000000000..a4e4050a47
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html.ini
@@ -0,0 +1,107 @@
+[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_vector_multiplication:matrix_vector:*]
+ expected:
+ if debug: TIMEOUT
+ [:inputSource="const";cols=2;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";cols=2;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";cols=2;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";cols=3;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";cols=3;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";cols=3;rows=4]
+ expected: FAIL
+
+ [:inputSource="const";cols=4;rows=2]
+ expected: FAIL
+
+ [:inputSource="const";cols=4;rows=3]
+ expected: FAIL
+
+ [:inputSource="const";cols=4;rows=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_vector_multiplication:vector_matrix:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ [:inputSource="const";cols=2;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=2;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=2;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=3;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=3;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=3;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=4;rows=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=4;rows=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";cols=4;rows=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html.ini
new file mode 100644
index 0000000000..6e18dac783
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html.ini
@@ -0,0 +1,178 @@
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition_scalar_vector:*]
+ [:inputSource="const";vectorize_rhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition_vector_scalar:*]
+ [:inputSource="const";vectorize_lhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division_scalar_vector:*]
+ [:inputSource="const";vectorize_rhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division_vector_scalar:*]
+ [:inputSource="const";vectorize_lhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication_scalar_vector:*]
+ [:inputSource="const";vectorize_rhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication_vector_scalar:*]
+ [:inputSource="const";vectorize_lhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder_scalar_vector:*]
+ [:inputSource="const";vectorize_rhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder_vector_scalar:*]
+ [:inputSource="const";vectorize_lhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction_scalar_vector:*]
+ [:inputSource="const";vectorize_rhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_rhs=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction_vector_scalar:*]
+ [:inputSource="const";vectorize_lhs=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize_lhs=4]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini
new file mode 100644
index 0000000000..9d3aab49cb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini
@@ -0,0 +1,58 @@
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:equals:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:greater_equals:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:greater_than:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:less_equals:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:less_than:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:not_equals:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini
index 857f4ec0ff..ec7bc5d1b7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini
@@ -1,4 +1,120 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_and:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:type="abstract-int";inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=2]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=3]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:type="abstract-int";inputSource="storage_r";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -14,12 +130,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -31,21 +145,23 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -55,7 +171,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -66,73 +181,114 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_and_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -148,12 +304,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -166,20 +320,19 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -189,7 +342,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -200,73 +352,226 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_exclusive_or:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:type="abstract-int";inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=2]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=3]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:type="abstract-int";inputSource="storage_r";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -282,12 +587,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -296,24 +599,27 @@
[:type="i32";inputSource="storage_r";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -323,7 +629,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -334,73 +639,114 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_exclusive_or_compound:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -416,12 +762,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -434,20 +778,20 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -457,7 +801,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -468,73 +811,233 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_or:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
+ [:type="abstract-int";inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=2]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=3]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="const";vectorize=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:type="abstract-int";inputSource="storage_r";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize="_undef_"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="abstract-int";inputSource="uniform";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -550,12 +1053,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -563,25 +1064,28 @@
[:type="i32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -591,7 +1095,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -602,73 +1105,112 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_or_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -684,12 +1226,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -702,12 +1242,10 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
@@ -716,6 +1254,7 @@
[:type="i32";inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="i32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -725,7 +1264,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -736,67 +1274,99 @@
if os == "win" and not debug: [PASS, FAIL]
[:type="u32";inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini
index 36f1c01234..4bbefc737d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_left_concrete:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -14,12 +18,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +34,10 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +55,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -80,38 +79,45 @@
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -121,18 +127,22 @@
[:type="u32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_left_concrete_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -148,12 +158,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -166,12 +174,10 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
@@ -189,7 +195,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -214,12 +219,10 @@
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
@@ -227,25 +230,31 @@
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -255,7 +264,6 @@
[:type="u32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=3]
expected:
@@ -267,6 +275,10 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_right_concrete:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -282,12 +294,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -300,12 +310,10 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
@@ -323,7 +331,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -337,70 +344,97 @@
expected: FAIL
[:type="u32";inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_right_concrete_compound:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:type="i32";inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -416,12 +450,10 @@
[:type="i32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_r";vectorize=3]
expected:
@@ -434,12 +466,10 @@
[:type="i32";inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="storage_rw";vectorize=3]
expected:
@@ -457,7 +487,6 @@
[:type="i32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32";inputSource="uniform";vectorize=3]
expected:
@@ -482,38 +511,45 @@
[:type="u32";inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=2]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=3]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="storage_rw";vectorize=4]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="u32";inputSource="uniform";vectorize="_undef_"]
expected:
@@ -523,7 +559,6 @@
[:type="u32";inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32";inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bool_logical/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bool_logical/cts.https.html.ini
index 3e859dd432..ac5579c362 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bool_logical/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bool_logical/cts.https.html.ini
@@ -12,24 +12,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -40,8 +32,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -62,24 +52,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -90,8 +72,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -103,12 +83,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -129,24 +105,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -157,8 +125,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -179,24 +145,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -207,8 +165,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -229,24 +185,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -257,8 +205,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -279,24 +225,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -307,8 +245,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -320,12 +256,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini
index d93a648aec..372c98a160 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_addition:matrix:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
@@ -112,27 +114,32 @@
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";cols=2;rows=2]
expected:
@@ -181,6 +188,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_addition:matrix_compound:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
@@ -304,17 +313,20 @@
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";cols=2;rows=2]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication/cts.https.html.ini
index 9e1adaf8a7..29d0cb692e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication/cts.https.html.ini
@@ -642,6 +642,7 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_matrix_multiplication:matrix_matrix_compound:*]
expected:
if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:inputSource="const";common_dim=2;x_rows=2]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini
index 9b9ba5fb14..5a454de2a4 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:matrix_scalar:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -181,6 +183,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:matrix_scalar_compound:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -363,6 +367,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:scalar_matrix:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini
index c4940215bb..1d819fb53d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_subtraction:matrix:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -102,37 +104,44 @@
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";cols=2;rows=2]
expected:
@@ -181,6 +190,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_subtraction:matrix_compound:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -294,27 +305,32 @@
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";cols=2;rows=2]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini
index 604d4d76a8..39254df761 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_vector_multiplication:matrix_vector:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
@@ -47,92 +49,110 @@
[:inputSource="storage_r";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
@@ -177,10 +197,13 @@
[:inputSource="uniform";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_vector_multiplication:vector_matrix:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
@@ -229,92 +252,110 @@
[:inputSource="storage_r";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
@@ -359,10 +400,13 @@
[:inputSource="uniform";cols=4;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_vector_multiplication:vector_matrix_compound:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";dim=2]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini
index c64315924a..4b26feb004 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini
@@ -21,84 +21,102 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f16_remainder:scalar_compound:*]
+ expected:
+ if os == "linux" and not debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_addition/cts.https.html.ini
index 2090d11bee..a6920531d3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_addition/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_addition/cts.https.html.ini
@@ -3,12 +3,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -29,24 +25,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -57,8 +45,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -76,24 +62,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
@@ -111,24 +91,18 @@
expected: FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
[:inputSource="storage_rw";vectorize=4]
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -146,24 +120,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
@@ -181,24 +149,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_comparison/cts.https.html.ini
index a21db423b0..17b4624816 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_comparison/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_comparison/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +77,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +93,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +114,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -150,12 +140,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -168,12 +156,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -191,7 +177,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -218,12 +203,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -236,12 +219,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -259,7 +240,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -286,12 +266,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -304,12 +282,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -327,7 +303,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -354,12 +329,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -372,12 +345,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -395,7 +366,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_division/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_division/cts.https.html.ini
index a3e1b6ec77..d54cf2eaeb 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_division/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_division/cts.https.html.ini
@@ -4,11 +4,11 @@
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform"]
expected:
@@ -30,11 +30,11 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -42,11 +42,11 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
@@ -58,7 +58,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
@@ -77,7 +77,7 @@
[:inputSource="storage_r";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";dim=3]
@@ -85,7 +85,7 @@
[:inputSource="storage_rw";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";dim=3]
@@ -93,7 +93,7 @@
[:inputSource="uniform";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";dim=3]
@@ -112,7 +112,7 @@
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -120,7 +120,7 @@
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
@@ -128,7 +128,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
@@ -147,7 +147,7 @@
[:inputSource="storage_r";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";dim=3]
@@ -155,7 +155,7 @@
[:inputSource="storage_rw";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";dim=3]
@@ -163,7 +163,7 @@
[:inputSource="uniform";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";dim=3]
@@ -182,7 +182,7 @@
[:inputSource="storage_r";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";dim=3]
@@ -190,7 +190,7 @@
[:inputSource="storage_rw";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";dim=3]
@@ -198,7 +198,7 @@
[:inputSource="uniform";dim=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";dim=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini
index ab2f5c320a..e22d9a9d1a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini
@@ -1,105 +1,226 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_addition:matrix:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux": TIMEOUT
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected: FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_addition:matrix_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected: FAIL
@@ -107,94 +228,202 @@
expected: FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication/cts.https.html.ini
index 624bc84401..33ce1d267c 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication/cts.https.html.ini
@@ -1,22 +1,23 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_matrix_multiplication:matrix_matrix:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac": TIMEOUT
[:inputSource="const";common_dim=2;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=2;y_cols=4]
expected:
@@ -24,7 +25,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=3;y_cols=2]
expected:
@@ -32,7 +34,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=3;y_cols=3]
expected:
@@ -40,7 +43,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=3;y_cols=4]
expected:
@@ -48,7 +52,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=4;y_cols=2]
expected:
@@ -56,7 +60,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=4;y_cols=3]
expected:
@@ -64,7 +68,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=4;y_cols=4]
expected:
@@ -72,7 +76,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=2;y_cols=2]
expected:
@@ -80,7 +84,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=2;y_cols=3]
expected:
@@ -88,7 +92,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=2;y_cols=4]
expected:
@@ -96,7 +100,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=3;y_cols=2]
expected:
@@ -104,7 +108,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=3;y_cols=3]
expected:
@@ -112,7 +116,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=3;y_cols=4]
expected:
@@ -120,7 +124,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=4;y_cols=2]
expected:
@@ -128,95 +132,84 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=4;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=3;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=3;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=4;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=4;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=2;y_cols=2]
expected:
@@ -224,6 +217,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=2;y_cols=3]
expected:
@@ -231,7 +225,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=2;y_cols=4]
expected:
@@ -239,6 +233,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=3;y_cols=2]
expected:
@@ -246,6 +241,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=3;y_cols=3]
expected:
@@ -253,7 +249,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=3;y_cols=4]
expected:
@@ -261,6 +257,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=4;y_cols=2]
expected:
@@ -268,6 +265,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=4;y_cols=3]
expected:
@@ -275,122 +273,117 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=3;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=3;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=4;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=4;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=3;y_cols=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -398,17 +391,15 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -416,8 +407,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -425,17 +415,15 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -443,8 +431,7 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -452,17 +439,15 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -470,266 +455,241 @@
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=3;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=3;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=4;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=4;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=4;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=2;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=2;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=2;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=3;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=3;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=3;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=4;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=4;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=4;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=2;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=2;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=2;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=3;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=3;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=3;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=4;y_cols=2]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=4;y_cols=3]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=4;y_cols=4]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=3;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=3;y_cols=3]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=4;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=4;y_cols=3]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=2;y_cols=3]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=3;y_cols=2]
expected:
@@ -737,6 +697,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=3;y_cols=3]
expected:
@@ -744,21 +705,21 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=4;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=4;y_cols=3]
expected:
@@ -766,21 +727,21 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=4;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=2;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=2;y_cols=3]
expected:
@@ -788,21 +749,21 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=2;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=3;y_cols=2]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=3;y_cols=3]
expected:
@@ -810,14 +771,14 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=3;y_cols=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=4;y_cols=2]
expected:
@@ -825,6 +786,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=4;y_cols=3]
expected:
@@ -832,7 +794,7 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=4;y_cols=4]
expected:
@@ -840,19 +802,18 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_matrix_multiplication:matrix_matrix_compound:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux": [OK, TIMEOUT]
- if os == "mac" and debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";common_dim=2;x_rows=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=3]
expected:
@@ -860,7 +821,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=2;x_rows=4]
expected:
@@ -868,7 +830,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=2]
expected:
@@ -876,7 +839,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=3]
expected:
@@ -884,7 +848,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=3;x_rows=4]
expected:
@@ -892,7 +857,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=2]
expected:
@@ -900,7 +866,8 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=3]
expected:
@@ -908,7 +875,7 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";common_dim=4;x_rows=4]
expected:
@@ -916,179 +883,187 @@
if os == "win" and not debug: FAIL
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=2]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=3]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=2;x_rows=4]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=2]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=3]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=3;x_rows=4]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=2]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=3]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";common_dim=4;x_rows=4]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=2]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=3]
expected:
if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=2;x_rows=4]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=2]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=3;x_rows=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";common_dim=4;x_rows=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "linux": [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=2]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=3]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=2;x_rows=4]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=2]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=3]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=3;x_rows=4]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=2]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=3]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";common_dim=4;x_rows=4]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini
index 911275e54d..2389cb269f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini
@@ -1,353 +1,636 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_scalar_multiplication:matrix_scalar:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_scalar_multiplication:matrix_scalar_compound:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_scalar_multiplication:scalar_matrix:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini
index 2d4c62ac50..82e568d156 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini
@@ -1,292 +1,442 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_subtraction:matrix:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_subtraction:matrix_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini
index 775f75c92b..e900760f9d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini
@@ -1,370 +1,554 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_vector_multiplication:matrix_vector:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_vector_multiplication:vector_matrix:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=2;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=3;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";cols=4;rows=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=3]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=3;rows=4]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=2]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_vector_multiplication:vector_matrix_compound:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";dim=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";dim=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="const";dim=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r";dim=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";dim=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";dim=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=3]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_multiplication/cts.https.html.ini
index d3d4d339f6..9d4925f42f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_multiplication/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_multiplication/cts.https.html.ini
@@ -7,12 +7,10 @@
[:inputSource="storage_r"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -36,12 +34,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -54,12 +50,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -77,7 +71,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -89,6 +82,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_multiplication:scalar_vector:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";dim=2]
expected: FAIL
@@ -101,7 +96,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -114,7 +108,6 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
expected:
@@ -123,11 +116,11 @@
[:inputSource="storage_rw";dim=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
@@ -151,7 +144,6 @@
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -164,7 +156,6 @@
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -177,7 +168,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -201,7 +191,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -214,7 +203,6 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
expected:
@@ -227,7 +215,6 @@
[:inputSource="uniform";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
@@ -251,7 +238,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -264,7 +250,6 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
expected:
@@ -277,7 +262,6 @@
[:inputSource="uniform";dim=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_remainder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_remainder/cts.https.html.ini
index 321aef610d..11b2292a13 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_remainder/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_remainder/cts.https.html.ini
@@ -5,12 +5,10 @@
[:inputSource="storage_r"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -19,6 +17,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_remainder:scalar_compound:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -34,38 +34,42 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -75,7 +79,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -87,6 +90,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_remainder:scalar_vector:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";dim=2]
expected: FAIL
@@ -99,7 +104,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -112,20 +116,21 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=3]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=4]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
@@ -149,7 +154,6 @@
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -162,7 +166,6 @@
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -175,7 +178,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -199,7 +201,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -212,7 +213,6 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
expected:
@@ -225,7 +225,6 @@
[:inputSource="uniform";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
@@ -237,6 +236,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,f32_remainder:vector_scalar_compound:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";dim=2]
expected: FAIL
@@ -249,33 +250,36 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";dim=3]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";dim=4]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=3]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";dim=4]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";dim=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_subtraction/cts.https.html.ini
index a86ae6dde1..e05551ca8d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_subtraction/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_subtraction/cts.https.html.ini
@@ -3,12 +3,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -29,24 +25,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -57,8 +45,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -76,24 +62,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
@@ -111,24 +91,18 @@
expected: FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
[:inputSource="storage_rw";vectorize=4]
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -146,24 +120,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
@@ -181,24 +149,18 @@
expected: FAIL
[:inputSource="storage_r";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
[:inputSource="storage_r";dim=4]
[:inputSource="storage_rw";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
[:inputSource="storage_rw";dim=4]
[:inputSource="uniform";dim=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_arithmetic/cts.https.html.ini
index b6485f55bf..8d7c092fd2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_arithmetic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_arithmetic/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_arithmetic:addition:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -14,12 +16,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -28,24 +28,27 @@
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -55,7 +58,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +84,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +100,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +121,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -147,7 +144,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -160,7 +156,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -173,7 +168,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -197,7 +191,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -210,7 +203,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -223,7 +215,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -247,7 +238,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -260,7 +250,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -273,7 +262,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -285,6 +273,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_arithmetic:division:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -310,16 +300,32 @@
expected: FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected: FAIL
@@ -387,6 +393,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_arithmetic:division_scalar_vector:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize_rhs=2]
expected: FAIL
@@ -412,7 +420,11 @@
expected: FAIL
[:inputSource="storage_rw";vectorize_rhs=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=2]
expected: FAIL
@@ -516,12 +528,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -534,12 +544,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -557,7 +565,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -584,12 +591,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -602,12 +607,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -625,7 +628,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -649,7 +651,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -662,7 +663,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -675,7 +675,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -699,7 +698,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -712,7 +710,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -725,7 +722,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -749,7 +745,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -762,7 +757,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -775,7 +769,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -1016,12 +1009,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -1034,12 +1025,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -1057,7 +1046,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -1084,12 +1072,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -1102,12 +1088,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -1125,7 +1109,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -1149,7 +1132,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -1162,7 +1144,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -1175,7 +1156,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -1199,7 +1179,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -1212,7 +1191,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -1225,7 +1203,7 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -1249,7 +1227,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -1262,7 +1239,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -1275,7 +1251,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_comparison/cts.https.html.ini
index b650bad0e1..69a5dcaf58 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_comparison/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/i32_comparison/cts.https.html.ini
@@ -14,42 +14,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -59,17 +51,14 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_comparison:greater_equals:*]
@@ -88,42 +77,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -133,17 +114,14 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_comparison:greater_than:*]
@@ -162,42 +140,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -207,17 +177,14 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_comparison:less_equals:*]
@@ -236,42 +203,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -281,17 +240,14 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_comparison:less_than:*]
@@ -310,42 +266,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -355,17 +303,14 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,binary,i32_comparison:not_equals:*]
@@ -384,42 +329,34 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -429,14 +366,11 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_arithmetic/cts.https.html.ini
index 693455c518..98be8d764d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_arithmetic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_arithmetic/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +77,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +93,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +114,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -147,7 +137,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -160,7 +149,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -173,7 +161,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -197,7 +184,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -210,7 +196,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -223,7 +208,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -247,7 +231,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -260,7 +243,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -273,7 +255,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -514,12 +495,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -532,12 +511,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -555,7 +532,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -582,12 +558,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -600,12 +574,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -623,7 +595,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -647,7 +618,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -660,7 +630,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -673,7 +642,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -697,7 +665,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -710,7 +677,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -723,7 +689,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -747,7 +712,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -760,7 +724,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -773,7 +736,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -1014,12 +976,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -1032,12 +992,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -1055,7 +1013,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -1082,12 +1039,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -1100,12 +1055,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -1123,7 +1076,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -1147,7 +1099,6 @@
[:inputSource="storage_r";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_rhs=3]
expected:
@@ -1160,7 +1111,6 @@
[:inputSource="storage_rw";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_rhs=3]
expected:
@@ -1173,7 +1123,6 @@
[:inputSource="uniform";vectorize_rhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_rhs=3]
expected:
@@ -1197,7 +1146,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -1210,7 +1158,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -1223,7 +1170,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
@@ -1247,7 +1193,6 @@
[:inputSource="storage_r";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize_lhs=3]
expected:
@@ -1260,7 +1205,6 @@
[:inputSource="storage_rw";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize_lhs=3]
expected:
@@ -1273,7 +1217,6 @@
[:inputSource="uniform";vectorize_lhs=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize_lhs=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini
index f468d760f7..edeb434ef8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -49,6 +51,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:greater_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -99,6 +103,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:greater_than:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -149,6 +155,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:less_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -199,6 +207,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:less_than:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -249,6 +259,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:not_equals:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/abs/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/abs/cts.https.html.ini
index 33e5e42aed..a1ed7d648f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/abs/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/abs/cts.https.html.ini
@@ -14,12 +14,16 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,abs:abstract_int:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -126,24 +130,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -154,8 +150,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -176,24 +170,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -204,8 +190,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -226,24 +210,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -254,8 +230,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acos/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acos/cts.https.html.ini
index 88bee7a80e..cc4b6ba25e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acos/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acos/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -147,6 +159,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,acos:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -162,12 +176,12 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,20 +194,24 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -203,7 +221,7 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini
index 0b14b8c8ac..c8dbd2f48a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini
@@ -1,11 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,acosh:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -99,6 +119,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,acosh:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -109,40 +131,57 @@
expected: FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/all/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/all/cts.https.html.ini
index 76f6d80b6b..4e6245d292 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/all/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/all/cts.https.html.ini
@@ -12,49 +12,27 @@
expected: FAIL
[:inputSource="storage_r";overload="scalar"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec3"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec4"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="scalar"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec3"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec4"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";overload="scalar"]
expected:
if os == "mac": FAIL
[:inputSource="uniform";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";overload="vec3"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";overload="vec4"]
- expected:
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/any/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/any/cts.https.html.ini
index 0773234db5..91ae24e6e2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/any/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/any/cts.https.html.ini
@@ -14,42 +14,34 @@
[:inputSource="storage_r";overload="scalar"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec2"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec3"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";overload="vec4"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="scalar"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec2"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec3"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";overload="vec4"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";overload="scalar"]
expected:
@@ -59,14 +51,11 @@
[:inputSource="uniform";overload="vec2"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";overload="vec3"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";overload="vec4"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini
index 9935e4dc61..b029846c11 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini
@@ -3,251 +3,434 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,arrayLength:multiple_elements:*]
+ expected: TIMEOUT
[:buffer_size=1004;type="ElemStruct";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="ElemStruct_ExplicitPadding";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="ElemStruct_ImplicitPadding";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="array%3Cf32,4%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="array%3Ci32,4%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="array%3Cu32,4%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="atomic%3Ci32%3E";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="atomic%3Cu32%3E";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="f16";stride=2]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="f32";stride=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="i32";stride=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x2%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x2%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x3%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x3%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x4%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat2x4%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x2%3Cf16%3E";stride=12]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x2%3Cf32%3E";stride=24]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x3%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x3%3Cf32%3E";stride=48]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x4%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat3x4%3Cf32%3E";stride=48]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x2%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x2%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x3%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x3%3Cf32%3E";stride=64]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x4%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="mat4x4%3Cf32%3E";stride=64]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="u32";stride=4]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec2%3Cf16%3E";stride=4]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec2%3Cf32%3E";stride=8]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec2%3Ci32%3E";stride=8]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec2%3Cu32%3E";stride=8]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec3%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec3%3Cf32%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec3%3Ci32%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec3%3Cu32%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec4%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec4%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec4%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1004;type="vec4%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="ElemStruct";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="ElemStruct_ExplicitPadding";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="ElemStruct_ImplicitPadding";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="array%3Cf32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="array%3Ci32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="array%3Cu32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="atomic%3Ci32%3E";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="atomic%3Cu32%3E";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="f16";stride=2]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="f32";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="i32";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x2%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x2%3Cf32%3E";stride=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x3%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x3%3Cf32%3E";stride=32]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x4%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat2x4%3Cf32%3E";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x2%3Cf16%3E";stride=12]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x2%3Cf32%3E";stride=24]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x3%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x3%3Cf32%3E";stride=48]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x4%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat3x4%3Cf32%3E";stride=48]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x2%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x2%3Cf32%3E";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x3%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x3%3Cf32%3E";stride=64]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x4%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="mat4x4%3Cf32%3E";stride=64]
+ expected: [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="u32";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec2%3Cf16%3E";stride=4]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec2%3Cf32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec2%3Ci32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec2%3Cu32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec3%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec3%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec3%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec3%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec4%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec4%3Cf32%3E";stride=16]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec4%3Ci32%3E";stride=16]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=1048576;type="vec4%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:buffer_size=640;type="ElemStruct";stride=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:buffer_size=640;type="ElemStruct_ExplicitPadding";stride=32]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:buffer_size=640;type="ElemStruct_ImplicitPadding";stride=16]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:buffer_size=640;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:buffer_size=640;type="array%3Cf32,4%3E";stride=16]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:buffer_size=640;type="array%3Ci32,4%3E";stride=16]
@@ -357,17 +540,27 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,arrayLength:single_element:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
[:type="ElemStruct";stride=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:type="ElemStruct_ExplicitPadding";stride=32]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:type="ElemStruct_ImplicitPadding";stride=16]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:type="array%3Cf32,4%3E";stride=16]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:type="array%3Ci32,4%3E";stride=16]
@@ -473,19 +666,32 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,arrayLength:struct_member:*]
+ expected: TIMEOUT
[:member_offset=0;type="ElemStruct";stride=4]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:member_offset=0;type="ElemStruct_ExplicitPadding";stride=32]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:member_offset=0;type="ElemStruct_ImplicitPadding";stride=16]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:member_offset=0;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:member_offset=0;type="array%3Cf32,4%3E";stride=16]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:member_offset=0;type="array%3Ci32,4%3E";stride=16]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:member_offset=0;type="array%3Cu32,4%3E";stride=16]
@@ -588,229 +794,417 @@
[:member_offset=0;type="vec4%3Cu32%3E";stride=16]
[:member_offset=20;type="ElemStruct";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="ElemStruct_ExplicitPadding";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="ElemStruct_ImplicitPadding";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="array%3Cf32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="array%3Ci32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="array%3Cu32,4%3E";stride=16]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="atomic%3Ci32%3E";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="atomic%3Cu32%3E";stride=4]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="f16";stride=2]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="f32";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="i32";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x2%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x2%3Cf32%3E";stride=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x3%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x3%3Cf32%3E";stride=32]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x4%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat2x4%3Cf32%3E";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x2%3Cf16%3E";stride=12]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x2%3Cf32%3E";stride=24]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x3%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x3%3Cf32%3E";stride=48]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x4%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat3x4%3Cf32%3E";stride=48]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x2%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x2%3Cf32%3E";stride=32]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x3%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x3%3Cf32%3E";stride=64]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x4%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="mat4x4%3Cf32%3E";stride=64]
+ expected: [TIMEOUT, NOTRUN]
[:member_offset=20;type="u32";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec2%3Cf16%3E";stride=4]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="vec2%3Cf32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec2%3Ci32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec2%3Cu32%3E";stride=8]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec3%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="vec3%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec3%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec3%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec4%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=20;type="vec4%3Cf32%3E";stride=16]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec4%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=20;type="vec4%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="ElemStruct";stride=4]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="ElemStruct_ExplicitPadding";stride=32]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="ElemStruct_ImplicitPadding";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="array%3Cf16,4%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="array%3Cf32,4%3E";stride=16]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="array%3Ci32,4%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="array%3Cu32,4%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="atomic%3Ci32%3E";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="atomic%3Cu32%3E";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="f16";stride=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="f32";stride=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="i32";stride=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x2%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x2%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x3%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x3%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x4%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat2x4%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x2%3Cf16%3E";stride=12]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x2%3Cf32%3E";stride=24]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x3%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x3%3Cf32%3E";stride=48]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x4%3Cf16%3E";stride=24]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat3x4%3Cf32%3E";stride=48]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x2%3Cf16%3E";stride=16]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x2%3Cf32%3E";stride=32]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x3%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x3%3Cf32%3E";stride=64]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x4%3Cf16%3E";stride=32]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="mat4x4%3Cf32%3E";stride=64]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="u32";stride=4]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec2%3Cf16%3E";stride=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="vec2%3Cf32%3E";stride=8]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec2%3Ci32%3E";stride=8]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec2%3Cu32%3E";stride=8]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec3%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="vec3%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec3%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec3%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec4%3Cf16%3E";stride=8]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:member_offset=4;type="vec4%3Cf32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec4%3Ci32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:member_offset=4;type="vec4%3Cu32%3E";stride=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asin/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asin/cts.https.html.ini
index 21b10c6be1..4f54bcf7fd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asin/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asin/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,asin:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -147,6 +159,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,asin:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -162,12 +176,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +192,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -194,6 +204,7 @@
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -203,7 +214,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asinh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asinh/cts.https.html.ini
index c3a9a89b3a..f12184bca2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asinh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/asinh/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,asinh:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,12 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +192,12 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +215,7 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan/cts.https.html.ini
index 79d4d2ec32..a00c9b2733 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atan:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan2/cts.https.html.ini
index 7aa9148177..dd096b5a10 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atan2/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atanh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atanh/cts.https.html.ini
index db74e09889..26c4f6e8ea 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atanh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atanh/cts.https.html.ini
@@ -1,11 +1,15 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atanh:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -112,24 +116,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -140,8 +136,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini
index ed52295c44..205ff6ee93 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicAnd:and_storage:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -130,22 +134,31 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
@@ -154,109 +167,160 @@
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicAnd:and_workgroup:*]
+ expected:
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -324,6 +388,7 @@
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
@@ -332,10 +397,12 @@
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -388,127 +455,185 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini
index 4e094f1e38..61a16b51c3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini
@@ -73,6 +73,7 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicCompareExchangeWeak:compare_exchange_weak_storage_basic:*]
+ expected: TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
@@ -140,18 +141,27 @@
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -188,7 +198,7 @@
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected: FAIL
@@ -196,138 +206,182 @@
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicCompareExchangeWeak:compare_exchange_weak_workgroup_advanced:*]
@@ -405,6 +459,7 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicCompareExchangeWeak:compare_exchange_weak_workgroup_basic:*]
+ expected: TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
@@ -472,18 +527,28 @@
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -528,135 +593,184 @@
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
- if os == "win": FAIL
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini
index 343abad681..d95a7703b4 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini
@@ -1,4 +1,5 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_storage_advanced:*]
+ expected: TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -50,14 +51,25 @@
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -86,113 +98,203 @@
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_storage_basic:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -240,8 +342,12 @@
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -276,85 +382,177 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_workgroup_advanced:*]
+ expected: TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="u32"]
@@ -388,12 +586,26 @@
[:workgroupSize=1;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
@@ -412,79 +624,163 @@
[:workgroupSize=2;dispatchSize=4;mapId="remap";scalarType="u32"]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected: [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_workgroup_basic:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="u32"]
@@ -518,12 +814,20 @@
[:workgroupSize=1;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
@@ -550,65 +854,159 @@
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini
index 8a5a043c74..6f440962e7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicLoad:load_storage:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -130,18 +134,26 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -170,93 +182,135 @@
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicLoad:load_workgroup:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="u32"]
@@ -322,65 +376,156 @@
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicMin/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicMin/cts.https.html.ini
index 3a4b7d530f..a8a947abae 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicMin/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicMin/cts.https.html.ini
@@ -2,289 +2,193 @@
[:workgroupSize=1;dispatchSize=16;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=16;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=1;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=1;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=4;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=4;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=8;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=8;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=16;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=16;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=1;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=1;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=4;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=4;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=8;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=8;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=16;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=16;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=1;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=1;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=4;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=4;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=8;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=8;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=16;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=16;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=1;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=1;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=4;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=4;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=8;scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=8;scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicMin:min_workgroup:*]
[:workgroupSize=1;dispatchSize=16;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=16;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=1;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=1;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=4;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=4;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=8;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=1;dispatchSize=8;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=16;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=16;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=1;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=1;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=4;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=4;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=8;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=2;dispatchSize=8;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=16;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=16;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=1;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=1;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=4;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=4;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=8;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=32;dispatchSize=8;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=16;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=16;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=1;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=1;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=4;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=4;scalarType="u32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=8;scalarType="i32"]
- expected:
- if os == "mac": FAIL
[:workgroupSize=64;dispatchSize=8;scalarType="u32"]
- expected:
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini
index 7daace112e..9c04dae7d1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicOr:or_storage:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="u32"]
@@ -64,71 +68,162 @@
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicOr:or_workgroup:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="u32"]
@@ -162,12 +257,20 @@
[:workgroupSize=1;dispatchSize=8;mapId="remap";scalarType="u32"]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"]
@@ -186,73 +289,183 @@
[:workgroupSize=2;dispatchSize=4;mapId="remap";scalarType="u32"]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini
index a8dbab7499..264db441b6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_storage_advanced:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -130,6 +134,7 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
@@ -138,10 +143,12 @@
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -194,69 +201,89 @@
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_storage_basic:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -396,10 +423,12 @@
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -452,69 +481,89 @@
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_workgroup_advanced:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -646,18 +695,22 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -702,6 +755,7 @@
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
@@ -710,69 +764,88 @@
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_workgroup_basic:*]
+ expected:
+ if os == "linux": TIMEOUT
+ if os == "mac": SKIP
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -904,18 +977,22 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -936,95 +1013,119 @@
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini
index ea2c2dfc91..2ffad2ed73 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini
@@ -1,4 +1,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicXor:xor_storage:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
@@ -162,22 +166,30 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
@@ -212,115 +224,162 @@
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicXor:xor_workgroup:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
@@ -414,6 +473,7 @@
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"]
@@ -484,159 +544,215 @@
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"]
expected:
if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini
index 093930bbf3..0c02a49dac 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini
@@ -1,4 +1,165 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_f32:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_i32:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_u32:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_vec2f16:*]
+ [:inputSource="const"]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_f32:*]
+ [:inputSource="const";vectorize="_undef_";alias=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize="_undef_";alias=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=2;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2;alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3;alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4;alias=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_i32:*]
+ [:inputSource="const";vectorize="_undef_";alias=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize="_undef_";alias=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=2;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2;alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3;alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4;alias=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const";vectorize="_undef_";alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize="_undef_";alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2;alias=false]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2;alias=true]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3;alias=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=3;alias=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=4;alias=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=4;alias=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_vec2h:*]
+ [:inputSource="const";alias=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";alias=true]
+ expected:
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f16_to_f16:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
@@ -47,77 +208,92 @@
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
@@ -161,6 +337,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_f32:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -220,22 +399,18 @@
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
@@ -244,50 +419,61 @@
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
@@ -302,12 +488,10 @@
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3;alias=false]
expected:
@@ -327,6 +511,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_i32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -386,22 +573,18 @@
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
@@ -422,38 +605,46 @@
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
@@ -468,12 +659,10 @@
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3;alias=false]
expected:
@@ -493,6 +682,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -503,159 +695,186 @@
[:inputSource="const";vectorize="_undef_";alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=2;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=2;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_vec2h:*]
@@ -701,6 +920,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:i32_to_f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -760,113 +982,147 @@
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:i32_to_i32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -926,74 +1182,95 @@
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
@@ -1003,36 +1280,43 @@
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:i32_to_u32:*]
+ expected:
+ if debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -1092,22 +1376,18 @@
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
@@ -1116,50 +1396,70 @@
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
@@ -1174,12 +1474,10 @@
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3;alias=false]
expected:
@@ -1241,6 +1539,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -1265,314 +1566,369 @@
[:inputSource="const";vectorize=2;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_i32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize="_undef_";alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=2;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=2;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_";alias=false]
expected:
if os == "win": FAIL
@@ -1597,145 +1953,174 @@
[:inputSource="const";vectorize=2;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=3;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="const";vectorize=4;alias=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_";alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_";alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2;alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2;alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4;alias=false]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=4;alias=true]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_vec2h:*]
@@ -1780,7 +2165,25 @@
if os == "mac": FAIL
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2af_to_vec4f16:*]
+ [:inputSource="const"]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2ai_to_vec4h:*]
+ [:inputSource="const";alias=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";alias=true]
+ expected:
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2f_to_vec4h:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";alias=false]
expected:
if os == "win": [PASS, FAIL]
@@ -1809,7 +2212,8 @@
[:inputSource="storage_rw";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";alias=false]
expected:
@@ -1949,6 +2353,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2i_to_vec4h:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";alias=false]
expected:
if os == "win": [PASS, FAIL]
@@ -1972,12 +2378,14 @@
[:inputSource="storage_rw";alias=false]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";alias=false]
expected:
@@ -1991,6 +2399,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2u_to_vec4h:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";alias=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2019,7 +2429,8 @@
[:inputSource="storage_rw";alias=true]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";alias=false]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ceil/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ceil/cts.https.html.ini
index b69752bc72..0460cb3417 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ceil/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ceil/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,ceil:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini
index b257261b31..0708614ff3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini
@@ -1,33 +1,70 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:abstract_float:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:abstract_int:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -79,6 +116,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:f16:*]
+ expected:
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -132,12 +171,14 @@
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -162,177 +203,253 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:f32:*]
expected:
- if os == "win" and debug: [OK, ERROR]
+ if os == "win" and debug: [OK, TIMEOUT, ERROR]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:i32:*]
expected:
- if os == "win" and debug: [OK, ERROR]
+ if os == "win" and debug: [OK, TIMEOUT, ERROR]
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cos/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cos/cts.https.html.ini
index d7772c5e99..abfdb959f3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cos/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cos/cts.https.html.ini
@@ -1,11 +1,15 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cos:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -112,24 +116,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -140,8 +136,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cosh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cosh/cts.https.html.ini
index d4dd7bc14e..24cb7c1224 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cosh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cosh/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cosh:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini
index c80e029a9f..01a998b5ba 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,countLeadingZeros:i32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -13,11 +15,11 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -25,15 +27,20 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -41,7 +48,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
@@ -49,6 +56,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,countLeadingZeros:u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -63,27 +72,35 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -91,7 +108,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countOneBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countOneBits/cts.https.html.ini
index 6980e45f4d..23b97838b0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countOneBits/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countOneBits/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +77,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +93,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +114,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countTrailingZeros/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countTrailingZeros/cts.https.html.ini
index 99826baebd..576a6ea719 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countTrailingZeros/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countTrailingZeros/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +77,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +93,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +114,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini
index 60521435e3..6abfa737a0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini
@@ -1,6 +1,12 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cross:abstract_float:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cross:f16:*]
@@ -22,11 +28,23 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cross:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/degrees/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/degrees/cts.https.html.ini
index 87aa75fd79..82a5caacec 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/degrees/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/degrees/cts.https.html.ini
@@ -110,12 +110,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -128,12 +126,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -151,7 +147,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/determinant/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/determinant/cts.https.html.ini
index 23fb9d75e7..dd66996f9f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/determinant/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/determinant/cts.https.html.ini
@@ -1,4 +1,25 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,determinant:abstract_float:*]
+ [:inputSource="const";dim=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";dim=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";dim=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:inputSource="const";dimension=2]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -123,7 +144,6 @@
[:inputSource="storage_r";dim=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";dim=3]
expected:
@@ -136,7 +156,6 @@
[:inputSource="storage_rw";dim=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";dim=3]
expected:
@@ -149,7 +168,6 @@
[:inputSource="uniform";dim=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";dim=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini
index b341a54097..6925619700 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini
@@ -1,4 +1,16 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -64,7 +76,51 @@
if os == "win" and debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec2:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec3:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec4:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f16:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -87,6 +143,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f16_vec2:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -109,6 +167,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f16_vec3:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -131,6 +191,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f16_vec4:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -153,86 +215,127 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32_vec2:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32_vec3:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32_vec4:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:inputSource="const"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
- if os == "linux": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini
index 5678be167c..3e97dde911 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini
@@ -1,37 +1,67 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float:*]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec2:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="storage_r"]
- expected:
- if os == "win": [PASS, FAIL]
- [:inputSource="storage_rw"]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="uniform"]
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int:*]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec2:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="storage_r"]
- expected:
- if os == "win": [PASS, FAIL]
- [:inputSource="storage_rw"]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="uniform"]
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f16_vec2:*]
@@ -101,96 +131,218 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec2:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec2:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
+ [:inputSource="storage_r"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32:*]
+ [:inputSource="storage_rw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:u32:*]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec2:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
[:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html.ini
new file mode 100644
index 0000000000..cc21b791f7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html.ini
@@ -0,0 +1,28 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot4I8Packed:basic:*]
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_r"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="storage_rw"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="uniform"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html.ini
new file mode 100644
index 0000000000..afc8740e36
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot4U8Packed:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdx/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdx/cts.https.html.ini
index a347bfcba3..968ac900a6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdx/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdx/cts.https.html.ini
@@ -62,3 +62,27 @@
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxCoarse/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxCoarse/cts.https.html.ini
index 8f42687f88..72b0c65122 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxCoarse/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxCoarse/cts.https.html.ini
@@ -62,3 +62,27 @@
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini
index 20dbe46d7f..c1b94f4040 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dpdxFine:f32:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -78,3 +80,43 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdy/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdy/cts.https.html.ini
index 8d7964ec40..4f3e89a1e5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdy/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdy/cts.https.html.ini
@@ -62,3 +62,27 @@
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyCoarse/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyCoarse/cts.https.html.ini
index 16879030e0..b3de92c880 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyCoarse/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyCoarse/cts.https.html.ini
@@ -30,3 +30,59 @@
[:inputSource="uniform";vectorize=3]
[:inputSource="uniform";vectorize=4]
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyFine/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyFine/cts.https.html.ini
index 857105ba14..50bc52dfe8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyFine/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdyFine/cts.https.html.ini
@@ -30,3 +30,27 @@
[:inputSource="uniform";vectorize=3]
[:inputSource="uniform";vectorize=4]
+
+ [:vectorize="_undef_";non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize="_undef_";non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=2;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=3;non_uniform_discard=true]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=false]
+ expected: FAIL
+
+ [:vectorize=4;non_uniform_discard=true]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp/cts.https.html.ini
index 95ae5915d2..36ac772fe6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp/cts.https.html.ini
@@ -2,18 +2,26 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +170,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +186,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +207,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp2/cts.https.html.ini
index 8d3cba3b6d..82bbafd5dd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/exp2/cts.https.html.ini
@@ -1,11 +1,15 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,exp2:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -112,24 +116,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -140,8 +136,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini
index ef4b8ee704..42734c8e19 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,extractBits:i32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";width=1]
expected: FAIL
@@ -12,12 +14,8 @@
expected: FAIL
[:inputSource="storage_r";width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";width=3]
@@ -25,23 +23,23 @@
[:inputSource="storage_rw";width=1]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";width=3]
@@ -49,6 +47,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,extractBits:u32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";width=1]
expected: FAIL
@@ -62,36 +62,30 @@
expected: FAIL
[:inputSource="storage_r";width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";width=3]
[:inputSource="storage_r";width=4]
[:inputSource="storage_rw";width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";width=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini
index db589ce481..b6d2ebb6c5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini
@@ -1,175 +1,206 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float:*]
- [:inputSource="const";vectorize=2]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="const";vectorize=3]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="const";vectorize=4]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=2]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=3]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=4]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "win" and debug: [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=3]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec2:*]
+ expected: TIMEOUT
+ [:inputSource="const"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
- [:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "win" and debug: [PASS, FAIL]
- [:inputSource="uniform";vectorize=2]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec3:*]
+ expected: TIMEOUT
+ [:inputSource="const"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
- [:inputSource="uniform";vectorize=3]
- expected:
- if os == "win" and debug: [PASS, FAIL]
- [:inputSource="uniform";vectorize=4]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec4:*]
+ expected: TIMEOUT
+ [:inputSource="const"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec2:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec3:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec4:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f32_vec2:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "mac" and debug: [OK, CRASH]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT, CRASH]
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f32_vec3:*]
- expected:
- if os == "win" and debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,faceForward:f32_vec4:*]
- expected:
- if os == "win" and debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstLeadingBit/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstLeadingBit/cts.https.html.ini
index 808a09ee6d..7cfe2e5196 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstLeadingBit/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstLeadingBit/cts.https.html.ini
@@ -13,11 +13,11 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -25,11 +25,11 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
@@ -41,7 +41,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstTrailingBit/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstTrailingBit/cts.https.html.ini
index c30803c89f..2acb280a7a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstTrailingBit/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/firstTrailingBit/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -82,12 +77,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -100,12 +93,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -123,7 +114,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/floor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/floor/cts.https.html.ini
index e7a7f6ee0b..4ba43e5627 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/floor/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/floor/cts.https.html.ini
@@ -92,24 +92,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -120,8 +112,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini
index 4f6a3d86e3..eafebf512a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini
@@ -1,15 +1,33 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,fma:abstract_float:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,fma:f16:*]
@@ -79,50 +97,83 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,fma:f32:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini
index 2a54c3814f..db1d9a4181 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini
@@ -2,18 +2,26 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -147,6 +155,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,fract:f32:*]
+ expected:
+ if os == "win" and debug: [OK, CRASH]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -162,12 +172,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +188,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +209,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html.ini
index 8922106319..15260101fd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html.ini
@@ -1,3 +1,43 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_exp:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_fract:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec2_exp:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec2_fract:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec3_exp:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec3_fract:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec4_exp:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec4_fract:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:f16_exp:*]
[:inputSource="const"]
expected:
@@ -147,12 +187,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -164,12 +200,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -181,16 +213,10 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:f32_vec2_fract:*]
@@ -198,16 +224,10 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,frexp:f32_vec3_exp:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/insertBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/insertBits/cts.https.html.ini
index f322c432c9..340e47bed2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/insertBits/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/insertBits/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,insertBits:integer:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";signed=false;width=1]
expected: FAIL
@@ -25,72 +27,82 @@
[:inputSource="storage_r";signed=false;width=1]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=false;width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=false;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=false;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=true;width=1]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=true;width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=true;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";signed=true;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=false;width=1]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=false;width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=false;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=false;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=true;width=1]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=true;width=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=true;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";signed=true;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";signed=false;width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";signed=false;width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";signed=false;width=3]
[:inputSource="uniform";signed=false;width=4]
[:inputSource="uniform";signed=true;width=1]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";signed=true;width=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";signed=true;width=3]
[:inputSource="uniform";signed=true;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini
index b1fe5f0502..3a135d4822 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini
@@ -1,11 +1,15 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,inversesqrt:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -99,50 +103,77 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,inversesqrt:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ldexp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ldexp/cts.https.html.ini
index 4aef537da8..7c6d94cb4e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ldexp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/ldexp/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,ldexp:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini
index d60074b0d0..8114c77594 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini
@@ -1,4 +1,13 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "mac": FAIL
@@ -64,7 +73,38 @@
if os == "mac": FAIL
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec2:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec3:*]
+ expected:
+ if os == "mac": SKIP
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec4:*]
+ expected:
+ if os == "mac": SKIP
+ [:inputSource="const"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "mac": FAIL
@@ -83,6 +123,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec2:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "mac": FAIL
@@ -101,6 +143,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec3:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "mac": FAIL
@@ -119,6 +163,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec4:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "mac": FAIL
@@ -137,6 +183,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected: FAIL
@@ -154,6 +202,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec2:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected: FAIL
@@ -171,6 +221,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec3:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected: FAIL
@@ -188,6 +240,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec4:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log/cts.https.html.ini
index 9d2176e570..fa0c2f43c1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,log:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -147,6 +159,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,log:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -162,38 +176,40 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -203,7 +219,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini
index b331e35ea0..53ad62ed14 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini
@@ -1,11 +1,35 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,log2:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -99,6 +123,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,log2:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -113,35 +139,47 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
+ if os == "win" and not debug: [PASS, FAIL]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/max/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/max/cts.https.html.ini
index 2c62185171..669d92e6d8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/max/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/max/cts.https.html.ini
@@ -14,12 +14,32 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,max:abstract_int:*]
[:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -126,24 +146,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -154,8 +166,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -176,24 +186,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -204,8 +206,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -226,24 +226,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -254,8 +246,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/min/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/min/cts.https.html.ini
index e80759b5d9..e458de02eb 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/min/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/min/cts.https.html.ini
@@ -16,18 +16,26 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -176,12 +184,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -194,12 +200,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -217,7 +221,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -244,12 +247,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -262,12 +263,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -285,7 +284,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -312,12 +310,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -330,12 +326,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -353,7 +347,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini
index f235ac5b47..698d3d89a4 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini
@@ -1,11 +1,24 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:abstract_float_matching:*]
+ expected: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=2]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=3]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=4]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_"]
@@ -33,7 +46,11 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:abstract_float_nonmatching_vec2:*]
+ expected: TIMEOUT
[:inputSource="const"]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
@@ -43,7 +60,11 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:abstract_float_nonmatching_vec3:*]
+ expected: TIMEOUT
[:inputSource="const"]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
@@ -53,7 +74,11 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:abstract_float_nonmatching_vec4:*]
+ expected: TIMEOUT
[:inputSource="const"]
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
@@ -63,209 +88,306 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f16_matching:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f16_nonmatching_vec2:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f16_nonmatching_vec3:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f16_nonmatching_vec4:*]
+ expected:
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f32_matching:*]
+ expected: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f32_nonmatching_vec2:*]
+ expected: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f32_nonmatching_vec3:*]
+ expected: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f32_nonmatching_vec4:*]
+ expected: TIMEOUT
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform"]
+ expected:
+ if not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/modf/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/modf/cts.https.html.ini
index 76a50049ed..4577a6e3f6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/modf/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/modf/cts.https.html.ini
@@ -187,12 +187,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
@@ -204,16 +200,10 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,modf:f32_vec2_whole:*]
@@ -221,16 +211,10 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,modf:f32_vec3_fract:*]
@@ -282,12 +266,8 @@
expected: FAIL
[:inputSource="storage_r"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini
index 2cb4c117e8..4faead0f70 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini
@@ -1,67 +1,34 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float:*]
- [:inputSource="const";vectorize="_undef_"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="const";vectorize=2]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="const";vectorize=3]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="const";vectorize=4]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=2]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=3]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=4]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=3]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=4]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec2:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="uniform";vectorize="_undef_"]
- expected:
- if os == "win": [PASS, FAIL]
- [:inputSource="uniform";vectorize=2]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="uniform";vectorize=3]
- expected:
- if os == "win": [PASS, FAIL]
- [:inputSource="uniform";vectorize=4]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec4:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:inputSource="const"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:f16_vec2:*]
@@ -137,34 +104,40 @@
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:f32_vec3:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:f32_vec4:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini
index 701d3619ef..ed9981db17 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini
@@ -1,15 +1,24 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack2x16float:pack:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16snorm/cts.https.html.ini
index 496b32437c..011c4df4df 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16snorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16snorm/cts.https.html.ini
@@ -5,14 +5,11 @@
[:inputSource="storage_r"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16unorm/cts.https.html.ini
index 76693f672d..ff4d46f1d6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16unorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16unorm/cts.https.html.ini
@@ -5,14 +5,11 @@
[:inputSource="storage_r"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8snorm/cts.https.html.ini
index b431ba8ba3..b23de2f565 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8snorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8snorm/cts.https.html.ini
@@ -5,14 +5,11 @@
[:inputSource="storage_r"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8unorm/cts.https.html.ini
index 2acca1ab22..f6ef4de525 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8unorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4x8unorm/cts.https.html.ini
@@ -5,14 +5,11 @@
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html.ini
new file mode 100644
index 0000000000..ee3e116bab
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack4xI8:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini
new file mode 100644
index 0000000000..6bc4836262
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack4xI8Clamp:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html.ini
new file mode 100644
index 0000000000..74f2054251
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack4xU8:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini
new file mode 100644
index 0000000000..4e4046d901
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack4xU8Clamp:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini
index f058738996..ea73e9b906 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini
@@ -1,11 +1,37 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pow:abstract_float:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -33,6 +59,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pow:f16:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "mac": FAIL
@@ -51,35 +79,43 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -91,58 +127,126 @@
[:inputSource="uniform";vectorize=3]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize=4]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pow:f32:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/radians/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/radians/cts.https.html.ini
index 3eb9544e38..fcebc8054e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/radians/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/radians/cts.https.html.ini
@@ -110,12 +110,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -128,12 +126,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -151,7 +147,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini
index f0b0062690..4e162f93ab 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini
@@ -1,54 +1,45 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float:*]
- [:inputSource="const";vectorize=2]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="const";vectorize=3]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="const";vectorize=4]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=2]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=3]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="storage_r";vectorize=4]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:inputSource="storage_rw";vectorize=3]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec2:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac": SKIP
+ [:inputSource="const"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
- [:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- [:inputSource="uniform";vectorize=2]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec3:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac": SKIP
+ [:inputSource="const"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
- [:inputSource="uniform";vectorize=3]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- [:inputSource="uniform";vectorize=4]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec4:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:inputSource="const"]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec2:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -71,6 +62,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec3:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -93,6 +86,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec4:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -115,54 +110,99 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f32_vec2:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac": SKIP
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f32_vec3:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac": SKIP
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f32_vec4:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
[:inputSource="const"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html.ini
index faf3da14fe..9f4b6d7299 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html.ini
@@ -1,52 +1,74 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float:*]
- [:inputSource="const";vectorize=2]
-
- [:inputSource="const";vectorize=3]
-
- [:inputSource="const";vectorize=4]
-
- [:inputSource="storage_r";vectorize=2]
-
- [:inputSource="storage_r";vectorize=3]
-
- [:inputSource="storage_r";vectorize=4]
-
- [:inputSource="storage_rw";vectorize=2]
-
- [:inputSource="storage_rw";vectorize=3]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec2:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="storage_rw";vectorize=4]
- [:inputSource="uniform";vectorize=2]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec3:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:inputSource="uniform";vectorize=3]
- [:inputSource="uniform";vectorize=4]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec4:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:inputSource="const"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec2:*]
expected:
- if os == "mac" and debug: TIMEOUT
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const"]
expected:
if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec3:*]
expected:
- if os == "mac" and debug: TIMEOUT
+ if os == "mac": TIMEOUT
[:inputSource="const"]
expected:
if os == "mac": FAIL
@@ -66,18 +88,20 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec4:*]
expected:
- if os == "mac" and debug: TIMEOUT
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const"]
expected:
if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform"]
expected:
@@ -88,29 +112,31 @@
expected:
if os == "win" and debug: TIMEOUT
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
- if os == "mac" and debug: TIMEOUT
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
@@ -120,55 +146,61 @@
expected:
if os == "win" and debug: TIMEOUT
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
- if os == "mac" and debug: TIMEOUT
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const"]
expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,refract:f32_vec4:*]
expected:
if os == "win" and debug: TIMEOUT
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
- if os == "mac" and debug: TIMEOUT
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:inputSource="const"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL]
if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:inputSource="storage_r"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
[:inputSource="storage_rw"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
[:inputSource="uniform"]
expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reverseBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reverseBits/cts.https.html.ini
index bf777362ea..a23419666d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reverseBits/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reverseBits/cts.https.html.ini
@@ -13,11 +13,11 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -25,11 +25,11 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
@@ -41,7 +41,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
@@ -63,11 +63,11 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
@@ -75,11 +75,11 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
@@ -91,7 +91,7 @@
[:inputSource="uniform";vectorize=2]
expected:
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/round/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/round/cts.https.html.ini
index 299b6efaf4..acff81d898 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/round/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/round/cts.https.html.ini
@@ -1,19 +1,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,round:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/saturate/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/saturate/cts.https.html.ini
index 457de6393b..c3ab7d6eda 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/saturate/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/saturate/cts.https.html.ini
@@ -92,49 +92,27 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
- expected:
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini
index c45a957058..eee189eceb 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini
@@ -1,4 +1,9 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,select:scalar:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:inputSource="const";component="af";overload="scalar"]
expected: FAIL
@@ -11,6 +16,18 @@
[:inputSource="const";component="af";overload="vec4"]
expected: FAIL
+ [:inputSource="const";component="ai";overload="scalar"]
+ expected: FAIL
+
+ [:inputSource="const";component="ai";overload="vec2"]
+ expected: FAIL
+
+ [:inputSource="const";component="ai";overload="vec3"]
+ expected: FAIL
+
+ [:inputSource="const";component="ai";overload="vec4"]
+ expected: FAIL
+
[:inputSource="const";component="b";overload="scalar"]
expected: FAIL
@@ -76,148 +93,333 @@
expected: FAIL
[:inputSource="storage_r";component="af";overload="scalar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="af";overload="vec2"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="af";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="af";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="scalar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="vec2"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="b";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="b";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="b";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="b";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec3"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec4"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="scalar"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec2"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="scalar"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec2"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec3"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec4"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec3"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec4"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="uniform";component="af";overload="scalar"]
@@ -227,9 +429,23 @@
[:inputSource="uniform";component="af";overload="vec4"]
- [:inputSource="uniform";component="b";overload="scalar"]
+ [:inputSource="uniform";component="ai";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";component="ai";overload="vec2"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";component="ai";overload="vec3"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";component="ai";overload="vec4"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";component="b";overload="scalar"]
[:inputSource="uniform";component="b";overload="vec2"]
expected:
@@ -240,8 +456,6 @@
[:inputSource="uniform";component="b";overload="vec4"]
[:inputSource="uniform";component="f";overload="scalar"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";component="f";overload="vec2"]
expected:
@@ -261,38 +475,58 @@
[:inputSource="uniform";component="h";overload="vec3"]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="h";overload="vec4"]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="i";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="i";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="i";overload="vec3"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="i";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="u";overload="scalar"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="uniform";component="u";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="uniform";component="u";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="uniform";component="u";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,select:vector:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:inputSource="const";component="af";overload="vec2"]
expected: FAIL
@@ -302,6 +536,15 @@
[:inputSource="const";component="af";overload="vec4"]
expected: FAIL
+ [:inputSource="const";component="ai";overload="vec2"]
+ expected: FAIL
+
+ [:inputSource="const";component="ai";overload="vec3"]
+ expected: FAIL
+
+ [:inputSource="const";component="ai";overload="vec4"]
+ expected: FAIL
+
[:inputSource="const";component="b";overload="vec2"]
expected: FAIL
@@ -351,104 +594,213 @@
expected: FAIL
[:inputSource="storage_r";component="af";overload="vec2"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="af";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="af";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
- [:inputSource="storage_r";component="b";overload="vec2"]
+ [:inputSource="storage_r";component="ai";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="ai";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";component="b";overload="vec2"]
[:inputSource="storage_r";component="b";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="b";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec3"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="f";overload="vec4"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec3"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="h";overload="vec4"]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="i";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_r";component="u";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec2"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="af";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec2"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";component="ai";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="b";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="f";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec3"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="h";overload="vec4"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec3"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="i";overload="vec4"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec2"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec3"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="storage_rw";component="u";overload="vec4"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:inputSource="uniform";component="af";overload="vec2"]
@@ -456,17 +808,19 @@
[:inputSource="uniform";component="af";overload="vec4"]
+ [:inputSource="uniform";component="ai";overload="vec2"]
+
+ [:inputSource="uniform";component="ai";overload="vec3"]
+
+ [:inputSource="uniform";component="ai";overload="vec4"]
+
[:inputSource="uniform";component="b";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";component="b";overload="vec3"]
[:inputSource="uniform";component="b";overload="vec4"]
[:inputSource="uniform";component="f";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";component="f";overload="vec3"]
@@ -485,16 +839,12 @@
if os == "mac": FAIL
[:inputSource="uniform";component="i";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";component="i";overload="vec3"]
[:inputSource="uniform";component="i";overload="vec4"]
[:inputSource="uniform";component="u";overload="vec2"]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";component="u";overload="vec3"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sign/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sign/cts.https.html.ini
index 9f517bcb77..eefa0a2352 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sign/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sign/cts.https.html.ini
@@ -15,19 +15,31 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,sign:abstract_int:*]
[:inputSource="const";vectorize="_undef_"]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
+ if os == "win" and debug: FAIL
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -176,12 +188,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -194,12 +204,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -217,7 +225,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -244,12 +251,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -262,12 +267,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -285,7 +288,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sin/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sin/cts.https.html.ini
index 07ef58e233..0c141d0029 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sin/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sin/cts.https.html.ini
@@ -1,11 +1,15 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,sin:abstract_float:*]
[:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
[:inputSource="const";vectorize=2]
+ expected: FAIL
[:inputSource="const";vectorize=3]
+ expected: FAIL
[:inputSource="const";vectorize=4]
+ expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
@@ -112,24 +116,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -140,8 +136,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini
index 974cb61159..5863d77800 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -147,6 +159,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,sinh:f32:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -162,12 +176,12 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,20 +194,23 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
@@ -203,7 +220,7 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/smoothstep/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/smoothstep/cts.https.html.ini
index 2af5ad3f1f..c490b70cf7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/smoothstep/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/smoothstep/cts.https.html.ini
@@ -1,19 +1,37 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,smoothstep:abstract_float:*]
+ expected:
+ if debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -65,150 +83,208 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,smoothstep:f16:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,smoothstep:f32:*]
+ expected:
+ if debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";vectorize=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";vectorize=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize="_undef_"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=2]
expected:
- if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=3]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";vectorize=4]
expected:
- if os == "win": [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sqrt/cts.https.html.ini
index 315a2851f7..e014e42770 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sqrt/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sqrt/cts.https.html.ini
@@ -2,18 +2,26 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +170,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +186,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +207,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/step/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/step/cts.https.html.ini
index 9e7a2b41ed..8d129ac0bb 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/step/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/step/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tan/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tan/cts.https.html.ini
index c163698a16..ccf1ab5b18 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tan/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tan/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tanh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tanh/cts.https.html.ini
index ebdd5bb7de..cf398ff4c7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tanh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/tanh/cts.https.html.ini
@@ -2,18 +2,30 @@
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:inputSource="storage_r";vectorize="_undef_"]
expected:
@@ -162,12 +174,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -180,12 +190,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -203,7 +211,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html.ini
deleted file mode 100644
index 27026438ef..0000000000
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html.ini
+++ /dev/null
@@ -1,122 +0,0 @@
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimension:depth:*]
- [:texture_type="texture_depth_2d"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_depth_2d_array"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_depth_cube"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_depth_cube_array"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_depth_multisampled_2d"]
- expected:
- if os == "win": [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimension:external:*]
- [:]
- expected:
- if os == "win": [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimension:sampled:*]
- [:texture_type="texture_1d"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_2d"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_2d_array"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_3d"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_cube"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_cube_array"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texture_type="texture_multisampled_2d"]
- expected:
- if os == "win": [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimension:storage:*]
- [:texel_format="r32float"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="r32sint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="r32uint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rg32float"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rg32sint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rg32uint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba16float"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba16sint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba16uint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba32float"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba32sint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba32uint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba8sint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba8snorm"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba8uint"]
- expected:
- if os == "win": [PASS, FAIL]
-
- [:texel_format="rgba8unorm"]
- expected:
- if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini
new file mode 100644
index 0000000000..36f8a3bc71
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini
@@ -0,0 +1,603 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:depth:*]
+ [:format="depth16unorm";aspect="all";samples=1]
+
+ [:format="depth16unorm";aspect="all";samples=4]
+
+ [:format="depth24plus";aspect="all";samples=1]
+
+ [:format="depth24plus";aspect="all";samples=4]
+
+ [:format="depth24plus-stencil8";aspect="depth-only";samples=1]
+
+ [:format="depth24plus-stencil8";aspect="depth-only";samples=4]
+
+ [:format="depth32float";aspect="all";samples=1]
+
+ [:format="depth32float";aspect="all";samples=4]
+
+ [:format="depth32float-stencil8";aspect="depth-only";samples=1]
+
+ [:format="depth32float-stencil8";aspect="depth-only";samples=4]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:external:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:sampled_and_multisampled:*]
+ expected: [OK, TIMEOUT]
+ [:format="astc-10x10-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x10-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x5-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x6-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-10x8-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-12x10-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-12x12-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-4x4-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-5x4-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-5x5-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-6x5-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-6x6-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x5-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x6-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="astc-8x8-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc1-rgba-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc2-rgba-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc3-rgba-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-snorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc4-r-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-snorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc5-rg-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-float";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc6h-rgb-ufloat";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bc7-rgba-unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="bgra8unorm";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="bgra8unorm-srgb";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="bgra8unorm-srgb";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="depth16unorm";aspect="all";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth16unorm";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus";aspect="all";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";aspect="depth-only";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";aspect="depth-only";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";aspect="stencil-only";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="depth24plus-stencil8";aspect="stencil-only";samples=4]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="depth32float";aspect="all";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth32float";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";aspect="depth-only";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";aspect="depth-only";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";aspect="stencil-only";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="depth32float-stencil8";aspect="stencil-only";samples=4]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="eac-r11snorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="eac-r11unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11snorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="eac-rg11unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8a1unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgb8unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="etc2-rgba8unorm-srgb";aspect="all";samples=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="r16float";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="r16float";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="r16sint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="r16sint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:format="r16uint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="r16uint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:format="r32sint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r32uint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="r8sint";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="r8sint";aspect="all";samples=4]
+
+ [:format="r8snorm";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="r8uint";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="r8uint";aspect="all";samples=4]
+
+ [:format="r8unorm";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="r8unorm";aspect="all";samples=4]
+ expected: FAIL
+
+ [:format="rg11b10ufloat";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg16float";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg16float";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg16sint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg16sint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg16uint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rg16uint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:format="rg32sint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg32uint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rg8sint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rg8sint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="rg8uint";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="rg8uint";aspect="all";samples=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";aspect="all";samples=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:format="rg8unorm";aspect="all";samples=4]
+ expected: FAIL
+
+ [:format="rgb10a2uint";aspect="all";samples=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2uint";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";aspect="all";samples=4]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16sint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba16uint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba32sint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba32uint";aspect="all";samples=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:format="rgba8sint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8sint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8uint";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8unorm";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8unorm-srgb";aspect="all";samples=1]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="rgba8unorm-srgb";aspect="all";samples=4]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:format="stencil8";aspect="all";samples=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:format="stencil8";aspect="all";samples=4]
+ expected: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:storage:*]
+ [:format="r32float";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="r32sint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="r32uint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rg32float";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rg32sint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rg32uint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba16float";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba16sint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba16uint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba32float";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba32sint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba32uint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba8sint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba8snorm";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba8uint";aspect="all"]
+ expected:
+ if os == "win": FAIL
+
+ [:format="rgba8unorm";aspect="all"]
+ expected:
+ if os == "win": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini
index 02afe8c136..991c1cd672 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*]
+ expected:
+ if os == "mac": SKIP
[:texture_type="texture_depth_2d"]
[:texture_type="texture_depth_2d_array"]
@@ -9,6 +11,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*]
+ expected:
+ if os == "mac": SKIP
[:texture_type="texture_1d"]
[:texture_type="texture_2d"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html.ini
index f1a7fdfd55..5c5d8a1b77 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html.ini
@@ -26,9 +26,9098 @@
[:]
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_2d_coords,derivatives:*]
+ [:]
+
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_2d_coords:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux": TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
[:]
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="bgra8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="r8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg11b10ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rg8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb10a2unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgb9e5ufloat";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba16float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba32float";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8snorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="spiral";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="clamp-to-edge";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="mirror-repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="clamp-to-edge";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="mirror-repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="linear";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:format="rgba8unorm-srgb";sample_points="texel-centre";addressModeU="repeat";addressModeV="repeat";minFilter="nearest";offset=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_3d_coords:*]
[:texture_type="texture_3d"]
@@ -42,11 +9131,3 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_array_3d_coords:*]
[:]
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSample:stage:*]
- [:stage="compute"]
-
- [:stage="fragment"]
-
- [:stage="vertex"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html.ini
index 4005df2edc..40c354d7b6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html.ini
@@ -10,20 +10,6 @@
if os == "win" and not debug: [PASS, FAIL]
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:control_flow:*]
- [:stage="compute"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:stage="fragment"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:stage="vertex"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
-
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:sampled_2d_coords:*]
[:]
expected:
@@ -38,17 +24,3 @@
[:texture_type="texture_cube"]
expected:
if os == "win" and not debug: [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:stage:*]
- [:stage="compute"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:stage="fragment"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
-
- [:stage="vertex"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html.ini
index 58461bcf6d..c457b56146 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html.ini
@@ -2,59 +2,21 @@
[:]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:3d_coords:*]
[:]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:arrayed_2d_coords:*]
[:]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:arrayed_3d_coords:*]
[:]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:control_flow:*]
- [:stage="compute"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
- [:stage="fragment"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
- [:stage="vertex"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
-
-[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:stage:*]
- [:stage="compute"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
- [:stage="fragment"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
-
- [:stage="vertex"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/transpose/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/transpose/cts.https.html.ini
index 3ccbf110a5..f3fd747725 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/transpose/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/transpose/cts.https.html.ini
@@ -210,6 +210,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,transpose:f32:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected: FAIL
@@ -240,84 +242,92 @@
[:inputSource="storage_r";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
expected:
@@ -326,7 +336,6 @@
[:inputSource="uniform";cols=2;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";cols=2;rows=4]
expected:
@@ -335,27 +344,26 @@
[:inputSource="uniform";cols=3;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";cols=3;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";cols=3;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=3]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=4;rows=4]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/trunc/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/trunc/cts.https.html.ini
index 770239f1d9..1417ada589 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/trunc/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/trunc/cts.https.html.ini
@@ -110,12 +110,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -128,12 +126,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -151,7 +147,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16float/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16float/cts.https.html.ini
index 0eda264f39..02dac5dea0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16float/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16float/cts.https.html.ini
@@ -9,12 +9,10 @@
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm/cts.https.html.ini
index 4e868b0753..44b2e33566 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm/cts.https.html.ini
@@ -5,12 +5,10 @@
[:inputSource="storage_r"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm/cts.https.html.ini
index 4cdedb28bd..3507a1b014 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm/cts.https.html.ini
@@ -5,12 +5,10 @@
[:inputSource="storage_r"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm/cts.https.html.ini
index 284b335450..a28e9a7f8b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm/cts.https.html.ini
@@ -5,12 +5,10 @@
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm/cts.https.html.ini
index 42e672b217..95370e1836 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm/cts.https.html.ini
@@ -5,12 +5,10 @@
[:inputSource="storage_r"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html.ini
new file mode 100644
index 0000000000..3a67d24e0d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,unpack4xI8:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html.ini
new file mode 100644
index 0000000000..0365ef1253
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,unpack4xU8:basic:*]
+ [:inputSource="const"]
+ expected: FAIL
+
+ [:inputSource="storage_r"]
+ expected: FAIL
+
+ [:inputSource="storage_rw"]
+ expected: FAIL
+
+ [:inputSource="uniform"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini
new file mode 100644
index 0000000000..a32dc4efce
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini
@@ -0,0 +1,86 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,workgroupUniformLoad:types:*]
+ [:type="ComplexStruct";wgsize=[1,128\]]
+ expected: FAIL
+
+ [:type="ComplexStruct";wgsize=[1,1\]]
+ expected: FAIL
+
+ [:type="ComplexStruct";wgsize=[16,16\]]
+ expected: FAIL
+
+ [:type="ComplexStruct";wgsize=[3,7\]]
+ expected: FAIL
+
+ [:type="SimpleStruct";wgsize=[1,128\]]
+
+ [:type="SimpleStruct";wgsize=[1,1\]]
+
+ [:type="SimpleStruct";wgsize=[16,16\]]
+
+ [:type="SimpleStruct";wgsize=[3,7\]]
+
+ [:type="array%3Cu32,%204%3E";wgsize=[1,128\]]
+ expected: FAIL
+
+ [:type="array%3Cu32,%204%3E";wgsize=[1,1\]]
+ expected: FAIL
+
+ [:type="array%3Cu32,%204%3E";wgsize=[16,16\]]
+ expected: FAIL
+
+ [:type="array%3Cu32,%204%3E";wgsize=[3,7\]]
+ expected: FAIL
+
+ [:type="bool";wgsize=[1,128\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="bool";wgsize=[1,1\]]
+
+ [:type="bool";wgsize=[16,16\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="bool";wgsize=[3,7\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="mat3x2f";wgsize=[1,128\]]
+ expected:
+ if os == "win" and not debug: FAIL
+
+ [:type="mat3x2f";wgsize=[1,1\]]
+
+ [:type="mat3x2f";wgsize=[16,16\]]
+ expected:
+ if os == "win" and not debug: FAIL
+
+ [:type="mat3x2f";wgsize=[3,7\]]
+ expected:
+ if os == "win" and not debug: FAIL
+
+ [:type="u32";wgsize=[1,128\]]
+ expected: FAIL
+
+ [:type="u32";wgsize=[1,1\]]
+ expected: FAIL
+
+ [:type="u32";wgsize=[16,16\]]
+ expected: FAIL
+
+ [:type="u32";wgsize=[3,7\]]
+ expected: FAIL
+
+ [:type="vec4u";wgsize=[1,128\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="vec4u";wgsize=[1,1\]]
+
+ [:type="vec4u";wgsize=[16,16\]]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="vec4u";wgsize=[3,7\]]
+ expected:
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini
new file mode 100644
index 0000000000..3aa3bdd7a1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini
@@ -0,0 +1,240 @@
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:array_length:*]
+ expected:
+ if os == "mac": SKIP
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:atomic_ptr_to_element:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="storage"]
+
+ [:address_space="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:mixed_ptr_parameters:*]
+ expected:
+ if os == "mac": SKIP
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_full_object:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function";call_indirection=0;type="array"]
+
+ [:address_space="function";call_indirection=0;type="struct"]
+
+ [:address_space="function";call_indirection=0;type="vec4i"]
+
+ [:address_space="function";call_indirection=1;type="array"]
+
+ [:address_space="function";call_indirection=1;type="struct"]
+
+ [:address_space="function";call_indirection=1;type="vec4i"]
+
+ [:address_space="function";call_indirection=2;type="array"]
+
+ [:address_space="function";call_indirection=2;type="struct"]
+
+ [:address_space="function";call_indirection=2;type="vec4i"]
+
+ [:address_space="private";call_indirection=0;type="array"]
+
+ [:address_space="private";call_indirection=0;type="struct"]
+
+ [:address_space="private";call_indirection=0;type="vec4i"]
+
+ [:address_space="private";call_indirection=1;type="array"]
+
+ [:address_space="private";call_indirection=1;type="struct"]
+
+ [:address_space="private";call_indirection=1;type="vec4i"]
+
+ [:address_space="private";call_indirection=2;type="array"]
+
+ [:address_space="private";call_indirection=2;type="struct"]
+
+ [:address_space="private";call_indirection=2;type="vec4i"]
+
+ [:address_space="storage";call_indirection=0;type="array"]
+
+ [:address_space="storage";call_indirection=0;type="struct"]
+
+ [:address_space="storage";call_indirection=0;type="vec4i"]
+
+ [:address_space="storage";call_indirection=1;type="array"]
+
+ [:address_space="storage";call_indirection=1;type="struct"]
+
+ [:address_space="storage";call_indirection=1;type="vec4i"]
+
+ [:address_space="storage";call_indirection=2;type="array"]
+
+ [:address_space="storage";call_indirection=2;type="struct"]
+
+ [:address_space="storage";call_indirection=2;type="vec4i"]
+
+ [:address_space="uniform";call_indirection=0;type="array"]
+
+ [:address_space="uniform";call_indirection=0;type="struct"]
+
+ [:address_space="uniform";call_indirection=0;type="vec4i"]
+
+ [:address_space="uniform";call_indirection=1;type="array"]
+
+ [:address_space="uniform";call_indirection=1;type="struct"]
+
+ [:address_space="uniform";call_indirection=1;type="vec4i"]
+
+ [:address_space="uniform";call_indirection=2;type="array"]
+
+ [:address_space="uniform";call_indirection=2;type="struct"]
+
+ [:address_space="uniform";call_indirection=2;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=0;type="array"]
+
+ [:address_space="workgroup";call_indirection=0;type="struct"]
+
+ [:address_space="workgroup";call_indirection=0;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=1;type="array"]
+
+ [:address_space="workgroup";call_indirection=1;type="struct"]
+
+ [:address_space="workgroup";call_indirection=1;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=2;type="array"]
+
+ [:address_space="workgroup";call_indirection=2;type="struct"]
+
+ [:address_space="workgroup";call_indirection=2;type="vec4i"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_element:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function"]
+
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="uniform"]
+
+ [:address_space="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_member:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function"]
+
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="uniform"]
+
+ [:address_space="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_full_object:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function";call_indirection=0;type="array"]
+
+ [:address_space="function";call_indirection=0;type="struct"]
+
+ [:address_space="function";call_indirection=0;type="vec4i"]
+
+ [:address_space="function";call_indirection=1;type="array"]
+
+ [:address_space="function";call_indirection=1;type="struct"]
+
+ [:address_space="function";call_indirection=1;type="vec4i"]
+
+ [:address_space="function";call_indirection=2;type="array"]
+
+ [:address_space="function";call_indirection=2;type="struct"]
+
+ [:address_space="function";call_indirection=2;type="vec4i"]
+
+ [:address_space="private";call_indirection=0;type="array"]
+
+ [:address_space="private";call_indirection=0;type="struct"]
+
+ [:address_space="private";call_indirection=0;type="vec4i"]
+
+ [:address_space="private";call_indirection=1;type="array"]
+
+ [:address_space="private";call_indirection=1;type="struct"]
+
+ [:address_space="private";call_indirection=1;type="vec4i"]
+
+ [:address_space="private";call_indirection=2;type="array"]
+
+ [:address_space="private";call_indirection=2;type="struct"]
+
+ [:address_space="private";call_indirection=2;type="vec4i"]
+
+ [:address_space="storage";call_indirection=0;type="array"]
+
+ [:address_space="storage";call_indirection=0;type="struct"]
+
+ [:address_space="storage";call_indirection=0;type="vec4i"]
+
+ [:address_space="storage";call_indirection=1;type="array"]
+
+ [:address_space="storage";call_indirection=1;type="struct"]
+
+ [:address_space="storage";call_indirection=1;type="vec4i"]
+
+ [:address_space="storage";call_indirection=2;type="array"]
+
+ [:address_space="storage";call_indirection=2;type="struct"]
+
+ [:address_space="storage";call_indirection=2;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=0;type="array"]
+
+ [:address_space="workgroup";call_indirection=0;type="struct"]
+
+ [:address_space="workgroup";call_indirection=0;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=1;type="array"]
+
+ [:address_space="workgroup";call_indirection=1;type="struct"]
+
+ [:address_space="workgroup";call_indirection=1;type="vec4i"]
+
+ [:address_space="workgroup";call_indirection=2;type="array"]
+
+ [:address_space="workgroup";call_indirection=2;type="struct"]
+
+ [:address_space="workgroup";call_indirection=2;type="vec4i"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_element:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function"]
+
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_member:*]
+ expected:
+ if os == "mac": SKIP
+ [:address_space="function"]
+
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="workgroup"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini
new file mode 100644
index 0000000000..b0dd1b340c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini
@@ -0,0 +1,11380 @@
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_array_elements:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:abstract_type="abstract-float";concrete_type="f16";length=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f16";length=10]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f16";length=5]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";length=1]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";length=10]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";length=5]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";length=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";length=10]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";length=5]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";length=1]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";length=10]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";length=5]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";length=1]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";length=10]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";length=5]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";length=1]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";length=10]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";length=5]
+ expected: FAIL
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=1]
+ expected: FAIL
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=10]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3f";length=5]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=1]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=10]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="mat2x3%3Cabstract-float%3E";concrete_type="mat2x3h";length=5]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=1]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=10]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3f";length=5]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=10]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3h";length=5]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=1]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=10]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3i";length=5]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=1]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=10]
+ expected: FAIL
+
+ [:abstract_type="vec3%3Cabstract-int%3E";concrete_type="vec3u";length=5]
+ expected: FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=1]
+ expected: FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=10]
+ expected: FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4f";length=5]
+ expected: FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=10]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="vec4%3Cabstract-float%3E";concrete_type="vec4h";length=5]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_column_vectors:*]
+ [:concrete_type="f16";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f32";columns=2;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=2;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=2;rows=4]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=4]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_elements:*]
+ [:concrete_type="f16";columns=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f16";columns=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:concrete_type="f32";columns=2;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=2;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=2;rows=4]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=3;rows=4]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=2]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=3]
+ expected: FAIL
+
+ [:concrete_type="f32";columns=4;rows=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_elements:*]
+ [:abstract_type="abstract-float";concrete_type="f16";width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f16";width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f16";width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";width=4]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_mix:*]
+ expected:
+ if os == "mac": TIMEOUT
+ [:abstract_type="abstract-float";concrete_type="f16";signature="22"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="2s"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="2ss"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="3s"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="s2"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="s2s"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="s3"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";signature="ss2"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="22"]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="2ss"]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="3s"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="s2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="s2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="s3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";signature="ss2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="22"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="2s"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="2ss"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="3s"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="s2"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="s2s"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="s3"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";signature="ss2"]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="22"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="2ss"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="3s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="s2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="s2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="s3"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";signature="ss2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="22"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="2ss"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="3s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="s2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="s2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="s3"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";signature="ss2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="22"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="2ss"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="3s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="s2"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="s2s"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="s3"]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";signature="ss2"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_splat:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:abstract_type="abstract-float";concrete_type="f16";value=100;width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=100;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=100;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=1;width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=1;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=1;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=2;width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=2;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=2;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=5;width=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=5;width=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f16";value=5;width=4]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=100;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=100;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=100;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=1;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=1;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=1;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=2;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=2;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=2;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=5;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=5;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-float";concrete_type="f32";value=5;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=100;width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=100;width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=100;width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=1;width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=1;width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=1;width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=2;width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=2;width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=2;width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=5;width=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=5;width=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f16";value=5;width=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=100;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=100;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=100;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=1;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=1;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=1;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=2;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=2;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=2;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=5;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=5;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="f32";value=5;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=100;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=100;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=100;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=1;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=1;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=1;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=2;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=2;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=2;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=5;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=5;width=3]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="i32";value=5;width=4]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=100;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=100;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=100;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=1;width=2]
+ expected: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=1;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=1;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=2;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=2;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=2;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=5;width=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=5;width=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:abstract_type="abstract-int";concrete_type="u32";value=5;width=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_array_elements:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:inputSource="const";type="bool";length=10;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";length=10;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";length=5;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";length=5;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f16";length=10;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";length=10;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";length=1;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";length=1;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";length=5;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";length=5;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";length=10;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";length=10;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";length=5;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";length=5;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=10;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=10;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=5;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";length=5;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=10;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=10;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=5;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";length=5;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=10;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=10;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=5;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="vec3f";length=5;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="vec4i";length=10;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="vec4i";length=10;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="vec4i";length=1;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="vec4i";length=1;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="vec4i";length=5;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="vec4i";length=5;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=10;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=10;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=1;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=1;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=5;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";length=5;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=10;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=10;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=1;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=1;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=5;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";length=5;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec3f";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="vec4i";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=10;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=10;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=1;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=1;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=5;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";length=5;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=10;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=10;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=1;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=1;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=5;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";length=5;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=10;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=10;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=1;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=5;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";length=5;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=10;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=10;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=1;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=1;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=5;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec3f";length=5;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=10;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=10;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=1;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=1;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=5;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="vec4i";length=5;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=10;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=10;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=1;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=1;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=5;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";length=5;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=10;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=10;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=1;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=1;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=5;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";length=5;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=10;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=10;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=1;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=1;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=5;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";length=5;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=10;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=10;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=1;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=1;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=5;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";length=5;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=10;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=10;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=1;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=1;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=5;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";length=5;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=10;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=10;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=1;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=1;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=5;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec3f";length=5;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=10;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=10;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=1;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=1;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=5;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="vec4i";length=5;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_column_vectors:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_elements:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_elements:*]
+ expected: TIMEOUT
+ [:inputSource="const";type="bool";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="bool";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=3;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=4;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=3;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=4;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";width=2;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=2;infer_type=true]
+
+ [:inputSource="uniform";type="bool";width=3;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=3;infer_type=true]
+
+ [:inputSource="uniform";type="bool";width=4;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=4;infer_type=true]
+
+ [:inputSource="uniform";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=2;infer_type=false]
+
+ [:inputSource="uniform";type="i32";width=2;infer_type=true]
+
+ [:inputSource="uniform";type="i32";width=3;infer_type=false]
+
+ [:inputSource="uniform";type="i32";width=3;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=4;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=4;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=2;infer_type=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_mix:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:inputSource="const";type="bool";signature="22";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="22";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="2s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="2s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="2ss";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="2ss";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="3s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="3s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s2";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s2";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s2s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s2s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s3";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="s3";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="ss2";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";signature="ss2";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f16";signature="22";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="22";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="2s";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="2s";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="2ss";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="2ss";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="3s";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="3s";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s2";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s2";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s2s";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s2s";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s3";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="s3";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="ss2";infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";signature="ss2";infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="22";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="22";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";signature="22";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="22";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="2s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="2s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="2ss";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="2ss";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="3s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="3s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="s2";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="s2";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="s2s";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="s2s";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";signature="ss2";infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";signature="ss2";infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";signature="22";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="22";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="u32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="u32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";type="u32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="u32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="u32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="22";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="22";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="2s";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="2s";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="2ss";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="2ss";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="3s";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s2";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s2";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s2s";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s2s";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="ss2";infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";signature="ss2";infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="22";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="22";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="2s";infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="2s";infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="2ss";infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="2ss";infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="3s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="3s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s2";infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s2";infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s2s";infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s3";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="s3";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="ss2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";signature="ss2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="22";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="22";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="2ss";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="2ss";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="3s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="3s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s2s";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s2s";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s3";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="s3";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="ss2";infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";signature="ss2";infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="22";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="22";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="2ss";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="2ss";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="3s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="3s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s3";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="s3";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="ss2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";signature="ss2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="22";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="22";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="2ss";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="2ss";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="3s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="3s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s3";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="s3";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="ss2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";signature="ss2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="22";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="22";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="2ss";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="2ss";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="3s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="3s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s2s";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s2s";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s3";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="s3";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="ss2";infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";signature="ss2";infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_splat:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "win" and not debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";type="bool";value="max";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="max";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="max";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="max";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="max";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="max";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value=100;width=2;infer_type=false]
+
+ [:inputSource="const";type="bool";value=100;width=2;infer_type=true]
+
+ [:inputSource="const";type="bool";value=100;width=3;infer_type=false]
+
+ [:inputSource="const";type="bool";value=100;width=3;infer_type=true]
+
+ [:inputSource="const";type="bool";value=100;width=4;infer_type=false]
+
+ [:inputSource="const";type="bool";value=100;width=4;infer_type=true]
+
+ [:inputSource="const";type="bool";value=1;width=2;infer_type=false]
+
+ [:inputSource="const";type="bool";value=1;width=2;infer_type=true]
+
+ [:inputSource="const";type="bool";value=1;width=3;infer_type=false]
+
+ [:inputSource="const";type="bool";value=1;width=3;infer_type=true]
+
+ [:inputSource="const";type="bool";value=1;width=4;infer_type=false]
+
+ [:inputSource="const";type="bool";value=1;width=4;infer_type=true]
+
+ [:inputSource="const";type="bool";value=2;width=2;infer_type=false]
+
+ [:inputSource="const";type="bool";value=2;width=2;infer_type=true]
+
+ [:inputSource="const";type="bool";value=2;width=3;infer_type=false]
+
+ [:inputSource="const";type="bool";value=2;width=3;infer_type=true]
+
+ [:inputSource="const";type="bool";value=2;width=4;infer_type=false]
+
+ [:inputSource="const";type="bool";value=2;width=4;infer_type=true]
+
+ [:inputSource="const";type="bool";value=5;width=2;infer_type=false]
+
+ [:inputSource="const";type="bool";value=5;width=2;infer_type=true]
+
+ [:inputSource="const";type="bool";value=5;width=3;infer_type=false]
+
+ [:inputSource="const";type="bool";value=5;width=3;infer_type=true]
+
+ [:inputSource="const";type="bool";value=5;width=4;infer_type=false]
+
+ [:inputSource="const";type="bool";value=5;width=4;infer_type=true]
+
+ [:inputSource="const";type="f16";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f16";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="max";width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value="min";width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=100;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=1;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=2;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="f32";value=5;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value="max";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="max";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value="min";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="i32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";type="i32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="const";type="i32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="i32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=100;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=2;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=2;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=2;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=3;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=3;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=4;infer_type=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="const";type="u32";value=5;width=4;infer_type=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5;width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=2;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=2;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=3;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=3;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=4;infer_type=false]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min";width=4;infer_type=true]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+ if not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=2;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=2;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=3;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=2;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=2;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=3;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=3;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=4;infer_type=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="min";width=4;infer_type=true]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="max";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value="min";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=100;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=1;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5;width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:matrix_identity:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=2;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=3;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";columns=4;rows=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=true]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=false]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=3;rows=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";columns=4;rows=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:scalar_identity:*]
+ expected: TIMEOUT
+ [:inputSource="const";type="bool";value="max"]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value="min"]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";value=1]
+
+ [:inputSource="const";type="bool";value=100]
+
+ [:inputSource="const";type="bool";value=2]
+
+ [:inputSource="const";type="bool";value=5]
+
+ [:inputSource="const";type="f16";value="max"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";value="min"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";value=1]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";value=100]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";value=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";value=5]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";value="max"]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";value="min"]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";value=1]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";value=100]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";value=2]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";value=5]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="max"]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value="min"]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value=1]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value=100]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value=2]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";value=5]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value="max"]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value="min"]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value=1]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value=100]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value=2]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";value=5]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="bool";value="max"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value="min"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=1]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=100]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";value=5]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="max"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value="min"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=1]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=100]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";value=5]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="max"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value="min"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=1]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=100]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";value=5]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="max"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value="min"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=1]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=100]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";value=5]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="max"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value="min"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=1]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=100]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=2]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";value=5]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="max"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value="min"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=1]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=100]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=2]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";value=5]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="max"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value="min"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=100]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=2]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";value=5]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="max"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value="min"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=100]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=2]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";value=5]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="max"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value="min"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=1]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=100]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=2]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";value=5]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="max"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value="min"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=100]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=2]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";value=5]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";value="max"]
+
+ [:inputSource="uniform";type="bool";value="min"]
+
+ [:inputSource="uniform";type="bool";value=1]
+
+ [:inputSource="uniform";type="bool";value=100]
+
+ [:inputSource="uniform";type="bool";value=2]
+
+ [:inputSource="uniform";type="bool";value=5]
+
+ [:inputSource="uniform";type="f16";value="max"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value="min"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=1]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=100]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=2]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";value=5]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="max"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value="min"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=1]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=100]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";value=5]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";value="max"]
+
+ [:inputSource="uniform";type="i32";value="min"]
+
+ [:inputSource="uniform";type="i32";value=1]
+
+ [:inputSource="uniform";type="i32";value=100]
+
+ [:inputSource="uniform";type="i32";value=2]
+
+ [:inputSource="uniform";type="i32";value=5]
+
+ [:inputSource="uniform";type="u32";value="max"]
+
+ [:inputSource="uniform";type="u32";value="min"]
+
+ [:inputSource="uniform";type="u32";value=1]
+
+ [:inputSource="uniform";type="u32";value=100]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=2]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";value=5]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:structure:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["bool"\];nested=false]
+ expected: FAIL
+
+ [:member_types=["bool"\];nested=true]
+ expected: FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:member_types=["i32","u32"\];nested=false]
+ expected: FAIL
+
+ [:member_types=["i32","u32"\];nested=true]
+ expected: FAIL
+
+ [:member_types=["u32"\];nested=false]
+ expected: FAIL
+
+ [:member_types=["u32"\];nested=true]
+ expected: FAIL
+
+ [:member_types=["vec3f"\];nested=false]
+ expected: FAIL
+
+ [:member_types=["vec3f"\];nested=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:vector_identity:*]
+ expected: TIMEOUT
+ [:inputSource="const";type="bool";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="bool";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";type="f32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="f32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="i32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=2;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=2;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=3;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=3;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=4;infer_type=false]
+ expected: FAIL
+
+ [:inputSource="const";type="u32";width=4;infer_type=true]
+ expected: FAIL
+
+ [:inputSource="storage_r";type="bool";width=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="bool";width=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=2;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=2;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=3;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=3;infer_type=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="f32";width=4;infer_type=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=3;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=4;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="i32";width=4;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=2;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=2;infer_type=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=3;infer_type=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=3;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=4;infer_type=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";type="u32";width=4;infer_type=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="bool";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="f32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="i32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=2;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=2;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=3;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=3;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=4;infer_type=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";type="u32";width=4;infer_type=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="bool";width=2;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=2;infer_type=true]
+
+ [:inputSource="uniform";type="bool";width=3;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=3;infer_type=true]
+
+ [:inputSource="uniform";type="bool";width=4;infer_type=false]
+
+ [:inputSource="uniform";type="bool";width=4;infer_type=true]
+
+ [:inputSource="uniform";type="f16";width=2;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=2;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=3;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=3;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=4;infer_type=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f16";width=4;infer_type=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=2;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="f32";width=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=2;infer_type=false]
+
+ [:inputSource="uniform";type="i32";width=2;infer_type=true]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=3;infer_type=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=3;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=4;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="i32";width=4;infer_type=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=2;infer_type=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=2;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=3;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=3;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=4;infer_type=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";type="u32";width=4;infer_type=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html.ini
new file mode 100644
index 0000000000..fb9e275092
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html.ini
@@ -0,0 +1,526 @@
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,zero_value:array:*]
+ [:type="bool";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="bool";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="bool";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";length=1]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";length=10]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";length=5]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec3f";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec3f";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec3f";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec4i";length=1]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec4i";length=10]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="vec4i";length=5]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,zero_value:matrix:*]
+ [:type="f16";columns=2;rows=2]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=2;rows=3]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=2;rows=4]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=3;rows=2]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=3;rows=3]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=3;rows=4]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=4;rows=2]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=4;rows=3]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";columns=4;rows=4]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=2;rows=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=2;rows=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=2;rows=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=3;rows=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=3;rows=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=3;rows=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=4;rows=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=4;rows=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";columns=4;rows=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,zero_value:scalar:*]
+ [:type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,zero_value:structure:*]
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=false]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["bool","u32","f16","vec3f","vec2i"\];nested=true]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["bool"\];nested=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["bool"\];nested=true]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=false]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","f16","vec4i","mat3x2f"\];nested=true]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=false]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","u32","f32","f16","vec3f","vec4i"\];nested=true]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","u32"\];nested=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["i32","u32"\];nested=true]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["u32"\];nested=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["u32"\];nested=true]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["vec3f"\];nested=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:member_types=["vec3f"\];nested=true]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,constructor,zero_value:vector:*]
+ [:type="bool";width=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="bool";width=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="bool";width=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";width=2]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";width=3]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16";width=4]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";width=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";width=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f32";width=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";width=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";width=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="i32";width=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";width=2]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";width=3]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="u32";width=4]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini
new file mode 100644
index 0000000000..6d74b3d0a4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini
@@ -0,0 +1,787 @@
+[cts.https.html?q=webgpu:shader,execution,expression,precedence:precedence:*]
+ expected: TIMEOUT
+ [:expr="add_mul";decl="const";strip_spaces=false]
+
+ [:expr="add_mul";decl="const";strip_spaces=true]
+
+ [:expr="add_mul";decl="literal";strip_spaces=false]
+
+ [:expr="add_mul";decl="literal";strip_spaces=true]
+
+ [:expr="add_mul";decl="override";strip_spaces=false]
+ expected: [PASS, FAIL]
+
+ [:expr="add_mul";decl="override";strip_spaces=true]
+ expected: [PASS, FAIL]
+
+ [:expr="add_mul";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="add_mul";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="add_swizzle";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="add_swizzle";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="and_eq";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="comp_add";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_and";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="eq_or";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="mul_add";decl="const";strip_spaces=false]
+
+ [:expr="mul_add";decl="const";strip_spaces=true]
+
+ [:expr="mul_add";decl="literal";strip_spaces=false]
+
+ [:expr="mul_add";decl="literal";strip_spaces=true]
+
+ [:expr="mul_add";decl="override";strip_spaces=false]
+ expected: [PASS, FAIL]
+
+ [:expr="mul_add";decl="override";strip_spaces=true]
+ expected: [PASS, FAIL]
+
+ [:expr="mul_add";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="mul_add";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="mul_deref";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="mul_deref";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="const";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="const";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="literal";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="literal";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_add";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="const";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="const";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="literal";strip_spaces=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="literal";strip_spaces=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_and";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="const";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="const";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="literal";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="literal";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_mul";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="const";strip_spaces=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="const";strip_spaces=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="literal";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="literal";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="override";strip_spaces=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="override";strip_spaces=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_or";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_shl";decl="const";strip_spaces=false]
+
+ [:expr="neg_shl";decl="const";strip_spaces=true]
+
+ [:expr="neg_shl";decl="literal";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shl";decl="literal";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shl";decl="override";strip_spaces=false]
+ expected: [PASS, FAIL]
+
+ [:expr="neg_shl";decl="override";strip_spaces=true]
+ expected: [PASS, FAIL]
+
+ [:expr="neg_shl";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shl";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shr";decl="const";strip_spaces=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:expr="neg_shr";decl="const";strip_spaces=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:expr="neg_shr";decl="literal";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shr";decl="literal";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="neg_shr";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
+
+ [:expr="neg_shr";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, FAIL]
+
+ [:expr="neg_shr";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_shr";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="neg_xor";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_and";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="not_or";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="const";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="const";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="literal";strip_spaces=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="literal";strip_spaces=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="override";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="or_eq";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:expr="sub_neg";decl="const";strip_spaces=false]
+
+ [:expr="sub_neg";decl="const";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="sub_neg";decl="literal";strip_spaces=false]
+
+ [:expr="sub_neg";decl="literal";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="sub_neg";decl="override";strip_spaces=false]
+ expected: [PASS, FAIL]
+
+ [:expr="sub_neg";decl="override";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="sub_neg";decl="var%3Cprivate%3E";strip_spaces=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:expr="sub_neg";decl="var%3Cprivate%3E";strip_spaces=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini
new file mode 100644
index 0000000000..1ba3193bc0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini
@@ -0,0 +1,2560 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref:*]
+ expected: TIMEOUT
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_index:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_member:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_r";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=2;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="storage_rw";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="bool";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f16";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="f32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="i32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize="_undef_";scalarType="u32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="bool";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:inputSource="uniform";vectorize=2;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="deref_pointer"]
+
+ [:inputSource="uniform";vectorize=2;scalarType="u32";derefType="pointer"]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="bool";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:inputSource="uniform";vectorize=4;scalarType="u32";derefType="pointer"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini
index 8c66228b76..86035bf7b5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini
@@ -1,12 +1,26 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,af_arithmetic:negation:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
[:inputSource="const";vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:inputSource="const";vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_assignment/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_assignment/cts.https.html.ini
index 79709c9e6f..93f8cb809e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_assignment/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_assignment/cts.https.html.ini
@@ -14,4 +14,3 @@
[:inputSource="const"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html.ini
new file mode 100644
index 0000000000..b79f015ea8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,ai_arithmetic:negation:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html.ini
new file mode 100644
index 0000000000..805b716068
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html.ini
@@ -0,0 +1,22 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,ai_assignment:abstract:*]
+ [:inputSource="const"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,ai_assignment:i32:*]
+ [:inputSource="const"]
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,ai_assignment:u32:*]
+ [:inputSource="const"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html.ini
new file mode 100644
index 0000000000..0a4b8dc2c7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html.ini
@@ -0,0 +1,12 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,ai_complement:complement:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected: FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_conversion/cts.https.html.ini
index da19032230..e7e0d18fed 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_conversion/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_conversion/cts.https.html.ini
@@ -158,12 +158,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -176,12 +174,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -199,7 +195,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -226,12 +221,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -244,12 +237,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -267,7 +258,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -294,12 +284,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -312,12 +300,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -335,7 +321,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_logical/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_logical/cts.https.html.ini
index 8d6bcd276b..3b621a9106 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_logical/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/bool_logical/cts.https.html.ini
@@ -14,7 +14,6 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
@@ -31,7 +30,6 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
@@ -48,7 +46,6 @@
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html.ini
index b331198ee2..94ec2da91d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html.ini
@@ -1,3 +1,77 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_float:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_float_mat:*]
+ [:inputSource="const";cols=2;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=2;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=3;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";cols=4;rows=4]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_int:*]
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected:
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected:
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,unary,f16_conversion:bool:*]
[:inputSource="const";vectorize="_undef_"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_arithmetic/cts.https.html.ini
index f586720821..9e517f839a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_arithmetic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_arithmetic/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini
index 7aefe78f0d..78639457f3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini
@@ -14,62 +14,50 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,unary,f32_conversion:f16:*]
@@ -298,55 +286,35 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,unary,f32_conversion:f32_mat:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
[:inputSource="const";cols=2;rows=2]
expected: FAIL
@@ -375,112 +343,88 @@
expected: FAIL
[:inputSource="storage_r";cols=2;rows=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";cols=2;rows=4]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_r";cols=4;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=2;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=3;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=2]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=3]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="storage_rw";cols=4;rows=4]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:inputSource="uniform";cols=2;rows=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=2;rows=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=2;rows=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=3;rows=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=3;rows=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=3;rows=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";cols=4;rows=4]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,unary,f32_conversion:i32:*]
@@ -497,52 +441,30 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,execution,expression,unary,f32_conversion:u32:*]
@@ -559,49 +481,27 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=4]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize="_undef_"]
expected:
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=4]
- expected:
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_arithmetic/cts.https.html.ini
index 06e89d0396..ece6bb1d10 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_arithmetic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_arithmetic/cts.https.html.ini
@@ -14,12 +14,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -32,12 +30,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -55,7 +51,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_complement/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_complement/cts.https.html.ini
index 2090a0a1a8..bbe963575c 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_complement/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_complement/cts.https.html.ini
@@ -12,24 +12,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -40,8 +32,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini
index 14de1aedc3..7d4839c895 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini
@@ -1,3 +1,45 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,i32_conversion:abstract_float:*]
+ expected:
+ if os == "win" and debug: [OK, CRASH]
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,expression,unary,i32_conversion:abstract_int:*]
+ [:inputSource="const";vectorize="_undef_"]
+
+ [:inputSource="const";vectorize=2]
+
+ [:inputSource="const";vectorize=3]
+
+ [:inputSource="const";vectorize=4]
+
+
[cts.https.html?q=webgpu:shader,execution,expression,unary,i32_conversion:bool:*]
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -118,12 +160,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "linux": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "linux": FAIL
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -136,12 +176,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "linux": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "linux": FAIL
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -159,7 +197,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "linux": FAIL
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
@@ -184,24 +221,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -212,8 +241,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
@@ -234,24 +261,16 @@
expected: FAIL
[:inputSource="storage_r";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
[:inputSource="storage_r";vectorize=4]
[:inputSource="storage_rw";vectorize="_undef_"]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
@@ -262,8 +281,6 @@
if os == "mac": FAIL
[:inputSource="uniform";vectorize=2]
- expected:
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_complement/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_complement/cts.https.html.ini
index 0e9d969069..29521c6cf1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_complement/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_complement/cts.https.html.ini
@@ -16,12 +16,10 @@
[:inputSource="storage_r";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_r";vectorize=3]
expected:
@@ -34,12 +32,10 @@
[:inputSource="storage_rw";vectorize="_undef_"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="storage_rw";vectorize=3]
expected:
@@ -57,7 +53,6 @@
[:inputSource="uniform";vectorize=2]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
[:inputSource="uniform";vectorize=3]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini
index 7837a35096..45a9ab4695 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini
@@ -1,4 +1,30 @@
+[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_float:*]
+ expected:
+ if os == "mac": SKIP
+ [:inputSource="const";vectorize="_undef_"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:inputSource="const";vectorize=2]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:inputSource="const";vectorize=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:inputSource="const";vectorize=4]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_int:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
[:inputSource="const";vectorize=2]
@@ -33,6 +59,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:bool:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -71,6 +99,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:f16:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected:
if os == "mac": FAIL
@@ -137,6 +167,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:f32:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -205,6 +237,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:i32:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
@@ -255,6 +289,8 @@
[cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:u32:*]
+ expected:
+ if os == "mac": SKIP
[:inputSource="const";vectorize="_undef_"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html.ini
index 5a0cfb0379..b599ae8134 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html.ini
@@ -1,3 +1,67 @@
+[cts.https.html?q=webgpu:shader,execution,flow_control,call:arg_eval:*]
+ [:preventValueOptimizations=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:preventValueOptimizations=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,call:arg_eval_logical_and:*]
+ [:preventValueOptimizations=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:preventValueOptimizations=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,call:arg_eval_logical_or:*]
+ [:preventValueOptimizations=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:preventValueOptimizations=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,call:arg_eval_pointers:*]
+ [:preventValueOptimizations=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:preventValueOptimizations=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,flow_control,call:call_basic:*]
[:preventValueOptimizations=false]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html.ini
index ae1ea7933e..69d155e052 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html.ini
@@ -70,6 +70,22 @@
expected: FAIL
+[cts.https.html?q=webgpu:shader,execution,flow_control,for:for_logical_and_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,for:for_logical_or_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,flow_control,for:nested_for_break:*]
[:preventValueOptimizations=false]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html.ini
index 201e7cf730..758915241b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html.ini
@@ -16,6 +16,22 @@
if os == "mac": FAIL
+[cts.https.html?q=webgpu:shader,execution,flow_control,loop:loop_break_if_logical_and_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,loop:loop_break_if_logical_or_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,flow_control,loop:loop_continue:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html.ini
index be288fbcd2..b144997f6d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html.ini
@@ -52,6 +52,14 @@
if os == "mac": FAIL
+[cts.https.html?q=webgpu:shader,execution,flow_control,switch:switch_inside_loop_with_continue:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,flow_control,switch:switch_multiple_case:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html.ini
index 639a1db16f..cec1e3f799 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html.ini
@@ -52,6 +52,22 @@
if os == "mac": FAIL
+[cts.https.html?q=webgpu:shader,execution,flow_control,while:while_logical_and_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,flow_control,while:while_logical_or_condition:*]
+ [:preventValueOptimizations=false]
+ expected: FAIL
+
+ [:preventValueOptimizations=true]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,execution,flow_control,while:while_nested_break:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini
new file mode 100644
index 0000000000..7828be324a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini
@@ -0,0 +1,3886 @@
+[cts.https.html?q=webgpu:shader,execution,memory_layout:read_layout:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:case="array_stride_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="uniform"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="uniform"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="private"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="storage"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="uniform"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="struct_align32";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="struct_align32";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="struct_align32";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="struct_align32";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="struct_align32";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="struct_align_vec2h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="uniform"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="uniform"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="vec2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2f_align8";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec3f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_align8";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_size6";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="uniform"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3u_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec3u_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec3u_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec3u_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec3u_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec4f_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec4h_align8";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="uniform"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="storage"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,memory_layout:write_layout:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:case="array_stride_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_stride_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_align";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3h_stride";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_align";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="array_vec3u_stride";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_align4";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="atomic_size4";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="function"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="private"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3f_size";aspace="workgroup"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="function"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="private"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4f_size";aspace="workgroup"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat2x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="function"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="private"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3f_size";aspace="workgroup"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="function"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="private"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4f_size";aspace="workgroup"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat3x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="function"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="private"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_align8";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2f_size";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_align4";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x2h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="function"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="private"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="storage"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3f_size";aspace="workgroup"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x3h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="function"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="private"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_align16";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="function"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="private"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="storage"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4f_size";aspace="workgroup"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_align8";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="mat4x4h_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="size80";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_align32";aspace="function"]
+
+ [:case="struct_align32";aspace="private"]
+
+ [:case="struct_align32";aspace="storage"]
+
+ [:case="struct_align32";aspace="workgroup"]
+
+ [:case="struct_align_vec2h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec2i";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec3i";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4h";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_align_vec4i";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_double_align";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="function"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="private"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="storage"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_align";aspace="workgroup"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_inner_size_and_align";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_override_size";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="function"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="private"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="storage"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_roundup";aspace="workgroup"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:case="vec2f_align8";aspace="function"]
+
+ [:case="vec2f_align8";aspace="private"]
+
+ [:case="vec2f_align8";aspace="storage"]
+
+ [:case="vec2f_align8";aspace="workgroup"]
+
+ [:case="vec2h_align4";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2h_align4";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2u_align8";aspace="function"]
+
+ [:case="vec2u_align8";aspace="private"]
+
+ [:case="vec2u_align8";aspace="storage"]
+
+ [:case="vec2u_align8";aspace="workgroup"]
+
+ [:case="vec3f_align16";aspace="function"]
+
+ [:case="vec3f_align16";aspace="private"]
+
+ [:case="vec3f_align16";aspace="storage"]
+
+ [:case="vec3f_align16";aspace="workgroup"]
+
+ [:case="vec3h_align8";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_align8";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3h_size6";aspace="function"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3h_size6";aspace="workgroup"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="function"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="private"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="storage"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="vec3i_size12";aspace="workgroup"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="vec3u_align16";aspace="function"]
+
+ [:case="vec3u_align16";aspace="private"]
+
+ [:case="vec3u_align16";aspace="storage"]
+
+ [:case="vec3u_align16";aspace="workgroup"]
+
+ [:case="vec4f_align16";aspace="function"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="private"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="vec4f_align16";aspace="storage"]
+
+ [:case="vec4f_align16";aspace="workgroup"]
+
+ [:case="vec4h_align8";aspace="function"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="private"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="storage"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4h_align8";aspace="workgroup"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4u_align16";aspace="function"]
+
+ [:case="vec4u_align16";aspace="private"]
+
+ [:case="vec4u_align16";aspace="storage"]
+
+ [:case="vec4u_align16";aspace="workgroup"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/atomicity/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/atomicity/cts.https.html.ini
index 6f0fa75bd1..0971f0d35d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/atomicity/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/atomicity/cts.https.html.ini
@@ -2,18 +2,22 @@
expected:
if os == "win" and debug: [OK, TIMEOUT]
if os == "win" and not debug: TIMEOUT
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
if os == "win" and debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/barrier/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/barrier/cts.https.html.ini
index 631d0c4c91..7342ba4ebd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/barrier/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/barrier/cts.https.html.ini
@@ -1,18 +1,42 @@
[cts.https.html?q=webgpu:shader,execution,memory_model,barrier:workgroup_barrier_load_store:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:accessValueType="f16";memType="non_atomic_storage";accessPair="rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="rw";normalBarrier=false]
+
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="rw";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="f16";memType="non_atomic_workgroup";accessPair="rw"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="rw";normalBarrier=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "mac": FAIL
+
[:accessValueType="u32";memType="non_atomic_storage";accessPair="rw"]
expected:
if os == "win" and debug: FAIL
@@ -20,6 +44,26 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="rw";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="rw";normalBarrier=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="u32";memType="non_atomic_workgroup";accessPair="rw"]
expected:
if os == "win" and debug: FAIL
@@ -27,22 +71,56 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="rw";normalBarrier=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="rw";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:shader,execution,memory_model,barrier:workgroup_barrier_store_load:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:accessValueType="f16";memType="non_atomic_storage";accessPair="wr"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="wr";normalBarrier=false]
+
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="wr";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="f16";memType="non_atomic_workgroup";accessPair="wr"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="wr";normalBarrier=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:accessValueType="u32";memType="non_atomic_storage";accessPair="wr"]
expected:
if os == "win" and debug: FAIL
@@ -50,6 +128,30 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="wr";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="wr";normalBarrier=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="u32";memType="non_atomic_workgroup";accessPair="wr"]
expected:
if os == "win" and debug: FAIL
@@ -57,22 +159,58 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="wr";normalBarrier=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="wr";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:shader,execution,memory_model,barrier:workgroup_barrier_store_store:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
[:accessValueType="f16";memType="non_atomic_storage";accessPair="ww"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="ww";normalBarrier=false]
+
+ [:accessValueType="f16";memType="non_atomic_storage";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "mac": FAIL
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="ww";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_texture";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="f16";memType="non_atomic_workgroup";accessPair="ww"]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="ww";normalBarrier=false]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="f16";memType="non_atomic_workgroup";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "mac": FAIL
+
[:accessValueType="u32";memType="non_atomic_storage";accessPair="ww"]
expected:
if os == "win" and debug: FAIL
@@ -80,9 +218,39 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="ww";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_storage";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="ww";normalBarrier=false]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_texture";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:accessValueType="u32";memType="non_atomic_workgroup";accessPair="ww"]
expected:
if os == "win" and debug: FAIL
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="ww";normalBarrier=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:accessValueType="u32";memType="non_atomic_workgroup";accessPair="ww";normalBarrier=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/coherence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/coherence/cts.https.html.ini
index 1fbf76dc31..0e0998b685 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/coherence/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/coherence/cts.https.html.ini
@@ -1,197 +1,233 @@
[cts.https.html?q=webgpu:shader,execution,memory_model,coherence:corr:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac": TIMEOUT
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="inter_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,coherence:corw1:*]
expected:
if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,coherence:corw2:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac": TIMEOUT
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="inter_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,coherence:cowr:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac": TIMEOUT
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="inter_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,coherence:coww:*]
expected:
if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
if os == "linux" and not debug: TIMEOUT
+ if os == "mac": TIMEOUT
[:memType="atomic_storage";testType="inter_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="inter_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_storage";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:memType="atomic_workgroup";testType="intra_workgroup";extraFlags="rmw_variant"]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html.ini
new file mode 100644
index 0000000000..631f5a3a9e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html.ini
@@ -0,0 +1,24 @@
+[cts.https.html?q=webgpu:shader,execution,memory_model,texture_intra_invocation_coherence:texture_intra_invocation_coherence:*]
+ [:format="r32float";dim="1d"]
+
+ [:format="r32float";dim="2d"]
+
+ [:format="r32float";dim="2d-array"]
+
+ [:format="r32float";dim="3d"]
+
+ [:format="r32sint";dim="1d"]
+
+ [:format="r32sint";dim="2d"]
+
+ [:format="r32sint";dim="2d-array"]
+
+ [:format="r32sint";dim="3d"]
+
+ [:format="r32uint";dim="1d"]
+
+ [:format="r32uint";dim="2d"]
+
+ [:format="r32uint";dim="2d-array"]
+
+ [:format="r32uint";dim="3d"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/weak/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/weak/cts.https.html.ini
index 1efeebcb56..0838884013 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/weak/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_model/weak/cts.https.html.ini
@@ -1,82 +1,100 @@
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:2_plus_2_write:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:load_buffer:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:message_passing:*]
- expected:
- if os == "win": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:read:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:store:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,execution,memory_model,weak:store_buffer:*]
- expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:memType="atomic_storage"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:memType="atomic_workgroup"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini
index af45e5187a..4332c246f8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini
@@ -1,866 +1,3447 @@
[cts.https.html?q=webgpu:shader,execution,robust_access:linear_memory:*]
expected:
if os == "win": [OK, TIMEOUT, ERROR]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: TIMEOUT
+ if os == "mac": [OK, SKIP]
[:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="function";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="private";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";storageMode="read_write";access="write";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="read";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="function-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=true]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="matrix";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux": FAIL
if os == "mac": FAIL
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+
+ [:addressSpace="workgroup";access="write";containerType="vector";shadowingMode="none";isAtomic=false;baseType="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini
index d8fc0783fa..d554234820 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini
@@ -1,10 +1,16 @@
[cts.https.html?q=webgpu:shader,execution,robust_access_vertex:vertex_buffer_access:*]
expected:
- if os == "win" and debug: TIMEOUT
- if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
- if os == "linux" and not debug: [TIMEOUT, CRASH]
- if os == "mac": TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -53,6 +59,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -101,6 +114,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -149,6 +169,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -197,6 +224,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -245,6 +279,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -293,6 +334,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -341,6 +389,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -389,6 +444,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -437,6 +500,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -485,6 +556,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -533,6 +612,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -581,6 +668,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -629,6 +723,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -677,6 +778,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -725,6 +833,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -773,6 +888,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -821,6 +943,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -869,6 +998,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -917,6 +1053,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -965,6 +1108,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1013,6 +1159,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1061,6 +1210,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1109,6 +1261,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1157,6 +1312,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1205,6 +1363,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1255,6 +1416,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1309,6 +1473,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1363,6 +1530,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1417,6 +1587,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1471,6 +1644,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1525,6 +1701,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1579,6 +1758,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1614,6 +1800,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1649,6 +1842,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1684,6 +1884,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1719,6 +1926,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1754,6 +1968,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1789,6 +2010,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1824,6 +2052,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1859,6 +2095,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1894,6 +2138,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1929,6 +2181,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1964,6 +2224,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -1999,6 +2267,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2034,6 +2310,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2069,6 +2353,14 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2104,6 +2396,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2139,6 +2438,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2174,6 +2480,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2209,6 +2522,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2244,6 +2564,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2279,6 +2606,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2314,6 +2648,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2349,6 +2690,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2384,6 +2732,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2419,6 +2774,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2458,6 +2820,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2498,6 +2867,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2538,6 +2914,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2578,6 +2961,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2618,6 +3008,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2658,6 +3055,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2698,6 +3102,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2738,6 +3149,9 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2780,6 +3194,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2822,6 +3239,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2864,6 +3284,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2906,6 +3329,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2948,6 +3374,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -2990,6 +3419,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3032,6 +3464,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3074,6 +3509,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3116,6 +3554,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3158,6 +3599,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3200,6 +3644,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3242,6 +3689,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3284,6 +3734,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3326,6 +3779,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3368,6 +3824,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3410,6 +3869,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3452,6 +3914,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3494,6 +3959,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3536,6 +4004,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3578,6 +4049,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3620,6 +4094,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3662,6 +4139,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3704,6 +4184,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3746,6 +4229,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3788,6 +4274,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3830,6 +4319,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3872,6 +4364,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3914,6 +4409,9 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3956,6 +4454,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -3998,6 +4503,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -4040,6 +4552,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: FAIL
@@ -4082,6 +4601,13 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -4124,6 +4650,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -4166,6 +4699,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4202,6 +4742,13 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4238,6 +4785,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4274,6 +4828,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4310,6 +4871,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4346,6 +4914,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4382,6 +4957,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4418,6 +5000,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4454,6 +5043,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4490,6 +5086,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4526,6 +5129,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4562,6 +5168,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4598,6 +5207,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4634,6 +5246,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4670,6 +5285,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4706,6 +5324,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4742,6 +5363,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4778,6 +5402,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4814,6 +5441,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4850,6 +5480,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4886,6 +5519,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4922,6 +5558,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4958,6 +5597,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -4994,6 +5636,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5030,6 +5675,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5066,6 +5714,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5102,6 +5753,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5138,6 +5792,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5174,6 +5831,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5210,6 +5870,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5246,6 +5909,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5286,6 +5952,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5328,6 +5997,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5370,6 +6042,9 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5407,6 +6082,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5443,6 +6121,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5479,6 +6160,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5515,6 +6199,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5551,6 +6238,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5587,6 +6277,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5623,6 +6316,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5659,6 +6355,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5695,6 +6394,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5731,6 +6433,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5767,6 +6472,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5803,6 +6511,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5839,6 +6550,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5875,6 +6589,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5911,6 +6628,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5947,6 +6667,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -5983,6 +6706,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6019,6 +6745,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
@@ -6060,6 +6789,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6102,6 +6834,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6144,6 +6879,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6186,6 +6924,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6228,6 +6969,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6270,6 +7014,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6312,6 +7059,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6354,6 +7104,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6396,6 +7149,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6438,6 +7194,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=false;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
@@ -6480,6 +7239,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6522,6 +7284,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6564,6 +7329,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6606,6 +7374,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6648,6 +7419,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6690,6 +7464,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6732,6 +7509,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6774,6 +7554,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6816,6 +7599,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6858,6 +7644,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6900,6 +7689,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6942,6 +7734,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -6984,6 +7779,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7026,6 +7824,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7068,6 +7869,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7110,6 +7914,9 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7152,6 +7959,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7194,6 +8008,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7236,6 +8057,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7278,6 +8106,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7320,6 +8155,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7362,6 +8204,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7404,6 +8253,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7446,6 +8302,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7488,6 +8351,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7530,6 +8400,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7572,6 +8449,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7614,6 +8498,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7656,6 +8547,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7698,6 +8596,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7740,6 +8645,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7782,6 +8694,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="baseVertex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -7824,6 +8743,14 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -7866,6 +8793,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -7908,6 +8843,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -7950,6 +8893,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -7992,6 +8943,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8034,6 +8993,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8076,6 +9043,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8118,6 +9093,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8160,6 +9143,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8202,6 +9193,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8244,6 +9243,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8286,6 +9293,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8328,6 +9343,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8370,6 +9393,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8412,6 +9443,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8454,6 +9493,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8496,6 +9543,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8538,6 +9593,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8580,6 +9643,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8622,6 +9693,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8664,6 +9743,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8706,6 +9793,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8748,6 +9843,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8790,6 +9893,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8832,6 +9943,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8874,6 +9993,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8916,6 +10043,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -8958,6 +10093,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9000,6 +10143,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9042,6 +10193,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9084,6 +10243,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9126,6 +10293,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="firstIndex";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9168,6 +10343,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9204,6 +10386,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9240,6 +10429,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9276,6 +10472,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9312,6 +10515,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9348,6 +10558,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9384,6 +10601,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9420,6 +10644,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9456,6 +10687,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9492,6 +10730,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -9532,6 +10777,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9574,6 +10826,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9616,6 +10875,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9658,6 +10924,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9700,6 +10973,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9742,6 +11022,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9784,6 +11071,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9826,6 +11120,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9868,6 +11169,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9910,6 +11218,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9952,6 +11267,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -9994,6 +11316,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10036,6 +11365,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10078,6 +11414,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10120,6 +11463,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10162,6 +11512,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10204,6 +11561,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10246,6 +11610,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10288,6 +11659,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10330,6 +11708,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10372,6 +11757,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10414,6 +11806,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="indexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10456,6 +11855,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10491,6 +11897,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10526,6 +11939,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10561,6 +11981,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10596,6 +12023,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10631,6 +12065,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10666,6 +12107,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10701,6 +12149,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10736,6 +12191,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10771,6 +12233,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10806,6 +12275,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10841,6 +12317,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10876,6 +12359,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10911,6 +12402,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10946,6 +12445,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -10981,6 +12488,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11016,6 +12531,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11051,6 +12574,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11086,6 +12617,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11121,6 +12660,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11156,6 +12703,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11191,6 +12746,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11226,6 +12789,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11261,6 +12832,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11296,6 +12875,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11331,6 +12918,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11366,6 +12961,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11401,6 +13004,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11436,6 +13047,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11471,6 +13090,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11506,6 +13133,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11541,6 +13176,14 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="instanceCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
@@ -11576,6 +13219,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11618,6 +13268,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11660,6 +13317,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11702,6 +13366,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11744,6 +13415,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11786,6 +13464,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11828,6 +13513,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11870,6 +13562,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11912,6 +13611,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11954,6 +13660,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -11996,6 +13709,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12038,6 +13758,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12080,6 +13807,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12122,6 +13856,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12164,6 +13905,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12206,6 +13954,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12248,6 +14003,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12290,6 +14052,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12332,6 +14101,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12374,6 +14150,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12416,6 +14199,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12458,6 +14248,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12500,6 +14297,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12542,6 +14346,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x3";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12584,6 +14395,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12626,6 +14444,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12668,6 +14493,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12710,6 +14542,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12752,6 +14591,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12790,6 +14636,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12826,6 +14679,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
@@ -12862,6 +14722,13 @@
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:indexed=true;indirect=true;drawCallTestParameter="vertexCountInIndexBuffer";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0]
expected:
if os == "win": [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini
index c6d2049d62..3938214a2b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini
@@ -5,16 +5,19 @@
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:method="mixed";dispatch="direct";groupSize={"x":1,"y":1,"z":1};numGroups={"x":8,"y":4,"z":2}]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL]
[:method="mixed";dispatch="direct";groupSize={"x":3,"y":7,"z":5};numGroups={"x":13,"y":9,"z":11}]
expected:
if os == "win" and debug: [PASS, FAIL]
if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
[:method="mixed";dispatch="direct";groupSize={"x":8,"y":4,"z":2};numGroups={"x":1,"y":1,"z":1}]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini
new file mode 100644
index 0000000000..717ace54d1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini
@@ -0,0 +1,704 @@
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,front_facing:*]
+ expected:
+ if os == "win": [OK, CRASH]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [TIMEOUT, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="cw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="cw";interpolation={"type":"perspective","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage,centroid:*]
+ expected:
+ if os == "win": [OK, CRASH]
+ if os == "linux" and debug: [OK, CRASH]
+ if os == "mac": [OK, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage:*]
+ expected:
+ if os == "win": [OK, CRASH]
+ if os == "linux" and not debug: [OK, CRASH]
+ if os == "mac": [OK, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,position:*]
+ expected:
+ if os == "win" and debug: [OK, CRASH]
+ if os == "linux": [OK, CRASH]
+ if os == "mac": [OK, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_index:*]
+ expected: [OK, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_mask:*]
+ expected:
+ if os == "win": [OK, CRASH]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": [OK, CRASH]
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected: FAIL
+
+ [:nearFar=[0,1\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=1;interpolation={"type":"perspective","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"flat"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"linear","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"center"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"centroid"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:nearFar=[0.25,0.75\];sampleCount=4;interpolation={"type":"perspective","sampling":"sample"}]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html.ini
new file mode 100644
index 0000000000..1d4f1478e5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html.ini
@@ -0,0 +1,13 @@
+[cts.https.html?q=webgpu:shader,execution,shader_io,user_io:passthrough:*]
+ [:type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="f32"]
+ expected: FAIL
+
+ [:type="i32"]
+ expected: FAIL
+
+ [:type="u32"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini
new file mode 100644
index 0000000000..134062494e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini
@@ -0,0 +1,2507 @@
+[cts.https.html?q=webgpu:shader,execution,shader_io,workgroup_size:workgroup_size:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "linux" and not debug: TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:wgx=11;wgy=16;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=16;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=16;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=16;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=16;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=16;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=1;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=1]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=11]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=128]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=16]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=256]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=256;wgz=3]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=3;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=4;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=51;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=256]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=64;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=11;wgy=8;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=16;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=1;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=256;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=3;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=4;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=51;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=64;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=128;wgy=8;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=16;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=128]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=256]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=1;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=256;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=11]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=3;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=4;wgz=3]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=51;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=64;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=16;wgy=8;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=16;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=16;wgz=11]
+ expected: FAIL
+
+ [:wgx=1;wgy=16;wgz=128]
+
+ [:wgx=1;wgy=16;wgz=16]
+ expected: FAIL
+
+ [:wgx=1;wgy=16;wgz=256]
+
+ [:wgx=1;wgy=16;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=1;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=1;wgz=11]
+ expected: FAIL
+
+ [:wgx=1;wgy=1;wgz=128]
+
+ [:wgx=1;wgy=1;wgz=16]
+ expected: FAIL
+
+ [:wgx=1;wgy=1;wgz=256]
+
+ [:wgx=1;wgy=1;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=256;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=256;wgz=11]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=256;wgz=128]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=256;wgz=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=256;wgz=256]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=256;wgz=3]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=1;wgy=3;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=3;wgz=11]
+ expected: FAIL
+
+ [:wgx=1;wgy=3;wgz=128]
+
+ [:wgx=1;wgy=3;wgz=16]
+ expected: FAIL
+
+ [:wgx=1;wgy=3;wgz=256]
+
+ [:wgx=1;wgy=3;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=4;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=4;wgz=11]
+ expected: FAIL
+
+ [:wgx=1;wgy=4;wgz=128]
+
+ [:wgx=1;wgy=4;wgz=16]
+ expected: FAIL
+
+ [:wgx=1;wgy=4;wgz=256]
+
+ [:wgx=1;wgy=4;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=51;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=51;wgz=11]
+
+ [:wgx=1;wgy=51;wgz=128]
+
+ [:wgx=1;wgy=51;wgz=16]
+
+ [:wgx=1;wgy=51;wgz=256]
+
+ [:wgx=1;wgy=51;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=64;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=64;wgz=11]
+
+ [:wgx=1;wgy=64;wgz=128]
+
+ [:wgx=1;wgy=64;wgz=16]
+
+ [:wgx=1;wgy=64;wgz=256]
+
+ [:wgx=1;wgy=64;wgz=3]
+ expected: FAIL
+
+ [:wgx=1;wgy=8;wgz=1]
+ expected: FAIL
+
+ [:wgx=1;wgy=8;wgz=11]
+ expected: FAIL
+
+ [:wgx=1;wgy=8;wgz=128]
+
+ [:wgx=1;wgy=8;wgz=16]
+ expected: FAIL
+
+ [:wgx=1;wgy=8;wgz=256]
+
+ [:wgx=1;wgy=8;wgz=3]
+ expected: FAIL
+
+ [:wgx=256;wgy=16;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=16;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=16;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=16;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=16;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=16;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=1;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=256;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=3;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=4;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=51;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=64;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=256;wgy=8;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=11]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=128]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=16]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=256]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=16;wgz=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=11]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=128]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=16]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=256]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=1;wgz=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=1]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=11]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=128]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=16]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=256]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=256;wgz=3]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=11]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=128]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=16]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=256]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=3;wgz=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=11]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=128]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=16]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=256]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=4;wgz=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=11]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=128]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=16]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=256]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=51;wgz=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=11]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=128]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=16]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=256]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=64;wgz=3]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=1]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=11]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=128]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=16]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=256]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:wgx=3;wgy=8;wgz=3]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=16;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=1;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=256;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=3;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=4;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=51;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=64;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=4;wgy=8;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=16;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=1;wgz=3]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=256;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=3;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=4;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=51;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=64;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=51;wgy=8;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=16;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=1;wgz=3]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=256;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=3;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=1]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=4;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=51;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=64;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=1]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=11]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=128]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=16]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=256]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=64;wgy=8;wgz=3]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=16;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=11]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=16]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=1;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=256;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=3;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=4;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=51;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=1]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=64;wgz=3]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=1]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=11]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=128]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=16]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=256]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:wgx=8;wgy=8;wgz=3]
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/stage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/stage/cts.https.html.ini
new file mode 100644
index 0000000000..ba3bafe7cb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/stage/cts.https.html.ini
@@ -0,0 +1,9 @@
+[cts.https.html?q=webgpu:shader,execution,stage:basic_compute:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,execution,stage:basic_render:*]
+ [:]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html.ini
new file mode 100644
index 0000000000..8f72823c69
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html.ini
@@ -0,0 +1,9 @@
+[cts.https.html?q=webgpu:shader,execution,statement,compound:decl:*]
+ [:case="gone"]
+ expected: FAIL
+
+ [:case="shadowed"]
+ expected: FAIL
+
+ [:case="uses"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html.ini
new file mode 100644
index 0000000000..e9a0d019ec
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html.ini
@@ -0,0 +1,28 @@
+[cts.https.html?q=webgpu:shader,execution,statement,discard:all:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,statement,discard:derivatives:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,statement,discard:function_call:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,statement,discard:loop:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,statement,discard:three_quarters:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,execution,statement,discard:uniform_read_loop:*]
+ [:]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini
index b403e50430..b1fc10b80b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini
@@ -10,7 +10,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=1]
@@ -18,7 +18,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=10]
@@ -26,6 +26,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=11]
@@ -33,6 +34,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=12]
@@ -40,6 +42,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=13]
@@ -47,6 +50,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=14]
@@ -54,6 +58,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=15]
@@ -61,7 +66,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=16]
@@ -69,7 +74,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=17]
@@ -77,6 +82,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=18]
@@ -84,6 +90,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=19]
@@ -91,6 +98,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=2]
@@ -98,6 +106,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=20]
@@ -105,6 +114,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=21]
@@ -112,6 +122,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=22]
@@ -183,6 +194,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=4]
@@ -190,6 +202,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=5]
@@ -197,6 +210,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=6]
@@ -204,6 +218,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=7]
@@ -211,6 +226,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=8]
@@ -218,6 +234,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="function";workgroupSize=[1,1,1\];batch__=9]
@@ -225,6 +242,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=0]
@@ -232,7 +250,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=1]
@@ -240,7 +258,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=10]
@@ -248,6 +266,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=11]
@@ -255,6 +274,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=12]
@@ -262,6 +282,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=13]
@@ -269,6 +290,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=14]
@@ -276,6 +298,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=15]
@@ -283,7 +306,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=16]
@@ -291,7 +314,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=17]
@@ -299,6 +322,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=18]
@@ -306,6 +330,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=19]
@@ -313,6 +338,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=2]
@@ -320,6 +346,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=20]
@@ -327,6 +354,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=21]
@@ -334,6 +362,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=22]
@@ -341,6 +370,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=23]
@@ -348,6 +378,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=24]
@@ -355,6 +386,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=25]
@@ -362,6 +394,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=26]
@@ -369,6 +402,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=27]
@@ -376,6 +410,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=28]
@@ -383,6 +418,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=29]
@@ -390,6 +426,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=3]
@@ -397,6 +434,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=4]
@@ -404,6 +442,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=5]
@@ -411,6 +450,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=6]
@@ -418,6 +458,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=7]
@@ -425,6 +466,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=8]
@@ -432,6 +474,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="private";workgroupSize=[1,1,1\];batch__=9]
@@ -439,6 +482,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=0]
@@ -449,320 +493,317 @@
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=10]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=11]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=12]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=13]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=14]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=15]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=16]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=17]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=18]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=19]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=2]
- expected: FAIL
-
- [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=20]
expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
+ [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=20]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=21]
- expected:
- if os == "win": [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=22]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=23]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=24]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=25]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=26]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=27]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=28]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=29]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=30]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=31]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=4]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=5]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=6]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=7]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=8]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=9]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=1]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=10]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=11]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=12]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=13]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=14]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=15]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=16]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=17]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=18]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=19]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=2]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=20]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=21]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=22]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=23]
expected:
@@ -770,8 +811,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=24]
expected:
@@ -779,8 +819,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=25]
expected:
@@ -788,8 +827,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=26]
expected:
@@ -797,8 +835,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=27]
expected:
@@ -806,8 +843,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=28]
expected:
@@ -815,8 +851,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=29]
expected:
@@ -824,17 +859,15 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=3]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=30]
expected:
@@ -842,8 +875,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=31]
expected:
@@ -851,69 +883,62 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=4]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=5]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=6]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=7]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=8]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,48\];batch__=9]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=1]
@@ -921,7 +946,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=10]
@@ -929,7 +954,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=11]
@@ -937,7 +962,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=12]
@@ -945,7 +970,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=13]
@@ -953,7 +978,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=14]
@@ -961,7 +986,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=15]
@@ -969,7 +994,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=16]
@@ -977,7 +1002,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=17]
@@ -985,7 +1010,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=18]
@@ -993,7 +1018,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=19]
@@ -1001,7 +1026,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=2]
@@ -1009,7 +1034,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=20]
@@ -1017,7 +1042,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=21]
@@ -1025,7 +1050,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=22]
@@ -1033,7 +1058,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=23]
@@ -1041,7 +1066,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=24]
@@ -1049,7 +1074,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=25]
@@ -1057,7 +1082,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=26]
@@ -1065,7 +1090,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=27]
@@ -1073,7 +1098,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=28]
@@ -1081,7 +1106,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=29]
@@ -1089,7 +1114,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=3]
@@ -1097,7 +1122,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=30]
@@ -1105,7 +1130,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=31]
@@ -1113,7 +1138,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=4]
@@ -1121,7 +1146,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=5]
@@ -1129,7 +1154,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=6]
@@ -1137,7 +1162,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=7]
@@ -1145,7 +1170,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=8]
@@ -1153,7 +1178,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,1,63\];batch__=9]
@@ -1161,251 +1186,232 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=1]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=10]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=11]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=12]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=13]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=14]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=15]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=16]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=17]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=18]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=19]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=2]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=20]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=21]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=22]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=23]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=24]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=25]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=26]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=27]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=28]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=29]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=3]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=30]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=31]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=4]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=5]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=6]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=7]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=8]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=9]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=0]
expected:
@@ -1413,8 +1419,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=1]
expected:
@@ -1422,8 +1427,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=10]
expected:
@@ -1431,8 +1435,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=11]
expected:
@@ -1440,8 +1443,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=12]
expected:
@@ -1449,8 +1451,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=13]
expected:
@@ -1458,8 +1459,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=14]
expected:
@@ -1467,8 +1467,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=15]
expected:
@@ -1476,8 +1475,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=16]
expected:
@@ -1485,8 +1483,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=17]
expected:
@@ -1494,8 +1491,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=18]
expected:
@@ -1503,8 +1499,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=19]
expected:
@@ -1512,8 +1507,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=2]
expected:
@@ -1521,8 +1515,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=20]
expected:
@@ -1530,8 +1523,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=21]
expected:
@@ -1539,8 +1531,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=22]
expected:
@@ -1548,8 +1539,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=23]
expected:
@@ -1557,8 +1547,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=24]
expected:
@@ -1566,8 +1555,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=25]
expected:
@@ -1575,8 +1563,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=26]
expected:
@@ -1584,8 +1571,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=27]
expected:
@@ -1593,8 +1579,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=28]
expected:
@@ -1602,8 +1587,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=29]
expected:
@@ -1611,8 +1595,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=3]
expected:
@@ -1620,8 +1603,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=30]
expected:
@@ -1629,8 +1611,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=31]
expected:
@@ -1638,8 +1619,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=4]
expected:
@@ -1647,8 +1627,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=5]
expected:
@@ -1656,8 +1635,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=6]
expected:
@@ -1665,8 +1643,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=7]
expected:
@@ -1674,8 +1651,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=8]
expected:
@@ -1683,8 +1659,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[1,47,1\];batch__=9]
expected:
@@ -1692,8 +1667,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=0]
expected:
@@ -1701,8 +1675,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=1]
expected:
@@ -1710,87 +1683,97 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=10]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=11]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=12]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=13]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=14]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=15]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=16]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=17]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=18]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=19]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=2]
@@ -1799,7 +1782,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=20]
@@ -1807,7 +1790,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=21]
@@ -1815,7 +1798,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=22]
@@ -1823,7 +1806,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=23]
@@ -1831,7 +1814,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=24]
@@ -1839,7 +1822,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=25]
@@ -1847,7 +1830,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=26]
@@ -1855,7 +1838,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=27]
@@ -1863,7 +1846,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=28]
@@ -1871,7 +1854,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=29]
@@ -1879,7 +1862,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=3]
@@ -1888,7 +1871,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=30]
@@ -1896,7 +1879,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=31]
@@ -1904,7 +1887,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=4]
@@ -1913,7 +1896,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=5]
@@ -1922,7 +1905,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=6]
@@ -1931,7 +1914,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=7]
@@ -1940,7 +1923,7 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=8]
@@ -1949,279 +1932,268 @@
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[33,1,1\];batch__=9]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=1]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=10]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=11]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=12]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=13]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=14]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=15]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=16]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=17]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=18]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=19]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=2]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=20]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=21]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=22]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=23]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=24]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=25]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=26]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=27]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=28]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=29]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=3]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=30]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=31]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=4]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=5]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=6]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=7]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=8]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[64,1,1\];batch__=9]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=0]
expected:
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=1]
@@ -2229,7 +2201,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=10]
@@ -2237,7 +2209,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=11]
@@ -2245,7 +2217,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=12]
@@ -2253,7 +2225,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=13]
@@ -2261,7 +2233,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=14]
@@ -2269,7 +2241,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=15]
@@ -2277,7 +2249,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=16]
@@ -2285,7 +2257,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=17]
@@ -2293,7 +2265,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=18]
@@ -2301,7 +2273,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=19]
@@ -2309,7 +2281,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=2]
@@ -2317,7 +2289,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=20]
@@ -2325,7 +2297,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=21]
@@ -2333,7 +2305,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=22]
@@ -2341,7 +2313,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=23]
@@ -2349,7 +2321,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=24]
@@ -2357,7 +2329,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=25]
@@ -2365,7 +2337,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=26]
@@ -2373,7 +2345,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=27]
@@ -2381,7 +2353,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=28]
@@ -2389,7 +2361,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=29]
@@ -2397,7 +2369,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=3]
@@ -2405,7 +2377,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=30]
@@ -2413,7 +2385,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=31]
@@ -2421,7 +2393,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=4]
@@ -2429,7 +2401,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=5]
@@ -2437,7 +2409,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=6]
@@ -2445,7 +2417,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=7]
@@ -2453,7 +2425,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=8]
@@ -2461,7 +2433,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[7,7,3\];batch__=9]
@@ -2469,7 +2441,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=0]
@@ -2477,7 +2449,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=1]
@@ -2485,7 +2457,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=10]
@@ -2493,7 +2465,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=11]
@@ -2501,7 +2473,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=12]
@@ -2509,7 +2481,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=13]
@@ -2517,7 +2489,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=14]
@@ -2525,7 +2497,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=15]
@@ -2533,7 +2505,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=16]
@@ -2541,7 +2513,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=17]
@@ -2549,7 +2521,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=18]
@@ -2557,7 +2529,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=19]
@@ -2565,7 +2537,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=2]
@@ -2573,7 +2545,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=20]
@@ -2581,7 +2553,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=21]
@@ -2589,7 +2561,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=22]
@@ -2597,7 +2569,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=23]
@@ -2605,7 +2577,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=24]
@@ -2613,7 +2585,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=25]
@@ -2621,7 +2593,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=26]
@@ -2629,7 +2601,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=27]
@@ -2637,7 +2609,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=28]
@@ -2645,7 +2617,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=29]
@@ -2653,7 +2625,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=3]
@@ -2661,7 +2633,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=30]
@@ -2669,7 +2641,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=31]
@@ -2677,7 +2649,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=4]
@@ -2685,7 +2657,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=5]
@@ -2693,7 +2665,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=6]
@@ -2701,7 +2673,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=7]
@@ -2709,7 +2681,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=8]
@@ -2717,7 +2689,7 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:addressSpace="workgroup";workgroupSize=[8,8,2\];batch__=9]
@@ -2725,5 +2697,5 @@
if os == "win" and debug: [TIMEOUT, NOTRUN]
if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/const_assert/const_assert/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/const_assert/const_assert/cts.https.html.ini
index 36ace6c717..879dbf386d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/const_assert/const_assert/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/const_assert/const_assert/cts.https.html.ini
@@ -73,10 +73,12 @@
[:case="variable_true";scope="module"]
+ [:scope="function"]
+
+ [:scope="module"]
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:constant_expression_logical_and_assert:*]
- expected:
- if not debug: TIMEOUT
[:lhs="any_false";rhs="any_false";scope="function"]
[:lhs="any_false";rhs="any_false";scope="module"]
@@ -2194,10 +2196,12 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:scope="function"]
+
+ [:scope="module"]
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:constant_expression_logical_and_no_assert:*]
- expected:
- if not debug: TIMEOUT
[:lhs="any_false";rhs="any_false";scope="function"]
expected:
if os == "win" and debug: FAIL
@@ -7004,10 +7008,16 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:scope="function"]
+ expected: FAIL
+
+ [:scope="module"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:constant_expression_logical_or_assert:*]
expected:
- if not debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:lhs="any_false";rhs="any_false";scope="function"]
[:lhs="any_false";rhs="any_false";scope="module"]
@@ -9087,10 +9097,16 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:scope="function"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:scope="module"]
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:constant_expression_logical_or_no_assert:*]
expected:
- if not debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:lhs="any_false";rhs="any_false";scope="function"]
expected:
if os == "win" and debug: FAIL
@@ -13896,6 +13912,16 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:scope="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:scope="module"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:constant_expression_no_assert:*]
expected:
@@ -14152,6 +14178,12 @@
if os == "linux": FAIL
if os == "mac": FAIL
+ [:scope="function"]
+ expected: FAIL
+
+ [:scope="module"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:shader,validation,const_assert,const_assert:evaluation_stage:*]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html.ini
new file mode 100644
index 0000000000..bdd0796c9e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html.ini
@@ -0,0 +1,28 @@
+[cts.https.html?q=webgpu:shader,validation,decl,compound_statement:decl_conflict:*]
+ [:case="a"]
+
+ [:case="bc"]
+
+ [:case="d"]
+
+ [:case="e"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,compound_statement:decl_use:*]
+ [:case="a"]
+
+ [:case="b"]
+
+ [:case="c_no"]
+
+ [:case="c_yes"]
+ expected: FAIL
+
+ [:case="d_no"]
+
+ [:case="d_yes"]
+ expected: FAIL
+
+ [:case="e"]
+
+ [:case="self"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html.ini
index 58c3f3a6c2..719f8513fa 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html.ini
@@ -1,3 +1,28 @@
+[cts.https.html?q=webgpu:shader,validation,decl,const:function_scope:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,const:initializer:*]
+ [:case="abs_float_init_convert"]
+
+ [:case="abs_int_init_convert"]
+
+ [:case="init_const_expr"]
+
+ [:case="init_matching_type"]
+
+ [:case="init_mismatch_type"]
+
+ [:case="init_override_expr"]
+
+ [:case="init_runtime_expr"]
+
+ [:case="no_init"]
+
+ [:case="no_type"]
+
+
[cts.https.html?q=webgpu:shader,validation,decl,const:no_direct_recursion:*]
[:target="a"]
expected:
@@ -46,3 +71,47 @@
[:target="b";attribute="location"]
[:target="b";attribute="size"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,const:type:*]
+ [:case="abstract_float"]
+ expected: FAIL
+
+ [:case="abstract_int"]
+ expected: FAIL
+
+ [:case="array_abstract_int"]
+ expected: FAIL
+
+ [:case="array_runtime"]
+
+ [:case="array_sized"]
+
+ [:case="atomic"]
+
+ [:case="bool"]
+
+ [:case="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="f32"]
+
+ [:case="i32"]
+
+ [:case="mat2x2"]
+
+ [:case="mat4x3f"]
+
+ [:case="struct"]
+
+ [:case="u32"]
+
+ [:case="vec2i"]
+
+ [:case="vec3u"]
+
+ [:case="vec4f"]
+
+ [:case="vec_abstract_int"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html.ini
new file mode 100644
index 0000000000..99930c0036
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html.ini
@@ -0,0 +1,202 @@
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:attribute_names:*]
+ [:case="align"]
+ expected: FAIL
+
+ [:case="binding"]
+ expected: FAIL
+
+ [:case="builtin"]
+ expected: FAIL
+
+ [:case="compute"]
+ expected: FAIL
+
+ [:case="fragment"]
+ expected: FAIL
+
+ [:case="group"]
+ expected: FAIL
+
+ [:case="id"]
+ expected: FAIL
+
+ [:case="interpolate"]
+ expected: FAIL
+
+ [:case="invariant"]
+ expected: FAIL
+
+ [:case="location"]
+ expected: FAIL
+
+ [:case="must_use"]
+ expected: FAIL
+
+ [:case="size"]
+ expected: FAIL
+
+ [:case="vertex"]
+ expected: FAIL
+
+ [:case="workgroup_size"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:builtin_value_names:*]
+ [:case="frag_depth"]
+ expected: FAIL
+
+ [:case="front_facing"]
+ expected: FAIL
+
+ [:case="global_invocation_id"]
+ expected: FAIL
+
+ [:case="instance_index"]
+ expected: FAIL
+
+ [:case="local_invocation_id"]
+ expected: FAIL
+
+ [:case="local_invocation_index"]
+ expected: FAIL
+
+ [:case="num_workgroups"]
+ expected: FAIL
+
+ [:case="position_fragment"]
+ expected: FAIL
+
+ [:case="position_vertex"]
+ expected: FAIL
+
+ [:case="sample_index"]
+ expected: FAIL
+
+ [:case="sample_mask_input"]
+ expected: FAIL
+
+ [:case="sample_mask_output"]
+ expected: FAIL
+
+ [:case="vertex_index"]
+ expected: FAIL
+
+ [:case="workgroup_id"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:diagnostic_rule_names:*]
+ [:case="derivative_uniformity"]
+ expected: FAIL
+
+ [:case="rule"]
+ expected: FAIL
+
+ [:case="unknown"]
+ expected: FAIL
+
+ [:case="unknown_rule"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:diagnostic_severity_names:*]
+ [:case="error"]
+ expected: FAIL
+
+ [:case="info"]
+ expected: FAIL
+
+ [:case="off"]
+ expected: FAIL
+
+ [:case="warning"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:enable_names:*]
+ [:case="f16"]
+ expected:
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:interpolation_sampling_names:*]
+ [:case="center"]
+ expected: FAIL
+
+ [:case="centroid"]
+ expected: FAIL
+
+ [:case="sample"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:interpolation_type_names:*]
+ [:case="flat"]
+ expected: FAIL
+
+ [:case="linear"]
+ expected: FAIL
+
+ [:case="perspective"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:language_names:*]
+ [:case="packed_4x8_integer_dot_product"]
+
+ [:case="pointer_composite_access"]
+
+ [:case="readonly_and_readwrite_storage_textures"]
+
+ [:case="unrestricted_pointer_parameters"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,context_dependent_resolution:swizzle_names:*]
+ [:case="a"]
+ expected: FAIL
+
+ [:case="agra"]
+ expected: FAIL
+
+ [:case="arr"]
+ expected: FAIL
+
+ [:case="b"]
+ expected: FAIL
+
+ [:case="bgra"]
+ expected: FAIL
+
+ [:case="g"]
+ expected: FAIL
+
+ [:case="r"]
+ expected: FAIL
+
+ [:case="rgb"]
+ expected: FAIL
+
+ [:case="w"]
+ expected: FAIL
+
+ [:case="wxyz"]
+ expected: FAIL
+
+ [:case="x"]
+ expected: FAIL
+
+ [:case="xy"]
+ expected: FAIL
+
+ [:case="xyxy"]
+ expected: FAIL
+
+ [:case="y"]
+ expected: FAIL
+
+ [:case="yxz"]
+ expected: FAIL
+
+ [:case="z"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html.ini
new file mode 100644
index 0000000000..f5546d0344
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html.ini
@@ -0,0 +1,63 @@
+[cts.https.html?q=webgpu:shader,validation,decl,let:initializer:*]
+ [:case="init_const_expr"]
+
+ [:case="init_matching_type"]
+
+ [:case="init_mismatch_type"]
+
+ [:case="init_override_expr"]
+
+ [:case="init_runtime_expr"]
+
+ [:case="no_init"]
+
+ [:case="no_type"]
+
+ [:case="ptr_access_mismatch"]
+
+ [:case="ptr_addrspace_mismatch"]
+
+ [:case="ptr_type_mismatch"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,let:module_scope:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,let:type:*]
+ [:case="array_runtime"]
+
+ [:case="array_sized"]
+ expected: FAIL
+
+ [:case="atomic"]
+
+ [:case="bool"]
+
+ [:case="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="f32"]
+
+ [:case="i32"]
+
+ [:case="load_rule"]
+
+ [:case="mat2x2"]
+
+ [:case="mat4x3f"]
+
+ [:case="ptr_function"]
+
+ [:case="ptr_storage"]
+
+ [:case="struct"]
+
+ [:case="u32"]
+
+ [:case="vec2i"]
+
+ [:case="vec3u"]
+
+ [:case="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html.ini
index da81b667eb..677629eec6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html.ini
@@ -1,12 +1,46 @@
+[cts.https.html?q=webgpu:shader,validation,decl,override:function_scope:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,override:id:*]
+ [:case="duplicate"]
+
+ [:case="max"]
+
+ [:case="min"]
+
+ [:case="neg"]
+
+ [:case="too_large"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,override:initializer:*]
+ [:case="abs_float_init_convert"]
+
+ [:case="abs_int_init_convert"]
+ expected: FAIL
+
+ [:case="init_const_expr"]
+
+ [:case="init_matching_type"]
+
+ [:case="init_mismatch_type"]
+
+ [:case="init_override_expr"]
+
+ [:case="init_runtime_expr"]
+
+ [:case="no_init"]
+
+ [:case="no_init_no_type"]
+
+ [:case="no_type"]
+
+
[cts.https.html?q=webgpu:shader,validation,decl,override:no_direct_recursion:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
[:target="a"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac": FAIL
[:target="b"]
@@ -15,10 +49,41 @@
expected:
if os == "win" and not debug: [OK, TIMEOUT]
[:target="a"]
+
+ [:target="b"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,override:type:*]
+ [:case="abs_float_conversion"]
+
+ [:case="abs_int_conversion"]
+
+ [:case="array"]
+
+ [:case="atomic"]
+
+ [:case="bool"]
+
+ [:case="f16"]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
if os == "mac": FAIL
- [:target="b"]
+ [:case="f32"]
+
+ [:case="i32"]
+
+ [:case="mat2x2f"]
+
+ [:case="matrix"]
+
+ [:case="struct"]
+
+ [:case="u32"]
+
+ [:case="vec2_bool"]
+
+ [:case="vec2i"]
+
+ [:case="vec3u"]
+
+ [:case="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini
new file mode 100644
index 0000000000..ba770297b5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini
@@ -0,0 +1,2724 @@
+[cts.https.html?q=webgpu:shader,validation,decl,var:binding_collision_unused_helper:*]
+ expected:
+ if os == "mac": SKIP
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:binding_collisions:*]
+ expected:
+ if os == "mac": SKIP
+ [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="different"]
+
+ [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="same"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:a_group=0;b_group=0;a_binding=0;b_binding=1;b_use="different"]
+
+ [:a_group=0;b_group=0;a_binding=0;b_binding=1;b_use="same"]
+
+ [:a_group=0;b_group=0;a_binding=1;b_binding=0;b_use="different"]
+
+ [:a_group=0;b_group=0;a_binding=1;b_binding=0;b_use="same"]
+
+ [:a_group=0;b_group=0;a_binding=1;b_binding=1;b_use="different"]
+
+ [:a_group=0;b_group=0;a_binding=1;b_binding=1;b_use="same"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:a_group=0;b_group=1;a_binding=0;b_binding=0;b_use="different"]
+
+ [:a_group=0;b_group=1;a_binding=0;b_binding=0;b_use="same"]
+
+ [:a_group=0;b_group=1;a_binding=0;b_binding=1;b_use="different"]
+
+ [:a_group=0;b_group=1;a_binding=0;b_binding=1;b_use="same"]
+
+ [:a_group=0;b_group=1;a_binding=1;b_binding=0;b_use="different"]
+
+ [:a_group=0;b_group=1;a_binding=1;b_binding=0;b_use="same"]
+
+ [:a_group=0;b_group=1;a_binding=1;b_binding=1;b_use="different"]
+
+ [:a_group=0;b_group=1;a_binding=1;b_binding=1;b_use="same"]
+
+ [:a_group=1;b_group=0;a_binding=0;b_binding=0;b_use="different"]
+
+ [:a_group=1;b_group=0;a_binding=0;b_binding=0;b_use="same"]
+
+ [:a_group=1;b_group=0;a_binding=0;b_binding=1;b_use="different"]
+
+ [:a_group=1;b_group=0;a_binding=0;b_binding=1;b_use="same"]
+
+ [:a_group=1;b_group=0;a_binding=1;b_binding=0;b_use="different"]
+
+ [:a_group=1;b_group=0;a_binding=1;b_binding=0;b_use="same"]
+
+ [:a_group=1;b_group=0;a_binding=1;b_binding=1;b_use="different"]
+
+ [:a_group=1;b_group=0;a_binding=1;b_binding=1;b_use="same"]
+
+ [:a_group=1;b_group=1;a_binding=0;b_binding=0;b_use="different"]
+
+ [:a_group=1;b_group=1;a_binding=0;b_binding=0;b_use="same"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:a_group=1;b_group=1;a_binding=0;b_binding=1;b_use="different"]
+
+ [:a_group=1;b_group=1;a_binding=0;b_binding=1;b_use="same"]
+
+ [:a_group=1;b_group=1;a_binding=1;b_binding=0;b_use="different"]
+
+ [:a_group=1;b_group=1;a_binding=1;b_binding=0;b_use="same"]
+
+ [:a_group=1;b_group=1;a_binding=1;b_binding=1;b_use="different"]
+
+ [:a_group=1;b_group=1;a_binding=1;b_binding=1;b_use="same"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_function_var:*]
+ expected:
+ if os == "mac": SKIP
+ [:group="";binding=""]
+
+ [:group="";binding="%40binding(0)"]
+
+ [:group="%40group(0)";binding=""]
+
+ [:group="%40group(0)";binding="%40binding(0)"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_non_resources:*]
+ expected:
+ if os == "mac": SKIP
+ [:addrspace="private";group="";binding=""]
+
+ [:addrspace="private";group="";binding="%40binding(0)"]
+
+ [:addrspace="private";group="%40group(0)";binding=""]
+
+ [:addrspace="private";group="%40group(0)";binding="%40binding(0)"]
+
+ [:addrspace="workgroup";group="";binding=""]
+
+ [:addrspace="workgroup";group="";binding="%40binding(0)"]
+
+ [:addrspace="workgroup";group="%40group(0)";binding=""]
+
+ [:addrspace="workgroup";group="%40group(0)";binding="%40binding(0)"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_resources:*]
+ expected:
+ if os == "mac": SKIP
+ [:decl="sampler";group="";binding=""]
+
+ [:decl="sampler";group="";binding="%40binding(0)"]
+
+ [:decl="sampler";group="%40group(0)";binding=""]
+
+ [:decl="sampler";group="%40group(0)";binding="%40binding(0)"]
+
+ [:decl="storage";group="";binding=""]
+
+ [:decl="storage";group="";binding="%40binding(0)"]
+
+ [:decl="storage";group="%40group(0)";binding=""]
+
+ [:decl="storage";group="%40group(0)";binding="%40binding(0)"]
+
+ [:decl="texture";group="";binding=""]
+
+ [:decl="texture";group="";binding="%40binding(0)"]
+
+ [:decl="texture";group="%40group(0)";binding=""]
+
+ [:decl="texture";group="%40group(0)";binding="%40binding(0)"]
+
+ [:decl="uniform";group="";binding=""]
+
+ [:decl="uniform";group="";binding="%40binding(0)"]
+
+ [:decl="uniform";group="%40group(0)";binding=""]
+
+ [:decl="uniform";group="%40group(0)";binding="%40binding(0)"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:function_addrspace_at_module_scope:*]
+ expected:
+ if os == "mac": SKIP
+ [:addrspace="function"]
+
+ [:addrspace="private"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:function_scope_types:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:type="S_S_bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_S_bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_S_bool";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_S_bool";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_bool_4";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_bool_4";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_bool_4";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_bool_4";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u";kind="var";via_alias=false]
+
+ [:type="S_array_vec4u";kind="var";via_alias=true]
+
+ [:type="S_array_vec4u_4";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u_4";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u_4";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_array_vec4u_4";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_bool";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_bool";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_u32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_u32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_u32";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="S_u32";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="var";via_alias=false]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="var";via_alias=true]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u%3E";kind="var";via_alias=false]
+
+ [:type="array%3Cvec4u%3E";kind="var";via_alias=true]
+
+ [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%204%3E";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%204%3E";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="var";via_alias=false]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="var";via_alias=true]
+
+ [:type="atomic%3Ci32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="atomic%3Ci32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="atomic%3Ci32%3E";kind="var";via_alias=false]
+
+ [:type="atomic%3Ci32%3E";kind="var";via_alias=true]
+
+ [:type="atomic%3Cu32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="atomic%3Cu32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="atomic%3Cu32%3E";kind="var";via_alias=false]
+
+ [:type="atomic%3Cu32%3E";kind="var";via_alias=true]
+
+ [:type="bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f16";kind="comment";via_alias=false]
+
+ [:type="f16";kind="comment";via_alias=true]
+
+ [:type="f16";kind="var";via_alias=false]
+
+ [:type="f16";kind="var";via_alias=true]
+
+ [:type="f32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat2x2f";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat2x2f";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat2x2f";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat2x2f";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat3x4h";kind="comment";via_alias=false]
+
+ [:type="mat3x4h";kind="comment";via_alias=true]
+
+ [:type="mat3x4h";kind="var";via_alias=false]
+
+ [:type="mat3x4h";kind="var";via_alias=true]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="var";via_alias=false]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="var";via_alias=true]
+
+ [:type="sampler";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="sampler";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="sampler";kind="var";via_alias=false]
+
+ [:type="sampler";kind="var";via_alias=true]
+
+ [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="texture_2d%3Cf32%3E";kind="var";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="var";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="u32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2f";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2f";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2f";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2f";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3h";kind="comment";via_alias=false]
+
+ [:type="vec3h";kind="comment";via_alias=true]
+
+ [:type="vec3h";kind="var";via_alias=false]
+
+ [:type="vec3h";kind="var";via_alias=true]
+
+ [:type="vec3i";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec4u";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec4u";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec4u";kind="var";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec4u";kind="var";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:handle_initializer:*]
+ expected:
+ if os == "mac": SKIP
+ [:initializer=false;type="sampler"]
+
+ [:initializer=false;type="texture_2d%3Cf32%3E"]
+
+ [:initializer=true;type="sampler"]
+
+ [:initializer=true;type="texture_2d%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:initializer_kind:*]
+ expected:
+ if os == "mac": SKIP
+ [:initializer="42u";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="42u";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="another_private_var";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="another_private_var";addrspace="private"]
+
+ [:initializer="my_const_42u";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="my_const_42u";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="my_override_42u";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="my_override_42u";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="u32()";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="u32()";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="u32(sqrt(42.0))";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="u32(sqrt(42.0))";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="user_func()";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="user_func()";addrspace="private"]
+
+ [:initializer="vec4u(1,%202,%203,%204)[another_private_var%20%2F%2020\]";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="vec4u(1,%202,%203,%204)[another_private_var%20%2F%2020\]";addrspace="private"]
+
+ [:initializer="vec4u(1,%202,%203,%204)[my_const_42u%20%2F%2020\]";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="vec4u(1,%202,%203,%204)[my_const_42u%20%2F%2020\]";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="vec4u(1,%202,%203,%204)[my_override_42u%20%2F%2020\]";addrspace="function"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:initializer="vec4u(1,%202,%203,%204)[my_override_42u%20%2F%2020\]";addrspace="private"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:module_scope_initializers:*]
+ expected:
+ if os == "mac": SKIP
+ [:initializer=false;kind="private"]
+
+ [:initializer=false;kind="storage_ro"]
+
+ [:initializer=false;kind="storage_rw"]
+
+ [:initializer=false;kind="uniform"]
+
+ [:initializer=false;kind="workgroup"]
+
+ [:initializer=true;kind="private"]
+
+ [:initializer=true;kind="storage_ro"]
+
+ [:initializer=true;kind="storage_rw"]
+
+ [:initializer=true;kind="uniform"]
+
+ [:initializer=true;kind="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,validation,decl,var:module_scope_types:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux": TIMEOUT
+ if os == "mac": SKIP
+ [:type="S_S_bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_S_bool";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_bool_4";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_array_vec4u_4";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_bool";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="S_u32";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%204%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_const%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="array%3Cvec4u,%20array_size_override%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="private";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="private";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="atomic%3Cu32%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="bool";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="handle";via_alias=false]
+
+ [:type="bool";kind="handle";via_alias=true]
+
+ [:type="bool";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="storage_ro";via_alias=false]
+
+ [:type="bool";kind="storage_ro";via_alias=true]
+
+ [:type="bool";kind="storage_rw";via_alias=false]
+
+ [:type="bool";kind="storage_rw";via_alias=true]
+
+ [:type="bool";kind="uniform";via_alias=false]
+
+ [:type="bool";kind="uniform";via_alias=true]
+
+ [:type="bool";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="bool";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f16";kind="comment";via_alias=false]
+
+ [:type="f16";kind="comment";via_alias=true]
+
+ [:type="f16";kind="handle";via_alias=false]
+
+ [:type="f16";kind="handle";via_alias=true]
+
+ [:type="f16";kind="private";via_alias=false]
+
+ [:type="f16";kind="private";via_alias=true]
+
+ [:type="f16";kind="storage_ro";via_alias=false]
+
+ [:type="f16";kind="storage_ro";via_alias=true]
+
+ [:type="f16";kind="storage_rw";via_alias=false]
+
+ [:type="f16";kind="storage_rw";via_alias=true]
+
+ [:type="f16";kind="uniform";via_alias=false]
+
+ [:type="f16";kind="uniform";via_alias=true]
+
+ [:type="f16";kind="workgroup";via_alias=false]
+
+ [:type="f16";kind="workgroup";via_alias=true]
+
+ [:type="f32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="handle";via_alias=false]
+
+ [:type="f32";kind="handle";via_alias=true]
+
+ [:type="f32";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="f32";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="handle";via_alias=false]
+
+ [:type="i32";kind="handle";via_alias=true]
+
+ [:type="i32";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="i32";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="mat2x2f";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="handle";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat2x2f";kind="handle";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat2x2f";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="mat2x2f";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat2x2f";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat2x2f";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="comment";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="comment";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="handle";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="handle";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="private";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="private";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="uniform";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="uniform";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="workgroup";via_alias=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="mat3x4h";kind="workgroup";via_alias=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="ptr%3Cfunction,%20u32%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="sampler";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="handle";via_alias=false]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="handle";via_alias=true]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="texture_2d%3Cf32%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:type="u32";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="handle";via_alias=false]
+
+ [:type="u32";kind="handle";via_alias=true]
+
+ [:type="u32";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="u32";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="handle";via_alias=false]
+
+ [:type="vec2%3Cbool%3E";kind="handle";via_alias=true]
+
+ [:type="vec2%3Cbool%3E";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=false]
+
+ [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=true]
+
+ [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=false]
+
+ [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=true]
+
+ [:type="vec2%3Cbool%3E";kind="uniform";via_alias=false]
+
+ [:type="vec2%3Cbool%3E";kind="uniform";via_alias=true]
+
+ [:type="vec2%3Cbool%3E";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2%3Cbool%3E";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec2f";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="handle";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec2f";kind="handle";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec2f";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec2f";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec3h";kind="comment";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="comment";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="handle";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="handle";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="private";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="private";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="uniform";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="uniform";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="workgroup";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3h";kind="workgroup";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3i";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="handle";via_alias=false]
+
+ [:type="vec3i";kind="handle";via_alias=true]
+
+ [:type="vec3i";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:type="vec3i";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="comment";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="comment";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="handle";via_alias=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4u";kind="handle";via_alias=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4u";kind="private";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="private";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="storage_ro";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="storage_ro";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="storage_rw";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="storage_rw";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="uniform";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="uniform";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="workgroup";via_alias=false]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+
+ [:type="vec4u";kind="workgroup";via_alias=true]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini
index 535372e0e2..a1c371d8e5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini
@@ -1,9 +1,8 @@
[cts.https.html?q=webgpu:shader,validation,expression,access,vector:vector:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "win" and not debug: TIMEOUT
- if os == "linux": TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:case="a";vector_decl="const";vector_width=2;element_type="bool"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
@@ -44447,3 +44446,503 @@
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:vector_decl="const";vector_width=2;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=2;element_type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=2;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=2;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=2;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=3;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=3;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=3;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=3;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=3;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=4;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=4;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=4;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=4;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="const";vector_width=4;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=2;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=2;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=2;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=2;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=2;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=3;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=3;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=3;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=3;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=3;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=4;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=4;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=4;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=4;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="let";vector_width=4;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=2;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=2;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=2;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=2;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=2;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=3;element_type="bool"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=3;element_type="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=3;element_type="f32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=3;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=3;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=4;element_type="bool"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=4;element_type="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=4;element_type="f32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=4;element_type="i32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="param";vector_width=4;element_type="u32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=2;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=2;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=2;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=2;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=2;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=3;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=3;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=3;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=3;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=3;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=4;element_type="bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=4;element_type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=4;element_type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=4;element_type="i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:vector_decl="var";vector_width=4;element_type="u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini
new file mode 100644
index 0000000000..a4ac7b0367
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini
@@ -0,0 +1,2512 @@
+[cts.https.html?q=webgpu:shader,validation,expression,binary,add_sub_mul:invalid_type_with_itself:*]
+ [:op="add";type="array";control=false]
+
+ [:op="add";type="array";control=true]
+
+ [:op="add";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";type="atomic";control=true]
+
+ [:op="add";type="ptr";control=false]
+
+ [:op="add";type="ptr";control=true]
+
+ [:op="add";type="sampler";control=false]
+
+ [:op="add";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";type="struct";control=false]
+
+ [:op="add";type="struct";control=true]
+
+ [:op="add";type="texture";control=false]
+
+ [:op="add";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";type="array";control=false]
+
+ [:op="mul";type="array";control=true]
+
+ [:op="mul";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";type="atomic";control=true]
+
+ [:op="mul";type="ptr";control=false]
+
+ [:op="mul";type="ptr";control=true]
+
+ [:op="mul";type="sampler";control=false]
+
+ [:op="mul";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";type="struct";control=false]
+
+ [:op="mul";type="struct";control=true]
+
+ [:op="mul";type="texture";control=false]
+
+ [:op="mul";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";type="array";control=false]
+
+ [:op="sub";type="array";control=true]
+
+ [:op="sub";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";type="atomic";control=true]
+
+ [:op="sub";type="ptr";control=false]
+
+ [:op="sub";type="ptr";control=true]
+
+ [:op="sub";type="sampler";control=false]
+
+ [:op="sub";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";type="struct";control=false]
+
+ [:op="sub";type="struct";control=true]
+
+ [:op="sub";type="texture";control=false]
+
+ [:op="sub";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,add_sub_mul:scalar_vector:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:lhs="abstract-float";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-float";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="abstract-int"]
+
+ [:lhs="abstract-int";rhs="bool"]
+
+ [:lhs="abstract-int";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="i32"]
+
+ [:lhs="abstract-int";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="abstract-float"]
+
+ [:lhs="bool";rhs="abstract-int"]
+
+ [:lhs="bool";rhs="bool"]
+
+ [:lhs="bool";rhs="f16"]
+
+ [:lhs="bool";rhs="f32"]
+
+ [:lhs="bool";rhs="i32"]
+
+ [:lhs="bool";rhs="u32"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="f16";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,add_sub_mul:scalar_vector_out_of_range:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:op="add";lhs="f16";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="f32";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="i32";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="add";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="f16";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="f32";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="i32";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="u32";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:op="mul";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:op="mul";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:op="mul";lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="mul";lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="mul";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="f16";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="f32";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="i32";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="sub";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini
new file mode 100644
index 0000000000..4df030c905
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini
@@ -0,0 +1,1820 @@
+[cts.https.html?q=webgpu:shader,validation,expression,binary,and_or_xor:invalid_types:*]
+ [:op="and";type="array";control=false]
+
+ [:op="and";type="array";control=true]
+
+ [:op="and";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="and";type="atomic";control=true]
+
+ [:op="and";type="mat2x2f";control=false]
+
+ [:op="and";type="mat2x2f";control=true]
+
+ [:op="and";type="ptr";control=false]
+
+ [:op="and";type="ptr";control=true]
+
+ [:op="and";type="sampler";control=false]
+
+ [:op="and";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="and";type="struct";control=false]
+
+ [:op="and";type="struct";control=true]
+
+ [:op="and";type="texture";control=false]
+
+ [:op="and";type="texture";control=true]
+ expected: FAIL
+
+ [:op="or";type="array";control=false]
+
+ [:op="or";type="array";control=true]
+
+ [:op="or";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="or";type="atomic";control=true]
+
+ [:op="or";type="mat2x2f";control=false]
+
+ [:op="or";type="mat2x2f";control=true]
+
+ [:op="or";type="ptr";control=false]
+
+ [:op="or";type="ptr";control=true]
+
+ [:op="or";type="sampler";control=false]
+
+ [:op="or";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="or";type="struct";control=false]
+
+ [:op="or";type="struct";control=true]
+
+ [:op="or";type="texture";control=false]
+
+ [:op="or";type="texture";control=true]
+ expected: FAIL
+
+ [:op="xor";type="array";control=false]
+
+ [:op="xor";type="array";control=true]
+
+ [:op="xor";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="xor";type="atomic";control=true]
+
+ [:op="xor";type="mat2x2f";control=false]
+
+ [:op="xor";type="mat2x2f";control=true]
+
+ [:op="xor";type="ptr";control=false]
+
+ [:op="xor";type="ptr";control=true]
+
+ [:op="xor";type="sampler";control=false]
+
+ [:op="xor";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="xor";type="struct";control=false]
+
+ [:op="xor";type="struct";control=true]
+
+ [:op="xor";type="texture";control=false]
+
+ [:op="xor";type="texture";control=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,and_or_xor:scalar_vector:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:lhs="abstract-float";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="abstract-float"]
+
+ [:lhs="abstract-int";rhs="abstract-int"]
+
+ [:lhs="abstract-int";rhs="bool"]
+
+ [:lhs="abstract-int";rhs="f16"]
+
+ [:lhs="abstract-int";rhs="f32"]
+
+ [:lhs="abstract-int";rhs="i32"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="bool";rhs="abstract-float"]
+
+ [:lhs="bool";rhs="abstract-int"]
+
+ [:lhs="bool";rhs="bool"]
+ expected: FAIL
+
+ [:lhs="bool";rhs="f16"]
+
+ [:lhs="bool";rhs="f32"]
+
+ [:lhs="bool";rhs="i32"]
+
+ [:lhs="bool";rhs="u32"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="f16";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini
index a6db0b47d8..12862c5816 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini
@@ -1,39 +1,1749 @@
+[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:invalid_types:*]
+ [:op="%3C%3C";type="array";control=false]
+
+ [:op="%3C%3C";type="array";control=true]
+
+ [:op="%3C%3C";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="%3C%3C";type="atomic";control=true]
+
+ [:op="%3C%3C";type="mat2x2f";control=false]
+
+ [:op="%3C%3C";type="mat2x2f";control=true]
+
+ [:op="%3C%3C";type="ptr";control=false]
+
+ [:op="%3C%3C";type="ptr";control=true]
+
+ [:op="%3C%3C";type="sampler";control=false]
+
+ [:op="%3C%3C";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="%3C%3C";type="struct";control=false]
+
+ [:op="%3C%3C";type="struct";control=true]
+
+ [:op="%3C%3C";type="texture";control=false]
+
+ [:op="%3C%3C";type="texture";control=true]
+ expected: FAIL
+
+ [:op="%3E%3E";type="array";control=false]
+
+ [:op="%3E%3E";type="array";control=true]
+
+ [:op="%3E%3E";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="%3E%3E";type="atomic";control=true]
+
+ [:op="%3E%3E";type="mat2x2f";control=false]
+
+ [:op="%3E%3E";type="mat2x2f";control=true]
+
+ [:op="%3E%3E";type="ptr";control=false]
+
+ [:op="%3E%3E";type="ptr";control=true]
+
+ [:op="%3E%3E";type="sampler";control=false]
+
+ [:op="%3E%3E";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="%3E%3E";type="struct";control=false]
+
+ [:op="%3E%3E";type="struct";control=true]
+
+ [:op="%3E%3E";type="texture";control=false]
+
+ [:op="%3E%3E";type="texture";control=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:scalar_vector:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:lhs="abstract-float";rhs="abstract-float"]
+
+ [:lhs="abstract-float";rhs="abstract-int"]
+
+ [:lhs="abstract-float";rhs="bool"]
+
+ [:lhs="abstract-float";rhs="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f32"]
+
+ [:lhs="abstract-float";rhs="i32"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="u32"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="abstract-float"]
+
+ [:lhs="abstract-int";rhs="abstract-int"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="bool"]
+
+ [:lhs="abstract-int";rhs="f16"]
+
+ [:lhs="abstract-int";rhs="f32"]
+
+ [:lhs="abstract-int";rhs="i32"]
+
+ [:lhs="abstract-int";rhs="u32"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="bool";rhs="abstract-float"]
+
+ [:lhs="bool";rhs="abstract-int"]
+
+ [:lhs="bool";rhs="bool"]
+
+ [:lhs="bool";rhs="f16"]
+
+ [:lhs="bool";rhs="f32"]
+
+ [:lhs="bool";rhs="i32"]
+
+ [:lhs="bool";rhs="u32"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="f16";rhs="abstract-float"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="abstract-int"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="bool"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="i32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="u32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-float"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-int"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="bool"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="i32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="u32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_left_concrete:*]
+ expected:
+ if os == "mac": TIMEOUT
[:case={"lhs":"-1073741824i","rhs":"1u","pass":true};vectorize="_undef_"]
expected: FAIL
[:case={"lhs":"-1073741824i","rhs":"1u","pass":true};vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1073741824i","rhs":"1u","pass":true};vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1073741824i","rhs":"1u","pass":true};vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"1u","pass":true};vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"1u","pass":true};vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"1u","pass":true};vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"1u","pass":true};vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"31u","pass":true};vectorize="_undef_"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"31u","pass":true};vectorize=2]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"31u","pass":true};vectorize=3]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"-1i","rhs":"31u","pass":true};vectorize=4]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case={"lhs":"0i","rhs":"0xFFFFFFFFu","pass":false};vectorize="_undef_"]
@@ -124,12 +1834,20 @@
[:case={"lhs":"0u","rhs":"33u","pass":false};vectorize=4]
[:case={"lhs":"1","rhs":"-1","pass":false};vectorize="_undef_"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1","rhs":"-1","pass":false};vectorize=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1","rhs":"-1","pass":false};vectorize=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1","rhs":"-1","pass":false};vectorize=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1073741824i","rhs":"1u","pass":false};vectorize="_undef_"]
@@ -152,12 +1870,20 @@
expected: FAIL
[:case={"lhs":"1i","rhs":"-1","pass":false};vectorize="_undef_"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1i","rhs":"-1","pass":false};vectorize=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1i","rhs":"-1","pass":false};vectorize=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1i","rhs":"-1","pass":false};vectorize=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1i","rhs":"31u","pass":false};vectorize="_undef_"]
@@ -168,12 +1894,20 @@
[:case={"lhs":"1i","rhs":"31u","pass":false};vectorize=4]
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize="_undef_"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize=2]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize=3]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize=4]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case={"lhs":"1u","rhs":"31u","pass":true};vectorize="_undef_"]
expected: FAIL
@@ -232,29 +1966,6 @@
[:case={"lhs":"4294967295u","rhs":"31u","pass":false};vectorize=4]
-[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_left_vec_size_mismatch:*]
- [:vectorize_lhs=2;vectorize_rhs=2]
- expected: FAIL
-
- [:vectorize_lhs=2;vectorize_rhs=3]
-
- [:vectorize_lhs=2;vectorize_rhs=4]
-
- [:vectorize_lhs=3;vectorize_rhs=2]
-
- [:vectorize_lhs=3;vectorize_rhs=3]
- expected: FAIL
-
- [:vectorize_lhs=3;vectorize_rhs=4]
-
- [:vectorize_lhs=4;vectorize_rhs=2]
-
- [:vectorize_lhs=4;vectorize_rhs=3]
-
- [:vectorize_lhs=4;vectorize_rhs=4]
- expected: FAIL
-
-
[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_right_concrete:*]
[:case={"lhs":"0i","rhs":"0xFFFFFFFFu","pass":false};vectorize="_undef_"]
@@ -367,26 +2078,3 @@
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize=3]
[:case={"lhs":"1u","rhs":"-1","pass":false};vectorize=4]
-
-
-[cts.https.html?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_right_vec_size_mismatch:*]
- [:vectorize_lhs=2;vectorize_rhs=2]
- expected: FAIL
-
- [:vectorize_lhs=2;vectorize_rhs=3]
-
- [:vectorize_lhs=2;vectorize_rhs=4]
-
- [:vectorize_lhs=3;vectorize_rhs=2]
-
- [:vectorize_lhs=3;vectorize_rhs=3]
- expected: FAIL
-
- [:vectorize_lhs=3;vectorize_rhs=4]
-
- [:vectorize_lhs=4;vectorize_rhs=2]
-
- [:vectorize_lhs=4;vectorize_rhs=3]
-
- [:vectorize_lhs=4;vectorize_rhs=4]
- expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini
new file mode 100644
index 0000000000..6f502c73dc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini
@@ -0,0 +1,2203 @@
+[cts.https.html?q=webgpu:shader,validation,expression,binary,comparison:invalid_types:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:op="eq";type="array";control=false]
+
+ [:op="eq";type="array";control=true]
+
+ [:op="eq";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="eq";type="atomic";control=true]
+
+ [:op="eq";type="mat2x2f";control=false]
+
+ [:op="eq";type="mat2x2f";control=true]
+
+ [:op="eq";type="ptr";control=false]
+
+ [:op="eq";type="ptr";control=true]
+
+ [:op="eq";type="sampler";control=false]
+
+ [:op="eq";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="eq";type="struct";control=false]
+
+ [:op="eq";type="struct";control=true]
+
+ [:op="eq";type="texture";control=false]
+
+ [:op="eq";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ge";type="array";control=false]
+
+ [:op="ge";type="array";control=true]
+
+ [:op="ge";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ge";type="atomic";control=true]
+
+ [:op="ge";type="mat2x2f";control=false]
+
+ [:op="ge";type="mat2x2f";control=true]
+
+ [:op="ge";type="ptr";control=false]
+
+ [:op="ge";type="ptr";control=true]
+
+ [:op="ge";type="sampler";control=false]
+
+ [:op="ge";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ge";type="struct";control=false]
+
+ [:op="ge";type="struct";control=true]
+
+ [:op="ge";type="texture";control=false]
+
+ [:op="ge";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="gt";type="array";control=false]
+
+ [:op="gt";type="array";control=true]
+
+ [:op="gt";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="gt";type="atomic";control=true]
+
+ [:op="gt";type="mat2x2f";control=false]
+
+ [:op="gt";type="mat2x2f";control=true]
+
+ [:op="gt";type="ptr";control=false]
+
+ [:op="gt";type="ptr";control=true]
+
+ [:op="gt";type="sampler";control=false]
+
+ [:op="gt";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="gt";type="struct";control=false]
+
+ [:op="gt";type="struct";control=true]
+
+ [:op="gt";type="texture";control=false]
+
+ [:op="gt";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="le";type="array";control=false]
+
+ [:op="le";type="array";control=true]
+
+ [:op="le";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="le";type="atomic";control=true]
+
+ [:op="le";type="mat2x2f";control=false]
+
+ [:op="le";type="mat2x2f";control=true]
+
+ [:op="le";type="ptr";control=false]
+
+ [:op="le";type="ptr";control=true]
+
+ [:op="le";type="sampler";control=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:op="le";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op="le";type="struct";control=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:op="le";type="struct";control=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:op="le";type="texture";control=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:op="le";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:op="lt";type="array";control=false]
+
+ [:op="lt";type="array";control=true]
+
+ [:op="lt";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="lt";type="atomic";control=true]
+
+ [:op="lt";type="mat2x2f";control=false]
+
+ [:op="lt";type="mat2x2f";control=true]
+
+ [:op="lt";type="ptr";control=false]
+
+ [:op="lt";type="ptr";control=true]
+
+ [:op="lt";type="sampler";control=false]
+
+ [:op="lt";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="lt";type="struct";control=false]
+
+ [:op="lt";type="struct";control=true]
+
+ [:op="lt";type="texture";control=false]
+
+ [:op="lt";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ne";type="array";control=false]
+
+ [:op="ne";type="array";control=true]
+
+ [:op="ne";type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ne";type="atomic";control=true]
+
+ [:op="ne";type="mat2x2f";control=false]
+
+ [:op="ne";type="mat2x2f";control=true]
+
+ [:op="ne";type="ptr";control=false]
+
+ [:op="ne";type="ptr";control=true]
+
+ [:op="ne";type="sampler";control=false]
+
+ [:op="ne";type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="ne";type="struct";control=false]
+
+ [:op="ne";type="struct";control=true]
+
+ [:op="ne";type="texture";control=false]
+
+ [:op="ne";type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,comparison:scalar_vector:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:lhs="abstract-float";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-float";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="abstract-float"]
+
+ [:lhs="abstract-int";rhs="abstract-int"]
+
+ [:lhs="abstract-int";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="f32"]
+
+ [:lhs="abstract-int";rhs="i32"]
+
+ [:lhs="abstract-int";rhs="u32"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="bool";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="f16"]
+
+ [:lhs="bool";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="bool";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="f16";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-float"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="u32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-float"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="bool"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="i32"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini
new file mode 100644
index 0000000000..f4187f4802
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini
@@ -0,0 +1,2074 @@
+[cts.https.html?q=webgpu:shader,validation,expression,binary,div_rem:invalid_type_with_itself:*]
+ [:op="div";type="array";control=false]
+
+ [:op="div";type="array";control=true]
+
+ [:op="div";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="div";type="atomic";control=true]
+
+ [:op="div";type="ptr";control=false]
+
+ [:op="div";type="ptr";control=true]
+
+ [:op="div";type="sampler";control=false]
+
+ [:op="div";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="div";type="struct";control=false]
+
+ [:op="div";type="struct";control=true]
+
+ [:op="div";type="texture";control=false]
+
+ [:op="div";type="texture";control=true]
+ expected: FAIL
+
+ [:op="rem";type="array";control=false]
+
+ [:op="rem";type="array";control=true]
+
+ [:op="rem";type="atomic";control=false]
+ expected: FAIL
+
+ [:op="rem";type="atomic";control=true]
+
+ [:op="rem";type="ptr";control=false]
+
+ [:op="rem";type="ptr";control=true]
+
+ [:op="rem";type="sampler";control=false]
+
+ [:op="rem";type="sampler";control=true]
+ expected: FAIL
+
+ [:op="rem";type="struct";control=false]
+
+ [:op="rem";type="struct";control=true]
+
+ [:op="rem";type="texture";control=false]
+
+ [:op="rem";type="texture";control=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,div_rem:scalar_vector:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:lhs="abstract-float";rhs="abstract-float"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="bool"]
+
+ [:lhs="abstract-float";rhs="f16"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="f32"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="abstract-int";rhs="abstract-float"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="abstract-int"]
+
+ [:lhs="abstract-int";rhs="bool"]
+
+ [:lhs="abstract-int";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="f32"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="i32"]
+
+ [:lhs="abstract-int";rhs="u32"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="abstract-int";rhs="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:lhs="bool";rhs="abstract-float"]
+
+ [:lhs="bool";rhs="abstract-int"]
+
+ [:lhs="bool";rhs="bool"]
+
+ [:lhs="bool";rhs="f16"]
+
+ [:lhs="bool";rhs="f32"]
+
+ [:lhs="bool";rhs="i32"]
+
+ [:lhs="bool";rhs="u32"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="bool";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="f16";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f16";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="f32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="i32";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="u32";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec2%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec3%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="f32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec3%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-float"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="abstract-int"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="bool"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f16"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="f32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="i32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="u32"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-float%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cabstract-int%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cbool%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf16%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cf32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Ci32%3E"]
+
+ [:lhs="vec4%3Cbool%3E";rhs="vec2%3Cu32%3E"]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf16%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cf32%3E";rhs="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Ci32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="abstract-int"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:lhs="vec4%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,binary,div_rem:scalar_vector_out_of_range:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:op="div";lhs="f16";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="f32";rhs="f32"]
+ expected: FAIL
+
+ [:op="div";lhs="i32";rhs="i32"]
+ expected: FAIL
+
+ [:op="div";lhs="u32";rhs="u32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="div";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:op="div";lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected: FAIL
+
+ [:op="div";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:op="rem";lhs="f16";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="f32";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="i32";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="u32";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cf16%3E";rhs="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cf32%3E";rhs="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Ci32%3E";rhs="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cu32%3E";rhs="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:op="rem";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html.ini
index af2c29d3f8..2e6b0c5fc7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html.ini
@@ -1,7 +1,97 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,abs:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="array_runtime"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="atomic"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="sampler"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="struct"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="texture"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,abs:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -22,6 +112,14 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -36,6 +134,14 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -50,6 +156,14 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -60,59 +174,113 @@
[:stage="constant";type="vec4%3Ci32%3E"]
[:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="override";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="i32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="u32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Ci32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cu32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Ci32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cu32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Ci32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cu32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html.ini
index 01d23f7820..6b27d10030 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html.ini
@@ -18,9 +18,78 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,acos:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="greater_then_one"]
+ expected: [PASS, FAIL]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="less_then_negative_one"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+ expected: FAIL
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,acos:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -29,6 +98,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -37,6 +109,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -45,6 +120,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -60,21 +138,36 @@
[:stage="override";type="vec2%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html.ini
index 2fb254a676..86bd6d76ad 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html.ini
@@ -36,10 +36,76 @@
if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,acosh:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="less_then_one"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+ expected: FAIL
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,acosh:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -51,6 +117,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -60,55 +129,99 @@
expected: FAIL
[:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
expected: FAIL
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
expected: FAIL
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html.ini
new file mode 100644
index 0000000000..d030bd196f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html.ini
@@ -0,0 +1,134 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,all:argument_types:*]
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,all:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="f16"]
+
+ [:test="f32"]
+ expected: FAIL
+
+ [:test="i32"]
+ expected: FAIL
+
+ [:test="matrix"]
+ expected: FAIL
+
+ [:test="no_args"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_args"]
+
+ [:test="u32"]
+ expected: FAIL
+
+ [:test="valid"]
+
+ [:test="vec2_bool_implicit"]
+
+ [:test="vec3_bool_implicit"]
+
+ [:test="vec_bool"]
+
+ [:test="vec_f16"]
+
+ [:test="vec_f32"]
+ expected: FAIL
+
+ [:test="vec_i32"]
+ expected: FAIL
+
+ [:test="vec_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,all:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html.ini
new file mode 100644
index 0000000000..1c9f2a6ce4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html.ini
@@ -0,0 +1,134 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,any:argument_types:*]
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,any:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="f16"]
+
+ [:test="f32"]
+ expected: FAIL
+
+ [:test="i32"]
+ expected: FAIL
+
+ [:test="matrix"]
+ expected: FAIL
+
+ [:test="no_args"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_args"]
+
+ [:test="u32"]
+ expected: FAIL
+
+ [:test="valid"]
+
+ [:test="vec2_bool_implicit"]
+
+ [:test="vec3_bool_implicit"]
+
+ [:test="vec_bool"]
+
+ [:test="vec_f16"]
+
+ [:test="vec_f32"]
+ expected: FAIL
+
+ [:test="vec_i32"]
+ expected: FAIL
+
+ [:test="vec_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,any:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html.ini
new file mode 100644
index 0000000000..bb33f7044b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html.ini
@@ -0,0 +1,116 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,arrayLength:access_mode:*]
+ [:mode="read"]
+
+ [:mode="read_write"]
+
+ [:mode="write"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,arrayLength:bool_type:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,arrayLength:type:*]
+ [:type="T"]
+ expected: FAIL
+
+ [:type="array%3Ci32%3E"]
+
+ [:type="array%3Ci32,%202%3E"]
+ expected: FAIL
+
+ [:type="atomic%3Ci32%3E"]
+ expected: FAIL
+
+ [:type="atomic%3Cu32%3E"]
+ expected: FAIL
+
+ [:type="f16"]
+
+ [:type="f32"]
+ expected: FAIL
+
+ [:type="i32"]
+ expected: FAIL
+
+ [:type="mat2x2%3Cf16%3E"]
+
+ [:type="mat2x2f"]
+ expected: FAIL
+
+ [:type="mat2x3%3Cf16%3E"]
+
+ [:type="mat2x3f"]
+ expected: FAIL
+
+ [:type="mat2x4%3Cf16%3E"]
+
+ [:type="mat2x4f"]
+ expected: FAIL
+
+ [:type="mat3x2%3Cf16%3E"]
+
+ [:type="mat3x2f"]
+ expected: FAIL
+
+ [:type="mat3x3%3Cf16%3E"]
+
+ [:type="mat3x3f"]
+ expected: FAIL
+
+ [:type="mat3x4%3Cf16%3E"]
+
+ [:type="mat3x4f"]
+ expected: FAIL
+
+ [:type="mat4x2%3Cf16%3E"]
+
+ [:type="mat4x2f"]
+ expected: FAIL
+
+ [:type="mat4x3%3Cf16%3E"]
+
+ [:type="mat4x3f"]
+ expected: FAIL
+
+ [:type="mat4x4%3Cf16%3E"]
+
+ [:type="mat4x4f"]
+ expected: FAIL
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html.ini
index 54a251f6cf..a5a7d73c9f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html.ini
@@ -2,54 +2,113 @@
[:type="f32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec2%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec2%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec3%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec3%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec4%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:type="vec4%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,asin:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="greater_then_one"]
+ expected: [PASS, FAIL]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="less_then_negative_one"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+ expected: FAIL
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,asin:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
[:stage="constant";type="f16"]
expected:
@@ -59,12 +118,13 @@
[:stage="constant";type="f32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
@@ -74,12 +134,13 @@
[:stage="constant";type="vec2%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
@@ -89,12 +150,13 @@
[:stage="constant";type="vec3%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
@@ -104,36 +166,55 @@
[:stage="constant";type="vec4%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:stage="override";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html.ini
index 56a78dfd76..2c73096064 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html.ini
@@ -20,10 +20,73 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,asinh:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+ expected: FAIL
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,asinh:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -35,6 +98,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -46,6 +112,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -57,42 +126,70 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html.ini
index 8654e2923a..d0a1ff5072 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html.ini
@@ -18,10 +18,73 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+ expected: FAIL
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +94,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +106,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +118,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -71,14 +143,24 @@
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini
index b3fb883008..e74bd270f3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini
@@ -1,110 +1,452 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:integer_argument_x:*]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:invalid_argument_x:*]
+ [:type="bool"]
+
[:type="f32"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[:type="i32"]
+ [:type="mat2x2%3Cf16%3E"]
+
+ [:type="mat2x2%3Cf32%3E"]
+
+ [:type="mat2x3%3Cf16%3E"]
+
+ [:type="mat2x3%3Cf32%3E"]
+
+ [:type="mat2x4%3Cf16%3E"]
+
+ [:type="mat2x4%3Cf32%3E"]
+
+ [:type="mat3x2%3Cf16%3E"]
+
+ [:type="mat3x2%3Cf32%3E"]
+
+ [:type="mat3x3%3Cf16%3E"]
+
+ [:type="mat3x3%3Cf32%3E"]
+
+ [:type="mat3x4%3Cf16%3E"]
+
+ [:type="mat3x4%3Cf32%3E"]
+
+ [:type="mat4x2%3Cf16%3E"]
+
+ [:type="mat4x2%3Cf32%3E"]
+
+ [:type="mat4x3%3Cf16%3E"]
+
+ [:type="mat4x3%3Cf32%3E"]
+
+ [:type="mat4x4%3Cf16%3E"]
+
+ [:type="mat4x4%3Cf32%3E"]
+
[:type="u32"]
+ [:type="vec2%3Cbool%3E"]
+
[:type="vec2%3Ci32%3E"]
[:type="vec2%3Cu32%3E"]
+ [:type="vec3%3Cbool%3E"]
+
[:type="vec3%3Ci32%3E"]
[:type="vec3%3Cu32%3E"]
+ [:type="vec4%3Cbool%3E"]
+
[:type="vec4%3Ci32%3E"]
[:type="vec4%3Cu32%3E"]
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:integer_argument_y:*]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:invalid_argument_y:*]
+ [:type="bool"]
+
[:type="f32"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[:type="i32"]
+ [:type="mat2x2%3Cf16%3E"]
+
+ [:type="mat2x2%3Cf32%3E"]
+
+ [:type="mat2x3%3Cf16%3E"]
+
+ [:type="mat2x3%3Cf32%3E"]
+
+ [:type="mat2x4%3Cf16%3E"]
+
+ [:type="mat2x4%3Cf32%3E"]
+
+ [:type="mat3x2%3Cf16%3E"]
+
+ [:type="mat3x2%3Cf32%3E"]
+
+ [:type="mat3x3%3Cf16%3E"]
+
+ [:type="mat3x3%3Cf32%3E"]
+
+ [:type="mat3x4%3Cf16%3E"]
+
+ [:type="mat3x4%3Cf32%3E"]
+
+ [:type="mat4x2%3Cf16%3E"]
+
+ [:type="mat4x2%3Cf32%3E"]
+
+ [:type="mat4x3%3Cf16%3E"]
+
+ [:type="mat4x3%3Cf32%3E"]
+
+ [:type="mat4x4%3Cf16%3E"]
+
+ [:type="mat4x4%3Cf32%3E"]
+
[:type="u32"]
+ [:type="vec2%3Cbool%3E"]
+
[:type="vec2%3Ci32%3E"]
[:type="vec2%3Cu32%3E"]
+ [:type="vec3%3Cbool%3E"]
+
[:type="vec3%3Ci32%3E"]
[:type="vec3%3Cu32%3E"]
+ [:type="vec4%3Cbool%3E"]
+
[:type="vec4%3Ci32%3E"]
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:parameters:*]
+ [:test="af"]
+
+ [:test="af_ai"]
+
+ [:test="af_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="af_f32"]
+
+ [:test="ai"]
+
+ [:test="ai_af"]
+
+ [:test="ai_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="ai_f32"]
+
+ [:test="array"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="array_runtime"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="atomic"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="bool_f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="enumerant"]
+
+ [:test="f16_af"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="f16_ai"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="f16_f32"]
+
+ [:test="f32_af"]
+
+ [:test="f32_ai"]
+
+ [:test="f32_bool"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="f32_i32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="f32_u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="f32_vec"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="i32_f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="matrix"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="mixed_types"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="mixed_types_2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="no_params"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="sampler"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="texture"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32_f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:test="vec_f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:values:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
[:stage="constant";type="abstract-float"]
expected: FAIL
[:stage="constant";type="f16"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec2%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec3%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="vec4%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:stage="override";type="f16"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html.ini
index 660c9d902c..dbda05c331 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html.ini
@@ -36,11 +36,117 @@
if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atanh:parameters:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="array_runtime"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="atomic"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="bool"]
+ expected: [PASS, FAIL]
+
+ [:test="enumerant"]
+
+ [:test="greater_then_one"]
+ expected: [PASS, FAIL]
+
+ [:test="i32"]
+ expected: [PASS, FAIL]
+
+ [:test="less_then_negative_one"]
+ expected: [PASS, FAIL]
+
+ [:test="matrix"]
+ expected: [PASS, FAIL]
+
+ [:test="negative_one"]
+ expected: [PASS, FAIL]
+
+ [:test="no_params"]
+
+ [:test="one"]
+ expected: [PASS, FAIL]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="sampler"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="struct"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="texture"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:test="too_many_params"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_i32"]
+ expected: [PASS, FAIL]
+
+ [:test="vec_u32"]
+ expected: [PASS, FAIL]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atanh:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win": [PASS, FAIL]
@@ -54,6 +160,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -67,6 +180,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -80,6 +200,13 @@
expected:
if os == "win" and not debug: [PASS, FAIL]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -100,23 +227,38 @@
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html.ini
index 52c29a58d1..6a05fbc8b6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html.ini
@@ -1,3 +1,106 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atomics:atomic_parameterization:*]
+ [:op="add"]
+ expected: FAIL
+
+ [:op="and"]
+ expected: FAIL
+
+ [:op="compareexchangeweak"]
+ expected: FAIL
+
+ [:op="exchange"]
+ expected: FAIL
+
+ [:op="load"]
+ expected: FAIL
+
+ [:op="max"]
+ expected: FAIL
+
+ [:op="min"]
+ expected: FAIL
+
+ [:op="or"]
+ expected: FAIL
+
+ [:op="store"]
+ expected: FAIL
+
+ [:op="sub"]
+ expected: FAIL
+
+ [:op="xor"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atomics:data_parameters:*]
+ [:op="atomicAdd"]
+ expected: FAIL
+
+ [:op="atomicAnd"]
+ expected: FAIL
+
+ [:op="atomicCompareExchangeWeak1"]
+ expected: FAIL
+
+ [:op="atomicCompareExchangeWeak2"]
+ expected: FAIL
+
+ [:op="atomicExchange"]
+ expected: FAIL
+
+ [:op="atomicMax"]
+ expected: FAIL
+
+ [:op="atomicMin"]
+ expected: FAIL
+
+ [:op="atomicOr"]
+ expected: FAIL
+
+ [:op="atomicStore"]
+ expected: FAIL
+
+ [:op="atomicSub"]
+ expected: FAIL
+
+ [:op="atomicXor"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atomics:return_types:*]
+ [:op="add"]
+ expected: FAIL
+
+ [:op="and"]
+ expected: FAIL
+
+ [:op="compareexchangeweak"]
+ expected: FAIL
+
+ [:op="exchange"]
+ expected: FAIL
+
+ [:op="load"]
+
+ [:op="max"]
+ expected: FAIL
+
+ [:op="min"]
+ expected: FAIL
+
+ [:op="or"]
+ expected: FAIL
+
+ [:op="store"]
+
+ [:op="sub"]
+ expected: FAIL
+
+ [:op="xor"]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atomics:stage:*]
[:stage="compute";atomicOp="add"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini
new file mode 100644
index 0000000000..b8a46a9fd0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini
@@ -0,0 +1,70 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,barriers:no_return_value:*]
+ expected:
+ if os == "mac": SKIP
+ [:assign=false;rhs="bar"]
+
+ [:assign=false;rhs="storageBarrier"]
+
+ [:assign=false;rhs="textureBarrier"]
+
+ [:assign=false;rhs="workgroupBarrier"]
+
+ [:assign=true;rhs="bar"]
+
+ [:assign=true;rhs="storageBarrier"]
+
+ [:assign=true;rhs="textureBarrier"]
+
+ [:assign=true;rhs="workgroupBarrier"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,barriers:only_in_compute:*]
+ expected:
+ if os == "mac": SKIP
+ [:entry_point="compute";call="bar"]
+
+ [:entry_point="compute";call="storageBarrier"]
+
+ [:entry_point="compute";call="textureBarrier"]
+
+ [:entry_point="compute";call="workgroupBarrier"]
+
+ [:entry_point="compute_and_fragment";call="bar"]
+
+ [:entry_point="compute_and_fragment";call="storageBarrier"]
+
+ [:entry_point="compute_and_fragment";call="textureBarrier"]
+
+ [:entry_point="compute_and_fragment";call="workgroupBarrier"]
+
+ [:entry_point="fragment";call="bar"]
+
+ [:entry_point="fragment";call="storageBarrier"]
+
+ [:entry_point="fragment";call="textureBarrier"]
+
+ [:entry_point="fragment";call="workgroupBarrier"]
+
+ [:entry_point="fragment_without_call";call="bar"]
+
+ [:entry_point="fragment_without_call";call="storageBarrier"]
+
+ [:entry_point="fragment_without_call";call="textureBarrier"]
+
+ [:entry_point="fragment_without_call";call="workgroupBarrier"]
+
+ [:entry_point="none";call="bar"]
+
+ [:entry_point="none";call="storageBarrier"]
+
+ [:entry_point="none";call="textureBarrier"]
+
+ [:entry_point="none";call="workgroupBarrier"]
+
+ [:entry_point="vertex";call="bar"]
+
+ [:entry_point="vertex";call="storageBarrier"]
+
+ [:entry_point="vertex";call="textureBarrier"]
+
+ [:entry_point="vertex";call="workgroupBarrier"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/ceil/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/ceil/cts.https.html.ini
index fff23116a1..bd03a7b1c6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/ceil/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/ceil/cts.https.html.ini
@@ -20,9 +20,14 @@
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,ceil:values:*]
expected:
- if os == "win" and not debug: TIMEOUT
- if os == "linux" and not debug: TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "mac" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="abstract-float";value="_negzero_"]
[:stage="constant";type="abstract-float";value=-1.0243422545120516e%2B211]
@@ -145,6 +150,18 @@
[:stage="constant";type="abstract-float";value=8.922852101599196e%2B48]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="f16";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -405,6 +422,8 @@
if os == "win" and debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:stage="constant";type="f32"]
+
[:stage="constant";type="f32";value="_negzero_"]
[:stage="constant";type="f32";value=-0.0000018571550981505425]
@@ -509,6 +528,13 @@
[:stage="constant";type="f32";value=8.816206229868692e-39]
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec2%3Cabstract-float%3E";value="_negzero_"]
[:stage="constant";type="vec2%3Cabstract-float%3E";value=-1.0243422545120516e%2B211]
@@ -631,6 +657,18 @@
[:stage="constant";type="vec2%3Cabstract-float%3E";value=8.922852101599196e%2B48]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -897,6 +935,8 @@
if os == "win" and debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
[:stage="constant";type="vec2%3Cf32%3E";value="_negzero_"]
[:stage="constant";type="vec2%3Cf32%3E";value=-0.0000018571550981505425]
@@ -1001,6 +1041,13 @@
[:stage="constant";type="vec2%3Cf32%3E";value=8.816206229868692e-39]
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec3%3Cabstract-float%3E";value="_negzero_"]
expected:
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -1263,6 +1310,18 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -1575,6 +1634,8 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
[:stage="constant";type="vec3%3Cf32%3E";value="_negzero_"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -1783,6 +1844,13 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec4%3Cabstract-float%3E";value="_negzero_"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2045,6 +2113,18 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -2357,6 +2437,8 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
[:stage="constant";type="vec4%3Cf32%3E";value="_negzero_"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -2565,6 +2647,11 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="f16";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -2877,6 +2964,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="f32";value="_negzero_"]
expected:
if os == "win": FAIL
@@ -3241,6 +3335,11 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec2%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -3553,6 +3652,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec2%3Cf32%3E";value="_negzero_"]
expected:
if os == "win": FAIL
@@ -3917,6 +4023,11 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec3%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -4281,6 +4392,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec3%3Cf32%3E";value="_negzero_"]
expected:
if os == "win": FAIL
@@ -4690,6 +4808,11 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec4%3Cf16%3E";value="_negzero_"]
expected:
if os == "win" and debug: [PASS, FAIL]
@@ -5057,6 +5180,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
[:stage="override";type="vec4%3Cf32%3E";value="_negzero_"]
expected:
if os == "win" and debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini
index b6a464821d..81d523dd71 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini
@@ -1,110 +1,209 @@
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,clamp:values:*]
- expected:
- if os == "linux" and not debug: [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="constant";type="f16"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec2%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="constant";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec3%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec4%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:stage="override";type="f16"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="i32"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="u32"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec2%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec2%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec2%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec3%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec3%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec3%3Cu32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Cf16%3E"]
expected:
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Ci32%3E"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Cu32%3E"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html.ini
index c0c8a40a36..4e2ec42647 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cos:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cos:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,20 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cos:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cos:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -32,6 +64,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -42,6 +77,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -52,6 +90,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html.ini
index 5b5eff9c4e..7818ba35f0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html.ini
@@ -1,26 +1,50 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cosh:integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cosh:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
+ [:arg="bad_0array"]
- [:type="u32"]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cosh:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cosh:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -29,6 +53,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -37,6 +64,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -45,6 +75,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -74,7 +107,12 @@
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html.ini
new file mode 100644
index 0000000000..dcaeeca2c5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html.ini
@@ -0,0 +1,114 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:float_argument:*]
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:values:*]
+ [:stage="constant";type="i32"]
+
+ [:stage="constant";type="u32"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+
+ [:stage="override";type="i32"]
+ expected: FAIL
+
+ [:stage="override";type="u32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html.ini
new file mode 100644
index 0000000000..ba2a2a5633
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html.ini
@@ -0,0 +1,114 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countOneBits:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countOneBits:float_argument:*]
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countOneBits:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countOneBits:values:*]
+ [:stage="constant";type="i32"]
+
+ [:stage="constant";type="u32"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+
+ [:stage="override";type="i32"]
+ expected: FAIL
+
+ [:stage="override";type="u32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html.ini
new file mode 100644
index 0000000000..c376b779b1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html.ini
@@ -0,0 +1,169 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:float_argument:*]
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:values:*]
+ [:stage="constant";type="i32"]
+
+ [:stage="constant";type="u32"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html.ini
new file mode 100644
index 0000000000..0cf6b26284
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html.ini
@@ -0,0 +1,56 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cross:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="bad_vec2"]
+
+ [:arg="bad_vec4"]
+
+ [:arg="good"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cross:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,cross:values:*]
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html.ini
index a3fe16cd53..78c5c6b20b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,degrees:args:*]
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="bad_too_few"]
+
+ [:arg="bad_too_many"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,degrees:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,20 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,degrees:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,degrees:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +63,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +75,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +87,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini
new file mode 100644
index 0000000000..4489ffc16b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini
@@ -0,0 +1,626 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,derivatives:invalid_argument_types:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:type="f16";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f16";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="f32";call=""]
+
+ [:type="f32";call="dpdx"]
+
+ [:type="f32";call="dpdxCoarse"]
+
+ [:type="f32";call="dpdxFine"]
+
+ [:type="f32";call="dpdy"]
+
+ [:type="f32";call="dpdyCoarse"]
+
+ [:type="f32";call="dpdyFine"]
+
+ [:type="f32";call="fwidth"]
+
+ [:type="f32";call="fwidthCoarse"]
+
+ [:type="f32";call="fwidthFine"]
+
+ [:type="i32";call=""]
+
+ [:type="i32";call="dpdx"]
+
+ [:type="i32";call="dpdxCoarse"]
+
+ [:type="i32";call="dpdxFine"]
+
+ [:type="i32";call="dpdy"]
+
+ [:type="i32";call="dpdyCoarse"]
+
+ [:type="i32";call="dpdyFine"]
+
+ [:type="i32";call="fwidth"]
+
+ [:type="i32";call="fwidthCoarse"]
+
+ [:type="i32";call="fwidthFine"]
+
+ [:type="mat2x2%3Cf32%3E";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="mat2x2%3Cf32%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="u32";call=""]
+
+ [:type="u32";call="dpdx"]
+
+ [:type="u32";call="dpdxCoarse"]
+
+ [:type="u32";call="dpdxFine"]
+
+ [:type="u32";call="dpdy"]
+
+ [:type="u32";call="dpdyCoarse"]
+
+ [:type="u32";call="dpdyFine"]
+
+ [:type="u32";call="fwidth"]
+
+ [:type="u32";call="fwidthCoarse"]
+
+ [:type="u32";call="fwidthFine"]
+
+ [:type="vec2%3Cf16%3E";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Cf16%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec2%3Ci32%3E";call=""]
+
+ [:type="vec2%3Ci32%3E";call="dpdx"]
+
+ [:type="vec2%3Ci32%3E";call="dpdxCoarse"]
+
+ [:type="vec2%3Ci32%3E";call="dpdxFine"]
+
+ [:type="vec2%3Ci32%3E";call="dpdy"]
+
+ [:type="vec2%3Ci32%3E";call="dpdyCoarse"]
+
+ [:type="vec2%3Ci32%3E";call="dpdyFine"]
+
+ [:type="vec2%3Ci32%3E";call="fwidth"]
+
+ [:type="vec2%3Ci32%3E";call="fwidthCoarse"]
+
+ [:type="vec2%3Ci32%3E";call="fwidthFine"]
+
+ [:type="vec2%3Cu32%3E";call=""]
+
+ [:type="vec2%3Cu32%3E";call="dpdx"]
+
+ [:type="vec2%3Cu32%3E";call="dpdxCoarse"]
+
+ [:type="vec2%3Cu32%3E";call="dpdxFine"]
+
+ [:type="vec2%3Cu32%3E";call="dpdy"]
+
+ [:type="vec2%3Cu32%3E";call="dpdyCoarse"]
+
+ [:type="vec2%3Cu32%3E";call="dpdyFine"]
+
+ [:type="vec2%3Cu32%3E";call="fwidth"]
+
+ [:type="vec2%3Cu32%3E";call="fwidthCoarse"]
+
+ [:type="vec2%3Cu32%3E";call="fwidthFine"]
+
+ [:type="vec3%3Cf16%3E";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cf16%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Ci32%3E";call=""]
+
+ [:type="vec3%3Ci32%3E";call="dpdx"]
+
+ [:type="vec3%3Ci32%3E";call="dpdxCoarse"]
+
+ [:type="vec3%3Ci32%3E";call="dpdxFine"]
+
+ [:type="vec3%3Ci32%3E";call="dpdy"]
+
+ [:type="vec3%3Ci32%3E";call="dpdyCoarse"]
+
+ [:type="vec3%3Ci32%3E";call="dpdyFine"]
+
+ [:type="vec3%3Ci32%3E";call="fwidth"]
+
+ [:type="vec3%3Ci32%3E";call="fwidthCoarse"]
+
+ [:type="vec3%3Ci32%3E";call="fwidthFine"]
+
+ [:type="vec3%3Cu32%3E";call=""]
+
+ [:type="vec3%3Cu32%3E";call="dpdx"]
+
+ [:type="vec3%3Cu32%3E";call="dpdxCoarse"]
+
+ [:type="vec3%3Cu32%3E";call="dpdxFine"]
+
+ [:type="vec3%3Cu32%3E";call="dpdy"]
+
+ [:type="vec3%3Cu32%3E";call="dpdyCoarse"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cu32%3E";call="dpdyFine"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cu32%3E";call="fwidth"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cu32%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec3%3Cu32%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cf16%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Ci32%3E";call=""]
+
+ [:type="vec4%3Ci32%3E";call="dpdx"]
+
+ [:type="vec4%3Ci32%3E";call="dpdxCoarse"]
+
+ [:type="vec4%3Ci32%3E";call="dpdxFine"]
+
+ [:type="vec4%3Ci32%3E";call="dpdy"]
+
+ [:type="vec4%3Ci32%3E";call="dpdyCoarse"]
+
+ [:type="vec4%3Ci32%3E";call="dpdyFine"]
+
+ [:type="vec4%3Ci32%3E";call="fwidth"]
+
+ [:type="vec4%3Ci32%3E";call="fwidthCoarse"]
+
+ [:type="vec4%3Ci32%3E";call="fwidthFine"]
+
+ [:type="vec4%3Cu32%3E";call=""]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdx"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdxCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdxFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdy"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdyCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="dpdyFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="fwidth"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="fwidthCoarse"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type="vec4%3Cu32%3E";call="fwidthFine"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,derivatives:only_in_fragment:*]
+ [:entry_point="compute";call="bar"]
+
+ [:entry_point="compute";call="dpdx"]
+ expected: FAIL
+
+ [:entry_point="compute";call="dpdxCoarse"]
+ expected: FAIL
+
+ [:entry_point="compute";call="dpdxFine"]
+ expected: FAIL
+
+ [:entry_point="compute";call="dpdy"]
+ expected: FAIL
+
+ [:entry_point="compute";call="dpdyCoarse"]
+ expected: FAIL
+
+ [:entry_point="compute";call="dpdyFine"]
+ expected: FAIL
+
+ [:entry_point="compute";call="fwidth"]
+ expected: FAIL
+
+ [:entry_point="compute";call="fwidthCoarse"]
+ expected: FAIL
+
+ [:entry_point="compute";call="fwidthFine"]
+ expected: FAIL
+
+ [:entry_point="compute_without_call";call="bar"]
+
+ [:entry_point="compute_without_call";call="dpdx"]
+
+ [:entry_point="compute_without_call";call="dpdxCoarse"]
+
+ [:entry_point="compute_without_call";call="dpdxFine"]
+
+ [:entry_point="compute_without_call";call="dpdy"]
+
+ [:entry_point="compute_without_call";call="dpdyCoarse"]
+
+ [:entry_point="compute_without_call";call="dpdyFine"]
+
+ [:entry_point="compute_without_call";call="fwidth"]
+
+ [:entry_point="compute_without_call";call="fwidthCoarse"]
+
+ [:entry_point="compute_without_call";call="fwidthFine"]
+
+ [:entry_point="fragment";call="bar"]
+
+ [:entry_point="fragment";call="dpdx"]
+
+ [:entry_point="fragment";call="dpdxCoarse"]
+
+ [:entry_point="fragment";call="dpdxFine"]
+
+ [:entry_point="fragment";call="dpdy"]
+
+ [:entry_point="fragment";call="dpdyCoarse"]
+
+ [:entry_point="fragment";call="dpdyFine"]
+
+ [:entry_point="fragment";call="fwidth"]
+
+ [:entry_point="fragment";call="fwidthCoarse"]
+
+ [:entry_point="fragment";call="fwidthFine"]
+
+ [:entry_point="fragment_and_compute";call="bar"]
+
+ [:entry_point="fragment_and_compute";call="dpdx"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="dpdxCoarse"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="dpdxFine"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="dpdy"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="dpdyCoarse"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="dpdyFine"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="fwidth"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="fwidthCoarse"]
+ expected: FAIL
+
+ [:entry_point="fragment_and_compute";call="fwidthFine"]
+ expected: FAIL
+
+ [:entry_point="none";call="bar"]
+
+ [:entry_point="none";call="dpdx"]
+
+ [:entry_point="none";call="dpdxCoarse"]
+
+ [:entry_point="none";call="dpdxFine"]
+
+ [:entry_point="none";call="dpdy"]
+
+ [:entry_point="none";call="dpdyCoarse"]
+
+ [:entry_point="none";call="dpdyFine"]
+
+ [:entry_point="none";call="fwidth"]
+
+ [:entry_point="none";call="fwidthCoarse"]
+
+ [:entry_point="none";call="fwidthFine"]
+
+ [:entry_point="vertex";call="bar"]
+
+ [:entry_point="vertex";call="dpdx"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="dpdxCoarse"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="dpdxFine"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="dpdy"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="dpdyCoarse"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="dpdyFine"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="fwidth"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="fwidthCoarse"]
+ expected: FAIL
+
+ [:entry_point="vertex";call="fwidthFine"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html.ini
new file mode 100644
index 0000000000..cd1545a100
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html.ini
@@ -0,0 +1,161 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,determinant:args:*]
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="bad_too_few"]
+
+ [:arg="bad_too_many"]
+
+ [:arg="good"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,determinant:matrix_args:*]
+ [:cols=2;rows=2;type="abstract-float"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=2;rows=2;type="abstract-int"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=2;rows=2;type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:cols=2;rows=2;type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=2;rows=3;type="abstract-float"]
+
+ [:cols=2;rows=3;type="abstract-int"]
+
+ [:cols=2;rows=3;type="f16"]
+
+ [:cols=2;rows=3;type="f32"]
+
+ [:cols=2;rows=4;type="abstract-float"]
+
+ [:cols=2;rows=4;type="abstract-int"]
+
+ [:cols=2;rows=4;type="f16"]
+
+ [:cols=2;rows=4;type="f32"]
+
+ [:cols=3;rows=2;type="abstract-float"]
+
+ [:cols=3;rows=2;type="abstract-int"]
+
+ [:cols=3;rows=2;type="f16"]
+
+ [:cols=3;rows=2;type="f32"]
+
+ [:cols=3;rows=3;type="abstract-float"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=3;rows=3;type="abstract-int"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=3;rows=3;type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:cols=3;rows=3;type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=3;rows=4;type="abstract-float"]
+
+ [:cols=3;rows=4;type="abstract-int"]
+
+ [:cols=3;rows=4;type="f16"]
+
+ [:cols=3;rows=4;type="f32"]
+
+ [:cols=4;rows=2;type="abstract-float"]
+
+ [:cols=4;rows=2;type="abstract-int"]
+
+ [:cols=4;rows=2;type="f16"]
+
+ [:cols=4;rows=2;type="f32"]
+
+ [:cols=4;rows=3;type="abstract-float"]
+
+ [:cols=4;rows=3;type="abstract-int"]
+
+ [:cols=4;rows=3;type="f16"]
+
+ [:cols=4;rows=3;type="f32"]
+
+ [:cols=4;rows=4;type="abstract-float"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=4;rows=4;type="abstract-int"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:cols=4;rows=4;type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:cols=4;rows=4;type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,determinant:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:use=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini
new file mode 100644
index 0000000000..f8e7ece3a2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini
@@ -0,0 +1,225 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,distance:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1int"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_1uint"]
+
+ [:arg="bad_1vec2i"]
+
+ [:arg="bad_1vec2u"]
+
+ [:arg="bad_1vec3i"]
+
+ [:arg="bad_1vec3u"]
+
+ [:arg="bad_1vec4i"]
+
+ [:arg="bad_1vec4u"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,distance:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,distance:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html.ini
new file mode 100644
index 0000000000..4bf17dde69
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html.ini
@@ -0,0 +1,50 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_1args"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1f32"]
+
+ [:arg="bad_1i32"]
+
+ [:arg="bad_1vec2u"]
+
+ [:arg="bad_3args"]
+
+ [:arg="bad_bool2_bool2"]
+
+ [:arg="bad_bool_bool"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:must_use:*]
+ [:use=false]
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html.ini
new file mode 100644
index 0000000000..f7c6424713
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html.ini
@@ -0,0 +1,50 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_1args"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1f32"]
+
+ [:arg="bad_1i32"]
+
+ [:arg="bad_1vec2u"]
+
+ [:arg="bad_3args"]
+
+ [:arg="bad_bool2_bool2"]
+
+ [:arg="bad_bool_bool"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:must_use:*]
+ [:use=false]
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html.ini
index 707c3169b5..03079ed61a 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html.ini
@@ -1,27 +1,57 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp:integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
+ [:arg="bad_0array"]
- [:type="u32"]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win": [PASS, FAIL]
@@ -32,6 +62,13 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -42,6 +79,13 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -52,6 +96,13 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html.ini
index 5ba48ce200..7b4b42f233 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html.ini
@@ -1,27 +1,49 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp2:integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp2:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
+ [:arg="bad_0array"]
- [:type="u32"]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp2:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,exp2:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +53,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +65,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +77,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini
new file mode 100644
index 0000000000..4155f47613
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini
@@ -0,0 +1,245 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,extractBits:count_offset:*]
+ [:stage="constant"]
+ expected: FAIL
+
+ [:stage="override"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,extractBits:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,extractBits:typed_arguments:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ [:input="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="alias"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="array_runtime"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="atomic"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="enumerant"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="mat2x2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="ptr"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="ptr_deref"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="sampler"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:input="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:input="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec_bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,extractBits:values:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ [:stage="constant";type="i32"]
+ expected: FAIL
+
+ [:stage="constant";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini
new file mode 100644
index 0000000000..46ceb1bbf3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini
@@ -0,0 +1,208 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,faceForward:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1int"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_1uint"]
+
+ [:arg="bad_1vec2i"]
+
+ [:arg="bad_1vec2u"]
+
+ [:arg="bad_1vec3i"]
+
+ [:arg="bad_1vec3u"]
+
+ [:arg="bad_1vec4i"]
+
+ [:arg="bad_1vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_2array"]
+
+ [:arg="bad_2bool"]
+
+ [:arg="bad_2int"]
+
+ [:arg="bad_2struct"]
+
+ [:arg="bad_2uint"]
+
+ [:arg="bad_2vec2i"]
+
+ [:arg="bad_2vec2u"]
+
+ [:arg="bad_2vec3i"]
+
+ [:arg="bad_2vec3u"]
+
+ [:arg="bad_2vec4i"]
+
+ [:arg="bad_2vec4u"]
+
+ [:arg="bad_4arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,faceForward:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,faceForward:values:*]
+ expected: [OK, TIMEOUT]
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini
new file mode 100644
index 0000000000..628b560a2a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini
@@ -0,0 +1,173 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:arguments:*]
+ expected:
+ if os == "mac": SKIP
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected:
+ if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:float_argument:*]
+ expected:
+ if os == "mac": SKIP
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:must_use:*]
+ expected:
+ if os == "mac": SKIP
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:values:*]
+ expected:
+ if os == "mac": SKIP
+ [:stage="constant";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html.ini
new file mode 100644
index 0000000000..f09ec82f0b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html.ini
@@ -0,0 +1,123 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:float_argument:*]
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:values:*]
+ [:stage="constant";type="i32"]
+ expected: FAIL
+
+ [:stage="constant";type="u32"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="i32"]
+ expected: FAIL
+
+ [:stage="override";type="u32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html.ini
new file mode 100644
index 0000000000..8c3578c499
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html.ini
@@ -0,0 +1,189 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,floor:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,floor:integer_argument:*]
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,floor:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,floor:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini
new file mode 100644
index 0000000000..4064375b00
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini
@@ -0,0 +1,137 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,fract:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,fract:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,fract:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html.ini
new file mode 100644
index 0000000000..4e2ab8216a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html.ini
@@ -0,0 +1,137 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,frexp:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,frexp:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,frexp:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini
new file mode 100644
index 0000000000..a17a3ac736
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini
@@ -0,0 +1,377 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,insertBits:count_offset:*]
+ [:stage="constant"]
+ expected: FAIL
+
+ [:stage="override"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,insertBits:mismatched:*]
+ [:arg0="i32";arg1="i32"]
+ expected: FAIL
+
+ [:arg0="i32";arg1="u32"]
+
+ [:arg0="i32";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="i32";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="i32";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="i32";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="i32";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="i32";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="u32";arg1="i32"]
+
+ [:arg0="u32";arg1="u32"]
+ expected: FAIL
+
+ [:arg0="u32";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="u32";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="u32";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="u32";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="u32";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="u32";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="i32"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="u32"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="vec2%3Ci32%3E";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="i32"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="u32"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="vec2%3Cu32%3E";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="i32"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="u32"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="vec3%3Ci32%3E";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="i32"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="u32"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="vec3%3Cu32%3E";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="i32"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="u32"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:arg0="vec4%3Ci32%3E";arg1="vec4%3Cu32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="i32"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="u32"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec2%3Ci32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec2%3Cu32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec3%3Ci32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec3%3Cu32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec4%3Ci32%3E"]
+
+ [:arg0="vec4%3Cu32%3E";arg1="vec4%3Cu32%3E"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,insertBits:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,insertBits:typed_arguments:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ [:input="abstract-float"]
+
+ [:input="alias"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="array_runtime"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="atomic"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="enumerant"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="mat2x2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="ptr"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="ptr_deref"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:input="sampler"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:input="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="texture"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:input="u32"]
+ expected: FAIL
+
+ [:input="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:input="vec_bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,insertBits:values:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ [:stage="constant";type="i32"]
+ expected: FAIL
+
+ [:stage="constant";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html.ini
index 7e60a0698d..0aa96b0332 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html.ini
@@ -1,45 +1,51 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:integer_argument:*]
- [:type="f32"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0array"]
- [:type="u32"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -52,6 +58,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -64,6 +73,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -76,6 +88,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -88,31 +103,51 @@
[:stage="override";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini
index 62f4631739..670ca131b3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini
@@ -39,6 +39,13 @@
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win": [PASS, FAIL]
@@ -60,6 +67,13 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -78,54 +92,81 @@
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,length:vec3:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
[:stage="constant";type="vec3%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,length:vec4:*]
- expected:
- if os == "linux": [OK, TIMEOUT]
+ expected: [OK, TIMEOUT]
[:stage="constant";type="vec4%3Cabstract-float%3E"]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
- [:stage="constant";type="vec4%3Cf16%3E"]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
- [:stage="constant";type="vec4%3Cf32%3E"]
+ [:stage="constant";type="vec4%3Cf16%3E"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Cf16%3E"]
expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="override";type="vec4%3Cf32%3E"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html.ini
index 5d65858eef..6f49c094b1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,26 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log:must_use:*]
+ [:use=false]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -32,6 +70,11 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -42,6 +85,11 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -52,6 +100,11 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if debug: [PASS, FAIL]
+ if not debug: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -70,23 +123,38 @@
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html.ini
index 2938257dd7..86e429d8e1 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log2:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log2:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,22 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log2:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,log2:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +65,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +77,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,36 +89,62 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="override";type="f16"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html.ini
new file mode 100644
index 0000000000..71a857f28e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html.ini
@@ -0,0 +1,217 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,max:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,max:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,max:values:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini
new file mode 100644
index 0000000000..594f6f4701
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini
@@ -0,0 +1,259 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,min:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,min:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,min:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini
index e2d483ca9e..110c2402fe 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini
@@ -20,9 +20,14 @@
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,modf:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -33,6 +38,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -43,6 +51,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -53,6 +64,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -76,14 +90,24 @@
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html.ini
new file mode 100644
index 0000000000..9d55299955
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html.ini
@@ -0,0 +1,136 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,normalize:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,normalize:invalid_argument:*]
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,normalize:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,normalize:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html.ini
new file mode 100644
index 0000000000..ce3d8f227e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html.ini
@@ -0,0 +1,56 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_abstract_float"]
+
+ [:arg="bad_abstract_int"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_u32"]
+
+ [:arg="bad_vec3f"]
+
+ [:arg="bad_vec4b"]
+
+ [:arg="bad_vec4f"]
+
+ [:arg="bad_vec4i"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good"]
+ expected: FAIL
+
+ [:arg="good_vec2_abstract_float"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:return:*]
+ [:type="bool"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html.ini
new file mode 100644
index 0000000000..1a0fafee93
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html.ini
@@ -0,0 +1,56 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_abstract_float"]
+
+ [:arg="bad_abstract_int"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_u32"]
+
+ [:arg="bad_vec3f"]
+
+ [:arg="bad_vec4b"]
+
+ [:arg="bad_vec4f"]
+
+ [:arg="bad_vec4i"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good"]
+ expected: FAIL
+
+ [:arg="good_vec2_abstract_float"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:return:*]
+ [:type="bool"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html.ini
new file mode 100644
index 0000000000..4aacc16028
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html.ini
@@ -0,0 +1,56 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_abstract_float"]
+
+ [:arg="bad_abstract_int"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_u32"]
+
+ [:arg="bad_vec2f"]
+
+ [:arg="bad_vec3f"]
+
+ [:arg="bad_vec4b"]
+
+ [:arg="bad_vec4i"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good"]
+ expected: FAIL
+
+ [:arg="good_vec4_abstract_float"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:return:*]
+ [:type="bool"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html.ini
new file mode 100644
index 0000000000..e253ba4e2a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html.ini
@@ -0,0 +1,56 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_abstract_float"]
+
+ [:arg="bad_abstract_int"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_u32"]
+
+ [:arg="bad_vec2f"]
+
+ [:arg="bad_vec3f"]
+
+ [:arg="bad_vec4b"]
+
+ [:arg="bad_vec4i"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good"]
+ expected: FAIL
+
+ [:arg="good_vec4_abstract_float"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:return:*]
+ [:type="bool"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+ expected: FAIL
+
+ [:type="vec2u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html.ini
new file mode 100644
index 0000000000..cec5470ad1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html.ini
@@ -0,0 +1,45 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec4b"]
+
+ [:arg="bad_0vec4f"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:must_use:*]
+ [:use=false]
+
+ [:use=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini
new file mode 100644
index 0000000000..f4f6e913c1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html.ini
@@ -0,0 +1,45 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec4b"]
+
+ [:arg="bad_0vec4f"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:must_use:*]
+ [:use=false]
+
+ [:use=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini
new file mode 100644
index 0000000000..ab2c455400
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini
@@ -0,0 +1,55 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:args:*]
+ expected:
+ if os == "mac": SKIP
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4b"]
+
+ [:arg="bad_0vec4f"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:must_use:*]
+ expected:
+ if os == "mac": SKIP
+ [:use=false]
+
+ [:use=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:supported:*]
+ expected:
+ if os == "mac": SKIP
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:unsupported:*]
+ expected:
+ if os == "mac": SKIP
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini
new file mode 100644
index 0000000000..c2aeeda9c5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html.ini
@@ -0,0 +1,45 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4b"]
+
+ [:arg="bad_0vec4f"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:must_use:*]
+ [:use=false]
+
+ [:use=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html.ini
new file mode 100644
index 0000000000..b962a67f14
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html.ini
@@ -0,0 +1,154 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f16"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2h"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3h"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4h"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:must_use:*]
+ [:use=false]
+
+ [:use=true]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:values:*]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html.ini
index 5f03e8dde3..bd357705c8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,radians:args:*]
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="bad_too_few"]
+
+ [:arg="bad_too_many"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,radians:integer_argument:*]
[:type="f32"]
expected:
@@ -36,10 +58,28 @@
if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,radians:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,radians:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -52,6 +92,13 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -64,6 +111,13 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -76,6 +130,13 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html.ini
new file mode 100644
index 0000000000..a6041fafc5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html.ini
@@ -0,0 +1,127 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reflect:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reflect:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reflect:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html.ini
new file mode 100644
index 0000000000..5c4f190600
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html.ini
@@ -0,0 +1,114 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reverseBits:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+
+ [:test="array_runtime"]
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="matrix"]
+
+ [:test="no_parens"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+
+ [:test="struct"]
+
+ [:test="texture"]
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reverseBits:float_argument:*]
+ [:type="abstract-float"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reverseBits:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,reverseBits:values:*]
+ [:stage="constant";type="i32"]
+
+ [:stage="constant";type="u32"]
+
+ [:stage="constant";type="vec2%3Ci32%3E"]
+
+ [:stage="constant";type="vec2%3Cu32%3E"]
+
+ [:stage="constant";type="vec3%3Ci32%3E"]
+
+ [:stage="constant";type="vec3%3Cu32%3E"]
+
+ [:stage="constant";type="vec4%3Ci32%3E"]
+
+ [:stage="constant";type="vec4%3Cu32%3E"]
+
+ [:stage="override";type="i32"]
+ expected: FAIL
+
+ [:stage="override";type="u32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/round/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/round/cts.https.html.ini
index feac67fdef..ba29b02e2b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/round/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/round/cts.https.html.ini
@@ -1,86 +1,88 @@
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,round:integer_argument:*]
[:type="f32"]
- expected:
- if os == "mac": FAIL
[:type="i32"]
- expected:
- if os == "mac": FAIL
[:type="u32"]
- expected:
- if os == "mac": FAIL
[:type="vec2%3Ci32%3E"]
- expected:
- if os == "mac": FAIL
[:type="vec2%3Cu32%3E"]
- expected:
- if os == "mac": FAIL
[:type="vec3%3Ci32%3E"]
- expected:
- if os == "mac": FAIL
[:type="vec3%3Cu32%3E"]
- expected:
- if os == "mac": FAIL
[:type="vec4%3Ci32%3E"]
- expected:
- if os == "mac": FAIL
[:type="vec4%3Cu32%3E"]
- expected:
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,round:values:*]
[:stage="constant";type="abstract-float"]
expected: FAIL
- [:stage="constant";type="f16"]
+ [:stage="constant";type="abstract-int"]
expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
- [:stage="constant";type="f32"]
+ [:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
+ [:stage="constant";type="f32"]
+
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
- [:stage="constant";type="vec2%3Cf16%3E"]
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
- [:stage="constant";type="vec2%3Cf32%3E"]
+ [:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
- [:stage="constant";type="vec3%3Cf16%3E"]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
- [:stage="constant";type="vec3%3Cf32%3E"]
+ [:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
- [:stage="constant";type="vec4%3Cf16%3E"]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
if os == "mac": FAIL
- [:stage="constant";type="vec4%3Cf32%3E"]
+ [:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
[:stage="override";type="f16"]
expected:
if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/saturate/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/saturate/cts.https.html.ini
index 32b164abd7..e0c6105fe0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/saturate/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/saturate/cts.https.html.ini
@@ -22,6 +22,9 @@
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -32,6 +35,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -42,6 +48,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -52,6 +61,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini
new file mode 100644
index 0000000000..7ca751c168
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini
@@ -0,0 +1,4687 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,select:argument_types_1_and_2:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:type1="abstract-float";type2="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="f32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-float";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="f32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="i32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="u32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="abstract-int";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="bool";type2="abstract-float"]
+
+ [:type1="bool";type2="abstract-int"]
+
+ [:type1="bool";type2="bool"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type1="bool";type2="f16"]
+
+ [:type1="bool";type2="f32"]
+
+ [:type1="bool";type2="i32"]
+
+ [:type1="bool";type2="u32"]
+
+ [:type1="bool";type2="vec2%3Cabstract-float%3E"]
+
+ [:type1="bool";type2="vec2%3Cabstract-int%3E"]
+
+ [:type1="bool";type2="vec2%3Cbool%3E"]
+
+ [:type1="bool";type2="vec2%3Cf16%3E"]
+
+ [:type1="bool";type2="vec2%3Cf32%3E"]
+
+ [:type1="bool";type2="vec2%3Ci32%3E"]
+
+ [:type1="bool";type2="vec2%3Cu32%3E"]
+
+ [:type1="bool";type2="vec3%3Cabstract-float%3E"]
+
+ [:type1="bool";type2="vec3%3Cabstract-int%3E"]
+
+ [:type1="bool";type2="vec3%3Cbool%3E"]
+
+ [:type1="bool";type2="vec3%3Cf16%3E"]
+
+ [:type1="bool";type2="vec3%3Cf32%3E"]
+
+ [:type1="bool";type2="vec3%3Ci32%3E"]
+
+ [:type1="bool";type2="vec3%3Cu32%3E"]
+
+ [:type1="bool";type2="vec4%3Cabstract-float%3E"]
+
+ [:type1="bool";type2="vec4%3Cabstract-int%3E"]
+
+ [:type1="bool";type2="vec4%3Cbool%3E"]
+
+ [:type1="bool";type2="vec4%3Cf16%3E"]
+
+ [:type1="bool";type2="vec4%3Cf32%3E"]
+
+ [:type1="bool";type2="vec4%3Ci32%3E"]
+
+ [:type1="bool";type2="vec4%3Cu32%3E"]
+
+ [:type1="f16";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f16";type2="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="f32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="f32";type2="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="i32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="i32";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="u32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="u32";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="f16"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="i32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="u32"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec2%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec3%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cabstract-float%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cabstract-int%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cf16%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cf32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Ci32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-float%3E";type2="vec4%3Cu32%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cabstract-int%3E";type2="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cbool%3E";type2="abstract-float"]
+
+ [:type1="vec2%3Cbool%3E";type2="abstract-int"]
+
+ [:type1="vec2%3Cbool%3E";type2="bool"]
+
+ [:type1="vec2%3Cbool%3E";type2="f16"]
+
+ [:type1="vec2%3Cbool%3E";type2="f32"]
+
+ [:type1="vec2%3Cbool%3E";type2="i32"]
+
+ [:type1="vec2%3Cbool%3E";type2="u32"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cabstract-float%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cabstract-int%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cf16%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cf32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Ci32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec2%3Cu32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cabstract-float%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cabstract-int%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cbool%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cf16%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cf32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Ci32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec3%3Cu32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cabstract-float%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cabstract-int%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cbool%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cf16%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cf32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Ci32%3E"]
+
+ [:type1="vec2%3Cbool%3E";type2="vec4%3Cu32%3E"]
+
+ [:type1="vec2%3Cf16%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf16%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="abstract-float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="abstract-int"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="bool"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cbool%3E"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cf32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Ci32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec2%3Cu32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-float%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cabstract-int%3E";type2="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="abstract-float"]
+
+ [:type1="vec3%3Cbool%3E";type2="abstract-int"]
+
+ [:type1="vec3%3Cbool%3E";type2="bool"]
+
+ [:type1="vec3%3Cbool%3E";type2="f16"]
+
+ [:type1="vec3%3Cbool%3E";type2="f32"]
+
+ [:type1="vec3%3Cbool%3E";type2="i32"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="u32"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cabstract-float%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cabstract-int%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cbool%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cf16%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cf32%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cabstract-float%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cabstract-int%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cf16%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cf32%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cabstract-float%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cabstract-int%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cbool%3E"]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cbool%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf16%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cf32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Ci32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec3%3Cu32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-float%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cabstract-int%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cbool%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf16%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cf32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Ci32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="abstract-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="abstract-int"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="f16"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="f32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="i32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:type1="vec4%3Cu32%3E";type2="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,select:argument_types_3:*]
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,select:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="array_runtime"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="atomic"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="bool"]
+
+ [:test="enumerant"]
+
+ [:test="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="f32"]
+
+ [:test="i32"]
+
+ [:test="matrix"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="mixed_aint_afloat"]
+
+ [:test="mixed_i32_u32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="no_args"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="sampler"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="struct"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="texture"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="too_few_args"]
+
+ [:test="too_many_args"]
+
+ [:test="u32"]
+
+ [:test="valid"]
+
+ [:test="vec2_bool_implicit"]
+
+ [:test="vec3_bool_implicit"]
+
+ [:test="vec_bool"]
+
+ [:test="vec_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:test="vec_f32"]
+
+ [:test="vec_i32"]
+
+ [:test="vec_u32"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,select:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:use=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html.ini
index 3136085b90..3d54335e14 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html.ini
@@ -1,13 +1,32 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sign:unsigned_integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sign:args:*]
+ [:arg="bad_0args"]
- [:type="u32"]
+ [:arg="bad_0array"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0bool"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sign:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sign:values:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html.ini
index 0245a67035..c272620d73 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sin:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sin:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,22 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sin:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sin:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +65,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +77,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +89,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -78,7 +121,12 @@
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html.ini
index e8240562d5..1cb14a317f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html.ini
@@ -1,26 +1,50 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sinh:integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sinh:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
+ [:arg="bad_0array"]
- [:type="u32"]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sinh:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sinh:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "win": [PASS, FAIL]
@@ -30,6 +54,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -39,6 +66,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -48,6 +78,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
@@ -66,23 +99,38 @@
[:stage="override";type="vec2%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html.ini
new file mode 100644
index 0000000000..f35422b119
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html.ini
@@ -0,0 +1,234 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,smoothstep:argument_types:*]
+ [:type="abstract-float"]
+ expected: FAIL
+
+ [:type="abstract-int"]
+ expected: FAIL
+
+ [:type="bool"]
+
+ [:type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="f32"]
+ expected: FAIL
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,smoothstep:arguments:*]
+ [:test="alias"]
+
+ [:test="array"]
+ expected: FAIL
+
+ [:test="array_runtime"]
+ expected: FAIL
+
+ [:test="atomic"]
+ expected: FAIL
+
+ [:test="bool"]
+ expected: FAIL
+
+ [:test="enumerant"]
+
+ [:test="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="f32"]
+
+ [:test="i32"]
+ expected: FAIL
+
+ [:test="matrix"]
+ expected: FAIL
+
+ [:test="mixed_aint_afloat"]
+
+ [:test="mixed_f16_afloat"]
+ expected:
+ if os == "mac": FAIL
+
+ [:test="mixed_f32_afloat"]
+
+ [:test="no_args"]
+
+ [:test="ptr"]
+
+ [:test="ptr_deref"]
+ expected: FAIL
+
+ [:test="sampler"]
+ expected: FAIL
+
+ [:test="struct"]
+ expected: FAIL
+
+ [:test="texture"]
+ expected: FAIL
+
+ [:test="too_few_args"]
+ expected: [PASS, FAIL]
+
+ [:test="too_many_args"]
+ expected: [PASS, FAIL]
+
+ [:test="u32"]
+ expected: FAIL
+
+ [:test="valid"]
+
+ [:test="vec_bool"]
+ expected: FAIL
+
+ [:test="vec_f32"]
+
+ [:test="vec_i32"]
+ expected: FAIL
+
+ [:test="vec_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,smoothstep:values:*]
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini
index a360985505..219d5417e3 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini
@@ -1,3 +1,25 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sqrt:args:*]
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0u32"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="bad_too_few"]
+
+ [:arg="bad_too_many"]
+
+ [:arg="good"]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sqrt:integer_argument:*]
[:type="f32"]
@@ -18,10 +40,22 @@
[:type="vec4%3Cu32%3E"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sqrt:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sqrt:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +65,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +77,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +89,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -64,21 +107,36 @@
[:stage="override";type="vec2%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html.ini
new file mode 100644
index 0000000000..f4b4787cfa
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html.ini
@@ -0,0 +1,175 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,step:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_1arg"]
+
+ [:arg="bad_1array"]
+
+ [:arg="bad_1bool"]
+
+ [:arg="bad_1int"]
+
+ [:arg="bad_1struct"]
+
+ [:arg="bad_1uint"]
+
+ [:arg="bad_1vec2i"]
+
+ [:arg="bad_1vec2u"]
+
+ [:arg="bad_1vec3i"]
+
+ [:arg="bad_1vec3u"]
+
+ [:arg="bad_1vec4i"]
+
+ [:arg="bad_1vec4u"]
+
+ [:arg="bad_3arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,step:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,step:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini
index e8d5de889c..ba4530851d 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini
@@ -1,27 +1,51 @@
-[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tan:integer_argument:*]
- [:type="f32"]
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tan:args:*]
+ [:arg="bad_0args"]
- [:type="i32"]
+ [:arg="bad_0array"]
- [:type="u32"]
+ [:arg="bad_0bool"]
- [:type="vec2%3Ci32%3E"]
+ [:arg="bad_0int"]
- [:type="vec2%3Cu32%3E"]
+ [:arg="bad_0struct"]
- [:type="vec3%3Ci32%3E"]
+ [:arg="bad_0uint"]
- [:type="vec3%3Cu32%3E"]
+ [:arg="bad_0vec2i"]
- [:type="vec4%3Ci32%3E"]
+ [:arg="bad_0vec2u"]
- [:type="vec4%3Cu32%3E"]
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tan:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tan:values:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:stage="constant";type="abstract-float"]
expected: FAIL
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
[:stage="constant";type="f16"]
expected:
if os == "mac": FAIL
@@ -31,6 +55,9 @@
[:stage="constant";type="vec2%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec2%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -40,6 +67,9 @@
[:stage="constant";type="vec3%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec3%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -49,6 +79,9 @@
[:stage="constant";type="vec4%3Cabstract-float%3E"]
expected: FAIL
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
[:stage="constant";type="vec4%3Cf16%3E"]
expected:
if os == "mac": FAIL
@@ -57,28 +90,48 @@
[:stage="override";type="f16"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="f32"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec2%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec2%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec3%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec3%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:stage="override";type="vec4%3Cf16%3E"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac": FAIL
[:stage="override";type="vec4%3Cf32%3E"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html.ini
new file mode 100644
index 0000000000..8f18424567
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html.ini
@@ -0,0 +1,115 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tanh:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tanh:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tanh:values:*]
+ [:stage="constant";type="abstract-float"]
+ expected: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="f32"]
+ expected: FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac": FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini
new file mode 100644
index 0000000000..de2c20a982
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini
@@ -0,0 +1,2181 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:array_index_argument:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:component_argument,non_const:*]
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_cube%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_cube%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:component_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";componentType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:coords_argument:*]
+ expected: TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:offset_argument,non_const:*]
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_depth_2d";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:offset_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini
new file mode 100644
index 0000000000..e24746d73b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini
@@ -0,0 +1,1080 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:array_index_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:coords_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:depth_ref_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="bool"]
+
+ [:textureType="texture_depth_2d";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d";depthRefType="i32"]
+
+ [:textureType="texture_depth_2d";depthRefType="u32"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="bool"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="i32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="u32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="bool"]
+
+ [:textureType="texture_depth_cube";depthRefType="f16"]
+
+ [:textureType="texture_depth_cube";depthRefType="f32"]
+
+ [:textureType="texture_depth_cube";depthRefType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:offset_argument,non_const:*]
+ [:textureType="texture_depth_2d";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:offset_argument:*]
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini
new file mode 100644
index 0000000000..3441088f0a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini
@@ -0,0 +1,2404 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:array_index_argument,non_storage:*]
+ [:textureType="texture_2d_array";arrayIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_2d_array";arrayIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array";arrayIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="i32"]
+
+ [:textureType="texture_2d_array";arrayIndexType="u32"]
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:array_index_argument,storage:*]
+ [:textureType="texture_storage_2d_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="bool"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="f32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="i32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="u32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:coords_argument,non_storage:*]
+ expected: TIMEOUT
+ [:textureType="texture_1d";coordType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="abstract-int"]
+
+ [:textureType="texture_1d";coordType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="f16"]
+
+ [:textureType="texture_1d";coordType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="i32"]
+
+ [:textureType="texture_1d";coordType="u32"]
+
+ [:textureType="texture_1d";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_1d";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_1d";coordType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_1d";coordType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";coordType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="f16"]
+
+ [:textureType="texture_2d";coordType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d";coordType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d";coordType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="bool"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec3%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_multisampled_2d";coordType="vec4%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec2%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_external";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_multisampled_2d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:coords_argument,storage:*]
+ [:textureType="texture_storage_1d";coordType="abstract-float"]
+
+ [:textureType="texture_storage_1d";coordType="abstract-int"]
+
+ [:textureType="texture_storage_1d";coordType="bool"]
+
+ [:textureType="texture_storage_1d";coordType="f16"]
+
+ [:textureType="texture_storage_1d";coordType="f32"]
+
+ [:textureType="texture_storage_1d";coordType="i32"]
+
+ [:textureType="texture_storage_1d";coordType="u32"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="abstract-float"]
+
+ [:textureType="texture_storage_2d";coordType="abstract-int"]
+
+ [:textureType="texture_storage_2d";coordType="bool"]
+
+ [:textureType="texture_storage_2d";coordType="f16"]
+
+ [:textureType="texture_storage_2d";coordType="f32"]
+
+ [:textureType="texture_storage_2d";coordType="i32"]
+
+ [:textureType="texture_storage_2d";coordType="u32"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="abstract-float"]
+
+ [:textureType="texture_storage_2d_array";coordType="abstract-int"]
+
+ [:textureType="texture_storage_2d_array";coordType="bool"]
+
+ [:textureType="texture_storage_2d_array";coordType="f16"]
+
+ [:textureType="texture_storage_2d_array";coordType="f32"]
+
+ [:textureType="texture_storage_2d_array";coordType="i32"]
+
+ [:textureType="texture_storage_2d_array";coordType="u32"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="abstract-float"]
+
+ [:textureType="texture_storage_3d";coordType="abstract-int"]
+
+ [:textureType="texture_storage_3d";coordType="bool"]
+
+ [:textureType="texture_storage_3d";coordType="f16"]
+
+ [:textureType="texture_storage_3d";coordType="f32"]
+
+ [:textureType="texture_storage_3d";coordType="i32"]
+
+ [:textureType="texture_storage_3d";coordType="u32"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:level_argument,non_storage:*]
+ expected: TIMEOUT
+ [:textureType="texture_1d";levelType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="abstract-int"]
+
+ [:textureType="texture_1d";levelType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="f16"]
+
+ [:textureType="texture_1d";levelType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="i32"]
+
+ [:textureType="texture_1d";levelType="u32"]
+
+ [:textureType="texture_1d";levelType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_1d";levelType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_1d";levelType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_1d";levelType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_1d";levelType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="abstract-int"]
+
+ [:textureType="texture_2d";levelType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="f16"]
+
+ [:textureType="texture_2d";levelType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="i32"]
+
+ [:textureType="texture_2d";levelType="u32"]
+
+ [:textureType="texture_2d";levelType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d";levelType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d";levelType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d";levelType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d";levelType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="abstract-int"]
+
+ [:textureType="texture_2d_array";levelType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array";levelType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d";levelType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="abstract-int"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="i32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="u32"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="bool"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cbool%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Ci32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cu32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureLoad:sample_index_argument,non_storage:*]
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="abstract-int"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="f16"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="i32"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="u32"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_multisampled_2d";sampleIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="abstract-int"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="f16"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="i32"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="u32"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_multisampled_2d";sampleIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini
new file mode 100644
index 0000000000..748ea5a625
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini
@@ -0,0 +1,2293 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:array_index_argument:*]
+ expected:
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:coords_argument:*]
+ expected:
+ if os == "win": TIMEOUT
+ if os == "linux": TIMEOUT
+ if os == "mac": SKIP
+ [:textureType="texture_1d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_1d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument,non_const:*]
+ expected:
+ if os == "mac": SKIP
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_depth_2d";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": SKIP
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:only_in_fragment:*]
+ expected:
+ if os == "mac": SKIP
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_1d%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="none";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="none";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html.ini
new file mode 100644
index 0000000000..26f4aeb178
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html.ini
@@ -0,0 +1,142 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBaseClampToEdge:coords_argument:*]
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_external";coordType="abstract-float"]
+
+ [:textureType="texture_external";coordType="abstract-int"]
+
+ [:textureType="texture_external";coordType="bool"]
+
+ [:textureType="texture_external";coordType="f16"]
+
+ [:textureType="texture_external";coordType="f32"]
+
+ [:textureType="texture_external";coordType="i32"]
+
+ [:textureType="texture_external";coordType="u32"]
+
+ [:textureType="texture_external";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_external";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_external";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_external";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_external";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_external";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_external";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_external";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_external";coordType="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini
new file mode 100644
index 0000000000..32d9f30f53
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini
@@ -0,0 +1,1665 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:array_index_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:bias_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";biasType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";biasType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";biasType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:coords_argument:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:offset_argument,non_const:*]
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="c"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:offset_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:only_in_fragment:*]
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="fragment_and_compute";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="none";offset=true]
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";entryPoint="vertex";offset=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_cube%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="fragment_and_compute";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="none";offset=false]
+
+ [:textureType="texture_cube_array%3Cf32%3E";entryPoint="vertex";offset=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini
new file mode 100644
index 0000000000..82016a0265
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini
@@ -0,0 +1,1366 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:array_index_argument:*]
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:coords_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:depth_ref_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d";depthRefType="abstract-int"]
+
+ [:textureType="texture_depth_2d";depthRefType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d";depthRefType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-int"]
+
+ [:textureType="texture_depth_cube";depthRefType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:offset_argument,non_const:*]
+ [:textureType="texture_depth_2d";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:offset_argument:*]
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:only_in_fragment:*]
+ [:textureType="texture_depth_2d";entryPoint="compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="compute";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="fragment_and_compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="fragment_and_compute";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_2d";entryPoint="none";offset=true]
+
+ [:textureType="texture_depth_2d";entryPoint="vertex";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";entryPoint="vertex";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="compute_without_call";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment_and_compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="fragment_and_compute";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_2d_array";entryPoint="none";offset=true]
+
+ [:textureType="texture_depth_2d_array";entryPoint="vertex";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";entryPoint="vertex";offset=true]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="fragment_and_compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_cube";entryPoint="vertex";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="compute_without_call";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="fragment";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="fragment_and_compute";offset=false]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";entryPoint="none";offset=false]
+
+ [:textureType="texture_depth_cube_array";entryPoint="vertex";offset=false]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini
new file mode 100644
index 0000000000..fdb24e65df
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini
@@ -0,0 +1,1077 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:array_index_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:coords_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:depth_ref_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_depth_2d";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d";depthRefType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";depthRefType="bool"]
+
+ [:textureType="texture_depth_2d";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d";depthRefType="i32"]
+
+ [:textureType="texture_depth_2d";depthRefType="u32"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";depthRefType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";depthRefType="bool"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="f16"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="f32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="i32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="u32"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";depthRefType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_cube";depthRefType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";depthRefType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:offset_argument,non_const:*]
+ [:textureType="texture_depth_2d";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:offset_argument:*]
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini
new file mode 100644
index 0000000000..73f1156534
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini
@@ -0,0 +1,2187 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:array_index_argument:*]
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:coords_argument:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:ddX_argument:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";ddxType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d%3Cf32%3E";ddxType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddxType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="f16"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="f32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="i32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:ddY_argument:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";ddyType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";ddyType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";ddyType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="abstract-float"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="abstract-int"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="f32"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";ddyType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="u32"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:offset_argument,non_const:*]
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:offset_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": [OK, TIMEOUT]
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini
new file mode 100644
index 0000000000..8156922d2c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini
@@ -0,0 +1,2837 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:array_index_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="i32"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="u32"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="i32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:coords_argument:*]
+ expected: TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="abstract-int"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="f32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="i32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="u32"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:level_argument:*]
+ expected: TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";levelType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";levelType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="abstract-int"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="abstract-int"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="bool"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";levelType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";levelType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube";levelType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="abstract-float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="abstract-int"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="bool"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="f16"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="f32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="i32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="u32"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec2%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec3%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cabstract-float%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cabstract-int%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cbool%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cf16%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cf32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Ci32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_cube_array";levelType="vec4%3Cu32%3E"]
+ expected: [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:offset_argument,non_const:*]
+ [:textureType="texture_2d%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";varType="l"]
+
+ [:textureType="texture_3d%3Cf32%3E";varType="u"]
+
+ [:textureType="texture_depth_2d";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d";varType="l"]
+
+ [:textureType="texture_depth_2d";varType="u"]
+
+ [:textureType="texture_depth_2d_array";varType="c"]
+ expected: FAIL
+
+ [:textureType="texture_depth_2d_array";varType="l"]
+
+ [:textureType="texture_depth_2d_array";varType="u"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:offset_argument:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="i32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="u32"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected: FAIL
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_2d_array%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-float"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="abstract-int"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="bool"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f16"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="f32"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f16"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="f32"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="u32"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini
new file mode 100644
index 0000000000..2d6b17ca9d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini
@@ -0,0 +1,1005 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureStore:array_index_argument:*]
+ [:textureType="texture_storage_2d_array";arrayIndexType="abstract-float"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="abstract-int"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="bool"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="f16"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="f32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="i32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="u32"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d_array";arrayIndexType="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureStore:coords_argument:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_storage_1d";coordType="abstract-float"]
+
+ [:textureType="texture_storage_1d";coordType="abstract-int"]
+
+ [:textureType="texture_storage_1d";coordType="bool"]
+
+ [:textureType="texture_storage_1d";coordType="f16"]
+
+ [:textureType="texture_storage_1d";coordType="f32"]
+
+ [:textureType="texture_storage_1d";coordType="i32"]
+
+ [:textureType="texture_storage_1d";coordType="u32"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_1d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="abstract-float"]
+
+ [:textureType="texture_storage_2d";coordType="abstract-int"]
+
+ [:textureType="texture_storage_2d";coordType="bool"]
+
+ [:textureType="texture_storage_2d";coordType="f16"]
+
+ [:textureType="texture_storage_2d";coordType="f32"]
+
+ [:textureType="texture_storage_2d";coordType="i32"]
+
+ [:textureType="texture_storage_2d";coordType="u32"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec2%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec3%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cabstract-float%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cf16%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cf32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Ci32%3E"]
+
+ [:textureType="texture_storage_2d";coordType="vec4%3Cu32%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="abstract-int"]
+
+ [:textureType="texture_storage_2d_array";coordType="bool"]
+
+ [:textureType="texture_storage_2d_array";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";coordType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureStore:value_argument:*]
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:textureType="texture_storage_1d";valueType="abstract-float"]
+
+ [:textureType="texture_storage_1d";valueType="abstract-int"]
+
+ [:textureType="texture_storage_1d";valueType="bool"]
+
+ [:textureType="texture_storage_1d";valueType="f16"]
+
+ [:textureType="texture_storage_1d";valueType="f32"]
+
+ [:textureType="texture_storage_1d";valueType="i32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cabstract-int%3E"]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cbool%3E"]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_1d";valueType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="f32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="i32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="u32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec2%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cf16%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d";valueType="vec4%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="abstract-float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="abstract-int"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="bool"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="f16"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="f32"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_2d_array";valueType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="abstract-float"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="abstract-int"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="bool"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="f16"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="f32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="i32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="u32"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec2%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec3%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cbool%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cf16%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Ci32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:textureType="texture_storage_3d";valueType="vec4%3Cu32%3E"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html.ini
new file mode 100644
index 0000000000..fbc02c36d6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html.ini
@@ -0,0 +1,188 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,trunc:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0int"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0uint"]
+
+ [:arg="bad_0vec2i"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3i"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4i"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2arg"]
+
+ [:arg="bad_no_parens"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,trunc:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,trunc:values:*]
+ [:stage="constant";type="abstract-float"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="abstract-int"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="f32"]
+
+ [:stage="constant";type="vec2%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec2%3Cf32%3E"]
+
+ [:stage="constant";type="vec3%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec3%3Cf32%3E"]
+
+ [:stage="constant";type="vec4%3Cabstract-float%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cabstract-int%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="constant";type="vec4%3Cf32%3E"]
+
+ [:stage="override";type="f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="f32"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec2%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec3%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cf16%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:stage="override";type="vec4%3Cf32%3E"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html.ini
new file mode 100644
index 0000000000..cd372f5b5a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html.ini
@@ -0,0 +1,52 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f16"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_vec2u"]
+
+ [:arg="bad_vec3u"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good_aint"]
+ expected: FAIL
+
+ [:arg="good_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:return:*]
+ [:type="f32"]
+
+ [:type="vec2f"]
+ expected: FAIL
+
+ [:type="vec2h"]
+
+ [:type="vec2i"]
+
+ [:type="vec2u"]
+
+ [:type="vec3f"]
+
+ [:type="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html.ini
new file mode 100644
index 0000000000..47c4401c1d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html.ini
@@ -0,0 +1,52 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f16"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_vec2u"]
+
+ [:arg="bad_vec3u"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good_aint"]
+ expected: FAIL
+
+ [:arg="good_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:return:*]
+ [:type="f32"]
+
+ [:type="vec2f"]
+ expected: FAIL
+
+ [:type="vec2h"]
+
+ [:type="vec2i"]
+
+ [:type="vec2u"]
+
+ [:type="vec3f"]
+
+ [:type="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html.ini
new file mode 100644
index 0000000000..e5d2ddb47b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html.ini
@@ -0,0 +1,52 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f16"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_vec2u"]
+
+ [:arg="bad_vec3u"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good_aint"]
+ expected: FAIL
+
+ [:arg="good_u32"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:must_use:*]
+ [:use=false]
+ expected: FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:return:*]
+ [:type="f32"]
+
+ [:type="vec2f"]
+ expected: FAIL
+
+ [:type="vec2h"]
+
+ [:type="vec2i"]
+
+ [:type="vec2u"]
+
+ [:type="vec3f"]
+
+ [:type="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html.ini
new file mode 100644
index 0000000000..2845a6e3ea
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html.ini
@@ -0,0 +1,68 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f16"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_vec2u"]
+
+ [:arg="bad_vec3u"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good_aint"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:arg="good_u32"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:return:*]
+ [:type="f32"]
+
+ [:type="vec2f"]
+
+ [:type="vec3f"]
+
+ [:type="vec4f"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:type="vec4h"]
+
+ [:type="vec4i"]
+
+ [:type="vec4u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html.ini
new file mode 100644
index 0000000000..d4afe3698b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html.ini
@@ -0,0 +1,68 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_2args"]
+
+ [:arg="bad_array"]
+
+ [:arg="bad_bool"]
+
+ [:arg="bad_f16"]
+
+ [:arg="bad_f32"]
+
+ [:arg="bad_i32"]
+
+ [:arg="bad_struct"]
+
+ [:arg="bad_vec2u"]
+
+ [:arg="bad_vec3u"]
+
+ [:arg="bad_vec4u"]
+
+ [:arg="good_aint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:arg="good_u32"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:must_use:*]
+ [:use=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:return:*]
+ [:type="f32"]
+
+ [:type="vec2f"]
+
+ [:type="vec3f"]
+
+ [:type="vec4f"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:type="vec4h"]
+
+ [:type="vec4i"]
+
+ [:type="vec4u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html.ini
new file mode 100644
index 0000000000..16b59875e1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html.ini
@@ -0,0 +1,40 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:must_use:*]
+ [:use=false]
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html.ini
new file mode 100644
index 0000000000..3811e0fbdb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html.ini
@@ -0,0 +1,40 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:args:*]
+ [:arg="bad_0args"]
+
+ [:arg="bad_0array"]
+
+ [:arg="bad_0bool"]
+
+ [:arg="bad_0f32"]
+
+ [:arg="bad_0i32"]
+
+ [:arg="bad_0struct"]
+
+ [:arg="bad_0vec2u"]
+
+ [:arg="bad_0vec3u"]
+
+ [:arg="bad_0vec4u"]
+
+ [:arg="bad_2args"]
+
+ [:arg="good"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:must_use:*]
+ [:use=false]
+
+ [:use=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:supported:*]
+ [:requires=false]
+
+ [:requires=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:unsupported:*]
+ [:requires=false]
+
+ [:requires=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini
new file mode 100644
index 0000000000..6eed7a00db
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html.ini
@@ -0,0 +1,93 @@
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,workgroupUniformLoad:no_atomics:*]
+ expected:
+ if os == "linux" and debug: [OK, CRASH]
+ [:type="AtomicStruct";call="bar()"]
+
+ [:type="AtomicStruct";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:type="array%3Catomic%3Ci32%3E,%204%3E";call="bar()"]
+
+ [:type="array%3Catomic%3Ci32%3E,%204%3E";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:type="atomic%3Ci32%3E";call="bar()"]
+
+ [:type="atomic%3Ci32%3E";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:type="atomic%3Cu32%3E";call="bar()"]
+
+ [:type="atomic%3Cu32%3E";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:type="bool";call="bar()"]
+
+ [:type="bool";call="workgroupUniformLoad(%26wgvar)"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,workgroupUniformLoad:only_in_compute:*]
+ [:entry_point="compute";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="compute";call="workgroupUniformLoad(%26wgvar)"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="compute_and_fragment";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="compute_and_fragment";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:entry_point="fragment";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="fragment";call="workgroupUniformLoad(%26wgvar)"]
+
+ [:entry_point="fragment_without_call";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="fragment_without_call";call="workgroupUniformLoad(%26wgvar)"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="none";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="none";call="workgroupUniformLoad(%26wgvar)"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="vertex";call="bar()"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:entry_point="vertex";call="workgroupUniformLoad(%26wgvar)"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html.ini
new file mode 100644
index 0000000000..f0652e02fd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html.ini
@@ -0,0 +1,289 @@
+[cts.https.html?q=webgpu:shader,validation,expression,overload_resolution:implicit_conversions:*]
+ [:case="absfloat_to_bool"]
+
+ [:case="absfloat_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="absfloat_to_f32"]
+ expected: FAIL
+
+ [:case="absfloat_to_i32"]
+
+ [:case="absfloat_to_u32"]
+
+ [:case="absint_to_bool"]
+
+ [:case="absint_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="absint_to_f32"]
+ expected: FAIL
+
+ [:case="absint_to_i32"]
+ expected: FAIL
+
+ [:case="absint_to_u32"]
+ expected: FAIL
+
+ [:case="array_absfloat_to_bool"]
+
+ [:case="array_absfloat_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_absfloat_to_f32"]
+ expected: FAIL
+
+ [:case="array_absfloat_to_i32"]
+
+ [:case="array_absfloat_to_u32"]
+
+ [:case="array_absint_to_bool"]
+
+ [:case="array_absint_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_absint_to_f32"]
+ expected: FAIL
+
+ [:case="array_absint_to_i32"]
+ expected: FAIL
+
+ [:case="array_absint_to_u32"]
+ expected: FAIL
+
+ [:case="mat2x2_index_absfloat"]
+ expected: FAIL
+
+ [:case="mat2x2_index_absint"]
+ expected: FAIL
+
+ [:case="mat2x2_index_float"]
+ expected: FAIL
+
+ [:case="mat2x2_wrong_result"]
+
+ [:case="vector_absfloat_to_bool"]
+
+ [:case="vector_absfloat_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vector_absfloat_to_f32"]
+ expected: FAIL
+
+ [:case="vector_absfloat_to_i32"]
+
+ [:case="vector_absfloat_to_u32"]
+
+ [:case="vector_absint_to_bool"]
+
+ [:case="vector_absint_to_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vector_absint_to_f32"]
+ expected: FAIL
+
+ [:case="vector_absint_to_i32"]
+ expected: FAIL
+
+ [:case="vector_absint_to_u32"]
+ expected: FAIL
+
+ [:case="vector_abstract_to_integer"]
+ expected: FAIL
+
+ [:case="vector_default_ctor_abstract"]
+ expected: FAIL
+
+ [:case="vector_default_ctor_integer"]
+ expected: FAIL
+
+ [:case="vector_swizzle_abstract"]
+ expected: FAIL
+
+ [:case="vector_swizzle_float"]
+ expected: FAIL
+
+ [:case="vector_swizzle_integer"]
+ expected: FAIL
+
+ [:case="vector_wrong_result_f32"]
+
+ [:case="vector_wrong_result_i32"]
+
+ [:case="vector_wrong_result_splat"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,overload_resolution:overload_resolution:*]
+ [:arg1="abstract-float";arg2="abstract-int"]
+ expected: FAIL
+
+ [:arg1="abstract-float";arg2="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:arg1="abstract-float";arg2="f32"]
+ expected: FAIL
+
+ [:arg1="abstract-float";arg2="i32"]
+
+ [:arg1="abstract-float";arg2="u32"]
+
+ [:arg1="abstract-int";arg2="abstract-float"]
+ expected: FAIL
+
+ [:arg1="abstract-int";arg2="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:arg1="abstract-int";arg2="f32"]
+ expected: FAIL
+
+ [:arg1="abstract-int";arg2="i32"]
+ expected: FAIL
+
+ [:arg1="abstract-int";arg2="u32"]
+ expected: FAIL
+
+ [:arg1="f16";arg2="abstract-float"]
+ expected:
+ if os == "mac": FAIL
+
+ [:arg1="f16";arg2="abstract-int"]
+ expected:
+ if os == "mac": FAIL
+
+ [:arg1="f16";arg2="f32"]
+
+ [:arg1="f16";arg2="i32"]
+
+ [:arg1="f16";arg2="u32"]
+
+ [:arg1="f32";arg2="abstract-float"]
+ expected: FAIL
+
+ [:arg1="f32";arg2="abstract-int"]
+ expected: FAIL
+
+ [:arg1="f32";arg2="f16"]
+
+ [:arg1="f32";arg2="i32"]
+
+ [:arg1="f32";arg2="u32"]
+
+ [:arg1="i32";arg2="abstract-float"]
+
+ [:arg1="i32";arg2="abstract-int"]
+ expected: FAIL
+
+ [:arg1="i32";arg2="f16"]
+
+ [:arg1="i32";arg2="f32"]
+
+ [:arg1="i32";arg2="u32"]
+
+ [:arg1="u32";arg2="abstract-float"]
+
+ [:arg1="u32";arg2="abstract-int"]
+ expected: FAIL
+
+ [:arg1="u32";arg2="f16"]
+
+ [:arg1="u32";arg2="f32"]
+
+ [:arg1="u32";arg2="i32"]
+
+ [:arg1="vec2%3Cabstract-float%3E";arg2="vec2%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:arg1="vec2%3Cabstract-float%3E";arg2="vec4%3Cf32%3E"]
+
+ [:arg1="vec2%3Cabstract-float%3E";arg2="vec4%3Ci32%3E"]
+
+ [:arg1="vec2%3Cabstract-float%3E";arg2="vec4%3Cu32%3E"]
+
+ [:arg1="vec2%3Cabstract-int%3E";arg2="vec2%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:arg1="vec2%3Cabstract-int%3E";arg2="vec4%3Cf32%3E"]
+
+ [:arg1="vec2%3Cabstract-int%3E";arg2="vec4%3Ci32%3E"]
+
+ [:arg1="vec2%3Cabstract-int%3E";arg2="vec4%3Cu32%3E"]
+
+ [:arg1="vec2%3Cf32%3E";arg2="vec2%3Ci32%3E"]
+
+ [:arg1="vec2%3Cf32%3E";arg2="vec2%3Cu32%3E"]
+
+ [:arg1="vec2%3Cf32%3E";arg2="vec4%3Cf16%3E"]
+
+ [:arg1="vec2%3Ci32%3E";arg2="vec2%3Cf32%3E"]
+
+ [:arg1="vec2%3Ci32%3E";arg2="vec2%3Cu32%3E"]
+
+ [:arg1="vec2%3Ci32%3E";arg2="vec4%3Cf16%3E"]
+
+ [:arg1="vec2%3Cu32%3E";arg2="vec2%3Cf32%3E"]
+
+ [:arg1="vec2%3Cu32%3E";arg2="vec2%3Ci32%3E"]
+
+ [:arg1="vec2%3Cu32%3E";arg2="vec4%3Cf16%3E"]
+
+ [:arg1="vec3%3Cabstract-float%3E";arg2="vec3%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:arg1="vec3%3Cabstract-int%3E";arg2="vec3%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:arg1="vec3%3Cf32%3E";arg2="vec3%3Ci32%3E"]
+
+ [:arg1="vec3%3Cf32%3E";arg2="vec3%3Cu32%3E"]
+
+ [:arg1="vec3%3Ci32%3E";arg2="vec3%3Cf32%3E"]
+
+ [:arg1="vec3%3Ci32%3E";arg2="vec3%3Cu32%3E"]
+
+ [:arg1="vec3%3Cu32%3E";arg2="vec3%3Cf32%3E"]
+
+ [:arg1="vec3%3Cu32%3E";arg2="vec3%3Ci32%3E"]
+
+ [:arg1="vec4%3Cabstract-float%3E";arg2="vec4%3Cabstract-int%3E"]
+ expected: FAIL
+
+ [:arg1="vec4%3Cabstract-int%3E";arg2="vec4%3Cabstract-float%3E"]
+ expected: FAIL
+
+ [:arg1="vec4%3Cf16%3E";arg2="vec2%3Cf32%3E"]
+
+ [:arg1="vec4%3Cf16%3E";arg2="vec2%3Ci32%3E"]
+
+ [:arg1="vec4%3Cf16%3E";arg2="vec2%3Cu32%3E"]
+
+ [:arg1="vec4%3Cf32%3E";arg2="vec2%3Cabstract-float%3E"]
+
+ [:arg1="vec4%3Cf32%3E";arg2="vec2%3Cabstract-int%3E"]
+
+ [:arg1="vec4%3Cf32%3E";arg2="vec4%3Ci32%3E"]
+
+ [:arg1="vec4%3Cf32%3E";arg2="vec4%3Cu32%3E"]
+
+ [:arg1="vec4%3Ci32%3E";arg2="vec2%3Cabstract-float%3E"]
+
+ [:arg1="vec4%3Ci32%3E";arg2="vec2%3Cabstract-int%3E"]
+
+ [:arg1="vec4%3Ci32%3E";arg2="vec4%3Cf32%3E"]
+
+ [:arg1="vec4%3Ci32%3E";arg2="vec4%3Cu32%3E"]
+
+ [:arg1="vec4%3Cu32%3E";arg2="vec2%3Cabstract-float%3E"]
+
+ [:arg1="vec4%3Cu32%3E";arg2="vec2%3Cabstract-int%3E"]
+
+ [:arg1="vec4%3Cu32%3E";arg2="vec4%3Cf32%3E"]
+
+ [:arg1="vec4%3Cu32%3E";arg2="vec4%3Ci32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini
new file mode 100644
index 0000000000..486b6ad134
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini
@@ -0,0 +1,1043 @@
+[cts.https.html?q=webgpu:shader,validation,expression,precedence:binary_requires_parentheses:*]
+ expected: TIMEOUT
+ [:op1="add";op2="add"]
+
+ [:op1="add";op2="bin_and"]
+ expected: FAIL
+
+ [:op1="add";op2="bin_or"]
+ expected: FAIL
+
+ [:op1="add";op2="bin_xor"]
+ expected: FAIL
+
+ [:op1="add";op2="div"]
+
+ [:op1="add";op2="eq"]
+
+ [:op1="add";op2="ge"]
+
+ [:op1="add";op2="gt"]
+
+ [:op1="add";op2="le"]
+
+ [:op1="add";op2="lt"]
+
+ [:op1="add";op2="mod"]
+
+ [:op1="add";op2="mul"]
+
+ [:op1="add";op2="ne"]
+
+ [:op1="add";op2="shl"]
+ expected: FAIL
+
+ [:op1="add";op2="shr"]
+ expected: FAIL
+
+ [:op1="add";op2="sub"]
+
+ [:op1="bin_and";op2="add"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="bin_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="bin_or"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="bin_xor"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="div"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="mod"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="mul"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="shl"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="shr"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_and";op2="sub"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="add"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="bin_and"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="bin_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="bin_xor"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="div"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="mod"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="mul"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="shl"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="shr"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_or";op2="sub"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="add"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="bin_and"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="bin_or"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="bin_xor"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="div"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="mod"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="mul"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="shl"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="shr"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="bin_xor";op2="sub"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="div";op2="add"]
+
+ [:op1="div";op2="bin_and"]
+ expected: FAIL
+
+ [:op1="div";op2="bin_or"]
+ expected: FAIL
+
+ [:op1="div";op2="bin_xor"]
+ expected: FAIL
+
+ [:op1="div";op2="div"]
+
+ [:op1="div";op2="eq"]
+
+ [:op1="div";op2="ge"]
+
+ [:op1="div";op2="gt"]
+
+ [:op1="div";op2="le"]
+
+ [:op1="div";op2="lt"]
+
+ [:op1="div";op2="mod"]
+
+ [:op1="div";op2="mul"]
+
+ [:op1="div";op2="ne"]
+
+ [:op1="div";op2="shl"]
+ expected: FAIL
+
+ [:op1="div";op2="shr"]
+ expected: FAIL
+
+ [:op1="div";op2="sub"]
+
+ [:op1="eq";op2="add"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="bin_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="bin_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="bin_xor"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="div"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="log_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="log_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="mod"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="mul"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="shl"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="shr"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="eq";op2="sub"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="add"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="bin_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="bin_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="bin_xor"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="div"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="log_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="log_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="mod"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="mul"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="shl"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="shr"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ge";op2="sub"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="add"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="bin_and"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="bin_or"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="bin_xor"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="div"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="eq"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="ge"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="gt"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="le"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="log_and"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="log_or"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="lt"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="mod"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="mul"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="ne"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="shl"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="shr"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="gt";op2="sub"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="add"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="bin_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="bin_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="bin_xor"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="div"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="log_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="log_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="mod"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="mul"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="shl"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="shr"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="le";op2="sub"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_and";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="log_or";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="add"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="bin_and"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="bin_or"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="bin_xor"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="div"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="eq"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="le"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="log_and"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="log_or"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="lt"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="mod"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="mul"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="ne"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="shl"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="lt";op2="sub"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="mod";op2="add"]
+
+ [:op1="mod";op2="bin_and"]
+ expected: FAIL
+
+ [:op1="mod";op2="bin_or"]
+ expected: FAIL
+
+ [:op1="mod";op2="bin_xor"]
+ expected: FAIL
+
+ [:op1="mod";op2="div"]
+
+ [:op1="mod";op2="eq"]
+
+ [:op1="mod";op2="ge"]
+
+ [:op1="mod";op2="gt"]
+
+ [:op1="mod";op2="le"]
+
+ [:op1="mod";op2="lt"]
+
+ [:op1="mod";op2="mod"]
+
+ [:op1="mod";op2="mul"]
+
+ [:op1="mod";op2="ne"]
+
+ [:op1="mod";op2="shl"]
+ expected: FAIL
+
+ [:op1="mod";op2="shr"]
+ expected: FAIL
+
+ [:op1="mod";op2="sub"]
+
+ [:op1="mul";op2="add"]
+
+ [:op1="mul";op2="bin_and"]
+ expected: FAIL
+
+ [:op1="mul";op2="bin_or"]
+ expected: FAIL
+
+ [:op1="mul";op2="bin_xor"]
+ expected: FAIL
+
+ [:op1="mul";op2="div"]
+
+ [:op1="mul";op2="eq"]
+
+ [:op1="mul";op2="ge"]
+
+ [:op1="mul";op2="gt"]
+
+ [:op1="mul";op2="le"]
+
+ [:op1="mul";op2="lt"]
+
+ [:op1="mul";op2="mod"]
+
+ [:op1="mul";op2="mul"]
+
+ [:op1="mul";op2="ne"]
+
+ [:op1="mul";op2="shl"]
+ expected: FAIL
+
+ [:op1="mul";op2="shr"]
+ expected: FAIL
+
+ [:op1="mul";op2="sub"]
+
+ [:op1="ne";op2="add"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="bin_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="bin_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="bin_xor"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="div"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="eq"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="ge"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="gt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="le"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="log_and"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="log_or"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="lt"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="mod"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="mul"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="ne"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="shl"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="shr"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="ne";op2="sub"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="add"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="bin_and"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="bin_or"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="bin_xor"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="div"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="eq"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="ge"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="gt"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="le"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="lt"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="mod"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="mul"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="ne"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="shl"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="shr"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shl";op2="sub"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="add"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="bin_and"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="bin_or"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="bin_xor"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="div"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="eq"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="ge"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="gt"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="le"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="lt"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="mod"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="mul"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="ne"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="shl"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="shr"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="shr";op2="sub"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="add"]
+
+ [:op1="sub";op2="bin_and"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="bin_or"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="bin_xor"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="div"]
+
+ [:op1="sub";op2="eq"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="ge"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="gt"]
+
+ [:op1="sub";op2="le"]
+
+ [:op1="sub";op2="lt"]
+
+ [:op1="sub";op2="mod"]
+
+ [:op1="sub";op2="mul"]
+
+ [:op1="sub";op2="ne"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:op1="sub";op2="shl"]
+ expected: FAIL
+
+ [:op1="sub";op2="shr"]
+ expected: FAIL
+
+ [:op1="sub";op2="sub"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,precedence:mixed_logical_requires_parentheses:*]
+ [:op1="log_and";op2="log_and";parens="left"]
+
+ [:op1="log_and";op2="log_and";parens="none"]
+
+ [:op1="log_and";op2="log_and";parens="right"]
+
+ [:op1="log_and";op2="log_or";parens="left"]
+
+ [:op1="log_and";op2="log_or";parens="none"]
+ expected: FAIL
+
+ [:op1="log_and";op2="log_or";parens="right"]
+
+ [:op1="log_or";op2="log_and";parens="left"]
+
+ [:op1="log_or";op2="log_and";parens="none"]
+ expected: FAIL
+
+ [:op1="log_or";op2="log_and";parens="right"]
+
+ [:op1="log_or";op2="log_or";parens="left"]
+
+ [:op1="log_or";op2="log_or";parens="none"]
+
+ [:op1="log_or";op2="log_or";parens="right"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,precedence:other:*]
+ [:expr="addr_member"]
+ expected: FAIL
+
+ [:expr="and_addr"]
+
+ [:expr="and_addr_paren"]
+ expected: FAIL
+
+ [:expr="comp_member"]
+ expected: FAIL
+
+ [:expr="deref_idx"]
+
+ [:expr="deref_idx_paren"]
+ expected: FAIL
+
+ [:expr="deref_member"]
+
+ [:expr="deref_member_paren"]
+ expected: FAIL
+
+ [:expr="log_and_member"]
+ expected: FAIL
+
+ [:expr="log_or_member"]
+ expected: FAIL
+
+ [:expr="neg_member"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini
new file mode 100644
index 0000000000..ad220e5dad
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini
@@ -0,0 +1,479 @@
+[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:basic:*]
+ expected:
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
+ [:addressSpace="function";accessMode="read";storageType="bool";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="bool";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="f32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="i32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read";storageType="u32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="bool";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="bool";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
+ expected: FAIL
+
+ [:addressSpace="function";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
+ expected: FAIL
+
+ [:addressSpace="private";accessMode="read";storageType="bool";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read";storageType="bool";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";accessMode="read";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="bool";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="bool";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="private";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="storage";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="storage";accessMode="read";storageType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="storage";accessMode="read";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="storage";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="storage";accessMode="read";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="uniform";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";accessMode="read";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="uniform";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="uniform";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="uniform";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";accessMode="read";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read";storageType="u32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
+
+ [:addressSpace="workgroup";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:composite:*]
+ expected:
+ if os == "mac": [OK, TIMEOUT]
+ [:addressSpace="function";compositeType="array";storageType="bool"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="array";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";compositeType="array";storageType="f32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="array";storageType="i32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="array";storageType="u32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="mat";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";compositeType="mat";storageType="f32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="struct";storageType="bool"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="struct";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";compositeType="struct";storageType="f32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="struct";storageType="i32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="struct";storageType="u32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="vec";storageType="bool"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="vec";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="function";compositeType="vec";storageType="f32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="vec";storageType="i32"]
+ expected: FAIL
+
+ [:addressSpace="function";compositeType="vec";storageType="u32"]
+ expected: FAIL
+
+ [:addressSpace="private";compositeType="array";storageType="bool"]
+
+ [:addressSpace="private";compositeType="array";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";compositeType="array";storageType="f32"]
+
+ [:addressSpace="private";compositeType="array";storageType="i32"]
+
+ [:addressSpace="private";compositeType="array";storageType="u32"]
+
+ [:addressSpace="private";compositeType="mat";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";compositeType="mat";storageType="f32"]
+
+ [:addressSpace="private";compositeType="struct";storageType="bool"]
+
+ [:addressSpace="private";compositeType="struct";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";compositeType="struct";storageType="f32"]
+
+ [:addressSpace="private";compositeType="struct";storageType="i32"]
+
+ [:addressSpace="private";compositeType="struct";storageType="u32"]
+
+ [:addressSpace="private";compositeType="vec";storageType="bool"]
+
+ [:addressSpace="private";compositeType="vec";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="private";compositeType="vec";storageType="f32"]
+
+ [:addressSpace="private";compositeType="vec";storageType="i32"]
+
+ [:addressSpace="private";compositeType="vec";storageType="u32"]
+
+ [:addressSpace="storage";compositeType="array";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="storage";compositeType="array";storageType="f32"]
+
+ [:addressSpace="storage";compositeType="array";storageType="i32"]
+
+ [:addressSpace="storage";compositeType="array";storageType="u32"]
+
+ [:addressSpace="storage";compositeType="mat";storageType="f16"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";compositeType="mat";storageType="f32"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";compositeType="struct";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="storage";compositeType="struct";storageType="f32"]
+
+ [:addressSpace="storage";compositeType="struct";storageType="i32"]
+
+ [:addressSpace="storage";compositeType="struct";storageType="u32"]
+
+ [:addressSpace="storage";compositeType="vec";storageType="f16"]
+ expected:
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+
+ [:addressSpace="storage";compositeType="vec";storageType="f32"]
+
+ [:addressSpace="storage";compositeType="vec";storageType="i32"]
+
+ [:addressSpace="storage";compositeType="vec";storageType="u32"]
+
+ [:addressSpace="uniform";compositeType="array";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";compositeType="array";storageType="f32"]
+
+ [:addressSpace="uniform";compositeType="array";storageType="i32"]
+
+ [:addressSpace="uniform";compositeType="array";storageType="u32"]
+
+ [:addressSpace="uniform";compositeType="mat";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";compositeType="mat";storageType="f32"]
+
+ [:addressSpace="uniform";compositeType="struct";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";compositeType="struct";storageType="f32"]
+
+ [:addressSpace="uniform";compositeType="struct";storageType="i32"]
+
+ [:addressSpace="uniform";compositeType="struct";storageType="u32"]
+
+ [:addressSpace="uniform";compositeType="vec";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="uniform";compositeType="vec";storageType="f32"]
+
+ [:addressSpace="uniform";compositeType="vec";storageType="i32"]
+
+ [:addressSpace="uniform";compositeType="vec";storageType="u32"]
+
+ [:addressSpace="workgroup";compositeType="array";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";compositeType="array";storageType="f32"]
+
+ [:addressSpace="workgroup";compositeType="array";storageType="i32"]
+
+ [:addressSpace="workgroup";compositeType="array";storageType="u32"]
+
+ [:addressSpace="workgroup";compositeType="mat";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";compositeType="mat";storageType="f32"]
+
+ [:addressSpace="workgroup";compositeType="struct";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";compositeType="struct";storageType="f32"]
+
+ [:addressSpace="workgroup";compositeType="struct";storageType="i32"]
+
+ [:addressSpace="workgroup";compositeType="struct";storageType="u32"]
+
+ [:addressSpace="workgroup";compositeType="vec";storageType="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:addressSpace="workgroup";compositeType="vec";storageType="f32"]
+
+ [:addressSpace="workgroup";compositeType="vec";storageType="i32"]
+
+ [:addressSpace="workgroup";compositeType="vec";storageType="u32"]
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:invalid:*]
+ [:case="address_of_function"]
+
+ [:case="address_of_let"]
+
+ [:case="address_of_matrix_elem"]
+
+ [:case="address_of_sampler"]
+
+ [:case="address_of_texture"]
+
+ [:case="address_of_vector_elem_via_index"]
+
+ [:case="address_of_vector_elem_via_member"]
+
+ [:case="deref_non_pointer"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini
new file mode 100644
index 0000000000..a09efcccde
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini
@@ -0,0 +1,102 @@
+[cts.https.html?q=webgpu:shader,validation,expression,unary,arithmetic_negation:invalid_types:*]
+ expected:
+ if os == "mac": SKIP
+ [:type="array";control=false]
+
+ [:type="array";control=true]
+
+ [:type="atomic";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="atomic";control=true]
+
+ [:type="mat2x2f";control=false]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="mat2x2f";control=true]
+
+ [:type="ptr";control=false]
+
+ [:type="ptr";control=true]
+
+ [:type="sampler";control=false]
+
+ [:type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:type="struct";control=false]
+
+ [:type="struct";control=true]
+
+ [:type="texture";control=false]
+
+ [:type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,unary,arithmetic_negation:scalar_vector:*]
+ expected:
+ if os == "mac": SKIP
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html.ini
new file mode 100644
index 0000000000..ecf1ecbf51
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html.ini
@@ -0,0 +1,89 @@
+[cts.https.html?q=webgpu:shader,validation,expression,unary,bitwise_complement:invalid_types:*]
+ [:type="array";control=false]
+
+ [:type="array";control=true]
+
+ [:type="atomic";control=false]
+ expected: FAIL
+
+ [:type="atomic";control=true]
+
+ [:type="mat2x2f";control=false]
+
+ [:type="mat2x2f";control=true]
+
+ [:type="ptr";control=false]
+
+ [:type="ptr";control=true]
+
+ [:type="sampler";control=false]
+
+ [:type="sampler";control=true]
+ expected: FAIL
+
+ [:type="struct";control=false]
+
+ [:type="struct";control=true]
+
+ [:type="texture";control=false]
+
+ [:type="texture";control=true]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,unary,bitwise_complement:scalar_vector:*]
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html.ini
new file mode 100644
index 0000000000..6e454689be
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html.ini
@@ -0,0 +1,96 @@
+[cts.https.html?q=webgpu:shader,validation,expression,unary,logical_negation:invalid_types:*]
+ [:type="array";control=false]
+
+ [:type="array";control=true]
+
+ [:type="atomic";control=false]
+
+ [:type="atomic";control=true]
+
+ [:type="mat2x2f";control=false]
+
+ [:type="mat2x2f";control=true]
+
+ [:type="ptr";control=false]
+
+ [:type="ptr";control=true]
+
+ [:type="sampler";control=false]
+
+ [:type="sampler";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:type="struct";control=false]
+
+ [:type="struct";control=true]
+
+ [:type="texture";control=false]
+
+ [:type="texture";control=true]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,expression,unary,logical_negation:scalar_vector:*]
+ [:type="abstract-float"]
+
+ [:type="abstract-int"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cabstract-float%3E"]
+
+ [:type="vec2%3Cabstract-int%3E"]
+
+ [:type="vec2%3Cbool%3E"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cabstract-float%3E"]
+
+ [:type="vec3%3Cabstract-int%3E"]
+
+ [:type="vec3%3Cbool%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cabstract-float%3E"]
+
+ [:type="vec4%3Cabstract-int%3E"]
+
+ [:type="vec4%3Cbool%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html.ini
new file mode 100644
index 0000000000..db6fb269c6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html.ini
@@ -0,0 +1,58 @@
+[cts.https.html?q=webgpu:shader,validation,extension,pointer_composite_access:deref:*]
+ [:case="array_index_access_via_identifier"]
+
+ [:case="array_index_access_via_pointer"]
+
+ [:case="builtin_struct_frexp_via_identifier"]
+
+ [:case="builtin_struct_frexp_via_pointer"]
+
+ [:case="builtin_struct_modf_via_identifier"]
+
+ [:case="builtin_struct_modf_via_pointer"]
+
+ [:case="matrix_index_access_via_identifier"]
+
+ [:case="matrix_index_access_via_pointer"]
+
+ [:case="struct_member_access_via_identifier"]
+
+ [:case="struct_member_access_via_pointer"]
+
+ [:case="vector_index_access_via_identifier"]
+
+ [:case="vector_index_access_via_pointer"]
+
+ [:case="vector_member_access_via_identifier"]
+
+ [:case="vector_member_access_via_pointer"]
+
+
+[cts.https.html?q=webgpu:shader,validation,extension,pointer_composite_access:pointer:*]
+ [:case="array_index_access_via_identifier"]
+
+ [:case="array_index_access_via_pointer"]
+
+ [:case="builtin_struct_frexp_via_identifier"]
+
+ [:case="builtin_struct_frexp_via_pointer"]
+
+ [:case="builtin_struct_modf_via_identifier"]
+
+ [:case="builtin_struct_modf_via_pointer"]
+
+ [:case="matrix_index_access_via_identifier"]
+
+ [:case="matrix_index_access_via_pointer"]
+
+ [:case="struct_member_access_via_identifier"]
+
+ [:case="struct_member_access_via_pointer"]
+
+ [:case="vector_index_access_via_identifier"]
+
+ [:case="vector_index_access_via_pointer"]
+
+ [:case="vector_member_access_via_identifier"]
+
+ [:case="vector_member_access_via_pointer"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html.ini
new file mode 100644
index 0000000000..dff27a3d0f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html.ini
@@ -0,0 +1,7 @@
+[cts.https.html?q=webgpu:shader,validation,extension,readonly_and_readwrite_storage_textures:textureBarrier:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,validation,extension,readonly_and_readwrite_storage_textures:var_decl:*]
+ [:]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini
index 5a54af60b9..966443e728 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini
@@ -3,6 +3,12 @@
expected:
if os == "win": [PASS, FAIL]
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="workgroup"]
+
[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:member_accessors:*]
[:a_use="assign";b_use="assign";aliased=false]
@@ -74,10 +80,227 @@
expected:
if os == "win": [PASS, FAIL]
+ [:address_space="private";aliased=false]
-[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:one_pointer_one_module_scope:*]
+ [:address_space="private";aliased=true]
+ expected: FAIL
+
+ [:address_space="storage";aliased=false]
+
+ [:address_space="storage";aliased=true]
+
+ [:address_space="workgroup";aliased=false]
+
+ [:address_space="workgroup";aliased=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:one_atomic_pointer_one_module_scope:*]
expected:
- if os == "mac" and not debug: TIMEOUT
+ if os == "mac": [OK, TIMEOUT]
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=true]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:one_pointer_one_module_scope:*]
[:a_use="assign";b_use="assign";aliased=false]
expected:
if os == "win": [PASS, FAIL]
@@ -2352,12 +2575,32 @@
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:address_space="private";aliased=false]
+ expected: FAIL
+
+ [:address_space="private";aliased=true]
+ expected: FAIL
+
+ [:address_space="storage";aliased=false]
+
+ [:address_space="storage";aliased=true]
+
+ [:address_space="workgroup";aliased=false]
+
+ [:address_space="workgroup";aliased=true]
+
[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:same_pointer_read_and_write:*]
[:]
expected:
if os == "win": [PASS, FAIL]
+ [:address_space="private"]
+
+ [:address_space="storage"]
+
+ [:address_space="workgroup"]
+
[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:subcalls:*]
[:a_use="assign";b_use="assign";aliased=false]
@@ -2429,12 +2672,1524 @@
expected:
if os == "win": [PASS, FAIL]
+ [:address_space="private";aliased=false]
+
+ [:address_space="private";aliased=true]
+ expected: FAIL
+
+ [:address_space="storage";aliased=false]
+
+ [:address_space="storage";aliased=true]
+
+ [:address_space="workgroup";aliased=false]
+
+ [:address_space="workgroup";aliased=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=false]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";aliased=false]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";aliased=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers_to_array_elements:*]
+ expected: TIMEOUT
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers_to_struct_members:*]
+ expected: TIMEOUT
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicAdd";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicAnd";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicLoad";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicStore";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+
+ [:builtin_a="atomicSub";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_pointers:*]
expected:
if os == "win" and not debug: [OK, TIMEOUT]
- if os == "linux" and not debug: TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
[:address_space="function";a_use="assign";b_use="assign";aliased=false]
expected:
if os == "win": [PASS, FAIL]
@@ -6204,6 +7959,12 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:address_space="function";aliased=false]
+ expected: FAIL
+
+ [:address_space="function";aliased=true]
+ expected: FAIL
+
[:address_space="private";a_use="assign";b_use="assign";aliased=false]
expected:
if os == "win": [PASS, FAIL]
@@ -8467,3 +10228,239 @@
expected:
if os == "win": [PASS, FAIL]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:address_space="private";aliased=false]
+ expected: FAIL
+
+ [:address_space="private";aliased=true]
+ expected: FAIL
+
+ [:address_space="storage";aliased=false]
+
+ [:address_space="storage";aliased=true]
+
+ [:address_space="workgroup";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_array_elements:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:address_space="function";index=0;aliased=false]
+
+ [:address_space="function";index=0;aliased=true]
+
+ [:address_space="function";index=1;aliased=false]
+
+ [:address_space="function";index=1;aliased=true]
+
+ [:address_space="private";index=0;aliased=false]
+
+ [:address_space="private";index=0;aliased=true]
+
+ [:address_space="private";index=1;aliased=false]
+
+ [:address_space="private";index=1;aliased=true]
+
+ [:address_space="storage";index=0;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+
+ [:address_space="storage";index=0;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+
+ [:address_space="storage";index=1;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="storage";index=1;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=0;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_array_elements_indirect:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:address_space="function";index=0;aliased=false]
+
+ [:address_space="function";index=0;aliased=true]
+
+ [:address_space="function";index=1;aliased=false]
+
+ [:address_space="function";index=1;aliased=true]
+
+ [:address_space="private";index=0;aliased=false]
+
+ [:address_space="private";index=0;aliased=true]
+
+ [:address_space="private";index=1;aliased=false]
+
+ [:address_space="private";index=1;aliased=true]
+
+ [:address_space="storage";index=0;aliased=false]
+
+ [:address_space="storage";index=0;aliased=true]
+
+ [:address_space="storage";index=1;aliased=false]
+
+ [:address_space="storage";index=1;aliased=true]
+
+ [:address_space="workgroup";index=0;aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=0;aliased=true]
+
+ [:address_space="workgroup";index=1;aliased=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";index=1;aliased=true]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_struct_members:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:address_space="function";member="a";aliased=false]
+
+ [:address_space="function";member="a";aliased=true]
+
+ [:address_space="function";member="b";aliased=false]
+
+ [:address_space="function";member="b";aliased=true]
+
+ [:address_space="private";member="a";aliased=false]
+
+ [:address_space="private";member="a";aliased=true]
+
+ [:address_space="private";member="b";aliased=false]
+
+ [:address_space="private";member="b";aliased=true]
+
+ [:address_space="storage";member="a";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="storage";member="a";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_struct_members_indirect:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:address_space="function";member="a";aliased=false]
+
+ [:address_space="function";member="a";aliased=true]
+
+ [:address_space="function";member="b";aliased=false]
+
+ [:address_space="function";member="b";aliased=true]
+
+ [:address_space="private";member="a";aliased=false]
+
+ [:address_space="private";member="a";aliased=true]
+
+ [:address_space="private";member="b";aliased=false]
+
+ [:address_space="private";member="b";aliased=true]
+
+ [:address_space="storage";member="a";aliased=false]
+
+ [:address_space="storage";member="a";aliased=true]
+
+ [:address_space="storage";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="storage";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="a";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="a";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="b";aliased=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:address_space="workgroup";member="b";aliased=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:workgroup_uniform_load:*]
+ [:use="load";aliased=false]
+
+ [:use="load";aliased=true]
+
+ [:use="store";aliased=false]
+
+ [:use="store";aliased=true]
+
+ [:use="workgroupUniformLoad";aliased=false]
+
+ [:use="workgroupUniformLoad";aliased=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini
index ebcf58cfd7..abb21bcf56 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini
@@ -1,34002 +1,205 @@
-[cts.https.html?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_params:*]
- expected: TIMEOUT
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if debug: FAIL
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+[cts.https.html?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_1_param:*]
+ [:p1_type="f32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="i32"]
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="u32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+[cts.https.html?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_2_params:*]
+ [:p1_type="f32";p2_type="f32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="f32";p2_type="i32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="f32";p2_type="u32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="i32";p2_type="f32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="i32";p2_type="i32"]
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="i32";p2_type="u32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="u32";p2_type="f32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="u32";p2_type="i32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:p1_type="u32";p2_type="u32"]
+ expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
+[cts.https.html?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_3_params:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ [:p1_type="f32";p2_type="f32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
+ [:p1_type="f32";p2_type="f32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
+ [:p1_type="f32";p2_type="f32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
+ [:p1_type="f32";p2_type="i32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
+ [:p1_type="f32";p2_type="i32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
+ [:p1_type="f32";p2_type="i32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
+ [:p1_type="f32";p2_type="u32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
+ [:p1_type="f32";p2_type="u32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
+ [:p1_type="f32";p2_type="u32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
+ [:p1_type="i32";p2_type="f32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
+ [:p1_type="i32";p2_type="f32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
+ [:p1_type="i32";p2_type="f32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
+ [:p1_type="i32";p2_type="i32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
+ [:p1_type="i32";p2_type="i32";p3_type="i32"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
+ [:p1_type="i32";p2_type="i32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
+ [:p1_type="i32";p2_type="u32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
+ [:p1_type="i32";p2_type="u32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
+ [:p1_type="i32";p2_type="u32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
+ [:p1_type="u32";p2_type="f32";p3_type="f32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
+ [:p1_type="u32";p2_type="f32";p3_type="i32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
+ [:p1_type="u32";p2_type="f32";p3_type="u32"]
expected:
if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: FAIL
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
+ [:p1_type="u32";p2_type="i32";p3_type="f32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
+ [:p1_type="u32";p2_type="i32";p3_type="i32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
+ [:p1_type="u32";p2_type="i32";p3_type="u32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
+ [:p1_type="u32";p2_type="u32";p3_type="f32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
+ [:p1_type="u32";p2_type="u32";p3_type="i32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
+ [:p1_type="u32";p2_type="u32";p3_type="u32"]
expected: FAIL
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
-
- [:num_args=1;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=2;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="f32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="i32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="f32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="i32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="f32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="i32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="abstract_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="float";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="signed_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="abstract_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="float";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="signed_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="abstract_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="float"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="signed_int"]
- expected: [TIMEOUT, NOTRUN]
-
- [:num_args=3;p1_type="u32";p2_type="u32";p3_type="u32";arg1_value="unsigned_int";arg2_value="unsigned_int";arg3_value="unsigned_int"]
- expected: [TIMEOUT, NOTRUN]
-
[cts.https.html?q=webgpu:shader,validation,functions,restrictions:entry_point_call_target:*]
[:stage="%40compute%20%40workgroup_size(1,1,1)";entry_point="with"]
@@ -34013,7 +216,17 @@
[cts.https.html?q=webgpu:shader,validation,functions,restrictions:function_parameter_matching:*]
- expected: TIMEOUT
+ expected:
+ if os == "win" and debug: TIMEOUT
+ if os == "linux" and debug: TIMEOUT
+ if os == "linux" and not debug: [OK, TIMEOUT]
+ [:decl="array1"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="array1";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -34377,6 +590,13 @@
[:decl="array1";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="array2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="array2";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -34740,6 +960,13 @@
[:decl="array2";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="array3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="array3";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -35103,6 +1330,13 @@
[:decl="array3";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="array4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="array4";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -35466,6 +1700,13 @@
[:decl="array4";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="array5"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="array5";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -35829,6 +2070,13 @@
[:decl="array5";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="bool"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="bool";arg="abstract_float_literal"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -36334,6 +2582,11 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:decl="f16"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": FAIL
+
[:decl="f16";arg="abstract_float_literal"]
expected:
if os == "mac" and debug: FAIL
@@ -36820,6 +3073,9 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:decl="f32"]
+ expected: FAIL
+
[:decl="f32";arg="abstract_float_literal"]
expected: FAIL
@@ -37207,6 +3463,9 @@
[:decl="f32";arg="vec4u_constructor"]
+ [:decl="i32"]
+ expected: FAIL
+
[:decl="i32";arg="abstract_float_literal"]
[:decl="i32";arg="abstract_int_literal"]
@@ -37457,6 +3716,13 @@
[:decl="i32";arg="vec4u_constructor"]
+ [:decl="mat2x2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat2x2";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -38189,6 +4455,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat2x3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat2x3";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -38921,6 +5194,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat2x4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat2x4";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -39653,6 +5933,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat3x2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat3x2";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -40385,6 +6672,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat3x3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat3x3";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -41117,6 +7411,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat3x4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat3x4";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -41849,6 +8150,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat4x2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat4x2";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -42656,6 +8964,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat4x3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat4x3";arg="abstract_float_literal"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -43341,6 +9656,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:decl="mat4x4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="mat4x4";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -43704,6 +10026,13 @@
[:decl="mat4x4";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="ptr1"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="ptr1";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -44067,6 +10396,31 @@
[:decl="ptr1";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="ptr10"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="ptr11"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="ptr12"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="ptr2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="ptr2";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -44430,6 +10784,13 @@
[:decl="ptr2";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="ptr3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="ptr3";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -44793,6 +11154,13 @@
[:decl="ptr3";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="ptr4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="ptr4";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -45156,6 +11524,48 @@
[:decl="ptr4";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="ptr5"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:decl="ptr6"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:decl="ptr7"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:decl="ptr8"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+
+ [:decl="ptr9"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="ptrWorkgroupAtomic"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="ptrWorkgroupNestedAtomic"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:decl="sampler"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="sampler";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -45519,6 +11929,13 @@
[:decl="sampler";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="sampler_comparison"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="sampler_comparison";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -45882,6 +12299,13 @@
[:decl="sampler_comparison";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="struct1"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="struct1";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -46245,6 +12669,13 @@
[:decl="struct1";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="struct2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="struct2";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -46608,6 +13039,13 @@
[:decl="struct2";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="texture_depth"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="texture_depth";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -46971,6 +13409,13 @@
[:decl="texture_depth";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="texture_multisampled"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="texture_multisampled";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -47334,6 +13779,13 @@
[:decl="texture_multisampled";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="texture_sample"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="texture_sample";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -47697,6 +14149,13 @@
[:decl="texture_sample";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="texture_storage"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="texture_storage";arg="abstract_float_literal"]
expected: [TIMEOUT, NOTRUN]
@@ -48060,6 +14519,9 @@
[:decl="texture_storage";arg="vec4u_constructor"]
expected: [TIMEOUT, NOTRUN]
+ [:decl="u32"]
+ expected: FAIL
+
[:decl="u32";arg="abstract_float_literal"]
[:decl="u32";arg="abstract_int_literal"]
@@ -48310,6 +14772,13 @@
[:decl="u32";arg="vec4u_constructor"]
+ [:decl="vec2"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="vec2";arg="abstract_float_literal"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -48904,6 +15373,13 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:decl="vec3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="vec3";arg="abstract_float_literal"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -49392,6 +15868,13 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:decl="vec4"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
[:decl="vec4";arg="abstract_float_literal"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -50070,6 +16553,22 @@
[:case="i32"]
+ [:case="invalid_ptr1"]
+
+ [:case="invalid_ptr2"]
+
+ [:case="invalid_ptr3"]
+
+ [:case="invalid_ptr4"]
+
+ [:case="invalid_ptr5"]
+
+ [:case="invalid_ptr6"]
+
+ [:case="invalid_ptr7"]
+
+ [:case="invalid_ptr8"]
+
[:case="mat2x2"]
[:case="mat2x3"]
@@ -50094,6 +16593,8 @@
[:case="ptr10"]
+ [:case="ptr11"]
+
[:case="ptr12"]
[:case="ptr13"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini
index 860c211c60..143b49cd74 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini
@@ -156,16 +156,22 @@
[cts.https.html?q=webgpu:shader,validation,parse,align:required_alignment:*]
+ expected: TIMEOUT
[:address_space="storage";align="alignment";type={"name":"S","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
@@ -187,83 +193,92 @@
[:address_space="storage";align="alignment";type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align="alignment";type={"name":"u32","storage":4,"uniform":4}]
expected:
@@ -281,7 +296,8 @@
[:address_space="storage";align="alignment";type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:address_space="storage";align="alignment";type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
expected:
@@ -290,11 +306,13 @@
[:address_space="storage";align="alignment";type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:address_space="storage";align="alignment";type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=1;type={"name":"S","storage":8,"uniform":16}]
expected: FAIL
@@ -543,670 +561,949 @@
[:address_space="storage";align=32;type={"name":"S","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"f16","storage":2,"uniform":2}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"f32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"i32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"u32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="storage";align=32;type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"S","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"f16","storage":2,"uniform":2}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"f32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"i32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"u32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align="alignment";type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"S","storage":8,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"f16","storage":2,"uniform":2}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"f32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"i32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"u32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=1;type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"S","storage":8,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"f16","storage":2,"uniform":2}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"f32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"i32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"u32","storage":4,"uniform":4}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=2;type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"S","storage":8,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"f16","storage":2,"uniform":2}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"f32","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"i32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"u32","storage":4,"uniform":4}]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}]
expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:address_space="uniform";align=32;type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
+ expected: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/attribute/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/attribute/cts.https.html.ini
index 09d170b476..c6b78f6ca5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/attribute/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/attribute/cts.https.html.ini
@@ -1,66 +1,48 @@
[cts.https.html?q=webgpu:shader,validation,parse,attribute:expressions:*]
[:value="const";attribute="align"]
- expected: FAIL
[:value="const";attribute="binding"]
- expected: FAIL
[:value="const";attribute="group"]
expected: FAIL
[:value="const";attribute="id"]
- expected: FAIL
[:value="const";attribute="location"]
- expected: FAIL
[:value="const";attribute="size"]
- expected: FAIL
[:value="const";attribute="workgroup_size"]
- expected: FAIL
[:value="const_func";attribute="align"]
- expected: FAIL
[:value="const_func";attribute="binding"]
- expected: FAIL
[:value="const_func";attribute="group"]
expected: FAIL
[:value="const_func";attribute="id"]
- expected: FAIL
[:value="const_func";attribute="location"]
- expected: FAIL
[:value="const_func";attribute="size"]
- expected: FAIL
[:value="const_func";attribute="workgroup_size"]
- expected: FAIL
[:value="expr";attribute="align"]
- expected: FAIL
[:value="expr";attribute="binding"]
- expected: FAIL
[:value="expr";attribute="group"]
expected: FAIL
[:value="expr";attribute="id"]
- expected: FAIL
[:value="expr";attribute="location"]
- expected: FAIL
[:value="expr";attribute="size"]
- expected: FAIL
[:value="expr";attribute="workgroup_size"]
- expected: FAIL
[:value="override";attribute="align"]
expected:
@@ -118,22 +100,16 @@
if os == "win" and not debug: [PASS, FAIL]
[:value="val";attribute="align"]
- expected: FAIL
[:value="val";attribute="binding"]
- expected: FAIL
[:value="val";attribute="group"]
expected: FAIL
[:value="val";attribute="id"]
- expected: FAIL
[:value="val";attribute="location"]
- expected: FAIL
[:value="val";attribute="size"]
- expected: FAIL
[:value="val";attribute="workgroup_size"]
- expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html.ini
new file mode 100644
index 0000000000..bd32c31474
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html.ini
@@ -0,0 +1,106 @@
+[cts.https.html?q=webgpu:shader,validation,parse,break_if:non_bool_param:*]
+ [:type="S"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="mat2x2%3Cf16%3E"]
+
+ [:type="mat2x2f"]
+
+ [:type="mat2x3%3Cf16%3E"]
+
+ [:type="mat2x3f"]
+
+ [:type="mat2x4%3Cf16%3E"]
+
+ [:type="mat2x4f"]
+
+ [:type="mat3x2%3Cf16%3E"]
+
+ [:type="mat3x2f"]
+
+ [:type="mat3x3%3Cf16%3E"]
+
+ [:type="mat3x3f"]
+
+ [:type="mat3x4%3Cf16%3E"]
+
+ [:type="mat3x4f"]
+
+ [:type="mat4x2%3Cf16%3E"]
+
+ [:type="mat4x2f"]
+
+ [:type="mat4x3%3Cf16%3E"]
+
+ [:type="mat4x3f"]
+
+ [:type="mat4x4%3Cf16%3E"]
+
+ [:type="mat4x4f"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Cf16%3E"]
+
+ [:type="vec2%3Cf32%3E"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2%3Cu32%3E"]
+
+ [:type="vec3%3Cf16%3E"]
+
+ [:type="vec3%3Cf32%3E"]
+
+ [:type="vec3%3Ci32%3E"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec4%3Cf16%3E"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4%3Ci32%3E"]
+
+ [:type="vec4%3Cu32%3E"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,break_if:placement:*]
+ [:stmt="break"]
+
+ [:stmt="compound_break"]
+
+ [:stmt="continuing_break_if"]
+
+ [:stmt="continuing_break_if_not_last"]
+
+ [:stmt="continuing_break_if_parens"]
+
+ [:stmt="continuing_if_break"]
+
+ [:stmt="for_break"]
+
+ [:stmt="for_if_break"]
+
+ [:stmt="if_break"]
+
+ [:stmt="loop_break"]
+
+ [:stmt="loop_if_break"]
+
+ [:stmt="return_break"]
+
+ [:stmt="switch_break"]
+
+ [:stmt="switch_case_break"]
+
+ [:stmt="switch_case_if_break"]
+
+ [:stmt="while_break"]
+
+ [:stmt="while_if_break"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html.ini
new file mode 100644
index 0000000000..bcad704ce1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html.ini
@@ -0,0 +1,15 @@
+[cts.https.html?q=webgpu:shader,validation,parse,compound:parse:*]
+ [:stmt="decl"]
+ expected: FAIL
+
+ [:stmt="empty"]
+
+ [:stmt="missing_end"]
+
+ [:stmt="missing_start"]
+
+ [:stmt="nested"]
+
+ [:stmt="semicolon"]
+
+ [:stmt="semicolons"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html.ini
new file mode 100644
index 0000000000..be85c0bed0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html.ini
@@ -0,0 +1,80 @@
+[cts.https.html?q=webgpu:shader,validation,parse,continuing:placement:*]
+ [:stmt="continuing"]
+
+ [:stmt="continuing_block"]
+
+ [:stmt="continuing_break"]
+
+ [:stmt="continuing_break_if"]
+
+ [:stmt="continuing_break_if_parens"]
+
+ [:stmt="continuing_const"]
+ expected: FAIL
+
+ [:stmt="continuing_const_assert"]
+ expected: FAIL
+
+ [:stmt="continuing_continue"]
+
+ [:stmt="continuing_continue_nested"]
+
+ [:stmt="continuing_continuing"]
+
+ [:stmt="continuing_dec"]
+
+ [:stmt="continuing_discard"]
+
+ [:stmt="continuing_empty"]
+
+ [:stmt="continuing_for"]
+
+ [:stmt="continuing_for_break"]
+
+ [:stmt="continuing_functionn_call"]
+
+ [:stmt="continuing_if"]
+
+ [:stmt="continuing_inc"]
+
+ [:stmt="continuing_let"]
+
+ [:stmt="continuing_loop"]
+
+ [:stmt="continuing_loop_nested_continuing"]
+
+ [:stmt="continuing_semicolon"]
+
+ [:stmt="continuing_switch"]
+
+ [:stmt="continuing_switch_break"]
+
+ [:stmt="continuing_var"]
+
+ [:stmt="continuing_while"]
+
+ [:stmt="continuing_while_break"]
+
+ [:stmt="for"]
+
+ [:stmt="if"]
+
+ [:stmt="if_body"]
+
+ [:stmt="if_else"]
+
+ [:stmt="no_body"]
+
+ [:stmt="return"]
+
+ [:stmt="return_for_nested_in_continue"]
+
+ [:stmt="return_if_nested_in_continue"]
+
+ [:stmt="return_in_continue"]
+
+ [:stmt="switch"]
+
+ [:stmt="switch_case"]
+
+ [:stmt="while"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini
index 300b7aef06..4a6a3cdc4b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini
@@ -1,4 +1,15 @@
+[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:after_other_directives:*]
+ [:directive="enable%20f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:directive="requires%20readonly_and_readwrite_storage_textures"]
+
+
[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:conflicting_attribute_different_location:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:loc="compound";s1="error";s2="info"]
expected: FAIL
@@ -36,40 +47,87 @@
expected: FAIL
[:loc="for_stmt";s1="error";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="if_stmt";s1="error";s2="info"]
expected: FAIL
@@ -252,16 +310,28 @@
expected: FAIL
[:loc="while_stmt";s1="error";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="off"]
expected: FAIL
@@ -279,16 +349,26 @@
expected: FAIL
[:loc="while_stmt";s1="warning";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:conflicting_attribute_same_location:*]
+ expected: TIMEOUT
[:loc="compound";s1="error";s2="error"]
expected: FAIL
@@ -326,76 +406,100 @@
expected: FAIL
[:loc="for_body";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_body";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_body";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_body";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_body";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="for_stmt";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="function";s1="error";s2="error"]
expected: FAIL
@@ -434,13 +538,26 @@
expected: FAIL
[:loc="if_else";s1="error";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="if_else";s1="error";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="if_else";s1="error";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="if_else";s1="error";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="if_else";s1="info";s2="error"]
@@ -461,13 +578,20 @@
[:loc="if_else";s1="off";s2="warning"]
[:loc="if_else";s1="warning";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:loc="if_else";s1="warning";s2="info"]
[:loc="if_else";s1="warning";s2="off"]
[:loc="if_else";s1="warning";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:loc="if_stmt";s1="error";s2="error"]
expected: FAIL
@@ -542,328 +666,610 @@
expected: FAIL
[:loc="loop_body";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_body";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_body";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_body";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_body";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_continuing";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="off";s2="info"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="loop_stmt";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_body";s1="error";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_body";s1="error";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="error";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="error";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="info";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="info";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_body";s1="info";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="info";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="off";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="off";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="off";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_body";s1="off";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="warning";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="warning";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="warning";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_body";s1="warning";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_case";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_case";s1="error";s2="info"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="error";s2="off"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="error";s2="warning"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="info";s2="error"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="info";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_case";s1="info";s2="off"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="info";s2="warning"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="off";s2="error"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="off";s2="info"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="off";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_case";s1="off";s2="warning"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="warning";s2="error"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="warning";s2="info"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="warning";s2="off"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_case";s1="warning";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_default";s1="error";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_default";s1="error";s2="info"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="error";s2="off"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="error";s2="warning"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="info";s2="error"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="info";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_default";s1="info";s2="off"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="info";s2="warning"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="off";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="off";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="off";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_default";s1="off";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="warning";s2="error"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="warning";s2="info"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="warning";s2="off"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_default";s1="warning";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="error";s2="error"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="error";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="error";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="error";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="info";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="info";s2="info"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="info";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="info";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="off";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="off";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="off";s2="off"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="off";s2="warning"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="warning";s2="error"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="warning";s2="info"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="warning";s2="off"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:loc="switch_stmt";s1="warning";s2="warning"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:loc="while_body";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_body";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_body";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_body";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_body";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="error"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="error";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="info"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="info";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="off";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="off";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="off";s2="off"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="off";s2="warning"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="error"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="info"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="off"]
+ expected: [TIMEOUT, NOTRUN]
[:loc="while_stmt";s1="warning";s2="warning"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:conflicting_directive:*]
@@ -904,6 +1310,56 @@
expected: FAIL
+[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:diagnostic_scoping:*]
+ [:case="call_unaffected_error"]
+
+ [:case="call_unaffected_off"]
+ expected: FAIL
+
+ [:case="call_unaffected_warn"]
+ expected: FAIL
+
+ [:case="deeper_nest_no_effect"]
+
+ [:case="deepest_nesting_error"]
+
+ [:case="deepest_nesting_off"]
+ expected: FAIL
+
+ [:case="deepest_nesting_warn"]
+ expected: FAIL
+
+ [:case="global_if_nothing_else_warn"]
+ expected: FAIL
+
+ [:case="if_condition_error"]
+
+ [:case="if_condition_off"]
+ expected: FAIL
+
+ [:case="if_condition_warn"]
+ expected: FAIL
+
+ [:case="other_nest_unaffected"]
+ expected: FAIL
+
+ [:case="override_global_off"]
+ expected: FAIL
+
+ [:case="override_global_on"]
+
+ [:case="override_global_warn"]
+ expected: FAIL
+
+ [:case="switch_error"]
+
+ [:case="switch_off"]
+ expected: FAIL
+
+ [:case="switch_warn"]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,validation,parse,diagnostic:invalid_locations:*]
[:type="attribute";location="function_const"]
expected: FAIL
@@ -917,7 +1373,6 @@
[:type="attribute";location="module_const"]
[:type="attribute";location="module_override"]
- expected: FAIL
[:type="attribute";location="module_var"]
@@ -947,7 +1402,6 @@
[:type="directive";location="module_const"]
[:type="directive";location="module_override"]
- expected: FAIL
[:type="directive";location="module_var"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini
index d334b614d3..b212f211c9 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:shader,validation,parse,discard:placement:*]
+ expected:
+ if os == "mac": SKIP
[:place="compute"]
[:place="fragment"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/enable/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/enable/cts.https.html.ini
index cf8d1249b9..75c31003b2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/enable/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/enable/cts.https.html.ini
@@ -12,11 +12,17 @@
[:case="const_assert_before"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+
+ [:case="decl_after"]
+ expected:
if os == "mac": FAIL
[:case="decl_before"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+
+ [:case="diagnostic_before"]
+ expected:
if os == "mac": FAIL
[:case="embedded_comment"]
@@ -44,12 +50,16 @@
if os == "win" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:case="multiple_entries"]
+ expected:
+ if os == "mac": FAIL
+
[:case="parens"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+
+ [:case="requires_before"]
[:case="unknown"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini
index b7c5563934..ddda5c130f 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini
@@ -1,4 +1,5 @@
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:alias_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -46,8 +47,14 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -68,42 +75,84 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -112,88 +161,225 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -206,60 +392,96 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="foo%23bar"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -280,30 +502,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -333,73 +574,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -410,25 +686,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -437,39 +726,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -520,26 +829,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -560,26 +882,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -591,23 +924,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:function_const_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected: FAIL
@@ -644,8 +988,14 @@
expected: FAIL
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -663,41 +1013,82 @@
expected: FAIL
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected: FAIL
[:ident="binding_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -706,86 +1097,218 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -797,16 +1320,26 @@
expected: FAIL
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
@@ -818,37 +1351,57 @@
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected: FAIL
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected: FAIL
@@ -863,30 +1416,49 @@
expected: FAIL
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -916,73 +1488,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected: FAIL
@@ -991,24 +1598,38 @@
expected: FAIL
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -1017,39 +1638,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -1100,26 +1741,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected: FAIL
@@ -1134,25 +1788,36 @@
expected: FAIL
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected: FAIL
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -1164,23 +1829,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:function_let_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
[:ident="%D0%9A%D1%8B%D0%B7%D1%8B%D0%BB"]
@@ -1209,11 +1885,15 @@
[:ident="NULL"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="Self"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="_"]
expected:
@@ -1235,23 +1915,33 @@
[:ident="abstract"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="active"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alias"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignof"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="array"]
expected:
@@ -1262,19 +1952,27 @@
[:ident="as"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="asm"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="async"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="atomic"]
expected:
@@ -1285,25 +1983,35 @@
[:ident="attribute"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="auto"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="await"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="become"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="bf16"]
[:ident="binding_array"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected:
@@ -1321,173 +2029,268 @@
[:ident="break"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="catch"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="class"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_await"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_return"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_yield"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="coherent"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="column_major"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="common"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="compile"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="concept"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="consteval"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="constexpr"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="constinit"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continue"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="crate"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="debugger"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="decltype"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="default"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="delete"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="demote"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="diagnostic"]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="do"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="else"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="enable"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="enum"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="explicit"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="export"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="extends"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="extern"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="external"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="f16"]
expected:
@@ -1507,57 +2310,87 @@
[:ident="fallthrough"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="false"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="filter"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="final"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="finally"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="fn"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo!bar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
[:ident="foo%23bar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Bbar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Fbar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
expected:
@@ -1569,41 +2402,66 @@
[:ident="foo::bar"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
[:ident="for"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="friend"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="from"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="fxgroup"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="get"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="goto"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="groupshared"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="highp"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="i16"]
@@ -1625,55 +2483,91 @@
[:ident="if"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="impl"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="implements"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="import"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="inline"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="instanceof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="interface"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="layout"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="let"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="loop"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="lowp"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="macro"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="macro_rules"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected:
@@ -1740,127 +2634,219 @@
[:ident="match"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mediump"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="meta"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mod"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="module"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="move"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mut"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mutable"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="namespace"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="new"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nil"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noexcept"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noinline"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noperspective"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="null"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nullptr"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="of"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="operator"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="override"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="package"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="packoffset"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="partition"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="pass"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="patch"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="precise"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="precision"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="premerge"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="priv"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="protected"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="ptr"]
expected:
@@ -1871,11 +2857,17 @@
[:ident="pub"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="public"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="quat"]
@@ -1883,46 +2875,71 @@
[:ident="readonly"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="ref"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="regardless"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="register"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="require"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="resource"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="restrict"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="return"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="sampler"]
expected:
@@ -1940,15 +2957,24 @@
[:ident="self"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="set"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="shared"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="signed"]
expected:
@@ -1959,55 +2985,92 @@
[:ident="sizeof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="smooth"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="snorm"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static_assert"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="std"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="struct"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="subroutine"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="super"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="switch"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="target"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="template"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected:
@@ -2123,47 +3186,79 @@
[:ident="this"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="thread_local"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="throw"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="trait"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="true"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="try"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="type"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typedef"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typeid"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typename"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typeof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="u16"]
@@ -2185,41 +3280,67 @@
[:ident="union"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unless"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unorm"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unsafe"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unsigned"]
[:ident="unsized"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="use"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="using"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="var"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="varying"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="vec2"]
expected:
@@ -2244,38 +3365,62 @@
[:ident="virtual"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="volatile"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="wgsl"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="where"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="while"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="with"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="writeonly"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="yield"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:function_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -2323,8 +3468,14 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -2345,42 +3496,85 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -2389,88 +3583,230 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -2483,18 +3819,31 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
expected:
@@ -2505,38 +3854,58 @@
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -2557,30 +3926,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -2610,73 +3998,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -2687,25 +4110,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -2714,39 +4150,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -2797,26 +4253,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -2837,26 +4306,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -2868,23 +4348,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:function_param_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -2922,6 +4413,8 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="0foo"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="FOO"]
expected:
@@ -2932,10 +4425,18 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="_0"]
expected:
@@ -2946,50 +4447,96 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="__"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="__foo"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="_foo0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -2998,88 +4545,227 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -3092,60 +4778,105 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="foo%23bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Bbar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo.bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo::bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -3166,30 +4897,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -3219,73 +4969,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -3296,25 +5081,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -3323,39 +5121,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -3406,26 +5224,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -3446,26 +5277,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -3477,23 +5319,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:function_var_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
[:ident="%D0%9A%D1%8B%D0%B7%D1%8B%D0%BB"]
@@ -3522,11 +5375,15 @@
[:ident="NULL"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="Self"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="_"]
expected:
@@ -3548,23 +5405,32 @@
[:ident="abstract"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="active"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alias"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignof"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="array"]
expected:
@@ -3575,19 +5441,27 @@
[:ident="as"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="asm"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="async"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="atomic"]
expected:
@@ -3598,25 +5472,35 @@
[:ident="attribute"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="auto"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="await"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="become"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="bf16"]
[:ident="binding_array"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected:
@@ -3635,172 +5519,257 @@
[:ident="break"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="catch"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="class"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_await"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_return"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="co_yield"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="coherent"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="column_major"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="common"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="compile"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="concept"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
expected:
if os == "win": FAIL
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="consteval"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="constexpr"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="constinit"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continue"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="crate"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="debugger"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="decltype"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="default"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="delete"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="demote"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="diagnostic"]
expected:
if os == "win": FAIL
if os == "linux" and debug: FAIL
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="do"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="else"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="enable"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="enum"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="explicit"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="export"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="extends"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="extern"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="external"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="f16"]
expected:
@@ -3820,27 +5789,41 @@
[:ident="fallthrough"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="false"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="filter"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="final"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="finally"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="fn"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo!bar"]
expected:
@@ -3859,18 +5842,22 @@
[:ident="foo%2Fbar"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
expected:
@@ -3883,40 +5870,63 @@
[:ident="foo::bar"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
[:ident="for"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="friend"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="from"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="fxgroup"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="get"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="goto"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="groupshared"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="highp"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="i16"]
@@ -3938,55 +5948,91 @@
[:ident="if"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="impl"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="implements"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="import"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="inline"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="instanceof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="interface"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="layout"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="let"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="loop"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="lowp"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="macro"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="macro_rules"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected:
@@ -4053,127 +6099,219 @@
[:ident="match"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mediump"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="meta"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mod"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="module"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="move"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mut"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="mutable"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="namespace"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="new"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nil"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noexcept"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noinline"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="noperspective"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="null"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="nullptr"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="of"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="operator"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="override"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="package"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="packoffset"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="partition"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="pass"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="patch"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="precise"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="precision"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="premerge"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="priv"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="protected"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="ptr"]
expected:
@@ -4184,11 +6322,17 @@
[:ident="pub"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="public"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="quat"]
@@ -4196,46 +6340,71 @@
[:ident="readonly"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="ref"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="regardless"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="register"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="require"]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="resource"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="restrict"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="return"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="sampler"]
expected:
@@ -4253,15 +6422,24 @@
[:ident="self"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="set"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="shared"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="signed"]
expected:
@@ -4272,55 +6450,92 @@
[:ident="sizeof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="smooth"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="snorm"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static_assert"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="static_cast"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="std"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="struct"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="subroutine"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="super"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="switch"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="target"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="template"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected:
@@ -4436,47 +6651,79 @@
[:ident="this"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="thread_local"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="throw"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="trait"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="true"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="try"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="type"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typedef"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typeid"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typename"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="typeof"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="u16"]
@@ -4498,41 +6745,67 @@
[:ident="union"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unless"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unorm"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unsafe"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="unsigned"]
[:ident="unsized"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="use"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="using"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="var"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="varying"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="vec2"]
expected:
@@ -4557,38 +6830,62 @@
[:ident="virtual"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="volatile"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="wgsl"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="where"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="while"]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="with"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="writeonly"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="yield"]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:module_const_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -4636,8 +6933,14 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -4658,42 +6961,84 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -4702,88 +7047,225 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -4796,18 +7278,30 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
expected:
@@ -4818,38 +7312,63 @@
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -4870,30 +7389,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -4923,73 +7461,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -5000,25 +7573,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -5027,39 +7613,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -5110,26 +7716,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -5150,26 +7769,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -5181,23 +7811,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:module_var_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -5245,8 +7886,14 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -5267,42 +7914,83 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -5311,88 +7999,215 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -5405,16 +8220,26 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
@@ -5427,38 +8252,58 @@
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -5479,30 +8324,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -5532,73 +8396,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -5609,25 +8508,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -5636,39 +8548,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -5719,26 +8651,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -5759,26 +8704,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -5790,20 +8746,30 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:non_normalized:*]
@@ -5811,96 +8777,133 @@
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:override_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
- expected: FAIL
[:ident="%D0%9A%D1%8B%D0%B7%D1%8B%D0%BB"]
- expected: FAIL
[:ident="%D6%83%D5%AB%D6%80%D5%B8%D6%82%D5%A6"]
- expected: FAIL
[:ident="%D7%A9%D6%B8%D7%81%D7%9C%D7%95%D6%B9%D7%9D"]
- expected: FAIL
[:ident="%D8%B3%D9%84%D8%A7%D9%85"]
- expected: FAIL
[:ident="%E0%A4%97%E0%A5%81%E0%A4%B2%E0%A4%BE%E0%A4%AC%E0%A5%80"]
- expected: FAIL
[:ident="%E6%9C%9D%E7%84%BC%E3%81%91"]
- expected: FAIL
[:ident="%EA%B2%80%EC%A0%95"]
- expected: FAIL
[:ident="%F0%90%B0%93%F0%90%B0%8F%F0%90%B0%87"]
- expected: FAIL
[:ident="0foo"]
[:ident="FOO"]
- expected: FAIL
[:ident="Foo"]
- expected: FAIL
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
[:ident="_0"]
- expected: FAIL
[:ident="_0foo"]
- expected: FAIL
[:ident="__"]
[:ident="__foo"]
[:ident="_foo0"]
- expected: FAIL
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
- expected: FAIL
[:ident="binding_array"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -5909,86 +8912,221 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="do"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -5997,64 +9135,89 @@
expected: FAIL
[:ident="f64"]
- expected: FAIL
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
[:ident="foo"]
- expected: FAIL
[:ident="foo%23bar"]
[:ident="foo%2Bbar"]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
- expected: FAIL
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
- expected: FAIL
[:ident="i32"]
expected: FAIL
@@ -6063,33 +9226,51 @@
expected: FAIL
[:ident="i8"]
- expected: FAIL
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -6119,99 +9300,146 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
- expected: FAIL
[:ident="r%C3%A9flexion"]
- expected: FAIL
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -6220,39 +9448,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -6303,29 +9551,41 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
- expected: FAIL
[:ident="u32"]
expected: FAIL
@@ -6334,28 +9594,37 @@
expected: FAIL
[:ident="u8"]
- expected: FAIL
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
- expected: FAIL
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -6367,23 +9636,34 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,identifiers:struct_name:*]
+ expected: TIMEOUT
[:ident="%CE%94%CE%AD%CE%BB%CF%84%CE%B1"]
expected:
if os == "win" and not debug: [PASS, FAIL]
@@ -6431,8 +9711,14 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="NULL"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="Self"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="_"]
@@ -6453,42 +9739,84 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="abstract"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="active"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alias"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="alignas"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="alignof"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="array"]
expected: FAIL
[:ident="as"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="asm_fragment"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="async"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="atomic"]
expected: FAIL
[:ident="attribute"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="auto"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="await"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="become"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bf16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="binding_array"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="bitcast"]
expected: FAIL
@@ -6497,88 +9825,216 @@
expected: FAIL
[:ident="break"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="case"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="cast"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="catch"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="class"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_await"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_return"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="co_yield"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="coherent"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="column_major"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="common"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="compile_fragment"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="concept"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="const"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="const_assert"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="const_cast"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="consteval"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constexpr"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="constinit"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="continue"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="continuing"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="crate"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="debugger"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="decltype"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="default"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="delete"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="demote_to_helper"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="diagnostic"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:ident="discard"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="do"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="dynamic_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="else"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="enable"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="enum"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="explicit"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="export"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extends"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="extern"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="external"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="f16"]
expected: FAIL
@@ -6591,60 +10047,98 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="fallthrough"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="false"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="filter"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="final"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="finally"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fn"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="foo!bar"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="foo%23bar"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Bbar"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo%2Fbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%40bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo%5C%5Cbar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo,bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo-bar"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:ident="foo.bar"]
[:ident="foo::bar"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:ident="foo__0"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="for"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="friend"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="from"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="fxgroup"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="get"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="goto"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="groupshared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="highp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="i16"]
expected:
@@ -6665,30 +10159,49 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="if"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="impl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="implements"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="import"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="inline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="instanceof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="interface"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="layout"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="loop"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="lowp"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="macro_rules"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mat2x2"]
expected: FAIL
@@ -6718,73 +10231,108 @@
expected: FAIL
[:ident="match"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mediump"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="meta"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mod"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="module"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="move"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mut"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="mutable"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="namespace"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="new"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nil"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noexcept"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noinline"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nointerpolation"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="noperspective"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="null"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="nullptr"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="of"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="operator"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="override"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="package"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="packoffset"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="partition"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pass"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="patch"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="pixelfragment"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precise"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="precision"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="premerge"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="priv"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="protected"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ptr"]
expected: FAIL
[:ident="pub"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="public"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="quat"]
expected:
@@ -6795,25 +10343,38 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="readonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="ref"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="regardless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="register"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="reinterpret_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="require"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:ident="requires"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="resource"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="restrict"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="return"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="sampler"]
expected: FAIL
@@ -6822,39 +10383,59 @@
expected: FAIL
[:ident="self"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="set"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="shared"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="signed"]
expected: FAIL
[:ident="sizeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="smooth"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="snorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_assert"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="static_cast"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="std"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="struct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="subroutine"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="super"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="switch"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="target"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="template"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="texture_1d"]
expected: FAIL
@@ -6905,26 +10486,39 @@
expected: FAIL
[:ident="this"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="thread_local"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="throw"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="trait"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="true"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="try"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="type"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typedef"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeid"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typename"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="typeof"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="u16"]
expected:
@@ -6945,26 +10539,37 @@
if os == "win" and not debug: [PASS, FAIL]
[:ident="union"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unless"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unorm"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsafe"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="unsigned"]
expected:
if os == "win" and not debug: [PASS, FAIL]
[:ident="unsized"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="use"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="using"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="var"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="varying"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="vec2"]
expected: FAIL
@@ -6976,17 +10581,27 @@
expected: FAIL
[:ident="virtual"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="volatile"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="wgsl"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="where"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="while"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:ident="with"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="writeonly"]
+ expected: [TIMEOUT, NOTRUN]
[:ident="yield"]
+ expected: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini
index 8506b9d75d..4f56d2c4d7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini
@@ -1,4 +1,5 @@
[cts.https.html?q=webgpu:shader,validation,parse,must_use:builtin_must_use:*]
+ expected: TIMEOUT
[:call="abs";use=false]
expected:
if os == "win": FAIL
@@ -215,56 +216,83 @@
[:call="dpdx";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdx";use=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="dpdxCoarse";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdxCoarse";use=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="dpdxFine";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdxFine";use=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="dpdy";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdy";use=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="dpdyCoarse";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdyCoarse";use=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="dpdyFine";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="dpdyFine";use=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="exp";use=false]
expected:
@@ -360,30 +388,33 @@
[:call="fwidth";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="fwidth";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="fwidthCoarse";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="fwidthCoarse";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="fwidthFine";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="fwidthFine";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="i32";use=false]
expected:
@@ -394,9 +425,10 @@
[:call="insertBits";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:call="insertBits";use=true]
expected:
@@ -405,211 +437,271 @@
[:call="inverseSqrt";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="inverseSqrt";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:call="ldexp";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="ldexp";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="length";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="length";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="log";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="log";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="log2";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="log2";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="max";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="max";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:call="min";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="min";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:call="mix";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="mix";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="modf";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="modf";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="normalize";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="normalize";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="pack2x16float";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pack2x16float";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="pack2x16snorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pack2x16snorm";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="pack2x16unorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pack2x16unorm";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="pack4x8snorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pack4x8snorm";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="pack4x8unorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pack4x8unorm";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="pow";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="pow";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="quantizeToF16";use=false]
expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="quantizeToF16";use=true]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="radians";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="radians";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="reflect";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="reflect";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="refract";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="refract";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="reverseBits";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="reverseBits";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="round";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="round";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="saturate";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="saturate";use=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="select";use=false]
expected:
@@ -623,56 +715,70 @@
[:call="sign";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="sign";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="sin";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="sin";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="sinh";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="sinh";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="smoothstep";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="smoothstep";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="sqrt";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="sqrt";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="step";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="step";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="struct";use=false]
expected:
@@ -686,182 +792,228 @@
[:call="tan";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="tan";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="tanh";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="tanh";use=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="textureDimensions";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureDimensions";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="textureGather";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureGather";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureGatherCompare";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureGatherCompare";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureLoad";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureLoad";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="textureNumLayers";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureNumLayers";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="textureNumLevels";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureNumLevels";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="textureNumSamples";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureNumSamples";use=true]
+ expected: [TIMEOUT, NOTRUN]
[:call="textureSample";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSample";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleBaseClampToEdge";use=false]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleBaseClampToEdge";use=true]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleBias";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleBias";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleCompare";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleCompare";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleCompareLevel";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleCompareLevel";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleGrad";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleGrad";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="textureSampleLevel";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="textureSampleLevel";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="transpose";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="transpose";use=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="trunc";use=false]
expected:
if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="trunc";use=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:call="u32";use=false]
expected:
@@ -871,67 +1023,83 @@
[:call="unpack2x16float";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="unpack2x16float";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="unpack2x16snorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="unpack2x16snorm";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="unpack2x16unorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="unpack2x16unorm";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="unpack4x8snorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="unpack4x8snorm";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="unpack4x8unorm";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="unpack4x8unorm";use=true]
expected:
- if os == "linux" and not debug: [PASS, FAIL]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:call="workgroupUniformLoad";use=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: FAIL
- if os == "linux" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:call="workgroupUniformLoad";use=true]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,parse,must_use:builtin_no_must_use:*]
@@ -1081,6 +1249,15 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="";call="local_var"]
+ expected: FAIL
+
+ [:use="";call="matrix_elem"]
+ expected: FAIL
+
+ [:use="";call="no_call"]
+ expected: FAIL
+
[:use="";call="param"]
expected:
if os == "win": FAIL
@@ -1095,6 +1272,15 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="";call="pointer"]
+ expected: FAIL
+
+ [:use="";call="private_var"]
+ expected: FAIL
+
+ [:use="";call="return"]
+ expected: FAIL
+
[:use="";call="statement"]
expected:
if os == "win": FAIL
@@ -1102,6 +1288,9 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="";call="storage_var"]
+ expected: FAIL
+
[:use="";call="var"]
expected:
if os == "win": FAIL
@@ -1109,6 +1298,9 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="";call="vector_elem"]
+ expected: FAIL
+
[:use="%40must_use";call="condition"]
expected:
if os == "win": FAIL
@@ -1123,6 +1315,15 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="%40must_use";call="local_var"]
+ expected: FAIL
+
+ [:use="%40must_use";call="matrix_elem"]
+ expected: FAIL
+
+ [:use="%40must_use";call="no_call"]
+ expected: FAIL
+
[:use="%40must_use";call="param"]
expected:
if os == "win": FAIL
@@ -1137,10 +1338,22 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="%40must_use";call="pointer"]
+ expected: FAIL
+
+ [:use="%40must_use";call="private_var"]
+ expected: FAIL
+
+ [:use="%40must_use";call="return"]
+ expected: FAIL
+
[:use="%40must_use";call="statement"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+ [:use="%40must_use";call="storage_var"]
+ expected: FAIL
+
[:use="%40must_use";call="var"]
expected:
if os == "win": FAIL
@@ -1148,6 +1361,9 @@
if os == "linux" and not debug: [PASS, FAIL]
if os == "mac": FAIL
+ [:use="%40must_use";call="vector_elem"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:shader,validation,parse,must_use:declaration:*]
[:test="empty_parameter"]
@@ -1191,3 +1407,8 @@
[:test="var"]
expected:
if os == "linux" and not debug: [PASS, FAIL]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,must_use:ignore_result_of_non_must_use_that_returns_call_of_must_use:*]
+ [:]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html.ini
index 4e8505616d..22de98cc2b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html.ini
@@ -36,39 +36,58 @@
if os == "linux" and not debug: [PASS, FAIL]
-[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_compute_on_function:*]
- [:dupe=""]
- expected:
- if os == "win": [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_compute_function:*]
+ [:extra="";before=false]
- [:dupe="%40compute"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ [:extra="";before=true]
+ [:extra="%40compute";before=false]
-[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_fragment_on_function:*]
- [:dupe=""]
- expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ [:extra="%40compute";before=true]
- [:dupe="%40fragment"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ [:extra="%40fragment";before=false]
+ [:extra="%40fragment";before=true]
-[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_vertex_on_function:*]
- [:dupe=""]
- expected:
- if os == "win": [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ [:extra="%40vertex";before=false]
- [:dupe="%40vertex"]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
- if os == "linux" and not debug: [PASS, FAIL]
+ [:extra="%40vertex";before=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_fragment_function:*]
+ [:extra="";before=false]
+
+ [:extra="";before=true]
+
+ [:extra="%40compute";before=false]
+
+ [:extra="%40compute";before=true]
+
+ [:extra="%40fragment";before=false]
+
+ [:extra="%40fragment";before=true]
+
+ [:extra="%40vertex";before=false]
+
+ [:extra="%40vertex";before=true]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_vertex_function:*]
+ [:extra="";before=false]
+
+ [:extra="";before=true]
+
+ [:extra="%40compute";before=false]
+
+ [:extra="%40compute";before=true]
+
+ [:extra="%40fragment";before=false]
+
+ [:extra="%40fragment";before=true]
+
+ [:extra="%40vertex";before=false]
+
+ [:extra="%40vertex";before=true]
[cts.https.html?q=webgpu:shader,validation,parse,pipeline_stage:fragment_parsing:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html.ini
new file mode 100644
index 0000000000..e248456ca2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html.ini
@@ -0,0 +1,40 @@
+[cts.https.html?q=webgpu:shader,validation,parse,requires:requires:*]
+ [:case="const_assert_after"]
+
+ [:case="const_assert_before"]
+
+ [:case="decl_after"]
+
+ [:case="decl_before"]
+
+ [:case="diagnostic_before"]
+
+ [:case="embedded_comment"]
+
+ [:case="enable_before"]
+
+ [:case="multi_line"]
+
+ [:case="multiple_entries_different"]
+
+ [:case="multiple_entries_duplicate"]
+
+ [:case="multiple_requires_different"]
+
+ [:case="multiple_requires_duplicate"]
+
+ [:case="parens"]
+
+ [:case="unknown"]
+
+ [:case="valid"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,requires:wgsl_matches_api:*]
+ [:feature="packed_4x8_integer_dot_product"]
+
+ [:feature="pointer_composite_access"]
+
+ [:feature="readonly_and_readwrite_storage_textures"]
+
+ [:feature="unrestricted_pointer_parameters"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html.ini
index 048738ade6..0124625fb7 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html.ini
@@ -46,6 +46,11 @@
if os == "win" and not debug: [PASS, FAIL]
+[cts.https.html?q=webgpu:shader,validation,parse,semicolon:after_diagnostic:*]
+ [:]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,validation,parse,semicolon:after_discard:*]
[:]
expected:
@@ -152,6 +157,10 @@
expected: FAIL
+[cts.https.html?q=webgpu:shader,validation,parse,semicolon:after_requires:*]
+ [:]
+
+
[cts.https.html?q=webgpu:shader,validation,parse,semicolon:after_return:*]
[:]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html.ini
new file mode 100644
index 0000000000..75e55a6040
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html.ini
@@ -0,0 +1,172 @@
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:function_param:*]
+ [:]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_access_mode:*]
+ [:inject="function"]
+
+ [:inject="module"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="none"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="sibling"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_atomic:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+
+ [:inject="sibling"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_atomic_type:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_barriers:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="sibling"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_f16:*]
+ [:inject="function"]
+
+ [:inject="module"]
+
+ [:inject="none"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="sibling"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_handle_type:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_texture:*]
+ [:inject="function"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="module"]
+
+ [:inject="none"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:inject="sibling"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html.ini
new file mode 100644
index 0000000000..50eee90041
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html.ini
@@ -0,0 +1,140 @@
+[cts.https.html?q=webgpu:shader,validation,parse,statement_behavior:invalid_functions:*]
+ [:function="next_for_type"]
+
+ [:function="next_return_for_type"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,statement_behavior:invalid_statements:*]
+ [:body="break"]
+
+ [:body="break_if"]
+
+ [:body="compound1"]
+ expected: FAIL
+
+ [:body="continue"]
+
+ [:body="for1"]
+ expected: FAIL
+
+ [:body="for2"]
+ expected: FAIL
+
+ [:body="for3"]
+
+ [:body="for4"]
+
+ [:body="for5"]
+
+ [:body="for6"]
+
+ [:body="loop1"]
+ expected: FAIL
+
+ [:body="loop2"]
+ expected: FAIL
+
+ [:body="loop3"]
+ expected: FAIL
+
+ [:body="loop4"]
+
+ [:body="loop5"]
+
+ [:body="loop6"]
+
+ [:body="loop7"]
+
+ [:body="loop8"]
+
+ [:body="sequence1"]
+
+ [:body="switch1"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,statement_behavior:valid_functions:*]
+ [:function="empty"]
+
+ [:function="next_return"]
+
+ [:function="no_final_return"]
+
+
+[cts.https.html?q=webgpu:shader,validation,parse,statement_behavior:valid_statements:*]
+ [:body="assign"]
+
+ [:body="break1"]
+
+ [:body="break2"]
+
+ [:body="break_if"]
+
+ [:body="compound1"]
+
+ [:body="compound2"]
+
+ [:body="compound_assign"]
+
+ [:body="const_assert"]
+ expected: FAIL
+
+ [:body="continue1"]
+
+ [:body="discard"]
+
+ [:body="empty"]
+
+ [:body="for1"]
+
+ [:body="for2"]
+
+ [:body="for3"]
+
+ [:body="function_call1"]
+
+ [:body="function_call2"]
+
+ [:body="if1"]
+
+ [:body="if2"]
+
+ [:body="let"]
+
+ [:body="loop1"]
+
+ [:body="loop2"]
+
+ [:body="loop3"]
+
+ [:body="loop4"]
+ expected: FAIL
+
+ [:body="phony_assign"]
+
+ [:body="return"]
+
+ [:body="sequence1"]
+
+ [:body="sequence2"]
+
+ [:body="sequence3"]
+ expected: FAIL
+
+ [:body="switch1"]
+
+ [:body="switch3"]
+
+ [:body="switch4"]
+
+ [:body="swtich2"]
+
+ [:body="var1"]
+
+ [:body="var2"]
+
+ [:body="while1"]
+
+ [:body="while2"]
+
+ [:body="while3"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini
index 0ff4178aa9..0edbc23e11 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini
@@ -1,5 +1,9 @@
[cts.https.html?q=webgpu:shader,validation,parse,var_and_let:initializer_type:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:variableOrConstant="let"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:variableOrConstant="var"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html.ini
index 978a30a699..da970f57fd 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html.ini
@@ -83,9 +83,3 @@
[:]
expected:
if os == "win" and not debug: [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,validation,shader_io,binding:binding_without_group:*]
- [:]
- expected:
- if os == "win" and not debug: [PASS, FAIL]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini
index 9f37fed525..03066c422e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini
@@ -195,53 +195,112 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:stage_inout:*]
+ expected: TIMEOUT
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="in"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="out"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="compute";target_io="in"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="compute";target_io="out"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="";target_io="in"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="";target_io="out"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="compute";target_io="in"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="compute";target_io="out"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="";target_io="in"]
@@ -260,36 +319,102 @@
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="vertex";target_io="out"]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
@@ -324,100 +449,217 @@
[:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="";target_io="in"]
@@ -484,100 +726,148 @@
[:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="vertex";target_io="out"]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
@@ -612,41 +902,59 @@
[:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
+ expected: [TIMEOUT, NOTRUN]
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:type:*]
expected:
- if not debug: TIMEOUT
+ if os == "linux" and debug: [OK, TIMEOUT]
+ [:name="frag_depth";stage="fragment";io="out";type="f32"]
+
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="MyStruct"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -903,6 +1211,8 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:name="front_facing";stage="fragment";io="in";type="bool"]
+
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="MyStruct"]
expected:
if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -1051,6 +1361,10 @@
[:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec4%3Cu32%3E"]
+ [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
expected:
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -1359,6 +1673,8 @@
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:name="instance_index";stage="vertex";io="in";type="u32"]
+
[:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="MyStruct"]
[:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
@@ -1487,6 +1803,8 @@
[:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
+ [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E"]
+
[:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -1743,6 +2061,10 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:name="local_invocation_index";stage="compute";io="in";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="MyStruct"]
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
@@ -1999,6 +2321,10 @@
expected:
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -2255,6 +2581,8 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E"]
+
[:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="MyStruct"]
[:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
@@ -2383,6 +2711,8 @@
[:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
+ [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E"]
+
[:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="MyStruct"]
[:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
@@ -2511,6 +2841,10 @@
[:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
+ [:name="sample_index";stage="fragment";io="in";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="MyStruct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -2767,6 +3101,10 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:name="sample_mask";stage="fragment";io="in";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="MyStruct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -3023,6 +3361,10 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:name="sample_mask";stage="fragment";io="out";type="u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="MyStruct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -3279,6 +3621,8 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:name="vertex_index";stage="vertex";io="in";type="u32"]
+
[:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="MyStruct"]
[:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
@@ -3407,6 +3751,10 @@
[:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
+ [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
[:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html.ini
index b31f9d590f..2242eb23c8 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html.ini
@@ -60,7 +60,3 @@
[:]
expected:
if os == "win" and debug: [PASS, FAIL]
-
-
-[cts.https.html?q=webgpu:shader,validation,shader_io,group:group_without_binding:*]
- [:]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini
index 83f3e28a50..5ffcbc1a24 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini
@@ -1,347 +1,692 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,group_and_binding:binding_attributes:*]
+ expected: TIMEOUT
[:stage="compute";has_group=false;has_binding=false;resource="sampler"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="sampler_comparison"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_depth_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_depth_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_depth_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_depth_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_depth_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_external"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_storage_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_storage_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_storage_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="texture_storage_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=false;resource="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="sampler"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="sampler_comparison"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_depth_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_depth_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_depth_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_depth_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_depth_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_external"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_storage_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_storage_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_storage_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="texture_storage_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=false;has_binding=true;resource="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="sampler"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="sampler_comparison"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_depth_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_depth_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_depth_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_depth_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_depth_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_external"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_storage_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_storage_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_storage_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="texture_storage_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=false;resource="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="sampler"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="sampler_comparison"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_depth_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_depth_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_depth_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_depth_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_depth_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_external"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_storage_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_storage_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_storage_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="texture_storage_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="compute";has_group=true;has_binding=true;resource="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="sampler"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="sampler_comparison"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_depth_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_depth_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_depth_cube"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_depth_cube_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_depth_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_external"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_multisampled_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_storage_1d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_storage_2d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_storage_2d_array"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="texture_storage_3d"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=false;resource="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="sampler"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="sampler_comparison"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="storage"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_1d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_2d_array"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_3d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_cube"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_cube_array"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_2d"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_2d_array"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_cube"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_cube_array"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_multisampled_2d"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_external"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_multisampled_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_1d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_2d_array"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_3d"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=false;has_binding=true;resource="uniform"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="sampler"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="sampler_comparison"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="storage"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_1d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_2d_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_3d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_cube"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_cube_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_2d_array"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_cube"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_cube_array"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_multisampled_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_external"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_multisampled_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_1d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_2d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_2d_array"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_3d"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=false;resource="uniform"]
+ expected:
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="sampler"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="sampler_comparison"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="storage"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_1d"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_2d_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_3d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_cube"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_cube_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_depth_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_depth_2d_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_depth_cube"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_depth_cube_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_depth_multisampled_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_external"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_multisampled_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_storage_1d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_storage_2d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_storage_2d_array"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="texture_storage_3d"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";has_group=true;has_binding=true;resource="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="sampler"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="sampler_comparison"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="storage"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_1d"]
@@ -354,16 +699,24 @@
[:stage="vertex";has_group=false;has_binding=false;resource="texture_cube"]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_cube_array"]
+ expected:
+ if os == "win" and not debug: [PASS, FAIL]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_2d"]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_2d_array"]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_cube"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_cube_array"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_multisampled_2d"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=false;resource="texture_external"]
@@ -378,6 +731,8 @@
[:stage="vertex";has_group=false;has_binding=false;resource="texture_storage_3d"]
[:stage="vertex";has_group=false;has_binding=false;resource="uniform"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";has_group=false;has_binding=true;resource="sampler"]
@@ -508,275 +863,494 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,group_and_binding:different_entry_points:*]
+ expected: TIMEOUT
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="compute";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="fragment";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="compute";b_stage="vertex";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected: [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="fragment";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="storage";b_kind="texture_3d";usage="direct"]
@@ -789,48 +1363,105 @@
[:a_stage="fragment";b_stage="vertex";a_kind="storage";b_kind="uniform";usage="direct"]
[:a_stage="fragment";b_stage="vertex";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="uniform";usage="direct"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="texture_external";b_kind="uniform";usage="transitive"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="fragment";b_stage="vertex";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:a_stage="vertex";b_stage="compute";a_kind="storage";b_kind="texture_3d";usage="direct"]
@@ -1013,9 +1644,8 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,group_and_binding:single_entry_point:*]
expected:
- if os == "win" and not debug: TIMEOUT
- if os == "linux" and not debug: TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:stage="compute";a_kind="storage";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1152,6 +1782,20 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="storage";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1288,6 +1932,22 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="storage";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1424,6 +2084,22 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_2d";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1560,6 +2236,22 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1696,6 +2388,22 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_2d";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -1902,6 +2610,22 @@
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_external";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -2174,6 +2898,22 @@
if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -2422,6 +3162,22 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="texture_external";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and not debug: [TIMEOUT, NOTRUN]
@@ -2662,6 +3418,22 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="texture_external";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="texture_external";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="uniform";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -2870,6 +3642,22 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="uniform";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -3078,6 +3866,22 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="compute";a_kind="uniform";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -3286,6 +4090,22 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:stage="compute";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="compute";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="storage";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win": FAIL
@@ -3456,6 +4276,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="storage";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -3640,6 +4474,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="storage";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -3824,6 +4672,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_2d";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -4008,6 +4870,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -4222,6 +5098,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_2d";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win" and debug: FAIL
@@ -4438,6 +5328,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_external";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
@@ -4659,6 +5563,20 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -4811,6 +5729,20 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="texture_external";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if not debug: [TIMEOUT, NOTRUN]
@@ -4963,6 +5895,20 @@
expected:
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="texture_external";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="texture_external";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="uniform";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -5099,6 +6045,20 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -5235,6 +6195,20 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="fragment";a_kind="uniform";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if debug: FAIL
@@ -5371,6 +6345,20 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:stage="fragment";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="fragment";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="storage";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5443,6 +6431,20 @@
[:stage="vertex";a_kind="storage";b_kind="texture_3d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="storage";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="storage";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="storage";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5515,6 +6517,20 @@
[:stage="vertex";a_kind="storage";b_kind="texture_storage_1d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="storage";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="storage";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="storage";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5587,6 +6603,20 @@
[:stage="vertex";a_kind="storage";b_kind="uniform";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="storage";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="storage";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_2d";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5659,6 +6689,20 @@
[:stage="vertex";a_kind="texture_2d";b_kind="texture_3d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5731,6 +6775,20 @@
[:stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_2d";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_2d";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -5803,6 +6861,20 @@
[:stage="vertex";a_kind="texture_2d";b_kind="uniform";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
expected: FAIL
+ [:stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_2d";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_external";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
[:stage="vertex";a_kind="texture_external";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="transitive"]
@@ -5891,6 +6963,20 @@
[:stage="vertex";a_kind="texture_external";b_kind="texture_3d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
+ [:stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_external";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
[:stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="transitive"]
@@ -5979,6 +7065,20 @@
[:stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
+ [:stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_external";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="texture_external";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
[:stage="vertex";a_kind="texture_external";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="transitive"]
@@ -6067,6 +7167,20 @@
[:stage="vertex";a_kind="texture_external";b_kind="uniform";a_group=3;b_group=3;a_binding=3;b_binding=3;usage="transitive"]
+ [:stage="vertex";a_kind="texture_external";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="texture_external";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="uniform";b_kind="texture_3d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected: FAIL
@@ -6167,6 +7281,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="uniform";b_kind="texture_3d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win": FAIL
@@ -6319,6 +7447,20 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="uniform";b_kind="texture_storage_1d";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:stage="vertex";a_kind="uniform";b_kind="uniform";a_group=0;b_group=0;a_binding=0;b_binding=0;usage="direct"]
expected:
if os == "win": FAIL
@@ -6470,3 +7612,17 @@
if os == "linux": FAIL
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:stage="vertex";a_kind="uniform";b_kind="uniform";usage="direct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:stage="vertex";a_kind="uniform";b_kind="uniform";usage="transitive"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/id/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/id/cts.https.html.ini
index d8598d37fa..6279c9767b 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/id/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/id/cts.https.html.ini
@@ -1,9 +1,7 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,id:id:*]
[:attr="comment"]
- expected: FAIL
[:attr="const_expr"]
- expected: FAIL
[:attr="duplicate"]
@@ -14,13 +12,10 @@
[:attr="f32_literal"]
[:attr="hex"]
- expected: FAIL
[:attr="i32"]
- expected: FAIL
[:attr="largest"]
- expected: FAIL
[:attr="missing_left_paren"]
@@ -33,12 +28,10 @@
[:attr="negative"]
[:attr="newline"]
- expected: FAIL
[:attr="no_params"]
[:attr="one"]
- expected: FAIL
[:attr="overide_expr"]
@@ -48,17 +41,14 @@
expected: FAIL
[:attr="ui32"]
- expected: FAIL
[:attr="zero"]
- expected: FAIL
[cts.https.html?q=webgpu:shader,validation,shader_io,id:id_fp16:*]
[:ext=""]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:ext="h"]
expected:
@@ -75,9 +65,9 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,id:id_non_override:*]
[:type="const"]
+ expected: FAIL
[:type="override"]
- expected: FAIL
[:type="var"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini
index cf7c343e25..ab74be5736 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini
@@ -7,189 +7,407 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,interpolate:integral_types:*]
+ expected: TIMEOUT
[:stage="fragment";type="i32";use_struct=false;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=false;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="u32";use_struct=true;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute=""]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(flat)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20center)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20centroid)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20sample)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute=""]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(flat)"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20center)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20centroid)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20sample)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective,%20center)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective,%20centroid)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective,%20sample)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute=""]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(flat)"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(linear)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(linear,%20center)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(linear,%20centroid)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(linear,%20sample)"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(perspective)"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(perspective,%20center)"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(perspective,%20centroid)"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="fragment";type="vec4%3Cu32%3E";use_struct=true;attribute="%40interpolate(perspective,%20sample)"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";type="i32";use_struct=false;attribute=""]
expected:
@@ -399,10 +617,12 @@
[:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20centroid)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20sample)"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective)"]
expected:
@@ -512,644 +732,938 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,interpolate:type_and_sampling:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:stage="fragment";io="in";use_struct=false;type="";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="center";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="centroid";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="center"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="centroid"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="flat";sampling="sample"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="linear";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="perspective";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=false;type="sample";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="center";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="centroid";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="center"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="centroid"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="flat";sampling="sample"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="linear";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="perspective";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling=""]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="in";use_struct=true;type="sample";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="center"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="centroid"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="";sampling="sample"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling=""]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="center"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="centroid"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="center";sampling="sample"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling=""]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="center"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="centroid"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="centroid";sampling="sample"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="center"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="centroid"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="flat";sampling="sample"]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="linear";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="perspective";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling=""]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="center"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="centroid"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=false;type="sample";sampling="sample"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="center"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="centroid"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="";sampling="sample"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling=""]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="center"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="centroid"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="flat"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="linear"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="perspective"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="center";sampling="sample"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling=""]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="center"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="centroid"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="flat"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="linear"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="perspective"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="centroid";sampling="sample"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="center"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="centroid"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="flat"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="flat";sampling="sample"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="flat"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="linear"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="perspective"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="linear";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="flat"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="linear"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="perspective"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="perspective";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling=""]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="center"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="centroid"]
- expected:
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="flat"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="linear"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="perspective"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="fragment";io="out";use_struct=true;type="sample";sampling="sample"]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling=""]
@@ -1159,194 +1673,265 @@
[:stage="vertex";io="in";use_struct=false;type="";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="center";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="centroid";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="flat";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="linear";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="perspective";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="flat"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="linear"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="perspective"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=false;type="sample";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="in";use_struct=true;type="";sampling=""]
expected:
@@ -1471,317 +2056,630 @@
[:stage="vertex";io="out";use_struct=false;type="";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="center";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="centroid";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="flat";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="linear";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="perspective";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling=""]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="center"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="centroid"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="flat"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="linear"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="perspective"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=false;type="sample";sampling="sample"]
expected:
- if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="center"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="centroid"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="flat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="linear"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="perspective"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="";sampling="sample"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling=""]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="center"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="centroid"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="flat"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="linear"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="perspective"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="center";sampling="sample"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling=""]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="center"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="centroid"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="flat"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="linear"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="perspective"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="centroid";sampling="sample"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="center"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="centroid"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="flat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="linear"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="perspective"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="flat";sampling="sample"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="flat"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="linear"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="perspective"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="linear";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling=""]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="center"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="centroid"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="flat"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="linear"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="perspective"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="perspective";sampling="sample"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling=""]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="center"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="centroid"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="flat"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="linear"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="perspective"]
+ expected: [TIMEOUT, NOTRUN]
[:stage="vertex";io="out";use_struct=true;type="sample";sampling="sample"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini
index a35f83fcc5..e60ba1c8ed 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini
@@ -1,10 +1,14 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,invariant:not_valid_on_user_defined_io:*]
+ expected:
+ if os == "mac": SKIP
[:use_invariant=false]
[:use_invariant=true]
[cts.https.html?q=webgpu:shader,validation,shader_io,invariant:parsing:*]
+ expected:
+ if os == "mac": SKIP
[:attr="comment"]
[:attr="duplicate"]
@@ -23,6 +27,8 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,invariant:valid_only_with_vertex_position_builtin:*]
+ expected:
+ if os == "mac": SKIP
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false]
[:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini
new file mode 100644
index 0000000000..bf44824e14
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini
@@ -0,0 +1,334 @@
+[cts.https.html?q=webgpu:shader,validation,shader_io,layout_constraints:layout_constraints:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
+ [:case="array_atomic"]
+
+ [:case="array_bool"]
+
+ [:case="array_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_f32"]
+
+ [:case="array_i32"]
+
+ [:case="array_mat2x2f"]
+
+ [:case="array_mat2x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_mat2x4f"]
+
+ [:case="array_mat2x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_mat3x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_mat4x2f"]
+
+ [:case="array_mat4x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_mat4x4f"]
+
+ [:case="array_mat4x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_struct_size_5"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="array_struct_size_5x2"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="array_struct_u32"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="array_struct_u32_size16"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="array_struct_vec2f"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="array_struct_vec2h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="array_struct_vec2h_align16"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="array_u32"]
+
+ [:case="array_vec2b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="array_vec2f"]
+
+ [:case="array_vec2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_vec3b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="array_vec3f"]
+
+ [:case="array_vec3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="array_vec4b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="array_vec4f"]
+
+ [:case="array_vec4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="atomic_i32"]
+
+ [:case="atomic_u32"]
+
+ [:case="bool"]
+
+ [:case="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="f32"]
+
+ [:case="i32"]
+
+ [:case="mat2x2f"]
+
+ [:case="mat2x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat2x3f"]
+
+ [:case="mat2x3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat2x4f"]
+
+ [:case="mat2x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat3x2f"]
+
+ [:case="mat3x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat3x3f"]
+
+ [:case="mat3x3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat3x4f"]
+
+ [:case="mat3x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat4x2f"]
+
+ [:case="mat4x2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat4x3f"]
+
+ [:case="mat4x3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="mat4x4f"]
+
+ [:case="mat4x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="runtime_array_atomic"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_bool"]
+
+ [:case="runtime_array_f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="runtime_array_f32"]
+
+ [:case="runtime_array_i32"]
+
+ [:case="runtime_array_mat2x2f"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat2x2h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat2x4f"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat2x4h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat3x2h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat4x2f"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat4x2h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat4x4f"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_mat4x4h"]
+ expected:
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_u32"]
+
+ [:case="runtime_array_vec2b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_vec2f"]
+
+ [:case="runtime_array_vec2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="runtime_array_vec3b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_vec3f"]
+
+ [:case="runtime_array_vec3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="runtime_array_vec4b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:case="runtime_array_vec4f"]
+
+ [:case="runtime_array_vec4h"]
+ expected:
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:case="size_too_small"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_array_u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_padding"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_runtime_array_u32"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_5"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:case="struct_size_5_align16"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:case="u32"]
+
+ [:case="vec2b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="vec2f"]
+
+ [:case="vec2h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec2i"]
+
+ [:case="vec2u"]
+
+ [:case="vec3b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="vec3f"]
+
+ [:case="vec3h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec3i"]
+
+ [:case="vec3u"]
+
+ [:case="vec4b"]
+ expected:
+ if os == "linux" and debug: [PASS, FAIL]
+
+ [:case="vec4f"]
+
+ [:case="vec4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="vec4i"]
+
+ [:case="vec4u"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini
index 071ddfdf6f..e919e572d6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini
@@ -72,6 +72,38 @@
[:target_stage="vertex";target_io="out"]
+[cts.https.html?q=webgpu:shader,validation,shader_io,locations:out_of_order:*]
+ [:case="gap_return"]
+
+ [:case="mixed_locations1"]
+
+ [:case="mixed_locations2"]
+
+ [:case="mixed_overlap"]
+
+ [:case="no_zero_params"]
+
+ [:case="non_zero_return"]
+
+ [:case="reverse_overlap"]
+
+ [:case="reverse_params"]
+
+ [:case="reverse_return"]
+
+ [:case="struct"]
+
+ [:case="struct_override"]
+
+ [:case="struct_random"]
+
+ [:case="struct_random_overlap"]
+
+ [:case="with_param_builtin"]
+
+ [:case="with_return_builtin"]
+
+
[cts.https.html?q=webgpu:shader,validation,shader_io,locations:stage_inout:*]
[:use_struct=false;target_stage="compute";target_io="in"]
expected: FAIL
@@ -117,245 +149,457 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,locations:type:*]
+ expected:
+ if os == "win" and debug: [OK, TIMEOUT]
+ if os == "linux": TIMEOUT
+ if os == "mac": TIMEOUT
[:use_struct=false;type="MyAlias"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="MyStruct"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="array%3Cbool,%2012%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="array%3Cf32,%2012%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="array%3Ci32,%2012%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="array%3Cu32,%2012%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="atomic%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="atomic%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="bool"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="f16"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:use_struct=false;type="f32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x2f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x2h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x3f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x3h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x4f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat2x4h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x2f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x2h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x3f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x3h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x4f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat3x4h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x2%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x2f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x2h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x3%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x3f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x3h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x4%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x4f"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="mat4x4h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="sampler"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="sampler_comparison"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_1d%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_2d%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_2d_array%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_3d%3Cf32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_cube%3Cu32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_cube_array%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_depth_2d"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_depth_2d_array"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_depth_cube"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_depth_cube_array"]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_depth_multisampled_2d"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_external"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_multisampled_2d%3Ci32%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_storage_1d%3Crgba8unorm,%20write%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_storage_2d%3Crg32float,%20write%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_storage_2d_array%3Cr32float,%20write%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="texture_storage_3d%3Cr32float,%20write%3E"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="u32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2f"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2i"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec2u"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3f"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3i"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec3u"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4%3Cbool%3E"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4%3Cf32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4%3Ci32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4%3Cu32%3E"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4f"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4h"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4i"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=false;type="vec4u"]
expected:
if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="MyAlias"]
expected:
@@ -463,8 +707,12 @@
if os == "win" and not debug: [PASS, FAIL]
[:use_struct=true;type="sampler"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="sampler_comparison"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_1d%3Ci32%3E"]
@@ -479,14 +727,24 @@
[:use_struct=true;type="texture_cube_array%3Ci32%3E"]
[:use_struct=true;type="texture_depth_2d"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_depth_2d_array"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_depth_cube"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_depth_cube_array"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_depth_multisampled_2d"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="texture_external"]
@@ -499,6 +757,8 @@
[:use_struct=true;type="texture_storage_2d_array%3Cr32float,%20write%3E"]
[:use_struct=true;type="texture_storage_3d%3Cr32float,%20write%3E"]
+ expected:
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:use_struct=true;type="u32"]
expected:
@@ -600,10 +860,8 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,locations:validation:*]
[:attr="comment"]
- expected: FAIL
[:attr="const_expr"]
- expected: FAIL
[:attr="empty_params"]
@@ -617,13 +875,10 @@
[:attr="f32_literal"]
[:attr="hex"]
- expected: FAIL
[:attr="i32"]
- expected: FAIL
[:attr="max"]
- expected: FAIL
[:attr="missing_left_paren"]
@@ -634,19 +889,15 @@
[:attr="negative"]
[:attr="newline"]
- expected: FAIL
[:attr="no_parens"]
[:attr="one"]
- expected: FAIL
[:attr="override_expr"]
[:attr="u32"]
- expected: FAIL
[:attr="vec"]
[:attr="zero"]
- expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html.ini
index 7c70ac8864..e432a2f918 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html.ini
@@ -1,9 +1,7 @@
[cts.https.html?q=webgpu:shader,validation,shader_io,size:size:*]
[:attr="comment"]
- expected: FAIL
[:attr="constant"]
- expected: FAIL
[:attr="duplicate"]
@@ -12,13 +10,10 @@
[:attr="f32_literal"]
[:attr="hex"]
- expected: FAIL
[:attr="i32"]
- expected: FAIL
[:attr="large"]
- expected: FAIL
[:attr="missing_left_paren"]
@@ -35,7 +30,6 @@
[:attr="no_value"]
[:attr="non_align_size"]
- expected: FAIL
[:attr="override"]
@@ -45,17 +39,21 @@
expected: FAIL
[:attr="u32"]
- expected: FAIL
[:attr="valid"]
- expected: FAIL
[:attr="whitespace"]
- expected: FAIL
[:attr="zero"]
+[cts.https.html?q=webgpu:shader,validation,shader_io,size:size_creation_fixed_footprint:*]
+ [:array_size=""]
+ expected: FAIL
+
+ [:array_size=",%204"]
+
+
[cts.https.html?q=webgpu:shader,validation,shader_io,size:size_fp16:*]
[:ext=""]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html.ini
index be38fb1953..a3b5f102db 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html.ini
@@ -1,56 +1,184 @@
+[cts.https.html?q=webgpu:shader,validation,types,alias:any_type:*]
+ [:type="S"]
+
+ [:type="T"]
+
+ [:type="anotherAlias"]
+
+ [:type="array%3Ci32,%204%3E"]
+
+ [:type="array%3Cu32%3E"]
+
+ [:type="array%3Cvec2%3Cu32%3E,%208%3E"]
+
+ [:type="atomic%3Ci32%3E"]
+
+ [:type="atomic%3Cu32%3E"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="mat2x2%3Cf32%3E"]
+
+ [:type="mat2x2f"]
+
+ [:type="mat2x3%3Cf32%3E"]
+
+ [:type="mat2x4%3Cf32%3E"]
+
+ [:type="mat3x2%3Cf32%3E"]
+
+ [:type="mat3x3%3Cf32%3E"]
+
+ [:type="mat3x4%3Cf32%3E"]
+
+ [:type="mat4x2%3Cf32%3E"]
+
+ [:type="mat4x3%3Cf32%3E"]
+
+ [:type="mat4x4%3Cf32%3E"]
+
+ [:type="ptr%3Cfunction,%20u32%3E"]
+
+ [:type="ptr%3Cprivate,%20i32%3E"]
+
+ [:type="ptr%3Cstorage,%20vec2u%3E"]
+
+ [:type="ptr%3Cstorage,%20vec3i,%20read%3E"]
+
+ [:type="ptr%3Cstorage,%20vec4f,%20read_write%3E"]
+
+ [:type="ptr%3Cuniform,%20vec2f%3E"]
+
+ [:type="ptr%3Cworkgroup,%20f32%3E"]
+
+ [:type="random_alias"]
+
+ [:type="sampler"]
+
+ [:type="sampler_comparison"]
+
+ [:type="texture_1d%3Cf32%3E"]
+
+ [:type="texture_2d%3Cu32%3E"]
+
+ [:type="texture_2d_array%3Ci32%3E"]
+
+ [:type="texture_3d%3Cf32%3E"]
+
+ [:type="texture_cube%3Ci32%3E"]
+
+ [:type="texture_cube_array%3Cu32%3E"]
+
+ [:type="texture_depth_2d"]
+
+ [:type="texture_depth_2d_array"]
+
+ [:type="texture_depth_cube"]
+
+ [:type="texture_depth_cube_array"]
+
+ [:type="texture_depth_multisampled_2d"]
+
+ [:type="texture_external"]
+ expected: FAIL
+
+ [:type="texture_multisampled_2d%3Cf32%3E"]
+
+ [:type="texture_storage_1d%3Cr32float,%20read%3E"]
+
+ [:type="texture_storage_1d%3Cr32sint,%20read_write%3E"]
+
+ [:type="texture_storage_1d%3Cr32uint,%20write%3E"]
+
+ [:type="texture_storage_1d%3Crgba8snorm,%20write%3E"]
+
+ [:type="texture_storage_2d%3Crgba16uint,%20write%3E"]
+
+ [:type="texture_storage_2d_array%3Crg32float,%20write%3E"]
+
+ [:type="texture_storage_3d%3Cbgra8unorm,%20write%3E"]
+
+ [:type="u32"]
+
+ [:type="vec2%3Ci32%3E"]
+
+ [:type="vec2f"]
+
+ [:type="vec3%3Cu32%3E"]
+
+ [:type="vec3u"]
+
+ [:type="vec4%3Cf32%3E"]
+
+ [:type="vec4i"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,alias:match_non_alias:*]
+ [:case="constructor"]
+
+ [:case="function_param"]
+
+ [:case="predeclared_alias"]
+ expected: FAIL
+
+ [:case="struct_element"]
+
+ [:case="template_param"]
+ expected: FAIL
+
+
[cts.https.html?q=webgpu:shader,validation,types,alias:no_direct_recursion:*]
[:target="T"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion:*]
[:target="S"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_array_element:*]
[:target="A"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_array_size:*]
[:target="A"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_atomic:*]
[:target="A"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected: FAIL
@@ -60,7 +188,6 @@
[:target="M"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="f32"]
expected: FAIL
@@ -70,63 +197,52 @@
[:target="P"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_struct_attribute:*]
[:target="S";attribute="align"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="S";attribute="location"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="S";attribute="size"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32";attribute="align"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32";attribute="location"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32";attribute="size"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_struct_member:*]
[:target="S"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[cts.https.html?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_vector_element:*]
[:target="V"]
expected:
if os == "win" and not debug: [PASS, FAIL]
- if os == "mac": FAIL
[:target="i32"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html.ini
new file mode 100644
index 0000000000..1927c69e16
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html.ini
@@ -0,0 +1,92 @@
+[cts.https.html?q=webgpu:shader,validation,types,array:invalid:*]
+ [:case="const_neg"]
+
+ [:case="const_zero"]
+
+ [:case="f16_without_enable"]
+
+ [:case="incompatible_overrides"]
+
+ [:case="negative_size"]
+
+ [:case="override_nested"]
+
+ [:case="override_nested_struct"]
+
+ [:case="runtime_nested"]
+
+ [:case="zero_size"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,array:valid:*]
+ [:case="array"]
+
+ [:case="atomici"]
+
+ [:case="atomicu"]
+
+ [:case="bool"]
+
+ [:case="const_count"]
+
+ [:case="const_expr_count1"]
+ expected: FAIL
+
+ [:case="const_expr_count2"]
+ expected: FAIL
+
+ [:case="f16"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="f32"]
+
+ [:case="i32"]
+
+ [:case="literal_count"]
+
+ [:case="literali_count"]
+
+ [:case="literalu_count"]
+
+ [:case="mat2x2f"]
+
+ [:case="mat4x4h"]
+ expected:
+ if os == "mac": FAIL
+
+ [:case="override_count"]
+ expected: FAIL
+
+ [:case="override_expr1"]
+ expected: FAIL
+
+ [:case="override_expr2"]
+ expected: FAIL
+
+ [:case="override_neg"]
+ expected: FAIL
+
+ [:case="override_zero"]
+ expected: FAIL
+
+ [:case="same_const_value1"]
+
+ [:case="same_const_value2"]
+
+ [:case="same_const_value3"]
+
+ [:case="same_override"]
+
+ [:case="shadow"]
+ expected: FAIL
+
+ [:case="struct"]
+
+ [:case="u32"]
+
+ [:case="vec2u"]
+
+ [:case="vec3i"]
+
+ [:case="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html.ini
new file mode 100644
index 0000000000..dfe651c2c2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html.ini
@@ -0,0 +1,70 @@
+[cts.https.html?q=webgpu:shader,validation,types,atomics:address_space:*]
+ [:aspace="function"]
+
+ [:aspace="function-let"]
+
+ [:aspace="private"]
+
+ [:aspace="storage"]
+
+ [:aspace="storage-ro"]
+ expected: FAIL
+
+ [:aspace="uniform"]
+
+ [:aspace="workgroup"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,atomics:invalid_operations:*]
+ [:op="abs"]
+ expected: FAIL
+
+ [:op="add"]
+ expected: FAIL
+
+ [:op="address_abs"]
+
+ [:op="deref"]
+
+ [:op="equality"]
+
+ [:op="load"]
+ expected: FAIL
+
+ [:op="store"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,atomics:type:*]
+ [:type="R"]
+
+ [:type="S"]
+
+ [:type="array%3Ci32%3E"]
+
+ [:type="array%3Ci32,%204%3E"]
+
+ [:type="array%3Cu32%3E"]
+
+ [:type="array%3Cu32,%201%3E"]
+
+ [:type="atomic%3Ci32%3E"]
+
+ [:type="atomic%3Cu32%3E"]
+
+ [:type="bool"]
+
+ [:type="f16"]
+
+ [:type="f32"]
+
+ [:type="i32"]
+
+ [:type="mat2x2f"]
+
+ [:type="u32"]
+
+ [:type="vec2u"]
+
+ [:type="vec3i"]
+
+ [:type="vec4f"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html.ini
new file mode 100644
index 0000000000..e63e1bfd28
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html.ini
@@ -0,0 +1,329 @@
+[cts.https.html?q=webgpu:shader,validation,types,matrix:invalid:*]
+ [:case="mat1x1"]
+
+ [:case="mat2x1"]
+
+ [:case="mat2x2_array"]
+
+ [:case="mat2x2_i32"]
+
+ [:case="mat2x2_struct"]
+
+ [:case="mat2x2_vec4f"]
+
+ [:case="mat2x2b"]
+
+ [:case="mat2x2i"]
+
+ [:case="mat2x2u"]
+
+ [:case="mat2x5"]
+
+ [:case="mat3x3_u32"]
+
+ [:case="mat4x4_bool"]
+
+ [:case="mat5x5"]
+
+ [:case="missing_comp"]
+
+ [:case="missing_left_template"]
+
+ [:case="missing_right_template"]
+
+ [:case="missing_template"]
+
+ [:case="no_enable_mat2x2h"]
+
+ [:case="no_enable_mat2x3h"]
+
+ [:case="no_enable_mat2x4h"]
+
+ [:case="no_enable_mat3x2h"]
+
+ [:case="no_enable_mat3x3h"]
+
+ [:case="no_enable_mat3x4h"]
+
+ [:case="no_enable_mat4x2h"]
+
+ [:case="no_enable_mat4x3h"]
+
+ [:case="no_enable_mat4x4h"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,matrix:valid:*]
+ [:case="abstract_2x2"]
+
+ [:case="abstract_2x3"]
+
+ [:case="abstract_2x4"]
+
+ [:case="mat2x2_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat2x2_f32"]
+
+ [:case="mat2x2f"]
+
+ [:case="mat2x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat2x3_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat2x3_f32"]
+
+ [:case="mat2x3f"]
+
+ [:case="mat2x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat2x4_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat2x4_f32"]
+
+ [:case="mat2x4f"]
+
+ [:case="mat2x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x2_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x2_f32"]
+
+ [:case="mat3x2f"]
+
+ [:case="mat3x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x3_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x3_f32"]
+
+ [:case="mat3x3f"]
+
+ [:case="mat3x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x4_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat3x4_f32"]
+
+ [:case="mat3x4f"]
+
+ [:case="mat3x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x2_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x2_f32"]
+
+ [:case="mat4x2f"]
+
+ [:case="mat4x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x3_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x3_f32"]
+
+ [:case="mat4x3f"]
+
+ [:case="mat4x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x4_f16"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="mat4x4_f32"]
+
+ [:case="mat4x4f"]
+
+ [:case="mat4x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x2"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x2f"]
+
+ [:case="shadow_mat2x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x3"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x3f"]
+
+ [:case="shadow_mat2x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x4"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat2x4f"]
+
+ [:case="shadow_mat2x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x2"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x2f"]
+
+ [:case="shadow_mat3x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x3"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x3f"]
+
+ [:case="shadow_mat3x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x4"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat3x4f"]
+
+ [:case="shadow_mat3x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x2"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x2f"]
+
+ [:case="shadow_mat4x2h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x3"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x3f"]
+
+ [:case="shadow_mat4x3h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x4"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="shadow_mat4x4f"]
+
+ [:case="shadow_mat4x4h"]
+ expected:
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
+
+ [:case="trailing_comman"]
+ expected:
+ if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: [PASS, FAIL]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini
new file mode 100644
index 0000000000..7942dd7509
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini
@@ -0,0 +1,1531 @@
+[cts.https.html?q=webgpu:shader,validation,types,textures:depth_texture_types:*]
+ [:textureType="texture_depth_2d"]
+
+ [:textureType="texture_depth_2d_array"]
+
+ [:textureType="texture_depth_cube"]
+
+ [:textureType="texture_depth_cube_array"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:external_sampled_texture_types:*]
+ [:]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:sampled_texture_types:*]
+ [:textureType="texture_2d"]
+
+ [:textureType="texture_multisampled_2d"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:sampler_types:*]
+ [:samplerType="sampler"]
+
+ [:samplerType="sampler_comparison"]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:storage_texture_types:*]
+ expected:
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
+ if os == "mac" and not debug: TIMEOUT
+ [:access="read";format="astc-10x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x5-unorm"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x5-unorm-srgb"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x6-unorm"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x6-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x8-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-10x8-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-12x10-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-12x10-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-12x12-unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-12x12-unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-4x4-unorm"]
+
+ [:access="read";format="astc-4x4-unorm-srgb"]
+
+ [:access="read";format="astc-5x4-unorm"]
+
+ [:access="read";format="astc-5x4-unorm-srgb"]
+
+ [:access="read";format="astc-5x5-unorm"]
+
+ [:access="read";format="astc-5x5-unorm-srgb"]
+
+ [:access="read";format="astc-6x5-unorm"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-6x5-unorm-srgb"]
+ expected:
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-6x6-unorm"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-6x6-unorm-srgb"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x5-unorm"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x5-unorm-srgb"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x6-unorm"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x6-unorm-srgb"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x8-unorm"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="astc-8x8-unorm-srgb"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:access="read";format="bc1-rgba-unorm"]
+
+ [:access="read";format="bc1-rgba-unorm-srgb"]
+
+ [:access="read";format="bc2-rgba-unorm"]
+
+ [:access="read";format="bc2-rgba-unorm-srgb"]
+
+ [:access="read";format="bc3-rgba-unorm"]
+
+ [:access="read";format="bc3-rgba-unorm-srgb"]
+
+ [:access="read";format="bc4-r-snorm"]
+
+ [:access="read";format="bc4-r-unorm"]
+
+ [:access="read";format="bc5-rg-snorm"]
+
+ [:access="read";format="bc5-rg-unorm"]
+
+ [:access="read";format="bc6h-rgb-float"]
+
+ [:access="read";format="bc6h-rgb-ufloat"]
+
+ [:access="read";format="bc7-rgba-unorm"]
+
+ [:access="read";format="bc7-rgba-unorm-srgb"]
+
+ [:access="read";format="bgra8unorm"]
+
+ [:access="read";format="bgra8unorm-srgb"]
+
+ [:access="read";format="depth16unorm"]
+
+ [:access="read";format="depth24plus"]
+
+ [:access="read";format="depth24plus-stencil8"]
+
+ [:access="read";format="depth32float"]
+
+ [:access="read";format="depth32float-stencil8"]
+
+ [:access="read";format="eac-r11snorm"]
+
+ [:access="read";format="eac-r11unorm"]
+
+ [:access="read";format="eac-rg11snorm"]
+
+ [:access="read";format="eac-rg11unorm"]
+
+ [:access="read";format="etc2-rgb8a1unorm"]
+
+ [:access="read";format="etc2-rgb8a1unorm-srgb"]
+
+ [:access="read";format="etc2-rgb8unorm"]
+
+ [:access="read";format="etc2-rgb8unorm-srgb"]
+
+ [:access="read";format="etc2-rgba8unorm"]
+
+ [:access="read";format="etc2-rgba8unorm-srgb"]
+
+ [:access="read";format="r16float"]
+ expected: FAIL
+
+ [:access="read";format="r16sint"]
+ expected: FAIL
+
+ [:access="read";format="r16uint"]
+ expected: FAIL
+
+ [:access="read";format="r32float"]
+
+ [:access="read";format="r32sint"]
+
+ [:access="read";format="r32uint"]
+
+ [:access="read";format="r8sint"]
+ expected: FAIL
+
+ [:access="read";format="r8snorm"]
+ expected: FAIL
+
+ [:access="read";format="r8uint"]
+ expected: FAIL
+
+ [:access="read";format="r8unorm"]
+ expected: FAIL
+
+ [:access="read";format="rg11b10ufloat"]
+
+ [:access="read";format="rg16float"]
+ expected: FAIL
+
+ [:access="read";format="rg16sint"]
+ expected: FAIL
+
+ [:access="read";format="rg16uint"]
+ expected: FAIL
+
+ [:access="read";format="rg32float"]
+
+ [:access="read";format="rg32sint"]
+
+ [:access="read";format="rg32uint"]
+
+ [:access="read";format="rg8sint"]
+ expected: FAIL
+
+ [:access="read";format="rg8snorm"]
+ expected: FAIL
+
+ [:access="read";format="rg8uint"]
+ expected: FAIL
+
+ [:access="read";format="rg8unorm"]
+ expected: FAIL
+
+ [:access="read";format="rgb10a2uint"]
+ expected: FAIL
+
+ [:access="read";format="rgb10a2unorm"]
+ expected: FAIL
+
+ [:access="read";format="rgb9e5ufloat"]
+
+ [:access="read";format="rgba16float"]
+
+ [:access="read";format="rgba16sint"]
+
+ [:access="read";format="rgba16uint"]
+
+ [:access="read";format="rgba32float"]
+
+ [:access="read";format="rgba32sint"]
+
+ [:access="read";format="rgba32uint"]
+
+ [:access="read";format="rgba8sint"]
+
+ [:access="read";format="rgba8snorm"]
+
+ [:access="read";format="rgba8uint"]
+
+ [:access="read";format="rgba8unorm"]
+
+ [:access="read";format="rgba8unorm-srgb"]
+
+ [:access="read";format="stencil8"]
+
+ [:access="read_write";format="astc-10x10-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x10-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x8-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-10x8-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-12x10-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-12x10-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-12x12-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-12x12-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-4x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-4x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-5x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-5x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-5x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-5x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-6x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-6x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-6x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-6x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x8-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="astc-8x8-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc1-rgba-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc1-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc2-rgba-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc2-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc3-rgba-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc3-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc4-r-snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc4-r-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc5-rg-snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc5-rg-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc6h-rgb-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc6h-rgb-ufloat"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc7-rgba-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bc7-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bgra8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="bgra8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="depth16unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="depth24plus"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="depth24plus-stencil8"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="depth32float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="depth32float-stencil8"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="eac-r11snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="eac-r11unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="eac-rg11snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="eac-rg11unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgb8a1unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgb8a1unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgb8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgb8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="etc2-rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r16float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r16sint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r16uint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r32float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r32sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r32uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r8sint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r8snorm"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r8uint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="r8unorm"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg11b10ufloat"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg16float"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg16sint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg16uint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg32float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg32sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg32uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg8sint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg8snorm"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg8uint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rg8unorm"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgb10a2uint"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgb10a2unorm"]
+ expected: [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgb9e5ufloat"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba16float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba16sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba16uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba32float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba32sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba32uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba8sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba8snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba8uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="read_write";format="stencil8"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x10-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x10-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x5-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x5-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x6-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x6-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x8-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-10x8-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-12x10-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-12x10-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-12x12-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-12x12-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-4x4-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-4x4-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-5x4-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-5x4-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-5x5-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-5x5-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-6x5-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-6x5-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-6x6-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-6x6-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x5-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x5-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x6-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x6-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x8-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="astc-8x8-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc1-rgba-unorm"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc1-rgba-unorm-srgb"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc2-rgba-unorm"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc2-rgba-unorm-srgb"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc3-rgba-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc3-rgba-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc4-r-snorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc4-r-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc5-rg-snorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc5-rg-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc6h-rgb-float"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc6h-rgb-ufloat"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc7-rgba-unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bc7-rgba-unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bgra8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="bgra8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="depth16unorm"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="depth24plus"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="depth24plus-stencil8"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="depth32float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="depth32float-stencil8"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="eac-r11snorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="eac-r11unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="eac-rg11snorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="eac-rg11unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgb8a1unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgb8a1unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgb8unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgb8unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgba8unorm"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="etc2-rgba8unorm-srgb"]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r16float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r16sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r16uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r32float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r32sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r32uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r8sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r8snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r8uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="r8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg11b10ufloat"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg16float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg16sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg16uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg32float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg32sint"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg32uint"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg8sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg8snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg8uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rg8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgb10a2uint"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgb10a2unorm"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgb9e5ufloat"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba16float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba16sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba16uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba32float"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba32sint"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba32uint"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba8sint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba8snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba8uint"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="storage";format="stencil8"]
+ expected: [PASS, TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x10-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x10-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x8-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-10x8-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-12x10-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-12x10-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-12x12-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-12x12-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-4x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-4x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-5x4-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-5x4-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-5x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-5x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-6x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-6x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-6x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-6x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x5-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x5-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x6-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x6-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x8-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="astc-8x8-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc1-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc1-rgba-unorm-srgb"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc2-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc2-rgba-unorm-srgb"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc3-rgba-unorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc3-rgba-unorm-srgb"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc4-r-snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc4-r-unorm"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc5-rg-snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc5-rg-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc6h-rgb-float"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc6h-rgb-ufloat"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc7-rgba-unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bc7-rgba-unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bgra8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="bgra8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="depth16unorm"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="depth24plus"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="depth24plus-stencil8"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="depth32float"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="depth32float-stencil8"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="eac-r11snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="eac-r11unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="eac-rg11snorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="eac-rg11unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgb8a1unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgb8a1unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgb8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgb8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgba8unorm"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="etc2-rgba8unorm-srgb"]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:access="write";format="r16float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r16sint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r16uint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="r32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="r32uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="r8sint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r8snorm"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r8uint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="r8unorm"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg11b10ufloat"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg16float"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg16sint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg16uint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg32uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg8sint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg8snorm"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg8uint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rg8unorm"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgb10a2uint"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgb10a2unorm"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgb9e5ufloat"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba16float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba16sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba16uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba32float"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba32sint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba32uint"]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba8sint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba8snorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba8uint"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba8unorm"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="rgba8unorm-srgb"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:access="write";format="stencil8"]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:texel_formats,as_value:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:shader,validation,types,textures:texel_formats:*]
+ [:format="r32float"]
+
+ [:format="r32sint"]
+
+ [:format="r32uint"]
+
+ [:format="rg32float"]
+
+ [:format="rg32sint"]
+
+ [:format="rg32uint"]
+
+ [:format="rgba16float"]
+
+ [:format="rgba16sint"]
+
+ [:format="rgba16uint"]
+
+ [:format="rgba32float"]
+
+ [:format="rgba32sint"]
+
+ [:format="rgba32uint"]
+
+ [:format="rgba8sint"]
+
+ [:format="rgba8snorm"]
+
+ [:format="rgba8uint"]
+
+ [:format="rgba8unorm"]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini
index 5544de2c67..4655007ea6 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini
@@ -1,8 +1,7 @@
[cts.https.html?q=webgpu:shader,validation,uniformity,uniformity:basics:*]
expected:
- if os == "win" and not debug: TIMEOUT
- if os == "linux" and not debug: TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
[:op="dpdx";stage="fragment";cond="nonuniform_and1";expectation=false;statement="for"]
[:op="dpdx";stage="fragment";cond="nonuniform_and1";expectation=false;statement="if"]
@@ -4563,12 +4562,48 @@
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:statement="for"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:statement="if"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:statement="switch"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:statement="while"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[cts.https.html?q=webgpu:shader,validation,uniformity,uniformity:binary_expressions:*]
expected:
- if os == "win" and not debug: TIMEOUT
- if os == "linux" and not debug: TIMEOUT
- if os == "mac": TIMEOUT
+ if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ [:e1="literal";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="literal";op="and"]
expected: FAIL
@@ -4617,6 +4652,13 @@
[:e1="literal";e2="literal";op="xor"]
expected: FAIL
+ [:e1="literal";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="nonuniform";op="and"]
expected: FAIL
@@ -4665,6 +4707,13 @@
[:e1="literal";e2="nonuniform";op="xor"]
expected: FAIL
+ [:e1="literal";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="nonuniform_index1";op="and"]
expected: FAIL
@@ -4713,6 +4762,13 @@
[:e1="literal";e2="nonuniform_index1";op="xor"]
expected: FAIL
+ [:e1="literal";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="nonuniform_index2";op="and"]
expected: FAIL
@@ -4761,6 +4817,13 @@
[:e1="literal";e2="nonuniform_index2";op="xor"]
expected: FAIL
+ [:e1="literal";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="nonuniform_struct";op="and"]
expected: FAIL
@@ -4809,6 +4872,13 @@
[:e1="literal";e2="nonuniform_struct";op="xor"]
expected: FAIL
+ [:e1="literal";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="uniform";op="and"]
expected: FAIL
@@ -4857,6 +4927,13 @@
[:e1="literal";e2="uniform";op="xor"]
expected: FAIL
+ [:e1="literal";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="uniform_index";op="and"]
expected: FAIL
@@ -4905,6 +4982,13 @@
[:e1="literal";e2="uniform_index";op="xor"]
expected: FAIL
+ [:e1="literal";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="literal";e2="uniform_struct";op="and"]
expected: FAIL
@@ -4953,6 +5037,13 @@
[:e1="literal";e2="uniform_struct";op="xor"]
expected: FAIL
+ [:e1="nonuniform";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="literal";op="and"]
expected: FAIL
@@ -5001,6 +5092,13 @@
[:e1="nonuniform";e2="literal";op="xor"]
expected: FAIL
+ [:e1="nonuniform";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="nonuniform";op="and"]
expected: FAIL
@@ -5049,6 +5147,14 @@
[:e1="nonuniform";e2="nonuniform";op="xor"]
expected: FAIL
+ [:e1="nonuniform";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="nonuniform_index1";op="and"]
expected:
if os == "win": FAIL
@@ -5161,6 +5267,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:e1="nonuniform";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="nonuniform_index2";op="and"]
expected:
if os == "win": FAIL
@@ -5273,6 +5387,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="nonuniform_struct";op="and"]
expected:
if os == "win": FAIL
@@ -5385,6 +5507,13 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="uniform";op="and"]
expected: FAIL
@@ -5433,6 +5562,13 @@
[:e1="nonuniform";e2="uniform";op="xor"]
expected: FAIL
+ [:e1="nonuniform";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="uniform_index";op="and"]
expected:
if os == "win": FAIL
@@ -5529,6 +5665,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ [:e1="nonuniform";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform";e2="uniform_struct";op="and"]
expected:
if os == "win": FAIL
@@ -5641,6 +5785,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="literal";op="and"]
expected:
if os == "win": FAIL
@@ -5753,6 +5905,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="nonuniform";op="and"]
expected:
if os == "win": FAIL
@@ -5881,6 +6041,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="nonuniform_index1";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -6025,6 +6193,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="nonuniform_index2";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -6129,6 +6305,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="nonuniform_struct";op="and"]
expected:
if debug: FAIL
@@ -6209,6 +6393,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="uniform";op="and"]
expected:
if os == "win": FAIL
@@ -6336,6 +6528,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="uniform_index";op="and"]
expected:
if os == "win": FAIL
@@ -6464,6 +6664,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index1";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index1";e2="uniform_struct";op="and"]
expected:
if debug: FAIL
@@ -6544,6 +6752,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="literal";op="and"]
expected:
if debug: FAIL
@@ -6624,6 +6840,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="nonuniform";op="and"]
expected:
if debug: FAIL
@@ -6704,6 +6928,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="nonuniform_index1";op="and"]
expected:
if debug: FAIL
@@ -6784,6 +7016,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="nonuniform_index2";op="and"]
expected:
if debug: FAIL
@@ -6864,6 +7104,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="nonuniform_struct";op="and"]
expected:
if debug: FAIL
@@ -6944,6 +7192,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="uniform";op="and"]
expected:
if debug: FAIL
@@ -7024,6 +7280,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="uniform_index";op="and"]
expected:
if debug: FAIL
@@ -7104,6 +7368,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_index2";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_index2";e2="uniform_struct";op="and"]
expected:
if debug: FAIL
@@ -7184,6 +7456,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="literal";op="and"]
expected:
if debug: FAIL
@@ -7264,6 +7544,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="nonuniform";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -7408,6 +7696,14 @@
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="nonuniform_index1";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -7537,6 +7833,14 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="nonuniform_index2";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -7665,6 +7969,14 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="nonuniform_struct";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -7793,6 +8105,14 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="uniform";op="and"]
expected:
if debug: FAIL
@@ -7877,6 +8197,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="uniform_index";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -8021,6 +8349,14 @@
if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="nonuniform_struct";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="nonuniform_struct";e2="uniform_struct";op="and"]
expected:
if os == "win" and debug: FAIL
@@ -8149,6 +8485,13 @@
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
if os == "mac": [TIMEOUT, NOTRUN]
+ [:e1="uniform";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="literal";op="and"]
expected: FAIL
@@ -8197,6 +8540,13 @@
[:e1="uniform";e2="literal";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="nonuniform";op="and"]
expected: FAIL
@@ -8245,6 +8595,13 @@
[:e1="uniform";e2="nonuniform";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="nonuniform_index1";op="and"]
expected: FAIL
@@ -8293,6 +8650,13 @@
[:e1="uniform";e2="nonuniform_index1";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="nonuniform_index2";op="and"]
expected: FAIL
@@ -8341,6 +8705,13 @@
[:e1="uniform";e2="nonuniform_index2";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="nonuniform_struct";op="and"]
expected: FAIL
@@ -8389,6 +8760,13 @@
[:e1="uniform";e2="nonuniform_struct";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="uniform";op="and"]
expected: FAIL
@@ -8437,6 +8815,13 @@
[:e1="uniform";e2="uniform";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="uniform_index";op="and"]
expected: FAIL
@@ -8485,6 +8870,13 @@
[:e1="uniform";e2="uniform_index";op="xor"]
expected: FAIL
+ [:e1="uniform";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform";e2="uniform_struct";op="and"]
expected: FAIL
@@ -8533,6 +8925,14 @@
[:e1="uniform";e2="uniform_struct";op="xor"]
expected: FAIL
+ [:e1="uniform_index";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="literal";op="and"]
expected:
if os == "win": FAIL
@@ -8645,6 +9045,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="nonuniform";op="and"]
expected:
if os == "win": FAIL
@@ -8757,6 +9165,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="nonuniform_index1";op="and"]
expected:
if os == "win": FAIL
@@ -8869,6 +9285,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="nonuniform_index2";op="and"]
expected:
if os == "win": FAIL
@@ -8981,6 +9405,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="nonuniform_struct";op="and"]
expected:
if os == "win": FAIL
@@ -9093,6 +9525,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="uniform";op="and"]
expected:
if os == "win": FAIL
@@ -9205,6 +9645,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="uniform_index";op="and"]
expected:
if os == "win": FAIL
@@ -9317,6 +9765,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_index";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_index";e2="uniform_struct";op="and"]
expected:
if os == "win": FAIL
@@ -9429,6 +9885,14 @@
if os == "mac" and debug: FAIL
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="literal"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="literal";op="and"]
expected:
if debug: FAIL
@@ -9509,6 +9973,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="nonuniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="nonuniform";op="and"]
expected:
if debug: FAIL
@@ -9589,6 +10061,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="nonuniform_index1"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="nonuniform_index1";op="and"]
expected:
if debug: FAIL
@@ -9669,6 +10149,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="nonuniform_index2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="nonuniform_index2";op="and"]
expected:
if debug: FAIL
@@ -9749,6 +10237,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="nonuniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="nonuniform_struct";op="and"]
expected:
if debug: FAIL
@@ -9829,6 +10325,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="uniform"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="uniform";op="and"]
expected:
if debug: FAIL
@@ -9909,6 +10413,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="uniform_index"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="uniform_index";op="and"]
expected:
if debug: FAIL
@@ -9989,6 +10501,14 @@
if debug: FAIL
if not debug: [TIMEOUT, NOTRUN]
+ [:e1="uniform_struct";e2="uniform_struct"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, FAIL]
+ if os == "mac": FAIL
+
[:e1="uniform_struct";e2="uniform_struct";op="and"]
expected:
if debug: FAIL
@@ -10167,81 +10687,173 @@
[cts.https.html?q=webgpu:shader,validation,uniformity,uniformity:function_variables:*]
+ expected: TIMEOUT
[:case="after_loop_with_nonuniform_break";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_nonuniform_break";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_nonuniform_break";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_nonuniform";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_nonuniform";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_uniform";init="no_init"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_uniform";init="nonuniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_break_uniform";init="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_breaks";init="no_init"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_breaks";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_loop_with_uniform_breaks";init="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="after_switch_all_uniform";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_all_uniform";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_all_uniform";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_nonuniform";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_nonuniform";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_some_assign";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_some_assign";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_some_assign";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform1";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform1";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform1";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform2";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform2";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="after_switch_with_break_nonuniform2";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="compound_assign_nonuniform";init="no_init"]
expected: FAIL
@@ -10260,66 +10872,83 @@
[:case="compound_assign_uniform";init="uniform"]
[:case="for_loop_nonuniform_body";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_body";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_body";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_body_no_condition";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_body_no_condition";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_body_no_condition";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_increment";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_increment";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_increment";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_init";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_init";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_nonuniform_init";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body";init="no_init"]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body";init="uniform"]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body_no_condition";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body_no_condition";init="nonuniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_body_no_condition";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_increment";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_increment";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="for_loop_uniform_increment";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_init";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_init";init="nonuniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="for_loop_uniform_init";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="if_else_nonuniform";init="no_init"]
expected: FAIL
@@ -10457,10 +11086,16 @@
expected: FAIL
[:case="loop_body_nonuniform_cond";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_body_nonuniform_cond";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_body_uniform";init="no_init"]
@@ -10469,99 +11104,185 @@
[:case="loop_body_uniform";init="uniform"]
[:case="loop_continuing_from_body_nonuniform";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_nonuniform";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split1";init="no_init"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split1";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split1";init="uniform"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split2";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split2";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split2";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split3";init="no_init"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split3";init="nonuniform"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split3";init="uniform"]
+ expected:
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split4";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split4";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split4";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split5";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split5";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_split5";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_uniform";init="no_init"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_uniform";init="nonuniform"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:case="loop_continuing_from_body_uniform";init="uniform"]
+ expected:
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_nonuniform";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_nonuniform";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_uniform";init="no_init"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_uniform";init="nonuniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_in_loop_with_continue_uniform";init="uniform"]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:case="loop_unreachable_continuing";init="no_init"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:case="loop_unreachable_continuing";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="loop_unreachable_continuing";init="uniform"]
+ expected:
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:case="nested1";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="nested1";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="nested1";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="nested2";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="nested2";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="nested2";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="no_assign";init="no_init"]
@@ -10571,68 +11292,76 @@
[:case="no_assign";init="uniform"]
[:case="partial_assignment_all_members_nonuniform";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_all_members_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_all_members_nonuniform";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_all_members_uniform";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_all_members_uniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_all_members_uniform";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_nonuniform";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_nonuniform";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_nonuniform";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_nonuniform";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_uniform";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_uniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_array_uniform";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_nonuniform";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_nonuniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_nonuniform";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_uniform";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_uniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_single_element_struct_uniform";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_uniform";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="partial_assignment_uniform";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="partial_assignment_uniform";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[:case="simple_nonuniform";init="no_init"]
expected: FAIL
@@ -10650,22 +11379,40 @@
[:case="simple_uniform";init="uniform"]
[:case="switch_nonuniform_case";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="switch_nonuniform_case";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="switch_nonuniform_case";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="switch_uniform_case";init="no_init"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="switch_uniform_case";init="nonuniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="switch_uniform_case";init="uniform"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:case="unreachable_nonuniform";init="no_init"]
expected: FAIL
@@ -10686,20 +11433,22 @@
expected: FAIL
[:case="while_loop_nonuniform_body";init="no_init"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="while_loop_nonuniform_body";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="while_loop_nonuniform_body";init="uniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="while_loop_uniform_body";init="no_init"]
+ expected: [TIMEOUT, NOTRUN]
[:case="while_loop_uniform_body";init="nonuniform"]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:case="while_loop_uniform_body";init="uniform"]
+ expected: [TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:shader,validation,uniformity,uniformity:functions:*]
@@ -10855,6 +11604,101 @@
[:case="contents_array_uniform_index"]
expected: FAIL
+ [:case="contents_lhs_pointer_deref2"]
+
+ [:case="contents_lhs_pointer_deref2a"]
+
+ [:case="contents_lhs_pointer_deref3"]
+
+ [:case="contents_lhs_pointer_deref3a"]
+
+ [:case="contents_lhs_pointer_deref4"]
+
+ [:case="contents_lhs_pointer_deref4a"]
+
+ [:case="contents_lhs_pointer_deref4b"]
+
+ [:case="contents_lhs_pointer_deref4c"]
+
+ [:case="contents_lhs_pointer_deref4d"]
+
+ [:case="contents_lhs_pointer_deref4e"]
+
+ [:case="contents_lhs_ref_pointer_deref1"]
+
+ [:case="contents_lhs_ref_pointer_deref1a"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref2"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref2a"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref3"]
+
+ [:case="contents_lhs_ref_pointer_deref3a"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref4"]
+
+ [:case="contents_lhs_ref_pointer_deref4a"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref4b"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref4c"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref4d"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_lhs_ref_pointer_deref4e"]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+ [:case="contents_rhs_pointer_deref1"]
+
+ [:case="contents_rhs_pointer_deref1a"]
+
+ [:case="contents_rhs_pointer_deref2"]
+
[:case="contents_scalar_alias_nonuniform1"]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html.ini
new file mode 100644
index 0000000000..15cec014a5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html.ini
@@ -0,0 +1,14 @@
+[cts.https.html?q=webgpu:util,texture,color_space_conversions:util_matches_2d_canvas:*]
+ [:srcColorSpace="display-p3";dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [PASS, FAIL]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/texel_data/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/texel_data/cts.https.html.ini
index 36f8d51f95..764baeb0c0 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/texel_data/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/util/texture/texel_data/cts.https.html.ini
@@ -75,10 +75,8 @@
[cts.https.html?q=webgpu:util,texture,texel_data:ufloat_texel_data_in_shader:*]
[:format="rg11b10ufloat"]
- expected: FAIL
[:format="rgb9e5ufloat"]
- expected: FAIL
[cts.https.html?q=webgpu:util,texture,texel_data:uint_texel_data_in_shader:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini
index c1385daa95..7578674927 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini
@@ -25,159 +25,274 @@
[cts.https.html?q=webgpu:web_platform,canvas,configure:format:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
+ if os == "mac": TIMEOUT
[:canvasType="offscreen";format="astc-10x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-10x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-12x10-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-12x10-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-12x12-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-12x12-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-4x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-4x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-5x4-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-5x4-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-5x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-5x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-6x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-6x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-6x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-6x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x5-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x5-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x6-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x6-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x8-unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="astc-8x8-unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc1-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc1-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc2-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc2-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc3-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc3-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc4-r-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc4-r-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc5-rg-snorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc5-rg-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc6h-rgb-float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc6h-rgb-ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc7-rgba-unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bc7-rgba-unorm-srgb"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="bgra8unorm"]
expected:
@@ -187,62 +302,106 @@
expected: FAIL
[:canvasType="offscreen";format="depth16unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="depth24plus"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="depth24plus-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="depth32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="depth32float-stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="eac-r11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="eac-r11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="eac-rg11snorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="eac-rg11unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgb8a1unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgb8a1unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgb8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgb8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgba8unorm"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="etc2-rgba8unorm-srgb"]
expected:
if os == "win": [PASS, FAIL]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="r16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="r16sint"]
expected: FAIL
@@ -251,13 +410,22 @@
expected: FAIL
[:canvasType="offscreen";format="r32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="r32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="r32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="r8sint"]
expected: FAIL
@@ -272,25 +440,48 @@
expected: FAIL
[:canvasType="offscreen";format="rg11b10ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac" and debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rg8sint"]
expected: FAIL
@@ -305,31 +496,58 @@
expected: FAIL
[:canvasType="offscreen";format="rgb10a2uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgb10a2unorm"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgb9e5ufloat"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba16float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba16sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba16uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba32float"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba32sint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba32uint"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";format="rgba8sint"]
expected: FAIL
@@ -348,7 +566,10 @@
expected: FAIL
[:canvasType="offscreen";format="stencil8"]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";format="astc-10x10-unorm"]
expected:
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/getCurrentTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/getCurrentTexture/cts.https.html.ini
index bade6b6bb3..f4af3ad134 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/getCurrentTexture/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/getCurrentTexture/cts.https.html.ini
@@ -48,30 +48,31 @@
[cts.https.html?q=webgpu:web_platform,canvas,getCurrentTexture:multiple_frames:*]
expected:
if os == "win" and debug: CRASH
- if os == "win" and not debug: [TIMEOUT, ERROR]
- if os == "linux": [TIMEOUT, ERROR]
- if os == "mac": [TIMEOUT, ERROR]
[:canvasType="offscreen"]
expected:
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: [TIMEOUT, NOTRUN]
- if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac": [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen"]
expected: FAIL
[cts.https.html?q=webgpu:web_platform,canvas,getCurrentTexture:resize:*]
- expected:
- if os == "win" and debug: CRASH
[:canvasType="offscreen"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen"]
expected:
if os == "win" and debug: [PASS, FAIL]
+ if os == "win" and not debug: FAIL
+ if os == "linux": FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:web_platform,canvas,getCurrentTexture:single_frames:*]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini
index 8d1fd7eeba..11924221d5 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:drawTo2DCanvas:*]
+ expected:
+ if os == "mac": SKIP
[:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";webgpuCanvasType="offscreen";canvas2DType="offscreen"]
expected: FAIL
@@ -145,6 +147,8 @@
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:offscreenCanvas,snapshot:*]
+ expected:
+ if os == "mac": SKIP
[:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";snapshotType="convertToBlob"]
expected: FAIL
@@ -255,6 +259,8 @@
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,snapshot:*]
+ expected:
+ if os == "mac": SKIP
[:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";snapshotType="imageBitmap"]
expected: FAIL
@@ -365,6 +371,8 @@
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,uploadToWebGL:*]
+ expected:
+ if os == "mac": SKIP
[:format="bgra8unorm";alphaMode="opaque";webgl="webgl";upload="texImage2D"]
expected: FAIL
@@ -439,16 +447,32 @@
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_huge_size:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected: FAIL
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_unconfigured_nonzero_size:*]
+ expected:
+ if os == "mac": SKIP
[:]
expected: FAIL
+ [:readbackCanvasType="offscreen"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
+ [:readbackCanvasType="onscreen"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux": FAIL
+
[cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_zero_size:*]
+ expected:
+ if os == "mac": SKIP
[:configure=false]
expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini
index 4c2ee9938d..97281d61d2 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini
@@ -33,6 +33,8 @@
[cts.https.html?q=webgpu:web_platform,copyToTexture,ImageBitmap:copy_subrect_from_ImageData:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:alpha="none";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=false]
[:alpha="none";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=true]
@@ -66,28 +68,52 @@
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstPremultiplied=true]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=true;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=true;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="none";srcFlipYInCopy=false;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="none";srcFlipYInCopy=false;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="none";srcFlipYInCopy=true;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="none";srcFlipYInCopy=true;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=false;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstPremultiplied=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstPremultiplied=false]
@@ -523,51 +549,33 @@
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=false]
expected:
@@ -576,11 +584,8 @@
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false]
expected:
@@ -594,19 +599,13 @@
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
@@ -623,10 +622,18 @@
if os == "mac": [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=false]
- expected: [TIMEOUT, NOTRUN]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=true]
- expected: [TIMEOUT, NOTRUN]
+ expected:
+ if os == "win": [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rgba32float";dstPremultiplied=false]
expected: [TIMEOUT, NOTRUN]
@@ -659,258 +666,278 @@
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r32float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r8unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r8unorm";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg8unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg8unorm";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm";dstPremultiplied=true]
- expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=true]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=true]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false]
expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
- if not debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba32float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm";dstPremultiplied=false]
expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm";dstPremultiplied=true]
expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:alpha="premultiply";orientation="flipY";colorSpaceConversion="default";srcFlipYInCopy=false;dstFormat="bgra8unorm";dstPremultiplied=false]
expected: [TIMEOUT, NOTRUN]
@@ -1961,51 +1988,33 @@
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=false]
expected:
@@ -2014,11 +2023,8 @@
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false]
expected:
@@ -2032,19 +2038,13 @@
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="default";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
@@ -2106,237 +2106,273 @@
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r32float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r8unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="r8unorm";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg8unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rg8unorm";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=false;dstFormat="rgba8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm";dstPremultiplied=false]
- expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm";dstPremultiplied=true]
- expected:
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r16float";dstPremultiplied=true]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r32float";dstPremultiplied=true]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=false]
+ expected:
+ if debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
- if not debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if debug: [TIMEOUT, NOTRUN]
- if not debug: FAIL
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba16float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba32float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba32float";dstPremultiplied=true]
expected:
if debug: [TIMEOUT, NOTRUN]
+ if not debug: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm";dstPremultiplied=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm";dstPremultiplied=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=false]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini
index 334fbcf527..0ebc4b7f58 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini
@@ -14,259 +14,316 @@
[cts.https.html?q=webgpu:web_platform,copyToTexture,ImageData:from_ImageData:*]
expected:
- if os == "win" and debug: [OK, TIMEOUT]
- if os == "linux" and debug: TIMEOUT
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
if os == "mac" and debug: TIMEOUT
+ if os == "mac" and not debug: [OK, TIMEOUT]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm";dstPremultiplied=false]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="r16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r32float";dstPremultiplied=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="r32float";dstPremultiplied=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="r8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg16float";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg16float";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg32float";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg32float";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba32float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgb10a2unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgb10a2unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini
index 541aa748d7..bccd4d727e 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini
@@ -1,123 +1,702 @@
[cts.https.html?q=webgpu:web_platform,copyToTexture,canvas:color_space_conversion:*]
+ expected: TIMEOUT
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="display-p3";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
+
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [TIMEOUT, NOTRUN]
+ if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
+
+ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
@@ -168,194 +747,327 @@
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rg8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:web_platform,copyToTexture,canvas:copy_contents_from_2d_context_canvas:*]
+ expected: TIMEOUT
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected: FAIL
@@ -390,28 +1102,60 @@
[:canvasType="onscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -422,238 +1166,395 @@
[:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:web_platform,copyToTexture,canvas:copy_contents_from_bitmaprenderer_context_canvas:*]
+ expected: TIMEOUT
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected: FAIL
@@ -692,28 +1593,60 @@
expected: FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected: FAIL
@@ -722,70 +1655,158 @@
expected: FAIL
[:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";dstColorFormat="rgba8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[cts.https.html?q=webgpu:web_platform,copyToTexture,canvas:copy_contents_from_gl_context_canvas:*]
@@ -796,386 +1817,514 @@
if os == "mac" and not debug: TIMEOUT
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1183,7 +2332,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1191,7 +2340,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1199,7 +2348,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1207,23 +2356,23 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1231,7 +2380,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1239,7 +2388,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1247,6 +2396,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1254,6 +2404,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1261,6 +2412,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1268,6 +2420,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1275,6 +2428,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1282,6 +2436,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1289,6 +2444,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1296,6 +2452,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1303,6 +2460,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1310,6 +2468,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1317,6 +2476,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1324,6 +2484,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1331,6 +2492,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1338,6 +2500,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1345,6 +2508,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1352,102 +2516,135 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1455,6 +2652,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1462,6 +2660,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1469,6 +2668,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1476,6 +2676,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1483,6 +2684,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1490,6 +2692,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1497,6 +2700,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1504,6 +2708,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1511,6 +2716,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1518,6 +2724,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1525,6 +2732,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1532,6 +2740,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1539,6 +2748,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1546,6 +2756,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1553,6 +2764,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1560,6 +2772,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1567,6 +2780,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1574,6 +2788,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1581,6 +2796,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1588,6 +2804,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1595,6 +2812,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1602,6 +2820,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1609,6 +2828,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1616,6 +2836,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1623,6 +2844,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1630,6 +2852,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1637,6 +2860,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1644,6 +2868,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1651,6 +2876,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1658,6 +2884,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1665,6 +2892,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1672,6 +2900,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1679,6 +2908,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1686,6 +2916,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1693,6 +2924,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1700,6 +2932,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1707,6 +2940,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1714,6 +2948,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1721,6 +2956,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1728,6 +2964,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1735,6 +2972,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1742,6 +2980,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1749,6 +2988,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1756,6 +2996,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1763,6 +3004,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1770,6 +3012,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1777,6 +3020,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1784,6 +3028,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1791,6 +3036,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1798,6 +3044,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1805,6 +3052,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1812,6 +3060,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1819,6 +3068,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1826,6 +3076,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1833,6 +3084,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1840,6 +3092,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1847,6 +3100,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1854,6 +3108,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1861,6 +3116,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1868,6 +3124,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1875,6 +3132,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1882,6 +3140,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1889,6 +3148,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1896,6 +3156,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1903,7 +3164,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1911,7 +3172,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1919,7 +3180,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1927,7 +3188,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1935,7 +3196,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1943,7 +3204,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1951,7 +3212,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1959,7 +3220,7 @@
if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1967,6 +3228,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -1974,6 +3236,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -1981,6 +3244,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -1988,6 +3252,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -1995,6 +3260,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2002,6 +3268,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2009,6 +3276,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -2016,18 +3284,21 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
if os == "win": [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
if os == "win": [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2041,6 +3312,7 @@
expected:
if os == "win": [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -2048,6 +3320,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2055,18 +3328,21 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
if os == "win": [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
if os == "win": [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -2074,6 +3350,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2081,6 +3358,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2088,6 +3366,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -2095,6 +3374,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -2102,6 +3382,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2109,6 +3390,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2116,6 +3398,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -2123,6 +3406,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -2130,6 +3414,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2137,6 +3422,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2144,6 +3430,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -2151,6 +3438,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
@@ -2158,6 +3446,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
@@ -2165,6 +3454,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
@@ -2172,6 +3462,7 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
@@ -2179,1775 +3470,2026 @@
if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ expected: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "linux": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
+ expected:
+ if os == "linux": [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win": FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
- if os == "mac": FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
+ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="bgra8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "linux" and not debug: [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgb10a2unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba16float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba32float";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
+ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "win" and not debug: [TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[:canvasType="onscreen";contextName="webgl2";dstColorFormat="rgba8unorm-srgb";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win": [PASS, TIMEOUT, NOTRUN]
if os == "linux": [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "mac": [PASS, TIMEOUT, NOTRUN]
[cts.https.html?q=webgpu:web_platform,copyToTexture,canvas:copy_contents_from_gpu_context_canvas:*]
expected:
- if os == "win" and not debug: [OK, TIMEOUT]
+ if os == "win": [OK, TIMEOUT]
+ if os == "linux": [OK, TIMEOUT]
+ if os == "mac" and debug: [OK, TIMEOUT]
if os == "mac" and not debug: TIMEOUT
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
- if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
expected:
- if os == "win": FAIL
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
expected:
- if os == "win" and debug: FAIL
- if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux": FAIL
- if os == "mac" and debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and not debug: [TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="offscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=false;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected: FAIL
@@ -3956,22 +5498,46 @@
expected: FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
expected: FAIL
@@ -3986,97 +5552,225 @@
expected: FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgb10a2unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rgba8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini
index 4769a9f9fa..f62af6ed68 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini
@@ -15,247 +15,299 @@
[cts.https.html?q=webgpu:web_platform,copyToTexture,image:from_image:*]
expected:
if debug: TIMEOUT
+ if not debug: [OK, TIMEOUT]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm";dstPremultiplied=true]
- expected:
- if debug: [FAIL, TIMEOUT, NOTRUN]
- if not debug: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="r16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="r8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg16float";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg16float";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg32float";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg32float";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba16float";dstPremultiplied=false]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba16float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
- if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba32float";dstPremultiplied=false]
expected:
if debug: [TIMEOUT, NOTRUN]
- if not debug: FAIL
+ if not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba32float";dstPremultiplied=true]
expected:
- if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "win" and not debug: FAIL
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
if os == "linux" and debug: [TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
+ if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
if os == "mac" and debug: [TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "mac" and not debug: FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=false;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true]
- expected:
- if os == "win": FAIL
- if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: FAIL
- if os == "mac": FAIL
+ expected: [FAIL, TIMEOUT, NOTRUN]
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="r8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rg8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgb10a2unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgb10a2unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "win" and not debug: FAIL
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba16float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba16float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba32float";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba32float";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if os == "win": [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux": [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
[:srcDoFlipYDuringCopy=true;dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true]
- expected: FAIL
+ expected:
+ if debug: [FAIL, TIMEOUT, NOTRUN]
+ if not debug: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini
index d5add61ea8..a824afef31 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini
@@ -1,48 +1,653 @@
[cts.https.html?q=webgpu:web_platform,copyToTexture,video:copy_from_video:*]
+ expected:
+ if os == "linux" and debug: TIMEOUT
+ if os == "mac": TIMEOUT
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "mac" and not debug: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": [FAIL, TIMEOUT, NOTRUN]
+
[:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true]
expected: FAIL
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false]
expected: FAIL
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true]
expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini
index 4ba71be8f8..641d270184 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini
@@ -1,4 +1,6 @@
[cts.https.html?q=webgpu:web_platform,external_texture,video:importExternalTexture,compute:*]
+ expected:
+ if os == "linux" and debug: [OK, TIMEOUT]
[:sourceType="VideoElement";videoName="four-colors-h264-bt601.mp4"]
expected: FAIL
@@ -23,6 +25,198 @@
[:sourceType="VideoFrame";videoName="four-colors-vp9-bt709.webm"]
expected: FAIL
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected:
+ if os == "win": FAIL
+ if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN]
+ if os == "linux" and not debug: FAIL
+ if os == "mac": FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
[cts.https.html?q=webgpu:web_platform,external_texture,video:importExternalTexture,sample:*]
[:sourceType="VideoElement";videoName="four-colors-h264-bt601.mp4"]
@@ -49,36 +243,282 @@
[:sourceType="VideoFrame";videoName="four-colors-vp9-bt709.webm"]
expected: FAIL
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
-[cts.https.html?q=webgpu:web_platform,external_texture,video:importExternalTexture,sampleWithRotationMetadata:*]
- [:sourceType="VideoElement";videoName="four-colors-h264-bt601-rotate-180.mp4"]
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
expected: FAIL
- [:sourceType="VideoElement";videoName="four-colors-h264-bt601-rotate-270.mp4"]
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
expected: FAIL
- [:sourceType="VideoElement";videoName="four-colors-h264-bt601-rotate-90.mp4"]
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
expected: FAIL
- [:sourceType="VideoFrame";videoName="four-colors-h264-bt601-rotate-180.mp4"]
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"]
expected: FAIL
- [:sourceType="VideoFrame";videoName="four-colors-h264-bt601-rotate-270.mp4"]
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"]
expected: FAIL
- [:sourceType="VideoFrame";videoName="four-colors-h264-bt601-rotate-90.mp4"]
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoElement";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";sourceType="VideoFrame";dstColorSpace="srgb"]
expected: FAIL
[cts.https.html?q=webgpu:web_platform,external_texture,video:importExternalTexture,sampleWithVideoFrameWithVisibleRectParam:*]
+ [:videoName="four-colors-h264-bt601-hflip.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-hflip.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-180.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-270.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-rotate-90.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601-vflip.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-h264-bt601.mp4"]
expected: FAIL
+ [:videoName="four-colors-h264-bt601.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-h264-bt601.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp8-bt601.webm"]
expected: FAIL
+ [:videoName="four-colors-vp8-bt601.webm";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp8-bt601.webm";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-hflip.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-180.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-270.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-rotate-90.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601-vflip.mp4";dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt601.webm"]
expected: FAIL
+ [:videoName="four-colors-vp9-bt601.webm";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt601.webm";dstColorSpace="srgb"]
+ expected: FAIL
+
[:videoName="four-colors-vp9-bt709.webm"]
expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";dstColorSpace="display-p3"]
+ expected: FAIL
+
+ [:videoName="four-colors-vp9-bt709.webm";dstColorSpace="srgb"]
+ expected: FAIL
+
+
+[cts.https.html?q=webgpu:web_platform,external_texture,video:importExternalTexture,sample_non_YUV_video_frame:*]
+ [:videoFrameFormat="BGRA"]
+ expected: FAIL
+
+ [:videoFrameFormat="BGRX"]
+ expected: FAIL
+
+ [:videoFrameFormat="RGBA"]
+ expected: FAIL
+
+ [:videoFrameFormat="RGBX"]
+ expected: FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html.ini
index e21d662b48..8d6ec1bc09 100644
--- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html.ini
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html.ini
@@ -1,8 +1,20 @@
-[cts.https.html?q=webgpu:web_platform,worker,worker:worker:*]
- expected:
- if os == "win": [OK, TIMEOUT]
- if os == "linux" and not debug: [OK, TIMEOUT]
+[cts.https.html?q=webgpu:web_platform,worker,worker:dedicated_worker:*]
+ [:]
+
+
+[cts.https.html?q=webgpu:web_platform,worker,worker:service_worker:*]
+ [:]
+ expected:
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
+
+
+[cts.https.html?q=webgpu:web_platform,worker,worker:shared_worker:*]
[:]
expected:
- if os == "win": [PASS, TIMEOUT, NOTRUN]
- if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
+ if os == "win" and debug: FAIL
+ if os == "win" and not debug: [PASS, FAIL]
+ if os == "linux": [PASS, FAIL]
+ if os == "mac": FAIL
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/__dir__.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/__dir__.ini
new file mode 100644
index 0000000000..b6e04657e3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/__dir__.ini
@@ -0,0 +1 @@
+disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1818042
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.html.ini
new file mode 100644
index 0000000000..152d35faf8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.html.ini
@@ -0,0 +1,2 @@
+[requestAdapter.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.html.ini
new file mode 100644
index 0000000000..50b48d5eca
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.html.ini
@@ -0,0 +1,2 @@
+[requestAdapterInfo.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.html.ini
new file mode 100644
index 0000000000..a3b079623f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.html.ini
@@ -0,0 +1,2 @@
+[requestDevice.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map.worker.html.ini
new file mode 100644
index 0000000000..c974589d5f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map.worker.html.ini
@@ -0,0 +1,2 @@
+[map.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.html.ini
new file mode 100644
index 0000000000..05842e8890
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[map_ArrayBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.html.ini
new file mode 100644
index 0000000000..4e0746cd2a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.html.ini
@@ -0,0 +1,2 @@
+[map_detach.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.html.ini
new file mode 100644
index 0000000000..75ed954c86
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.html.ini
@@ -0,0 +1,2 @@
+[map_oom.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/threading.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/threading.worker.html.ini
new file mode 100644
index 0000000000..a3ace1ab5a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/buffers/threading.worker.html.ini
@@ -0,0 +1,2 @@
+[threading.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.html.ini
new file mode 100644
index 0000000000..cfe9b0e09a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.html.ini
@@ -0,0 +1,2 @@
+[basic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.html.ini
new file mode 100644
index 0000000000..26b2d279f1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[clearBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.html.ini
new file mode 100644
index 0000000000..80c0d55e8f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[copyBufferToBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.html.ini
new file mode 100644
index 0000000000..a9c0755894
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[copyTextureToTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.html.ini
new file mode 100644
index 0000000000..2e8dd03190
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.html.ini
@@ -0,0 +1,2 @@
+[image_copy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.html.ini
new file mode 100644
index 0000000000..b038e7c8c1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.html.ini
@@ -0,0 +1,2 @@
+[state_tracking.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.html.ini
new file mode 100644
index 0000000000..ff921a668a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.html.ini
@@ -0,0 +1,2 @@
+[occlusionQuery.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.html.ini
new file mode 100644
index 0000000000..6d80054bf1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.html.ini
@@ -0,0 +1,2 @@
+[dynamic_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.html.ini
new file mode 100644
index 0000000000..b038e7c8c1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.html.ini
@@ -0,0 +1,2 @@
+[state_tracking.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute/basic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute/basic.worker.html.ini
new file mode 100644
index 0000000000..cfe9b0e09a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute/basic.worker.html.ini
@@ -0,0 +1,2 @@
+[basic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.html.ini
new file mode 100644
index 0000000000..9098112306
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.html.ini
@@ -0,0 +1,2 @@
+[entry_point_name.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.html.ini
new file mode 100644
index 0000000000..01329ca9de
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.html.ini
@@ -0,0 +1,2 @@
+[overrides.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/device/lost.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/device/lost.worker.html.ini
new file mode 100644
index 0000000000..8f69be3738
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/device/lost.worker.html.ini
@@ -0,0 +1,2 @@
+[lost.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/labels.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/labels.worker.html.ini
new file mode 100644
index 0000000000..c72adad2da
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/labels.worker.html.ini
@@ -0,0 +1,2 @@
+[labels.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.html.ini
new file mode 100644
index 0000000000..92ea9dc0b1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.html.ini
@@ -0,0 +1,2 @@
+[multiple_buffers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.html.ini
new file mode 100644
index 0000000000..7699b228f6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.html.ini
@@ -0,0 +1,2 @@
+[single_buffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.html.ini
new file mode 100644
index 0000000000..7c4736b2b7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.html.ini
@@ -0,0 +1,2 @@
+[readonly_depth_stencil.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.html.ini
new file mode 100644
index 0000000000..3e3e70e735
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.html.ini
@@ -0,0 +1,2 @@
+[same_subresource.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.html.ini
new file mode 100644
index 0000000000..ee4ee33739
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.html.ini
@@ -0,0 +1,2 @@
+[onSubmittedWorkDone.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.html.ini
new file mode 100644
index 0000000000..5e9c5547b9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.html.ini
@@ -0,0 +1,2 @@
+[default_layout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.html.ini
new file mode 100644
index 0000000000..b872d87049
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[writeBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/reflection.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/reflection.worker.html.ini
new file mode 100644
index 0000000000..9c0b2a2da7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/reflection.worker.html.ini
@@ -0,0 +1,2 @@
+[reflection.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.html.ini
new file mode 100644
index 0000000000..8412fc09e9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.html.ini
@@ -0,0 +1,2 @@
+[clear_value.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.html.ini
new file mode 100644
index 0000000000..927dd3f9f7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.html.ini
@@ -0,0 +1,2 @@
+[resolve.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.html.ini
new file mode 100644
index 0000000000..5c72a0252b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.html.ini
@@ -0,0 +1,2 @@
+[storeOp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.html.ini
new file mode 100644
index 0000000000..00106d0151
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.html.ini
@@ -0,0 +1,2 @@
+[storeop2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.html.ini
new file mode 100644
index 0000000000..84e7d895a0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.html.ini
@@ -0,0 +1,2 @@
+[culling_tests.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.html.ini
new file mode 100644
index 0000000000..01329ca9de
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.html.ini
@@ -0,0 +1,2 @@
+[overrides.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.html.ini
new file mode 100644
index 0000000000..9a68b2706b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.html.ini
@@ -0,0 +1,2 @@
+[pipeline_output_targets.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.html.ini
new file mode 100644
index 0000000000..f69bdb34dd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.html.ini
@@ -0,0 +1,2 @@
+[primitive_topology.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.html.ini
new file mode 100644
index 0000000000..2232422015
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.html.ini
@@ -0,0 +1,2 @@
+[sample_mask.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.html.ini
new file mode 100644
index 0000000000..a2d286d26e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.html.ini
@@ -0,0 +1,2 @@
+[vertex_only_render_pipeline.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.html.ini
new file mode 100644
index 0000000000..a1c158b3b1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.html.ini
@@ -0,0 +1,2 @@
+[3d_texture_slices.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/basic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/basic.worker.html.ini
new file mode 100644
index 0000000000..cfe9b0e09a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/basic.worker.html.ini
@@ -0,0 +1,2 @@
+[basic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.html.ini
new file mode 100644
index 0000000000..cb16d458ef
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.html.ini
@@ -0,0 +1,2 @@
+[color_target_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth.worker.html.ini
new file mode 100644
index 0000000000..618ffa541f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth.worker.html.ini
@@ -0,0 +1,2 @@
+[depth.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.html.ini
new file mode 100644
index 0000000000..613e6d53d2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.html.ini
@@ -0,0 +1,2 @@
+[depth_bias.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.html.ini
new file mode 100644
index 0000000000..c9909cdade
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[depth_clip_clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/draw.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/draw.worker.html.ini
new file mode 100644
index 0000000000..7fc6c6c0d9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/draw.worker.html.ini
@@ -0,0 +1,2 @@
+[draw.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.html.ini
new file mode 100644
index 0000000000..b6a873b154
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.html.ini
@@ -0,0 +1,2 @@
+[indirect_draw.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.html.ini
new file mode 100644
index 0000000000..21abe79f96
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.html.ini
@@ -0,0 +1,2 @@
+[robust_access_index.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/stencil.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/stencil.worker.html.ini
new file mode 100644
index 0000000000..ab03a6c450
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/rendering/stencil.worker.html.ini
@@ -0,0 +1,2 @@
+[stencil.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.html.ini
new file mode 100644
index 0000000000..64362de8e2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.html.ini
@@ -0,0 +1,2 @@
+[buffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.html.ini
new file mode 100644
index 0000000000..7e239e3ebf
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.html.ini
@@ -0,0 +1,2 @@
+[texture_zero.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.html.ini
new file mode 100644
index 0000000000..3fee1836e4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.html.ini
@@ -0,0 +1,2 @@
+[anisotropy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.html.ini
new file mode 100644
index 0000000000..9d4c7de685
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.html.ini
@@ -0,0 +1,2 @@
+[filter_mode.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.html.ini
new file mode 100644
index 0000000000..d549711de4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[lod_clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.html.ini
new file mode 100644
index 0000000000..3ba17a02b2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.html.ini
@@ -0,0 +1,2 @@
+[compilation_info.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.html.ini
new file mode 100644
index 0000000000..a24f26d3c8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.html.ini
@@ -0,0 +1,2 @@
+[read_only.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.html.ini
new file mode 100644
index 0000000000..2bd366bba2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.html.ini
@@ -0,0 +1,2 @@
+[read_write.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.html.ini
new file mode 100644
index 0000000000..c7064f1f3a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.html.ini
@@ -0,0 +1,2 @@
+[format_reinterpretation.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/read.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/read.worker.html.ini
new file mode 100644
index 0000000000..9d692ded15
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/read.worker.html.ini
@@ -0,0 +1,2 @@
+[read.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/write.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/write.worker.html.ini
new file mode 100644
index 0000000000..75d3b3b193
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/texture_view/write.worker.html.ini
@@ -0,0 +1,2 @@
+[write.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/uncapturederror.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/uncapturederror.worker.html.ini
new file mode 100644
index 0000000000..06e13b2da8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/uncapturederror.worker.html.ini
@@ -0,0 +1,2 @@
+[uncapturederror.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.html.ini
new file mode 100644
index 0000000000..35adab6077
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.html.ini
@@ -0,0 +1,2 @@
+[correctness.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.html.ini
new file mode 100644
index 0000000000..ea822760e1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.html.ini
@@ -0,0 +1,2 @@
+[index_format.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/create.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/create.worker.html.ini
new file mode 100644
index 0000000000..dfefa0a3fc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/create.worker.html.ini
@@ -0,0 +1,2 @@
+[create.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/destroy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/destroy.worker.html.ini
new file mode 100644
index 0000000000..fc4d1f0d66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/destroy.worker.html.ini
@@ -0,0 +1,2 @@
+[destroy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/mapping.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/mapping.worker.html.ini
new file mode 100644
index 0000000000..021c7cff5d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/mapping.worker.html.ini
@@ -0,0 +1,2 @@
+[mapping.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/threading.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/threading.worker.html.ini
new file mode 100644
index 0000000000..a3ace1ab5a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/buffer/threading.worker.html.ini
@@ -0,0 +1,2 @@
+[threading.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.html.ini
new file mode 100644
index 0000000000..ec6c0d9741
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.html.ini
@@ -0,0 +1,2 @@
+[query_types.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.html.ini
new file mode 100644
index 0000000000..38fcbb243e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.html.ini
@@ -0,0 +1,2 @@
+[texture_formats.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.html.ini
new file mode 100644
index 0000000000..d02a587dd8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.html.ini
@@ -0,0 +1,2 @@
+[maxBindGroups.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.html.ini
new file mode 100644
index 0000000000..02e10c471a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.html.ini
@@ -0,0 +1,2 @@
+[maxBindGroupsPlusVertexBuffers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.html.ini
new file mode 100644
index 0000000000..c8b6211a05
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.html.ini
@@ -0,0 +1,2 @@
+[maxBindingsPerBindGroup.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.html.ini
new file mode 100644
index 0000000000..129fa7ce13
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.html.ini
@@ -0,0 +1,2 @@
+[maxBufferSize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.html.ini
new file mode 100644
index 0000000000..eb3b98b5cd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.html.ini
@@ -0,0 +1,2 @@
+[maxColorAttachmentBytesPerSample.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.html.ini
new file mode 100644
index 0000000000..d33a493b94
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.html.ini
@@ -0,0 +1,2 @@
+[maxColorAttachments.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.html.ini
new file mode 100644
index 0000000000..c549cc49d4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeInvocationsPerWorkgroup.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.html.ini
new file mode 100644
index 0000000000..d402091fa2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeWorkgroupSizeX.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.html.ini
new file mode 100644
index 0000000000..f57ed8bc31
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeWorkgroupSizeY.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.html.ini
new file mode 100644
index 0000000000..e157633398
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeWorkgroupSizeZ.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.html.ini
new file mode 100644
index 0000000000..261b09d30d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeWorkgroupStorageSize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.html.ini
new file mode 100644
index 0000000000..7c6fc04cd3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.html.ini
@@ -0,0 +1,2 @@
+[maxComputeWorkgroupsPerDimension.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.html.ini
new file mode 100644
index 0000000000..839aa9c87e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[maxDynamicStorageBuffersPerPipelineLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.html.ini
new file mode 100644
index 0000000000..c28cba7f8b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[maxDynamicUniformBuffersPerPipelineLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.html.ini
new file mode 100644
index 0000000000..f14643c3d7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.html.ini
@@ -0,0 +1,2 @@
+[maxInterStageShaderComponents.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.html.ini
new file mode 100644
index 0000000000..2e8ccbbcfc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.html.ini
@@ -0,0 +1,2 @@
+[maxInterStageShaderVariables.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.html.ini
new file mode 100644
index 0000000000..6b1cce8926
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.html.ini
@@ -0,0 +1,2 @@
+[maxSampledTexturesPerShaderStage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.html.ini
new file mode 100644
index 0000000000..083bd75d17
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.html.ini
@@ -0,0 +1,2 @@
+[maxSamplersPerShaderStage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.html.ini
new file mode 100644
index 0000000000..22423daa5f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.html.ini
@@ -0,0 +1,2 @@
+[maxStorageBufferBindingSize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.html.ini
new file mode 100644
index 0000000000..0c95242499
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.html.ini
@@ -0,0 +1,2 @@
+[maxStorageBuffersPerShaderStage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.html.ini
new file mode 100644
index 0000000000..0e8e34f4cc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.html.ini
@@ -0,0 +1,2 @@
+[maxStorageTexturesPerShaderStage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.html.ini
new file mode 100644
index 0000000000..dd082c592d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.html.ini
@@ -0,0 +1,2 @@
+[maxTextureArrayLayers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.html.ini
new file mode 100644
index 0000000000..2f4e48835d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.html.ini
@@ -0,0 +1,2 @@
+[maxTextureDimension1D.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.html.ini
new file mode 100644
index 0000000000..69894b971d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.html.ini
@@ -0,0 +1,2 @@
+[maxTextureDimension2D.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.html.ini
new file mode 100644
index 0000000000..2a9bcaee24
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.html.ini
@@ -0,0 +1,2 @@
+[maxTextureDimension3D.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.html.ini
new file mode 100644
index 0000000000..255dbf0655
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.html.ini
@@ -0,0 +1,2 @@
+[maxUniformBufferBindingSize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.html.ini
new file mode 100644
index 0000000000..e4d6e8ab36
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.html.ini
@@ -0,0 +1,2 @@
+[maxUniformBuffersPerShaderStage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.html.ini
new file mode 100644
index 0000000000..89e35f43ba
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.html.ini
@@ -0,0 +1,2 @@
+[maxVertexAttributes.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.html.ini
new file mode 100644
index 0000000000..72d198a907
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.html.ini
@@ -0,0 +1,2 @@
+[maxVertexBufferArrayStride.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.html.ini
new file mode 100644
index 0000000000..f324669a23
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.html.ini
@@ -0,0 +1,2 @@
+[maxVertexBuffers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.html.ini
new file mode 100644
index 0000000000..43b05f4912
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.html.ini
@@ -0,0 +1,2 @@
+[minStorageBufferOffsetAlignment.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.html.ini
new file mode 100644
index 0000000000..e496b889ef
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.html.ini
@@ -0,0 +1,2 @@
+[minUniformBufferOffsetAlignment.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/compute_pipeline.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/compute_pipeline.worker.html.ini
new file mode 100644
index 0000000000..2d922a9fc8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/compute_pipeline.worker.html.ini
@@ -0,0 +1,2 @@
+[compute_pipeline.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroup.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroup.worker.html.ini
new file mode 100644
index 0000000000..4c7d2e9fb1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroup.worker.html.ini
@@ -0,0 +1,2 @@
+[createBindGroup.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.html.ini
new file mode 100644
index 0000000000..8ac28a031a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[createBindGroupLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.html.ini
new file mode 100644
index 0000000000..01f43a9011
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[createPipelineLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createSampler.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createSampler.worker.html.ini
new file mode 100644
index 0000000000..7341f32500
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createSampler.worker.html.ini
@@ -0,0 +1,2 @@
+[createSampler.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createTexture.worker.html.ini
new file mode 100644
index 0000000000..c629765646
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[createTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createView.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createView.worker.html.ini
new file mode 100644
index 0000000000..6a52dc338c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/createView.worker.html.ini
@@ -0,0 +1,2 @@
+[createView.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/debugMarker.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/debugMarker.worker.html.ini
new file mode 100644
index 0000000000..bc2d277948
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/debugMarker.worker.html.ini
@@ -0,0 +1,2 @@
+[debugMarker.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.html.ini
new file mode 100644
index 0000000000..02d15a375a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.html.ini
@@ -0,0 +1,2 @@
+[beginComputePass.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.html.ini
new file mode 100644
index 0000000000..ef0c4e3fe3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.html.ini
@@ -0,0 +1,2 @@
+[beginRenderPass.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.html.ini
new file mode 100644
index 0000000000..26b2d279f1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[clearBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.html.ini
new file mode 100644
index 0000000000..c76812fc42
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.html.ini
@@ -0,0 +1,2 @@
+[compute_pass.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.html.ini
new file mode 100644
index 0000000000..80c0d55e8f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[copyBufferToBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini
new file mode 100644
index 0000000000..a9c0755894
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[copyTextureToTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.html.ini
new file mode 100644
index 0000000000..e86230f250
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.html.ini
@@ -0,0 +1,2 @@
+[debug.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.html.ini
new file mode 100644
index 0000000000..11f6622954
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.html.ini
@@ -0,0 +1,2 @@
+[index_access.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.html.ini
new file mode 100644
index 0000000000..7fc6c6c0d9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.html.ini
@@ -0,0 +1,2 @@
+[draw.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.html.ini
new file mode 100644
index 0000000000..6d80054bf1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.html.ini
@@ -0,0 +1,2 @@
+[dynamic_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.html.ini
new file mode 100644
index 0000000000..b6a873b154
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.html.ini
@@ -0,0 +1,2 @@
+[indirect_draw.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.html.ini
new file mode 100644
index 0000000000..d8a44e84b0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[setIndexBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.html.ini
new file mode 100644
index 0000000000..284e427da4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.html.ini
@@ -0,0 +1,2 @@
+[setPipeline.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.html.ini
new file mode 100644
index 0000000000..8bab4cb107
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[setVertexBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.html.ini
new file mode 100644
index 0000000000..b038e7c8c1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.html.ini
@@ -0,0 +1,2 @@
+[state_tracking.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.html.ini
new file mode 100644
index 0000000000..a5182cb306
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.html.ini
@@ -0,0 +1,2 @@
+[render_pass.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.html.ini
new file mode 100644
index 0000000000..d19e46963f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.html.ini
@@ -0,0 +1,2 @@
+[setBindGroup.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.html.ini
new file mode 100644
index 0000000000..c643adceb3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.html.ini
@@ -0,0 +1,2 @@
+[createRenderBundleEncoder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.html.ini
new file mode 100644
index 0000000000..3913367d19
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.html.ini
@@ -0,0 +1,2 @@
+[encoder_open_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.html.ini
new file mode 100644
index 0000000000..cf690edfe2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.html.ini
@@ -0,0 +1,2 @@
+[encoder_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini
new file mode 100644
index 0000000000..c9d5196448
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini
@@ -0,0 +1,2 @@
+[pipeline_bind_group_compat.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.html.ini
new file mode 100644
index 0000000000..a3e4401cf3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.html.ini
@@ -0,0 +1,2 @@
+[begin_end.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.html.ini
new file mode 100644
index 0000000000..de906275c6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.html.ini
@@ -0,0 +1,2 @@
+[general.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.html.ini
new file mode 100644
index 0000000000..09ab276561
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.html.ini
@@ -0,0 +1,2 @@
+[resolveQuerySet.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.html.ini
new file mode 100644
index 0000000000..a25ed86489
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.html.ini
@@ -0,0 +1,2 @@
+[render_bundle.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/error_scope.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/error_scope.worker.html.ini
new file mode 100644
index 0000000000..50b2546f01
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/error_scope.worker.html.ini
@@ -0,0 +1,2 @@
+[error_scope.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.html.ini
new file mode 100644
index 0000000000..481fda0017
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[getBindGroupLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.html.ini
new file mode 100644
index 0000000000..92d7e1cdae
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.html.ini
@@ -0,0 +1,2 @@
+[gpu_external_texture_expiration.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.html.ini
new file mode 100644
index 0000000000..6d7dae5292
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.html.ini
@@ -0,0 +1,2 @@
+[buffer_related.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.html.ini
new file mode 100644
index 0000000000..3b681eebe7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.html.ini
@@ -0,0 +1,2 @@
+[buffer_texture_copies.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.html.ini
new file mode 100644
index 0000000000..af5015221a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.html.ini
@@ -0,0 +1,2 @@
+[layout_related.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.html.ini
new file mode 100644
index 0000000000..e60fc57a6e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.html.ini
@@ -0,0 +1,2 @@
+[texture_related.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.html.ini
new file mode 100644
index 0000000000..e66d6c5bef
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.html.ini
@@ -0,0 +1,2 @@
+[layout_shader_compat.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/create.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/create.worker.html.ini
new file mode 100644
index 0000000000..dfefa0a3fc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/create.worker.html.ini
@@ -0,0 +1,2 @@
+[create.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/destroy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/destroy.worker.html.ini
new file mode 100644
index 0000000000..fc4d1f0d66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/query_set/destroy.worker.html.ini
@@ -0,0 +1,2 @@
+[destroy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.html.ini
new file mode 100644
index 0000000000..af9971d552
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.html.ini
@@ -0,0 +1,2 @@
+[buffer_mapped.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.html.ini
new file mode 100644
index 0000000000..2222143628
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[CopyExternalImageToTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.html.ini
new file mode 100644
index 0000000000..64362de8e2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.html.ini
@@ -0,0 +1,2 @@
+[buffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.html.ini
new file mode 100644
index 0000000000..f9b7ad541e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.html.ini
@@ -0,0 +1,2 @@
+[query_set.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.html.ini
new file mode 100644
index 0000000000..136ba404ce
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.html.ini
@@ -0,0 +1,2 @@
+[texture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/submit.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/submit.worker.html.ini
new file mode 100644
index 0000000000..9d62796b82
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/submit.worker.html.ini
@@ -0,0 +1,2 @@
+[submit.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.html.ini
new file mode 100644
index 0000000000..b872d87049
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[writeBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.html.ini
new file mode 100644
index 0000000000..d7d450c59c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[writeTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.html.ini
new file mode 100644
index 0000000000..be91c8f76d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.html.ini
@@ -0,0 +1,2 @@
+[attachment_compatibility.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.html.ini
new file mode 100644
index 0000000000..c71cf3d1c5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.html.ini
@@ -0,0 +1,2 @@
+[render_pass_descriptor.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.html.ini
new file mode 100644
index 0000000000..927dd3f9f7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.html.ini
@@ -0,0 +1,2 @@
+[resolve.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.html.ini
new file mode 100644
index 0000000000..35124f7094
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.html.ini
@@ -0,0 +1,2 @@
+[depth_stencil_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.html.ini
new file mode 100644
index 0000000000..478ae22d81
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.html.ini
@@ -0,0 +1,2 @@
+[fragment_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.html.ini
new file mode 100644
index 0000000000..8910205761
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.html.ini
@@ -0,0 +1,2 @@
+[inter_stage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.html.ini
new file mode 100644
index 0000000000..76fbd51eb6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.html.ini
@@ -0,0 +1,2 @@
+[misc.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.html.ini
new file mode 100644
index 0000000000..2e4fdde2f0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.html.ini
@@ -0,0 +1,2 @@
+[multisample_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.html.ini
new file mode 100644
index 0000000000..01329ca9de
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.html.ini
@@ -0,0 +1,2 @@
+[overrides.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.html.ini
new file mode 100644
index 0000000000..05f74451dd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.html.ini
@@ -0,0 +1,2 @@
+[primitive_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.html.ini
new file mode 100644
index 0000000000..6d0101fb3b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.html.ini
@@ -0,0 +1,2 @@
+[resource_compatibility.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.html.ini
new file mode 100644
index 0000000000..3265972b66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.html.ini
@@ -0,0 +1,2 @@
+[shader_module.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.html.ini
new file mode 100644
index 0000000000..4abd080aca
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.html.ini
@@ -0,0 +1,2 @@
+[vertex_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.html.ini
new file mode 100644
index 0000000000..738edd93d0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.html.ini
@@ -0,0 +1,2 @@
+[in_pass_encoder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.html.ini
new file mode 100644
index 0000000000..27288e53bc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.html.ini
@@ -0,0 +1,2 @@
+[in_pass_misc.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.html.ini
new file mode 100644
index 0000000000..738edd93d0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.html.ini
@@ -0,0 +1,2 @@
+[in_pass_encoder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.html.ini
new file mode 100644
index 0000000000..92bc95606c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.html.ini
@@ -0,0 +1,2 @@
+[in_render_common.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.html.ini
new file mode 100644
index 0000000000..a38b2f9e47
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.html.ini
@@ -0,0 +1,2 @@
+[in_render_misc.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.html.ini
new file mode 100644
index 0000000000..dc9974b840
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.html.ini
@@ -0,0 +1,2 @@
+[entry_point.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.html.ini
new file mode 100644
index 0000000000..01329ca9de
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.html.ini
@@ -0,0 +1,2 @@
+[overrides.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.html.ini
new file mode 100644
index 0000000000..fc4d1f0d66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.html.ini
@@ -0,0 +1,2 @@
+[destroy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.html.ini
new file mode 100644
index 0000000000..389c956292
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.html.ini
@@ -0,0 +1,2 @@
+[bgra8unorm_storage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/destroy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/destroy.worker.html.ini
new file mode 100644
index 0000000000..fc4d1f0d66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/destroy.worker.html.ini
@@ -0,0 +1,2 @@
+[destroy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.html.ini
new file mode 100644
index 0000000000..fa33e3e758
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.html.ini
@@ -0,0 +1,2 @@
+[float32_filterable.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.html.ini
new file mode 100644
index 0000000000..7f56d89966
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.html.ini
@@ -0,0 +1,2 @@
+[rg11b10ufloat_renderable.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.html.ini
new file mode 100644
index 0000000000..4c7d2e9fb1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.html.ini
@@ -0,0 +1,2 @@
+[createBindGroup.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.html.ini
new file mode 100644
index 0000000000..8ac28a031a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.html.ini
@@ -0,0 +1,2 @@
+[createBindGroupLayout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.html.ini
new file mode 100644
index 0000000000..c4a83aeeca
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.html.ini
@@ -0,0 +1,2 @@
+[copyTextureToBuffer.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini
new file mode 100644
index 0000000000..a9c0755894
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[copyTextureToTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini
new file mode 100644
index 0000000000..c9d5196448
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.html.ini
@@ -0,0 +1,2 @@
+[pipeline_bind_group_compat.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.html.ini
new file mode 100644
index 0000000000..35124f7094
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.html.ini
@@ -0,0 +1,2 @@
+[depth_stencil_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.html.ini
new file mode 100644
index 0000000000..478ae22d81
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.html.ini
@@ -0,0 +1,2 @@
+[fragment_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.html.ini
new file mode 100644
index 0000000000..3265972b66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.html.ini
@@ -0,0 +1,2 @@
+[shader_module.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.html.ini
new file mode 100644
index 0000000000..4abd080aca
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.html.ini
@@ -0,0 +1,2 @@
+[vertex_state.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.html.ini
new file mode 100644
index 0000000000..c629765646
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[createTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.html.ini
new file mode 100644
index 0000000000..73132a4aef
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.html.ini
@@ -0,0 +1,2 @@
+[cubeArray.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/examples.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/examples.worker.html.ini
new file mode 100644
index 0000000000..3bf33c3aac
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/examples.worker.html.ini
@@ -0,0 +1,2 @@
+[examples.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constants/flags.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constants/flags.worker.html.ini
new file mode 100644
index 0000000000..4d5b771847
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constants/flags.worker.html.ini
@@ -0,0 +1,2 @@
+[flags.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constructable.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constructable.worker.html.ini
new file mode 100644
index 0000000000..16af4bff4c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/idl/constructable.worker.html.ini
@@ -0,0 +1,2 @@
+[constructable.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/print_environment.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/print_environment.worker.html.ini
new file mode 100644
index 0000000000..17b60abb8c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/print_environment.worker.html.ini
@@ -0,0 +1,2 @@
+[print_environment.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.html.ini
new file mode 100644
index 0000000000..558c030dec
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.html.ini
@@ -0,0 +1,2 @@
+[index.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.html.ini
new file mode 100644
index 0000000000..558c030dec
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.html.ini
@@ -0,0 +1,2 @@
+[index.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.html.ini
new file mode 100644
index 0000000000..558c030dec
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.html.ini
@@ -0,0 +1,2 @@
+[index.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.html.ini
new file mode 100644
index 0000000000..caf9d08aa9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.html.ini
@@ -0,0 +1,2 @@
+[components.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.html.ini
new file mode 100644
index 0000000000..558c030dec
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.html.ini
@@ -0,0 +1,2 @@
+[index.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.html.ini
new file mode 100644
index 0000000000..4d92533937
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[af_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.html.ini
new file mode 100644
index 0000000000..2bcaae7afc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[af_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.html.ini
new file mode 100644
index 0000000000..b5776bb99e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.html.ini
@@ -0,0 +1,2 @@
+[af_division.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.html.ini
new file mode 100644
index 0000000000..599e81fc9e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[af_matrix_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.html.ini
new file mode 100644
index 0000000000..6fea093eb2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[af_matrix_matrix_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.html.ini
new file mode 100644
index 0000000000..978ee52871
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[af_matrix_scalar_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.html.ini
new file mode 100644
index 0000000000..6be03fad66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[af_matrix_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.html.ini
new file mode 100644
index 0000000000..ba7bbb704b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[af_matrix_vector_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.html.ini
new file mode 100644
index 0000000000..90aa37191c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[af_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.html.ini
new file mode 100644
index 0000000000..363d93a0ff
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.html.ini
@@ -0,0 +1,2 @@
+[af_remainder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.html.ini
new file mode 100644
index 0000000000..dbf70e5bee
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[af_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..af02bf4578
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[ai_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.html.ini
new file mode 100644
index 0000000000..e4377394ba
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[ai_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.html.ini
new file mode 100644
index 0000000000..b5fcb8c1fe
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.html.ini
@@ -0,0 +1,2 @@
+[bitwise.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.html.ini
new file mode 100644
index 0000000000..9bb5ba9dc2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.html.ini
@@ -0,0 +1,2 @@
+[bitwise_shift.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.html.ini
new file mode 100644
index 0000000000..f804219dd0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.html.ini
@@ -0,0 +1,2 @@
+[bool_logical.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.html.ini
new file mode 100644
index 0000000000..e0282c7060
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.html.ini
new file mode 100644
index 0000000000..17b4a1d8b1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.html.ini
new file mode 100644
index 0000000000..b3178c2a4e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_division.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.html.ini
new file mode 100644
index 0000000000..4be109ef98
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_matrix_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.html.ini
new file mode 100644
index 0000000000..2917cb5f2b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_matrix_matrix_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.html.ini
new file mode 100644
index 0000000000..74fbf16775
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_matrix_scalar_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.html.ini
new file mode 100644
index 0000000000..a28c18ae2b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_matrix_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.html.ini
new file mode 100644
index 0000000000..e6e83f5bd1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_matrix_vector_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.html.ini
new file mode 100644
index 0000000000..c0573e54d1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.html.ini
new file mode 100644
index 0000000000..7f3f3a8b48
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_remainder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.html.ini
new file mode 100644
index 0000000000..562de830a2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.html.ini
new file mode 100644
index 0000000000..21c67f9b24
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.html.ini
new file mode 100644
index 0000000000..500ed6d17d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.html.ini
new file mode 100644
index 0000000000..444dd44fed
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_division.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.html.ini
new file mode 100644
index 0000000000..02fdbf9590
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_matrix_addition.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.html.ini
new file mode 100644
index 0000000000..5c831da66c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_matrix_matrix_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.html.ini
new file mode 100644
index 0000000000..de751699e2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_matrix_scalar_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.html.ini
new file mode 100644
index 0000000000..f518f0063b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_matrix_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.html.ini
new file mode 100644
index 0000000000..a40a52d22c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_matrix_vector_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.html.ini
new file mode 100644
index 0000000000..4df43ca26a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_multiplication.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.html.ini
new file mode 100644
index 0000000000..b3fbc4476f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_remainder.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.html.ini
new file mode 100644
index 0000000000..2e86f6c150
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_subtraction.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..8085ec5853
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[i32_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.html.ini
new file mode 100644
index 0000000000..5e814fbb01
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[i32_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..ddc82ce94a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[u32_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.html.ini
new file mode 100644
index 0000000000..5858de805d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[u32_comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.html.ini
new file mode 100644
index 0000000000..bb2879bad1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.html.ini
@@ -0,0 +1,2 @@
+[abs.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.html.ini
new file mode 100644
index 0000000000..ea9215f579
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.html.ini
@@ -0,0 +1,2 @@
+[acos.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.html.ini
new file mode 100644
index 0000000000..dbdc781f25
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.html.ini
@@ -0,0 +1,2 @@
+[acosh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.html.ini
new file mode 100644
index 0000000000..38e1e346bd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.html.ini
@@ -0,0 +1,2 @@
+[all.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.html.ini
new file mode 100644
index 0000000000..d1d6a1e1f6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.html.ini
@@ -0,0 +1,2 @@
+[any.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.html.ini
new file mode 100644
index 0000000000..a29b205429
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.html.ini
@@ -0,0 +1,2 @@
+[arrayLength.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.html.ini
new file mode 100644
index 0000000000..2780c972ab
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.html.ini
@@ -0,0 +1,2 @@
+[asin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.html.ini
new file mode 100644
index 0000000000..23cff6ebd0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.html.ini
@@ -0,0 +1,2 @@
+[asinh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.html.ini
new file mode 100644
index 0000000000..f6612b04a8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.html.ini
@@ -0,0 +1,2 @@
+[atan.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.html.ini
new file mode 100644
index 0000000000..17d42b2661
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.html.ini
@@ -0,0 +1,2 @@
+[atan2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.html.ini
new file mode 100644
index 0000000000..d938a221e7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.html.ini
@@ -0,0 +1,2 @@
+[atanh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.html.ini
new file mode 100644
index 0000000000..896f1373d0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicAdd.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.html.ini
new file mode 100644
index 0000000000..e89b820e0c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicAnd.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.html.ini
new file mode 100644
index 0000000000..e19065e60a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicCompareExchangeWeak.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.html.ini
new file mode 100644
index 0000000000..fc79626d25
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicExchange.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.html.ini
new file mode 100644
index 0000000000..11b91c810c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicLoad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.html.ini
new file mode 100644
index 0000000000..f11a6e6ec0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicMax.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.html.ini
new file mode 100644
index 0000000000..4219e0b1ca
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicMin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.html.ini
new file mode 100644
index 0000000000..03c1f1cb0b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicOr.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.html.ini
new file mode 100644
index 0000000000..e6c09949e5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicStore.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.html.ini
new file mode 100644
index 0000000000..bd406d118c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicSub.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.html.ini
new file mode 100644
index 0000000000..d84456ef9f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicXor.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.html.ini
new file mode 100644
index 0000000000..05d599e99d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.html.ini
@@ -0,0 +1,2 @@
+[bitcast.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.html.ini
new file mode 100644
index 0000000000..32cb8465bd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.html.ini
@@ -0,0 +1,2 @@
+[ceil.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.html.ini
new file mode 100644
index 0000000000..a0705f460d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.html.ini
new file mode 100644
index 0000000000..0d18d7dcfc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.html.ini
@@ -0,0 +1,2 @@
+[cos.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.html.ini
new file mode 100644
index 0000000000..84bd446d19
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.html.ini
@@ -0,0 +1,2 @@
+[cosh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.html.ini
new file mode 100644
index 0000000000..5716eaa5f6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.html.ini
@@ -0,0 +1,2 @@
+[countLeadingZeros.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.html.ini
new file mode 100644
index 0000000000..c1b3075a4c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.html.ini
@@ -0,0 +1,2 @@
+[countOneBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.html.ini
new file mode 100644
index 0000000000..0167ca70f4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.html.ini
@@ -0,0 +1,2 @@
+[countTrailingZeros.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.html.ini
new file mode 100644
index 0000000000..d11e01a67b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.html.ini
@@ -0,0 +1,2 @@
+[cross.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.html.ini
new file mode 100644
index 0000000000..c5133d7b73
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.html.ini
@@ -0,0 +1,2 @@
+[degrees.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.html.ini
new file mode 100644
index 0000000000..e8beba9489
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.html.ini
@@ -0,0 +1,2 @@
+[determinant.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.html.ini
new file mode 100644
index 0000000000..10e946b0b3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.html.ini
@@ -0,0 +1,2 @@
+[distance.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.html.ini
new file mode 100644
index 0000000000..5b764f648d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.html.ini
@@ -0,0 +1,2 @@
+[dot.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.html.ini
new file mode 100644
index 0000000000..e15ab0a819
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.html.ini
@@ -0,0 +1,2 @@
+[dot4I8Packed.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.html.ini
new file mode 100644
index 0000000000..c2cb249d29
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.html.ini
@@ -0,0 +1,2 @@
+[dot4U8Packed.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.html.ini
new file mode 100644
index 0000000000..1a69cd1a7b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdx.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.html.ini
new file mode 100644
index 0000000000..0afa7a42e3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdxCoarse.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.html.ini
new file mode 100644
index 0000000000..6c97b58d82
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdxFine.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.html.ini
new file mode 100644
index 0000000000..f9003e521b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdy.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.html.ini
new file mode 100644
index 0000000000..a4e0ead090
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdyCoarse.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.html.ini
new file mode 100644
index 0000000000..38ba70ae41
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.html.ini
@@ -0,0 +1,2 @@
+[dpdyFine.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.html.ini
new file mode 100644
index 0000000000..7a3920bd19
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.html.ini
@@ -0,0 +1,2 @@
+[exp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.html.ini
new file mode 100644
index 0000000000..e27c650dfb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.html.ini
@@ -0,0 +1,2 @@
+[exp2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.html.ini
new file mode 100644
index 0000000000..acedd29d3f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.html.ini
@@ -0,0 +1,2 @@
+[extractBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.html.ini
new file mode 100644
index 0000000000..8ec9c1bf01
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.html.ini
@@ -0,0 +1,2 @@
+[faceForward.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.html.ini
new file mode 100644
index 0000000000..0e9b912e7b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.html.ini
@@ -0,0 +1,2 @@
+[firstLeadingBit.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.html.ini
new file mode 100644
index 0000000000..3cdfb5e073
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.html.ini
@@ -0,0 +1,2 @@
+[firstTrailingBit.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.html.ini
new file mode 100644
index 0000000000..a35295e781
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.html.ini
@@ -0,0 +1,2 @@
+[floor.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.html.ini
new file mode 100644
index 0000000000..333e0776b1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.html.ini
@@ -0,0 +1,2 @@
+[fma.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.html.ini
new file mode 100644
index 0000000000..62caca0c52
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.html.ini
@@ -0,0 +1,2 @@
+[fract.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.html.ini
new file mode 100644
index 0000000000..1c3dcb8612
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.html.ini
@@ -0,0 +1,2 @@
+[frexp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.html.ini
new file mode 100644
index 0000000000..63c21370d2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.html.ini
@@ -0,0 +1,2 @@
+[fwidth.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.html.ini
new file mode 100644
index 0000000000..306624ce15
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.html.ini
@@ -0,0 +1,2 @@
+[fwidthCoarse.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.html.ini
new file mode 100644
index 0000000000..3dc594e34b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.html.ini
@@ -0,0 +1,2 @@
+[fwidthFine.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.html.ini
new file mode 100644
index 0000000000..909a333977
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.html.ini
@@ -0,0 +1,2 @@
+[insertBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.html.ini
new file mode 100644
index 0000000000..e06eb47355
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.html.ini
@@ -0,0 +1,2 @@
+[inversesqrt.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.html.ini
new file mode 100644
index 0000000000..3f2284bdea
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.html.ini
@@ -0,0 +1,2 @@
+[ldexp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.html.ini
new file mode 100644
index 0000000000..3a320f9350
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.html.ini
@@ -0,0 +1,2 @@
+[length.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.html.ini
new file mode 100644
index 0000000000..3075fae8b4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.html.ini
@@ -0,0 +1,2 @@
+[log.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.html.ini
new file mode 100644
index 0000000000..e302169f62
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.html.ini
@@ -0,0 +1,2 @@
+[log2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.html.ini
new file mode 100644
index 0000000000..0088e26bb2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.html.ini
@@ -0,0 +1,2 @@
+[max.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.html.ini
new file mode 100644
index 0000000000..8160fb52b5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.html.ini
@@ -0,0 +1,2 @@
+[min.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.html.ini
new file mode 100644
index 0000000000..360eb8cb7c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.html.ini
@@ -0,0 +1,2 @@
+[mix.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.html.ini
new file mode 100644
index 0000000000..fa351c49af
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.html.ini
@@ -0,0 +1,2 @@
+[modf.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.html.ini
new file mode 100644
index 0000000000..670058b506
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.html.ini
@@ -0,0 +1,2 @@
+[normalize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.html.ini
new file mode 100644
index 0000000000..33930fd076
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.html.ini
@@ -0,0 +1,2 @@
+[pack2x16float.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.html.ini
new file mode 100644
index 0000000000..84b4a1c123
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack2x16snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.html.ini
new file mode 100644
index 0000000000..219ffb1327
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack2x16unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.html.ini
new file mode 100644
index 0000000000..4cca1e6129
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4x8snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.html.ini
new file mode 100644
index 0000000000..f4ee25f292
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4x8unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.html.ini
new file mode 100644
index 0000000000..fe641fae90
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xI8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.html.ini
new file mode 100644
index 0000000000..7f1b8c1e8b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xI8Clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.html.ini
new file mode 100644
index 0000000000..a200002fd2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xU8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.html.ini
new file mode 100644
index 0000000000..d80dde6675
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xU8Clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.html.ini
new file mode 100644
index 0000000000..e3d053726f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.html.ini
@@ -0,0 +1,2 @@
+[pow.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.html.ini
new file mode 100644
index 0000000000..b0b494ff02
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.html.ini
@@ -0,0 +1,2 @@
+[quantizeToF16.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.html.ini
new file mode 100644
index 0000000000..97489e599e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.html.ini
@@ -0,0 +1,2 @@
+[radians.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.html.ini
new file mode 100644
index 0000000000..968e806c30
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.html.ini
@@ -0,0 +1,2 @@
+[reflect.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.html.ini
new file mode 100644
index 0000000000..d4a2eb8cbb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.html.ini
@@ -0,0 +1,2 @@
+[refract.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.html.ini
new file mode 100644
index 0000000000..94b40abf28
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.html.ini
@@ -0,0 +1,2 @@
+[reverseBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.html.ini
new file mode 100644
index 0000000000..4283fc1143
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.html.ini
@@ -0,0 +1,2 @@
+[round.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.html.ini
new file mode 100644
index 0000000000..43c4cb8ec1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.html.ini
@@ -0,0 +1,2 @@
+[saturate.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.html.ini
new file mode 100644
index 0000000000..e72b1a6440
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.html.ini
@@ -0,0 +1,2 @@
+[select.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.html.ini
new file mode 100644
index 0000000000..97bcf1495b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.html.ini
@@ -0,0 +1,2 @@
+[sign.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.html.ini
new file mode 100644
index 0000000000..40a92c1bf7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.html.ini
@@ -0,0 +1,2 @@
+[sin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.html.ini
new file mode 100644
index 0000000000..e052bb43a7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.html.ini
@@ -0,0 +1,2 @@
+[sinh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.html.ini
new file mode 100644
index 0000000000..0ad24f9726
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.html.ini
@@ -0,0 +1,2 @@
+[smoothstep.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.html.ini
new file mode 100644
index 0000000000..0b89250d70
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.html.ini
@@ -0,0 +1,2 @@
+[sqrt.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.html.ini
new file mode 100644
index 0000000000..dacda04349
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.html.ini
@@ -0,0 +1,2 @@
+[step.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.html.ini
new file mode 100644
index 0000000000..a519cee345
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.html.ini
@@ -0,0 +1,2 @@
+[storageBarrier.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.html.ini
new file mode 100644
index 0000000000..57bea1ef93
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.html.ini
@@ -0,0 +1,2 @@
+[tan.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.html.ini
new file mode 100644
index 0000000000..47aba07b98
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.html.ini
@@ -0,0 +1,2 @@
+[tanh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.html.ini
new file mode 100644
index 0000000000..ff0f22e6e0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.html.ini
@@ -0,0 +1,2 @@
+[textureDimensions.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.html.ini
new file mode 100644
index 0000000000..026e10061b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.html.ini
@@ -0,0 +1,2 @@
+[textureGather.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.html.ini
new file mode 100644
index 0000000000..ea576ed4be
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.html.ini
@@ -0,0 +1,2 @@
+[textureGatherCompare.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.html.ini
new file mode 100644
index 0000000000..393037fa4f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.html.ini
@@ -0,0 +1,2 @@
+[textureLoad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.html.ini
new file mode 100644
index 0000000000..66d3bee9d0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.html.ini
@@ -0,0 +1,2 @@
+[textureNumLayers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.html.ini
new file mode 100644
index 0000000000..b0354512aa
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.html.ini
@@ -0,0 +1,2 @@
+[textureNumLevels.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.html.ini
new file mode 100644
index 0000000000..ad6818148b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.html.ini
@@ -0,0 +1,2 @@
+[textureNumSamples.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.html.ini
new file mode 100644
index 0000000000..496e7be4eb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSample.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.html.ini
new file mode 100644
index 0000000000..7d3ef476b2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleBias.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.html.ini
new file mode 100644
index 0000000000..1c456fb71f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleCompare.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.html.ini
new file mode 100644
index 0000000000..4d1ff42019
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleCompareLevel.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.html.ini
new file mode 100644
index 0000000000..dc458a84ce
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleGrad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.html.ini
new file mode 100644
index 0000000000..f3e817ee42
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleLevel.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.html.ini
new file mode 100644
index 0000000000..6c496b0fad
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.html.ini
@@ -0,0 +1,2 @@
+[textureStore.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.html.ini
new file mode 100644
index 0000000000..6af506e032
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.html.ini
@@ -0,0 +1,2 @@
+[transpose.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.html.ini
new file mode 100644
index 0000000000..50bb6f7a88
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.html.ini
@@ -0,0 +1,2 @@
+[trunc.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.html.ini
new file mode 100644
index 0000000000..6b160498a1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16float.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.html.ini
new file mode 100644
index 0000000000..aaf0981002
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.html.ini
new file mode 100644
index 0000000000..703985b765
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.html.ini
new file mode 100644
index 0000000000..2c2fb8daab
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4x8snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.html.ini
new file mode 100644
index 0000000000..5f63a39d4d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4x8unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.html.ini
new file mode 100644
index 0000000000..2b61b07c4b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4xI8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.html.ini
new file mode 100644
index 0000000000..a0d195b036
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4xU8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.html.ini
new file mode 100644
index 0000000000..e4cf7b16b0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.html.ini
@@ -0,0 +1,2 @@
+[workgroupBarrier.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.html.ini
new file mode 100644
index 0000000000..4498bbb06e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.html.ini
@@ -0,0 +1,2 @@
+[workgroupUniformLoad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.html.ini
new file mode 100644
index 0000000000..81f5a45925
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.html.ini
@@ -0,0 +1,2 @@
+[ptr_params.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.html.ini
new file mode 100644
index 0000000000..071f190eee
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.html.ini
@@ -0,0 +1,2 @@
+[non_zero.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.html.ini
new file mode 100644
index 0000000000..1c9c895381
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.html.ini
@@ -0,0 +1,2 @@
+[zero_value.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/precedence.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/precedence.worker.html.ini
new file mode 100644
index 0000000000..73561e2a43
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/precedence.worker.html.ini
@@ -0,0 +1,2 @@
+[precedence.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.html.ini
new file mode 100644
index 0000000000..8b34af4326
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.html.ini
@@ -0,0 +1,2 @@
+[address_of_and_indirection.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..11018b4772
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[af_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.html.ini
new file mode 100644
index 0000000000..b5c6a60a0c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.html.ini
@@ -0,0 +1,2 @@
+[af_assignment.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..af02bf4578
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[ai_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.html.ini
new file mode 100644
index 0000000000..b3a51a6df5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.html.ini
@@ -0,0 +1,2 @@
+[ai_assignment.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.html.ini
new file mode 100644
index 0000000000..3004416e70
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.html.ini
@@ -0,0 +1,2 @@
+[ai_complement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.html.ini
new file mode 100644
index 0000000000..bdb0e30069
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.html.ini
@@ -0,0 +1,2 @@
+[bool_conversion.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.html.ini
new file mode 100644
index 0000000000..f804219dd0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.html.ini
@@ -0,0 +1,2 @@
+[bool_logical.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..5c1bdeb50a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.html.ini
new file mode 100644
index 0000000000..4a678359d0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.html.ini
@@ -0,0 +1,2 @@
+[f16_conversion.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..a49f637bc1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.html.ini
new file mode 100644
index 0000000000..623730333b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.html.ini
@@ -0,0 +1,2 @@
+[f32_conversion.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.html.ini
new file mode 100644
index 0000000000..8085ec5853
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.html.ini
@@ -0,0 +1,2 @@
+[i32_arithmetic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.html.ini
new file mode 100644
index 0000000000..998e492630
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.html.ini
@@ -0,0 +1,2 @@
+[i32_complement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.html.ini
new file mode 100644
index 0000000000..371d40f29c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.html.ini
@@ -0,0 +1,2 @@
+[i32_conversion.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.html.ini
new file mode 100644
index 0000000000..2856479253
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.html.ini
@@ -0,0 +1,2 @@
+[u32_complement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.html.ini
new file mode 100644
index 0000000000..679b9fae22
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.html.ini
@@ -0,0 +1,2 @@
+[u32_conversion.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/float_parse.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/float_parse.worker.html.ini
new file mode 100644
index 0000000000..97daebd338
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/float_parse.worker.html.ini
@@ -0,0 +1,2 @@
+[float_parse.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/call.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/call.worker.html.ini
new file mode 100644
index 0000000000..1f66ddb5e0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/call.worker.html.ini
@@ -0,0 +1,2 @@
+[call.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.html.ini
new file mode 100644
index 0000000000..ea62379a4b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.html.ini
@@ -0,0 +1,2 @@
+[complex.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.html.ini
new file mode 100644
index 0000000000..70c25f917c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.html.ini
@@ -0,0 +1,2 @@
+[eval_order.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/for.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/for.worker.html.ini
new file mode 100644
index 0000000000..c9e2f9120a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/for.worker.html.ini
@@ -0,0 +1,2 @@
+[for.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/if.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/if.worker.html.ini
new file mode 100644
index 0000000000..5a5e58226f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/if.worker.html.ini
@@ -0,0 +1,2 @@
+[if.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.html.ini
new file mode 100644
index 0000000000..f3327ca989
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.html.ini
@@ -0,0 +1,2 @@
+[loop.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.html.ini
new file mode 100644
index 0000000000..e8efdd1b8a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.html.ini
@@ -0,0 +1,2 @@
+[phony.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/return.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/return.worker.html.ini
new file mode 100644
index 0000000000..b9d6c3e10e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/return.worker.html.ini
@@ -0,0 +1,2 @@
+[return.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.html.ini
new file mode 100644
index 0000000000..a8130fb995
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.html.ini
@@ -0,0 +1,2 @@
+[switch.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/while.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/while.worker.html.ini
new file mode 100644
index 0000000000..387f5216c2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/flow_control/while.worker.html.ini
@@ -0,0 +1,2 @@
+[while.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_layout.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_layout.worker.html.ini
new file mode 100644
index 0000000000..be29300009
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_layout.worker.html.ini
@@ -0,0 +1,2 @@
+[memory_layout.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.html.ini
new file mode 100644
index 0000000000..5c4a6579e1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.html.ini
@@ -0,0 +1,2 @@
+[adjacent.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.html.ini
new file mode 100644
index 0000000000..7dc81a094b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.html.ini
@@ -0,0 +1,2 @@
+[atomicity.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.html.ini
new file mode 100644
index 0000000000..2beeca9db5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.html.ini
@@ -0,0 +1,2 @@
+[barrier.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.html.ini
new file mode 100644
index 0000000000..845e2ee3c9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.html.ini
@@ -0,0 +1,2 @@
+[coherence.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.html.ini
new file mode 100644
index 0000000000..b8ac1dc790
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.html.ini
@@ -0,0 +1,2 @@
+[texture_intra_invocation_coherence.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.html.ini
new file mode 100644
index 0000000000..e2bee4a822
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.html.ini
@@ -0,0 +1,2 @@
+[weak.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/padding.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/padding.worker.html.ini
new file mode 100644
index 0000000000..476e7ffb63
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/padding.worker.html.ini
@@ -0,0 +1,2 @@
+[padding.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access.worker.html.ini
new file mode 100644
index 0000000000..696238dd5c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access.worker.html.ini
@@ -0,0 +1,2 @@
+[robust_access.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.html.ini
new file mode 100644
index 0000000000..57e9ed7e7f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.html.ini
@@ -0,0 +1,2 @@
+[robust_access_vertex.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.html.ini
new file mode 100644
index 0000000000..8a3d890472
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.html.ini
@@ -0,0 +1,2 @@
+[compute_builtins.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.html.ini
new file mode 100644
index 0000000000..fd7752c507
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.html.ini
@@ -0,0 +1,2 @@
+[fragment_builtins.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.html.ini
new file mode 100644
index 0000000000..6f40f3f77f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.html.ini
@@ -0,0 +1,2 @@
+[shared_structs.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.html.ini
new file mode 100644
index 0000000000..68b17e29c9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.html.ini
@@ -0,0 +1,2 @@
+[user_io.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.html.ini
new file mode 100644
index 0000000000..f108270f91
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.html.ini
@@ -0,0 +1,2 @@
+[workgroup_size.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shadow.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shadow.worker.html.ini
new file mode 100644
index 0000000000..a7323f8d8a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/shadow.worker.html.ini
@@ -0,0 +1,2 @@
+[shadow.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/stage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/stage.worker.html.ini
new file mode 100644
index 0000000000..9dd2473c98
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/stage.worker.html.ini
@@ -0,0 +1,2 @@
+[stage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/compound.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/compound.worker.html.ini
new file mode 100644
index 0000000000..09e41a9590
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/compound.worker.html.ini
@@ -0,0 +1,2 @@
+[compound.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/discard.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/discard.worker.html.ini
new file mode 100644
index 0000000000..2189285204
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/discard.worker.html.ini
@@ -0,0 +1,2 @@
+[discard.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.html.ini
new file mode 100644
index 0000000000..88b32d0fad
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.html.ini
@@ -0,0 +1,2 @@
+[increment_decrement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/zero_init.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/zero_init.worker.html.ini
new file mode 100644
index 0000000000..2ca7866805
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/execution/zero_init.worker.html.ini
@@ -0,0 +1,2 @@
+[zero_init.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.html.ini
new file mode 100644
index 0000000000..15f012fbbe
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.html.ini
@@ -0,0 +1,2 @@
+[const_assert.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.html.ini
new file mode 100644
index 0000000000..27b1aed45e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.html.ini
@@ -0,0 +1,2 @@
+[compound_statement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/const.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/const.worker.html.ini
new file mode 100644
index 0000000000..a30a4452c4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/const.worker.html.ini
@@ -0,0 +1,2 @@
+[const.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.html.ini
new file mode 100644
index 0000000000..eceb3e9f5c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.html.ini
@@ -0,0 +1,2 @@
+[context_dependent_resolution.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/let.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/let.worker.html.ini
new file mode 100644
index 0000000000..17bf49a4c6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/let.worker.html.ini
@@ -0,0 +1,2 @@
+[let.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/override.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/override.worker.html.ini
new file mode 100644
index 0000000000..5373ffd841
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/override.worker.html.ini
@@ -0,0 +1,2 @@
+[override.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.html.ini
new file mode 100644
index 0000000000..857db53c90
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.html.ini
@@ -0,0 +1,2 @@
+[ptr_spelling.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var.worker.html.ini
new file mode 100644
index 0000000000..69eb7c5456
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var.worker.html.ini
@@ -0,0 +1,2 @@
+[var.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.html.ini
new file mode 100644
index 0000000000..16886445e2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.html.ini
@@ -0,0 +1,2 @@
+[var_access_mode.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.html.ini
new file mode 100644
index 0000000000..9d832e1c67
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.html.ini
@@ -0,0 +1,2 @@
+[vector.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.html.ini
new file mode 100644
index 0000000000..69162db8db
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.html.ini
@@ -0,0 +1,2 @@
+[add_sub_mul.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.html.ini
new file mode 100644
index 0000000000..678467673c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.html.ini
@@ -0,0 +1,2 @@
+[and_or_xor.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.html.ini
new file mode 100644
index 0000000000..9bb5ba9dc2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.html.ini
@@ -0,0 +1,2 @@
+[bitwise_shift.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.html.ini
new file mode 100644
index 0000000000..e1b9c74e6b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.html.ini
@@ -0,0 +1,2 @@
+[comparison.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.html.ini
new file mode 100644
index 0000000000..25fe271406
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.html.ini
@@ -0,0 +1,2 @@
+[div_rem.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.html.ini
new file mode 100644
index 0000000000..bb2879bad1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.html.ini
@@ -0,0 +1,2 @@
+[abs.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.html.ini
new file mode 100644
index 0000000000..ea9215f579
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.html.ini
@@ -0,0 +1,2 @@
+[acos.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.html.ini
new file mode 100644
index 0000000000..dbdc781f25
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.html.ini
@@ -0,0 +1,2 @@
+[acosh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.html.ini
new file mode 100644
index 0000000000..38e1e346bd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.html.ini
@@ -0,0 +1,2 @@
+[all.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.html.ini
new file mode 100644
index 0000000000..d1d6a1e1f6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.html.ini
@@ -0,0 +1,2 @@
+[any.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.html.ini
new file mode 100644
index 0000000000..a29b205429
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.html.ini
@@ -0,0 +1,2 @@
+[arrayLength.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.html.ini
new file mode 100644
index 0000000000..2780c972ab
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.html.ini
@@ -0,0 +1,2 @@
+[asin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.html.ini
new file mode 100644
index 0000000000..23cff6ebd0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.html.ini
@@ -0,0 +1,2 @@
+[asinh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.html.ini
new file mode 100644
index 0000000000..f6612b04a8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.html.ini
@@ -0,0 +1,2 @@
+[atan.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.html.ini
new file mode 100644
index 0000000000..17d42b2661
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.html.ini
@@ -0,0 +1,2 @@
+[atan2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.html.ini
new file mode 100644
index 0000000000..d938a221e7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.html.ini
@@ -0,0 +1,2 @@
+[atanh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.html.ini
new file mode 100644
index 0000000000..473363bfaf
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.html.ini
@@ -0,0 +1,2 @@
+[atomics.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.html.ini
new file mode 100644
index 0000000000..3d853764f8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.html.ini
@@ -0,0 +1,2 @@
+[barriers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.html.ini
new file mode 100644
index 0000000000..05d599e99d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.html.ini
@@ -0,0 +1,2 @@
+[bitcast.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.html.ini
new file mode 100644
index 0000000000..32cb8465bd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.html.ini
@@ -0,0 +1,2 @@
+[ceil.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.html.ini
new file mode 100644
index 0000000000..a0705f460d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.html.ini
new file mode 100644
index 0000000000..0d18d7dcfc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.html.ini
@@ -0,0 +1,2 @@
+[cos.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.html.ini
new file mode 100644
index 0000000000..84bd446d19
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.html.ini
@@ -0,0 +1,2 @@
+[cosh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.html.ini
new file mode 100644
index 0000000000..5716eaa5f6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.html.ini
@@ -0,0 +1,2 @@
+[countLeadingZeros.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.html.ini
new file mode 100644
index 0000000000..c1b3075a4c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.html.ini
@@ -0,0 +1,2 @@
+[countOneBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.html.ini
new file mode 100644
index 0000000000..0167ca70f4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.html.ini
@@ -0,0 +1,2 @@
+[countTrailingZeros.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.html.ini
new file mode 100644
index 0000000000..d11e01a67b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.html.ini
@@ -0,0 +1,2 @@
+[cross.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.html.ini
new file mode 100644
index 0000000000..c5133d7b73
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.html.ini
@@ -0,0 +1,2 @@
+[degrees.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.html.ini
new file mode 100644
index 0000000000..b6b904325f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.html.ini
@@ -0,0 +1,2 @@
+[derivatives.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.html.ini
new file mode 100644
index 0000000000..e8beba9489
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.html.ini
@@ -0,0 +1,2 @@
+[determinant.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.html.ini
new file mode 100644
index 0000000000..10e946b0b3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.html.ini
@@ -0,0 +1,2 @@
+[distance.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.html.ini
new file mode 100644
index 0000000000..e15ab0a819
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.html.ini
@@ -0,0 +1,2 @@
+[dot4I8Packed.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.html.ini
new file mode 100644
index 0000000000..c2cb249d29
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.html.ini
@@ -0,0 +1,2 @@
+[dot4U8Packed.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.html.ini
new file mode 100644
index 0000000000..7a3920bd19
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.html.ini
@@ -0,0 +1,2 @@
+[exp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.html.ini
new file mode 100644
index 0000000000..e27c650dfb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.html.ini
@@ -0,0 +1,2 @@
+[exp2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.html.ini
new file mode 100644
index 0000000000..acedd29d3f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.html.ini
@@ -0,0 +1,2 @@
+[extractBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.html.ini
new file mode 100644
index 0000000000..8ec9c1bf01
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.html.ini
@@ -0,0 +1,2 @@
+[faceForward.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.html.ini
new file mode 100644
index 0000000000..0e9b912e7b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.html.ini
@@ -0,0 +1,2 @@
+[firstLeadingBit.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.html.ini
new file mode 100644
index 0000000000..3cdfb5e073
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.html.ini
@@ -0,0 +1,2 @@
+[firstTrailingBit.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.html.ini
new file mode 100644
index 0000000000..a35295e781
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.html.ini
@@ -0,0 +1,2 @@
+[floor.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.html.ini
new file mode 100644
index 0000000000..62caca0c52
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.html.ini
@@ -0,0 +1,2 @@
+[fract.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.html.ini
new file mode 100644
index 0000000000..1c3dcb8612
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.html.ini
@@ -0,0 +1,2 @@
+[frexp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.html.ini
new file mode 100644
index 0000000000..909a333977
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.html.ini
@@ -0,0 +1,2 @@
+[insertBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.html.ini
new file mode 100644
index 0000000000..dfb5645c84
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.html.ini
@@ -0,0 +1,2 @@
+[inverseSqrt.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.html.ini
new file mode 100644
index 0000000000..3a320f9350
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.html.ini
@@ -0,0 +1,2 @@
+[length.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.html.ini
new file mode 100644
index 0000000000..3075fae8b4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.html.ini
@@ -0,0 +1,2 @@
+[log.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.html.ini
new file mode 100644
index 0000000000..e302169f62
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.html.ini
@@ -0,0 +1,2 @@
+[log2.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.html.ini
new file mode 100644
index 0000000000..0088e26bb2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.html.ini
@@ -0,0 +1,2 @@
+[max.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.html.ini
new file mode 100644
index 0000000000..8160fb52b5
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.html.ini
@@ -0,0 +1,2 @@
+[min.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.html.ini
new file mode 100644
index 0000000000..fa351c49af
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.html.ini
@@ -0,0 +1,2 @@
+[modf.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.html.ini
new file mode 100644
index 0000000000..670058b506
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.html.ini
@@ -0,0 +1,2 @@
+[normalize.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.html.ini
new file mode 100644
index 0000000000..84b4a1c123
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack2x16snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.html.ini
new file mode 100644
index 0000000000..219ffb1327
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack2x16unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.html.ini
new file mode 100644
index 0000000000..4cca1e6129
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4x8snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.html.ini
new file mode 100644
index 0000000000..f4ee25f292
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4x8unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.html.ini
new file mode 100644
index 0000000000..fe641fae90
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xI8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.html.ini
new file mode 100644
index 0000000000..7f1b8c1e8b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xI8Clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.html.ini
new file mode 100644
index 0000000000..a200002fd2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xU8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.html.ini
new file mode 100644
index 0000000000..d80dde6675
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.html.ini
@@ -0,0 +1,2 @@
+[pack4xU8Clamp.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.html.ini
new file mode 100644
index 0000000000..b0b494ff02
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.html.ini
@@ -0,0 +1,2 @@
+[quantizeToF16.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.html.ini
new file mode 100644
index 0000000000..97489e599e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.html.ini
@@ -0,0 +1,2 @@
+[radians.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.html.ini
new file mode 100644
index 0000000000..968e806c30
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.html.ini
@@ -0,0 +1,2 @@
+[reflect.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.html.ini
new file mode 100644
index 0000000000..94b40abf28
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.html.ini
@@ -0,0 +1,2 @@
+[reverseBits.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.html.ini
new file mode 100644
index 0000000000..4283fc1143
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.html.ini
@@ -0,0 +1,2 @@
+[round.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.html.ini
new file mode 100644
index 0000000000..43c4cb8ec1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.html.ini
@@ -0,0 +1,2 @@
+[saturate.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.html.ini
new file mode 100644
index 0000000000..e72b1a6440
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.html.ini
@@ -0,0 +1,2 @@
+[select.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.html.ini
new file mode 100644
index 0000000000..97bcf1495b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.html.ini
@@ -0,0 +1,2 @@
+[sign.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.html.ini
new file mode 100644
index 0000000000..40a92c1bf7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.html.ini
@@ -0,0 +1,2 @@
+[sin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.html.ini
new file mode 100644
index 0000000000..e052bb43a7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.html.ini
@@ -0,0 +1,2 @@
+[sinh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.html.ini
new file mode 100644
index 0000000000..0ad24f9726
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.html.ini
@@ -0,0 +1,2 @@
+[smoothstep.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.html.ini
new file mode 100644
index 0000000000..0b89250d70
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.html.ini
@@ -0,0 +1,2 @@
+[sqrt.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.html.ini
new file mode 100644
index 0000000000..dacda04349
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.html.ini
@@ -0,0 +1,2 @@
+[step.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.html.ini
new file mode 100644
index 0000000000..57bea1ef93
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.html.ini
@@ -0,0 +1,2 @@
+[tan.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.html.ini
new file mode 100644
index 0000000000..47aba07b98
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.html.ini
@@ -0,0 +1,2 @@
+[tanh.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.html.ini
new file mode 100644
index 0000000000..026e10061b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.html.ini
@@ -0,0 +1,2 @@
+[textureGather.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.html.ini
new file mode 100644
index 0000000000..ea576ed4be
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.html.ini
@@ -0,0 +1,2 @@
+[textureGatherCompare.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.html.ini
new file mode 100644
index 0000000000..393037fa4f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.html.ini
@@ -0,0 +1,2 @@
+[textureLoad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.html.ini
new file mode 100644
index 0000000000..496e7be4eb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSample.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.html.ini
new file mode 100644
index 0000000000..ecc48904a9
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleBaseClampToEdge.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.html.ini
new file mode 100644
index 0000000000..7d3ef476b2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleBias.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.html.ini
new file mode 100644
index 0000000000..1c456fb71f
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleCompare.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.html.ini
new file mode 100644
index 0000000000..4d1ff42019
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleCompareLevel.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.html.ini
new file mode 100644
index 0000000000..dc458a84ce
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleGrad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.html.ini
new file mode 100644
index 0000000000..f3e817ee42
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.html.ini
@@ -0,0 +1,2 @@
+[textureSampleLevel.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.html.ini
new file mode 100644
index 0000000000..6c496b0fad
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.html.ini
@@ -0,0 +1,2 @@
+[textureStore.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.html.ini
new file mode 100644
index 0000000000..50bb6f7a88
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.html.ini
@@ -0,0 +1,2 @@
+[trunc.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.html.ini
new file mode 100644
index 0000000000..6b160498a1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16float.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.html.ini
new file mode 100644
index 0000000000..aaf0981002
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.html.ini
new file mode 100644
index 0000000000..703985b765
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack2x16unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.html.ini
new file mode 100644
index 0000000000..2c2fb8daab
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4x8snorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.html.ini
new file mode 100644
index 0000000000..5f63a39d4d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4x8unorm.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.html.ini
new file mode 100644
index 0000000000..2b61b07c4b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4xI8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.html.ini
new file mode 100644
index 0000000000..a0d195b036
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.html.ini
@@ -0,0 +1,2 @@
+[unpack4xU8.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.html.ini
new file mode 100644
index 0000000000..4498bbb06e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.html.ini
@@ -0,0 +1,2 @@
+[workgroupUniformLoad.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.html.ini
new file mode 100644
index 0000000000..bf8bc7171c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.html.ini
@@ -0,0 +1,2 @@
+[overload_resolution.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/precedence.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/precedence.worker.html.ini
new file mode 100644
index 0000000000..73561e2a43
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/precedence.worker.html.ini
@@ -0,0 +1,2 @@
+[precedence.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.html.ini
new file mode 100644
index 0000000000..8b34af4326
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.html.ini
@@ -0,0 +1,2 @@
+[address_of_and_indirection.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.html.ini
new file mode 100644
index 0000000000..794d9b7a9b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.html.ini
@@ -0,0 +1,2 @@
+[arithmetic_negation.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.html.ini
new file mode 100644
index 0000000000..4b1df8cb1d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.html.ini
@@ -0,0 +1,2 @@
+[bitwise_complement.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.html.ini
new file mode 100644
index 0000000000..1049bb611e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.html.ini
@@ -0,0 +1,2 @@
+[logical_negation.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.html.ini
new file mode 100644
index 0000000000..86e283e2ea
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.html.ini
@@ -0,0 +1,2 @@
+[pointer_composite_access.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.html.ini
new file mode 100644
index 0000000000..8eec9af39c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.html.ini
@@ -0,0 +1,2 @@
+[readonly_and_readwrite_storage_textures.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.html.ini
new file mode 100644
index 0000000000..c8747c9194
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.html.ini
@@ -0,0 +1,2 @@
+[alias_analysis.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.html.ini
new file mode 100644
index 0000000000..13468965a4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.html.ini
@@ -0,0 +1,2 @@
+[restrictions.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/align.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/align.worker.html.ini
new file mode 100644
index 0000000000..c60a1db212
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/align.worker.html.ini
@@ -0,0 +1,2 @@
+[align.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/attribute.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/attribute.worker.html.ini
new file mode 100644
index 0000000000..4fc4533c3d
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/attribute.worker.html.ini
@@ -0,0 +1,2 @@
+[attribute.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.html.ini
new file mode 100644
index 0000000000..a1ca0487f1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.html.ini
@@ -0,0 +1,2 @@
+[binary_ops.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.html.ini
new file mode 100644
index 0000000000..ca5d05eb93
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.html.ini
@@ -0,0 +1,2 @@
+[blankspace.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break.worker.html.ini
new file mode 100644
index 0000000000..baa62eebe3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break.worker.html.ini
@@ -0,0 +1,2 @@
+[break.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break_if.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break_if.worker.html.ini
new file mode 100644
index 0000000000..35f7739de1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/break_if.worker.html.ini
@@ -0,0 +1,2 @@
+[break_if.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/builtin.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/builtin.worker.html.ini
new file mode 100644
index 0000000000..de35278cc3
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/builtin.worker.html.ini
@@ -0,0 +1,2 @@
+[builtin.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/comments.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/comments.worker.html.ini
new file mode 100644
index 0000000000..106aa92180
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/comments.worker.html.ini
@@ -0,0 +1,2 @@
+[comments.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/compound.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/compound.worker.html.ini
new file mode 100644
index 0000000000..09e41a9590
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/compound.worker.html.ini
@@ -0,0 +1,2 @@
+[compound.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const.worker.html.ini
new file mode 100644
index 0000000000..a30a4452c4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const.worker.html.ini
@@ -0,0 +1,2 @@
+[const.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.html.ini
new file mode 100644
index 0000000000..15f012fbbe
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.html.ini
@@ -0,0 +1,2 @@
+[const_assert.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/continuing.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/continuing.worker.html.ini
new file mode 100644
index 0000000000..dc36953a6e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/continuing.worker.html.ini
@@ -0,0 +1,2 @@
+[continuing.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.html.ini
new file mode 100644
index 0000000000..fe87baed97
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.html.ini
@@ -0,0 +1,2 @@
+[diagnostic.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/discard.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/discard.worker.html.ini
new file mode 100644
index 0000000000..2189285204
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/discard.worker.html.ini
@@ -0,0 +1,2 @@
+[discard.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/enable.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/enable.worker.html.ini
new file mode 100644
index 0000000000..20f784c449
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/enable.worker.html.ini
@@ -0,0 +1,2 @@
+[enable.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.html.ini
new file mode 100644
index 0000000000..a80ab70766
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.html.ini
@@ -0,0 +1,2 @@
+[identifiers.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/literal.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/literal.worker.html.ini
new file mode 100644
index 0000000000..356c283a41
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/literal.worker.html.ini
@@ -0,0 +1,2 @@
+[literal.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/must_use.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/must_use.worker.html.ini
new file mode 100644
index 0000000000..c4fbbe2030
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/must_use.worker.html.ini
@@ -0,0 +1,2 @@
+[must_use.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.html.ini
new file mode 100644
index 0000000000..839efe02f2
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.html.ini
@@ -0,0 +1,2 @@
+[pipeline_stage.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/requires.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/requires.worker.html.ini
new file mode 100644
index 0000000000..f4811e3965
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/requires.worker.html.ini
@@ -0,0 +1,2 @@
+[requires.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.html.ini
new file mode 100644
index 0000000000..f4ad34030e
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.html.ini
@@ -0,0 +1,2 @@
+[semicolon.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.html.ini
new file mode 100644
index 0000000000..f86a5e1efb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.html.ini
@@ -0,0 +1,2 @@
+[shadow_builtins.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/source.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/source.worker.html.ini
new file mode 100644
index 0000000000..586b1317de
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/source.worker.html.ini
@@ -0,0 +1,2 @@
+[source.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.html.ini
new file mode 100644
index 0000000000..e9b4bb8d38
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.html.ini
@@ -0,0 +1,2 @@
+[statement_behavior.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.html.ini
new file mode 100644
index 0000000000..79560b6f03
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.html.ini
@@ -0,0 +1,2 @@
+[unary_ops.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.html.ini
new file mode 100644
index 0000000000..d43ea55f39
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.html.ini
@@ -0,0 +1,2 @@
+[var_and_let.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.html.ini
new file mode 100644
index 0000000000..330b37e0f0
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.html.ini
@@ -0,0 +1,2 @@
+[binding.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.html.ini
new file mode 100644
index 0000000000..115f2172bc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.html.ini
@@ -0,0 +1,2 @@
+[builtins.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.html.ini
new file mode 100644
index 0000000000..dc9974b840
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.html.ini
@@ -0,0 +1,2 @@
+[entry_point.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group.worker.html.ini
new file mode 100644
index 0000000000..77b36a3e77
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group.worker.html.ini
@@ -0,0 +1,2 @@
+[group.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.html.ini
new file mode 100644
index 0000000000..2c82d8c40c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.html.ini
@@ -0,0 +1,2 @@
+[group_and_binding.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/id.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/id.worker.html.ini
new file mode 100644
index 0000000000..06de1cf7fe
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/id.worker.html.ini
@@ -0,0 +1,2 @@
+[id.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.html.ini
new file mode 100644
index 0000000000..1ddb125134
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.html.ini
@@ -0,0 +1,2 @@
+[interpolate.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.html.ini
new file mode 100644
index 0000000000..769ab0f349
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.html.ini
@@ -0,0 +1,2 @@
+[invariant.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.html.ini
new file mode 100644
index 0000000000..4c7adb25fb
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.html.ini
@@ -0,0 +1,2 @@
+[layout_constraints.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.html.ini
new file mode 100644
index 0000000000..5906617011
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.html.ini
@@ -0,0 +1,2 @@
+[locations.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/size.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/size.worker.html.ini
new file mode 100644
index 0000000000..c2050c7aed
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/size.worker.html.ini
@@ -0,0 +1,2 @@
+[size.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.html.ini
new file mode 100644
index 0000000000..f108270f91
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.html.ini
@@ -0,0 +1,2 @@
+[workgroup_size.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/alias.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/alias.worker.html.ini
new file mode 100644
index 0000000000..fe14790ffd
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/alias.worker.html.ini
@@ -0,0 +1,2 @@
+[alias.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/array.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/array.worker.html.ini
new file mode 100644
index 0000000000..74c669fe66
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/array.worker.html.ini
@@ -0,0 +1,2 @@
+[array.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/atomics.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/atomics.worker.html.ini
new file mode 100644
index 0000000000..473363bfaf
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/atomics.worker.html.ini
@@ -0,0 +1,2 @@
+[atomics.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/matrix.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/matrix.worker.html.ini
new file mode 100644
index 0000000000..15751b75d8
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/matrix.worker.html.ini
@@ -0,0 +1,2 @@
+[matrix.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/struct.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/struct.worker.html.ini
new file mode 100644
index 0000000000..72acf65b31
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/struct.worker.html.ini
@@ -0,0 +1,2 @@
+[struct.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/textures.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/textures.worker.html.ini
new file mode 100644
index 0000000000..6ce7f26395
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/textures.worker.html.ini
@@ -0,0 +1,2 @@
+[textures.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/vector.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/vector.worker.html.ini
new file mode 100644
index 0000000000..9d832e1c67
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/types/vector.worker.html.ini
@@ -0,0 +1,2 @@
+[vector.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.html.ini
new file mode 100644
index 0000000000..4c4ae452ed
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.html.ini
@@ -0,0 +1,2 @@
+[uniformity.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/color_space_conversions.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/color_space_conversions.worker.html.ini
new file mode 100644
index 0000000000..dac71aca7b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/color_space_conversions.worker.html.ini
@@ -0,0 +1,2 @@
+[color_space_conversions.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texel_data.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texel_data.worker.html.ini
new file mode 100644
index 0000000000..b5745347ce
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texel_data.worker.html.ini
@@ -0,0 +1,2 @@
+[texel_data.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texture_ok.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texture_ok.worker.html.ini
new file mode 100644
index 0000000000..c05ac9a3e6
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/util/texture/texture_ok.worker.html.ini
@@ -0,0 +1,2 @@
+[texture_ok.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/configure.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/configure.worker.html.ini
new file mode 100644
index 0000000000..8a41666ee4
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/configure.worker.html.ini
@@ -0,0 +1,2 @@
+[configure.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.html.ini
new file mode 100644
index 0000000000..ce7d2cb6d7
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.html.ini
@@ -0,0 +1,2 @@
+[context_creation.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.html.ini
new file mode 100644
index 0000000000..f3addcab35
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.html.ini
@@ -0,0 +1,2 @@
+[getCurrentTexture.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.html.ini
new file mode 100644
index 0000000000..9a609c96cc
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.html.ini
@@ -0,0 +1,2 @@
+[getPreferredCanvasFormat.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.html.ini
new file mode 100644
index 0000000000..ef2b0f037a
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.html.ini
@@ -0,0 +1,2 @@
+[readbackFromWebGPUCanvas.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.html.ini
new file mode 100644
index 0000000000..3b844c4e1c
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.html.ini
@@ -0,0 +1,2 @@
+[ImageBitmap.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.html.ini
new file mode 100644
index 0000000000..c430d88e49
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.html.ini
@@ -0,0 +1,2 @@
+[ImageData.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.html.ini
new file mode 100644
index 0000000000..4611d0b99b
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.html.ini
@@ -0,0 +1,2 @@
+[canvas.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.html.ini
new file mode 100644
index 0000000000..e0498b87db
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.html.ini
@@ -0,0 +1,2 @@
+[image.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.html.ini
new file mode 100644
index 0000000000..4d025d50d1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.html.ini
@@ -0,0 +1,2 @@
+[video.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/external_texture/video.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/external_texture/video.worker.html.ini
new file mode 100644
index 0000000000..4d025d50d1
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/external_texture/video.worker.html.ini
@@ -0,0 +1,2 @@
+[video.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/worker/worker.worker.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/worker/worker.worker.html.ini
new file mode 100644
index 0000000000..7d5e946f98
--- /dev/null
+++ b/testing/web-platform/mozilla/meta/webgpu/cts/webworker/web_platform/worker/worker.worker.html.ini
@@ -0,0 +1,2 @@
+[worker.worker.html]
+ expected: SKIP
diff --git a/testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.https.html.ini
deleted file mode 100644
index 89c2909a1e..0000000000
--- a/testing/web-platform/mozilla/meta/webgpu/webgpu/idl/exposed.https.html.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[exposed.https.html]
- expected:
- if os == "win": [OK, ERROR]
- if os == "linux" and debug: ERROR
- if os == "linux" and not debug: [OK, ERROR]
- if os == "mac": [OK, ERROR]
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/framework/fixture.js b/testing/web-platform/mozilla/tests/webgpu/common/framework/fixture.js
index d64245f5f8..149226a6e2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/framework/fixture.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/framework/fixture.js
@@ -17,6 +17,7 @@ export { TestCaseRecorder } from '../internal/logging/test_case_recorder.js';
+
export class SubcaseBatchState {
constructor(
recorder,
@@ -124,8 +125,12 @@ export class Fixture {
if (WEBGL_lose_context) WEBGL_lose_context.loseContext();
} else if ('destroy' in o) {
o.destroy();
- } else {
+ } else if ('close' in o) {
o.close();
+ } else {
+ // HTMLVideoElement
+ o.src = '';
+ o.srcObject = null;
}
}
}
@@ -161,6 +166,14 @@ export class Fixture {
this.rec.debug(new Error(msg));
}
+ /**
+ * Log an info message.
+ * **Use sparingly. Use `debug()` instead if logs are only needed with debug logging enabled.**
+ */
+ info(msg) {
+ this.rec.info(new Error(msg));
+ }
+
/** Throws an exception marking the subcase as skipped. */
skip(msg) {
throw new SkipTestCase(msg);
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/framework/test_config.js b/testing/web-platform/mozilla/tests/webgpu/common/framework/test_config.js
index 81984dbec5..5d8a59217f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/framework/test_config.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/framework/test_config.js
@@ -23,10 +23,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
export const globalTestConfig = {
+ enableDebugLogs: false,
maxSubcasesInFlight: 500,
testHeartbeatCallback: () => {},
noRaceWithRejectOnTimeout: false,
unrollConstEvalLoops: false,
- compatibility: false
+ compatibility: false,
+ forceFallbackAdapter: false,
+ logToWebSocket: false
}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/file_loader.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/file_loader.js
index f9f4f17fb4..3956108027 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/file_loader.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/file_loader.js
@@ -73,6 +73,7 @@ export class TestFileLoader extends EventTarget {
query,
{
subqueriesToExpand = [],
+ fullyExpandSubtrees = [],
maxChunkTime = Infinity
} = {})
{
@@ -82,6 +83,7 @@ export class TestFileLoader extends EventTarget {
assert(q.level >= 2, () => `subqueriesToExpand entries should not be multi-file:\n ${q}`);
return q;
}),
+ fullyExpandSubtrees: fullyExpandSubtrees.map((s) => parseQuery(s)),
maxChunkTime
});
this.dispatchEvent(new MessageEvent('finish'));
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/log_message.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/log_message.js
index 234b7c2cc9..53d2cd4b9c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/log_message.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/log_message.js
@@ -1,19 +1,36 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { extractImportantStackTrace } from '../stack.js';
+
+
export class LogMessageWithStack extends Error {
stackHiddenMessage = undefined;
- constructor(name, ex) {
- super(ex.message);
+ /**
+ * Wrap an Error (which was created to capture the stack at that point) into a
+ * LogMessageWithStack (which has extra stuff for good log messages).
+ *
+ * The original `ex.name` is ignored. Inclued it in the `name` parameter if it
+ * needs to be preserved.
+ */
+ static wrapError(name, ex) {
+ return new LogMessageWithStack({
+ name,
+ message: ex.message,
+ stackHiddenMessage: undefined,
+ stack: ex.stack,
+ extra: 'extra' in ex ? ex.extra : undefined
+ });
+ }
- this.name = name;
- this.stack = ex.stack;
- if ('extra' in ex) {
- this.extra = ex.extra;
- }
+ constructor(o) {
+ super(o.message);
+ this.name = o.name;
+ this.stackHiddenMessage = o.stackHiddenMessage;
+ this.stack = o.stack;
+ this.extra = o.extra;
}
/** Set a flag so the stack is not printed in toJSON(). */
@@ -21,6 +38,11 @@ export class LogMessageWithStack extends Error {
this.stackHiddenMessage ??= stackHiddenMessage;
}
+ /**
+ * Print the message for display.
+ *
+ * Note: This is toJSON instead of toString to make it easy to save logs using JSON.stringify.
+ */
toJSON() {
let m = this.name;
if (this.message) m += ': ' + this.message;
@@ -33,6 +55,21 @@ export class LogMessageWithStack extends Error {
}
return m;
}
+
+ /**
+ * Flatten the message for sending over a message channel.
+ *
+ * Note `extra` may get mangled by postMessage.
+ */
+ toRawData() {
+ return {
+ name: this.name,
+ message: this.message,
+ stackHiddenMessage: this.stackHiddenMessage,
+ stack: this.stack,
+ extra: this.extra
+ };
+ }
}
/**
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/logger.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/logger.js
index 224af20ddc..4ec505cb69 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/logger.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/logger.js
@@ -1,13 +1,12 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { version } from '../version.js';
+**/import { globalTestConfig } from '../../framework/test_config.js';import { version } from '../version.js';
+
import { TestCaseRecorder } from './test_case_recorder.js';
export class Logger {
- static globalDebugMode = false;
-
results = new Map();
@@ -19,7 +18,7 @@ export class Logger {
const result = { status: 'running', timems: -1 };
this.results.set(name, result);
return [
- new TestCaseRecorder(result, this.overriddenDebugMode ?? Logger.globalDebugMode),
+ new TestCaseRecorder(result, this.overriddenDebugMode ?? globalTestConfig.enableDebugLogs),
result];
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/result.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/result.js
index a7eb281daf..cd4d0e86f1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/result.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/result.js
@@ -1,4 +1,34 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/ // MAINTENANCE_TODO: Add warn expectations
-export {}; \ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+/**
+ * Raw data for a test log message.
+ *
+ * This form is sendable over a message channel, except `extra` may get mangled.
+ */
+
+
+
+
+
+
+
+
+/**
+ * Test case results in a form sendable over a message channel.
+ *
+ * Note `extra` may get mangled by postMessage.
+ */export {}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/test_case_recorder.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/test_case_recorder.js
index 7b9a5302ce..5b2a4e8b8e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/test_case_recorder.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/logging/test_case_recorder.js
@@ -45,8 +45,6 @@ export class TestCaseRecorder {
logs = [];
logLinesAtCurrentSeverity = 0;
debugging = false;
- /** Used to dedup log messages which have identical stacks. */
- messagesForPreviouslySeenStacks = new Map();
constructor(result, debugging) {
this.result = result;
@@ -143,13 +141,15 @@ export class TestCaseRecorder {
this.skipped(ex);
return;
}
- this.logImpl(LogSeverity.ThrewException, 'EXCEPTION', ex);
+ // logImpl will discard the original error's ex.name. Preserve it here.
+ const name = ex instanceof Error ? `EXCEPTION: ${ex.name}` : 'EXCEPTION';
+ this.logImpl(LogSeverity.ThrewException, name, ex);
}
logImpl(level, name, baseException) {
assert(baseException instanceof Error, 'test threw a non-Error object');
globalTestConfig.testHeartbeatCallback();
- const logMessage = new LogMessageWithStack(name, baseException);
+ const logMessage = LogMessageWithStack.wrapError(name, baseException);
// Final case status should be the "worst" of all log entries.
if (this.inSubCase) {
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/compare.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/compare.js
index 8af64919a2..f2bb1b62f3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/compare.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/compare.js
@@ -58,7 +58,10 @@ function compareOneLevel(ordering, aIsBig, bIsBig) {
return Ordering.Unordered;
}
-function comparePaths(a, b) {
+/**
+ * Compare two file paths, or file-local test paths, returning an Ordering between the two.
+ */
+export function comparePaths(a, b) {
const shorter = Math.min(a.length, b.length);
for (let i = 0; i < shorter; ++i) {
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/parseQuery.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/parseQuery.js
index b66b16ce91..4c8bf32341 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/parseQuery.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/parseQuery.js
@@ -17,12 +17,49 @@ import {
import { kBigSeparator, kWildcard, kPathSeparator, kParamSeparator } from './separators.js';
import { validQueryPart } from './validQueryPart.js';
-export function parseQuery(s) {
+/**
+ * converts foo/bar/src/webgpu/this/that/file.spec.ts to webgpu:this,that,file,*
+ */
+function convertPathToQuery(path) {
+ // removes .spec.ts and splits by directory separators.
+ const parts = path.substring(0, path.length - 8).split(/\/|\\/g);
+ // Gets parts only after the last `src`. Example: returns ['webgpu', 'foo', 'bar', 'test']
+ // for ['Users', 'me', 'src', 'cts', 'src', 'webgpu', 'foo', 'bar', 'test']
+ const partsAfterSrc = parts.slice(parts.lastIndexOf('src') + 1);
+ const suite = partsAfterSrc.shift();
+ return `${suite}:${partsAfterSrc.join(',')},*`;
+}
+
+/**
+ * If a query looks like a path (ends in .spec.ts and has directory separators)
+ * then convert try to convert it to a query.
+ */
+function convertPathLikeToQuery(queryOrPath) {
+ return queryOrPath.endsWith('.spec.ts') && (
+ queryOrPath.includes('/') || queryOrPath.includes('\\')) ?
+ convertPathToQuery(queryOrPath) :
+ queryOrPath;
+}
+
+/**
+ * Convert long suite names (the part before the first colon) to the
+ * shortest last word
+ * foo.bar.moo:test,subtest,foo -> moo:test,subtest,foo
+ */
+function shortenSuiteName(query) {
+ const parts = query.split(':');
+ // converts foo.bar.moo to moo
+ const suite = parts.shift()?.replace(/.*\.(\w+)$/, '$1');
+ return [suite, ...parts].join(':');
+}
+
+export function parseQuery(queryLike) {
try {
- return parseQueryImpl(s);
+ const query = shortenSuiteName(convertPathLikeToQuery(queryLike));
+ return parseQueryImpl(query);
} catch (ex) {
if (ex instanceof Error) {
- ex.message += '\n on: ' + s;
+ ex.message += `\n on: ${queryLike}`;
}
throw ex;
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/query.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/query.js
index e1db875061..8fd443652a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/query/query.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/query/query.js
@@ -1,6 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { optionEnabled } from '../../runtime/helper/options.js';import { assert, unreachable } from '../../util/util.js';
+**/import { optionWorkerMode } from '../../runtime/helper/options.js';import { assert, unreachable } from '../../util/util.js';
import { compareQueries, Ordering } from './compare.js';
@@ -188,12 +188,12 @@ wptURL)
assert(
expectationURL.pathname === wptURL.pathname,
`Invalid expectation path ${expectationURL.pathname}
-Expectation should be of the form path/to/cts.https.html?worker=0&q=suite:test_path:test_name:foo=1;bar=2;...
+Expectation should be of the form path/to/cts.https.html?debug=0&q=suite:test_path:test_name:foo=1;bar=2;...
`
);
const params = expectationURL.searchParams;
- if (optionEnabled('worker', params) !== optionEnabled('worker', wptURL.searchParams)) {
+ if (optionWorkerMode('worker', params) !== optionWorkerMode('worker', wptURL.searchParams)) {
continue;
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/test_group.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/test_group.js
index 3db409ffe7..2772194667 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/test_group.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/test_group.js
@@ -34,7 +34,7 @@ import { validQueryPart } from '../internal/query/validQueryPart.js';
import { assert, unreachable } from '../util/util.js';
-import { logToWebsocket } from './websocket_logger.js';
+import { logToWebSocket } from './websocket_logger.js';
@@ -294,9 +294,11 @@ class TestBuilder {
(this.description ? this.description + '\n\n' : '') + 'TODO: .unimplemented()';
this.isUnimplemented = true;
- this.testFn = () => {
+ // Use the beforeFn to skip the test, so we don't have to iterate the subcases.
+ this.beforeFn = () => {
throw new SkipTestCase('test unimplemented');
};
+ this.testFn = () => {};
}
/** Perform various validation/"lint" chenks. */
@@ -350,7 +352,7 @@ class TestBuilder {
const testcaseStringUnique = stringifyPublicParamsUniquely(params);
assert(
!seen.has(testcaseStringUnique),
- `Duplicate public test case+subcase params for test ${testPathString}: ${testcaseString}`
+ `Duplicate public test case+subcase params for test ${testPathString}: ${testcaseString} (${caseQuery})`
);
seen.add(testcaseStringUnique);
}
@@ -737,7 +739,7 @@ class RunCaseSpecific {
timems: rec.result.timems,
nonskippedSubcaseCount: rec.nonskippedSubcaseCount
};
- logToWebsocket(JSON.stringify(msg));
+ logToWebSocket(JSON.stringify(msg));
}
}
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/test_suite_listing.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/test_suite_listing.js
index 81a15cf712..7ea1c066f5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/test_suite_listing.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/test_suite_listing.js
@@ -2,5 +2,5 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/ // A listing of all specs within a single suite. This is the (awaited) type of
// `groups` in '{cts,unittests}/listing.ts' and `listing` in the auto-generated
-// 'out/{cts,unittests}/listing.js' files (see tools/gen_listings).
+// 'out/{cts,unittests}/listing.js' files (see tools/gen_listings_and_webworkers).
export {}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/tree.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/tree.js
index 8f1e6bad66..3b33542752 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/tree.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/tree.js
@@ -286,6 +286,7 @@ loader,
queryToLoad,
{
subqueriesToExpand,
+ fullyExpandSubtrees = [],
maxChunkTime = Infinity
})
{
@@ -303,6 +304,10 @@ queryToLoad,
// If toExpand == subquery, no expansion is needed (but it's still "seen").
if (ordering === Ordering.Equal) seenSubqueriesToExpand[i] = true;
return ordering !== Ordering.StrictSubset;
+ }) &&
+ fullyExpandSubtrees.every((toExpand) => {
+ const ordering = compareQueries(toExpand, subquery);
+ return ordering === Ordering.Unordered;
});
// L0 = suite-level, e.g. suite:*
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/version.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/version.js
index 7a632d5635..d300878e0e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/version.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/version.js
@@ -1,3 +1,3 @@
// AUTO-GENERATED - DO NOT EDIT. See tools/gen_version.
-export const version = '41f89e77b67e6b66cb017be4e00235a0a9429ca7';
+export const version = '5c8510ec0d47180d1cd4dd92790b5a69335e162c';
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/internal/websocket_logger.js b/testing/web-platform/mozilla/tests/webgpu/common/internal/websocket_logger.js
index 7a8f92b1a8..1790e5632d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/internal/websocket_logger.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/internal/websocket_logger.js
@@ -1,19 +1,24 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/ /**
+**/import { globalTestConfig } from '../framework/test_config.js'; /**
* - 'uninitialized' means we haven't tried to connect yet
* - Promise means it's pending
* - 'failed' means it failed (this is the most common case, where the logger isn't running)
* - WebSocket means it succeeded
- */let connection = 'uninitialized';
+ */
+let connection =
+'uninitialized';
/**
- * Log a string to a websocket at `localhost:59497`. See `tools/websocket-logger`.
+ * If the logToWebSocket option is enabled (?log_to_web_socket=1 in browser,
+ * --log-to-web-socket on command line, or enable it by default in options.ts),
+ * log a string to a websocket at `localhost:59497`. See `tools/websocket-logger`.
*
- * This does nothing if a connection couldn't be established on the first call.
+ * This does nothing if a logToWebSocket is not enabled, or if a connection
+ * couldn't be established on the first call.
*/
-export function logToWebsocket(msg) {
- if (connection === 'failed') {
+export function logToWebSocket(msg) {
+ if (!globalTestConfig.logToWebSocket || connection === 'failed') {
return;
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js
index 139c3bc29f..01b7d95889 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js
@@ -1,11 +1,14 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/let windowURL = undefined;function getWindowURL() {if (windowURL === undefined) {
+**/import { unreachable } from '../../util/util.js';let windowURL = undefined;
+function getWindowURL() {
+ if (windowURL === undefined) {
windowURL = new URL(window.location.toString());
}
return windowURL;
}
+/** Parse a runner option that is always boolean-typed. False if missing or '0'. */
export function optionEnabled(
opt,
searchParams = getWindowURL().searchParams)
@@ -14,11 +17,32 @@ searchParams = getWindowURL().searchParams)
return val !== null && val !== '0';
}
+/** Parse a runner option that is string-typed. If the option is missing, returns `null`. */
export function optionString(
opt,
searchParams = getWindowURL().searchParams)
{
- return searchParams.get(opt) || '';
+ return searchParams.get(opt);
+}
+
+/** Runtime modes for running tests in different types of workers. */
+
+/** Parse a runner option for different worker modes (as in `?worker=shared`). Null if no worker. */
+export function optionWorkerMode(
+opt,
+searchParams = getWindowURL().searchParams)
+{
+ const value = searchParams.get(opt);
+ if (value === null || value === '0') {
+ return null;
+ } else if (value === 'service') {
+ return 'service';
+ } else if (value === 'shared') {
+ return 'shared';
+ } else if (value === '' || value === '1' || value === 'dedicated') {
+ return 'dedicated';
+ }
+ unreachable('invalid worker= option value');
}
/**
@@ -32,12 +56,16 @@ searchParams = getWindowURL().searchParams)
+
+
export const kDefaultCTSOptions = {
- worker: false,
+ worker: null,
debug: true,
compatibility: false,
+ forceFallbackAdapter: false,
unrollConstEvalLoops: false,
- powerPreference: ''
+ powerPreference: null,
+ logToWebSocket: false
};
/**
@@ -59,19 +87,30 @@ export const kDefaultCTSOptions = {
* Options to the CTS.
*/
export const kCTSOptionsInfo = {
- worker: { description: 'run in a worker' },
+ worker: {
+ description: 'run in a worker',
+ parser: optionWorkerMode,
+ selectValueDescriptions: [
+ { value: null, description: 'no worker' },
+ { value: 'dedicated', description: 'dedicated worker' },
+ { value: 'shared', description: 'shared worker' },
+ { value: 'service', description: 'service worker' }]
+
+ },
debug: { description: 'show more info' },
compatibility: { description: 'run in compatibility mode' },
+ forceFallbackAdapter: { description: 'pass forceFallbackAdapter: true to requestAdapter' },
unrollConstEvalLoops: { description: 'unroll const eval loops in WGSL' },
powerPreference: {
description: 'set default powerPreference for some tests',
parser: optionString,
selectValueDescriptions: [
- { value: '', description: 'default' },
+ { value: null, description: 'default' },
{ value: 'low-power', description: 'low-power' },
{ value: 'high-performance', description: 'high-performance' }]
- }
+ },
+ logToWebSocket: { description: 'send some logs to ws://localhost:59497/' }
};
/**
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker-worker.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker-worker.js
index a0f13c54af..c5df860d0b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker-worker.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker-worker.js
@@ -1,15 +1,11 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { setBaseResourcePath } from '../../framework/resources.js';import { globalTestConfig } from '../../framework/test_config.js';import { DefaultTestFileLoader } from '../../internal/file_loader.js';
-import { Logger } from '../../internal/logging/logger.js';
-import { parseQuery } from '../../internal/query/parseQuery.js';
-
-import { setDefaultRequestAdapterOptions } from '../../util/navigator_gpu.js';
+**/import { setBaseResourcePath } from '../../framework/resources.js';import { DefaultTestFileLoader } from '../../internal/file_loader.js';import { parseQuery } from '../../internal/query/parseQuery.js';
import { assert } from '../../util/util.js';
+import { setupWorkerEnvironment } from './utils_worker.js';
-
-// Should be DedicatedWorkerGlobalScope, but importing lib "webworker" conflicts with lib "dom".
+// Should be WorkerGlobalScope, but importing lib "webworker" conflicts with lib "dom".
@@ -17,25 +13,10 @@ const loader = new DefaultTestFileLoader();
setBaseResourcePath('../../../resources');
-self.onmessage = async (ev) => {
- const query = ev.data.query;
- const expectations = ev.data.expectations;
- const ctsOptions = ev.data.ctsOptions;
-
- const { debug, unrollConstEvalLoops, powerPreference, compatibility } = ctsOptions;
- globalTestConfig.unrollConstEvalLoops = unrollConstEvalLoops;
- globalTestConfig.compatibility = compatibility;
-
- Logger.globalDebugMode = debug;
- const log = new Logger();
+async function reportTestResults(ev) {
+ const { query, expectations, ctsOptions } = ev.data;
- if (powerPreference || compatibility) {
- setDefaultRequestAdapterOptions({
- ...(powerPreference && { powerPreference }),
- // MAINTENANCE_TODO: Change this to whatever the option ends up being
- ...(compatibility && { compatibilityMode: true })
- });
- }
+ const log = setupWorkerEnvironment(ctsOptions);
const testcases = Array.from(await loader.loadCases(parseQuery(query)));
assert(testcases.length === 1, 'worker query resulted in != 1 cases');
@@ -44,5 +25,23 @@ self.onmessage = async (ev) => {
const [rec, result] = log.record(testcase.query.toString());
await testcase.run(rec, expectations);
- self.postMessage({ query, result });
+ this.postMessage({
+ query,
+ result: {
+ ...result,
+ logs: result.logs?.map((l) => l.toRawData())
+ }
+ });
+}
+
+self.onmessage = (ev) => {
+ void reportTestResults.call(ev.source || self, ev);
+};
+
+self.onconnect = (event) => {
+ const port = event.ports[0];
+
+ port.onmessage = (ev) => {
+ void reportTestResults.call(port, ev);
+ };
}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker.js
index 1d65394180..4039aa1332 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/test_worker.js
@@ -2,48 +2,190 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { LogMessageWithStack } from '../../internal/logging/log_message.js';
+import { timeout } from '../../util/timeout.js';
+import { assert } from '../../util/util.js';
import { kDefaultCTSOptions } from './options.js';
-export class TestWorker {
+/** Query all currently-registered service workers, and unregister them. */
+function unregisterAllServiceWorkers() {
+ void navigator.serviceWorker.getRegistrations().then((registrations) => {
+ for (const registration of registrations) {
+ void registration.unregister();
+ }
+ });
+}
+
+// NOTE: This code runs on startup for any runtime with worker support. Here, we use that chance to
+// delete any leaked service workers, and register to clean up after ourselves at shutdown.
+unregisterAllServiceWorkers();
+window.addEventListener('beforeunload', () => {
+ unregisterAllServiceWorkers();
+});
+
+class TestBaseWorker {
resolvers = new Map();
- constructor(ctsOptions) {
- this.ctsOptions = { ...(ctsOptions || kDefaultCTSOptions), ...{ worker: true } };
- const selfPath = import.meta.url;
- const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
- const workerPath = selfPathDir + '/test_worker-worker.js';
- this.worker = new Worker(workerPath, { type: 'module' });
- this.worker.onmessage = (ev) => {
- const query = ev.data.query;
- const result = ev.data.result;
- if (result.logs) {
- for (const l of result.logs) {
- Object.setPrototypeOf(l, LogMessageWithStack.prototype);
- }
- }
- this.resolvers.get(query)(result);
+ constructor(worker, ctsOptions) {
+ this.ctsOptions = { ...(ctsOptions || kDefaultCTSOptions), ...{ worker } };
+ }
+
+ onmessage(ev) {
+ const query = ev.data.query;
+ const transferredResult = ev.data.result;
- // MAINTENANCE_TODO(kainino0x): update the Logger with this result (or don't have a logger and
- // update the entire results JSON somehow at some point).
+ const result = {
+ status: transferredResult.status,
+ timems: transferredResult.timems,
+ logs: transferredResult.logs?.map((l) => new LogMessageWithStack(l))
};
+
+ this.resolvers.get(query)(result);
+ this.resolvers.delete(query);
+
+ // MAINTENANCE_TODO(kainino0x): update the Logger with this result (or don't have a logger and
+ // update the entire results JSON somehow at some point).
}
- async run(
- rec,
+ makeRequestAndRecordResult(
+ target,
query,
- expectations = [])
+ expectations)
{
- this.worker.postMessage({
+ const request = {
query,
expectations,
ctsOptions: this.ctsOptions
- });
- const workerResult = await new Promise((resolve) => {
+ };
+ target.postMessage(request);
+
+ return new Promise((resolve) => {
+ assert(!this.resolvers.has(query), "can't request same query twice simultaneously");
this.resolvers.set(query, resolve);
});
- rec.injectResult(workerResult);
+ }
+
+ async run(
+ rec,
+ query,
+ expectations = [])
+ {
+ try {
+ rec.injectResult(await this.runImpl(query, expectations));
+ } catch (ex) {
+ rec.start();
+ rec.threw(ex);
+ rec.finish();
+ }
+ }
+
+
+
+
+
+}
+
+export class TestDedicatedWorker extends TestBaseWorker {
+
+
+ constructor(ctsOptions) {
+ super('dedicated', ctsOptions);
+ try {
+ if (typeof Worker === 'undefined') {
+ throw new Error('Dedicated Workers not available');
+ }
+
+ const selfPath = import.meta.url;
+ const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
+ const workerPath = selfPathDir + '/test_worker-worker.js';
+ this.worker = new Worker(workerPath, { type: 'module' });
+ this.worker.onmessage = (ev) => this.onmessage(ev);
+ } catch (ex) {
+ assert(ex instanceof Error);
+ // Save the exception to re-throw in runImpl().
+ this.worker = ex;
+ }
+ }
+
+ runImpl(query, expectations = []) {
+ if (this.worker instanceof Worker) {
+ return this.makeRequestAndRecordResult(this.worker, query, expectations);
+ } else {
+ throw this.worker;
+ }
+ }
+}
+
+/** @deprecated Use TestDedicatedWorker instead. */
+export class TestWorker extends TestDedicatedWorker {}
+
+export class TestSharedWorker extends TestBaseWorker {
+ /** MessagePort to the SharedWorker, or an Error if it couldn't be initialized. */
+
+
+ constructor(ctsOptions) {
+ super('shared', ctsOptions);
+ try {
+ if (typeof SharedWorker === 'undefined') {
+ throw new Error('Shared Workers not available');
+ }
+
+ const selfPath = import.meta.url;
+ const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
+ const workerPath = selfPathDir + '/test_worker-worker.js';
+ const worker = new SharedWorker(workerPath, { type: 'module' });
+ this.port = worker.port;
+ this.port.start();
+ this.port.onmessage = (ev) => this.onmessage(ev);
+ } catch (ex) {
+ assert(ex instanceof Error);
+ // Save the exception to re-throw in runImpl().
+ this.port = ex;
+ }
+ }
+
+ runImpl(query, expectations = []) {
+ if (this.port instanceof MessagePort) {
+ return this.makeRequestAndRecordResult(this.port, query, expectations);
+ } else {
+ throw this.port;
+ }
+ }
+}
+
+export class TestServiceWorker extends TestBaseWorker {
+ constructor(ctsOptions) {
+ super('service', ctsOptions);
+ }
+
+ async runImpl(query, expectations = []) {
+ if (!('serviceWorker' in navigator)) {
+ throw new Error('Service Workers not available');
+ }
+ const [suite, name] = query.split(':', 2);
+ const fileName = name.split(',').join('/');
+
+ const selfPath = import.meta.url;
+ const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
+ // Construct the path to the worker file, then use URL to resolve the `../` components.
+ const serviceWorkerURL = new URL(
+ `${selfPathDir}/../../../${suite}/webworker/${fileName}.worker.js`
+ ).toString();
+
+ // If a registration already exists for this path, it will be ignored.
+ const registration = await navigator.serviceWorker.register(serviceWorkerURL, {
+ type: 'module'
+ });
+ // Make sure the registration we just requested is active. (We don't worry about it being
+ // outdated from a previous page load, because we wipe all service workers on shutdown/startup.)
+ while (!registration.active || registration.active.scriptURL !== serviceWorkerURL) {
+ await new Promise((resolve) => timeout(resolve, 0));
+ }
+ const serviceWorker = registration.active;
+
+ navigator.serviceWorker.onmessage = (ev) => this.onmessage(ev);
+ return this.makeRequestAndRecordResult(serviceWorker, query, expectations);
}
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/utils_worker.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/utils_worker.js
new file mode 100644
index 0000000000..5a34070e14
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/utils_worker.js
@@ -0,0 +1,35 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { globalTestConfig } from '../../framework/test_config.js';import { Logger } from '../../internal/logging/logger.js';
+import { setDefaultRequestAdapterOptions } from '../../util/navigator_gpu.js';
+
+
+
+
+
+
+
+
+
+/**
+ * Set config environment for workers with ctsOptions and return a Logger.
+ */
+export function setupWorkerEnvironment(ctsOptions) {
+ const { powerPreference, compatibility } = ctsOptions;
+ globalTestConfig.enableDebugLogs = ctsOptions.debug;
+ globalTestConfig.unrollConstEvalLoops = ctsOptions.unrollConstEvalLoops;
+ globalTestConfig.compatibility = compatibility;
+ globalTestConfig.logToWebSocket = ctsOptions.logToWebSocket;
+
+ const log = new Logger();
+
+ if (powerPreference || compatibility) {
+ setDefaultRequestAdapterOptions({
+ ...(powerPreference && { powerPreference }),
+ // MAINTENANCE_TODO: Change this to whatever the option ends up being
+ ...(compatibility && { compatibilityMode: true })
+ });
+ }
+
+ return log;
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/wrap_for_worker.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/wrap_for_worker.js
new file mode 100644
index 0000000000..69b5f375f1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/wrap_for_worker.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { LogMessageWithStack } from '../../internal/logging/log_message.js';import { comparePaths, comparePublicParamsPaths, Ordering } from '../../internal/query/compare.js';
+import { parseQuery } from '../../internal/query/parseQuery.js';
+import { TestQuerySingleCase } from '../../internal/query/query.js';
+
+import { assert } from '../../util/util.js';
+
+import { setupWorkerEnvironment } from './utils_worker.js';
+
+/**
+ * Sets up the currently running Web Worker to wrap the TestGroup object `g`.
+ * `g` is the `g` exported from a `.spec.ts` file: a TestGroupBuilder<F> interface,
+ * which underneath is actually a TestGroup<F> object.
+ *
+ * This is used in the generated `.worker.js` files that are generated to use as service workers.
+ */
+export function wrapTestGroupForWorker(g) {
+ self.onmessage = async (ev) => {
+ const { query, expectations, ctsOptions } = ev.data;
+ try {
+ const log = setupWorkerEnvironment(ctsOptions);
+
+ const testQuery = parseQuery(query);
+ assert(testQuery instanceof TestQuerySingleCase);
+ let testcase = null;
+ for (const t of g.iterate()) {
+ if (comparePaths(t.testPath, testQuery.testPathParts) !== Ordering.Equal) {
+ continue;
+ }
+ for (const c of t.iterate(testQuery.params)) {
+ if (comparePublicParamsPaths(c.id.params, testQuery.params) === Ordering.Equal) {
+ testcase = c;
+ }
+ }
+ }
+ assert(!!testcase, 'testcase not found');
+ const [rec, result] = log.record(query);
+ await testcase.run(rec, testQuery, expectations);
+
+ ev.source?.postMessage({ query, result });
+ } catch (thrown) {
+ const ex = thrown instanceof Error ? thrown : new Error(`${thrown}`);
+ ev.source?.postMessage({
+ query,
+ result: {
+ status: 'fail',
+ timems: 0,
+ logs: [LogMessageWithStack.wrapError('INTERNAL', ex)]
+ }
+ });
+ }
+ };
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/runtime/wpt.js b/testing/web-platform/mozilla/tests/webgpu/common/runtime/wpt.js
index 97c6a3886e..d1a025d1f8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/runtime/wpt.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/runtime/wpt.js
@@ -8,8 +8,8 @@ import { parseQuery } from '../internal/query/parseQuery.js';
import { parseExpectationsForTestQuery, relativeQueryString } from '../internal/query/query.js';
import { assert } from '../util/util.js';
-import { optionEnabled } from './helper/options.js';
-import { TestWorker } from './helper/test_worker.js';
+import { optionEnabled, optionWorkerMode } from './helper/options.js';
+import { TestDedicatedWorker, TestServiceWorker, TestSharedWorker } from './helper/test_worker.js';
// testharness.js API (https://web-platform-tests.org/writing-tests/testharness-api.html)
@@ -31,8 +31,10 @@ setup({
});
void (async () => {
- const workerEnabled = optionEnabled('worker');
- const worker = workerEnabled ? new TestWorker() : undefined;
+ const workerString = optionWorkerMode('worker');
+ const dedicatedWorker = workerString === 'dedicated' ? new TestDedicatedWorker() : undefined;
+ const sharedWorker = workerString === 'shared' ? new TestSharedWorker() : undefined;
+ const serviceWorker = workerString === 'service' ? new TestServiceWorker() : undefined;
globalTestConfig.unrollConstEvalLoops = optionEnabled('unroll_const_eval_loops');
@@ -63,8 +65,12 @@ void (async () => {
const wpt_fn = async () => {
const [rec, res] = log.record(name);
- if (worker) {
- await worker.run(rec, name, expectations);
+ if (dedicatedWorker) {
+ await dedicatedWorker.run(rec, name, expectations);
+ } else if (sharedWorker) {
+ await sharedWorker.run(rec, name, expectations);
+ } else if (serviceWorker) {
+ await serviceWorker.run(rec, name, expectations);
} else {
await testcase.run(rec, expectations);
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/util/crc32.js b/testing/web-platform/mozilla/tests/webgpu/common/util/crc32.js
new file mode 100644
index 0000000000..392d3b947c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/common/util/crc32.js
@@ -0,0 +1,57 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/ /// CRC32 immutable lookup table data.
+const kCRC32LUT = [0, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064,
+0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856,
+0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8,
+0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa,
+0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac,
+0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e,
+0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190,
+0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2,
+0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4,
+0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6,
+0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158,
+0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a,
+0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c,
+0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e,
+0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320,
+0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12,
+0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344,
+0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76,
+0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8,
+0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda,
+0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c,
+0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe,
+0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0,
+0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, 0x95bf4a82,
+0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4,
+0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6,
+0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278,
+0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a,
+0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c,
+0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e,
+0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d];
+
+
+/**
+ * @param str the input string
+ * @returns the CRC32 of the input string
+ * @see https://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRC-32_algorithm
+ */
+export function crc32(str) {
+ const utf8 = new TextEncoder().encode(str);
+ const u32 = new Uint32Array(1);
+
+ u32[0] = 0xffffffff;
+ for (const c of utf8) {
+ u32[0] = u32[0] >>> 8 ^ kCRC32LUT[u32[0] & 0xff ^ c];
+ }
+ u32[0] = u32[0] ^ 0xffffffff;
+ return u32[0];
+}
+
+/** @returns the input number has a 8-character hex string */
+export function toHexString(number) {
+ return ('00000000' + number.toString(16)).slice(-8);
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/util/parse_imports.js b/testing/web-platform/mozilla/tests/webgpu/common/util/parse_imports.js
new file mode 100644
index 0000000000..bc970572b1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/common/util/parse_imports.js
@@ -0,0 +1,36 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/ /**
+ * Parses all the paths of the typescript `import` statements from content
+ * @param path the current path of the file
+ * @param content the file content
+ * @returns the list of import paths
+ */export function parseImports(path, content) {const out = [];
+ const importRE = /^import\s[^'"]*(['"])([./\w]*)(\1);/gm;
+ let importMatch;
+ while (importMatch = importRE.exec(content)) {
+ const importPath = importMatch[2].replace(`'`, '').replace(`"`, '');
+ out.push(joinPath(path, importPath));
+ }
+ return out;
+}
+
+function joinPath(a, b) {
+ const aParts = a.split('/');
+ const bParts = b.split('/');
+ aParts.pop(); // remove file
+ let bStart = 0;
+ while (aParts.length > 0) {
+ switch (bParts[bStart]) {
+ case '.':
+ bStart++;
+ continue;
+ case '..':
+ aParts.pop();
+ bStart++;
+ continue;
+ }
+ break;
+ }
+ return [...aParts, ...bParts.slice(bStart)].join('/');
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/common/util/util.js b/testing/web-platform/mozilla/tests/webgpu/common/util/util.js
index 34934af6c0..d0a3c0a8f7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/common/util/util.js
+++ b/testing/web-platform/mozilla/tests/webgpu/common/util/util.js
@@ -1,7 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { Float16Array } from '../../external/petamoriken/float16/float16.js';import { SkipTestCase } from '../framework/fixture.js';import { globalTestConfig } from '../framework/test_config.js';
-import { Logger } from '../internal/logging/logger.js';
import { keysOf } from './data_tables.js';
import { timeout } from './timeout.js';
@@ -24,7 +23,7 @@ export class ErrorWithExtra extends Error {
super(message);
const oldExtras = baseOrMessage instanceof ErrorWithExtra ? baseOrMessage.extra : {};
- this.extra = Logger.globalDebugMode ?
+ this.extra = globalTestConfig.enableDebugLogs ?
{ ...oldExtras, ...newExtra() } :
{ omitted: 'pass ?debug=1' };
}
@@ -303,7 +302,9 @@ new Int16Array(),
new Int32Array(),
new Float16Array(),
new Float32Array(),
-new Float64Array()];
+new Float64Array(),
+new BigInt64Array(),
+new BigUint64Array()];
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.http.html b/testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.http.html
index 94a814d005..94a814d005 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.http.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.http.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.https.html
index 8d421b7020..8d421b7020 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/exposed.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/idl/exposed.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_clear.https.html
index 3639d3ca82..3639d3ca82 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_clear.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_clear.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html
index c910c97b1d..a0068dbf7a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_bgra8unorm.https.html
@@ -14,6 +14,7 @@
<link rel="help" href="https://gpuweb.github.io/gpuweb/" />
<meta name="assert" content="WebGPU bgra8norm canvas with colorSpace set should be rendered correctly" />
<link rel="match" href="./ref/canvas_colorspace-ref.html" />
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<script type="module">
import { runColorSpaceTest } from './canvas_colorspace.html.js';
runColorSpaceTest('bgra8unorm');
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba16float.https.html
index 7f57858e49..b38fef9591 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba16float.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba16float.https.html
@@ -14,7 +14,7 @@
<link rel="help" href="https://gpuweb.github.io/gpuweb/" />
<meta name="assert" content="WebGPU rgba16float canvas with colorSpace set should be rendered correctly" />
<link rel="match" href="./ref/canvas_colorspace-ref.html" />
- <meta name=fuzzy content="maxDifference=1;totalPixels=8192">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<script type="module">
import { runColorSpaceTest } from './canvas_colorspace.html.js';
runColorSpaceTest('rgba16float');
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html
index e57e04ef5c..404aed360c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_colorspace_rgba8unorm.https.html
@@ -14,6 +14,7 @@
<link rel="help" href="https://gpuweb.github.io/gpuweb/" />
<meta name="assert" content="WebGPU rgba8unorm canvas with colorSpace set should be rendered correctly" />
<link rel="match" href="./ref/canvas_colorspace-ref.html" />
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<script type="module">
import { runColorSpaceTest } from './canvas_colorspace.html.js';
runColorSpaceTest('rgba8unorm');
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html
index d378bdfcf5..d378bdfcf5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html
index 99049e6e32..99049e6e32 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_bgra8unorm_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_copy.https.html
index 400afa121b..400afa121b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_draw.https.html
index a647fc2956..a647fc2956 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_store.https.html
index b812129b0b..b812129b0b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba16float_store.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba16float_store.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html
index d2570a3bdf..d2570a3bdf 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html
index 647a829259..647a829259 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html
index b82745658e..b82745658e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_complex_rgba8unorm_store.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html
index 60e8417c16..60e8417c16 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html
index c0280a2a99..c0280a2a99 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_opaque_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html
index 70920dc0e6..5c3b888fee 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_copy.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html
index d12751fac2..81335296c0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_bgra8unorm_premultiplied_draw.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html
index 4471f08480..4471f08480 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html
index 11f0e73ec2..11f0e73ec2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_opaque_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html
index ed722013c1..28e2553fed 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_copy.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html
index 8a028b168e..ca76fac7cd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba16float_premultiplied_draw.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html
index 7147631d19..7147631d19 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_copy.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html
index ec2bb05ed3..ec2bb05ed3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_opaque_draw.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html
index fa938aba41..7936e0b81c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_copy.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html
index b62e71054c..da48abd2be 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_composite_alpha_rgba8unorm_premultiplied_draw.https.html
@@ -8,7 +8,7 @@
content="WebGPU canvas should have correct orientation, components, scaling, filtering, color space"
/>
<link rel="match" href="./ref/canvas_composite_alpha_premultiplied-ref.html" />
- <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-400">
+ <meta name=fuzzy content="maxDifference=0-2;totalPixels=0-9999999">
<style>
body { background-color: #F0E68C; }
#c-canvas { background-color: #8CF0E6; }
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_image_rendering.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_image_rendering.https.html
new file mode 100644
index 0000000000..6a64b3da5d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/canvas_image_rendering.https.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <title>WebGPU canvas_image_rendering</title>
+ <meta charset="utf-8" />
+ <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
+ <meta name="assert" content="WebGPU canvas with image-rendering set should be rendered correctly" />
+ <link rel="match" href="./ref/canvas_image_rendering-ref.html" />
+ <canvas id="elem1" width="64" height="64" style="width: 128px; height: 128px;"></canvas>
+ <canvas id="elem2" width="64" height="64" style="width: 128px; height: 128px; image-rendering: pixelated;"></canvas>
+ <canvas id="elem3" width="64" height="64" style="width: 128px; height: 128px; image-rendering: crisp-edges"></canvas>
+ <canvas id="elem4" width="64" height="64" style="width: 128px; height: 128px;"></canvas>
+ <canvas id="elem5" width="64" height="64" style="width: 128px; height: 128px; image-rendering: pixelated;"></canvas>
+ <canvas id="elem6" width="64" height="64" style="width: 128px; height: 128px; image-rendering: crisp-edges"></canvas>
+ <script type="module" src="canvas_image_rendering.html.js"></script>
+</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/delay_get_texture.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/delay_get_texture.https.html
new file mode 100644
index 0000000000..054c352ac2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/delay_get_texture.https.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <title>WebGPU delay getCurrentTexture</title>
+ <meta charset="utf-8" />
+ <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
+ <meta name="assert" content="WebGPU delay calling getCurrentTexture should be presented correctly" />
+ <link rel="match" href="./ref/delay_get_texture-ref.html" />
+ <canvas id="cvs0" width="20" height="20" style="width: 20px; height: 20px;"></canvas>
+ <script type="module" src="delay_get_texture.html.js"></script>
+</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_clear-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_clear-ref.html
index e37b78c3a6..e37b78c3a6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_clear-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_clear-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_colorspace-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_colorspace-ref.html
index a6da9f6748..a6da9f6748 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_colorspace-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_colorspace-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_complex-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_complex-ref.html
index b1d46c108a..b1d46c108a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_complex-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_complex-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html
index 94b9486514..94b9486514 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_opaque-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html
index 635625ecc7..635625ecc7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_composite_alpha_premultiplied-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_image_rendering-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_image_rendering-ref.html
new file mode 100644
index 0000000000..56e3453c56
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/canvas_image_rendering-ref.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <title>WebGPU canvas_image_rendering (ref)</title>
+ <meta charset="utf-8" />
+ <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
+ <img id="elem1" width="64" height="64" style="width: 128px; height: 128px;">
+ <img id="elem2" width="64" height="64" style="width: 128px; height: 128px; image-rendering: pixelated;">
+ <img id="elem3" width="64" height="64" style="width: 128px; height: 128px; image-rendering: crisp-edges">
+ <img id="elem4" width="64" height="64" style="width: 128px; height: 128px;">
+ <img id="elem5" width="64" height="64" style="width: 128px; height: 128px; image-rendering: pixelated;">
+ <img id="elem6" width="64" height="64" style="width: 128px; height: 128px; image-rendering: crisp-edges">
+ <script type="module">
+ import { takeScreenshotDelayed } from '../../../../common/util/wpt_reftest_wait.js';
+
+ (async () => {
+ const dataURL = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAKdJREFUeF7t28kJwDAQA0Cp/6I3hJAqNK/kazDr2atJ7u7S9v3Z+76nnz18m7oBboAYIAZMRv//1fMKcAAHkCAJLuYAXoEv8ZMLcAAHcAAHcAAHjBZEOeBSDuAADuAADuAADtjrCqsIqQh98xAkSIIkSIIkSIIkSIKrYzJ6gyRIgiRIgiRIgiRIgiRoZ2hwYcp8gKqwSVF9AXuD9gbtDdobXGWw7nCbB5+MQQlHipKKAAAAAElFTkSuQmCC';
+ await Promise.all([...document.querySelectorAll('img')].map(img => {
+ img.src = dataURL;
+ return img.decode();
+ }));
+
+ takeScreenshotDelayed(50);
+ })();
+ </script>
+</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/delay_get_texture-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/delay_get_texture-ref.html
new file mode 100644
index 0000000000..fcf485dbe1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/delay_get_texture-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+ <title>WebGPU delay getCurrentTexture (ref)</title>
+ <meta charset="utf-8" />
+ <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
+ <canvas id="cvs0" width="20" height="20" style="width: 20px; height: 20px;"></canvas>
+ <script>
+ function draw(canvas) {
+ var c = document.getElementById(canvas);
+ var ctx = c.getContext('2d');
+ ctx.fillStyle = '#00FF00';
+ ctx.fillRect(0, 0, c.width, c.height);
+ }
+
+ draw('cvs0');
+ </script>
+</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/resize_observer-ref.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/resize_observer-ref.html
index 5259a25c27..5259a25c27 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/resize_observer-ref.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/ref/resize_observer-ref.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/resize_observer.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/resize_observer.https.html
index 2845cc29eb..2845cc29eb 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/resize_observer.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/web_platform/reftests/resize_observer.https.html
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html
index edd19233c4..e2551568b7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/adapter/requestDevice/cts.https.html
@@ -38,6 +38,7 @@
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:features,unknown:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:invalid:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:limit,better_than_supported:*'>
+<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:limit,out_of_range:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:limit,worse_than_default:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:limits,supported:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:limits,unknown:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html
new file mode 100644
index 0000000000..1da55c88aa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,operation,memory_sync,texture,readonly_depth_stencil:sampling_while_testing:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/reflection/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/reflection/cts.https.html
index e12ab28926..a9b8bdcf07 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/reflection/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/reflection/cts.https.html
@@ -33,6 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:api,operation,reflection:buffer_creation_from_reflection:*'>
<meta name=variant content='?q=webgpu:api,operation,reflection:buffer_reflection_attributes:*'>
+<meta name=variant content='?q=webgpu:api,operation,reflection:query_set_creation_from_reflection:*'>
<meta name=variant content='?q=webgpu:api,operation,reflection:query_set_reflection_attributes:*'>
+<meta name=variant content='?q=webgpu:api,operation,reflection:texture_creation_from_reflection:*'>
<meta name=variant content='?q=webgpu:api,operation,reflection:texture_reflection_attributes:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html
new file mode 100644
index 0000000000..38ab7ddbe4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/rendering/3d_texture_slices/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,operation,rendering,3d_texture_slices:multiple_color_attachments,same_mip_level:*'>
+<meta name=variant content='?q=webgpu:api,operation,rendering,3d_texture_slices:multiple_color_attachments,same_slice_with_diff_mip_levels:*'>
+<meta name=variant content='?q=webgpu:api,operation,rendering,3d_texture_slices:one_color_attachment,mip_levels:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html
new file mode 100644
index 0000000000..a63eaa6a6c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,operation,storage_texture,read_only:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html
new file mode 100644
index 0000000000..d81bfb3601
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,operation,storage_texture,read_write:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html
index 4d5639e434..f24ef50982 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/features/query_types/cts.https.html
@@ -34,4 +34,4 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:api,validation,capability_checks,features,query_types:createQuerySet:*'>
-<meta name=variant content='?q=webgpu:api,validation,capability_checks,features,query_types:writeTimestamp:*'>
+<meta name=variant content='?q=webgpu:api,validation,capability_checks,features,query_types:timestamp:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html
new file mode 100644
index 0000000000..198c45e4f8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:createRenderPipeline,at_over:*'>
+<meta name=variant content='?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:draw,at_over:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html
index 29d3d1966c..167105affc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html
@@ -46,6 +46,7 @@
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:overrides,workgroup_size,limits:*'>
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:overrides,workgroup_size:*'>
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:pipeline_layout,device_mismatch:*'>
+<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:resource_compatibility:*'>
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:shader_module,compute:*'>
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:shader_module,device_mismatch:*'>
<meta name=variant content='?q=webgpu:api,validation,compute_pipeline:shader_module,invalid:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html
index b92f6fc277..9dcbe50ea5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/createRenderBundleEncoder/cts.https.html
@@ -38,5 +38,4 @@
<meta name=variant content='?q=webgpu:api,validation,encoding,createRenderBundleEncoder:attachment_state,limits,maxColorAttachmentBytesPerSample,unaligned:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,createRenderBundleEncoder:attachment_state,limits,maxColorAttachments:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,createRenderBundleEncoder:depth_stencil_readonly:*'>
-<meta name=variant content='?q=webgpu:api,validation,encoding,createRenderBundleEncoder:depth_stencil_readonly_with_undefined_depth:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,createRenderBundleEncoder:valid_texture_formats:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html
index dd84adeb23..8d43f96f5e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html
@@ -38,6 +38,8 @@
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:bgl_visibility_mismatch:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:bind_groups_and_pipeline_layout_mismatch:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:buffer_binding,render_pipeline:*'>
+<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,compute_pass:*'>
+<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,render_pass:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:empty_bind_group_layouts_requires_empty_bind_groups,compute_pass:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:empty_bind_group_layouts_requires_empty_bind_groups,render_pass:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:sampler_binding,render_pipeline:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html
index 0c4e1a0ebf..65ab7a9bfa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/encoding/queries/general/cts.https.html
@@ -36,6 +36,6 @@
<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:occlusion_query,invalid_query_set:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:occlusion_query,query_index:*'>
<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:occlusion_query,query_type:*'>
-<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:timestamp_query,device_mismatch:*'>
-<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:timestamp_query,invalid_query_set:*'>
-<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:timestamp_query,query_type_and_index:*'>
+<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,device_mismatch:*'>
+<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,invalid_query_set:*'>
+<meta name=variant content='?q=webgpu:api,validation,encoding,queries,general:writeTimestamp,query_type_and_index:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html
new file mode 100644
index 0000000000..d2543b125f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,validation,layout_shader_compat:pipeline_layout_shader_exact_match:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html
index 42db3853c2..34f3f75182 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/queue/destroyed/query_set/cts.https.html
@@ -35,4 +35,4 @@
<meta name=variant content='?q=webgpu:api,validation,queue,destroyed,query_set:beginOcclusionQuery:*'>
<meta name=variant content='?q=webgpu:api,validation,queue,destroyed,query_set:resolveQuerySet:*'>
-<meta name=variant content='?q=webgpu:api,validation,queue,destroyed,query_set:writeTimestamp:*'>
+<meta name=variant content='?q=webgpu:api,validation,queue,destroyed,query_set:timestamps:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html
index 7831601209..8dab846c64 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pass/render_pass_descriptor/cts.https.html
@@ -39,6 +39,10 @@
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,one_color_attachment:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,one_depth_stencil_attachment:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:attachments,same_size:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,bound_check:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,definedness:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,overlaps,diff_miplevel:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,depthSlice,overlaps,same_miplevel:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,empty:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachmentBytesPerSample,aligned:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachmentBytesPerSample,unaligned:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html
index a02e126c27..ae1a5d6251 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html
@@ -41,5 +41,6 @@
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:pipeline_output_targets:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:targets_blend:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_filterable:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_is_color_format:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_renderable:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,fragment_state:targets_write_mask:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html
index df06d2c151..bcbb705113 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html
@@ -34,5 +34,6 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,misc:basic:*'>
+<meta name=variant content='?q=webgpu:api,validation,render_pipeline,misc:external_texture:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,misc:pipeline_layout,device_mismatch:*'>
<meta name=variant content='?q=webgpu:api,validation,render_pipeline,misc:vertex_state_only:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html
new file mode 100644
index 0000000000..b6d17d92af
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html
index b929adfd6e..46434de4fe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html
@@ -34,5 +34,8 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:compute:*'>
+<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:compute_undefined_entry_point_and_extra_stage:*'>
<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:fragment:*'>
+<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:fragment_undefined_entry_point_and_extra_stage:*'>
<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:vertex:*'>
+<meta name=variant content='?q=webgpu:api,validation,shader_module,entry_point:vertex_undefined_entry_point_and_extra_stage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html
index a2c94e7147..9bcfb2e9ad 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/api/validation/texture/bgra8unorm_storage/cts.https.html
@@ -36,6 +36,4 @@
<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:configure_storage_usage_on_canvas_context_with_bgra8unorm_storage:*'>
<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:configure_storage_usage_on_canvas_context_without_bgra8unorm_storage:*'>
<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:create_bind_group_layout:*'>
-<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:create_shader_module_with_bgra8unorm_storage:*'>
-<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:create_shader_module_without_bgra8unorm_storage:*'>
<meta name=variant content='?q=webgpu:api,validation,texture,bgra8unorm_storage:create_texture:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html
new file mode 100644
index 0000000000..598b0f5920
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroup/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:compat,api,validation,createBindGroup:viewDimension_matches_textureBindingViewDimension:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html
new file mode 100644
index 0000000000..49bfd6534d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:compat,api,validation,createBindGroupLayout:unsupportedStorageTextureFormats:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html
new file mode 100644
index 0000000000..3c8447474e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:compat,api,validation,encoding,cmds,copyTextureToTexture:compressed:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,encoding,cmds,copyTextureToTexture:multisample:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html
new file mode 100644
index 0000000000..b381c4342b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/depth_stencil_state/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,depth_stencil_state:depthBiasClamp:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html
index 9349c3b0de..09451ab50c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/render_pipeline/shader_module/cts.https.html
@@ -33,4 +33,8 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,shader_module:interpolate:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,shader_module:sample_index:*'>
<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,shader_module:sample_mask:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,shader_module:unsupportedStorageTextureFormats,computePipeline:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,render_pipeline,shader_module:unsupportedStorageTextureFormats,renderPipeline:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html
index 9151e96f32..2f76c9aeb2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/compat/api/validation/texture/createTexture/cts.https.html
@@ -33,5 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:depthOrArrayLayers_incompatible_with_textureBindingViewDimension:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:format_reinterpretation:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:invalidTextureBindingViewDimension:*'>
+<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:unsupportedStorageTextureFormats:*'>
<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:unsupportedTextureFormats:*'>
<meta name=variant content='?q=webgpu:compat,api,validation,texture,createTexture:unsupportedTextureViewFormats:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/idl/constructable/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/idl/constructable/cts.https.html
new file mode 100644
index 0000000000..4f7d2e4239
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/idl/constructable/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:idl,constructable:gpu_errors:*'>
+<meta name=variant content='?q=webgpu:idl,constructable:pipeline_errors:*'>
+<meta name=variant content='?q=webgpu:idl,constructable:uncaptured_error_event:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/print_environment/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/print_environment/cts.https.html
new file mode 100644
index 0000000000..862b318ec1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/print_environment/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:print_environment:info:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html
new file mode 100644
index 0000000000..9c9ec9e9e4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/array/index/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,array,index:abstract_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,array,index:bool:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,array,index:concrete_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,array,index:runtime_sized:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,array,index:vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html
new file mode 100644
index 0000000000..dc6cb3f1e6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,matrix,index:abstract_float_column:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,matrix,index:abstract_float_element:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_column:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_element:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html
new file mode 100644
index 0000000000..9f521f9162
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/structure/index/cts.https.html
@@ -0,0 +1,43 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:buffer:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:buffer_align:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:buffer_pointer:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:buffer_size:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:const:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:const_nested:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:let:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,structure,index:param:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html
new file mode 100644
index 0000000000..a23046fe8b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,vector,components:abstract_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,vector,components:concrete_scalar:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html
new file mode 100644
index 0000000000..f9b0863078
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,vector,index:abstract_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,access,vector,index:concrete_scalar:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html
new file mode 100644
index 0000000000..94f9d43cc5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,af_matrix_matrix_multiplication:matrix_matrix:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html
new file mode 100644
index 0000000000..a5c3d8381b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,af_matrix_scalar_multiplication:matrix_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,af_matrix_scalar_multiplication:scalar_matrix:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html
new file mode 100644
index 0000000000..453cca2a54
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,af_matrix_vector_multiplication:matrix_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,af_matrix_vector_multiplication:vector_matrix:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html
new file mode 100644
index 0000000000..cde5ee4e50
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_arithmetic/cts.https.html
@@ -0,0 +1,50 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition_scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:addition_vector_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division_scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:division_vector_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication_scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:multiplication_vector_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder_scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:remainder_vector_scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction_scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_arithmetic:subtraction_vector_scalar:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html
new file mode 100644
index 0000000000..dc5b57dfb1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:equals:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:greater_equals:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:greater_than:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:less_equals:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:less_than:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,binary,ai_comparison:not_equals:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html
index d61fbabd81..2e069aa282 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html
@@ -33,6 +33,14 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_f32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_i32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_u32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:af_to_vec2f16:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_f32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_i32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_u32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:ai_to_vec2h:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:f16_to_f16:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_f32:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_i32:*'>
@@ -46,6 +54,8 @@
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_i32:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_u32:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_vec2h:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2af_to_vec4f16:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2ai_to_vec4h:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2f_to_vec4h:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2h_to_f32:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2h_to_i32:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html
index 3cbbe0182d..76bf604f2c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html
@@ -34,6 +34,9 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:f16:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,distance:f16_vec3:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html
index 251705280d..da8ab36bde 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html
@@ -33,13 +33,21 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec4:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f16_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f16_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec4:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:i32:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:u32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec4:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot:u32_vec4:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html
new file mode 100644
index 0000000000..dd49ba7b7d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4I8Packed/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot4I8Packed:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html
new file mode 100644
index 0000000000..85ac604773
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot4U8Packed/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,dot4U8Packed:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html
index 27f58bd167..988ffaa2b7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html
@@ -33,7 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,faceForward:f16_vec4:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html
index 5c94ddf50e..2f4d95dc0e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/frexp/cts.https.html
@@ -33,6 +33,14 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_exp:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_fract:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec2_exp:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec2_fract:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec3_exp:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec3_fract:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec4_exp:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:abstract_float_vec4_fract:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:f16_exp:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:f16_fract:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,frexp:f16_vec2_exp:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html
index 7ae43aaac2..ca7b11717c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html
@@ -34,6 +34,9 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:f16:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec3:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html
index bf162274e1..4a14676345 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html
@@ -33,7 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:f16_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,normalize:f16_vec4:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html
new file mode 100644
index 0000000000..8012022887
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,pack4xI8:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html
new file mode 100644
index 0000000000..a461f16e01
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,pack4xI8Clamp:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html
new file mode 100644
index 0000000000..2ce0ff9c63
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,pack4xU8:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html
new file mode 100644
index 0000000000..5768152f99
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,pack4xU8Clamp:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html
index b35b5c4fff..2b74417ff2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html
@@ -33,7 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec4:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html
index f4ac297425..68d007b3b9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/refract/cts.https.html
@@ -33,7 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec2:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec3:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:abstract_float_vec4:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec2:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec3:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,refract:f16_vec4:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html
deleted file mode 100644
index d71796e773..0000000000
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimension/cts.https.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
-<!--
- This test suite is built from the TypeScript sources at:
- https://github.com/gpuweb/cts
-
- If you are debugging WebGPU conformance tests, it's highly recommended that
- you use the standalone interactive runner in that repository, which
- provides tools for easier debugging and editing (source maps, debug
- logging, warn/skip functionality, etc.)
-
- NOTE:
- The WPT version of this file is generated with *one variant per test spec
- file*. If your harness needs more fine-grained suppressions, you'll need to
- generate your own variants list from your suppression list.
- See `tools/gen_wpt_cts_html` to do this.
-
- When run under browser CI, the original cts.https.html should be skipped, and
- this alternate version should be run instead, under a non-exported WPT test
- directory (e.g. Chromium's wpt_internal).
--->
-
-<!doctype html>
-<title>WebGPU CTS</title>
-<meta charset=utf-8>
-<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
-<link rel=help href='https://gpuweb.github.io/gpuweb/'>
-
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script>
- const loadWebGPUExpectations = undefined;
- const shouldWebGPUCTSFailOnWarnings = undefined;
-</script>
-<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimension:depth:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimension:external:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimension:sampled:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimension:storage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html
new file mode 100644
index 0000000000..c7ff1d0ae0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:depth:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:external:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:sampled_and_multisampled:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureDimensions:storage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html
index aa2a5211b0..9b213028c9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSample/cts.https.html
@@ -39,8 +39,8 @@
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:depth_array_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:depth_array_3d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_1d_coords:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_2d_coords,derivatives:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_3d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_array_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:sampled_array_3d_coords:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSample:stage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html
index 4c044b6bbc..eb0f19da12 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleBias/cts.https.html
@@ -35,7 +35,5 @@
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:arrayed_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:arrayed_3d_coords:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:control_flow:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:sampled_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:sampled_3d_coords:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleBias:stage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html
index 822aa8b251..f13d70170f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureSampleCompare/cts.https.html
@@ -37,5 +37,3 @@
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:3d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:arrayed_2d_coords:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:arrayed_3d_coords:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:control_flow:*'>
-<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,textureSampleCompare:stage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html
new file mode 100644
index 0000000000..55177d2f0b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xI8/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,unpack4xI8:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html
new file mode 100644
index 0000000000..7f37b9edd6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/unpack4xU8/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,unpack4xU8:basic:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html
new file mode 100644
index 0000000000..b3ea2d9b51
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,builtin,workgroupUniformLoad:types:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html
new file mode 100644
index 0000000000..4d4f0e67b9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html
@@ -0,0 +1,44 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:array_length:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:atomic_ptr_to_element:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:mixed_ptr_parameters:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:read_full_object:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_element:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_member:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:write_full_object:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_element:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_member:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html
new file mode 100644
index 0000000000..ceb74f1573
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html
@@ -0,0 +1,51 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_array_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_column_vectors:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_matrix_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_mix:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_splat:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_array_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_column_vectors:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_matrix_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_elements:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_mix:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:concrete_vector_splat:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:matrix_identity:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:scalar_identity:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:structure:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,non_zero:vector_identity:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html
new file mode 100644
index 0000000000..a9c2ddc407
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/constructor/zero_value/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,zero_value:array:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,zero_value:matrix:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,zero_value:scalar:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,zero_value:structure:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,constructor,zero_value:vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html
new file mode 100644
index 0000000000..4364575ab7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,precedence:precedence:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html
new file mode 100644
index 0000000000..2413edab44
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_index:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_member:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html
new file mode 100644
index 0000000000..3d73d77ade
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_arithmetic/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,ai_arithmetic:negation:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html
new file mode 100644
index 0000000000..3aa04b4464
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_assignment/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,ai_assignment:abstract:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,ai_assignment:i32:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,ai_assignment:u32:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html
new file mode 100644
index 0000000000..b75207f089
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/ai_complement/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,ai_complement:complement:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html
index b058c65787..fe72e800fe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/f16_conversion/cts.https.html
@@ -33,6 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_float_mat:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:abstract_int:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:bool:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:f16:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,f16_conversion:f16_mat:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html
index 2928999f71..04c46fc47c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html
@@ -33,6 +33,8 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,i32_conversion:abstract_float:*'>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,i32_conversion:abstract_int:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,i32_conversion:bool:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,i32_conversion:f16:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,i32_conversion:f32:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html
index b9dfd9dbd2..84ca69cead 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html
@@ -33,6 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_float:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_int:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,u32_conversion:bool:*'>
<meta name=variant content='?q=webgpu:shader,execution,expression,unary,u32_conversion:f16:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html
index 17df849095..52e694c692 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/call/cts.https.html
@@ -33,6 +33,10 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:arg_eval:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:arg_eval_logical_and:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:arg_eval_logical_or:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:arg_eval_pointers:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:call_basic:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:call_nested:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,call:call_repeated:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html
index bfe852e353..995595c9af 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/for/cts.https.html
@@ -42,5 +42,7 @@
<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:for_continue:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:for_continuing:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:for_initalizer:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:for_logical_and_condition:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:for_logical_or_condition:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:nested_for_break:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,for:nested_for_continue:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html
index c475971bbc..56378d019e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/loop/cts.https.html
@@ -34,6 +34,8 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:loop_break:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:loop_break_if_logical_and_condition:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:loop_break_if_logical_or_condition:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:loop_continue:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:loop_continuing_basic:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,loop:nested_loops:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html
index 5a985e70bb..e8a3284850 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/switch/cts.https.html
@@ -36,5 +36,6 @@
<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch_default:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch_default_only:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch_inside_loop_with_continue:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch_multiple_case:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,switch:switch_multiple_case_default:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html
index 4f5a053243..b40e54a648 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/flow_control/while/cts.https.html
@@ -36,5 +36,7 @@
<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_basic:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_break:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_continue:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_logical_and_condition:*'>
+<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_logical_or_condition:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_nested_break:*'>
<meta name=variant content='?q=webgpu:shader,execution,flow_control,while:while_nested_continue:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html
new file mode 100644
index 0000000000..7df714822a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,memory_layout:read_layout:*'>
+<meta name=variant content='?q=webgpu:shader,execution,memory_layout:write_layout:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html
new file mode 100644
index 0000000000..72d19aaec6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,memory_model,texture_intra_invocation_coherence:texture_intra_invocation_coherence:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html
new file mode 100644
index 0000000000..0076ff1590
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,front_facing:*'>
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage,centroid:*'>
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage:*'>
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,position:*'>
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_index:*'>
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_mask:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html
new file mode 100644
index 0000000000..64438d8f62
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/user_io/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,user_io:passthrough:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html
new file mode 100644
index 0000000000..b688e6b406
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,shader_io,workgroup_size:workgroup_size:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/stage/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/stage/cts.https.html
new file mode 100644
index 0000000000..4861a57c86
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/stage/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,stage:basic_compute:*'>
+<meta name=variant content='?q=webgpu:shader,execution,stage:basic_render:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html
new file mode 100644
index 0000000000..5f03e7af2f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/compound/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,statement,compound:decl:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html
new file mode 100644
index 0000000000..fa65072216
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/execution/statement/discard/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:all:*'>
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:derivatives:*'>
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:function_call:*'>
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:loop:*'>
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:three_quarters:*'>
+<meta name=variant content='?q=webgpu:shader,execution,statement,discard:uniform_read_loop:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html
new file mode 100644
index 0000000000..d1294eee28
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/compound_statement/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,decl,compound_statement:decl_conflict:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,compound_statement:decl_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html
index d9cca95d49..310e5d09ef 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/const/cts.https.html
@@ -33,7 +33,10 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,decl,const:function_scope:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,const:initializer:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,const:no_direct_recursion:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,const:no_indirect_recursion:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,const:no_indirect_recursion_via_array_size:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,const:no_indirect_recursion_via_struct_attribute:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,const:type:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html
new file mode 100644
index 0000000000..c7ee7c0a84
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/context_dependent_resolution/cts.https.html
@@ -0,0 +1,44 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:attribute_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:builtin_value_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:diagnostic_rule_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:diagnostic_severity_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:enable_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:interpolation_sampling_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:interpolation_type_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:language_names:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,context_dependent_resolution:swizzle_names:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html
new file mode 100644
index 0000000000..1a19bb2aa4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/let/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,decl,let:initializer:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,let:module_scope:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,let:type:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html
index 55c0091184..215ac5ffb7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/override/cts.https.html
@@ -33,5 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,decl,override:function_scope:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,override:id:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,override:initializer:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,override:no_direct_recursion:*'>
<meta name=variant content='?q=webgpu:shader,validation,decl,override:no_indirect_recursion:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,override:type:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html
new file mode 100644
index 0000000000..6fd7b9a33b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html
@@ -0,0 +1,46 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:binding_collision_unused_helper:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:binding_collisions:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:binding_point_on_function_var:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:binding_point_on_non_resources:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:binding_point_on_resources:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:function_addrspace_at_module_scope:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:function_scope_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:handle_initializer:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:initializer_kind:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:module_scope_initializers:*'>
+<meta name=variant content='?q=webgpu:shader,validation,decl,var:module_scope_types:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html
new file mode 100644
index 0000000000..7fc9d1f4fd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,add_sub_mul:invalid_type_with_itself:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,add_sub_mul:scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,add_sub_mul:scalar_vector_out_of_range:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html
new file mode 100644
index 0000000000..f5c62bc67c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,and_or_xor:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,and_or_xor:scalar_vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html
index 1e096d540d..711c00c1d2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html
@@ -33,7 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:scalar_vector:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_left_concrete:*'>
-<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_left_vec_size_mismatch:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_right_concrete:*'>
-<meta name=variant content='?q=webgpu:shader,validation,expression,binary,bitwise_shift:shift_right_vec_size_mismatch:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html
new file mode 100644
index 0000000000..ac72c55fcb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,comparison:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,comparison:scalar_vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html
new file mode 100644
index 0000000000..408c6ad77d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,div_rem:invalid_type_with_itself:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,div_rem:scalar_vector:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,binary,div_rem:scalar_vector_out_of_range:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html
index d772926886..b65232dbbe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/abs/cts.https.html
@@ -33,4 +33,5 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,abs:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,abs:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html
index 13dce9fe12..64af88d6d6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acos/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acos:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acos:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acos:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html
index fe2aa41eec..1c7557ac47 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/acosh/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acosh:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acosh:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,acosh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html
new file mode 100644
index 0000000000..d67b1512d8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/all/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,all:argument_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,all:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,all:must_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html
new file mode 100644
index 0000000000..ad22a63327
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/any/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,any:argument_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,any:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,any:must_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html
new file mode 100644
index 0000000000..e7ba3fe65e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/arrayLength/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,arrayLength:access_mode:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,arrayLength:bool_type:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,arrayLength:type:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html
index 8d5305e83d..5a7492d4f0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asin/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asin:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asin:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asin:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html
index 52d74d75c8..d0cd450236 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/asinh/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asinh:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asinh:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,asinh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html
index 80823df40b..c3525fd2be 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html
index 6f6c70206d..3419d0d1f5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html
@@ -33,6 +33,8 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:integer_argument_x:*'>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:integer_argument_y:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:invalid_argument_x:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:invalid_argument_y:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atan2:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html
index 0e2a65cf5e..a974c8ac6e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atanh/cts.https.html
@@ -34,4 +34,5 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atanh:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atanh:parameters:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atanh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html
index 9b82304aa6..1dacfdda02 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atomics/cts.https.html
@@ -33,4 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atomics:atomic_parameterization:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atomics:data_parameters:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atomics:return_types:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,atomics:stage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html
new file mode 100644
index 0000000000..d43e0fbedb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,barriers:no_return_value:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,barriers:only_in_compute:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html
index 4f6ead08ae..85f6f004e3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cos/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cos:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cos:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cos:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cos:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html
index 97b4aef554..0a42b5d934 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cosh/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cosh:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cosh:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cosh:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cosh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html
new file mode 100644
index 0000000000..75587ee11f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html
new file mode 100644
index 0000000000..a04c240f21
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countOneBits/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countOneBits:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countOneBits:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countOneBits:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countOneBits:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html
new file mode 100644
index 0000000000..21ba7b014d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countTrailingZeros/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,countTrailingZeros:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html
new file mode 100644
index 0000000000..1a8f642254
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/cross/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cross:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cross:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,cross:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html
index cf33579e4e..47193fe30d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/degrees/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,degrees:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,degrees:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,degrees:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,degrees:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html
new file mode 100644
index 0000000000..16e289777a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,derivatives:invalid_argument_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,derivatives:only_in_fragment:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html
new file mode 100644
index 0000000000..e9d74b7f25
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/determinant/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,determinant:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,determinant:matrix_args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,determinant:must_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html
new file mode 100644
index 0000000000..0def485edf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,distance:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,distance:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,distance:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html
new file mode 100644
index 0000000000..c2a1674c7c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4I8Packed/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4I8Packed:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html
new file mode 100644
index 0000000000..682df2bdb9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/dot4U8Packed/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,dot4U8Packed:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html
index 2dccb5e18f..7eb5be91c0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html
index 2ff4ac3d29..a85b174253 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/exp2/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp2:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp2:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp2:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,exp2:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html
new file mode 100644
index 0000000000..31af077e4e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,extractBits:count_offset:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,extractBits:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,extractBits:typed_arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,extractBits:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html
new file mode 100644
index 0000000000..32d5ce9a2b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,faceForward:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,faceForward:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,faceForward:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html
new file mode 100644
index 0000000000..1e7c343541
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html
new file mode 100644
index 0000000000..13bdc058e6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstTrailingBit/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,firstTrailingBit:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html
new file mode 100644
index 0000000000..b60e7fd8ed
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/floor/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,floor:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,floor:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,floor:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,floor:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html
new file mode 100644
index 0000000000..b6f5ca9ea9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,fract:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,fract:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,fract:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html
new file mode 100644
index 0000000000..8e857d24d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/frexp/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,frexp:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,frexp:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,frexp:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html
new file mode 100644
index 0000000000..822e73e047
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,insertBits:count_offset:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,insertBits:mismatched:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,insertBits:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,insertBits:typed_arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,insertBits:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html
index 3b761ea97a..008be75755 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/inverseSqrt/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,inverseSqrt:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html
index 3e60dfb1f1..65494baac8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html
index f4e975a8e4..df16ce5897 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/log2/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log2:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log2:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log2:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,log2:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html
new file mode 100644
index 0000000000..98eaf739ea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/max/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,max:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,max:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,max:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html
new file mode 100644
index 0000000000..adb943fa96
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,min:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,min:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,min:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html
new file mode 100644
index 0000000000..7bd72c4a24
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/normalize/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,normalize:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,normalize:invalid_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,normalize:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,normalize:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html
new file mode 100644
index 0000000000..038626ff4b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16snorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16snorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html
new file mode 100644
index 0000000000..e7892645e7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack2x16unorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack2x16unorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html
new file mode 100644
index 0000000000..4d7e34443d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8snorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8snorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html
new file mode 100644
index 0000000000..f86cdc06cd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4x8unorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4x8unorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html
new file mode 100644
index 0000000000..201e33cefc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html
new file mode 100644
index 0000000000..2ec95a95b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xI8Clamp:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html
new file mode 100644
index 0000000000..36147a70b0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html
new file mode 100644
index 0000000000..39f6c1bae5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,pack4xU8Clamp:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html
new file mode 100644
index 0000000000..084299a10c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/quantizeToF16/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,quantizeToF16:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html
index 99c0f5738b..1db57dca41 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/radians/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,radians:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,radians:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,radians:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,radians:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html
new file mode 100644
index 0000000000..86ad44b02e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reflect/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reflect:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reflect:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reflect:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html
new file mode 100644
index 0000000000..df72bf1488
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/reverseBits/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reverseBits:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reverseBits:float_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reverseBits:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,reverseBits:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html
new file mode 100644
index 0000000000..94b6de1d3e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,select:argument_types_1_and_2:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,select:argument_types_3:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,select:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,select:must_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html
index e7753a1acb..5e6f336e64 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sign/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sign:unsigned_integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sign:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sign:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sign:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html
index 2ca00f36a8..7247aa830d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sin/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sin:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sin:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sin:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sin:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html
index df424272b0..856a97252e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sinh/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sinh:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sinh:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sinh:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sinh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html
new file mode 100644
index 0000000000..d118626d43
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/smoothstep/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,smoothstep:argument_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,smoothstep:arguments:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,smoothstep:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html
index 093fd2e319..974c04d049 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html
@@ -33,5 +33,7 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sqrt:args:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sqrt:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sqrt:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,sqrt:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html
new file mode 100644
index 0000000000..668161c66d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/step/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,step:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,step:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,step:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html
index 3b99a17b78..b7a0164577 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html
@@ -33,5 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tan:integer_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tan:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tan:must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tan:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html
new file mode 100644
index 0000000000..5d3937a8ea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tanh/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tanh:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tanh:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,tanh:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html
new file mode 100644
index 0000000000..46d63aebba
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:component_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:component_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGather:offset_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html
new file mode 100644
index 0000000000..1c8d9e2332
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:depth_ref_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureGatherCompare:offset_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html
new file mode 100644
index 0000000000..db036d198b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:array_index_argument,non_storage:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:array_index_argument,storage:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:coords_argument,non_storage:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:coords_argument,storage:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:level_argument,non_storage:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureLoad:sample_index_argument,non_storage:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html
new file mode 100644
index 0000000000..0af6428923
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSample:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSample:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSample:only_in_fragment:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html
new file mode 100644
index 0000000000..b3652a1d10
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBaseClampToEdge:coords_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html
new file mode 100644
index 0000000000..857a73ffe3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:bias_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:offset_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:only_in_fragment:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html
new file mode 100644
index 0000000000..c3ea09f00e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:depth_ref_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:offset_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompare:only_in_fragment:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html
new file mode 100644
index 0000000000..e06af57b82
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:depth_ref_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleCompareLevel:offset_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html
new file mode 100644
index 0000000000..53589d8916
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html
@@ -0,0 +1,41 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:ddX_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:ddY_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:offset_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html
new file mode 100644
index 0000000000..5d34b6a8a3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html
@@ -0,0 +1,40 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:level_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:offset_argument,non_const:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:offset_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html
new file mode 100644
index 0000000000..1f444ad125
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureStore:array_index_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureStore:coords_argument:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,textureStore:value_argument:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html
new file mode 100644
index 0000000000..e5f4a02689
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/trunc/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,trunc:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,trunc:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,trunc:values:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html
new file mode 100644
index 0000000000..aeff074e09
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16float/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16float:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html
new file mode 100644
index 0000000000..d258511abf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16snorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html
new file mode 100644
index 0000000000..82b72034af
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack2x16unorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html
new file mode 100644
index 0000000000..e2c6412fb6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8snorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html
new file mode 100644
index 0000000000..a6960ebfeb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4x8unorm:return:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html
new file mode 100644
index 0000000000..8cfb8adabb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xI8/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xI8:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html
new file mode 100644
index 0000000000..0e1c1df3a2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/unpack4xU8/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:args:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:must_use:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:supported:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,unpack4xU8:unsupported:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html
new file mode 100644
index 0000000000..007243bfb2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,workgroupUniformLoad:no_atomics:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,call,builtin,workgroupUniformLoad:only_in_compute:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html
new file mode 100644
index 0000000000..8ae70985d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/overload_resolution/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,overload_resolution:implicit_conversions:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,overload_resolution:overload_resolution:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html
new file mode 100644
index 0000000000..591fe3b37e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,precedence:binary_requires_parentheses:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,precedence:mixed_logical_requires_parentheses:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,precedence:other:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html
new file mode 100644
index 0000000000..f8f577b5f1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:basic:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:composite:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:invalid:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html
new file mode 100644
index 0000000000..604e5474c7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,arithmetic_negation:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,arithmetic_negation:scalar_vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html
new file mode 100644
index 0000000000..09bf372a49
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/bitwise_complement/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,bitwise_complement:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,bitwise_complement:scalar_vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html
new file mode 100644
index 0000000000..081207357f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/expression/unary/logical_negation/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,logical_negation:invalid_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,expression,unary,logical_negation:scalar_vector:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html
new file mode 100644
index 0000000000..6d3da49630
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/pointer_composite_access/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,extension,pointer_composite_access:deref:*'>
+<meta name=variant content='?q=webgpu:shader,validation,extension,pointer_composite_access:pointer:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html
new file mode 100644
index 0000000000..af5e14d857
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,extension,readonly_and_readwrite_storage_textures:textureBarrier:*'>
+<meta name=variant content='?q=webgpu:shader,validation,extension,readonly_and_readwrite_storage_textures:var_decl:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html
index c0c2a2b5e2..f00c0f982d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html
@@ -35,7 +35,16 @@
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:aliasing_inside_function:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:member_accessors:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:one_atomic_pointer_one_module_scope:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:one_pointer_one_module_scope:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:same_pointer_read_and_write:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:subcalls:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers_to_array_elements:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers_to_struct_members:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_pointers:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_array_elements:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_array_elements_indirect:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_struct_members:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:two_pointers_to_struct_members_indirect:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,alias_analysis:workgroup_uniform_load:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html
index e4333302d9..14feb7f665 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html
@@ -33,7 +33,9 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_params:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_1_param:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_2_params:*'>
+<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_3_params:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:entry_point_call_target:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:function_parameter_matching:*'>
<meta name=variant content='?q=webgpu:shader,validation,functions,restrictions:function_parameter_types:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html
new file mode 100644
index 0000000000..f494e9daf9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/break_if/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,break_if:non_bool_param:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,break_if:placement:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html
new file mode 100644
index 0000000000..225365d4b8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/compound/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,compound:parse:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html
new file mode 100644
index 0000000000..8f6dec9aaf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/continuing/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,continuing:placement:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html
index 03f434cfe0..67384a6f09 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html
@@ -33,9 +33,11 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:after_other_directives:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:conflicting_attribute_different_location:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:conflicting_attribute_same_location:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:conflicting_directive:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:diagnostic_scoping:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:invalid_locations:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:invalid_severity:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,diagnostic:valid_locations:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html
index 6e413a3b04..71bb89f983 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html
@@ -37,3 +37,4 @@
<meta name=variant content='?q=webgpu:shader,validation,parse,must_use:builtin_no_must_use:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,must_use:call:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,must_use:declaration:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,must_use:ignore_result_of_non_must_use_that_returns_call_of_must_use:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html
index bc77f0bd9d..fda7008993 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/pipeline_stage/cts.https.html
@@ -34,9 +34,9 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:compute_parsing:*'>
-<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_compute_on_function:*'>
-<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_fragment_on_function:*'>
-<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:duplicate_vertex_on_function:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_compute_function:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_fragment_function:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:extra_on_vertex_function:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:fragment_parsing:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:multiple_entry_points:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,pipeline_stage:placement:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html
new file mode 100644
index 0000000000..d389742e39
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/requires/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,requires:requires:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,requires:wgsl_matches_api:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html
index 0d510c72b4..668a907b0c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/semicolon/cts.https.html
@@ -41,6 +41,7 @@
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_continuing:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_default_case:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_default_case_break:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_diagnostic:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_discard:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_enable:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_fn_const_assert:*'>
@@ -59,6 +60,7 @@
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_member:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_module_const_decl:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_module_var_decl:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_requires:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_return:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_struct_decl:*'>
<meta name=variant content='?q=webgpu:shader,validation,parse,semicolon:after_switch:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html
new file mode 100644
index 0000000000..1c2b621084
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/shadow_builtins/cts.https.html
@@ -0,0 +1,44 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:function_param:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_access_mode:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_atomic:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_atomic_type:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_barriers:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_f16:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_handle_type:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,shadow_builtins:shadow_hides_builtin_texture:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html
new file mode 100644
index 0000000000..c72a33e005
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/parse/statement_behavior/cts.https.html
@@ -0,0 +1,39 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,parse,statement_behavior:invalid_functions:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,statement_behavior:invalid_statements:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,statement_behavior:valid_functions:*'>
+<meta name=variant content='?q=webgpu:shader,validation,parse,statement_behavior:valid_statements:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html
index 9dde54b51b..30129a8e01 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/binding/cts.https.html
@@ -35,4 +35,3 @@
<meta name=variant content='?q=webgpu:shader,validation,shader_io,binding:binding:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,binding:binding_f16:*'>
-<meta name=variant content='?q=webgpu:shader,validation,shader_io,binding:binding_without_group:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html
index 19974f2dcf..e373dc4eba 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/group/cts.https.html
@@ -35,4 +35,3 @@
<meta name=variant content='?q=webgpu:shader,validation,shader_io,group:group:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,group:group_f16:*'>
-<meta name=variant content='?q=webgpu:shader,validation,shader_io,group:group_without_binding:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html
new file mode 100644
index 0000000000..397c9356f0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,shader_io,layout_constraints:layout_constraints:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html
index 98ad686ed8..30cff6886e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html
@@ -36,6 +36,7 @@
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:duplicates:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:location_fp16:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:nesting:*'>
+<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:out_of_order:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:stage_inout:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:type:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,locations:validation:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html
index d9bfbede3a..b40b7e0422 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/shader_io/size/cts.https.html
@@ -34,5 +34,6 @@
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,size:size:*'>
+<meta name=variant content='?q=webgpu:shader,validation,shader_io,size:size_creation_fixed_footprint:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,size:size_fp16:*'>
<meta name=variant content='?q=webgpu:shader,validation,shader_io,size:size_non_struct:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html
index 08e7d8d4f7..69d5504ade 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/alias/cts.https.html
@@ -33,6 +33,8 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+<meta name=variant content='?q=webgpu:shader,validation,types,alias:any_type:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,alias:match_non_alias:*'>
<meta name=variant content='?q=webgpu:shader,validation,types,alias:no_direct_recursion:*'>
<meta name=variant content='?q=webgpu:shader,validation,types,alias:no_indirect_recursion:*'>
<meta name=variant content='?q=webgpu:shader,validation,types,alias:no_indirect_recursion_via_array_element:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html
new file mode 100644
index 0000000000..ce3d567d87
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/array/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,types,array:invalid:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,array:valid:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html
new file mode 100644
index 0000000000..320ed79810
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/atomics/cts.https.html
@@ -0,0 +1,38 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,types,atomics:address_space:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,atomics:invalid_operations:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,atomics:type:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html
new file mode 100644
index 0000000000..4e8451fed4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/matrix/cts.https.html
@@ -0,0 +1,37 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,types,matrix:invalid:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,matrix:valid:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html
new file mode 100644
index 0000000000..ed3a7a516c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html
@@ -0,0 +1,42 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:depth_texture_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:external_sampled_texture_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:sampled_texture_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:sampler_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:storage_texture_types:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:texel_formats,as_value:*'>
+<meta name=variant content='?q=webgpu:shader,validation,types,textures:texel_formats:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html
new file mode 100644
index 0000000000..5320960245
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/util/texture/color_space_conversions/cts.https.html
@@ -0,0 +1,36 @@
+<!-- AUTO-GENERATED - DO NOT EDIT. See WebGPU CTS: tools/gen_wpt_cts_html. -->
+<!--
+ This test suite is built from the TypeScript sources at:
+ https://github.com/gpuweb/cts
+
+ If you are debugging WebGPU conformance tests, it's highly recommended that
+ you use the standalone interactive runner in that repository, which
+ provides tools for easier debugging and editing (source maps, debug
+ logging, warn/skip functionality, etc.)
+
+ NOTE:
+ The WPT version of this file is generated with *one variant per test spec
+ file*. If your harness needs more fine-grained suppressions, you'll need to
+ generate your own variants list from your suppression list.
+ See `tools/gen_wpt_cts_html` to do this.
+
+ When run under browser CI, the original cts.https.html should be skipped, and
+ this alternate version should be run instead, under a non-exported WPT test
+ directory (e.g. Chromium's wpt_internal).
+-->
+
+<!doctype html>
+<title>WebGPU CTS</title>
+<meta charset=utf-8>
+<meta name="timeout" content="long"> <!-- TODO: narrow to only where it's needed, see https://bugzilla.mozilla.org/show_bug.cgi?id=1850537 -->
+<link rel=help href='https://gpuweb.github.io/gpuweb/'>
+
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script>
+ const loadWebGPUExpectations = undefined;
+ const shouldWebGPUCTSFailOnWarnings = undefined;
+</script>
+<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
+
+<meta name=variant content='?q=webgpu:util,texture,color_space_conversions:util_matches_2d_canvas:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html
index 94d61c32ae..5bfb8e2f22 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html
@@ -35,5 +35,5 @@
<meta name=variant content='?q=webgpu:web_platform,external_texture,video:importExternalTexture,compute:*'>
<meta name=variant content='?q=webgpu:web_platform,external_texture,video:importExternalTexture,sample:*'>
-<meta name=variant content='?q=webgpu:web_platform,external_texture,video:importExternalTexture,sampleWithRotationMetadata:*'>
<meta name=variant content='?q=webgpu:web_platform,external_texture,video:importExternalTexture,sampleWithVideoFrameWithVisibleRectParam:*'>
+<meta name=variant content='?q=webgpu:web_platform,external_texture,video:importExternalTexture,sample_non_YUV_video_frame:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html
index 08f7bfbacd..ad1e87a1f4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webgpu/web_platform/worker/worker/cts.https.html
@@ -33,4 +33,6 @@
</script>
<script type=module src=/_mozilla/webgpu/common/runtime/wpt.js></script>
-<meta name=variant content='?q=webgpu:web_platform,worker,worker:worker:*'>
+<meta name=variant content='?q=webgpu:web_platform,worker,worker:dedicated_worker:*'>
+<meta name=variant content='?q=webgpu:web_platform,worker,worker:service_worker:*'>
+<meta name=variant content='?q=webgpu:web_platform,worker,worker:shared_worker:*'>
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.js
new file mode 100644
index 0000000000..006b7d926b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapter.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/adapter/requestAdapter.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.js
new file mode 100644
index 0000000000..88753e43e1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestAdapterInfo.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/adapter/requestAdapterInfo.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.js
new file mode 100644
index 0000000000..8e5aa7a329
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/adapter/requestDevice.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/adapter/requestDevice.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map.worker.js
new file mode 100644
index 0000000000..ea5d50dcaa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/buffers/map.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.js
new file mode 100644
index 0000000000..5f9c16e71a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_ArrayBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/buffers/map_ArrayBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.js
new file mode 100644
index 0000000000..60ca0d6b7c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_detach.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/buffers/map_detach.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.js
new file mode 100644
index 0000000000..c5adf88767
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/map_oom.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/buffers/map_oom.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/threading.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/threading.worker.js
new file mode 100644
index 0000000000..d65a38a7be
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/buffers/threading.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/buffers/threading.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.js
new file mode 100644
index 0000000000..56ebb361a1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/basic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/command_buffer/basic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.js
new file mode 100644
index 0000000000..ce7ed9a93d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/clearBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/command_buffer/clearBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.js
new file mode 100644
index 0000000000..4968696863
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyBufferToBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/command_buffer/copyBufferToBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.js
new file mode 100644
index 0000000000..fac5b03ea7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/copyTextureToTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/command_buffer/copyTextureToTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.js
new file mode 100644
index 0000000000..2e39a8358b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/image_copy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/command_buffer/image_copy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.js
new file mode 100644
index 0000000000..8e17f588ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/programmable/state_tracking.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/command_buffer/programmable/state_tracking.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.js
new file mode 100644
index 0000000000..de05375bbf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/queries/occlusionQuery.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/command_buffer/queries/occlusionQuery.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.js
new file mode 100644
index 0000000000..a5e0b76f3e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/dynamic_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/command_buffer/render/dynamic_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.js
new file mode 100644
index 0000000000..df05ffe4d3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/command_buffer/render/state_tracking.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/command_buffer/render/state_tracking.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute/basic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute/basic.worker.js
new file mode 100644
index 0000000000..4129b0f122
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute/basic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/compute/basic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.js
new file mode 100644
index 0000000000..e0359948b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/entry_point_name.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/compute_pipeline/entry_point_name.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.js
new file mode 100644
index 0000000000..8fedbc8f51
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/compute_pipeline/overrides.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/compute_pipeline/overrides.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/device/lost.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/device/lost.worker.js
new file mode 100644
index 0000000000..afb13ff4f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/device/lost.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/device/lost.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/labels.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/labels.worker.js
new file mode 100644
index 0000000000..e0dc7bae36
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/labels.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/operation/labels.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.js
new file mode 100644
index 0000000000..c5aaa8eeb6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/multiple_buffers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/memory_sync/buffer/multiple_buffers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.js
new file mode 100644
index 0000000000..a5db55c892
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/buffer/single_buffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/memory_sync/buffer/single_buffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.js
new file mode 100644
index 0000000000..4a91e7062c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/readonly_depth_stencil.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/memory_sync/texture/readonly_depth_stencil.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.js
new file mode 100644
index 0000000000..f716f5fbd2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/memory_sync/texture/same_subresource.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/operation/memory_sync/texture/same_subresource.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.js
new file mode 100644
index 0000000000..64fe2f204a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/onSubmittedWorkDone.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/operation/onSubmittedWorkDone.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.js
new file mode 100644
index 0000000000..bb32229817
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/pipeline/default_layout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/pipeline/default_layout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.js
new file mode 100644
index 0000000000..e471b6a15c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/queue/writeBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/queue/writeBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/reflection.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/reflection.worker.js
new file mode 100644
index 0000000000..bcc052b651
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/reflection.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/operation/reflection.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.js
new file mode 100644
index 0000000000..aeb572ddc5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/clear_value.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pass/clear_value.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.js
new file mode 100644
index 0000000000..ee1d6ac5b8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/resolve.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pass/resolve.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.js
new file mode 100644
index 0000000000..9fe4944f8e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeOp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pass/storeOp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.js
new file mode 100644
index 0000000000..7b91a30302
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pass/storeop2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pass/storeop2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.js
new file mode 100644
index 0000000000..b3e56a8171
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/culling_tests.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/culling_tests.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.js
new file mode 100644
index 0000000000..4d35070f20
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/overrides.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/overrides.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.js
new file mode 100644
index 0000000000..4752f3e538
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/pipeline_output_targets.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/pipeline_output_targets.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.js
new file mode 100644
index 0000000000..9e3664a3fe
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/primitive_topology.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/primitive_topology.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.js
new file mode 100644
index 0000000000..148f38687f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/sample_mask.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/sample_mask.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.js
new file mode 100644
index 0000000000..03c7feee04
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/render_pipeline/vertex_only_render_pipeline.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/render_pipeline/vertex_only_render_pipeline.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.js
new file mode 100644
index 0000000000..aa13489087
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/3d_texture_slices.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/3d_texture_slices.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/basic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/basic.worker.js
new file mode 100644
index 0000000000..5a68ad5d0f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/basic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/basic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.js
new file mode 100644
index 0000000000..e22643306d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/color_target_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/color_target_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth.worker.js
new file mode 100644
index 0000000000..3887717ca0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/depth.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.js
new file mode 100644
index 0000000000..164c83d8e9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_bias.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/depth_bias.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.js
new file mode 100644
index 0000000000..dbb129adad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/depth_clip_clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/depth_clip_clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/draw.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/draw.worker.js
new file mode 100644
index 0000000000..4b7dcaa34a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/draw.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/draw.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.js
new file mode 100644
index 0000000000..1241861451
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/indirect_draw.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/indirect_draw.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.js
new file mode 100644
index 0000000000..88dcfa7bfb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/robust_access_index.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/robust_access_index.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/stencil.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/stencil.worker.js
new file mode 100644
index 0000000000..386683f880
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/rendering/stencil.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/rendering/stencil.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.js
new file mode 100644
index 0000000000..a17cd337c4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/buffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/resource_init/buffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.js
new file mode 100644
index 0000000000..e425408557
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/resource_init/texture_zero.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/resource_init/texture_zero.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.js
new file mode 100644
index 0000000000..634e853bb9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/anisotropy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/sampling/anisotropy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.js
new file mode 100644
index 0000000000..992f61f32a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/filter_mode.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/sampling/filter_mode.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.js
new file mode 100644
index 0000000000..690ccdc922
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/sampling/lod_clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/sampling/lod_clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.js
new file mode 100644
index 0000000000..56650a37ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/shader_module/compilation_info.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/shader_module/compilation_info.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.js
new file mode 100644
index 0000000000..1e1b3141cd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_only.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/storage_texture/read_only.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.js
new file mode 100644
index 0000000000..68a7804b94
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/storage_texture/read_write.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/storage_texture/read_write.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.js
new file mode 100644
index 0000000000..149586acae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/format_reinterpretation.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/texture_view/format_reinterpretation.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/read.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/read.worker.js
new file mode 100644
index 0000000000..9cae75cc80
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/read.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/texture_view/read.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/write.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/write.worker.js
new file mode 100644
index 0000000000..d5a8fef0b5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/texture_view/write.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/texture_view/write.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/uncapturederror.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/uncapturederror.worker.js
new file mode 100644
index 0000000000..7f58278d95
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/uncapturederror.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/operation/uncapturederror.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.js
new file mode 100644
index 0000000000..409931bddc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/correctness.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/vertex_state/correctness.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.js
new file mode 100644
index 0000000000..131b3eec8a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/operation/vertex_state/index_format.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/operation/vertex_state/index_format.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/create.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/create.worker.js
new file mode 100644
index 0000000000..9956d030db
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/create.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/buffer/create.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/destroy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/destroy.worker.js
new file mode 100644
index 0000000000..0bc23d441a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/destroy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/buffer/destroy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/mapping.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/mapping.worker.js
new file mode 100644
index 0000000000..ced5a04bc2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/mapping.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/buffer/mapping.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/threading.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/threading.worker.js
new file mode 100644
index 0000000000..87a0dcb546
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/buffer/threading.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/buffer/threading.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.js
new file mode 100644
index 0000000000..1b47f1ebe5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/query_types.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/features/query_types.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.js
new file mode 100644
index 0000000000..46be9cf8e6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/features/texture_formats.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/features/texture_formats.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.js
new file mode 100644
index 0000000000..a7ad4947d6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroups.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxBindGroups.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.js
new file mode 100644
index 0000000000..77da34e1b9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.js
new file mode 100644
index 0000000000..34ce60042c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBindingsPerBindGroup.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxBindingsPerBindGroup.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.js
new file mode 100644
index 0000000000..e16e1a828b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxBufferSize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxBufferSize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.js
new file mode 100644
index 0000000000..53202de252
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.js
new file mode 100644
index 0000000000..93f409b9aa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxColorAttachments.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxColorAttachments.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.js
new file mode 100644
index 0000000000..ca774003d6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeInvocationsPerWorkgroup.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.js
new file mode 100644
index 0000000000..cf2dfd7d83
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeWorkgroupSizeX.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.js
new file mode 100644
index 0000000000..fac5b8adb7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeWorkgroupSizeY.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.js
new file mode 100644
index 0000000000..fc6ecee71a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeWorkgroupSizeZ.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.js
new file mode 100644
index 0000000000..c621df8750
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.js
new file mode 100644
index 0000000000..0adb573ac3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.js
new file mode 100644
index 0000000000..348f858ab9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxDynamicStorageBuffersPerPipelineLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.js
new file mode 100644
index 0000000000..2f8f6eac6b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxDynamicUniformBuffersPerPipelineLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.js
new file mode 100644
index 0000000000..5141c00a5c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderComponents.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.js
new file mode 100644
index 0000000000..9eed84a023
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxInterStageShaderVariables.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxInterStageShaderVariables.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.js
new file mode 100644
index 0000000000..4c78628045
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.js
new file mode 100644
index 0000000000..171c51ba3e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxSamplersPerShaderStage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.js
new file mode 100644
index 0000000000..fc013f5a33
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBufferBindingSize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxStorageBufferBindingSize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.js
new file mode 100644
index 0000000000..0534c59931
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.js
new file mode 100644
index 0000000000..7528bfcb76
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.js
new file mode 100644
index 0000000000..d9d4a2695b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureArrayLayers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxTextureArrayLayers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.js
new file mode 100644
index 0000000000..b01d232fb1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension1D.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxTextureDimension1D.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.js
new file mode 100644
index 0000000000..9e0be3b141
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension2D.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxTextureDimension2D.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.js
new file mode 100644
index 0000000000..8b7ab4335e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxTextureDimension3D.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxTextureDimension3D.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.js
new file mode 100644
index 0000000000..4b8569d283
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBufferBindingSize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxUniformBufferBindingSize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.js
new file mode 100644
index 0000000000..a39add9d22
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.js
new file mode 100644
index 0000000000..e5fb866a61
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexAttributes.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxVertexAttributes.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.js
new file mode 100644
index 0000000000..f8d938fcd8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBufferArrayStride.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxVertexBufferArrayStride.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.js
new file mode 100644
index 0000000000..dead0eea96
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/maxVertexBuffers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/maxVertexBuffers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.js
new file mode 100644
index 0000000000..11228efe78
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/minStorageBufferOffsetAlignment.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.js
new file mode 100644
index 0000000000..b484c0f1da
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/capability_checks/limits/minUniformBufferOffsetAlignment.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/compute_pipeline.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/compute_pipeline.worker.js
new file mode 100644
index 0000000000..9ab87dd389
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/compute_pipeline.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/compute_pipeline.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroup.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroup.worker.js
new file mode 100644
index 0000000000..c28e40bba9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroup.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createBindGroup.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.js
new file mode 100644
index 0000000000..d0db0125d7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createBindGroupLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createBindGroupLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.js
new file mode 100644
index 0000000000..7931f8f0a2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createPipelineLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createPipelineLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createSampler.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createSampler.worker.js
new file mode 100644
index 0000000000..980383283b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createSampler.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createSampler.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createTexture.worker.js
new file mode 100644
index 0000000000..bc8d5ca90f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createView.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createView.worker.js
new file mode 100644
index 0000000000..7a6d9fc330
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/createView.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/createView.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/debugMarker.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/debugMarker.worker.js
new file mode 100644
index 0000000000..0fadeb557a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/debugMarker.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/debugMarker.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.js
new file mode 100644
index 0000000000..2e321f4129
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginComputePass.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/beginComputePass.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.js
new file mode 100644
index 0000000000..ed5e0d97b7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/beginRenderPass.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/beginRenderPass.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.js
new file mode 100644
index 0000000000..dcbd091e77
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/clearBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/clearBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.js
new file mode 100644
index 0000000000..02ef60bff8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/compute_pass.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/compute_pass.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.js
new file mode 100644
index 0000000000..6627e80465
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyBufferToBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/copyBufferToBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.js
new file mode 100644
index 0000000000..d0806be0f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/copyTextureToTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/copyTextureToTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.js
new file mode 100644
index 0000000000..e46686daa0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/debug.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/debug.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.js
new file mode 100644
index 0000000000..e0afa5f787
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/index_access.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/index_access.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.js
new file mode 100644
index 0000000000..830d3af791
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/draw.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/draw.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.js
new file mode 100644
index 0000000000..69993c2b18
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/dynamic_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/dynamic_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.js
new file mode 100644
index 0000000000..0fc8c4297e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/indirect_draw.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/indirect_draw.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.js
new file mode 100644
index 0000000000..e89a3d9e0b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setIndexBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/setIndexBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.js
new file mode 100644
index 0000000000..7733659e3e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setPipeline.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/setPipeline.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.js
new file mode 100644
index 0000000000..506c30d2f2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/setVertexBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/setVertexBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.js
new file mode 100644
index 0000000000..0670d30095
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render/state_tracking.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../api/validation/encoding/cmds/render/state_tracking.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.js
new file mode 100644
index 0000000000..1e72576a2b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/render_pass.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/render_pass.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.js
new file mode 100644
index 0000000000..25ac67208d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/cmds/setBindGroup.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/cmds/setBindGroup.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.js
new file mode 100644
index 0000000000..67f3071613
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/createRenderBundleEncoder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/createRenderBundleEncoder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.js
new file mode 100644
index 0000000000..15124bde33
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_open_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/encoder_open_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.js
new file mode 100644
index 0000000000..f3a8102fd4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/encoder_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/encoder_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js
new file mode 100644
index 0000000000..3d5af06ba0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.js
new file mode 100644
index 0000000000..b723940977
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/begin_end.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/queries/begin_end.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.js
new file mode 100644
index 0000000000..1a4a48d56f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/general.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/queries/general.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.js
new file mode 100644
index 0000000000..ef133a2e65
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/queries/resolveQuerySet.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/encoding/queries/resolveQuerySet.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.js
new file mode 100644
index 0000000000..b711a626b7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/encoding/render_bundle.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/encoding/render_bundle.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/error_scope.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/error_scope.worker.js
new file mode 100644
index 0000000000..4134bbb2d2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/error_scope.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/error_scope.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.js
new file mode 100644
index 0000000000..008f952ac3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/getBindGroupLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/getBindGroupLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.js
new file mode 100644
index 0000000000..cc27a53cb3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/gpu_external_texture_expiration.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/gpu_external_texture_expiration.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.js
new file mode 100644
index 0000000000..2dd3ff15aa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_related.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/image_copy/buffer_related.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.js
new file mode 100644
index 0000000000..4198982692
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/buffer_texture_copies.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/image_copy/buffer_texture_copies.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.js
new file mode 100644
index 0000000000..8247514810
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/layout_related.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/image_copy/layout_related.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.js
new file mode 100644
index 0000000000..750edbb59e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/image_copy/texture_related.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/image_copy/texture_related.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.js
new file mode 100644
index 0000000000..c62cff190f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/layout_shader_compat.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../api/validation/layout_shader_compat.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/create.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/create.worker.js
new file mode 100644
index 0000000000..6b25b2e59a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/create.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/query_set/create.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/destroy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/destroy.worker.js
new file mode 100644
index 0000000000..18c5be2780
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/query_set/destroy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/query_set/destroy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.js
new file mode 100644
index 0000000000..2ef88aaba4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/buffer_mapped.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/queue/buffer_mapped.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.js
new file mode 100644
index 0000000000..dbeb649837
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/copyToTexture/CopyExternalImageToTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.js
new file mode 100644
index 0000000000..b6ace0141b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/buffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/queue/destroyed/buffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.js
new file mode 100644
index 0000000000..7d0ad59976
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/query_set.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/queue/destroyed/query_set.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.js
new file mode 100644
index 0000000000..3a55f8ac8b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/destroyed/texture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/queue/destroyed/texture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/submit.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/submit.worker.js
new file mode 100644
index 0000000000..dadadd8cca
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/submit.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/queue/submit.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.js
new file mode 100644
index 0000000000..3b08d8f6f8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/queue/writeBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.js
new file mode 100644
index 0000000000..3c4aa50c90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/queue/writeTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/queue/writeTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.js
new file mode 100644
index 0000000000..1e401477f9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/attachment_compatibility.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pass/attachment_compatibility.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.js
new file mode 100644
index 0000000000..5b0ff9dac3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/render_pass_descriptor.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pass/render_pass_descriptor.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.js
new file mode 100644
index 0000000000..03c82fe256
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pass/resolve.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pass/resolve.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.js
new file mode 100644
index 0000000000..6ac988850f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/depth_stencil_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/depth_stencil_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.js
new file mode 100644
index 0000000000..c72d44ea90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/fragment_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/fragment_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.js
new file mode 100644
index 0000000000..1a15d1262c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/inter_stage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/inter_stage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.js
new file mode 100644
index 0000000000..8e4b205225
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/misc.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/misc.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.js
new file mode 100644
index 0000000000..58e9dafa35
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/multisample_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/multisample_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.js
new file mode 100644
index 0000000000..0390971fa3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/overrides.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/overrides.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.js
new file mode 100644
index 0000000000..0989905dd1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/primitive_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/primitive_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.js
new file mode 100644
index 0000000000..34a92baee9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/resource_compatibility.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/resource_compatibility.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.js
new file mode 100644
index 0000000000..2a183cac86
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/shader_module.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/shader_module.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.js
new file mode 100644
index 0000000000..a9107e3782
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/render_pipeline/vertex_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/render_pipeline/vertex_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.js
new file mode 100644
index 0000000000..210d2a2db1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_encoder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/resource_usages/buffer/in_pass_encoder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.js
new file mode 100644
index 0000000000..4f6eaca9c4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/buffer/in_pass_misc.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/resource_usages/buffer/in_pass_misc.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.js
new file mode 100644
index 0000000000..77dabff1d4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_pass_encoder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/resource_usages/texture/in_pass_encoder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.js
new file mode 100644
index 0000000000..12158a6fd1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_common.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/resource_usages/texture/in_render_common.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.js
new file mode 100644
index 0000000000..113a040aed
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/resource_usages/texture/in_render_misc.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/resource_usages/texture/in_render_misc.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.js
new file mode 100644
index 0000000000..6f395fba80
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/entry_point.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/shader_module/entry_point.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.js
new file mode 100644
index 0000000000..e3144b7fc4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/shader_module/overrides.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/shader_module/overrides.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.js
new file mode 100644
index 0000000000..7aca230019
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/state/device_lost/destroy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../api/validation/state/device_lost/destroy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.js
new file mode 100644
index 0000000000..e77ed783ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/bgra8unorm_storage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/texture/bgra8unorm_storage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/destroy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/destroy.worker.js
new file mode 100644
index 0000000000..92b96ec9ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/destroy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/texture/destroy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.js
new file mode 100644
index 0000000000..09ea5238bb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/float32_filterable.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/texture/float32_filterable.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.js
new file mode 100644
index 0000000000..795241e1d8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/api/validation/texture/rg11b10ufloat_renderable.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../api/validation/texture/rg11b10ufloat_renderable.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.js
new file mode 100644
index 0000000000..2d81691f8f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroup.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../compat/api/validation/createBindGroup.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.js
new file mode 100644
index 0000000000..3305962eb8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/createBindGroupLayout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../compat/api/validation/createBindGroupLayout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.js
new file mode 100644
index 0000000000..ad24236d47
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToBuffer.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.js
new file mode 100644
index 0000000000..f8e1928824
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/cmds/copyTextureToTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../compat/api/validation/encoding/cmds/copyTextureToTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js
new file mode 100644
index 0000000000..af10ab581c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/encoding/programmable/pipeline_bind_group_compat.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../compat/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.js
new file mode 100644
index 0000000000..d24b5fa745
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/depth_stencil_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/render_pipeline/depth_stencil_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.js
new file mode 100644
index 0000000000..98196d03d1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/fragment_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/render_pipeline/fragment_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.js
new file mode 100644
index 0000000000..802dbe6232
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/shader_module.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/render_pipeline/shader_module.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.js
new file mode 100644
index 0000000000..20e8dd4ce7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/render_pipeline/vertex_state.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/render_pipeline/vertex_state.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.js
new file mode 100644
index 0000000000..d0fb1f6d70
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/createTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/texture/createTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.js
new file mode 100644
index 0000000000..53286a2488
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/compat/api/validation/texture/cubeArray.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../compat/api/validation/texture/cubeArray.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/examples.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/examples.worker.js
new file mode 100644
index 0000000000..ecd9374c22
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/examples.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../examples.spec.js';
+import { wrapTestGroupForWorker } from '../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constants/flags.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constants/flags.worker.js
new file mode 100644
index 0000000000..f54be7798f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constants/flags.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../idl/constants/flags.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constructable.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constructable.worker.js
new file mode 100644
index 0000000000..fe624207cb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/idl/constructable.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../idl/constructable.spec.js';
+import { wrapTestGroupForWorker } from '../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/print_environment.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/print_environment.worker.js
new file mode 100644
index 0000000000..71ab073cc1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/print_environment.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../print_environment.spec.js';
+import { wrapTestGroupForWorker } from '../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.js
new file mode 100644
index 0000000000..9cc97b7c4e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/array/index.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/access/array/index.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.js
new file mode 100644
index 0000000000..9538240899
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/matrix/index.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/access/matrix/index.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.js
new file mode 100644
index 0000000000..9aa32ce479
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/structure/index.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/access/structure/index.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.js
new file mode 100644
index 0000000000..076c7fed90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/components.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/access/vector/components.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.js
new file mode 100644
index 0000000000..3781e618ff
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/access/vector/index.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/access/vector/index.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.js
new file mode 100644
index 0000000000..3f25d7f105
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.js
new file mode 100644
index 0000000000..7cf5dd3314
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.js
new file mode 100644
index 0000000000..17a9993f95
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_division.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_division.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.js
new file mode 100644
index 0000000000..2bc11305ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_matrix_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.js
new file mode 100644
index 0000000000..c22a0382f9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_matrix_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_matrix_matrix_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.js
new file mode 100644
index 0000000000..b5b23f073c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_scalar_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_matrix_scalar_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.js
new file mode 100644
index 0000000000..926d93f629
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_matrix_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.js
new file mode 100644
index 0000000000..8e2de76fda
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_matrix_vector_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_matrix_vector_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.js
new file mode 100644
index 0000000000..2a313bcbe7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.js
new file mode 100644
index 0000000000..79ff0a10a7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_remainder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_remainder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.js
new file mode 100644
index 0000000000..59de223470
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/af_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/af_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.js
new file mode 100644
index 0000000000..35c5bad2bb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/ai_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.js
new file mode 100644
index 0000000000..bf119f5a82
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/ai_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/ai_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.js
new file mode 100644
index 0000000000..1b78a11416
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/bitwise.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.js
new file mode 100644
index 0000000000..50df7799cc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bitwise_shift.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/bitwise_shift.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.js
new file mode 100644
index 0000000000..c97a65500a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/bool_logical.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/bool_logical.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.js
new file mode 100644
index 0000000000..b4d1ba4e9a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.js
new file mode 100644
index 0000000000..343e81cd66
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.js
new file mode 100644
index 0000000000..df89b1d70f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_division.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_division.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.js
new file mode 100644
index 0000000000..3d37d6b028
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_matrix_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.js
new file mode 100644
index 0000000000..f66a6197dc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_matrix_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.js
new file mode 100644
index 0000000000..560e1f8d73
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_scalar_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.js
new file mode 100644
index 0000000000..f8b9a5c9fb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_matrix_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.js
new file mode 100644
index 0000000000..d15ae4e874
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_matrix_vector_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.js
new file mode 100644
index 0000000000..07a20c242c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.js
new file mode 100644
index 0000000000..2062f2f6c2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_remainder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_remainder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.js
new file mode 100644
index 0000000000..0812e2596a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f16_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f16_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.js
new file mode 100644
index 0000000000..6a4e856781
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.js
new file mode 100644
index 0000000000..24be70b2b1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.js
new file mode 100644
index 0000000000..c4c529c8f4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_division.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_division.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.js
new file mode 100644
index 0000000000..f1782f5375
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_addition.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_matrix_addition.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.js
new file mode 100644
index 0000000000..039780dcae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_matrix_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.js
new file mode 100644
index 0000000000..4438ac0342
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_scalar_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.js
new file mode 100644
index 0000000000..02f57adfac
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_matrix_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.js
new file mode 100644
index 0000000000..ddb363aaa4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_matrix_vector_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.js
new file mode 100644
index 0000000000..7fec7f76d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_multiplication.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_multiplication.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.js
new file mode 100644
index 0000000000..05b5a3c79f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_remainder.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_remainder.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.js
new file mode 100644
index 0000000000..c227a5eab5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/f32_subtraction.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/f32_subtraction.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.js
new file mode 100644
index 0000000000..9cb5320d76
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/i32_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.js
new file mode 100644
index 0000000000..54b62bca25
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/i32_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/i32_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.js
new file mode 100644
index 0000000000..a630ff22b3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/u32_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.js
new file mode 100644
index 0000000000..f554e8aa26
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/binary/u32_comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/binary/u32_comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.js
new file mode 100644
index 0000000000..1a0c5737c4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/abs.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/abs.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.js
new file mode 100644
index 0000000000..918deeca0a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acos.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/acos.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.js
new file mode 100644
index 0000000000..eebceffa12
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/acosh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/acosh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.js
new file mode 100644
index 0000000000..9232689fb1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/all.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/all.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.js
new file mode 100644
index 0000000000..ee03b527c3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/any.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/any.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.js
new file mode 100644
index 0000000000..d13d0e9412
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/arrayLength.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/arrayLength.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.js
new file mode 100644
index 0000000000..84b154faae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/asin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.js
new file mode 100644
index 0000000000..94eef38c0d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/asinh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/asinh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.js
new file mode 100644
index 0000000000..0e583ed82f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/atan.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.js
new file mode 100644
index 0000000000..04e39bb68e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atan2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/atan2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.js
new file mode 100644
index 0000000000..6c807c08bb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atanh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/atanh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.js
new file mode 100644
index 0000000000..76f5f7443f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAdd.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicAdd.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.js
new file mode 100644
index 0000000000..a86260b414
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicAnd.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicAnd.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.js
new file mode 100644
index 0000000000..ba86a54244
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.js
new file mode 100644
index 0000000000..53f4028fa4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicExchange.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicExchange.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.js
new file mode 100644
index 0000000000..aac4f05de0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicLoad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicLoad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.js
new file mode 100644
index 0000000000..d000bc90ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMax.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicMax.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.js
new file mode 100644
index 0000000000..12db37164b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicMin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicMin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.js
new file mode 100644
index 0000000000..0416b23e84
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicOr.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicOr.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.js
new file mode 100644
index 0000000000..591ea6c135
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicStore.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicStore.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.js
new file mode 100644
index 0000000000..8767389e87
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicSub.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicSub.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.js
new file mode 100644
index 0000000000..c239fc2797
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/atomics/atomicXor.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../../shader/execution/expression/call/builtin/atomics/atomicXor.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.js
new file mode 100644
index 0000000000..481abb1d26
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/bitcast.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/bitcast.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.js
new file mode 100644
index 0000000000..c24b27665d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ceil.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/ceil.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.js
new file mode 100644
index 0000000000..19ab86e3ff
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.js
new file mode 100644
index 0000000000..b10ddecef7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cos.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/cos.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.js
new file mode 100644
index 0000000000..f5613135c4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cosh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/cosh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.js
new file mode 100644
index 0000000000..9b3e765eb2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countLeadingZeros.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/countLeadingZeros.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.js
new file mode 100644
index 0000000000..755c44f883
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countOneBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/countOneBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.js
new file mode 100644
index 0000000000..023d8979a6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/countTrailingZeros.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/countTrailingZeros.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.js
new file mode 100644
index 0000000000..e741a038c2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/cross.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/cross.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.js
new file mode 100644
index 0000000000..11a9befc7c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/degrees.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/degrees.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.js
new file mode 100644
index 0000000000..d7b2083a0c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/determinant.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/determinant.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.js
new file mode 100644
index 0000000000..d08c9b959f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/distance.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/distance.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.js
new file mode 100644
index 0000000000..ba9b9861c4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dot.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.js
new file mode 100644
index 0000000000..47e81aee2c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4I8Packed.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dot4I8Packed.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.js
new file mode 100644
index 0000000000..1997d58883
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dot4U8Packed.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dot4U8Packed.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.js
new file mode 100644
index 0000000000..1f23c8f743
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdx.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdx.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.js
new file mode 100644
index 0000000000..332238aa98
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxCoarse.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdxCoarse.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.js
new file mode 100644
index 0000000000..45d0dd15f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdxFine.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdxFine.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.js
new file mode 100644
index 0000000000..d7fa774c70
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdy.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdy.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.js
new file mode 100644
index 0000000000..f818422cf4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyCoarse.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdyCoarse.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.js
new file mode 100644
index 0000000000..b96b3c2d7b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/dpdyFine.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/dpdyFine.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.js
new file mode 100644
index 0000000000..b3f99653b1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/exp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.js
new file mode 100644
index 0000000000..943f79d3fa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/exp2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/exp2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.js
new file mode 100644
index 0000000000..1e720dea49
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/extractBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/extractBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.js
new file mode 100644
index 0000000000..771f30a6ab
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/faceForward.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/faceForward.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.js
new file mode 100644
index 0000000000..560b19314c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstLeadingBit.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/firstLeadingBit.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.js
new file mode 100644
index 0000000000..6a4da57be1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/firstTrailingBit.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/firstTrailingBit.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.js
new file mode 100644
index 0000000000..577ee0ff0f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/floor.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/floor.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.js
new file mode 100644
index 0000000000..278df59865
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fma.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/fma.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.js
new file mode 100644
index 0000000000..f96aff459e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fract.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/fract.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.js
new file mode 100644
index 0000000000..08efc30280
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/frexp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/frexp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.js
new file mode 100644
index 0000000000..ebb0a1e612
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidth.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/fwidth.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.js
new file mode 100644
index 0000000000..17e286ccf2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthCoarse.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/fwidthCoarse.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.js
new file mode 100644
index 0000000000..a8ec6865ac
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/fwidthFine.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/fwidthFine.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.js
new file mode 100644
index 0000000000..244c0aef8d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/insertBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/insertBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.js
new file mode 100644
index 0000000000..3808e163f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/inversesqrt.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/inversesqrt.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.js
new file mode 100644
index 0000000000..538d662fe1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/ldexp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/ldexp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.js
new file mode 100644
index 0000000000..e9a7510c00
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/length.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/length.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.js
new file mode 100644
index 0000000000..a4726143d2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/log.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.js
new file mode 100644
index 0000000000..17f7b31233
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/log2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/log2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.js
new file mode 100644
index 0000000000..071ee77eb1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/max.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/max.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.js
new file mode 100644
index 0000000000..1f713e0877
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/min.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/min.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.js
new file mode 100644
index 0000000000..8d31ff9367
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/mix.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/mix.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.js
new file mode 100644
index 0000000000..b6f1af2f66
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/modf.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/modf.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.js
new file mode 100644
index 0000000000..41eba8d1ea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/normalize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/normalize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.js
new file mode 100644
index 0000000000..0b607cc615
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16float.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack2x16float.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.js
new file mode 100644
index 0000000000..f4b1a9fc96
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack2x16snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.js
new file mode 100644
index 0000000000..867aacc608
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack2x16unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack2x16unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.js
new file mode 100644
index 0000000000..80520d1f0b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4x8snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.js
new file mode 100644
index 0000000000..d78be03afb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4x8unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4x8unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.js
new file mode 100644
index 0000000000..9e15ccc5c7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4xI8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.js
new file mode 100644
index 0000000000..2f3e6fe2da
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xI8Clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4xI8Clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.js
new file mode 100644
index 0000000000..fd46e2f76b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4xU8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.js
new file mode 100644
index 0000000000..6f3ddc8d63
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pack4xU8Clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pack4xU8Clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.js
new file mode 100644
index 0000000000..6bd477c788
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/pow.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/pow.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.js
new file mode 100644
index 0000000000..d99fc9bbab
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/quantizeToF16.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/quantizeToF16.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.js
new file mode 100644
index 0000000000..19f07b4d98
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/radians.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/radians.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.js
new file mode 100644
index 0000000000..cd834840ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reflect.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/reflect.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.js
new file mode 100644
index 0000000000..a8a1de177d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/refract.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/refract.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.js
new file mode 100644
index 0000000000..11f63b1017
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/reverseBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/reverseBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.js
new file mode 100644
index 0000000000..3d159b6718
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/round.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/round.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.js
new file mode 100644
index 0000000000..81d2f8f62f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/saturate.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/saturate.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.js
new file mode 100644
index 0000000000..35a204c1c1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/select.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/select.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.js
new file mode 100644
index 0000000000..7125ebd4ea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sign.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/sign.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.js
new file mode 100644
index 0000000000..9cd044bf3b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/sin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.js
new file mode 100644
index 0000000000..d248983ec1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sinh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/sinh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.js
new file mode 100644
index 0000000000..e7c6422316
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/smoothstep.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/smoothstep.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.js
new file mode 100644
index 0000000000..c5718ef571
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/sqrt.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/sqrt.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.js
new file mode 100644
index 0000000000..78b2e7056d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/step.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/step.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.js
new file mode 100644
index 0000000000..bc40263641
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/storageBarrier.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/storageBarrier.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.js
new file mode 100644
index 0000000000..4ed7807bda
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tan.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/tan.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.js
new file mode 100644
index 0000000000..f24791180a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/tanh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/tanh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.js
new file mode 100644
index 0000000000..eda70ffb33
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureDimensions.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureDimensions.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.js
new file mode 100644
index 0000000000..c632b85bb8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGather.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureGather.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.js
new file mode 100644
index 0000000000..cf00fc8ae6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureGatherCompare.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureGatherCompare.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.js
new file mode 100644
index 0000000000..3f7aeaf39b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureLoad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureLoad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.js
new file mode 100644
index 0000000000..5cad50f39d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLayers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureNumLayers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.js
new file mode 100644
index 0000000000..d1d13ca8f1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumLevels.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureNumLevels.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.js
new file mode 100644
index 0000000000..3636b6fc5c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureNumSamples.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureNumSamples.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.js
new file mode 100644
index 0000000000..8d6cffd972
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSample.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSample.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.js
new file mode 100644
index 0000000000..6f15b0455f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleBias.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSampleBias.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.js
new file mode 100644
index 0000000000..7b2442f62e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompare.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSampleCompare.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.js
new file mode 100644
index 0000000000..ce8edf2a39
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleCompareLevel.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSampleCompareLevel.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.js
new file mode 100644
index 0000000000..4b93570bb6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleGrad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSampleGrad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.js
new file mode 100644
index 0000000000..36c0342b3c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureSampleLevel.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureSampleLevel.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.js
new file mode 100644
index 0000000000..7c3ef351ef
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/textureStore.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/textureStore.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.js
new file mode 100644
index 0000000000..ad5e60d152
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/transpose.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/transpose.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.js
new file mode 100644
index 0000000000..0b312f07a8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/trunc.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/trunc.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.js
new file mode 100644
index 0000000000..b2fd425c06
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16float.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack2x16float.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.js
new file mode 100644
index 0000000000..6eb4703282
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack2x16snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.js
new file mode 100644
index 0000000000..6b8b918cf0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack2x16unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack2x16unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.js
new file mode 100644
index 0000000000..281dd18ee9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack4x8snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.js
new file mode 100644
index 0000000000..d67901b286
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4x8unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack4x8unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.js
new file mode 100644
index 0000000000..c5b84ae2c5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xI8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack4xI8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.js
new file mode 100644
index 0000000000..59d7cf25b3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/unpack4xU8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/unpack4xU8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.js
new file mode 100644
index 0000000000..5a2ff0b830
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupBarrier.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/workgroupBarrier.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.js
new file mode 100644
index 0000000000..9b341af87d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/builtin/workgroupUniformLoad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/builtin/workgroupUniformLoad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.js
new file mode 100644
index 0000000000..850fec5f5f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/call/user/ptr_params.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/execution/expression/call/user/ptr_params.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.js
new file mode 100644
index 0000000000..ae66debc94
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/non_zero.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/constructor/non_zero.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.js
new file mode 100644
index 0000000000..9ddbaa9dae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/constructor/zero_value.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/constructor/zero_value.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/precedence.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/precedence.worker.js
new file mode 100644
index 0000000000..a83f045413
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/precedence.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/expression/precedence.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.js
new file mode 100644
index 0000000000..e893985692
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/address_of_and_indirection.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/address_of_and_indirection.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.js
new file mode 100644
index 0000000000..d0c1b8f3d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/af_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.js
new file mode 100644
index 0000000000..cc871a1984
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/af_assignment.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/af_assignment.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.js
new file mode 100644
index 0000000000..ba35df7186
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/ai_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.js
new file mode 100644
index 0000000000..9431211f17
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_assignment.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/ai_assignment.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.js
new file mode 100644
index 0000000000..db525f760b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/ai_complement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/ai_complement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.js
new file mode 100644
index 0000000000..303fc054ef
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_conversion.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/bool_conversion.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.js
new file mode 100644
index 0000000000..77674f07c7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/bool_logical.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/bool_logical.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.js
new file mode 100644
index 0000000000..1bcd1bdd23
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/f16_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.js
new file mode 100644
index 0000000000..a6b5ac343a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f16_conversion.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/f16_conversion.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.js
new file mode 100644
index 0000000000..8ec016fb00
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/f32_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.js
new file mode 100644
index 0000000000..d175bd5dca
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/f32_conversion.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/f32_conversion.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.js
new file mode 100644
index 0000000000..f435320547
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_arithmetic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/i32_arithmetic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.js
new file mode 100644
index 0000000000..00ea9f8c25
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_complement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/i32_complement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.js
new file mode 100644
index 0000000000..28302ac1fc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/i32_conversion.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/i32_conversion.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.js
new file mode 100644
index 0000000000..c2a5ca0688
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_complement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/u32_complement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.js
new file mode 100644
index 0000000000..ac55bd61e2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/expression/unary/u32_conversion.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/execution/expression/unary/u32_conversion.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/float_parse.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/float_parse.worker.js
new file mode 100644
index 0000000000..070bb888f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/float_parse.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/float_parse.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/call.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/call.worker.js
new file mode 100644
index 0000000000..03930d032c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/call.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/call.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.js
new file mode 100644
index 0000000000..1cd99e11c0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/complex.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/complex.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.js
new file mode 100644
index 0000000000..78b9b84fd3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/eval_order.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/eval_order.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/for.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/for.worker.js
new file mode 100644
index 0000000000..379c29f9ce
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/for.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/for.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/if.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/if.worker.js
new file mode 100644
index 0000000000..9b086d3ed7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/if.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/if.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.js
new file mode 100644
index 0000000000..bab864b5c3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/loop.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/loop.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.js
new file mode 100644
index 0000000000..5badcd1df8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/phony.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/phony.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/return.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/return.worker.js
new file mode 100644
index 0000000000..8e545f3fae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/return.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/return.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.js
new file mode 100644
index 0000000000..845493427b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/switch.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/switch.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/while.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/while.worker.js
new file mode 100644
index 0000000000..3eae348390
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/flow_control/while.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/flow_control/while.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_layout.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_layout.worker.js
new file mode 100644
index 0000000000..a89aac4149
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_layout.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/memory_layout.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.js
new file mode 100644
index 0000000000..3c7ead1467
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/adjacent.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/adjacent.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.js
new file mode 100644
index 0000000000..d26549c1e3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/atomicity.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/atomicity.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.js
new file mode 100644
index 0000000000..e97bc4eb86
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/barrier.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/barrier.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.js
new file mode 100644
index 0000000000..289c01b354
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/coherence.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/coherence.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.js
new file mode 100644
index 0000000000..00a5fabc3a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/texture_intra_invocation_coherence.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/texture_intra_invocation_coherence.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.js
new file mode 100644
index 0000000000..fc4486c6e3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/memory_model/weak.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/memory_model/weak.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/padding.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/padding.worker.js
new file mode 100644
index 0000000000..23e642f6c1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/padding.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/padding.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access.worker.js
new file mode 100644
index 0000000000..9651705007
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/robust_access.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.js
new file mode 100644
index 0000000000..909c40a797
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/robust_access_vertex.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/robust_access_vertex.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.js
new file mode 100644
index 0000000000..1050903769
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/compute_builtins.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/shader_io/compute_builtins.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.js
new file mode 100644
index 0000000000..b8332b455a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/fragment_builtins.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/shader_io/fragment_builtins.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.js
new file mode 100644
index 0000000000..399b32a33b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/shared_structs.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/shader_io/shared_structs.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.js
new file mode 100644
index 0000000000..2b4570a48c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/user_io.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/shader_io/user_io.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.js
new file mode 100644
index 0000000000..31827b5e39
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shader_io/workgroup_size.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/shader_io/workgroup_size.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shadow.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shadow.worker.js
new file mode 100644
index 0000000000..b0c166c51c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/shadow.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/shadow.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/stage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/stage.worker.js
new file mode 100644
index 0000000000..c30bb087de
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/stage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/stage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/compound.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/compound.worker.js
new file mode 100644
index 0000000000..e25b55ffdf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/compound.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/statement/compound.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/discard.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/discard.worker.js
new file mode 100644
index 0000000000..16353062fd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/discard.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/statement/discard.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.js
new file mode 100644
index 0000000000..6d82f16828
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/statement/increment_decrement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/execution/statement/increment_decrement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/zero_init.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/zero_init.worker.js
new file mode 100644
index 0000000000..5e79410031
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/execution/zero_init.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../shader/execution/zero_init.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.js
new file mode 100644
index 0000000000..58990b9148
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/const_assert/const_assert.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/const_assert/const_assert.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.js
new file mode 100644
index 0000000000..815908c745
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/compound_statement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/compound_statement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/const.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/const.worker.js
new file mode 100644
index 0000000000..37baed5e7f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/const.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/const.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.js
new file mode 100644
index 0000000000..c2ebfd9e90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/context_dependent_resolution.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/context_dependent_resolution.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/let.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/let.worker.js
new file mode 100644
index 0000000000..75234ef572
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/let.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/let.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/override.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/override.worker.js
new file mode 100644
index 0000000000..bfe7adb3c1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/override.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/override.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.js
new file mode 100644
index 0000000000..e2e4f51335
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/ptr_spelling.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/ptr_spelling.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var.worker.js
new file mode 100644
index 0000000000..832a4601cf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/var.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.js
new file mode 100644
index 0000000000..b9d4a17093
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/decl/var_access_mode.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/decl/var_access_mode.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.js
new file mode 100644
index 0000000000..dc667d4538
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/access/vector.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/access/vector.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.js
new file mode 100644
index 0000000000..34ae46a86f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/add_sub_mul.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/binary/add_sub_mul.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.js
new file mode 100644
index 0000000000..d5423e6225
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/and_or_xor.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/binary/and_or_xor.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.js
new file mode 100644
index 0000000000..b1b74edf02
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/bitwise_shift.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/binary/bitwise_shift.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.js
new file mode 100644
index 0000000000..b44f38ccee
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/comparison.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/binary/comparison.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.js
new file mode 100644
index 0000000000..4d1e0c841d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/binary/div_rem.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/binary/div_rem.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.js
new file mode 100644
index 0000000000..efa3463179
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/abs.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/abs.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.js
new file mode 100644
index 0000000000..0575195da9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acos.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/acos.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.js
new file mode 100644
index 0000000000..ede7c1e3d1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/acosh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/acosh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.js
new file mode 100644
index 0000000000..e744084877
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/all.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/all.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.js
new file mode 100644
index 0000000000..f79ee3ccb2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/any.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/any.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.js
new file mode 100644
index 0000000000..efea85fabf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/arrayLength.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/arrayLength.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.js
new file mode 100644
index 0000000000..d8037c639e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/asin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.js
new file mode 100644
index 0000000000..255cbdce4c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/asinh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/asinh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.js
new file mode 100644
index 0000000000..7dd6276878
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/atan.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.js
new file mode 100644
index 0000000000..db2d9a6ac3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atan2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/atan2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.js
new file mode 100644
index 0000000000..2d610e868a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atanh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/atanh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.js
new file mode 100644
index 0000000000..94fa14244e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/atomics.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/atomics.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.js
new file mode 100644
index 0000000000..6055fde465
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/barriers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/barriers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.js
new file mode 100644
index 0000000000..00b3673e4b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/bitcast.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/bitcast.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.js
new file mode 100644
index 0000000000..ab5ec7adf7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/ceil.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/ceil.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.js
new file mode 100644
index 0000000000..3d09f8f68d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.js
new file mode 100644
index 0000000000..cf9af678f3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cos.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/cos.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.js
new file mode 100644
index 0000000000..e29d253a6f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cosh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/cosh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.js
new file mode 100644
index 0000000000..1555d2b211
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countLeadingZeros.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/countLeadingZeros.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.js
new file mode 100644
index 0000000000..7116dae8ba
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countOneBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/countOneBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.js
new file mode 100644
index 0000000000..fab97cbfd7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/countTrailingZeros.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/countTrailingZeros.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.js
new file mode 100644
index 0000000000..7a69266441
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/cross.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/cross.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.js
new file mode 100644
index 0000000000..b5653c8ca1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/degrees.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/degrees.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.js
new file mode 100644
index 0000000000..3c127105b9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/derivatives.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/derivatives.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.js
new file mode 100644
index 0000000000..191c4352e4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/determinant.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/determinant.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.js
new file mode 100644
index 0000000000..0d7c43c2a1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/distance.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/distance.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.js
new file mode 100644
index 0000000000..f30e513574
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4I8Packed.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/dot4I8Packed.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.js
new file mode 100644
index 0000000000..decdbc1387
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/dot4U8Packed.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/dot4U8Packed.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.js
new file mode 100644
index 0000000000..247338299d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/exp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.js
new file mode 100644
index 0000000000..1f6aaf585b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/exp2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/exp2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.js
new file mode 100644
index 0000000000..a869a585ef
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/extractBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/extractBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.js
new file mode 100644
index 0000000000..d61b7555cc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/faceForward.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/faceForward.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.js
new file mode 100644
index 0000000000..a7c401830a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstLeadingBit.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/firstLeadingBit.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.js
new file mode 100644
index 0000000000..d1079ddf88
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/firstTrailingBit.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/firstTrailingBit.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.js
new file mode 100644
index 0000000000..636e721f14
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/floor.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/floor.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.js
new file mode 100644
index 0000000000..0bcd6610eb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/fract.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/fract.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.js
new file mode 100644
index 0000000000..89c4f4d5ef
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/frexp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/frexp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.js
new file mode 100644
index 0000000000..fa96c1d121
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/insertBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/insertBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.js
new file mode 100644
index 0000000000..6decc3216c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/inverseSqrt.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/inverseSqrt.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.js
new file mode 100644
index 0000000000..609f0bd26a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/length.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/length.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.js
new file mode 100644
index 0000000000..339e911dcd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/log.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.js
new file mode 100644
index 0000000000..bd2490ee01
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/log2.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/log2.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.js
new file mode 100644
index 0000000000..0660d196f2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/max.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/max.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.js
new file mode 100644
index 0000000000..4d0d4896cf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/min.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/min.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.js
new file mode 100644
index 0000000000..55f2b00583
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/modf.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/modf.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.js
new file mode 100644
index 0000000000..cb8077d1d6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/normalize.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/normalize.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.js
new file mode 100644
index 0000000000..21d8d4b881
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack2x16snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.js
new file mode 100644
index 0000000000..1df8200fd3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack2x16unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack2x16unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.js
new file mode 100644
index 0000000000..2bc4b2737c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4x8snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.js
new file mode 100644
index 0000000000..32b359c074
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4x8unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4x8unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.js
new file mode 100644
index 0000000000..1f7ea4059f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4xI8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.js
new file mode 100644
index 0000000000..504ef65f54
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xI8Clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4xI8Clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.js
new file mode 100644
index 0000000000..50378494c3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4xU8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.js
new file mode 100644
index 0000000000..a4392cae9d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/pack4xU8Clamp.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/pack4xU8Clamp.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.js
new file mode 100644
index 0000000000..0fe919929f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/quantizeToF16.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/quantizeToF16.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.js
new file mode 100644
index 0000000000..6c4a0ffcd4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/radians.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/radians.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.js
new file mode 100644
index 0000000000..9c5978d38d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reflect.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/reflect.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.js
new file mode 100644
index 0000000000..e28c74fb71
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/reverseBits.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/reverseBits.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.js
new file mode 100644
index 0000000000..d2f3ad201d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/round.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/round.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.js
new file mode 100644
index 0000000000..f2c2f6c78f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/saturate.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/saturate.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.js
new file mode 100644
index 0000000000..b512734928
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/select.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/select.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.js
new file mode 100644
index 0000000000..24b9c617ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sign.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/sign.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.js
new file mode 100644
index 0000000000..daa78363cd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/sin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.js
new file mode 100644
index 0000000000..f09269f690
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sinh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/sinh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.js
new file mode 100644
index 0000000000..9c990e153c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/smoothstep.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/smoothstep.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.js
new file mode 100644
index 0000000000..8edaa59086
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/sqrt.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/sqrt.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.js
new file mode 100644
index 0000000000..bd3b7ba060
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/step.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/step.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.js
new file mode 100644
index 0000000000..39f53bb173
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tan.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/tan.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.js
new file mode 100644
index 0000000000..9e9a1a438e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/tanh.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/tanh.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.js
new file mode 100644
index 0000000000..5cdd6b2f90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGather.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureGather.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.js
new file mode 100644
index 0000000000..9d4cb5ddcd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureGatherCompare.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureGatherCompare.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.js
new file mode 100644
index 0000000000..2ece8f78bd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureLoad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureLoad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.js
new file mode 100644
index 0000000000..9c8718f0e7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSample.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSample.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.js
new file mode 100644
index 0000000000..a22b541dc1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.js
new file mode 100644
index 0000000000..0e13ca82dd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleBias.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleBias.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.js
new file mode 100644
index 0000000000..0e7adb6429
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompare.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleCompare.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.js
new file mode 100644
index 0000000000..3bb98849e1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleCompareLevel.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleCompareLevel.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.js
new file mode 100644
index 0000000000..560763704f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleGrad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleGrad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.js
new file mode 100644
index 0000000000..2ecbac54e1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureSampleLevel.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureSampleLevel.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.js
new file mode 100644
index 0000000000..edf8490943
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/textureStore.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/textureStore.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.js
new file mode 100644
index 0000000000..c21736648e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/trunc.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/trunc.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.js
new file mode 100644
index 0000000000..f9be70e83e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16float.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack2x16float.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.js
new file mode 100644
index 0000000000..9b33b71784
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack2x16snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.js
new file mode 100644
index 0000000000..c3a856b8a4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack2x16unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack2x16unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.js
new file mode 100644
index 0000000000..d1a576a28c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8snorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack4x8snorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.js
new file mode 100644
index 0000000000..8d43d6ddd1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4x8unorm.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack4x8unorm.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.js
new file mode 100644
index 0000000000..422c6d5a52
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xI8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack4xI8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.js
new file mode 100644
index 0000000000..e8b87e5b42
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/unpack4xU8.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/unpack4xU8.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.js
new file mode 100644
index 0000000000..8597dedce2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/call/builtin/workgroupUniformLoad.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../../shader/validation/expression/call/builtin/workgroupUniformLoad.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.js
new file mode 100644
index 0000000000..be8db508eb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/overload_resolution.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/expression/overload_resolution.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/precedence.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/precedence.worker.js
new file mode 100644
index 0000000000..3cd2a99b0c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/precedence.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/expression/precedence.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.js
new file mode 100644
index 0000000000..a9474b7386
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/address_of_and_indirection.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/unary/address_of_and_indirection.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.js
new file mode 100644
index 0000000000..a62640f655
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/arithmetic_negation.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/unary/arithmetic_negation.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.js
new file mode 100644
index 0000000000..0ae7343d89
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/bitwise_complement.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/unary/bitwise_complement.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.js
new file mode 100644
index 0000000000..11e8044927
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/expression/unary/logical_negation.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../../shader/validation/expression/unary/logical_negation.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.js
new file mode 100644
index 0000000000..d773ad793d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/pointer_composite_access.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/extension/pointer_composite_access.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.js
new file mode 100644
index 0000000000..8479487b10
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/extension/readonly_and_readwrite_storage_textures.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/extension/readonly_and_readwrite_storage_textures.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.js
new file mode 100644
index 0000000000..807f1217c2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/alias_analysis.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/functions/alias_analysis.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.js
new file mode 100644
index 0000000000..6f73a16411
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/functions/restrictions.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/functions/restrictions.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/align.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/align.worker.js
new file mode 100644
index 0000000000..57ca90b965
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/align.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/align.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/attribute.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/attribute.worker.js
new file mode 100644
index 0000000000..acf3a57601
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/attribute.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/attribute.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.js
new file mode 100644
index 0000000000..6f0bcb6d57
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/binary_ops.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/binary_ops.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.js
new file mode 100644
index 0000000000..33333b84fe
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/blankspace.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/blankspace.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break.worker.js
new file mode 100644
index 0000000000..95f7cb9b86
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/break.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break_if.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break_if.worker.js
new file mode 100644
index 0000000000..dfbd00dbf1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/break_if.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/break_if.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/builtin.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/builtin.worker.js
new file mode 100644
index 0000000000..1e5cda49fa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/builtin.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/builtin.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/comments.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/comments.worker.js
new file mode 100644
index 0000000000..5f035ebcfc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/comments.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/comments.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/compound.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/compound.worker.js
new file mode 100644
index 0000000000..91d11b6cf5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/compound.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/compound.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const.worker.js
new file mode 100644
index 0000000000..6c8671dd9f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/const.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.js
new file mode 100644
index 0000000000..deeedb07fd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/const_assert.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/const_assert.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/continuing.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/continuing.worker.js
new file mode 100644
index 0000000000..d985904192
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/continuing.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/continuing.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.js
new file mode 100644
index 0000000000..a311d903a1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/diagnostic.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/diagnostic.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/discard.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/discard.worker.js
new file mode 100644
index 0000000000..d9cfb613b2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/discard.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/discard.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/enable.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/enable.worker.js
new file mode 100644
index 0000000000..8722aa3ec6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/enable.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/enable.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.js
new file mode 100644
index 0000000000..d3f98b121b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/identifiers.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/identifiers.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/literal.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/literal.worker.js
new file mode 100644
index 0000000000..ef24ba83fd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/literal.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/literal.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/must_use.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/must_use.worker.js
new file mode 100644
index 0000000000..888541ed1d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/must_use.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/must_use.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.js
new file mode 100644
index 0000000000..5243355f60
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/pipeline_stage.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/pipeline_stage.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/requires.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/requires.worker.js
new file mode 100644
index 0000000000..dba1589829
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/requires.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/requires.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.js
new file mode 100644
index 0000000000..036f7b6d41
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/semicolon.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/semicolon.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.js
new file mode 100644
index 0000000000..843b1e9a99
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/shadow_builtins.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/shadow_builtins.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/source.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/source.worker.js
new file mode 100644
index 0000000000..cfc5a6870c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/source.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/source.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.js
new file mode 100644
index 0000000000..d7ef5fa731
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/statement_behavior.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/statement_behavior.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.js
new file mode 100644
index 0000000000..b108097a39
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/unary_ops.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/unary_ops.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.js
new file mode 100644
index 0000000000..d3b5701953
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/parse/var_and_let.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/parse/var_and_let.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.js
new file mode 100644
index 0000000000..93747e17b9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/binding.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/binding.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.js
new file mode 100644
index 0000000000..c616848fa9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/builtins.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/builtins.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.js
new file mode 100644
index 0000000000..7df3a5679a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/entry_point.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/entry_point.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group.worker.js
new file mode 100644
index 0000000000..91cc5ee843
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/group.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.js
new file mode 100644
index 0000000000..de145c124f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/group_and_binding.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/group_and_binding.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/id.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/id.worker.js
new file mode 100644
index 0000000000..94bfbb1d9e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/id.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/id.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.js
new file mode 100644
index 0000000000..1ef4a8537a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/interpolate.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/interpolate.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.js
new file mode 100644
index 0000000000..c443c1c766
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/invariant.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/invariant.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.js
new file mode 100644
index 0000000000..bd6e43ab66
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/layout_constraints.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/layout_constraints.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.js
new file mode 100644
index 0000000000..bcc4bf954f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/locations.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/locations.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/size.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/size.worker.js
new file mode 100644
index 0000000000..639041ced4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/size.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/size.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.js
new file mode 100644
index 0000000000..da1c4058d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/shader_io/workgroup_size.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/shader_io/workgroup_size.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/alias.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/alias.worker.js
new file mode 100644
index 0000000000..318e1606c7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/alias.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/alias.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/array.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/array.worker.js
new file mode 100644
index 0000000000..ba738910ee
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/array.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/array.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/atomics.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/atomics.worker.js
new file mode 100644
index 0000000000..dbbf764275
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/atomics.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/atomics.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/matrix.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/matrix.worker.js
new file mode 100644
index 0000000000..a3879d8e5e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/matrix.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/matrix.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/struct.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/struct.worker.js
new file mode 100644
index 0000000000..97155cb9b0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/struct.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/struct.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/textures.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/textures.worker.js
new file mode 100644
index 0000000000..a0198cd3f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/textures.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/textures.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/vector.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/vector.worker.js
new file mode 100644
index 0000000000..6d1b6ab76c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/types/vector.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/types/vector.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.js
new file mode 100644
index 0000000000..9a03cf6a33
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/shader/validation/uniformity/uniformity.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../../shader/validation/uniformity/uniformity.spec.js';
+import { wrapTestGroupForWorker } from '../../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/color_space_conversions.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/color_space_conversions.worker.js
new file mode 100644
index 0000000000..92b7e45c2f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/color_space_conversions.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../util/texture/color_space_conversions.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texel_data.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texel_data.worker.js
new file mode 100644
index 0000000000..401eed9d2d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texel_data.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../util/texture/texel_data.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texture_ok.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texture_ok.worker.js
new file mode 100644
index 0000000000..a12097bc55
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/util/texture/texture_ok.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../util/texture/texture_ok.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/configure.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/configure.worker.js
new file mode 100644
index 0000000000..63126497f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/configure.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/canvas/configure.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.js
new file mode 100644
index 0000000000..5165c5dd60
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/context_creation.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/canvas/context_creation.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.js
new file mode 100644
index 0000000000..776783039f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getCurrentTexture.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/canvas/getCurrentTexture.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.js
new file mode 100644
index 0000000000..c412fea229
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/getPreferredCanvasFormat.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/canvas/getPreferredCanvasFormat.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.js
new file mode 100644
index 0000000000..f9a9f362f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/canvas/readbackFromWebGPUCanvas.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/canvas/readbackFromWebGPUCanvas.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.js
new file mode 100644
index 0000000000..7d5f20ff00
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageBitmap.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/copyToTexture/ImageBitmap.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.js
new file mode 100644
index 0000000000..8cc3f679e4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/ImageData.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/copyToTexture/ImageData.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.js
new file mode 100644
index 0000000000..d582697984
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/canvas.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/copyToTexture/canvas.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.js
new file mode 100644
index 0000000000..1aa1ad8c4f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/image.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/copyToTexture/image.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.js
new file mode 100644
index 0000000000..dc686d044f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/copyToTexture/video.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/copyToTexture/video.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/external_texture/video.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/external_texture/video.worker.js
new file mode 100644
index 0000000000..610a887179
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/external_texture/video.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/external_texture/video.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/worker/worker.worker.js b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/worker/worker.worker.js
new file mode 100644
index 0000000000..09109c2527
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/cts/webworker/web_platform/worker/worker.worker.js
@@ -0,0 +1,6 @@
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
+
+import { g } from '../../../web_platform/worker/worker.spec.js';
+import { wrapTestGroupForWorker } from '../../../../common/runtime/helper/wrap_for_worker.js';
+
+wrapTestGroupForWorker(g);
diff --git a/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.d.js b/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.d.js
index 138c3378a5..5a3e7f2f00 100644
--- a/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.d.js
+++ b/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.d.js
@@ -411,6 +411,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
/**
* Returns `true` if the value is a Float16Array instance.
* @since v3.4.0
@@ -467,4 +487,11 @@
/**
* Returns the nearest half-precision float representation of a number.
* @param x A numeric expression.
+ */
+
+
+/**
+ * Returns the nearest half-precision float representation of a number.
+ * @alias f16round
+ * @param x A numeric expression.
*/export {}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.js b/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.js
index 42543cdea1..11db53a4fd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.js
+++ b/testing/web-platform/mozilla/tests/webgpu/external/petamoriken/float16/float16.js
@@ -1,6 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/ /*! @petamoriken/float16 v3.6.6 | MIT License - https://github.com/petamoriken/float16 */const THIS_IS_NOT_AN_OBJECT = "This is not an object";
+**/ /*! @petamoriken/float16 v3.8.6 | MIT License - https://github.com/petamoriken/float16 */const THIS_IS_NOT_AN_OBJECT = "This is not an object";
const THIS_IS_NOT_A_FLOAT16ARRAY_OBJECT = "This is not a Float16Array object";
const THIS_CONSTRUCTOR_IS_NOT_A_SUBCLASS_OF_FLOAT16ARRAY =
"This constructor is not a subclass of Float16Array";
@@ -19,6 +19,8 @@ const CANNOT_MIX_BIGINT_AND_OTHER_TYPES =
const ITERATOR_PROPERTY_IS_NOT_CALLABLE = "@@iterator property is not callable";
const REDUCE_OF_EMPTY_ARRAY_WITH_NO_INITIAL_VALUE =
"Reduce of empty array with no initial value";
+const THE_COMPARISON_FUNCTION_MUST_BE_EITHER_A_FUNCTION_OR_UNDEFINED =
+"The comparison function must be either a function or undefined";
const OFFSET_IS_OUT_OF_BOUNDS = "Offset is out of bounds";
function uncurryThis(target) {
@@ -48,7 +50,8 @@ const {
} = Reflect;
const NativeProxy = Proxy;
const {
- MAX_SAFE_INTEGER: MAX_SAFE_INTEGER,
+ EPSILON,
+ MAX_SAFE_INTEGER,
isFinite: NumberIsFinite,
isNaN: NumberIsNaN
} = Number;
@@ -97,7 +100,10 @@ const ArrayPrototypeToLocaleString = uncurryThis(
);
const NativeArrayPrototypeSymbolIterator = ArrayPrototype[SymbolIterator];
const ArrayPrototypeSymbolIterator = uncurryThis(NativeArrayPrototypeSymbolIterator);
-const MathTrunc = Math.trunc;
+const {
+ abs: MathAbs,
+ trunc: MathTrunc
+} = Math;
const NativeArrayBuffer = ArrayBuffer;
const ArrayBufferIsView = NativeArrayBuffer.isView;
const ArrayBufferPrototype = NativeArrayBuffer.prototype;
@@ -146,6 +152,7 @@ const TypedArrayPrototypeGetSymbolToStringTag = uncurryThisGetter(
TypedArrayPrototype,
SymbolToStringTag
);
+const NativeUint8Array = Uint8Array;
const NativeUint16Array = Uint16Array;
const Uint16ArrayFrom = (...args) => {
return ReflectApply(TypedArrayFrom, NativeUint16Array, args);
@@ -190,7 +197,10 @@ const SafeIteratorPrototype = ObjectCreate(null, {
}
});
function safeIfNeeded(array) {
- if (array[SymbolIterator] === NativeArrayPrototypeSymbolIterator) {
+ if (
+ array[SymbolIterator] === NativeArrayPrototypeSymbolIterator &&
+ ArrayIteratorPrototype.next === ArrayIteratorPrototypeNext)
+ {
return array;
}
const safe = ObjectCreate(SafeIteratorPrototype);
@@ -221,8 +231,10 @@ function wrap(generator) {
}
function isObject(value) {
- return value !== null && typeof value === "object" ||
- typeof value === "function";
+ return (
+ value !== null && typeof value === "object" ||
+ typeof value === "function");
+
}
function isObjectLike(value) {
return value !== null && typeof value === "object";
@@ -232,11 +244,16 @@ function isNativeTypedArray(value) {
}
function isNativeBigIntTypedArray(value) {
const typedArrayName = TypedArrayPrototypeGetSymbolToStringTag(value);
- return typedArrayName === "BigInt64Array" ||
- typedArrayName === "BigUint64Array";
+ return (
+ typedArrayName === "BigInt64Array" ||
+ typedArrayName === "BigUint64Array");
+
}
function isArrayBuffer(value) {
try {
+ if (ArrayIsArray(value)) {
+ return false;
+ }
ArrayBufferPrototypeGetByteLength(value);
return true;
} catch (e) {
@@ -254,25 +271,26 @@ function isSharedArrayBuffer(value) {
return false;
}
}
+function isAnyArrayBuffer(value) {
+ return isArrayBuffer(value) || isSharedArrayBuffer(value);
+}
function isOrdinaryArray(value) {
if (!ArrayIsArray(value)) {
return false;
}
- if (value[SymbolIterator] === NativeArrayPrototypeSymbolIterator) {
- return true;
- }
- const iterator = value[SymbolIterator]();
- return iterator[SymbolToStringTag] === "Array Iterator";
+ return (
+ value[SymbolIterator] === NativeArrayPrototypeSymbolIterator &&
+ ArrayIteratorPrototype.next === ArrayIteratorPrototypeNext);
+
}
function isOrdinaryNativeTypedArray(value) {
if (!isNativeTypedArray(value)) {
return false;
}
- if (value[SymbolIterator] === NativeTypedArrayPrototypeSymbolIterator) {
- return true;
- }
- const iterator = value[SymbolIterator]();
- return iterator[SymbolToStringTag] === "Array Iterator";
+ return (
+ value[SymbolIterator] === NativeTypedArrayPrototypeSymbolIterator &&
+ ArrayIteratorPrototype.next === ArrayIteratorPrototypeNext);
+
}
function isCanonicalIntegerIndexString(value) {
if (typeof value !== "string") {
@@ -307,11 +325,37 @@ function hasFloat16ArrayBrand(target) {
return ReflectHas(constructor, brand);
}
+const INVERSE_OF_EPSILON = 1 / EPSILON;
+function roundTiesToEven(num) {
+ return num + INVERSE_OF_EPSILON - INVERSE_OF_EPSILON;
+}
+const FLOAT16_MIN_VALUE = 6.103515625e-05;
+const FLOAT16_MAX_VALUE = 65504;
+const FLOAT16_EPSILON = 0.0009765625;
+const FLOAT16_EPSILON_MULTIPLIED_BY_FLOAT16_MIN_VALUE = FLOAT16_EPSILON * FLOAT16_MIN_VALUE;
+const FLOAT16_EPSILON_DEVIDED_BY_EPSILON = FLOAT16_EPSILON * INVERSE_OF_EPSILON;
+function roundToFloat16(num) {
+ const number = +num;
+ if (!NumberIsFinite(number) || number === 0) {
+ return number;
+ }
+ const sign = number > 0 ? 1 : -1;
+ const absolute = MathAbs(number);
+ if (absolute < FLOAT16_MIN_VALUE) {
+ return sign * roundTiesToEven(absolute / FLOAT16_EPSILON_MULTIPLIED_BY_FLOAT16_MIN_VALUE) * FLOAT16_EPSILON_MULTIPLIED_BY_FLOAT16_MIN_VALUE;
+ }
+ const temp = (1 + FLOAT16_EPSILON_DEVIDED_BY_EPSILON) * absolute;
+ const result = temp - (temp - absolute);
+ if (result > FLOAT16_MAX_VALUE || NumberIsNaN(result)) {
+ return sign * Infinity;
+ }
+ return sign * result;
+}
const buffer = new NativeArrayBuffer(4);
const floatView = new NativeFloat32Array(buffer);
const uint32View = new NativeUint32Array(buffer);
-const baseTable = new NativeUint32Array(512);
-const shiftTable = new NativeUint32Array(512);
+const baseTable = new NativeUint16Array(512);
+const shiftTable = new NativeUint8Array(512);
for (let i = 0; i < 256; ++i) {
const e = i - 127;
if (e < -27) {
@@ -342,14 +386,12 @@ for (let i = 0; i < 256; ++i) {
}
}
function roundToFloat16Bits(num) {
- floatView[0] = num;
+ floatView[0] = roundToFloat16(num);
const f = uint32View[0];
const e = f >> 23 & 0x1ff;
return baseTable[e] + ((f & 0x007fffff) >> shiftTable[e]);
}
const mantissaTable = new NativeUint32Array(2048);
-const exponentTable = new NativeUint32Array(64);
-const offsetTable = new NativeUint32Array(64);
for (let i = 1; i < 1024; ++i) {
let m = i << 13;
let e = 0;
@@ -364,6 +406,7 @@ for (let i = 1; i < 1024; ++i) {
for (let i = 1024; i < 2048; ++i) {
mantissaTable[i] = 0x38000000 + (i - 1024 << 13);
}
+const exponentTable = new NativeUint32Array(64);
for (let i = 1; i < 31; ++i) {
exponentTable[i] = i << 23;
}
@@ -373,14 +416,15 @@ for (let i = 33; i < 63; ++i) {
exponentTable[i] = 0x80000000 + (i - 32 << 23);
}
exponentTable[63] = 0xc7800000;
+const offsetTable = new NativeUint16Array(64);
for (let i = 1; i < 64; ++i) {
if (i !== 32) {
offsetTable[i] = 1024;
}
}
function convertToNumber(float16bits) {
- const m = float16bits >> 10;
- uint32View[0] = mantissaTable[offsetTable[m] + (float16bits & 0x3ff)] + exponentTable[m];
+ const i = float16bits >> 10;
+ uint32View[0] = mantissaTable[offsetTable[i] + (float16bits & 0x3ff)] + exponentTable[i];
return floatView[0];
}
@@ -572,26 +616,20 @@ class Float16Array {
let float16bitsArray;
if (isFloat16Array(input)) {
float16bitsArray = ReflectConstruct(NativeUint16Array, [getFloat16BitsArray(input)], new.target);
- } else if (isObject(input) && !isArrayBuffer(input)) {
+ } else if (isObject(input) && !isAnyArrayBuffer(input)) {
let list;
let length;
if (isNativeTypedArray(input)) {
list = input;
length = TypedArrayPrototypeGetLength(input);
const buffer = TypedArrayPrototypeGetBuffer(input);
- const BufferConstructor = !isSharedArrayBuffer(buffer) ?
- SpeciesConstructor(
- buffer,
- NativeArrayBuffer
- ) :
- NativeArrayBuffer;
if (IsDetachedBuffer(buffer)) {
throw NativeTypeError(ATTEMPTING_TO_ACCESS_DETACHED_ARRAYBUFFER);
}
if (isNativeBigIntTypedArray(input)) {
throw NativeTypeError(CANNOT_MIX_BIGINT_AND_OTHER_TYPES);
}
- const data = new BufferConstructor(
+ const data = new NativeArrayBuffer(
length * BYTES_PER_ELEMENT
);
float16bitsArray = ReflectConstruct(NativeUint16Array, [data], new.target);
@@ -758,6 +796,30 @@ class Float16Array {
}
return convertToNumber(float16bitsArray[k]);
}
+ with(index, value) {
+ assertFloat16Array(this);
+ const float16bitsArray = getFloat16BitsArray(this);
+ const length = TypedArrayPrototypeGetLength(float16bitsArray);
+ const relativeIndex = ToIntegerOrInfinity(index);
+ const k = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;
+ const number = +value;
+ if (k < 0 || k >= length) {
+ throw NativeRangeError(OFFSET_IS_OUT_OF_BOUNDS);
+ }
+ const uint16 = new NativeUint16Array(
+ TypedArrayPrototypeGetBuffer(float16bitsArray),
+ TypedArrayPrototypeGetByteOffset(float16bitsArray),
+ TypedArrayPrototypeGetLength(float16bitsArray)
+ );
+ const cloned = new Float16Array(
+ TypedArrayPrototypeGetBuffer(
+ TypedArrayPrototypeSlice(uint16)
+ )
+ );
+ const array = getFloat16BitsArray(cloned);
+ array[k] = roundToFloat16Bits(number);
+ return cloned;
+ }
map(callback, ...opts) {
assertFloat16Array(this);
const float16bitsArray = getFloat16BitsArray(this);
@@ -995,6 +1057,23 @@ class Float16Array {
TypedArrayPrototypeReverse(float16bitsArray);
return this;
}
+ toReversed() {
+ assertFloat16Array(this);
+ const float16bitsArray = getFloat16BitsArray(this);
+ const uint16 = new NativeUint16Array(
+ TypedArrayPrototypeGetBuffer(float16bitsArray),
+ TypedArrayPrototypeGetByteOffset(float16bitsArray),
+ TypedArrayPrototypeGetLength(float16bitsArray)
+ );
+ const cloned = new Float16Array(
+ TypedArrayPrototypeGetBuffer(
+ TypedArrayPrototypeSlice(uint16)
+ )
+ );
+ const clonedFloat16bitsArray = getFloat16BitsArray(cloned);
+ TypedArrayPrototypeReverse(clonedFloat16bitsArray);
+ return cloned;
+ }
fill(value, ...opts) {
assertFloat16Array(this);
const float16bitsArray = getFloat16BitsArray(this);
@@ -1020,6 +1099,29 @@ class Float16Array {
});
return this;
}
+ toSorted(compareFn) {
+ assertFloat16Array(this);
+ const float16bitsArray = getFloat16BitsArray(this);
+ if (compareFn !== undefined && typeof compareFn !== "function") {
+ throw new NativeTypeError(THE_COMPARISON_FUNCTION_MUST_BE_EITHER_A_FUNCTION_OR_UNDEFINED);
+ }
+ const sortCompare = compareFn !== undefined ? compareFn : defaultCompare;
+ const uint16 = new NativeUint16Array(
+ TypedArrayPrototypeGetBuffer(float16bitsArray),
+ TypedArrayPrototypeGetByteOffset(float16bitsArray),
+ TypedArrayPrototypeGetLength(float16bitsArray)
+ );
+ const cloned = new Float16Array(
+ TypedArrayPrototypeGetBuffer(
+ TypedArrayPrototypeSlice(uint16)
+ )
+ );
+ const clonedFloat16bitsArray = getFloat16BitsArray(cloned);
+ TypedArrayPrototypeSort(clonedFloat16bitsArray, (x, y) => {
+ return sortCompare(convertToNumber(x), convertToNumber(y));
+ });
+ return cloned;
+ }
slice(start, end) {
assertFloat16Array(this);
const float16bitsArray = getFloat16BitsArray(this);
@@ -1216,13 +1318,8 @@ function setFloat16(dataView, byteOffset, value, ...opts) {
);
}
-function hfround(x) {
- const number = +x;
- if (!NumberIsFinite(number) || number === 0) {
- return number;
- }
- const x16 = roundToFloat16Bits(number);
- return convertToNumber(x16);
+function f16round(x) {
+ return roundToFloat16(x);
}
-export { Float16Array, getFloat16, hfround, isFloat16Array, isTypedArray, setFloat16 }; \ No newline at end of file
+export { Float16Array, f16round, getFloat16, f16round as hfround, isFloat16Array, isTypedArray, setFloat16 }; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/README.md b/testing/web-platform/mozilla/tests/webgpu/resources/README.md
index 28f23f288b..a1ed060417 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/README.md
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/README.md
@@ -2,13 +2,92 @@ Always use `getResourcePath()` to get the appropriate path to these resources de
on the context (WPT, standalone, worker, etc.)
-The test video files were generated with the ffmpeg cmds below:
-ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx -pix_fmt yuv420p -frames 500 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-vp8-bt601.webm
-ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 500 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-h264-bt601.mp4
-ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 500 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-vp9-bt601.webm
-ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 500 -colorspace bt709 -color_primaries bt709 -color_trc bt709 -color_range tv -vf scale=out_color_matrix=bt709:out_range=tv four-colors-vp9-bt709.webm
-
-These rotation test files are copies of four-colors-h264-bt601.mp4 with metadata changes.
-ffmpeg.exe -i .\four-colors-h264-bt601.mp4 -c copy -metadata:s:v rotate=90 four-colors-h264-bt601-rotate-90.mp4
-ffmpeg.exe -i .\four-colors-h264-bt601.mp4 -c copy -metadata:s:v rotate=180 four-colors-h264-bt601-rotate-180.mp4
-ffmpeg.exe -i .\four-colors-h264-bt601.mp4 -c copy -metadata:s:v rotate=270 four-colors-h264-bt601-rotate-270.mp4
+The test video files were generated with by ffmpeg cmds below:
+```
+// Generate four-colors-vp8-bt601.webm, mimeType: 'video/webm; codecs=vp8'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-vp8-bt601.webm
+
+// Generate four-colors-h264-bt601.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-h264-bt601.mp4
+
+// Generate four-colors-vp9-bt601.webm, mimeType: 'video/webm; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-vp9-bt601.webm
+
+// Generate four-colors-vp9-bt709.webm, mimeType: 'video/webm; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace bt709 -color_primaries bt709 -color_trc bt709 -color_range tv -vf scale=out_color_matrix=bt709:out_range=tv four-colors-vp9-bt709.webm
+
+// Generate four-colors-vp9-bt601.mp4, mimeType: 'video/mp4; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv four-colors-vp9-bt601.mp4
+```
+
+Generate video files to test rotation behaviour.
+Use ffmepg to rotate video content x degrees in cw direction (by using `transpose`) and update transform matrix in metadata through `display_rotation` to x degrees to apply ccw direction rotation.
+
+H264 rotated video files are generated by ffmpeg cmds below:
+```
+// Generate four-colors-h264-bt601-rotate-90.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=2 temp.mp4
+ffmpeg -display_rotation 270 -i temp.mp4 -c copy four-colors-h264-bt601-rotate-90.mp4
+rm temp.mp4
+
+// Generate four-colors-h264-bt601-rotate-180.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=2,transpose=2 temp.mp4
+ffmpeg -display_rotation 180 -i temp.mp4 -c copy four-colors-h264-bt601-rotate-180.mp4
+rm temp.mp4
+
+// Generate four-colors-h264-bt601-rotate-270.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=1 temp.mp4
+ffmpeg -display_rotation 90 -i temp.mp4 -c copy four-colors-h264-bt601-rotate-270.mp4
+rm temp.mp4
+
+```
+
+Vp9 rotated video files are generated by ffmpeg cmds below:
+```
+// Generate four-colors-vp9-bt601-rotate-90.mp4, mimeType: 'video/mp4; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=2 temp.mp4
+ffmpeg -display_rotation 270 -i temp.mp4 -c copy four-colors-vp9-bt601-rotate-90.mp4
+rm temp.mp4
+
+// Generate four-colors-vp9-bt601-rotate-180.mp4, mimeType: 'video/mp4; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=2,transpose=2 temp.mp4
+ffmpeg -display_rotation 180 -i temp.mp4 -c copy four-colors-vp9-bt601-rotate-180.mp4
+rm temp.mp4
+
+// Generate four-colors-vp9-bt601-rotate-270.mp4, mimeType: 'video/mp4; codecs=vp9'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv -vf transpose=1 temp.mp4
+ffmpeg -display_rotation 90 -i temp.mp4 -c copy four-colors-vp9-bt601-rotate-270.mp4
+rm temp.mp4
+
+```
+
+Generate video files to test flip behaviour.
+Use ffmpeg to flip video content. Using `display_hflip` to do horizontal flip and `display_vflip` to do vertical flip.
+
+H264 flip video files are generated by ffmpeg cmds below:
+```
+// Generate four-colors-h264-bt601-hflip.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv temp.mp4
+ffmpeg -display_hflip -i temp.mp4 -c copy four-colors-h264-bt601-hflip.mp4
+rm temp.mp4
+
+// Generate four-colors-h264-bt601-vflip.mp4, mimeType: 'video/mp4; codecs=avc1.4d400c'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libx264 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv temp.mp4
+ffmpeg -display_vflip -i temp.mp4 -c copy four-colors-h264-bt601-vflip.mp4
+rm temp.mp4
+
+```
+
+Vp9 flip video files are generated by ffmpeg cmds below:
+```
+// Generate four-colors-vp9-bt601-hflip.mp4, mimeType: 'video/mp4; codecs=vp09.00.10.08'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv temp.mp4
+ffmpeg -display_hflip -i temp.mp4 -c copy four-colors-vp9-bt601-hflip.mp4
+rm temp.mp4
+
+// Generate four-colors-vp9-bt601-vflip.mp4, mimeType: 'video/mp4; codecs=vp09.00.10.08'
+ffmpeg.exe -loop 1 -i .\four-colors.png -c:v libvpx-vp9 -pix_fmt yuv420p -frames 50 -colorspace smpte170m -color_primaries smpte170m -color_trc smpte170m -color_range tv temp.mp4
+ffmpeg -display_vflip -i temp.mp4 -c copy four-colors-vp9-bt601-vflip.mp4
+rm temp.mp4
+
+```
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/hashes.json b/testing/web-platform/mozilla/tests/webgpu/resources/cache/hashes.json
new file mode 100644
index 0000000000..90efb474ad
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/hashes.json
@@ -0,0 +1,111 @@
+{
+ "webgpu/shader/execution/binary/af_addition.bin": "17c26b18",
+ "webgpu/shader/execution/binary/af_logical.bin": "b4fdda88",
+ "webgpu/shader/execution/binary/af_division.bin": "fa1fc451",
+ "webgpu/shader/execution/binary/af_matrix_addition.bin": "a2bebfc0",
+ "webgpu/shader/execution/binary/af_matrix_subtraction.bin": "5456944c",
+ "webgpu/shader/execution/binary/af_multiplication.bin": "fc54cae0",
+ "webgpu/shader/execution/binary/af_remainder.bin": "2ee1a014",
+ "webgpu/shader/execution/binary/af_subtraction.bin": "ba82dab3",
+ "webgpu/shader/execution/binary/f16_addition.bin": "4ccf0cde",
+ "webgpu/shader/execution/binary/f16_logical.bin": "5ffb4769",
+ "webgpu/shader/execution/binary/f16_division.bin": "c69d5326",
+ "webgpu/shader/execution/binary/f16_matrix_addition.bin": "23006f90",
+ "webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin": "3b581360",
+ "webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin": "4c2cf2fa",
+ "webgpu/shader/execution/binary/f16_matrix_subtraction.bin": "902ffcbc",
+ "webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin": "48acf022",
+ "webgpu/shader/execution/binary/f16_multiplication.bin": "e83fedc6",
+ "webgpu/shader/execution/binary/f16_remainder.bin": "68178090",
+ "webgpu/shader/execution/binary/f16_subtraction.bin": "de63294a",
+ "webgpu/shader/execution/binary/f32_addition.bin": "d693585",
+ "webgpu/shader/execution/binary/f32_logical.bin": "57b9e9da",
+ "webgpu/shader/execution/binary/f32_division.bin": "79048538",
+ "webgpu/shader/execution/binary/f32_matrix_addition.bin": "301c58ba",
+ "webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin": "41bae804",
+ "webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin": "d8a1003a",
+ "webgpu/shader/execution/binary/f32_matrix_subtraction.bin": "3b1cc190",
+ "webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin": "66a57dbc",
+ "webgpu/shader/execution/binary/f32_multiplication.bin": "c0bf07da",
+ "webgpu/shader/execution/binary/f32_remainder.bin": "238fd8eb",
+ "webgpu/shader/execution/binary/f32_subtraction.bin": "d977904f",
+ "webgpu/shader/execution/binary/i32_arithmetic.bin": "8168bdb4",
+ "webgpu/shader/execution/binary/i32_comparison.bin": "eae9d767",
+ "webgpu/shader/execution/binary/u32_arithmetic.bin": "5c313ea9",
+ "webgpu/shader/execution/binary/u32_comparison.bin": "5ef80f48",
+ "webgpu/shader/execution/abs.bin": "1a23882d",
+ "webgpu/shader/execution/acos.bin": "66020d3b",
+ "webgpu/shader/execution/acosh.bin": "eeed5b15",
+ "webgpu/shader/execution/asin.bin": "e38b87bf",
+ "webgpu/shader/execution/asinh.bin": "d5cf509e",
+ "webgpu/shader/execution/atan.bin": "780f5bf9",
+ "webgpu/shader/execution/atan2.bin": "242c3f80",
+ "webgpu/shader/execution/atanh.bin": "2c6771e5",
+ "webgpu/shader/execution/bitcast.bin": "4ebd46da",
+ "webgpu/shader/execution/ceil.bin": "b190ce63",
+ "webgpu/shader/execution/clamp.bin": "9ba5f3c9",
+ "webgpu/shader/execution/cos.bin": "edeb923",
+ "webgpu/shader/execution/cosh.bin": "c12c748b",
+ "webgpu/shader/execution/cross.bin": "4cfaddf8",
+ "webgpu/shader/execution/degrees.bin": "dc77e03b",
+ "webgpu/shader/execution/determinant.bin": "a87e4d61",
+ "webgpu/shader/execution/distance.bin": "9e397f5a",
+ "webgpu/shader/execution/dot.bin": "db692304",
+ "webgpu/shader/execution/exp.bin": "b0cbd306",
+ "webgpu/shader/execution/exp2.bin": "b32745cd",
+ "webgpu/shader/execution/faceForward.bin": "f0cc892a",
+ "webgpu/shader/execution/floor.bin": "4a460013",
+ "webgpu/shader/execution/fma.bin": "c89c3d19",
+ "webgpu/shader/execution/fract.bin": "f6230a96",
+ "webgpu/shader/execution/frexp.bin": "132962c",
+ "webgpu/shader/execution/inverseSqrt.bin": "cc1b943c",
+ "webgpu/shader/execution/ldexp.bin": "4e14b67d",
+ "webgpu/shader/execution/length.bin": "a75b23ef",
+ "webgpu/shader/execution/log.bin": "61175a12",
+ "webgpu/shader/execution/log2.bin": "d24b375d",
+ "webgpu/shader/execution/max.bin": "5689d61b",
+ "webgpu/shader/execution/min.bin": "8fd8d393",
+ "webgpu/shader/execution/mix.bin": "caf44b85",
+ "webgpu/shader/execution/modf.bin": "223ff03f",
+ "webgpu/shader/execution/normalize.bin": "e0634ba",
+ "webgpu/shader/execution/pack2x16float.bin": "a8ca6b51",
+ "webgpu/shader/execution/pow.bin": "b2bbd5ce",
+ "webgpu/shader/execution/quantizeToF16.bin": "be9ef6ab",
+ "webgpu/shader/execution/radians.bin": "afaf4f61",
+ "webgpu/shader/execution/reflect.bin": "742b05b4",
+ "webgpu/shader/execution/refract.bin": "ad05949f",
+ "webgpu/shader/execution/round.bin": "3a006c0c",
+ "webgpu/shader/execution/saturate.bin": "61753b4f",
+ "webgpu/shader/execution/sign.bin": "71e6517c",
+ "webgpu/shader/execution/sin.bin": "17c44cc8",
+ "webgpu/shader/execution/sinh.bin": "151ae2d1",
+ "webgpu/shader/execution/smoothstep.bin": "35db8f9a",
+ "webgpu/shader/execution/sqrt.bin": "a4b4bdf9",
+ "webgpu/shader/execution/step.bin": "e3cc0f86",
+ "webgpu/shader/execution/tan.bin": "9ad0e1f1",
+ "webgpu/shader/execution/tanh.bin": "99454fdd",
+ "webgpu/shader/execution/transpose.bin": "959a2407",
+ "webgpu/shader/execution/trunc.bin": "1a47263e",
+ "webgpu/shader/execution/unpack2x16float.bin": "39f959fe",
+ "webgpu/shader/execution/unpack2x16snorm.bin": "b409d047",
+ "webgpu/shader/execution/unpack2x16unorm.bin": "49a89145",
+ "webgpu/shader/execution/unpack4x8snorm.bin": "e53a7842",
+ "webgpu/shader/execution/unpack4x8unorm.bin": "9bc3f0ea",
+ "webgpu/shader/execution/unary/af_arithmetic.bin": "e9e06bc7",
+ "webgpu/shader/execution/unary/af_assignment.bin": "5c9160c2",
+ "webgpu/shader/execution/unary/bool_conversion.bin": "a2260d3a",
+ "webgpu/shader/execution/unary/f16_arithmetic.bin": "7a3fd3db",
+ "webgpu/shader/execution/unary/f16_conversion.bin": "b9407945",
+ "webgpu/shader/execution/unary/f32_arithmetic.bin": "6e392701",
+ "webgpu/shader/execution/unary/f32_conversion.bin": "6ae4cce9",
+ "webgpu/shader/execution/unary/i32_arithmetic.bin": "f5ef6485",
+ "webgpu/shader/execution/unary/i32_conversion.bin": "75435733",
+ "webgpu/shader/execution/unary/u32_conversion.bin": "26baf99",
+ "webgpu/shader/execution/unary/ai_assignment.bin": "d1b00a8",
+ "webgpu/shader/execution/binary/ai_arithmetic.bin": "dc777f4e",
+ "webgpu/shader/execution/unary/ai_arithmetic.bin": "272c5df2",
+ "webgpu/shader/execution/binary/af_matrix_matrix_multiplication.bin": "ab6db19f",
+ "webgpu/shader/execution/binary/af_matrix_scalar_multiplication.bin": "1de2ec75",
+ "webgpu/shader/execution/binary/af_matrix_vector_multiplication.bin": "e665650a",
+ "webgpu/shader/execution/derivatives.bin": "899e4e4c"
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/abs.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/abs.bin
new file mode 100644
index 0000000000..4cba9b72df
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/abs.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acos.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acos.bin
new file mode 100644
index 0000000000..2ecaaa389a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acos.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acosh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acosh.bin
new file mode 100644
index 0000000000..d48659f3c3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/acosh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asin.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asin.bin
new file mode 100644
index 0000000000..b199953eaf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asin.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asinh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asinh.bin
new file mode 100644
index 0000000000..b370c53b01
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/asinh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan.bin
new file mode 100644
index 0000000000..6ab0ba106a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan2.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan2.bin
new file mode 100644
index 0000000000..0109ddbc37
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atan2.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atanh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atanh.bin
new file mode 100644
index 0000000000..e6a190b35d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/atanh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_addition.bin
new file mode 100644
index 0000000000..ebd757c1b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_division.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_division.bin
new file mode 100644
index 0000000000..656356d32e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_division.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_logical.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_logical.bin
new file mode 100644
index 0000000000..e3594458f2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_logical.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_addition.bin
new file mode 100644
index 0000000000..ba9d123cbf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_matrix_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_matrix_multiplication.bin
new file mode 100644
index 0000000000..58d0d40cb9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_matrix_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_scalar_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_scalar_multiplication.bin
new file mode 100644
index 0000000000..c8a3b7205a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_scalar_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_subtraction.bin
new file mode 100644
index 0000000000..8f88d196ce
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_vector_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_vector_multiplication.bin
new file mode 100644
index 0000000000..545a5112cf
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_matrix_vector_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_multiplication.bin
new file mode 100644
index 0000000000..552d8b4892
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_remainder.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_remainder.bin
new file mode 100644
index 0000000000..c45792abf4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_remainder.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_subtraction.bin
new file mode 100644
index 0000000000..6f0be29785
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/af_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/ai_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/ai_arithmetic.bin
new file mode 100644
index 0000000000..658eb46d39
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/ai_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_addition.bin
new file mode 100644
index 0000000000..30f099139d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_division.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_division.bin
new file mode 100644
index 0000000000..22e60bef81
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_division.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_logical.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_logical.bin
new file mode 100644
index 0000000000..932af58208
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_logical.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_addition.bin
new file mode 100644
index 0000000000..452376760b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin
new file mode 100644
index 0000000000..e823daac6c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin
new file mode 100644
index 0000000000..b48be81ebd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_subtraction.bin
new file mode 100644
index 0000000000..386558c3f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin
new file mode 100644
index 0000000000..cbf224a6b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_multiplication.bin
new file mode 100644
index 0000000000..e9d27019a3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_remainder.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_remainder.bin
new file mode 100644
index 0000000000..d21370aec9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_remainder.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_subtraction.bin
new file mode 100644
index 0000000000..97080a8ce5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f16_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_addition.bin
new file mode 100644
index 0000000000..be7b997bd8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_division.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_division.bin
new file mode 100644
index 0000000000..f80461c21b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_division.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_logical.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_logical.bin
new file mode 100644
index 0000000000..a819eab08c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_logical.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_addition.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_addition.bin
new file mode 100644
index 0000000000..b1d7179264
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_addition.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin
new file mode 100644
index 0000000000..232760828a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin
new file mode 100644
index 0000000000..76f867b959
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_subtraction.bin
new file mode 100644
index 0000000000..0d0fd2460d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin
new file mode 100644
index 0000000000..e139fc9713
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_multiplication.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_multiplication.bin
new file mode 100644
index 0000000000..1837ce922c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_multiplication.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_remainder.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_remainder.bin
new file mode 100644
index 0000000000..3febfca1d1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_remainder.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_subtraction.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_subtraction.bin
new file mode 100644
index 0000000000..32b34f690c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/f32_subtraction.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_arithmetic.bin
new file mode 100644
index 0000000000..bacd4c0c54
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_comparison.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_comparison.bin
new file mode 100644
index 0000000000..d5a745e85c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/i32_comparison.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_arithmetic.bin
new file mode 100644
index 0000000000..56ef292864
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_comparison.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_comparison.bin
new file mode 100644
index 0000000000..5ba639b3cd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/binary/u32_comparison.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/bitcast.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/bitcast.bin
new file mode 100644
index 0000000000..2acc4a318b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/bitcast.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ceil.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ceil.bin
new file mode 100644
index 0000000000..9b93ed416f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ceil.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/clamp.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/clamp.bin
new file mode 100644
index 0000000000..492be017aa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/clamp.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cos.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cos.bin
new file mode 100644
index 0000000000..4e34eff3f1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cos.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cosh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cosh.bin
new file mode 100644
index 0000000000..5b30d2786c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cosh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cross.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cross.bin
new file mode 100644
index 0000000000..c8ee9d3e1a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/cross.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/degrees.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/degrees.bin
new file mode 100644
index 0000000000..662558d78a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/degrees.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/derivatives.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/derivatives.bin
new file mode 100644
index 0000000000..d6d0788775
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/derivatives.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/determinant.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/determinant.bin
new file mode 100644
index 0000000000..16d58c6db6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/determinant.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/distance.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/distance.bin
new file mode 100644
index 0000000000..23a4756a69
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/distance.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/dot.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/dot.bin
new file mode 100644
index 0000000000..13622a686b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/dot.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp.bin
new file mode 100644
index 0000000000..29361a2b27
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp2.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp2.bin
new file mode 100644
index 0000000000..367b5a8e90
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/exp2.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/faceForward.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/faceForward.bin
new file mode 100644
index 0000000000..8f065bb97c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/faceForward.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/floor.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/floor.bin
new file mode 100644
index 0000000000..b5341907f8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/floor.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fma.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fma.bin
new file mode 100644
index 0000000000..eb4cb9ebbe
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fma.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fract.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fract.bin
new file mode 100644
index 0000000000..f889961d8f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/fract.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/frexp.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/frexp.bin
new file mode 100644
index 0000000000..6811dfa295
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/frexp.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/inverseSqrt.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/inverseSqrt.bin
new file mode 100644
index 0000000000..5039345ad0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/inverseSqrt.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ldexp.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ldexp.bin
new file mode 100644
index 0000000000..bab78ed2af
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/ldexp.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/length.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/length.bin
new file mode 100644
index 0000000000..3644d9b683
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/length.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log.bin
new file mode 100644
index 0000000000..ba591faad8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log2.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log2.bin
new file mode 100644
index 0000000000..00641ce119
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/log2.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/max.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/max.bin
new file mode 100644
index 0000000000..3861a94aca
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/max.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/min.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/min.bin
new file mode 100644
index 0000000000..21c29e62ed
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/min.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/mix.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/mix.bin
new file mode 100644
index 0000000000..c42b2aa067
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/mix.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/modf.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/modf.bin
new file mode 100644
index 0000000000..363cc161fd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/modf.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/normalize.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/normalize.bin
new file mode 100644
index 0000000000..01b8eab700
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/normalize.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pack2x16float.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pack2x16float.bin
new file mode 100644
index 0000000000..e95227d36e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pack2x16float.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pow.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pow.bin
new file mode 100644
index 0000000000..4f5faf3293
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/pow.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/quantizeToF16.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/quantizeToF16.bin
new file mode 100644
index 0000000000..9e4308d5cd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/quantizeToF16.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/radians.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/radians.bin
new file mode 100644
index 0000000000..f5285d1087
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/radians.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/reflect.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/reflect.bin
new file mode 100644
index 0000000000..30cd7ee925
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/reflect.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/refract.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/refract.bin
new file mode 100644
index 0000000000..c428285817
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/refract.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/round.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/round.bin
new file mode 100644
index 0000000000..c3b30b68f0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/round.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/saturate.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/saturate.bin
new file mode 100644
index 0000000000..2e1eb821a9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/saturate.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sign.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sign.bin
new file mode 100644
index 0000000000..033f2e8158
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sign.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sin.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sin.bin
new file mode 100644
index 0000000000..a2ca632008
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sin.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sinh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sinh.bin
new file mode 100644
index 0000000000..1176cd472b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sinh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/smoothstep.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/smoothstep.bin
new file mode 100644
index 0000000000..73b65d17c2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/smoothstep.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sqrt.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sqrt.bin
new file mode 100644
index 0000000000..6dd8088c08
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/sqrt.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/step.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/step.bin
new file mode 100644
index 0000000000..f6c6c7b5f3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/step.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tan.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tan.bin
new file mode 100644
index 0000000000..572bee4df2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tan.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tanh.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tanh.bin
new file mode 100644
index 0000000000..a13028b165
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/tanh.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/transpose.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/transpose.bin
new file mode 100644
index 0000000000..d1b6bf04ee
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/transpose.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/trunc.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/trunc.bin
new file mode 100644
index 0000000000..ba81e2ada4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/trunc.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_arithmetic.bin
new file mode 100644
index 0000000000..21d3d702ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_assignment.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_assignment.bin
new file mode 100644
index 0000000000..a92279b5ce
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/af_assignment.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_arithmetic.bin
new file mode 100644
index 0000000000..2fa273ff19
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_assignment.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_assignment.bin
new file mode 100644
index 0000000000..7956b3652a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/ai_assignment.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/bool_conversion.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/bool_conversion.bin
new file mode 100644
index 0000000000..98a90ea45b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/bool_conversion.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_arithmetic.bin
new file mode 100644
index 0000000000..acf8a702ce
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_conversion.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_conversion.bin
new file mode 100644
index 0000000000..14299da766
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f16_conversion.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_arithmetic.bin
new file mode 100644
index 0000000000..ebc60029fa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_conversion.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_conversion.bin
new file mode 100644
index 0000000000..bdcc0c7298
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/f32_conversion.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_arithmetic.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_arithmetic.bin
new file mode 100644
index 0000000000..4753b020c9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_arithmetic.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_conversion.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_conversion.bin
new file mode 100644
index 0000000000..04841df607
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/i32_conversion.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/u32_conversion.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/u32_conversion.bin
new file mode 100644
index 0000000000..277ffc4d76
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unary/u32_conversion.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16float.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16float.bin
new file mode 100644
index 0000000000..7f06cb0df6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16float.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16snorm.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16snorm.bin
new file mode 100644
index 0000000000..08c6af9e93
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16snorm.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16unorm.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16unorm.bin
new file mode 100644
index 0000000000..1bb97b9c55
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack2x16unorm.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8snorm.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8snorm.bin
new file mode 100644
index 0000000000..1db9856b05
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8snorm.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8unorm.bin b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8unorm.bin
new file mode 100644
index 0000000000..8d1f3dc7fb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/cache/webgpu/shader/execution/unpack4x8unorm.bin
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-hflip.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-hflip.mp4
new file mode 100644
index 0000000000..f83b4f9698
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-hflip.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-180.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-180.mp4
index 1f0e9094a5..6665ea900d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-180.mp4
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-180.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-270.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-270.mp4
index e0480ceff2..b1e32bc83a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-270.mp4
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-270.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-90.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-90.mp4
index 9a6261056e..66a98d0ed0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-90.mp4
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-rotate-90.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-vflip.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-vflip.mp4
new file mode 100644
index 0000000000..90c3297a9a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601-vflip.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601.mp4
index 81a5ade435..5317bbf7c6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601.mp4
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-h264-bt601.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp8-bt601.webm b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp8-bt601.webm
index 20a2178596..d1504ee332 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp8-bt601.webm
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp8-bt601.webm
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-hflip.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-hflip.mp4
new file mode 100644
index 0000000000..f782c32651
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-hflip.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-180.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-180.mp4
new file mode 100644
index 0000000000..fc712becd7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-180.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-270.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-270.mp4
new file mode 100644
index 0000000000..a83558f53c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-270.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-90.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-90.mp4
new file mode 100644
index 0000000000..73a03795ba
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-rotate-90.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-vflip.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-vflip.mp4
new file mode 100644
index 0000000000..c9de14696a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601-vflip.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.mp4 b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.mp4
new file mode 100644
index 0000000000..0d8d4f829c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.mp4
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.webm b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.webm
index a4044a9209..47a43a0695 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.webm
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt601.webm
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt709.webm b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt709.webm
index 189e422035..a9e069ee1c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt709.webm
+++ b/testing/web-platform/mozilla/tests/webgpu/resources/four-colors-vp9-bt709.webm
Binary files differ
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/adapter/requestDevice.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/adapter/requestDevice.spec.js
index e01474f3f7..3d69c132c5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/adapter/requestDevice.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/adapter/requestDevice.spec.js
@@ -311,6 +311,65 @@ fn(async (t) => {
t.shouldReject('OperationError', adapter.requestDevice({ requiredLimits }));
});
+g.test('limit,out_of_range').
+desc(
+ `
+ Test that specifying limits that are out of range (<0, >MAX_SAFE_INTEGER, >2**31-2 for 32-bit
+ limits, =0 for alignment limits) produce the appropriate error (TypeError or OperationError).
+ `
+).
+params((u) =>
+u.
+combine('limit', kLimits).
+beginSubcases().
+expand('value', function* () {
+ yield -(2 ** 64);
+ yield Number.MIN_SAFE_INTEGER - 3;
+ yield Number.MIN_SAFE_INTEGER - 1;
+ yield Number.MIN_SAFE_INTEGER;
+ yield -(2 ** 32);
+ yield -1;
+ yield 0;
+ yield 2 ** 32 - 2;
+ yield 2 ** 32 - 1;
+ yield 2 ** 32;
+ yield 2 ** 32 + 1;
+ yield 2 ** 32 + 2;
+ yield Number.MAX_SAFE_INTEGER;
+ yield Number.MAX_SAFE_INTEGER + 1;
+ yield Number.MAX_SAFE_INTEGER + 3;
+ yield 2 ** 64;
+ yield Number.MAX_VALUE;
+})
+).
+fn(async (t) => {
+ const { limit, value } = t.params;
+
+ const gpu = getGPU(t.rec);
+ const adapter = await gpu.requestAdapter();
+ assert(adapter !== null);
+ const limitInfo = getDefaultLimitsForAdapter(adapter)[limit];
+
+ const requiredLimits = {
+ [limit]: value
+ };
+
+ const errorName =
+ value < 0 || value > Number.MAX_SAFE_INTEGER ?
+ 'TypeError' :
+ limitInfo.class === 'maximum' && value > adapter.limits[limit] ?
+ 'OperationError' :
+ limitInfo.class === 'alignment' && (value > 2 ** 31 || !isPowerOfTwo(value)) ?
+ 'OperationError' :
+ false;
+
+ if (errorName) {
+ t.shouldReject(errorName, adapter.requestDevice({ requiredLimits }));
+ } else {
+ await adapter.requestDevice({ requiredLimits });
+ }
+});
+
g.test('limit,worse_than_default').
desc(
`
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/copyTextureToTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/copyTextureToTexture.spec.js
index bc42d07326..17b9b2b6e6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/copyTextureToTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/copyTextureToTexture.spec.js
@@ -1,7 +1,7 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `copyTextureToTexture operation tests`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { assert, memcpy, unreachable } from '../../../../common/util/util.js';
+import { assert, ErrorWithExtra, memcpy } from '../../../../common/util/util.js';
import {
kBufferSizeAlignment,
kMinDynamicBufferOffsetAlignment,
@@ -17,15 +17,19 @@ import {
isCompressedTextureFormat,
- viewCompatible } from
+ viewCompatible,
+
+ isRegularTextureFormat } from
'../../../format_info.js';
import { GPUTest, TextureTestMixin } from '../../../gpu_test.js';
import { makeBufferWithContents } from '../../../util/buffer.js';
-import { checkElementsEqual, checkElementsEqualEither } from '../../../util/check_contents.js';
+import { checkElementsEqual } from '../../../util/check_contents.js';
import { align } from '../../../util/math.js';
import { physicalMipSize } from '../../../util/texture/base.js';
import { DataArrayGenerator } from '../../../util/texture/data_generation.js';
import { kBytesPerRowAlignment, dataBytesForCopyOrFail } from '../../../util/texture/layout.js';
+import { TexelView } from '../../../util/texture/texel_view.js';
+import { findFailedPixels } from '../../../util/texture/texture_ok.js';
const dataGenerator = new DataArrayGenerator();
@@ -207,7 +211,7 @@ class F extends TextureTestMixin(GPUTest) {
align(dstBlocksPerRow * bytesPerBlock, 4);
if (isCompressedTextureFormat(dstTexture.format) && this.isCompatibility) {
- assert(viewCompatible(srcFormat, dstFormat));
+ assert(viewCompatible(this.isCompatibility, srcFormat, dstFormat));
// compare by rendering. We need the expected texture to match
// the dstTexture so we'll create a texture where we supply
// all of the data in JavaScript.
@@ -304,6 +308,7 @@ class F extends TextureTestMixin(GPUTest) {
y: appliedDstOffset.y / blockHeight,
z: appliedDstOffset.z
};
+ const bytesInRow = appliedCopyBlocksPerRow * bytesPerBlock;
for (let z = 0; z < appliedCopyDepth; ++z) {
const srcOffsetZ = srcCopyOffsetInBlocks.z + z;
@@ -321,7 +326,6 @@ class F extends TextureTestMixin(GPUTest) {
srcBlockRowsPerImage * srcOffsetZ + srcOffsetYInBlocks) +
srcCopyOffsetInBlocks.x * bytesPerBlock;
- const bytesInRow = appliedCopyBlocksPerRow * bytesPerBlock;
memcpy(
{ src: expectedUint8Data, start: expectedDataOffset, length: bytesInRow },
{ dst: expectedUint8DataWithPadding, start: expectedDataWithPaddingOffset }
@@ -329,46 +333,69 @@ class F extends TextureTestMixin(GPUTest) {
}
}
- let alternateExpectedData = expectedUint8DataWithPadding;
- // For 8-byte snorm formats, allow an alternative encoding of -1.
- // MAINTENANCE_TODO: Use textureContentIsOKByT2B with TexelView.
- if (srcFormat.includes('snorm')) {
- switch (srcFormat) {
- case 'r8snorm':
- case 'rg8snorm':
- case 'rgba8snorm':
- alternateExpectedData = alternateExpectedData.slice();
- for (let i = 0; i < alternateExpectedData.length; ++i) {
- if (alternateExpectedData[i] === 128) {
- alternateExpectedData[i] = 129;
- } else if (alternateExpectedData[i] === 129) {
- alternateExpectedData[i] = 128;
- }
- }
- break;
- case 'bc4-r-snorm':
- case 'bc5-rg-snorm':
- case 'eac-r11snorm':
- case 'eac-rg11snorm':
- break;
- default:
- unreachable();
- }
+ if (isCompressedTextureFormat(dstFormat)) {
+ this.expectGPUBufferValuesPassCheck(
+ dstBuffer,
+ (vals) => checkElementsEqual(vals, expectedUint8DataWithPadding),
+ {
+ srcByteOffset: 0,
+ type: Uint8Array,
+ typedLength: expectedUint8DataWithPadding.length
+ }
+ );
+ return;
}
+ assert(isRegularTextureFormat(dstFormat));
+ const regularDstFormat = dstFormat;
+
// Verify the content of the whole subresource of dstTexture at dstCopyLevel (in dstBuffer) is expected.
- this.expectGPUBufferValuesPassCheck(
- dstBuffer,
- alternateExpectedData === expectedUint8DataWithPadding ?
- (vals) => checkElementsEqual(vals, expectedUint8DataWithPadding) :
- (vals) =>
- checkElementsEqualEither(vals, [expectedUint8DataWithPadding, alternateExpectedData]),
- {
- srcByteOffset: 0,
- type: Uint8Array,
- typedLength: expectedUint8DataWithPadding.length
+ const checkByTextureFormat = (actual) => {
+ const zero = { x: 0, y: 0, z: 0 };
+
+ const actTexelView = TexelView.fromTextureDataByReference(regularDstFormat, actual, {
+ bytesPerRow: bytesInRow,
+ rowsPerImage: dstBlockRowsPerImage,
+ subrectOrigin: zero,
+ subrectSize: dstTextureSizeAtLevel
+ });
+ const expTexelView = TexelView.fromTextureDataByReference(
+ regularDstFormat,
+ expectedUint8DataWithPadding,
+ {
+ bytesPerRow: bytesInRow,
+ rowsPerImage: dstBlockRowsPerImage,
+ subrectOrigin: zero,
+ subrectSize: dstTextureSizeAtLevel
+ }
+ );
+
+ const failedPixelsMessage = findFailedPixels(
+ regularDstFormat,
+ zero,
+ dstTextureSizeAtLevel,
+ { actTexelView, expTexelView },
+ {
+ maxFractionalDiff: 0
+ }
+ );
+
+ if (failedPixelsMessage !== undefined) {
+ const msg = 'Texture level had unexpected contents:\n' + failedPixelsMessage;
+ return new ErrorWithExtra(msg, () => ({
+ expTexelView,
+ actTexelView
+ }));
}
- );
+
+ return undefined;
+ };
+
+ this.expectGPUBufferValuesPassCheck(dstBuffer, checkByTextureFormat, {
+ srcByteOffset: 0,
+ type: Uint8Array,
+ typedLength: expectedUint8DataWithPadding.length
+ });
}
InitializeStencilAspect(
@@ -1349,6 +1376,9 @@ desc(
texture can only be 1.
`
).
+beforeAllSubcases((t) => {
+ t.skipIf(t.isCompatibility, 'multisample textures are not copyable in compatibility mode');
+}).
fn((t) => {
const textureSize = [32, 16, 1];
const kColorFormat = 'rgba8unorm';
@@ -1537,6 +1567,9 @@ desc(
texture can only be 1.
`
).
+beforeAllSubcases((t) => {
+ t.skipIf(t.isCompatibility, 'multisample textures are not copyable in compatibility mode');
+}).
fn((t) => {
const textureSize = [32, 16, 1];
const kDepthFormat = 'depth24plus';
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/image_copy.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/image_copy.spec.js
index a86ebec917..e054cea3a8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/image_copy.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/image_copy.spec.js
@@ -25,8 +25,9 @@
* copy_with_no_image_or_slice_padding_and_undefined_values: test that when copying a single row we can set any bytesPerRow value and when copying a single\
slice we can set rowsPerImage to 0. Also test setting offset, rowsPerImage, mipLevel, origin, origin.{x,y,z} to undefined.
+Note: more coverage of memory synchronization for different read and write texture methods are in same_subresource.spec.ts.
+
* TODO:
- - add another initMethod which renders the texture [3]
- test copyT2B with buffer size not divisible by 4 (not done because expectContents 4-byte alignment)
- Convert the float32 values in initialData into the ones compatible to the depth aspect of
depthFormats when depth16unorm is supported by the browsers in
@@ -86,7 +87,7 @@ import { findFailedPixels } from '../../../util/texture/texture_ok.js';
* - PartialCopyT2B: do CopyT2B to check that the part of the texture we copied to with InitMethod
* matches the data we were copying and that we don't overwrite any data in the target buffer that
* we're not supposed to - that's primarily for testing CopyT2B functionality.
- * - FullCopyT2B: do CopyT2B on the whole texture and check wether the part we copied to matches
+ * - FullCopyT2B: do CopyT2B on the whole texture and check whether the part we copied to matches
* the data we were copying and that the nothing else was modified - that's primarily for testing
* WriteTexture and CopyB2T.
*
@@ -1132,6 +1133,10 @@ class ImageCopyTest extends TextureTestMixin(GPUTest) {
copySize
);
+ const use2DArray = this.isCompatibility && inputTexture.depthOrArrayLayers > 1;
+ const [textureType, layerCode] = use2DArray ?
+ ['texture_2d_array', ', baseArrayLayer'] :
+ ['texture_2d', ''];
const renderPipeline = this.device.createRenderPipeline({
layout: 'auto',
vertex: {
@@ -1154,10 +1159,11 @@ class ImageCopyTest extends TextureTestMixin(GPUTest) {
fragment: {
module: this.device.createShaderModule({
code: `
- @group(0) @binding(0) var inputTexture: texture_2d<f32>;
+ @group(0) @binding(0) var inputTexture: ${textureType}<f32>;
+ @group(0) @binding(1) var<uniform> baseArrayLayer: u32;
@fragment fn main(@builtin(position) fragcoord : vec4<f32>) ->
@builtin(frag_depth) f32 {
- var depthValue : vec4<f32> = textureLoad(inputTexture, vec2<i32>(fragcoord.xy), 0);
+ var depthValue : vec4<f32> = textureLoad(inputTexture, vec2<i32>(fragcoord.xy)${layerCode}, 0);
return depthValue.x;
}`
}),
@@ -1200,19 +1206,26 @@ class ImageCopyTest extends TextureTestMixin(GPUTest) {
});
renderPass.setPipeline(renderPipeline);
+ const uniformBufferEntry = use2DArray ?
+ [this.createUniformBufferAndBindGroupEntryForBaseArrayLayer(z)] :
+ [];
+
const bindGroup = this.device.createBindGroup({
layout: renderPipeline.getBindGroupLayout(0),
entries: [
{
binding: 0,
resource: inputTexture.createView({
- dimension: '2d',
- baseArrayLayer: z,
- arrayLayerCount: 1,
+ dimension: use2DArray ? '2d-array' : '2d',
+ ...(!use2DArray && {
+ baseArrayLayer: z,
+ arrayLayerCount: 1
+ }),
baseMipLevel: 0,
mipLevelCount: 1
})
- }]
+ },
+ ...uniformBufferEntry]
});
renderPass.setBindGroup(0, bindGroup);
@@ -1223,6 +1236,23 @@ class ImageCopyTest extends TextureTestMixin(GPUTest) {
this.queue.submit([encoder.finish()]);
}
+ createUniformBufferAndBindGroupEntryForBaseArrayLayer(z) {
+ const buffer = this.device.createBuffer({
+ usage: GPUBufferUsage.UNIFORM,
+ size: 4,
+ mappedAtCreation: true
+ });
+ this.trackForCleanup(buffer);
+ new Uint32Array(buffer.getMappedRange()).set([z]);
+ buffer.unmap();
+ return {
+ binding: 1,
+ resource: {
+ buffer
+ }
+ };
+ }
+
DoCopyTextureToBufferWithDepthAspectTest(
format,
copySize,
@@ -1328,8 +1358,6 @@ class ImageCopyTest extends TextureTestMixin(GPUTest) {
/**
* This is a helper function used for filtering test parameters
- *
- * [3]: Modify this after introducing tests with rendering.
*/
function formatCanBeTested({ format }) {
return kTextureFormatInfo[format].color.copyDst && kTextureFormatInfo[format].color.copySrc;
@@ -1491,6 +1519,12 @@ works for every format with 2d and 2d-array textures.
offset + bytesInCopyExtentPerRow { ==, > } bytesPerRow
offset > bytesInACompleteCopyImage
+ Covers spceial cases for OpenGL Compat:
+ offset % 4 > 0 while:
+ - padding bytes at end of each row/layer: bytesPerRow % 256 > 0 || rowsPerImage > copyDepth
+ - rows/layers are compact: bytesPerRow % 256 == 0 && rowsPerImage == copyDepth
+ - padding bytes at front and end of the same 4-byte word: format == 'r8snorm' && copyWidth <= 2
+
TODO: Cover the special code paths for 3D textures in D3D12.
TODO: Make a variant for depth-stencil formats.
`
@@ -1505,7 +1539,19 @@ filter(({ dimension, format }) => textureDimensionAndFormatCompatible(dimension,
beginSubcases().
combineWithParams(kOffsetsAndSizesParams.offsetsAndPaddings).
combine('copyDepth', kOffsetsAndSizesParams.copyDepth) // 2d and 2d-array textures
-.unless((p) => p.dimension === '1d' && p.copyDepth !== 1)
+.combine('copyWidth', [3, 1, 2, 127, 128, 255, 256]) // copyWidth === 3 is the default. Others covers special cases for r8snorm and rg8snorm on compatiblity mode.
+.filter(({ format, copyWidth }) => {
+ switch (format) {
+ case 'r8snorm':
+ case 'rg8snorm':
+ return true;
+ default:
+ // Restrict test parameters to save run time.
+ return copyWidth === 3;
+ }
+}).
+combine('rowsPerImageEqualsCopyHeight', [true, false]).
+unless((p) => p.dimension === '1d' && p.copyDepth !== 1)
).
beforeAllSubcases((t) => {
const info = kTextureFormatInfo[t.params.format];
@@ -1520,26 +1566,44 @@ fn((t) => {
format,
dimension,
initMethod,
- checkMethod
+ checkMethod,
+ copyWidth,
+ rowsPerImageEqualsCopyHeight
} = t.params;
+
+ // Skip test cases designed for special cases coverage on compatibility mode to save run time.
+ if (!(t.isCompatibility && (format === 'r8snorm' || format === 'rg8snorm'))) {
+ if (rowsPerImageEqualsCopyHeight === false) {
+ t.skip(
+ 'rowsPerImageEqualsCopyHeight === false is only for r8snorm and rg8snorm on compatibility mode'
+ );
+ }
+
+ if (copyWidth !== 3) {
+ t.skip('copyWidth !== 3 is only for r8snorm and rg8snorm on compatibility mode');
+ }
+ }
+
const info = kTextureFormatInfo[format];
const offset = offsetInBlocks * info.color.bytes;
+ const copyHeight = 3;
const copySize = {
- width: 3 * info.blockWidth,
- height: 3 * info.blockHeight,
+ width: copyWidth * info.blockWidth,
+ height: copyHeight * info.blockHeight,
depthOrArrayLayers: copyDepth
};
let textureHeight = 4 * info.blockHeight;
- let rowsPerImage = 3;
- const bytesPerRow = 256;
+ let rowsPerImage = rowsPerImageEqualsCopyHeight ? copyHeight : copyHeight + 1;
+ const bytesPerRow = align(copyWidth * info.color.bytes, 256);
if (dimension === '1d') {
copySize.height = 1;
textureHeight = info.blockHeight;
rowsPerImage = 1;
}
- const textureSize = [4 * info.blockWidth, textureHeight, copyDepth];
+ // Add textureWidth by 1 to make sure we are doing a partial copy.
+ const textureSize = [(copyWidth + 1) * info.blockWidth, textureHeight, copyDepth];
const minDataSize = dataBytesForCopyOrFail({
layout: { offset, bytesPerRow, rowsPerImage },
@@ -1549,7 +1613,7 @@ fn((t) => {
});
const dataSize = minDataSize + dataPaddingInBytes;
- // We're copying a (3 x 3 x copyDepth) (in texel blocks) part of a (4 x 4 x copyDepth)
+ // We're copying a (copyWidth x 3 x copyDepth) (in texel blocks) part of a ((copyWidth + 1) x 4 x copyDepth)
// (in texel blocks) texture with no origin.
t.uploadTextureAndVerifyCopy({
textureDataLayout: { offset, bytesPerRow, rowsPerImage },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.js
index 716b59fd6f..fc25802db4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.js
@@ -695,7 +695,7 @@ fn(async (t) => {
const expectPassed = !occluded;
t.expect(
!!passed === expectPassed,
- `queryIndex: ${queryIndex}, scissorCase: ${scissorCase}, was: ${!!passed}, expected: ${expectPassed}, ${name}`
+ `queryIndex: ${queryIndex}, scissorCase: ${scissorCase}, was: ${!!passed}, expected: ${expectPassed}`
);
}
);
@@ -739,7 +739,7 @@ fn(async (t) => {
const expectPassed = queryIndex % 2 === 0;
t.expect(
!!passed === expectPassed,
- `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}, ${name}`
+ `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}`
);
}
);
@@ -783,7 +783,7 @@ fn(async (t) => {
const expectPassed = queryIndex % 2 === 0;
t.expect(
!!passed === expectPassed,
- `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}, ${name}`
+ `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}`
);
}
);
@@ -851,7 +851,7 @@ fn(async (t) => {
const expectPassed = !!(sampleMask & drawMask);
t.expect(
!!passed === expectPassed,
- `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}, ${name}`
+ `queryIndex: ${queryIndex}, was: ${!!passed}, expected: ${expectPassed}`
);
}
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil.spec.js
new file mode 100644
index 0000000000..a52c12f8e9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/memory_sync/texture/readonly_depth_stencil.spec.js
@@ -0,0 +1,329 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Memory synchronization tests for depth-stencil attachments in a single pass, with checks for readonlyness.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { kDepthStencilFormats, kTextureFormatInfo } from '../../../../format_info.js';
+import { GPUTest } from '../../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('sampling_while_testing').
+desc(
+ `Tests concurrent sampling and testing of readonly depth-stencil attachments in a render pass.
+ - Test for all depth-stencil formats.
+ - Test for all valid combinations of depth/stencilReadOnly.
+
+In particular this test checks that a non-readonly aspect can be rendered to, and used for depth/stencil
+testing while the other one is used for sampling.
+ `
+).
+params((p) =>
+p.
+combine('format', kDepthStencilFormats) //
+.combine('depthReadOnly', [true, false, undefined]).
+combine('stencilReadOnly', [true, false, undefined]).
+filter((p) => {
+ const info = kTextureFormatInfo[p.format];
+ const depthMatch = info.depth === undefined === (p.depthReadOnly === undefined);
+ const stencilMatch = info.stencil === undefined === (p.stencilReadOnly === undefined);
+ return depthMatch && stencilMatch;
+})
+).
+beforeAllSubcases((t) => {
+ const { format } = t.params;
+ const formatInfo = kTextureFormatInfo[format];
+ const hasDepth = formatInfo.depth !== undefined;
+ const hasStencil = formatInfo.stencil !== undefined;
+
+ t.selectDeviceForTextureFormatOrSkipTestCase(t.params.format);
+ t.skipIf(
+ t.isCompatibility && hasDepth && hasStencil,
+ 'compatibility mode does not support different TEXTURE_BINDING views of the same texture in a single draw calls'
+ );
+}).
+fn((t) => {
+ const { format, depthReadOnly, stencilReadOnly } = t.params;
+ const formatInfo = kTextureFormatInfo[format];
+ const hasDepth = formatInfo.depth !== undefined;
+ const hasStencil = formatInfo.stencil !== undefined;
+
+ // The 3x3 depth stencil texture used for the tests.
+ const ds = t.device.createTexture({
+ label: 'testTexture',
+ size: [3, 3],
+ format,
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.TEXTURE_BINDING
+ });
+ t.trackForCleanup(ds);
+
+ // Fill the texture along the X axis with stencil values 1, 2, 3 and along the Y axis depth
+ // values 0.1, 0.2, 0.3. The depth value is written using @builtin(frag_depth) while the
+ // stencil is written using stencil operation and modifying the stencilReference.
+ const initModule = t.device.createShaderModule({
+ code: `
+ @vertex fn vs(
+ @builtin(instance_index) x : u32, @builtin(vertex_index) y : u32
+ ) -> @builtin(position) vec4f {
+ let texcoord = (vec2f(f32(x), f32(y)) + vec2f(0.5)) / 3;
+ return vec4f((texcoord * 2) - vec2f(1.0), 0, 1);
+ }
+ @fragment fn fs_with_depth(@builtin(position) pos : vec4f) -> @builtin(frag_depth) f32 {
+ return (pos.y + 0.5) / 10;
+ }
+ @fragment fn fs_no_depth() {
+ }
+ `
+ });
+ const initPipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ label: 'initPipeline',
+ vertex: { module: initModule },
+ fragment: {
+ module: initModule,
+ targets: [],
+ entryPoint: hasDepth ? 'fs_with_depth' : 'fs_no_depth'
+ },
+ depthStencil: {
+ format,
+ ...(hasDepth && {
+ depthWriteEnabled: true,
+ depthCompare: 'always'
+ }),
+ ...(hasStencil && {
+ stencilBack: { compare: 'always', passOp: 'replace' },
+ stencilFront: { compare: 'always', passOp: 'replace' }
+ })
+ },
+ primitive: { topology: 'point-list' }
+ });
+
+ const encoder = t.device.createCommandEncoder();
+
+ const initPass = encoder.beginRenderPass({
+ colorAttachments: [],
+ depthStencilAttachment: {
+ view: ds.createView(),
+ ...(hasDepth && {
+ depthStoreOp: 'store',
+ depthLoadOp: 'clear',
+ depthClearValue: 0
+ }),
+ ...(hasStencil && {
+ stencilStoreOp: 'store',
+ stencilLoadOp: 'clear',
+ stencilClearValue: 0
+ })
+ }
+ });
+ initPass.setPipeline(initPipeline);
+ for (let i = 0; i < 3; i++) {
+ initPass.setStencilReference(i + 1);
+ // Draw 3 points (Y = 0, 1, 2) at X = instance_index = i.
+ initPass.draw(3, 1, 0, i);
+ }
+ initPass.end();
+
+ // Perform the actual test:
+ // - The shader outputs depth 0.15 and stencil 2 (via stencilReference).
+ // - Test that the fragdepth / stencilref must be <= to what's in the depth-stencil attachment.
+ // -> Fragments that have depth 0.1 or stencil 1 are tested out.
+ // - Test that sampling the depth / stencil (when possible) is <= 0.2 for depth, <= 2 for stencil
+ // -> Fragments that have depth 0.3 or stencil 3 are discarded if that aspect is readonly.
+ // - Write the depth / increment the stencil if the aspect is not readonly.
+ // -> After the test, fragments that passed will have non-readonly aspects updated.
+ const kFragDepth = 0.15;
+ const kStencilRef = 2;
+ const testAndCheckModule = t.device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var depthTex : texture_2d<f32>;
+ @group(0) @binding(1) var stencilTex : texture_2d<u32>;
+
+ @vertex fn full_quad_vs(@builtin(vertex_index) id : u32) -> @builtin(position) vec4f {
+ let pos = array(vec2f(-3, -1), vec2(3, -1), vec2(0, 2));
+ return vec4f(pos[id], ${kFragDepth}, 1.0);
+ }
+
+ @fragment fn test_texture(@builtin(position) pos : vec4f) {
+ let texel = vec2u(floor(pos.xy));
+ if ${!!stencilReadOnly} && textureLoad(stencilTex, texel, 0).r > 2 {
+ discard;
+ }
+ if ${!!depthReadOnly} && textureLoad(depthTex, texel, 0).r > 0.21 {
+ discard;
+ }
+ }
+
+ @fragment fn check_texture(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ let texel = vec2u(floor(pos.xy));
+
+ // The current values in the framebuffer.
+ let initStencil = texel.x + 1;
+ let initDepth = f32(texel.y + 1) / 10.0;
+
+ // Expected results of the test_texture step.
+ let stencilTestPasses = !${hasStencil} || ${kStencilRef} <= initStencil;
+ let depthTestPasses = !${hasDepth} || ${kFragDepth} <= initDepth;
+ let fsDiscards = (${!!stencilReadOnly} && initStencil > 2) ||
+ (${!!depthReadOnly} && initDepth > 0.21);
+
+ // Compute the values that should be in the framebuffer.
+ var stencil = initStencil;
+ var depth = initDepth;
+
+ // When the fragments aren't discarded, fragment output operations happen.
+ if depthTestPasses && stencilTestPasses && !fsDiscards {
+ if ${!stencilReadOnly} {
+ stencil += 1;
+ }
+ if ${!depthReadOnly} {
+ depth = ${kFragDepth};
+ }
+ }
+
+ if ${hasStencil} && textureLoad(stencilTex, texel, 0).r != stencil {
+ return 0;
+ }
+ if ${hasDepth} && abs(textureLoad(depthTex, texel, 0).r - depth) > 0.01 {
+ return 0;
+ }
+ return 1;
+ }
+ `
+ });
+ const testPipeline = t.device.createRenderPipeline({
+ label: 'testPipeline',
+ layout: 'auto',
+ vertex: { module: testAndCheckModule },
+ fragment: { module: testAndCheckModule, entryPoint: 'test_texture', targets: [] },
+ depthStencil: {
+ format,
+ ...(hasDepth && {
+ depthCompare: 'less-equal',
+ depthWriteEnabled: !depthReadOnly
+ }),
+ ...(hasStencil && {
+ stencilBack: {
+ compare: 'less-equal',
+ passOp: stencilReadOnly ? 'keep' : 'increment-clamp'
+ },
+ stencilFront: {
+ compare: 'less-equal',
+ passOp: stencilReadOnly ? 'keep' : 'increment-clamp'
+ }
+ })
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+
+ // Make fake stencil or depth textures to put in the bindgroup if the aspect is not readonly.
+ const fakeStencil = t.device.createTexture({
+ label: 'fakeStencil',
+ format: 'r32uint',
+ size: [1, 1],
+ usage: GPUTextureUsage.TEXTURE_BINDING
+ });
+ t.trackForCleanup(fakeStencil);
+ const fakeDepth = t.device.createTexture({
+ label: 'fakeDepth',
+ format: 'r32float',
+ size: [1, 1],
+ usage: GPUTextureUsage.TEXTURE_BINDING
+ });
+ t.trackForCleanup(fakeDepth);
+ const stencilView = stencilReadOnly ?
+ ds.createView({ aspect: 'stencil-only' }) :
+ fakeStencil.createView();
+ const depthView = depthReadOnly ?
+ ds.createView({ aspect: 'depth-only' }) :
+ fakeDepth.createView();
+ const testBindGroup = t.device.createBindGroup({
+ layout: testPipeline.getBindGroupLayout(0),
+ entries: [
+ { binding: 0, resource: depthView },
+ { binding: 1, resource: stencilView }]
+
+ });
+
+ // Run the test.
+ const testPass = encoder.beginRenderPass({
+ colorAttachments: [],
+ depthStencilAttachment: {
+ view: ds.createView(),
+ ...(hasDepth && (
+ depthReadOnly ?
+ { depthReadOnly: true } :
+ {
+ depthStoreOp: 'store',
+ depthLoadOp: 'load'
+ })),
+ ...(hasStencil && (
+ stencilReadOnly ?
+ { stencilReadOnly: true } :
+ {
+ stencilStoreOp: 'store',
+ stencilLoadOp: 'load'
+ }))
+ }
+ });
+ testPass.setPipeline(testPipeline);
+ testPass.setStencilReference(kStencilRef);
+ testPass.setBindGroup(0, testBindGroup);
+ testPass.draw(3);
+ testPass.end();
+
+ // Check that the contents of the textures are what we expect. See the shader module for the
+ // computation of what's expected, it writes a 1 on success, 0 otherwise.
+ const checkPipeline = t.device.createRenderPipeline({
+ label: 'checkPipeline',
+ layout: 'auto',
+ vertex: { module: testAndCheckModule },
+ fragment: {
+ module: testAndCheckModule,
+ entryPoint: 'check_texture',
+ targets: [{ format: 'r32uint' }]
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+ const checkBindGroup = t.device.createBindGroup({
+ layout: checkPipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: hasDepth ? ds.createView({ aspect: 'depth-only' }) : fakeDepth.createView()
+ },
+ {
+ binding: 1,
+ resource: hasStencil ?
+ ds.createView({ aspect: 'stencil-only' }) :
+ fakeStencil.createView()
+ }]
+
+ });
+
+ const resultTexture = t.device.createTexture({
+ label: 'resultTexture',
+ format: 'r32uint',
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_SRC,
+ size: [3, 3]
+ });
+ const checkPass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: resultTexture.createView(),
+ loadOp: 'clear',
+ clearValue: [0, 0, 0, 0],
+ storeOp: 'store'
+ }]
+
+ });
+ checkPass.setPipeline(checkPipeline);
+ checkPass.setBindGroup(0, checkBindGroup);
+ checkPass.draw(3);
+ checkPass.end();
+
+ t.queue.submit([encoder.finish()]);
+
+ // The check texture should be full of success (a.k.a. 1)!
+ t.expectSingleColor(resultTexture, resultTexture.format, { size: [3, 3, 1], exp: { R: 1 } });
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/reflection.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/reflection.spec.js
index da9d90b819..3fd7746ebe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/reflection.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/reflection.spec.js
@@ -8,26 +8,38 @@ import { GPUTest } from '../../gpu_test.js';
export const g = makeTestGroup(GPUTest);
-g.test('buffer_reflection_attributes').
-desc(`For every buffer attribute, the corresponding descriptor value is carried over.`).
-paramsSubcasesOnly((u) =>
-u.combine('descriptor', [
+function* extractValuePropertyKeys(obj) {
+ for (const key in obj) {
+ if (typeof obj[key] !== 'function') {
+ yield key;
+ }
+ }
+}
+
+const kBufferSubcases =
+
+
+
+
+[
{ size: 4, usage: GPUConst.BufferUsage.VERTEX },
{
size: 16,
usage:
- GPUConst.BufferUsage.STORAGE |
- GPUConst.BufferUsage.COPY_SRC |
- GPUConst.BufferUsage.UNIFORM
+ GPUConst.BufferUsage.STORAGE | GPUConst.BufferUsage.COPY_SRC | GPUConst.BufferUsage.UNIFORM
},
{ size: 32, usage: GPUConst.BufferUsage.MAP_READ | GPUConst.BufferUsage.COPY_DST },
+{ size: 40, usage: GPUConst.BufferUsage.INDEX, label: 'some label' },
{
size: 32,
usage: GPUConst.BufferUsage.MAP_READ | GPUConst.BufferUsage.MAP_WRITE,
invalid: true
-}]
-)
-).
+}];
+
+
+g.test('buffer_reflection_attributes').
+desc(`For every buffer attribute, the corresponding descriptor value is carried over.`).
+paramsSubcasesOnly((u) => u.combine('descriptor', kBufferSubcases)).
fn((t) => {
const { descriptor } = t.params;
@@ -39,16 +51,62 @@ fn((t) => {
}, descriptor.invalid === true);
});
-g.test('texture_reflection_attributes').
-desc(`For every texture attribute, the corresponding descriptor value is carried over.`).
+g.test('buffer_creation_from_reflection').
+desc(
+ `
+ Check that you can create a buffer from a buffer's reflection.
+ This check is to insure that as WebGPU develops this path doesn't
+ suddenly break because of new reflection.
+ `
+).
paramsSubcasesOnly((u) =>
-u.combine('descriptor', [
+u.combine('descriptor', kBufferSubcases).filter((p) => !p.descriptor.invalid)
+).
+
+fn((t) => {
+ const { descriptor } = t.params;
+
+ const buffer = t.device.createBuffer(descriptor);
+ t.trackForCleanup(buffer);
+ const buffer2 = t.device.createBuffer(buffer);
+ t.trackForCleanup(buffer2);
+
+ const bufferAsObject = buffer;
+ const buffer2AsObject = buffer2;
+ const keys = [...extractValuePropertyKeys(bufferAsObject)];
+
+ // Sanity check
+ t.expect(keys.includes('size'));
+ t.expect(keys.includes('usage'));
+ t.expect(keys.includes('label'));
+
+ for (const key of keys) {
+ t.expect(bufferAsObject[key] === buffer2AsObject[key], key);
+ }
+});
+
+const kTextureSubcases =
+
+
+
+
+
+
+
+
+[
{
size: { width: 4, height: 4 },
format: 'rgba8unorm',
usage: GPUConst.TextureUsage.TEXTURE_BINDING
},
{
+ size: { width: 4, height: 4 },
+ format: 'rgba8unorm',
+ usage: GPUConst.TextureUsage.TEXTURE_BINDING,
+ label: 'some label'
+},
+{
size: { width: 8, height: 8, depthOrArrayLayers: 8 },
format: 'bgra8unorm',
usage: GPUConst.TextureUsage.RENDER_ATTACHMENT | GPUConst.TextureUsage.COPY_SRC
@@ -83,9 +141,12 @@ u.combine('descriptor', [
usage: GPUConst.TextureUsage.TEXTURE_BINDING,
sampleCount: 4,
invalid: true
-}]
-)
-).
+}];
+
+
+g.test('texture_reflection_attributes').
+desc(`For every texture attribute, the corresponding descriptor value is carried over.`).
+paramsSubcasesOnly((u) => u.combine('descriptor', kTextureSubcases)).
fn((t) => {
const { descriptor } = t.params;
@@ -116,15 +177,74 @@ fn((t) => {
}, descriptor.invalid === true);
});
-g.test('query_set_reflection_attributes').
-desc(`For every queue attribute, the corresponding descriptor value is carried over.`).
+
+
+
+
+g.test('texture_creation_from_reflection').
+desc(
+ `
+ Check that you can create a texture from a texture's reflection.
+ This check is to insure that as WebGPU develops this path doesn't
+ suddenly break because of new reflection.
+ `
+).
paramsSubcasesOnly((u) =>
-u.combine('descriptor', [
+u.combine('descriptor', kTextureSubcases).filter((p) => !p.descriptor.invalid)
+).
+fn((t) => {
+ const { descriptor } = t.params;
+
+ const texture = t.device.createTexture(descriptor);
+ t.trackForCleanup(texture);
+ const textureWithSize = texture;
+ textureWithSize.size = [texture.width, texture.height, texture.depthOrArrayLayers];
+ const texture2 = t.device.createTexture(textureWithSize);
+ t.trackForCleanup(texture2);
+
+ const textureAsObject = texture;
+ const texture2AsObject = texture2;
+ const keys = [...extractValuePropertyKeys(textureAsObject)].filter((k) => k !== 'size');
+
+ // Sanity check
+ t.expect(keys.includes('format'));
+ t.expect(keys.includes('usage'));
+ t.expect(keys.includes('label'));
+
+ for (const key of keys) {
+ t.expect(textureAsObject[key] === texture2AsObject[key], key);
+ }
+
+ // MAINTENANCE_TODO: Check this if it is made possible by a spec change.
+ //
+ // texture3 = t.device.createTexture({
+ // ...texture,
+ // size: [texture.width, texture.height, texture.depthOrArrayLayers],
+ // });
+ //
+ // and this
+ //
+ // texture3 = t.device.createTexture({
+ // size: [texture.width, texture.height, texture.depthOrArrayLayers],
+ // ...texture,
+ // });
+});
+
+const kQuerySetSubcases =
+
+
+
+
+[
{ type: 'occlusion', count: 4 },
{ type: 'occlusion', count: 16 },
-{ type: 'occlusion', count: 8193, invalid: true }]
-)
-).
+{ type: 'occlusion', count: 32, label: 'some label' },
+{ type: 'occlusion', count: 8193, invalid: true }];
+
+
+g.test('query_set_reflection_attributes').
+desc(`For every queue attribute, the corresponding descriptor value is carried over.`).
+paramsSubcasesOnly((u) => u.combine('descriptor', kQuerySetSubcases)).
fn((t) => {
const { descriptor } = t.params;
@@ -134,4 +254,37 @@ fn((t) => {
t.expect(querySet.type === descriptor.type);
t.expect(querySet.count === descriptor.count);
}, descriptor.invalid === true);
+});
+
+g.test('query_set_creation_from_reflection').
+desc(
+ `
+ Check that you can create a queryset from a queryset's reflection.
+ This check is to insure that as WebGPU develops this path doesn't
+ suddenly break because of new reflection.
+ `
+).
+paramsSubcasesOnly((u) =>
+u.combine('descriptor', kQuerySetSubcases).filter((p) => !p.descriptor.invalid)
+).
+fn((t) => {
+ const { descriptor } = t.params;
+
+ const querySet = t.device.createQuerySet(descriptor);
+ t.trackForCleanup(querySet);
+ const querySet2 = t.device.createQuerySet(querySet);
+ t.trackForCleanup(querySet2);
+
+ const querySetAsObject = querySet;
+ const querySet2AsObject = querySet2;
+ const keys = [...extractValuePropertyKeys(querySetAsObject)];
+
+ // Sanity check
+ t.expect(keys.includes('type'));
+ t.expect(keys.includes('count'));
+ t.expect(keys.includes('label'));
+
+ for (const key of keys) {
+ t.expect(querySetAsObject[key] === querySet2AsObject[key], key);
+ }
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/render_pipeline/sample_mask.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/render_pipeline/sample_mask.spec.js
index 60487998df..0afa98e254 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/render_pipeline/sample_mask.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/render_pipeline/sample_mask.spec.js
@@ -8,6 +8,8 @@ Also tested:
- The positions of samples in the standard sample patterns.
- Per-sample interpolation sampling: @interpolate(perspective, sample).
+TODO: Test sample_mask as an input.
+
TODO: add a test without a 0th color attachment (sparse color attachment), with different color attachments and alpha value output.
The cross-platform behavior is unknown. could be any of:
- coverage is always 100%
@@ -19,7 +21,7 @@ Details could be found at: https://github.com/gpuweb/cts/issues/2201
import { assert, range } from '../../../../common/util/util.js';
import { GPUTest, TextureTestMixin } from '../../../gpu_test.js';
import { checkElementsPassPredicate, checkElementsEqual } from '../../../util/check_contents.js';
-import { TypeF32, TypeU32 } from '../../../util/conversion.js';
+import { Type } from '../../../util/conversion.js';
import { TexelView } from '../../../util/texture/texel_view.js';
const kColors = [
@@ -435,8 +437,8 @@ class F extends TextureTestMixin(GPUTest) {
sampleMask,
fragmentShaderOutputMask)
{
- const buffer = this.copySinglePixelTextureToBufferUsingComputePass(
- TypeF32, // correspond to 'rgba8unorm' format
+ const buffer = this.copy2DTextureToBufferUsingComputePass(
+ Type.f32, // correspond to 'rgba8unorm' format
4,
texture.createView(),
sampleCount
@@ -459,10 +461,10 @@ class F extends TextureTestMixin(GPUTest) {
sampleMask,
fragmentShaderOutputMask)
{
- const buffer = this.copySinglePixelTextureToBufferUsingComputePass(
+ const buffer = this.copy2DTextureToBufferUsingComputePass(
// Use f32 as the scalar type for depth (depth24plus, depth32float)
// Use u32 as the scalar type for stencil (stencil8)
- aspect === 'depth-only' ? TypeF32 : TypeU32,
+ aspect === 'depth-only' ? Type.f32 : Type.u32,
1,
depthStencilTexture.createView({ aspect }),
sampleCount
@@ -702,8 +704,8 @@ fn(async (t) => {
2
);
- const colorBuffer = t.copySinglePixelTextureToBufferUsingComputePass(
- TypeF32, // correspond to 'rgba8unorm' format
+ const colorBuffer = t.copy2DTextureToBufferUsingComputePass(
+ Type.f32, // correspond to 'rgba8unorm' format
4,
color.createView(),
sampleCount
@@ -714,8 +716,8 @@ fn(async (t) => {
});
colorResultPromises.push(colorResult);
- const depthBuffer = t.copySinglePixelTextureToBufferUsingComputePass(
- TypeF32, // correspond to 'depth24plus-stencil8' format
+ const depthBuffer = t.copy2DTextureToBufferUsingComputePass(
+ Type.f32, // correspond to 'depth24plus-stencil8' format
1,
depthStencil.createView({ aspect: 'depth-only' }),
sampleCount
@@ -726,8 +728,8 @@ fn(async (t) => {
});
depthResultPromises.push(depthResult);
- const stencilBuffer = t.copySinglePixelTextureToBufferUsingComputePass(
- TypeU32, // correspond to 'depth24plus-stencil8' format
+ const stencilBuffer = t.copy2DTextureToBufferUsingComputePass(
+ Type.u32, // correspond to 'depth24plus-stencil8' format
1,
depthStencil.createView({ aspect: 'stencil-only' }),
sampleCount
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/3d_texture_slices.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/3d_texture_slices.spec.js
new file mode 100644
index 0000000000..9146505064
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/3d_texture_slices.spec.js
@@ -0,0 +1,363 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Test rendering to 3d texture slices.
+- Render to same slice on different render pass, different textures, or texture [1, 1, N]'s different mip levels
+- Render to different slices at mip levels on same texture in render pass
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { kTextureFormatInfo } from '../../../format_info.js';
+import { GPUTest } from '../../../gpu_test.js';
+import { kBytesPerRowAlignment } from '../../../util/texture/layout.js';
+
+const kSize = 4;
+const kFormat = 'rgba8unorm';
+
+class F extends GPUTest {
+ createShaderModule(attachmentCount = 1) {
+ let locations = '';
+ let outputs = '';
+ for (let i = 0; i < attachmentCount; i++) {
+ locations = locations + `@location(${i}) color${i} : vec4f, \n`;
+ outputs = outputs + `output.color${i} = vec4f(0.0, 1.0, 0.0, 1.0);\n`;
+ }
+
+ return this.device.createShaderModule({
+ code: `
+ struct Output {
+ ${locations}
+ }
+
+ @vertex
+ fn main_vs(@builtin(vertex_index) VertexIndex : u32) -> @builtin(position) vec4<f32> {
+ var pos : array<vec2<f32>, 3> = array<vec2<f32>, 3>(
+ // Triangle is slightly extended so its edge doesn't cut through pixel centers.
+ vec2<f32>(-1.0, 1.01),
+ vec2<f32>(1.01, -1.0),
+ vec2<f32>(-1.0, -1.0));
+ return vec4<f32>(pos[VertexIndex], 0.0, 1.0);
+ }
+
+ @fragment
+ fn main_fs() -> Output {
+ var output : Output;
+ ${outputs}
+ return output;
+ }
+ `
+ });
+ }
+
+ getBufferSizeAndOffset(
+ attachmentWidth,
+ attachmentHeight,
+ attachmentCount)
+ {
+ const bufferSize =
+ (attachmentCount * attachmentHeight - 1) * kBytesPerRowAlignment + attachmentWidth * 4;
+ const bufferOffset = attachmentCount > 1 ? attachmentHeight * kBytesPerRowAlignment : 0;
+ return { bufferSize, bufferOffset };
+ }
+
+ checkAttachmentResult(
+ attachmentWidth,
+ attachmentHeight,
+ attachmentCount,
+ buffer)
+ {
+ const { bufferSize, bufferOffset } = this.getBufferSizeAndOffset(
+ attachmentWidth,
+ attachmentHeight,
+ attachmentCount
+ );
+ const expectedData = new Uint8Array(bufferSize);
+ for (let i = 0; i < attachmentCount; i++) {
+ for (let j = 0; j < attachmentHeight; j++) {
+ for (let k = 0; k < attachmentWidth; k++) {
+ expectedData[i * bufferOffset + j * 256 + k * 4] = k <= j ? 0x00 : 0xff;
+ expectedData[i * bufferOffset + j * 256 + k * 4 + 1] = k <= j ? 0xff : 0x00;
+ expectedData[i * bufferOffset + j * 256 + k * 4 + 2] = 0x00;
+ expectedData[i * bufferOffset + j * 256 + k * 4 + 3] = 0xff;
+ }
+ }
+ }
+
+ this.expectGPUBufferValuesEqual(buffer, expectedData);
+ }
+}
+
+export const g = makeTestGroup(F);
+
+g.test('one_color_attachment,mip_levels').
+desc(
+ `
+ Render to a 3d texture slice with mip levels.
+ `
+).
+params((u) => u.combine('mipLevel', [0, 1, 2]).combine('depthSlice', [0, 1])).
+fn((t) => {
+ const { mipLevel, depthSlice } = t.params;
+
+ const texture = t.device.createTexture({
+ size: [kSize << mipLevel, kSize << mipLevel, 2 << mipLevel],
+ dimension: '3d',
+ format: kFormat,
+ mipLevelCount: mipLevel + 1,
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_SRC
+ });
+
+ const { bufferSize } = t.getBufferSizeAndOffset(kSize, kSize, 1);
+
+ const buffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+
+ const module = t.createShaderModule();
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: {
+ module,
+ targets: [{ format: kFormat }]
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: texture.createView({
+ baseMipLevel: mipLevel,
+ mipLevelCount: 1
+ }),
+ depthSlice,
+ clearValue: { r: 1.0, g: 0.0, b: 0.0, a: 1.0 },
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
+
+ });
+ pass.setPipeline(pipeline);
+ pass.draw(3);
+ pass.end();
+ encoder.copyTextureToBuffer(
+ { texture, mipLevel, origin: { x: 0, y: 0, z: depthSlice } },
+ { buffer, bytesPerRow: 256 },
+ { width: kSize, height: kSize, depthOrArrayLayers: 1 }
+ );
+ t.device.queue.submit([encoder.finish()]);
+
+ t.checkAttachmentResult(kSize, kSize, 1, buffer);
+});
+
+g.test('multiple_color_attachments,same_mip_level').
+desc(
+ `
+ Render to the different slices of 3d texture in multiple color attachments.
+ - Same 3d texture with different slices at same mip level
+ - Different 3d textures with same slice at same mip level
+ `
+).
+params((u) =>
+u.
+combine('sameTexture', [true, false]).
+beginSubcases().
+combine('samePass', [true, false]).
+combine('mipLevel', [0, 1])
+).
+fn((t) => {
+ const { sameTexture, samePass, mipLevel } = t.params;
+
+ const formatByteCost = kTextureFormatInfo[kFormat].colorRender.byteCost;
+ const maxAttachmentCountPerSample = Math.trunc(
+ t.device.limits.maxColorAttachmentBytesPerSample / formatByteCost
+ );
+ const attachmentCount = Math.min(
+ maxAttachmentCountPerSample,
+ t.device.limits.maxColorAttachments
+ );
+
+ const descriptor = {
+ size: [kSize << mipLevel, kSize << mipLevel, 1 << attachmentCount << mipLevel],
+ dimension: '3d',
+ format: kFormat,
+ mipLevelCount: mipLevel + 1,
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_SRC
+ };
+
+ const texture = t.device.createTexture(descriptor);
+
+ const textures = [];
+ const colorAttachments = [];
+ for (let i = 0; i < attachmentCount; i++) {
+ if (sameTexture) {
+ textures.push(texture);
+ } else {
+ const diffTexture = t.device.createTexture(descriptor);
+ textures.push(diffTexture);
+ }
+
+ const colorAttachment = {
+ view: textures[i].createView({
+ baseMipLevel: mipLevel,
+ mipLevelCount: 1
+ }),
+ depthSlice: sameTexture ? i : 0,
+ clearValue: { r: 1.0, g: 0.0, b: 0.0, a: 1.0 },
+ loadOp: 'clear',
+ storeOp: 'store'
+ };
+
+ colorAttachments.push(colorAttachment);
+ }
+
+ const encoder = t.device.createCommandEncoder();
+
+ if (samePass) {
+ const module = t.createShaderModule(attachmentCount);
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: {
+ module,
+ targets: new Array(attachmentCount).fill({ format: kFormat })
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+
+ const pass = encoder.beginRenderPass({ colorAttachments });
+ pass.setPipeline(pipeline);
+ pass.draw(3);
+ pass.end();
+ } else {
+ const module = t.createShaderModule();
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: {
+ module,
+ targets: [{ format: kFormat }]
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+
+ for (let i = 0; i < attachmentCount; i++) {
+ const pass = encoder.beginRenderPass({ colorAttachments: [colorAttachments[i]] });
+ pass.setPipeline(pipeline);
+ pass.draw(3);
+ pass.end();
+ }
+ }
+
+ const { bufferSize, bufferOffset } = t.getBufferSizeAndOffset(kSize, kSize, attachmentCount);
+ const buffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+ for (let i = 0; i < attachmentCount; i++) {
+ encoder.copyTextureToBuffer(
+ {
+ texture: textures[i],
+ mipLevel,
+ origin: { x: 0, y: 0, z: sameTexture ? i : 0 }
+ },
+ { buffer, bytesPerRow: 256, offset: bufferOffset * i },
+ { width: kSize, height: kSize, depthOrArrayLayers: 1 }
+ );
+ }
+
+ t.device.queue.submit([encoder.finish()]);
+
+ t.checkAttachmentResult(kSize, kSize, attachmentCount, buffer);
+});
+
+g.test('multiple_color_attachments,same_slice_with_diff_mip_levels').
+desc(
+ `
+ Render to the same slice of a 3d texture at different mip levels in multiple color attachments.
+ - For texture size with 1x1xN, the same depth slice of different mip levels can be rendered.
+ `
+).
+params((u) => u.combine('depthSlice', [0, 1])).
+fn((t) => {
+ const { depthSlice } = t.params;
+
+ const kBaseSize = 1;
+
+ const formatByteCost = kTextureFormatInfo[kFormat].colorRender.byteCost;
+ const maxAttachmentCountPerSample = Math.trunc(
+ t.device.limits.maxColorAttachmentBytesPerSample / formatByteCost
+ );
+ const attachmentCount = Math.min(
+ maxAttachmentCountPerSample,
+ t.device.limits.maxColorAttachments
+ );
+
+ const module = t.createShaderModule(attachmentCount);
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: {
+ module,
+ targets: new Array(attachmentCount).fill({ format: kFormat })
+ },
+ primitive: { topology: 'triangle-list' }
+ });
+
+ const texture = t.device.createTexture({
+ size: [kBaseSize, kBaseSize, depthSlice + 1 << attachmentCount],
+ dimension: '3d',
+ format: kFormat,
+ mipLevelCount: attachmentCount,
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_SRC
+ });
+
+ const colorAttachments = [];
+ for (let i = 0; i < attachmentCount; i++) {
+ const colorAttachment = {
+ view: texture.createView({
+ baseMipLevel: i,
+ mipLevelCount: 1
+ }),
+ depthSlice,
+ clearValue: { r: 1.0, g: 0.0, b: 0.0, a: 1.0 },
+ loadOp: 'clear',
+ storeOp: 'store'
+ };
+
+ colorAttachments.push(colorAttachment);
+ }
+
+ const encoder = t.device.createCommandEncoder();
+
+ const pass = encoder.beginRenderPass({ colorAttachments });
+ pass.setPipeline(pipeline);
+ pass.draw(3);
+ pass.end();
+
+ const { bufferSize, bufferOffset } = t.getBufferSizeAndOffset(
+ kBaseSize,
+ kBaseSize,
+ attachmentCount
+ );
+ const buffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+ for (let i = 0; i < attachmentCount; i++) {
+ encoder.copyTextureToBuffer(
+ { texture, mipLevel: i, origin: { x: 0, y: 0, z: depthSlice } },
+ { buffer, bytesPerRow: 256, offset: bufferOffset * i },
+ { width: kBaseSize, height: kBaseSize, depthOrArrayLayers: 1 }
+ );
+ }
+
+ t.device.queue.submit([encoder.finish()]);
+
+ t.checkAttachmentResult(kBaseSize, kBaseSize, attachmentCount, buffer);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/color_target_state.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/color_target_state.spec.js
index 4e0a49f507..f23ea3ed62 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/color_target_state.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/color_target_state.spec.js
@@ -11,7 +11,7 @@ TODO:
import { assert, unreachable } from '../../../../common/util/util.js';
import { kBlendFactors, kBlendOperations } from '../../../capability_info.js';
import { GPUConst } from '../../../constants.js';
-import { kEncodableTextureFormats, kTextureFormatInfo } from '../../../format_info.js';
+import { kRegularTextureFormats, kTextureFormatInfo } from '../../../format_info.js';
import { GPUTest, TextureTestMixin } from '../../../gpu_test.js';
import { clamp } from '../../../util/math.js';
import { TexelView } from '../../../util/texture/texel_view.js';
@@ -165,6 +165,7 @@ u //
.combine('component', ['color', 'alpha']).
combine('srcFactor', kBlendFactors).
combine('dstFactor', kBlendFactors).
+beginSubcases().
combine('operation', kBlendOperations).
filter((t) => {
if (t.operation === 'min' || t.operation === 'max') {
@@ -172,7 +173,6 @@ filter((t) => {
}
return true;
}).
-beginSubcases().
combine('srcColor', [{ r: 0.11, g: 0.61, b: 0.81, a: 0.44 }]).
combine('dstColor', [
{ r: 0.51, g: 0.22, b: 0.71, a: 0.33 },
@@ -318,9 +318,9 @@ struct Uniform {
);
});
-const kBlendableFormats = kEncodableTextureFormats.filter((f) => {
+const kBlendableFormats = kRegularTextureFormats.filter((f) => {
const info = kTextureFormatInfo[f];
- return info.renderable && info.sampleType === 'float';
+ return info.colorRender && info.color.type === 'float';
});
g.test('blending,formats').
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth.spec.js
index 12c88f8dcd..19008f0850 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth.spec.js
@@ -467,13 +467,8 @@ fn((t) => {
@vertex fn main(
@builtin(vertex_index) VertexIndex : u32,
@builtin(instance_index) InstanceIndex : u32) -> Output {
- // TODO: remove workaround for Tint unary array access broke
- var zv : array<vec2<f32>, 4> = array<vec2<f32>, 4>(
- vec2<f32>(0.2, 0.2),
- vec2<f32>(0.3, 0.3),
- vec2<f32>(-0.1, -0.1),
- vec2<f32>(1.1, 1.1));
- let z : f32 = zv[InstanceIndex].x;
+ let zv = array(0.2, 0.3, -0.1, 1.1);
+ let z = zv[InstanceIndex];
var output : Output;
output.Position = vec4<f32>(0.5, 0.5, z, 1.0);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_bias.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_bias.spec.js
index 4cae7f53eb..59e5f83bef 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_bias.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_bias.spec.js
@@ -304,6 +304,12 @@ u //
}]
)
).
+beforeAllSubcases((t) => {
+ t.skipIf(
+ t.isCompatibility && t.params.biasClamp !== 0,
+ 'non zero depthBiasClamp is not supported in compatibility mode'
+ );
+}).
fn((t) => {
t.runDepthBiasTest('depth32float', t.params);
});
@@ -346,6 +352,12 @@ combineWithParams([
}]
)
).
+beforeAllSubcases((t) => {
+ t.skipIf(
+ t.isCompatibility && t.params.biasClamp !== 0,
+ 'non zero depthBiasClamp is not supported in compatibility mode'
+ );
+}).
fn((t) => {
const { format } = t.params;
t.runDepthBiasTestFor24BitFormat(format, t.params);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_clip_clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_clip_clamp.spec.js
index 28d639990d..4dc6b2d116 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_clip_clamp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/rendering/depth_clip_clamp.spec.js
@@ -4,6 +4,7 @@
Tests for depth clipping, depth clamping (at various points in the pipeline), and maybe extended
depth ranges as well.
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { assert } from '../../../../common/util/util.js';
import { kDepthStencilFormats, kTextureFormatInfo } from '../../../format_info.js';
import { GPUTest } from '../../../gpu_test.js';
import {
@@ -52,6 +53,7 @@ beforeAllSubcases((t) => {
fn(async (t) => {
const { format, unclippedDepth, writeDepth, multisampled } = t.params;
const info = kTextureFormatInfo[format];
+ assert(!!info.depth);
/** Number of depth values to test for both vertex output and frag_depth output. */
const kNumDepthValues = 8;
@@ -222,16 +224,16 @@ fn(async (t) => {
undefined;
const dsActual =
- !multisampled && info.bytesPerBlock ?
+ !multisampled && info.depth.bytes ?
t.device.createBuffer({
- size: kNumTestPoints * info.bytesPerBlock,
+ size: kNumTestPoints * info.depth.bytes,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ
}) :
undefined;
const dsExpected =
- !multisampled && info.bytesPerBlock ?
+ !multisampled && info.depth.bytes ?
t.device.createBuffer({
- size: kNumTestPoints * info.bytesPerBlock,
+ size: kNumTestPoints * info.depth.bytes,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ
}) :
undefined;
@@ -270,7 +272,9 @@ fn(async (t) => {
pass.end();
}
if (dsActual) {
- enc.copyTextureToBuffer({ texture: dsTexture }, { buffer: dsActual }, [kNumTestPoints]);
+ enc.copyTextureToBuffer({ texture: dsTexture, aspect: 'depth-only' }, { buffer: dsActual }, [
+ kNumTestPoints]
+ );
}
{
const clearValue = [0, 0, 0, 0]; // Will see this color if the check passed.
@@ -302,7 +306,11 @@ fn(async (t) => {
}
enc.copyTextureToBuffer({ texture: checkTexture }, { buffer: checkBuffer }, [kNumTestPoints]);
if (dsExpected) {
- enc.copyTextureToBuffer({ texture: dsTexture }, { buffer: dsExpected }, [kNumTestPoints]);
+ enc.copyTextureToBuffer(
+ { texture: dsTexture, aspect: 'depth-only' },
+ { buffer: dsExpected },
+ [kNumTestPoints]
+ );
}
t.device.queue.submit([enc.finish()]);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_copy.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_copy.js
index 4025467306..08e878b458 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_copy.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_copy.js
@@ -3,6 +3,7 @@
**/import { assert } from '../../../../../common/util/util.js';import { kTextureFormatInfo } from '../../../../format_info.js';import { virtualMipSize } from '../../../../util/texture/base.js';
+
export const checkContentsByBufferCopy = (
t,
params,
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_ds_test.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_ds_test.js
index 3a88f02a6a..a88c38e60e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_ds_test.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_ds_test.js
@@ -4,6 +4,7 @@
import { virtualMipSize } from '../../../../util/texture/base.js';
+
function makeFullscreenVertexModule(device) {
return device.createShaderModule({
code: `
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_sampling.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_sampling.js
index 89a4a79e32..d55628a5bb 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_sampling.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/by_sampling.js
@@ -8,6 +8,7 @@ import {
'../../../../util/texture/texel_data.js';
+
export const checkContentsBySampling = (
t,
params,
@@ -41,14 +42,20 @@ subresourceRange) =>
componentOrder[0].toLowerCase() :
componentOrder.map((c) => c.toLowerCase()).join('') + '[i]';
- const _xd = '_' + params.dimension;
+ const viewDimension =
+ t.isCompatibility && params.dimension === '2d' && texture.depthOrArrayLayers > 1 ?
+ '2d-array' :
+ params.dimension;
+ const _xd = `_${viewDimension.replace('-', '_')}`;
const _multisampled = params.sampleCount > 1 ? '_multisampled' : '';
const texelIndexExpression =
- params.dimension === '2d' ?
+ viewDimension === '2d' ?
'vec2<i32>(GlobalInvocationID.xy)' :
- params.dimension === '3d' ?
+ viewDimension === '2d-array' ?
+ 'vec2<i32>(GlobalInvocationID.xy), constants.layer' :
+ viewDimension === '3d' ?
'vec3<i32>(GlobalInvocationID.xyz)' :
- params.dimension === '1d' ?
+ viewDimension === '1d' ?
'i32(GlobalInvocationID.x)' :
unreachable();
const computePipeline = t.device.createComputePipeline({
@@ -58,7 +65,8 @@ subresourceRange) =>
module: t.device.createShaderModule({
code: `
struct Constants {
- level : i32
+ level : i32,
+ layer : i32,
};
@group(0) @binding(0) var<uniform> constants : Constants;
@@ -90,10 +98,10 @@ subresourceRange) =>
for (const layer of layers) {
const ubo = t.device.createBuffer({
mappedAtCreation: true,
- size: 4,
+ size: 8,
usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST
});
- new Int32Array(ubo.getMappedRange(), 0, 1)[0] = level;
+ new Int32Array(ubo.getMappedRange()).set([level, layer]);
ubo.unmap();
const byteLength =
@@ -104,6 +112,14 @@ subresourceRange) =>
});
t.trackForCleanup(resultBuffer);
+ const viewDescriptor = {
+ ...(!t.isCompatibility && {
+ baseArrayLayer: layer,
+ arrayLayerCount: 1
+ }),
+ dimension: viewDimension
+ };
+
const bindGroup = t.device.createBindGroup({
layout: computePipeline.getBindGroupLayout(0),
entries: [
@@ -113,11 +129,7 @@ subresourceRange) =>
},
{
binding: 1,
- resource: texture.createView({
- baseArrayLayer: layer,
- arrayLayerCount: 1,
- dimension: params.dimension
- })
+ resource: texture.createView(viewDescriptor)
},
{
binding: 3,
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/texture_zero_init_test.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/texture_zero_init_test.js
new file mode 100644
index 0000000000..7e2c1f1cff
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/check_texture/texture_zero_init_test.js
@@ -0,0 +1,538 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kUnitCaseParamsBuilder } from
+
+'../../../../../common/framework/params_builder.js';
+import { assert, unreachable } from '../../../../../common/util/util.js';
+import { kTextureAspects, kTextureDimensions } from '../../../../capability_info.js';
+import { GPUConst } from '../../../../constants.js';
+import {
+ kTextureFormatInfo,
+ kUncompressedTextureFormats,
+ textureDimensionAndFormatCompatible } from
+
+
+'../../../../format_info.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { virtualMipSize } from '../../../../util/texture/base.js';
+import { createTextureUploadBuffer } from '../../../../util/texture/layout.js';
+import { SubresourceRange } from '../../../../util/texture/subresource.js';
+import {
+
+ kTexelRepresentationInfo } from
+'../../../../util/texture/texel_data.js';
+
+export let UninitializeMethod = /*#__PURE__*/function (UninitializeMethod) {UninitializeMethod["Creation"] = "Creation";UninitializeMethod["StoreOpClear"] = "StoreOpClear";return UninitializeMethod;}({});
+
+// The texture was rendered to with GPUStoreOp "clear"
+
+const kUninitializeMethods = Object.keys(UninitializeMethod);
+
+export let ReadMethod = /*#__PURE__*/function (ReadMethod) {ReadMethod["Sample"] = "Sample";ReadMethod["CopyToBuffer"] = "CopyToBuffer";ReadMethod["CopyToTexture"] = "CopyToTexture";ReadMethod["DepthTest"] = "DepthTest";ReadMethod["StencilTest"] = "StencilTest";ReadMethod["ColorBlending"] = "ColorBlending";ReadMethod["Storage"] = "Storage";return ReadMethod;}({});
+
+
+
+
+
+
+// Read the texture as a storage texture
+
+
+// Test with these mip level counts
+
+const kMipLevelCounts = [1, 5];
+
+// For each mip level count, define the mip ranges to leave uninitialized.
+const kUninitializedMipRangesToTest = {
+ 1: [{ begin: 0, end: 1 }], // Test the only mip
+ 5: [
+ { begin: 0, end: 2 },
+ { begin: 3, end: 4 }]
+ // Test a range and a single mip
+};
+
+// Test with these sample counts.
+const kSampleCounts = [1, 4];
+
+// Test with these layer counts.
+
+
+// For each layer count, define the layers to leave uninitialized.
+const kUninitializedLayerRangesToTest = {
+ 1: [{ begin: 0, end: 1 }], // Test the only layer
+ 7: [
+ { begin: 2, end: 4 },
+ { begin: 6, end: 7 }]
+ // Test a range and a single layer
+};
+
+// Enums to abstract over color / depth / stencil values in textures. Depending on the texture format,
+// the data for each value may have a different representation. These enums are converted to a
+// representation such that their values can be compared. ex.) An integer is needed to upload to an
+// unsigned normalized format, but its value is read as a float in the shader.
+export let InitializedState = /*#__PURE__*/function (InitializedState) {InitializedState[InitializedState["Canary"] = 0] = "Canary";InitializedState[InitializedState["Zero"] = 1] = "Zero";return InitializedState;}({});
+
+// We check that uninitialized subresources are in this state when read back.
+
+
+const initializedStateAsFloat = {
+ [InitializedState.Zero]: 0,
+ [InitializedState.Canary]: 1
+};
+
+const initializedStateAsUint = {
+ [InitializedState.Zero]: 0,
+ [InitializedState.Canary]: 1
+};
+
+const initializedStateAsSint = {
+ [InitializedState.Zero]: 0,
+ [InitializedState.Canary]: -1
+};
+
+function initializedStateAsColor(
+state,
+format)
+{
+ let value;
+ if (format.indexOf('uint') !== -1) {
+ value = initializedStateAsUint[state];
+ } else if (format.indexOf('sint') !== -1) {
+ value = initializedStateAsSint[state];
+ } else {
+ value = initializedStateAsFloat[state];
+ }
+ return [value, value, value, value];
+}
+
+const initializedStateAsDepth = {
+ [InitializedState.Zero]: 0,
+ [InitializedState.Canary]: 0.8
+};
+
+const initializedStateAsStencil = {
+ [InitializedState.Zero]: 0,
+ [InitializedState.Canary]: 42
+};
+
+function allAspectsCopyDst(info) {
+ return (
+ (!info.color || info.color.copyDst) && (
+ !info.depth || info.depth.copyDst) && (
+ !info.stencil || info.stencil.copyDst));
+
+}
+
+export function getRequiredTextureUsage(
+format,
+sampleCount,
+uninitializeMethod,
+readMethod)
+{
+ let usage = GPUConst.TextureUsage.COPY_DST;
+
+ switch (uninitializeMethod) {
+ case UninitializeMethod.Creation:
+ break;
+ case UninitializeMethod.StoreOpClear:
+ usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
+ break;
+ default:
+ unreachable();
+ }
+
+ switch (readMethod) {
+ case ReadMethod.CopyToBuffer:
+ case ReadMethod.CopyToTexture:
+ usage |= GPUConst.TextureUsage.COPY_SRC;
+ break;
+ case ReadMethod.Sample:
+ usage |= GPUConst.TextureUsage.TEXTURE_BINDING;
+ break;
+ case ReadMethod.Storage:
+ usage |= GPUConst.TextureUsage.STORAGE_BINDING;
+ break;
+ case ReadMethod.DepthTest:
+ case ReadMethod.StencilTest:
+ case ReadMethod.ColorBlending:
+ usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
+ break;
+ default:
+ unreachable();
+ }
+
+ if (sampleCount > 1) {
+ // Copies to multisampled textures are not allowed. We need OutputAttachment to initialize
+ // canary data in multisampled textures.
+ usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
+ }
+
+ const info = kTextureFormatInfo[format];
+ if (!allAspectsCopyDst(info)) {
+ // Copies are not possible. We need OutputAttachment to initialize
+ // canary data.
+ if (info.color) assert(!!info.colorRender, 'not implemented for non-renderable color');
+ usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
+ }
+
+ return usage;
+}
+
+export class TextureZeroInitTest extends GPUTest {
+
+
+
+ constructor(sharedState, rec, params) {
+ super(sharedState, rec, params);
+ this.p = params;
+
+ const stateToTexelComponents = (state) => {
+ const [R, G, B, A] = initializedStateAsColor(state, this.p.format);
+ return {
+ R,
+ G,
+ B,
+ A,
+ Depth: initializedStateAsDepth[state],
+ Stencil: initializedStateAsStencil[state]
+ };
+ };
+
+ this.stateToTexelComponents = {
+ [InitializedState.Zero]: stateToTexelComponents(InitializedState.Zero),
+ [InitializedState.Canary]: stateToTexelComponents(InitializedState.Canary)
+ };
+ }
+
+ get textureWidth() {
+ let width = 1 << this.p.mipLevelCount;
+ if (this.p.nonPowerOfTwo) {
+ width = 2 * width - 1;
+ }
+ return width;
+ }
+
+ get textureHeight() {
+ if (this.p.dimension === '1d') {
+ return 1;
+ }
+
+ let height = 1 << this.p.mipLevelCount;
+ if (this.p.nonPowerOfTwo) {
+ height = 2 * height - 1;
+ }
+ return height;
+ }
+
+ get textureDepth() {
+ return this.p.dimension === '3d' ? 11 : 1;
+ }
+
+ get textureDepthOrArrayLayers() {
+ return this.p.dimension === '2d' ? this.p.layerCount : this.textureDepth;
+ }
+
+ // Used to iterate subresources and check that their uninitialized contents are zero when accessed
+ *iterateUninitializedSubresources() {
+ for (const mipRange of kUninitializedMipRangesToTest[this.p.mipLevelCount]) {
+ for (const layerRange of kUninitializedLayerRangesToTest[this.p.layerCount]) {
+ yield new SubresourceRange({ mipRange, layerRange });
+ }
+ }
+ }
+
+ // Used to iterate and initialize other subresources not checked for zero-initialization.
+ // Zero-initialization of uninitialized subresources should not have side effects on already
+ // initialized subresources.
+ *iterateInitializedSubresources() {
+ const uninitialized = new Array(this.p.mipLevelCount);
+ for (let level = 0; level < uninitialized.length; ++level) {
+ uninitialized[level] = new Array(this.p.layerCount);
+ }
+ for (const subresources of this.iterateUninitializedSubresources()) {
+ for (const { level, layer } of subresources.each()) {
+ uninitialized[level][layer] = true;
+ }
+ }
+ for (let level = 0; level < uninitialized.length; ++level) {
+ for (let layer = 0; layer < uninitialized[level].length; ++layer) {
+ if (!uninitialized[level][layer]) {
+ yield new SubresourceRange({
+ mipRange: { begin: level, count: 1 },
+ layerRange: { begin: layer, count: 1 }
+ });
+ }
+ }
+ }
+ }
+
+ *generateTextureViewDescriptorsForRendering(
+ aspect,
+ subresourceRange)
+ {
+ const viewDescriptor = {
+ dimension: '2d',
+ aspect
+ };
+
+ if (subresourceRange === undefined) {
+ return viewDescriptor;
+ }
+
+ for (const { level, layer } of subresourceRange.each()) {
+ yield {
+ ...viewDescriptor,
+ baseMipLevel: level,
+ mipLevelCount: 1,
+ baseArrayLayer: layer,
+ arrayLayerCount: 1
+ };
+ }
+ }
+
+ initializeWithStoreOp(
+ state,
+ texture,
+ subresourceRange)
+ {
+ const commandEncoder = this.device.createCommandEncoder();
+ commandEncoder.pushDebugGroup('initializeWithStoreOp');
+
+ for (const viewDescriptor of this.generateTextureViewDescriptorsForRendering(
+ 'all',
+ subresourceRange
+ )) {
+ if (kTextureFormatInfo[this.p.format].color) {
+ commandEncoder.
+ beginRenderPass({
+ colorAttachments: [
+ {
+ view: texture.createView(viewDescriptor),
+ storeOp: 'store',
+ clearValue: initializedStateAsColor(state, this.p.format),
+ loadOp: 'clear'
+ }]
+
+ }).
+ end();
+ } else {
+ const depthStencilAttachment = {
+ view: texture.createView(viewDescriptor)
+ };
+ if (kTextureFormatInfo[this.p.format].depth) {
+ depthStencilAttachment.depthClearValue = initializedStateAsDepth[state];
+ depthStencilAttachment.depthLoadOp = 'clear';
+ depthStencilAttachment.depthStoreOp = 'store';
+ }
+ if (kTextureFormatInfo[this.p.format].stencil) {
+ depthStencilAttachment.stencilClearValue = initializedStateAsStencil[state];
+ depthStencilAttachment.stencilLoadOp = 'clear';
+ depthStencilAttachment.stencilStoreOp = 'store';
+ }
+ commandEncoder.
+ beginRenderPass({
+ colorAttachments: [],
+ depthStencilAttachment
+ }).
+ end();
+ }
+ }
+
+ commandEncoder.popDebugGroup();
+ this.queue.submit([commandEncoder.finish()]);
+ }
+
+ initializeWithCopy(
+ texture,
+ state,
+ subresourceRange)
+ {
+ assert(this.p.format in kTextureFormatInfo);
+ const format = this.p.format;
+
+ const firstSubresource = subresourceRange.each().next().value;
+ assert(typeof firstSubresource !== 'undefined');
+
+ const [largestWidth, largestHeight, largestDepth] = virtualMipSize(
+ this.p.dimension,
+ [this.textureWidth, this.textureHeight, this.textureDepth],
+ firstSubresource.level
+ );
+
+ const rep = kTexelRepresentationInfo[format];
+ const texelData = new Uint8Array(rep.pack(rep.encode(this.stateToTexelComponents[state])));
+ const { buffer, bytesPerRow, rowsPerImage } = createTextureUploadBuffer(
+ texelData,
+ this.device,
+ format,
+ this.p.dimension,
+ [largestWidth, largestHeight, largestDepth]
+ );
+
+ const commandEncoder = this.device.createCommandEncoder();
+
+ for (const { level, layer } of subresourceRange.each()) {
+ const [width, height, depth] = virtualMipSize(
+ this.p.dimension,
+ [this.textureWidth, this.textureHeight, this.textureDepth],
+ level
+ );
+
+ commandEncoder.copyBufferToTexture(
+ {
+ buffer,
+ bytesPerRow,
+ rowsPerImage
+ },
+ { texture, mipLevel: level, origin: { x: 0, y: 0, z: layer } },
+ { width, height, depthOrArrayLayers: depth }
+ );
+ }
+ this.queue.submit([commandEncoder.finish()]);
+ buffer.destroy();
+ }
+
+ initializeTexture(
+ texture,
+ state,
+ subresourceRange)
+ {
+ const info = kTextureFormatInfo[this.p.format];
+ if (this.p.sampleCount > 1 || !allAspectsCopyDst(info)) {
+ // Copies to multisampled textures not yet specified.
+ // Use a storeOp for now.
+ if (info.color) assert(!!info.colorRender, 'not implemented for non-renderable color');
+ this.initializeWithStoreOp(state, texture, subresourceRange);
+ } else {
+ this.initializeWithCopy(texture, state, subresourceRange);
+ }
+ }
+
+ discardTexture(texture, subresourceRange) {
+ const commandEncoder = this.device.createCommandEncoder();
+ commandEncoder.pushDebugGroup('discardTexture');
+
+ for (const desc of this.generateTextureViewDescriptorsForRendering('all', subresourceRange)) {
+ if (kTextureFormatInfo[this.p.format].color) {
+ commandEncoder.
+ beginRenderPass({
+ colorAttachments: [
+ {
+ view: texture.createView(desc),
+ storeOp: 'discard',
+ loadOp: 'load'
+ }]
+
+ }).
+ end();
+ } else {
+ const depthStencilAttachment = {
+ view: texture.createView(desc)
+ };
+ if (kTextureFormatInfo[this.p.format].depth) {
+ depthStencilAttachment.depthLoadOp = 'load';
+ depthStencilAttachment.depthStoreOp = 'discard';
+ }
+ if (kTextureFormatInfo[this.p.format].stencil) {
+ depthStencilAttachment.stencilLoadOp = 'load';
+ depthStencilAttachment.stencilStoreOp = 'discard';
+ }
+ commandEncoder.
+ beginRenderPass({
+ colorAttachments: [],
+ depthStencilAttachment
+ }).
+ end();
+ }
+ }
+
+ commandEncoder.popDebugGroup();
+ this.queue.submit([commandEncoder.finish()]);
+ }
+}
+
+export const kTestParams = kUnitCaseParamsBuilder.
+combine('dimension', kTextureDimensions).
+combine('readMethod', [
+ReadMethod.CopyToBuffer,
+ReadMethod.CopyToTexture,
+ReadMethod.Sample,
+ReadMethod.DepthTest,
+ReadMethod.StencilTest]
+)
+// [3] compressed formats
+.combine('format', kUncompressedTextureFormats).
+filter(({ dimension, format }) => textureDimensionAndFormatCompatible(dimension, format)).
+beginSubcases().
+combine('aspect', kTextureAspects).
+unless(({ readMethod, format, aspect }) => {
+ const info = kTextureFormatInfo[format];
+ return (
+ readMethod === ReadMethod.DepthTest && (!info.depth || aspect === 'stencil-only') ||
+ readMethod === ReadMethod.StencilTest && (!info.stencil || aspect === 'depth-only') ||
+ readMethod === ReadMethod.ColorBlending && !info.color ||
+ // [1]: Test with depth/stencil sampling
+ readMethod === ReadMethod.Sample && (!!info.depth || !!info.stencil) ||
+ aspect === 'depth-only' && !info.depth ||
+ aspect === 'stencil-only' && !info.stencil ||
+ aspect === 'all' && !!info.depth && !!info.stencil ||
+ // Cannot copy from a packed depth format.
+ // [2]: Test copying out of the stencil aspect.
+ (readMethod === ReadMethod.CopyToBuffer || readMethod === ReadMethod.CopyToTexture) && (
+ format === 'depth24plus' || format === 'depth24plus-stencil8'));
+
+}).
+combine('mipLevelCount', kMipLevelCounts)
+// 1D texture can only have a single mip level
+.unless((p) => p.dimension === '1d' && p.mipLevelCount !== 1).
+combine('sampleCount', kSampleCounts).
+unless(
+ ({ readMethod, sampleCount }) =>
+ // We can only read from multisampled textures by sampling.
+ sampleCount > 1 && (
+ readMethod === ReadMethod.CopyToBuffer || readMethod === ReadMethod.CopyToTexture)
+)
+// Multisampled textures may only have one mip
+.unless(({ sampleCount, mipLevelCount }) => sampleCount > 1 && mipLevelCount > 1).
+combine('uninitializeMethod', kUninitializeMethods).
+unless(({ dimension, readMethod, uninitializeMethod, format, sampleCount }) => {
+ const formatInfo = kTextureFormatInfo[format];
+ return (
+ dimension !== '2d' && (
+ sampleCount > 1 ||
+ !!formatInfo.depth ||
+ !!formatInfo.stencil ||
+ readMethod === ReadMethod.DepthTest ||
+ readMethod === ReadMethod.StencilTest ||
+ readMethod === ReadMethod.ColorBlending ||
+ uninitializeMethod === UninitializeMethod.StoreOpClear));
+
+}).
+expandWithParams(function* ({ dimension }) {
+ switch (dimension) {
+ case '2d':
+ yield { layerCount: 1 };
+ yield { layerCount: 7 };
+ break;
+ case '1d':
+ case '3d':
+ yield { layerCount: 1 };
+ break;
+ }
+})
+// Multisampled 3D / 2D array textures not supported.
+.unless(({ sampleCount, layerCount }) => sampleCount > 1 && layerCount > 1).
+unless(({ format, sampleCount, uninitializeMethod, readMethod }) => {
+ const usage = getRequiredTextureUsage(format, sampleCount, uninitializeMethod, readMethod);
+ const info = kTextureFormatInfo[format];
+
+ return (
+ (usage & GPUConst.TextureUsage.RENDER_ATTACHMENT) !== 0 &&
+ info.color &&
+ !info.colorRender ||
+ (usage & GPUConst.TextureUsage.STORAGE_BINDING) !== 0 && !info.color?.storage ||
+ sampleCount > 1 && !info.multisample);
+
+}).
+combine('nonPowerOfTwo', [false, true]).
+combine('canaryOnCreation', [false, true]); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/texture_zero.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/texture_zero.spec.js
index d7e83601c1..574a997516 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/texture_zero.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/resource_init/texture_zero.spec.js
@@ -7,550 +7,9 @@ TODO:
- test by sampling depth/stencil [1]
- test by copying out of stencil [2]
- test compressed texture formats [3]
-`; // MAINTENANCE_TODO: This is a test file, it probably shouldn't export anything.
-// Everything that's exported should be moved to another file.
-
-
-import {
- kUnitCaseParamsBuilder } from
-
-'../../../../common/framework/params_builder.js';
-import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { assert, unreachable } from '../../../../common/util/util.js';
-import { kTextureAspects, kTextureDimensions } from '../../../capability_info.js';
-import { GPUConst } from '../../../constants.js';
-import {
- kTextureFormatInfo,
- kUncompressedTextureFormats,
- textureDimensionAndFormatCompatible } from
-
-
-'../../../format_info.js';
-import { GPUTest } from '../../../gpu_test.js';
-import { virtualMipSize } from '../../../util/texture/base.js';
-import { createTextureUploadBuffer } from '../../../util/texture/layout.js';
-import { SubresourceRange } from '../../../util/texture/subresource.js';
-import { kTexelRepresentationInfo } from '../../../util/texture/texel_data.js';
-
-export let UninitializeMethod = /*#__PURE__*/function (UninitializeMethod) {UninitializeMethod["Creation"] = "Creation";UninitializeMethod["StoreOpClear"] = "StoreOpClear";return UninitializeMethod;}({});
-
-// The texture was rendered to with GPUStoreOp "clear"
-
-const kUninitializeMethods = Object.keys(UninitializeMethod);
-
-export let ReadMethod = /*#__PURE__*/function (ReadMethod) {ReadMethod["Sample"] = "Sample";ReadMethod["CopyToBuffer"] = "CopyToBuffer";ReadMethod["CopyToTexture"] = "CopyToTexture";ReadMethod["DepthTest"] = "DepthTest";ReadMethod["StencilTest"] = "StencilTest";ReadMethod["ColorBlending"] = "ColorBlending";ReadMethod["Storage"] = "Storage";return ReadMethod;}({});
-
-
-
-
-
-
-// Read the texture as a storage texture
-
-
-// Test with these mip level counts
-
-const kMipLevelCounts = [1, 5];
-
-// For each mip level count, define the mip ranges to leave uninitialized.
-const kUninitializedMipRangesToTest = {
- 1: [{ begin: 0, end: 1 }], // Test the only mip
- 5: [
- { begin: 0, end: 2 },
- { begin: 3, end: 4 }]
- // Test a range and a single mip
-};
-
-// Test with these sample counts.
-const kSampleCounts = [1, 4];
-
-// Test with these layer counts.
-
-
-// For each layer count, define the layers to leave uninitialized.
-const kUninitializedLayerRangesToTest = {
- 1: [{ begin: 0, end: 1 }], // Test the only layer
- 7: [
- { begin: 2, end: 4 },
- { begin: 6, end: 7 }]
- // Test a range and a single layer
-};
-
-// Enums to abstract over color / depth / stencil values in textures. Depending on the texture format,
-// the data for each value may have a different representation. These enums are converted to a
-// representation such that their values can be compared. ex.) An integer is needed to upload to an
-// unsigned normalized format, but its value is read as a float in the shader.
-export let InitializedState = /*#__PURE__*/function (InitializedState) {InitializedState[InitializedState["Canary"] = 0] = "Canary";InitializedState[InitializedState["Zero"] = 1] = "Zero";return InitializedState;}({});
-
-// We check that uninitialized subresources are in this state when read back.
-
-
-const initializedStateAsFloat = {
- [InitializedState.Zero]: 0,
- [InitializedState.Canary]: 1
-};
-
-const initializedStateAsUint = {
- [InitializedState.Zero]: 0,
- [InitializedState.Canary]: 1
-};
-
-const initializedStateAsSint = {
- [InitializedState.Zero]: 0,
- [InitializedState.Canary]: -1
-};
-
-function initializedStateAsColor(
-state,
-format)
-{
- let value;
- if (format.indexOf('uint') !== -1) {
- value = initializedStateAsUint[state];
- } else if (format.indexOf('sint') !== -1) {
- value = initializedStateAsSint[state];
- } else {
- value = initializedStateAsFloat[state];
- }
- return [value, value, value, value];
-}
-
-const initializedStateAsDepth = {
- [InitializedState.Zero]: 0,
- [InitializedState.Canary]: 0.8
-};
-
-const initializedStateAsStencil = {
- [InitializedState.Zero]: 0,
- [InitializedState.Canary]: 42
-};
-
-function getRequiredTextureUsage(
-format,
-sampleCount,
-uninitializeMethod,
-readMethod)
-{
- let usage = GPUConst.TextureUsage.COPY_DST;
-
- switch (uninitializeMethod) {
- case UninitializeMethod.Creation:
- break;
- case UninitializeMethod.StoreOpClear:
- usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
- break;
- default:
- unreachable();
- }
-
- switch (readMethod) {
- case ReadMethod.CopyToBuffer:
- case ReadMethod.CopyToTexture:
- usage |= GPUConst.TextureUsage.COPY_SRC;
- break;
- case ReadMethod.Sample:
- usage |= GPUConst.TextureUsage.TEXTURE_BINDING;
- break;
- case ReadMethod.Storage:
- usage |= GPUConst.TextureUsage.STORAGE_BINDING;
- break;
- case ReadMethod.DepthTest:
- case ReadMethod.StencilTest:
- case ReadMethod.ColorBlending:
- usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
- break;
- default:
- unreachable();
- }
-
- if (sampleCount > 1) {
- // Copies to multisampled textures are not allowed. We need OutputAttachment to initialize
- // canary data in multisampled textures.
- usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
- }
-
- if (!kTextureFormatInfo[format].copyDst) {
- // Copies are not possible. We need OutputAttachment to initialize
- // canary data.
- assert(kTextureFormatInfo[format].renderable);
- usage |= GPUConst.TextureUsage.RENDER_ATTACHMENT;
- }
-
- return usage;
-}
-
-export class TextureZeroInitTest extends GPUTest {
-
-
-
- constructor(sharedState, rec, params) {
- super(sharedState, rec, params);
- this.p = params;
-
- const stateToTexelComponents = (state) => {
- const [R, G, B, A] = initializedStateAsColor(state, this.p.format);
- return {
- R,
- G,
- B,
- A,
- Depth: initializedStateAsDepth[state],
- Stencil: initializedStateAsStencil[state]
- };
- };
-
- this.stateToTexelComponents = {
- [InitializedState.Zero]: stateToTexelComponents(InitializedState.Zero),
- [InitializedState.Canary]: stateToTexelComponents(InitializedState.Canary)
- };
- }
-
- get textureWidth() {
- let width = 1 << this.p.mipLevelCount;
- if (this.p.nonPowerOfTwo) {
- width = 2 * width - 1;
- }
- return width;
- }
-
- get textureHeight() {
- if (this.p.dimension === '1d') {
- return 1;
- }
-
- let height = 1 << this.p.mipLevelCount;
- if (this.p.nonPowerOfTwo) {
- height = 2 * height - 1;
- }
- return height;
- }
-
- get textureDepth() {
- return this.p.dimension === '3d' ? 11 : 1;
- }
-
- get textureDepthOrArrayLayers() {
- return this.p.dimension === '2d' ? this.p.layerCount : this.textureDepth;
- }
-
- // Used to iterate subresources and check that their uninitialized contents are zero when accessed
- *iterateUninitializedSubresources() {
- for (const mipRange of kUninitializedMipRangesToTest[this.p.mipLevelCount]) {
- for (const layerRange of kUninitializedLayerRangesToTest[this.p.layerCount]) {
- yield new SubresourceRange({ mipRange, layerRange });
- }
- }
- }
-
- // Used to iterate and initialize other subresources not checked for zero-initialization.
- // Zero-initialization of uninitialized subresources should not have side effects on already
- // initialized subresources.
- *iterateInitializedSubresources() {
- const uninitialized = new Array(this.p.mipLevelCount);
- for (let level = 0; level < uninitialized.length; ++level) {
- uninitialized[level] = new Array(this.p.layerCount);
- }
- for (const subresources of this.iterateUninitializedSubresources()) {
- for (const { level, layer } of subresources.each()) {
- uninitialized[level][layer] = true;
- }
- }
- for (let level = 0; level < uninitialized.length; ++level) {
- for (let layer = 0; layer < uninitialized[level].length; ++layer) {
- if (!uninitialized[level][layer]) {
- yield new SubresourceRange({
- mipRange: { begin: level, count: 1 },
- layerRange: { begin: layer, count: 1 }
- });
- }
- }
- }
- }
-
- *generateTextureViewDescriptorsForRendering(
- aspect,
- subresourceRange)
- {
- const viewDescriptor = {
- dimension: '2d',
- aspect
- };
-
- if (subresourceRange === undefined) {
- return viewDescriptor;
- }
-
- for (const { level, layer } of subresourceRange.each()) {
- yield {
- ...viewDescriptor,
- baseMipLevel: level,
- mipLevelCount: 1,
- baseArrayLayer: layer,
- arrayLayerCount: 1
- };
- }
- }
-
- initializeWithStoreOp(
- state,
- texture,
- subresourceRange)
- {
- const commandEncoder = this.device.createCommandEncoder();
- commandEncoder.pushDebugGroup('initializeWithStoreOp');
-
- for (const viewDescriptor of this.generateTextureViewDescriptorsForRendering(
- 'all',
- subresourceRange
- )) {
- if (kTextureFormatInfo[this.p.format].color) {
- commandEncoder.
- beginRenderPass({
- colorAttachments: [
- {
- view: texture.createView(viewDescriptor),
- storeOp: 'store',
- clearValue: initializedStateAsColor(state, this.p.format),
- loadOp: 'clear'
- }]
-
- }).
- end();
- } else {
- const depthStencilAttachment = {
- view: texture.createView(viewDescriptor)
- };
- if (kTextureFormatInfo[this.p.format].depth) {
- depthStencilAttachment.depthClearValue = initializedStateAsDepth[state];
- depthStencilAttachment.depthLoadOp = 'clear';
- depthStencilAttachment.depthStoreOp = 'store';
- }
- if (kTextureFormatInfo[this.p.format].stencil) {
- depthStencilAttachment.stencilClearValue = initializedStateAsStencil[state];
- depthStencilAttachment.stencilLoadOp = 'clear';
- depthStencilAttachment.stencilStoreOp = 'store';
- }
- commandEncoder.
- beginRenderPass({
- colorAttachments: [],
- depthStencilAttachment
- }).
- end();
- }
- }
-
- commandEncoder.popDebugGroup();
- this.queue.submit([commandEncoder.finish()]);
- }
-
- initializeWithCopy(
- texture,
- state,
- subresourceRange)
- {
- assert(this.p.format in kTextureFormatInfo);
- const format = this.p.format;
-
- const firstSubresource = subresourceRange.each().next().value;
- assert(typeof firstSubresource !== 'undefined');
-
- const [largestWidth, largestHeight, largestDepth] = virtualMipSize(
- this.p.dimension,
- [this.textureWidth, this.textureHeight, this.textureDepth],
- firstSubresource.level
- );
-
- const rep = kTexelRepresentationInfo[format];
- const texelData = new Uint8Array(rep.pack(rep.encode(this.stateToTexelComponents[state])));
- const { buffer, bytesPerRow, rowsPerImage } = createTextureUploadBuffer(
- texelData,
- this.device,
- format,
- this.p.dimension,
- [largestWidth, largestHeight, largestDepth]
- );
-
- const commandEncoder = this.device.createCommandEncoder();
-
- for (const { level, layer } of subresourceRange.each()) {
- const [width, height, depth] = virtualMipSize(
- this.p.dimension,
- [this.textureWidth, this.textureHeight, this.textureDepth],
- level
- );
-
- commandEncoder.copyBufferToTexture(
- {
- buffer,
- bytesPerRow,
- rowsPerImage
- },
- { texture, mipLevel: level, origin: { x: 0, y: 0, z: layer } },
- { width, height, depthOrArrayLayers: depth }
- );
- }
- this.queue.submit([commandEncoder.finish()]);
- buffer.destroy();
- }
-
- initializeTexture(
- texture,
- state,
- subresourceRange)
- {
- if (this.p.sampleCount > 1 || !kTextureFormatInfo[this.p.format].copyDst) {
- // Copies to multisampled textures not yet specified.
- // Use a storeOp for now.
- assert(kTextureFormatInfo[this.p.format].renderable);
- this.initializeWithStoreOp(state, texture, subresourceRange);
- } else {
- this.initializeWithCopy(texture, state, subresourceRange);
- }
- }
-
- discardTexture(texture, subresourceRange) {
- const commandEncoder = this.device.createCommandEncoder();
- commandEncoder.pushDebugGroup('discardTexture');
-
- for (const desc of this.generateTextureViewDescriptorsForRendering('all', subresourceRange)) {
- if (kTextureFormatInfo[this.p.format].color) {
- commandEncoder.
- beginRenderPass({
- colorAttachments: [
- {
- view: texture.createView(desc),
- storeOp: 'discard',
- loadOp: 'load'
- }]
-
- }).
- end();
- } else {
- const depthStencilAttachment = {
- view: texture.createView(desc)
- };
- if (kTextureFormatInfo[this.p.format].depth) {
- depthStencilAttachment.depthLoadOp = 'load';
- depthStencilAttachment.depthStoreOp = 'discard';
- }
- if (kTextureFormatInfo[this.p.format].stencil) {
- depthStencilAttachment.stencilLoadOp = 'load';
- depthStencilAttachment.stencilStoreOp = 'discard';
- }
- commandEncoder.
- beginRenderPass({
- colorAttachments: [],
- depthStencilAttachment
- }).
- end();
- }
- }
-
- commandEncoder.popDebugGroup();
- this.queue.submit([commandEncoder.finish()]);
- }
-}
-
-const kTestParams = kUnitCaseParamsBuilder.
-combine('dimension', kTextureDimensions).
-combine('readMethod', [
-ReadMethod.CopyToBuffer,
-ReadMethod.CopyToTexture,
-ReadMethod.Sample,
-ReadMethod.DepthTest,
-ReadMethod.StencilTest]
-)
-// [3] compressed formats
-.combine('format', kUncompressedTextureFormats).
-filter(({ dimension, format }) => textureDimensionAndFormatCompatible(dimension, format)).
-beginSubcases().
-combine('aspect', kTextureAspects).
-unless(({ readMethod, format, aspect }) => {
- const info = kTextureFormatInfo[format];
- return (
- readMethod === ReadMethod.DepthTest && (!info.depth || aspect === 'stencil-only') ||
- readMethod === ReadMethod.StencilTest && (!info.stencil || aspect === 'depth-only') ||
- readMethod === ReadMethod.ColorBlending && !info.color ||
- // [1]: Test with depth/stencil sampling
- readMethod === ReadMethod.Sample && (!!info.depth || !!info.stencil) ||
- aspect === 'depth-only' && !info.depth ||
- aspect === 'stencil-only' && !info.stencil ||
- aspect === 'all' && !!info.depth && !!info.stencil ||
- // Cannot copy from a packed depth format.
- // [2]: Test copying out of the stencil aspect.
- (readMethod === ReadMethod.CopyToBuffer || readMethod === ReadMethod.CopyToTexture) && (
- format === 'depth24plus' || format === 'depth24plus-stencil8'));
-
-}).
-combine('mipLevelCount', kMipLevelCounts)
-// 1D texture can only have a single mip level
-.unless((p) => p.dimension === '1d' && p.mipLevelCount !== 1).
-combine('sampleCount', kSampleCounts).
-unless(
- ({ readMethod, sampleCount }) =>
- // We can only read from multisampled textures by sampling.
- sampleCount > 1 && (
- readMethod === ReadMethod.CopyToBuffer || readMethod === ReadMethod.CopyToTexture)
-)
-// Multisampled textures may only have one mip
-.unless(({ sampleCount, mipLevelCount }) => sampleCount > 1 && mipLevelCount > 1).
-combine('uninitializeMethod', kUninitializeMethods).
-unless(({ dimension, readMethod, uninitializeMethod, format, sampleCount }) => {
- const formatInfo = kTextureFormatInfo[format];
- return (
- dimension !== '2d' && (
- sampleCount > 1 ||
- !!formatInfo.depth ||
- !!formatInfo.stencil ||
- readMethod === ReadMethod.DepthTest ||
- readMethod === ReadMethod.StencilTest ||
- readMethod === ReadMethod.ColorBlending ||
- uninitializeMethod === UninitializeMethod.StoreOpClear));
-
-}).
-expandWithParams(function* ({ dimension }) {
- switch (dimension) {
- case '2d':
- yield { layerCount: 1 };
- yield { layerCount: 7 };
- break;
- case '1d':
- case '3d':
- yield { layerCount: 1 };
- break;
- }
-})
-// Multisampled 3D / 2D array textures not supported.
-.unless(({ sampleCount, layerCount }) => sampleCount > 1 && layerCount > 1).
-unless(({ format, sampleCount, uninitializeMethod, readMethod }) => {
- const usage = getRequiredTextureUsage(format, sampleCount, uninitializeMethod, readMethod);
- const info = kTextureFormatInfo[format];
-
- return (
- (usage & GPUConst.TextureUsage.RENDER_ATTACHMENT) !== 0 && !info.renderable ||
- (usage & GPUConst.TextureUsage.STORAGE_BINDING) !== 0 && !info.color?.storage ||
- sampleCount > 1 && !info.multisample);
-
-}).
-combine('nonPowerOfTwo', [false, true]).
-combine('canaryOnCreation', [false, true]).
-filter(({ canaryOnCreation, format }) => {
- // We can only initialize the texture if it's encodable or renderable.
- const canInitialize = format in kTextureFormatInfo || kTextureFormatInfo[format].renderable;
-
- // Filter out cases where we want canary values but can't initialize.
- return !canaryOnCreation || canInitialize;
-});
-
-
-
-
-
-
-
-
-
-
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { unreachable } from '../../../../common/util/util.js';
+import { kTextureFormatInfo } from '../../../format_info.js';
import { checkContentsByBufferCopy, checkContentsByTextureCopy } from './check_texture/by_copy.js';
import {
@@ -558,6 +17,15 @@ import {
checkContentsByStencilTest } from
'./check_texture/by_ds_test.js';
import { checkContentsBySampling } from './check_texture/by_sampling.js';
+import {
+ getRequiredTextureUsage,
+
+
+ TextureZeroInitTest,
+ kTestParams,
+ UninitializeMethod,
+ InitializedState } from
+'./check_texture/texture_zero_init_test.js';
const checkContentsImpl = {
Sample: checkContentsBySampling,
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/shader_module/compilation_info.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/shader_module/compilation_info.spec.js
index 9f9a1fcba0..ee64ed6065 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/shader_module/compilation_info.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/shader_module/compilation_info.spec.js
@@ -63,6 +63,17 @@ const kInvalidShaderSources = [
// Expected Error: unknown function 'unknown'
return unknown(0.0, 0.0, 0.0, 1.0);
}`
+},
+{
+ valid: false,
+ name: 'unicode-multi-byte-characters',
+ _errorLine: 1,
+ // This shader is simplistic enough to always result in the same error position.
+ // Generally, various backends may choose to report the error at different positions within the
+ // line, so it's difficult to meaningfully validate them.
+ _errorLinePos: 19,
+ _code: `/*🐈🐈🐈🐈🐈🐈🐈*/?
+// Expected Error: invalid character found`
}];
@@ -174,7 +185,7 @@ beginSubcases().
combine('sourceMapName', kSourceMapsKeys)
).
fn(async (t) => {
- const { _code, _errorLine, sourceMapName } = t.params;
+ const { _code, _errorLine, _errorLinePos, sourceMapName } = t.params;
const shaderModule = t.expectGPUError('validation', () => {
const sourceMap = kSourceMaps[sourceMapName];
@@ -191,14 +202,22 @@ fn(async (t) => {
// If a line is reported, it should point at the correct line (1-based).
t.expect(
message.lineNum === 0 === (message.linePos === 0),
- "GPUCompilationMessages that don't report a line number should not report a line position."
+ `Got message.lineNum ${message.lineNum}, .linePos ${message.linePos}, but GPUCompilationMessage should specify both or neither`
);
- if (message.lineNum === 0 || message.lineNum === _errorLine) {
+ if (message.lineNum === 0) {
foundAppropriateError = true;
+ break;
+ }
- // Various backends may choose to report the error at different positions within the line,
- // so it's difficult to meaningfully validate them.
+ if (message.lineNum === _errorLine) {
+ foundAppropriateError = true;
+ if (_errorLinePos !== undefined) {
+ t.expect(
+ message.linePos === _errorLinePos,
+ `Got message.linePos ${message.linePos}, expected ${_errorLinePos}`
+ );
+ }
break;
}
}
@@ -239,10 +258,9 @@ fn(async (t) => {
for (const message of info.messages) {
// Any offsets and lengths should reference valid spans of the shader code.
- t.expect(message.offset <= _code.length, 'Message offset should be within the shader source');
t.expect(
- message.offset + message.length <= _code.length,
- 'Message offset and length should be within the shader source'
+ message.offset <= _code.length && message.offset + message.length <= _code.length,
+ 'message.offset and .length should be within the shader source'
);
// If a valid line number and position are given, the offset should point the the same
@@ -255,9 +273,10 @@ fn(async (t) => {
lineOffset += 1;
}
+ const expectedOffset = lineOffset + message.linePos - 1;
t.expect(
- message.offset === lineOffset + message.linePos - 1,
- 'lineNum and linePos should point to the same location as offset'
+ message.offset === expectedOffset,
+ `message.lineNum (${message.lineNum}) and .linePos (${message.linePos}) point to a different offset (${lineOffset} + ${message.linePos} - 1 = ${expectedOffset}) than .offset (${message.offset})`
);
}
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_only.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_only.spec.js
new file mode 100644
index 0000000000..ebf33cca31
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_only.spec.js
@@ -0,0 +1,626 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests for the behavior of read-only storage textures.
+
+TODO:
+- Test mipmap level > 0
+- Test resource usage transitions with read-only storage textures
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { unreachable, assert } from '../../../../common/util/util.js';
+import { Float16Array } from '../../../../external/petamoriken/float16/float16.js';
+import { kTextureDimensions } from '../../../capability_info.js';
+import {
+
+ kColorTextureFormats,
+ kTextureFormatInfo } from
+'../../../format_info.js';
+import { GPUTest } from '../../../gpu_test.js';
+import { kValidShaderStages } from '../../../util/shader.js';
+
+function ComponentCount(format) {
+ switch (format) {
+ case 'r32float':
+ case 'r32sint':
+ case 'r32uint':
+ return 1;
+ case 'rg32float':
+ case 'rg32sint':
+ case 'rg32uint':
+ return 2;
+ case 'rgba32float':
+ case 'rgba32sint':
+ case 'rgba32uint':
+ case 'rgba8sint':
+ case 'rgba8uint':
+ case 'rgba8snorm':
+ case 'rgba8unorm':
+ case 'rgba16float':
+ case 'rgba16sint':
+ case 'rgba16uint':
+ case 'bgra8unorm':
+ return 4;
+ default:
+ unreachable();
+ return 0;
+ }
+}
+
+class F extends GPUTest {
+ InitTextureAndGetExpectedOutputBufferData(
+ storageTexture,
+ format)
+ {
+ const bytesPerBlock = kTextureFormatInfo[format].color.bytes;
+ assert(bytesPerBlock !== undefined);
+
+ const width = storageTexture.width;
+ const height = storageTexture.height;
+ const depthOrArrayLayers = storageTexture.depthOrArrayLayers;
+
+ const texelData = new ArrayBuffer(bytesPerBlock * width * height * depthOrArrayLayers);
+ const texelTypedDataView = this.GetTypedArrayBufferViewForTexelData(texelData, format);
+ const componentCount = ComponentCount(format);
+ const outputBufferData = new ArrayBuffer(4 * 4 * width * height * depthOrArrayLayers);
+ const outputBufferTypedData = this.GetTypedArrayBufferForOutputBufferData(
+ outputBufferData,
+ format
+ );
+
+ const SetData = (
+ texelValue,
+ outputValue,
+ texelDataIndex,
+ component,
+ outputComponent = component) =>
+ {
+ const texelComponentIndex = texelDataIndex * componentCount + component;
+ texelTypedDataView[texelComponentIndex] = texelValue;
+ const outputTexelComponentIndex = texelDataIndex * 4 + outputComponent;
+ outputBufferTypedData[outputTexelComponentIndex] = outputValue;
+ };
+ for (let z = 0; z < depthOrArrayLayers; ++z) {
+ for (let y = 0; y < height; ++y) {
+ for (let x = 0; x < width; ++x) {
+ const texelDataIndex = z * width * height + y * width + x;
+ outputBufferTypedData[4 * texelDataIndex] = 0;
+ outputBufferTypedData[4 * texelDataIndex + 1] = 0;
+ outputBufferTypedData[4 * texelDataIndex + 2] = 0;
+ outputBufferTypedData[4 * texelDataIndex + 3] = 1;
+ for (let component = 0; component < componentCount; ++component) {
+ switch (format) {
+ case 'r32uint':
+ case 'rg32uint':
+ case 'rgba16uint':
+ case 'rgba32uint':{
+ const texelValue = 4 * texelDataIndex + component + 1;
+ SetData(texelValue, texelValue, texelDataIndex, component);
+ break;
+ }
+ case 'rgba8uint':{
+ const texelValue = (4 * texelDataIndex + component + 1) % 256;
+ SetData(texelValue, texelValue, texelDataIndex, component);
+ break;
+ }
+ case 'rgba8unorm':{
+ const texelValue = (4 * texelDataIndex + component + 1) % 256;
+ const outputValue = texelValue / 255.0;
+ SetData(texelValue, outputValue, texelDataIndex, component);
+ break;
+ }
+ case 'bgra8unorm':{
+ const texelValue = (4 * texelDataIndex + component + 1) % 256;
+ const outputValue = texelValue / 255.0;
+ // BGRA -> RGBA
+ assert(component < 4);
+ const outputComponent = [2, 1, 0, 3][component];
+ SetData(texelValue, outputValue, texelDataIndex, component, outputComponent);
+ break;
+ }
+ case 'r32sint':
+ case 'rg32sint':
+ case 'rgba16sint':
+ case 'rgba32sint':{
+ const texelValue =
+ (texelDataIndex & 1 ? 1 : -1) * (4 * texelDataIndex + component + 1);
+ SetData(texelValue, texelValue, texelDataIndex, component);
+ break;
+ }
+ case 'rgba8sint':{
+ const texelValue = (4 * texelDataIndex + component + 1) % 256 - 128;
+ SetData(texelValue, texelValue, texelDataIndex, component);
+ break;
+ }
+ case 'rgba8snorm':{
+ const texelValue = (4 * texelDataIndex + component + 1) % 256 - 128;
+ const outputValue = Math.max(texelValue / 127.0, -1.0);
+ SetData(texelValue, outputValue, texelDataIndex, component);
+ break;
+ }
+ case 'r32float':
+ case 'rg32float':
+ case 'rgba32float':{
+ const texelValue = (4 * texelDataIndex + component + 1) / 10.0;
+ SetData(texelValue, texelValue, texelDataIndex, component);
+ break;
+ }
+ case 'rgba16float':{
+ const texelValue = (4 * texelDataIndex + component + 1) / 10.0;
+ const f16Array = new Float16Array(1);
+ f16Array[0] = texelValue;
+ SetData(texelValue, f16Array[0], texelDataIndex, component);
+ break;
+ }
+ default:
+ unreachable();
+ break;
+ }
+ }
+ }
+ }
+ }
+ this.queue.writeTexture(
+ {
+ texture: storageTexture
+ },
+ texelData,
+ {
+ bytesPerRow: bytesPerBlock * width,
+ rowsPerImage: height
+ },
+ [width, height, depthOrArrayLayers]
+ );
+
+ return outputBufferData;
+ }
+
+ GetTypedArrayBufferForOutputBufferData(arrayBuffer, format) {
+ switch (kTextureFormatInfo[format].color.type) {
+ case 'uint':
+ return new Uint32Array(arrayBuffer);
+ case 'sint':
+ return new Int32Array(arrayBuffer);
+ case 'float':
+ case 'unfilterable-float':
+ return new Float32Array(arrayBuffer);
+ }
+ }
+
+ GetTypedArrayBufferViewForTexelData(arrayBuffer, format) {
+ switch (format) {
+ case 'r32uint':
+ case 'rg32uint':
+ case 'rgba32uint':
+ return new Uint32Array(arrayBuffer);
+ case 'rgba8uint':
+ case 'rgba8unorm':
+ case 'bgra8unorm':
+ return new Uint8Array(arrayBuffer);
+ case 'rgba16uint':
+ return new Uint16Array(arrayBuffer);
+ case 'r32sint':
+ case 'rg32sint':
+ case 'rgba32sint':
+ return new Int32Array(arrayBuffer);
+ case 'rgba8sint':
+ case 'rgba8snorm':
+ return new Int8Array(arrayBuffer);
+ case 'rgba16sint':
+ return new Int16Array(arrayBuffer);
+ case 'r32float':
+ case 'rg32float':
+ case 'rgba32float':
+ return new Float32Array(arrayBuffer);
+ case 'rgba16float':
+ return new Float16Array(arrayBuffer);
+ default:
+ unreachable();
+ return new Uint8Array(arrayBuffer);
+ }
+ }
+
+ GetOutputBufferWGSLType(format) {
+ switch (kTextureFormatInfo[format].color.type) {
+ case 'uint':
+ return 'vec4u';
+ case 'sint':
+ return 'vec4i';
+ case 'float':
+ case 'unfilterable-float':
+ return 'vec4f';
+ default:
+ unreachable();
+ return '';
+ }
+ }
+
+ DoTransform(
+ storageTexture,
+ shaderStage,
+ format,
+ outputBuffer)
+ {
+ let declaration = '';
+ switch (storageTexture.dimension) {
+ case '1d':
+ declaration = 'texture_storage_1d';
+ break;
+ case '2d':
+ declaration =
+ storageTexture.depthOrArrayLayers > 1 ? 'texture_storage_2d_array' : 'texture_storage_2d';
+ break;
+ case '3d':
+ declaration = 'texture_storage_3d';
+ break;
+ }
+ const textureDeclaration = `
+ @group(0) @binding(0) var readOnlyTexture: ${declaration}<${format}, read>;
+ `;
+ const bindingResourceDeclaration = `
+ ${textureDeclaration}
+ @group(0) @binding(1)
+ var<storage,read_write> outputBuffer : array<${this.GetOutputBufferWGSLType(format)}>;
+ `;
+
+ const bindGroupEntries = [
+ {
+ binding: 0,
+ resource: storageTexture.createView()
+ },
+ {
+ binding: 1,
+ resource: {
+ buffer: outputBuffer
+ }
+ }];
+
+
+ const commandEncoder = this.device.createCommandEncoder();
+
+ switch (shaderStage) {
+ case 'compute':{
+ let textureLoadCoord = '';
+ switch (storageTexture.dimension) {
+ case '1d':
+ textureLoadCoord = 'invocationID.x';
+ break;
+ case '2d':
+ textureLoadCoord =
+ storageTexture.depthOrArrayLayers > 1 ?
+ `vec2u(invocationID.x, invocationID.y), invocationID.z` :
+ `vec2u(invocationID.x, invocationID.y)`;
+ break;
+ case '3d':
+ textureLoadCoord = 'invocationID';
+ break;
+ }
+
+ const computeShader = `
+ ${bindingResourceDeclaration}
+ @compute
+ @workgroup_size(
+ ${storageTexture.width}, ${storageTexture.height}, ${storageTexture.depthOrArrayLayers})
+ fn main(
+ @builtin(local_invocation_id) invocationID: vec3u,
+ @builtin(local_invocation_index) invocationIndex: u32) {
+ let initialValue = textureLoad(readOnlyTexture, ${textureLoadCoord});
+ outputBuffer[invocationIndex] = initialValue;
+ }`;
+ const computePipeline = this.device.createComputePipeline({
+ compute: {
+ module: this.device.createShaderModule({
+ code: computeShader
+ })
+ },
+ layout: 'auto'
+ });
+ const bindGroup = this.device.createBindGroup({
+ layout: computePipeline.getBindGroupLayout(0),
+ entries: bindGroupEntries
+ });
+
+ const computePassEncoder = commandEncoder.beginComputePass();
+ computePassEncoder.setPipeline(computePipeline);
+ computePassEncoder.setBindGroup(0, bindGroup);
+ computePassEncoder.dispatchWorkgroups(1);
+ computePassEncoder.end();
+ break;
+ }
+ case 'fragment':{
+ let textureLoadCoord = '';
+ switch (storageTexture.dimension) {
+ case '1d':
+ textureLoadCoord = 'textureCoord.x';
+ break;
+ case '2d':
+ textureLoadCoord =
+ storageTexture.depthOrArrayLayers > 1 ? 'textureCoord, z' : 'textureCoord';
+ break;
+ case '3d':
+ textureLoadCoord = 'vec3u(textureCoord, z)';
+ break;
+ }
+
+ const fragmentShader = `
+ ${bindingResourceDeclaration}
+ @fragment
+ fn main(@builtin(position) fragCoord: vec4f) -> @location(0) vec4f {
+ let textureCoord = vec2u(fragCoord.xy);
+ let storageTextureTexelCountPerImage = ${storageTexture.width * storageTexture.height}u;
+ for (var z = 0u; z < ${storageTexture.depthOrArrayLayers}; z++) {
+ let initialValue = textureLoad(readOnlyTexture, ${textureLoadCoord});
+ let outputIndex =
+ storageTextureTexelCountPerImage * z + textureCoord.y * ${storageTexture.width} +
+ textureCoord.x;
+ outputBuffer[outputIndex] = initialValue;
+ }
+ return vec4f(0.0, 1.0, 0.0, 1.0);
+ }`;
+ const vertexShader = `
+ @vertex
+ fn main(@builtin(vertex_index) vertexIndex : u32) -> @builtin(position) vec4f {
+ var pos = array(
+ vec2f(-1.0, -1.0),
+ vec2f(-1.0, 1.0),
+ vec2f( 1.0, -1.0),
+ vec2f(-1.0, 1.0),
+ vec2f( 1.0, -1.0),
+ vec2f( 1.0, 1.0));
+ return vec4f(pos[vertexIndex], 0.0, 1.0);
+ }
+ `;
+ const renderPipeline = this.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: this.device.createShaderModule({
+ code: vertexShader
+ })
+ },
+ fragment: {
+ module: this.device.createShaderModule({
+ code: fragmentShader
+ }),
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ },
+ primitive: {
+ topology: 'triangle-list'
+ }
+ });
+
+ const bindGroup = this.device.createBindGroup({
+ layout: renderPipeline.getBindGroupLayout(0),
+ entries: bindGroupEntries
+ });
+
+ const placeholderColorTexture = this.device.createTexture({
+ size: [storageTexture.width, storageTexture.height, 1],
+ usage: GPUTextureUsage.RENDER_ATTACHMENT,
+ format: 'rgba8unorm'
+ });
+ this.trackForCleanup(placeholderColorTexture);
+
+ const renderPassEncoder = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: placeholderColorTexture.createView(),
+ loadOp: 'clear',
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
+ storeOp: 'store'
+ }]
+
+ });
+ renderPassEncoder.setPipeline(renderPipeline);
+ renderPassEncoder.setBindGroup(0, bindGroup);
+ renderPassEncoder.draw(6);
+ renderPassEncoder.end();
+ break;
+ }
+ case 'vertex':{
+ // For each texel location (coordX, coordY), draw one point at (coordX + 0.5, coordY + 0.5)
+ // in the storageTexture.width * storageTexture.height grid, and save all the texel values
+ // at (coordX, coordY, z) (z >= 0 && z < storageTexture.depthOrArrayLayers) into the
+ // corresponding vertex shader outputs.
+ let vertexOutputs = '';
+ for (let layer = 0; layer < storageTexture.depthOrArrayLayers; ++layer) {
+ vertexOutputs = vertexOutputs.concat(
+ `
+ @location(${layer + 1}) @interpolate(flat)
+ vertex_out${layer}: ${this.GetOutputBufferWGSLType(format)},`
+ );
+ }
+
+ let loadFromTextureWGSL = '';
+ switch (storageTexture.dimension) {
+ case '1d':
+ loadFromTextureWGSL = `
+ output.vertex_out0 = textureLoad(readOnlyTexture, coordX);`;
+ break;
+ case '2d':
+ if (storageTexture.depthOrArrayLayers === 1) {
+ loadFromTextureWGSL = `
+ output.vertex_out0 = textureLoad(readOnlyTexture, vec2u(coordX, coordY));`;
+ } else {
+ for (let z = 0; z < storageTexture.depthOrArrayLayers; ++z) {
+ loadFromTextureWGSL = loadFromTextureWGSL.concat(`
+ output.vertex_out${z} =
+ textureLoad(readOnlyTexture, vec2u(coordX, coordY), ${z});`);
+ }
+ }
+ break;
+ case '3d':
+ for (let z = 0; z < storageTexture.depthOrArrayLayers; ++z) {
+ loadFromTextureWGSL = loadFromTextureWGSL.concat(`
+ output.vertex_out${z} = textureLoad(readOnlyTexture, vec3u(coordX, coordY, ${z}));`);
+ }
+ break;
+ }
+
+ let outputToBufferWGSL = '';
+ for (let layer = 0; layer < storageTexture.depthOrArrayLayers; ++layer) {
+ outputToBufferWGSL = outputToBufferWGSL.concat(
+ `
+ let outputIndex${layer} =
+ storageTextureTexelCountPerImage * ${layer}u +
+ fragmentInput.tex_coord.y * ${storageTexture.width}u + fragmentInput.tex_coord.x;
+ outputBuffer[outputIndex${layer}] = fragmentInput.vertex_out${layer};`
+ );
+ }
+
+ const shader = `
+ ${bindingResourceDeclaration}
+ struct VertexOutput {
+ @builtin(position) my_pos: vec4f,
+ @location(0) @interpolate(flat) tex_coord: vec2u,
+ ${vertexOutputs}
+ }
+ @vertex
+ fn vs_main(@builtin(vertex_index) vertexIndex : u32) -> VertexOutput {
+ var output : VertexOutput;
+ let coordX = vertexIndex % ${storageTexture.width}u;
+ let coordY = vertexIndex / ${storageTexture.width}u;
+ // Each vertex in the mesh take an even step along X axis from -1.0 to 1.0.
+ let posXStep = f32(${2.0 / storageTexture.width});
+ // As well as along Y axis.
+ let posYStep = f32(${2.0 / storageTexture.height});
+ // And the vertex located in the middle of the step, i.e. with a bias of 0.5 step.
+ let outputPosX = -1.0 + posXStep * 0.5 + posXStep * f32(coordX);
+ let outputPosY = -1.0 + posYStep * 0.5 + posYStep * f32(coordY);
+ output.my_pos = vec4f(outputPosX, outputPosY, 0.0, 1.0);
+ output.tex_coord = vec2u(coordX, coordY);
+ ${loadFromTextureWGSL}
+ return output;
+ }
+ @fragment
+ fn fs_main(fragmentInput : VertexOutput) -> @location(0) vec4f {
+ let storageTextureTexelCountPerImage = ${storageTexture.width * storageTexture.height}u;
+ ${outputToBufferWGSL}
+ return vec4f(0.0, 1.0, 0.0, 1.0);
+ }
+ `;
+
+ const renderPipeline = this.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: this.device.createShaderModule({
+ code: shader
+ })
+ },
+ fragment: {
+ module: this.device.createShaderModule({
+ code: shader
+ }),
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ },
+ primitive: {
+ topology: 'point-list'
+ }
+ });
+
+ const bindGroup = this.device.createBindGroup({
+ layout: renderPipeline.getBindGroupLayout(0),
+ entries: bindGroupEntries
+ });
+
+ const placeholderColorTexture = this.device.createTexture({
+ size: [storageTexture.width, storageTexture.height, 1],
+ usage: GPUTextureUsage.RENDER_ATTACHMENT,
+ format: 'rgba8unorm'
+ });
+ this.trackForCleanup(placeholderColorTexture);
+
+ const renderPassEncoder = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: placeholderColorTexture.createView(),
+ loadOp: 'clear',
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
+ storeOp: 'store'
+ }]
+
+ });
+ renderPassEncoder.setPipeline(renderPipeline);
+ renderPassEncoder.setBindGroup(0, bindGroup);
+ renderPassEncoder.draw(storageTexture.width * storageTexture.height);
+ renderPassEncoder.end();
+ break;
+ }
+ }
+
+ this.queue.submit([commandEncoder.finish()]);
+ }
+}
+
+export const g = makeTestGroup(F);
+
+g.test('basic').
+desc(
+ `The basic functionality tests for read-only storage textures. In the test we read data from
+ the read-only storage texture, write the data into an output storage buffer, and check if the
+ data in the output storage buffer is exactly what we expect.`
+).
+params((u) =>
+u.
+combine('format', kColorTextureFormats).
+filter(
+ (p) => p.format === 'bgra8unorm' || kTextureFormatInfo[p.format].color?.storage === true
+).
+combine('shaderStage', kValidShaderStages).
+combine('dimension', kTextureDimensions).
+combine('depthOrArrayLayers', [1, 2]).
+unless((p) => p.dimension === '1d' && p.depthOrArrayLayers > 1)
+).
+beforeAllSubcases((t) => {
+ if (t.params.format === 'bgra8unorm') {
+ t.selectDeviceOrSkipTestCase('bgra8unorm-storage');
+ }
+ if (t.isCompatibility) {
+ t.skipIfTextureFormatNotUsableAsStorageTexture(t.params.format);
+ }
+}).
+fn((t) => {
+ const { format, shaderStage, dimension, depthOrArrayLayers } = t.params;
+
+ const kWidth = 8;
+ const height = dimension === '1d' ? 1 : 8;
+ const storageTexture = t.device.createTexture({
+ format,
+ dimension,
+ size: [kWidth, height, depthOrArrayLayers],
+ usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.COPY_DST | GPUTextureUsage.STORAGE_BINDING
+ });
+ t.trackForCleanup(storageTexture);
+
+ const expectedData = t.InitTextureAndGetExpectedOutputBufferData(storageTexture, format);
+
+ const outputBuffer = t.device.createBuffer({
+ size: 4 * 4 * kWidth * height * depthOrArrayLayers,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ });
+ t.trackForCleanup(outputBuffer);
+
+ t.DoTransform(storageTexture, shaderStage, format, outputBuffer);
+
+ switch (kTextureFormatInfo[format].color.type) {
+ case 'uint':
+ t.expectGPUBufferValuesEqual(outputBuffer, new Uint32Array(expectedData));
+ break;
+ case 'sint':
+ t.expectGPUBufferValuesEqual(outputBuffer, new Int32Array(expectedData));
+ break;
+ case 'float':
+ case 'unfilterable-float':
+ t.expectGPUBufferValuesEqual(outputBuffer, new Float32Array(expectedData));
+ break;
+ default:
+ unreachable();
+ break;
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_write.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_write.spec.js
new file mode 100644
index 0000000000..ecc27c47ff
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/storage_texture/read_write.spec.js
@@ -0,0 +1,385 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests for the behavior of read-write storage textures.
+
+TODO:
+- Test resource usage transitions with read-write storage textures
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { assert, unreachable } from '../../../../common/util/util.js';
+import { kTextureDimensions } from '../../../capability_info.js';
+import { kColorTextureFormats, kTextureFormatInfo } from '../../../format_info.js';
+import { GPUTest } from '../../../gpu_test.js';
+import { align } from '../../../util/math.js';
+
+const kShaderStagesForReadWriteStorageTexture = ['fragment', 'compute'];
+
+
+
+class F extends GPUTest {
+ GetInitialData(storageTexture) {
+ const format = storageTexture.format;
+ const bytesPerBlock = kTextureFormatInfo[format].bytesPerBlock;
+ assert(bytesPerBlock !== undefined);
+
+ const width = storageTexture.width;
+ const height = storageTexture.height;
+ const depthOrArrayLayers = storageTexture.depthOrArrayLayers;
+ const initialData = new ArrayBuffer(bytesPerBlock * width * height * depthOrArrayLayers);
+ const initialTypedData = this.GetTypedArrayBuffer(initialData, format);
+ for (let z = 0; z < depthOrArrayLayers; ++z) {
+ for (let y = 0; y < height; ++y) {
+ for (let x = 0; x < width; ++x) {
+ const index = z * width * height + y * width + x;
+ switch (format) {
+ case 'r32sint':
+ initialTypedData[index] = (index & 1 ? 1 : -1) * (2 * index + 1);
+ break;
+ case 'r32uint':
+ initialTypedData[index] = 2 * index + 1;
+ break;
+ case 'r32float':
+ initialTypedData[index] = (2 * index + 1) / 10.0;
+ break;
+ }
+ }
+ }
+ }
+ return initialData;
+ }
+
+ GetTypedArrayBuffer(arrayBuffer, format) {
+ switch (format) {
+ case 'r32sint':
+ return new Int32Array(arrayBuffer);
+ case 'r32uint':
+ return new Uint32Array(arrayBuffer);
+ case 'r32float':
+ return new Float32Array(arrayBuffer);
+ default:
+ unreachable();
+ return new Uint8Array(arrayBuffer);
+ }
+ }
+
+ GetExpectedData(
+ shaderStage,
+ storageTexture,
+ initialData)
+ {
+ const format = storageTexture.format;
+ const bytesPerBlock = kTextureFormatInfo[format].bytesPerBlock;
+ assert(bytesPerBlock !== undefined);
+
+ const width = storageTexture.width;
+ const height = storageTexture.height;
+ const depthOrArrayLayers = storageTexture.depthOrArrayLayers;
+ const bytesPerRowAlignment = align(bytesPerBlock * width, 256);
+ const itemsPerRow = bytesPerRowAlignment / bytesPerBlock;
+
+ const expectedData = new ArrayBuffer(
+ bytesPerRowAlignment * (height * depthOrArrayLayers - 1) + bytesPerBlock * width
+ );
+ const expectedTypedData = this.GetTypedArrayBuffer(expectedData, format);
+ const initialTypedData = this.GetTypedArrayBuffer(initialData, format);
+ for (let z = 0; z < depthOrArrayLayers; ++z) {
+ for (let y = 0; y < height; ++y) {
+ for (let x = 0; x < width; ++x) {
+ const expectedIndex = z * itemsPerRow * height + y * itemsPerRow + x;
+ switch (shaderStage) {
+ case 'compute':{
+ // In the compute shader we flip the texture along the diagonal.
+ const initialIndex =
+ (depthOrArrayLayers - 1 - z) * width * height +
+ (height - 1 - y) * width + (
+ width - 1 - x);
+ expectedTypedData[expectedIndex] = initialTypedData[initialIndex];
+ break;
+ }
+ case 'fragment':{
+ // In the fragment shader we double the original texel value of the read-write storage
+ // texture.
+ const initialIndex = z * width * height + y * width + x;
+ expectedTypedData[expectedIndex] = initialTypedData[initialIndex] * 2;
+ break;
+ }
+ }
+ }
+ }
+ }
+ return expectedData;
+ }
+
+ RecordCommandsToTransform(
+ device,
+ shaderStage,
+ commandEncoder,
+ rwTexture)
+ {
+ let declaration = '';
+ switch (rwTexture.dimension) {
+ case '1d':
+ declaration = 'texture_storage_1d';
+ break;
+ case '2d':
+ declaration =
+ rwTexture.depthOrArrayLayers > 1 ? 'texture_storage_2d_array' : 'texture_storage_2d';
+ break;
+ case '3d':
+ declaration = 'texture_storage_3d';
+ break;
+ }
+ const textureDeclaration = `
+ @group(0) @binding(0) var rwTexture: ${declaration}<${rwTexture.format}, read_write>;
+ `;
+
+ switch (shaderStage) {
+ case 'fragment':{
+ const vertexShader = `
+ @vertex
+ fn main(@builtin(vertex_index) VertexIndex : u32) -> @builtin(position) vec4f {
+ var pos = array(
+ vec2f(-1.0, -1.0),
+ vec2f(-1.0, 1.0),
+ vec2f( 1.0, -1.0),
+ vec2f(-1.0, 1.0),
+ vec2f( 1.0, -1.0),
+ vec2f( 1.0, 1.0));
+ return vec4f(pos[VertexIndex], 0.0, 1.0);
+ }
+ `;
+ let textureLoadStoreCoord = '';
+ switch (rwTexture.dimension) {
+ case '1d':
+ textureLoadStoreCoord = 'textureCoord.x';
+ break;
+ case '2d':
+ textureLoadStoreCoord =
+ rwTexture.depthOrArrayLayers > 1 ? 'textureCoord, z' : 'textureCoord';
+ break;
+ case '3d':
+ textureLoadStoreCoord = 'vec3u(textureCoord, z)';
+ break;
+ }
+ const fragmentShader = `
+ ${textureDeclaration}
+ @fragment
+ fn main(@builtin(position) fragCoord: vec4f) -> @location(0) vec4f {
+ let textureCoord = vec2u(fragCoord.xy);
+
+ for (var z = 0u; z < ${rwTexture.depthOrArrayLayers}; z++) {
+ let initialValue = textureLoad(rwTexture, ${textureLoadStoreCoord});
+ let outputValue = initialValue * 2;
+ textureStore(rwTexture, ${textureLoadStoreCoord}, outputValue);
+ }
+
+ return vec4f(0.0, 1.0, 0.0, 1.0);
+ }
+ `;
+ const renderPipeline = device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: device.createShaderModule({
+ code: vertexShader
+ })
+ },
+ fragment: {
+ module: device.createShaderModule({
+ code: fragmentShader
+ }),
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ },
+ primitive: {
+ topology: 'triangle-list'
+ }
+ });
+
+ const bindGroup = device.createBindGroup({
+ layout: renderPipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: rwTexture.createView()
+ }]
+
+ });
+
+ const placeholderColorTexture = device.createTexture({
+ size: [rwTexture.width, rwTexture.height, 1],
+ usage: GPUTextureUsage.RENDER_ATTACHMENT,
+ format: 'rgba8unorm'
+ });
+ this.trackForCleanup(placeholderColorTexture);
+
+ const renderPassEncoder = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: placeholderColorTexture.createView(),
+ loadOp: 'clear',
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
+ storeOp: 'store'
+ }]
+
+ });
+ renderPassEncoder.setPipeline(renderPipeline);
+ renderPassEncoder.setBindGroup(0, bindGroup);
+ renderPassEncoder.draw(6);
+ renderPassEncoder.end();
+ break;
+ }
+ case 'compute':{
+ let textureLoadCoord = '';
+ let textureStoreCoord = '';
+ switch (rwTexture.dimension) {
+ case '1d':
+ textureLoadCoord = 'dimension - 1u - invocationID.x';
+ textureStoreCoord = 'invocationID.x';
+ break;
+ case '2d':
+ textureLoadCoord =
+ rwTexture.depthOrArrayLayers > 1 ?
+ `vec2u(dimension.x - 1u - invocationID.x, dimension.y - 1u - invocationID.y),
+ textureNumLayers(rwTexture) - 1u - invocationID.z` :
+ `vec2u(dimension.x - 1u - invocationID.x, dimension.y - 1u - invocationID.y)`;
+ textureStoreCoord =
+ rwTexture.depthOrArrayLayers > 1 ?
+ 'invocationID.xy, invocationID.z' :
+ 'invocationID.xy';
+ break;
+ case '3d':
+ textureLoadCoord = `
+ vec3u(dimension.x - 1u - invocationID.x, dimension.y - 1u - invocationID.y,
+ dimension.z - 1u - invocationID.z)`;
+ textureStoreCoord = 'invocationID';
+ break;
+ }
+
+ const computeShader = `
+ ${textureDeclaration}
+ @compute
+ @workgroup_size(${rwTexture.width}, ${rwTexture.height}, ${rwTexture.depthOrArrayLayers})
+ fn main(@builtin(local_invocation_id) invocationID: vec3u) {
+ let dimension = textureDimensions(rwTexture);
+
+ let initialValue = textureLoad(rwTexture, ${textureLoadCoord});
+ textureBarrier();
+
+ textureStore(rwTexture, ${textureStoreCoord}, initialValue);
+ }`;
+
+ const computePipeline = device.createComputePipeline({
+ compute: {
+ module: device.createShaderModule({
+ code: computeShader
+ })
+ },
+ layout: 'auto'
+ });
+ const bindGroup = device.createBindGroup({
+ layout: computePipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: rwTexture.createView()
+ }]
+
+ });
+ const computePassEncoder = commandEncoder.beginComputePass();
+ computePassEncoder.setPipeline(computePipeline);
+ computePassEncoder.setBindGroup(0, bindGroup);
+ computePassEncoder.dispatchWorkgroups(1);
+ computePassEncoder.end();
+ break;
+ }
+ }
+ }
+}
+
+export const g = makeTestGroup(F);
+
+g.test('basic').
+desc(
+ `The basic functionality tests for read-write storage textures. In the test we read data from
+ the read-write storage texture, do transforms and write the data back to the read-write storage
+ texture. textureBarrier() is also called in the tests using compute pipelines.`
+).
+params((u) =>
+u.
+combine('format', kColorTextureFormats).
+filter((p) => kTextureFormatInfo[p.format].color?.readWriteStorage === true).
+combine('shaderStage', kShaderStagesForReadWriteStorageTexture).
+combine('textureDimension', kTextureDimensions).
+combine('depthOrArrayLayers', [1, 2]).
+unless((p) => p.textureDimension === '1d' && p.depthOrArrayLayers > 1)
+).
+beforeAllSubcases((t) => {
+ t.skipIfTextureFormatNotUsableAsStorageTexture(t.params.format);
+}).
+fn((t) => {
+ const { format, shaderStage, textureDimension, depthOrArrayLayers } = t.params;
+
+ // In compatibility mode the lowest maxComputeInvocationsPerWorkgroup is 128 vs non-compat which is 256
+ // So in non-compat we get 16 * 8 * 2, vs compat where we get 8 * 8 * 2
+ const kWidth = t.isCompatibility ? 8 : 16;
+ const height = textureDimension === '1d' ? 1 : 8;
+ const textureSize = [kWidth, height, depthOrArrayLayers];
+ const storageTexture = t.device.createTexture({
+ format,
+ dimension: textureDimension,
+ size: textureSize,
+ usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.COPY_DST | GPUTextureUsage.STORAGE_BINDING
+ });
+ t.trackForCleanup(storageTexture);
+
+ const bytesPerBlock = kTextureFormatInfo[format].bytesPerBlock;
+ const initialData = t.GetInitialData(storageTexture);
+ t.queue.writeTexture(
+ { texture: storageTexture },
+ initialData,
+ {
+ bytesPerRow: bytesPerBlock * kWidth,
+ rowsPerImage: height
+ },
+ textureSize
+ );
+
+ const commandEncoder = t.device.createCommandEncoder();
+
+ t.RecordCommandsToTransform(t.device, shaderStage, commandEncoder, storageTexture);
+
+ const expectedData = t.GetExpectedData(shaderStage, storageTexture, initialData);
+ const readbackBuffer = t.device.createBuffer({
+ size: expectedData.byteLength,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+ t.trackForCleanup(readbackBuffer);
+ const bytesPerRow = align(bytesPerBlock * kWidth, 256);
+ commandEncoder.copyTextureToBuffer(
+ {
+ texture: storageTexture
+ },
+ {
+ buffer: readbackBuffer,
+ bytesPerRow,
+ rowsPerImage: height
+ },
+ textureSize
+ );
+ t.queue.submit([commandEncoder.finish()]);
+
+ switch (format) {
+ case 'r32sint':
+ t.expectGPUBufferValuesEqual(readbackBuffer, new Int32Array(expectedData));
+ break;
+ case 'r32uint':
+ t.expectGPUBufferValuesEqual(readbackBuffer, new Uint32Array(expectedData));
+ break;
+ case 'r32float':
+ t.expectGPUBufferValuesEqual(readbackBuffer, new Float32Array(expectedData));
+ break;
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/format_reinterpretation.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/format_reinterpretation.spec.js
index efe3cf3265..f942724585 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/format_reinterpretation.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/format_reinterpretation.spec.js
@@ -100,12 +100,15 @@ u //
.combine('format', kRegularTextureFormats).
combine('viewFormat', kRegularTextureFormats).
filter(
- ({ format, viewFormat }) => format !== viewFormat && viewCompatible(format, viewFormat)
+ ({ format, viewFormat }) =>
+ format !== viewFormat && viewCompatible(false, format, viewFormat)
)
).
beforeAllSubcases((t) => {
const { format, viewFormat } = t.params;
t.skipIfTextureFormatNotSupported(format, viewFormat);
+ // Compatibility mode does not support format reinterpretation.
+ t.skipIf(t.isCompatibility);
}).
fn((t) => {
const { format, viewFormat } = t.params;
@@ -200,13 +203,16 @@ u //
.combine('format', kRenderableColorTextureFormats).
combine('viewFormat', kRenderableColorTextureFormats).
filter(
- ({ format, viewFormat }) => format !== viewFormat && viewCompatible(format, viewFormat)
+ ({ format, viewFormat }) =>
+ format !== viewFormat && viewCompatible(false, format, viewFormat)
).
combine('sampleCount', [1, 4])
).
beforeAllSubcases((t) => {
const { format, viewFormat } = t.params;
t.skipIfTextureFormatNotSupported(format, viewFormat);
+ // Compatibility mode does not support format reinterpretation.
+ t.skipIf(t.isCompatibility);
}).
fn((t) => {
const { format, viewFormat, sampleCount } = t.params;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/write.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/write.spec.js
index 5b52d9d0b2..185407105c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/write.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/operation/texture_view/write.spec.js
@@ -3,6 +3,9 @@
**/export const description = `
Test the result of writing textures through texture views with various options.
+Reads value from a shader array, writes the value via various write methods.
+Check the texture result with the expected texel view.
+
All x= every possible view write method: {
- storage write {fragment, compute}
- render pass store
@@ -13,20 +16,358 @@ Format reinterpretation is not tested here. It is in format_reinterpretation.spe
TODO: Write helper for this if not already available (see resource_init, buffer_sync_test for related code).
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { GPUTest } from '../../../gpu_test.js';
+import { unreachable } from '../../../../common/util/util.js';
+import {
+ kRegularTextureFormats,
+ kTextureFormatInfo } from
+
+'../../../format_info.js';
+import { GPUTest, TextureTestMixin } from '../../../gpu_test.js';
+import { kFullscreenQuadVertexShaderCode } from '../../../util/shader.js';
+import { TexelView } from '../../../util/texture/texel_view.js';
+
+export const g = makeTestGroup(TextureTestMixin(GPUTest));
+
+const kTextureViewWriteMethods = [
+'storage-write-fragment',
+'storage-write-compute',
+'render-pass-store',
+'render-pass-resolve'];
+
+
+
+// Src color values to read from a shader array.
+const kColorsFloat = [
+{ R: 1.0, G: 0.0, B: 0.0, A: 0.8 },
+{ R: 0.0, G: 1.0, B: 0.0, A: 0.7 },
+{ R: 0.0, G: 0.0, B: 0.0, A: 0.6 },
+{ R: 0.0, G: 0.0, B: 0.0, A: 0.5 },
+{ R: 1.0, G: 1.0, B: 1.0, A: 0.4 },
+{ R: 0.7, G: 0.0, B: 0.0, A: 0.3 },
+{ R: 0.0, G: 0.8, B: 0.0, A: 0.2 },
+{ R: 0.0, G: 0.0, B: 0.9, A: 0.1 },
+{ R: 0.1, G: 0.2, B: 0.0, A: 0.3 },
+{ R: 0.4, G: 0.3, B: 0.6, A: 0.8 }];
+
+
+function FloatToIntColor(c) {
+ return Math.floor(c * 100);
+}
+
+const kColorsInt = kColorsFloat.map((c) => {
+ return {
+ R: FloatToIntColor(c.R),
+ G: FloatToIntColor(c.G),
+ B: FloatToIntColor(c.B),
+ A: FloatToIntColor(c.A)
+ };
+});
+
+const kTextureSize = 16;
+
+function writeTextureAndGetExpectedTexelView(
+t,
+method,
+view,
+format,
+sampleCount)
+{
+ const info = kTextureFormatInfo[format];
+ const isFloatType = info.color.type === 'float' || info.color.type === 'unfilterable-float';
+ const kColors = isFloatType ? kColorsFloat : kColorsInt;
+ const expectedTexelView = TexelView.fromTexelsAsColors(
+ format,
+ (coords) => {
+ const pixelPos = coords.y * kTextureSize + coords.x;
+ return kColors[pixelPos % kColors.length];
+ },
+ { clampToFormatRange: true }
+ );
+ const vecType = isFloatType ? 'vec4f' : info.color.type === 'sint' ? 'vec4i' : 'vec4u';
+ const kColorArrayShaderString = `array<${vecType}, ${kColors.length}>(
+ ${kColors.map((t) => `${vecType}(${t.R}, ${t.G}, ${t.B}, ${t.A}) `).join(',')}
+ )`;
+
+ switch (method) {
+ case 'storage-write-compute':
+ {
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var dst: texture_storage_2d<${format}, write>;
+ @compute @workgroup_size(1, 1) fn main(
+ @builtin(global_invocation_id) global_id: vec3<u32>,
+ ) {
+ const src = ${kColorArrayShaderString};
+ let coord = vec2u(global_id.xy);
+ let idx = coord.x + coord.y * ${kTextureSize};
+ textureStore(dst, coord, src[idx % ${kColors.length}]);
+ }`
+ }),
+ entryPoint: 'main'
+ }
+ });
+ const commandEncoder = t.device.createCommandEncoder();
+ const pass = commandEncoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(
+ 0,
+ t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: view
+ }]
+
+ })
+ );
+ pass.dispatchWorkgroups(kTextureSize, kTextureSize);
+ pass.end();
+ t.device.queue.submit([commandEncoder.finish()]);
+ }
+ break;
+
+ case 'storage-write-fragment':
+ {
+ // Create a placeholder color attachment texture,
+ // The size of which equals that of format texture we are testing,
+ // so that we have the same number of fragments and texels.
+ const kPlaceholderTextureFormat = 'rgba8unorm';
+ const placeholderTexture = t.trackForCleanup(
+ t.device.createTexture({
+ format: kPlaceholderTextureFormat,
+ size: [kTextureSize, kTextureSize],
+ usage: GPUTextureUsage.RENDER_ATTACHMENT
+ })
+ );
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({
+ code: kFullscreenQuadVertexShaderCode
+ })
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var dst: texture_storage_2d<${format}, write>;
+ @fragment fn main(
+ @builtin(position) fragCoord: vec4<f32>,
+ ) {
+ const src = ${kColorArrayShaderString};
+ let coord = vec2u(fragCoord.xy);
+ let idx = coord.x + coord.y * ${kTextureSize};
+ textureStore(dst, coord, src[idx % ${kColors.length}]);
+ }`
+ }),
+ // Set writeMask to 0 as the fragment shader has no output.
+ targets: [
+ {
+ format: kPlaceholderTextureFormat,
+ writeMask: 0
+ }]
+
+ }
+ });
+ const commandEncoder = t.device.createCommandEncoder();
+ const pass = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: placeholderTexture.createView(),
+ loadOp: 'clear',
+ storeOp: 'discard'
+ }]
+
+ });
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(
+ 0,
+ t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: view
+ }]
-export const g = makeTestGroup(GPUTest);
+ })
+ );
+ pass.draw(6);
+ pass.end();
+ t.device.queue.submit([commandEncoder.finish()]);
+ }
+ break;
+
+ case 'render-pass-store':
+ case 'render-pass-resolve':
+ {
+ // Create a placeholder color attachment texture for the store target when tesing texture is used as resolve target.
+ const targetView =
+ method === 'render-pass-store' ?
+ view :
+ t.
+ trackForCleanup(
+ t.device.createTexture({
+ format,
+ size: [kTextureSize, kTextureSize],
+ usage: GPUTextureUsage.RENDER_ATTACHMENT,
+ sampleCount: 4
+ })
+ ).
+ createView();
+ const resolveView = method === 'render-pass-store' ? undefined : view;
+ const multisampleCount = method === 'render-pass-store' ? sampleCount : 4;
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({
+ code: kFullscreenQuadVertexShaderCode
+ })
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code: `
+ @fragment fn main(
+ @builtin(position) fragCoord: vec4<f32>,
+ ) -> @location(0) ${vecType} {
+ const src = ${kColorArrayShaderString};
+ let coord = vec2u(fragCoord.xy);
+ let idx = coord.x + coord.y * ${kTextureSize};
+ return src[idx % ${kColors.length}];
+ }`
+ }),
+ targets: [
+ {
+ format
+ }]
+
+ },
+ multisample: {
+ count: multisampleCount
+ }
+ });
+ const commandEncoder = t.device.createCommandEncoder();
+ const pass = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: targetView,
+ resolveTarget: resolveView,
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
+
+ });
+ pass.setPipeline(pipeline);
+ pass.draw(6);
+ pass.end();
+ t.device.queue.submit([commandEncoder.finish()]);
+ }
+ break;
+ default:
+ unreachable();
+ }
+
+ return expectedTexelView;
+}
g.test('format').
desc(
`Views of every allowed format.
+Read values from color array in the shader, and write it to the texture view via different write methods.
+
- x= every texture format
- x= sampleCount {1, 4} if valid
- x= every possible view write method (see above)
+
+TODO: Test sampleCount > 1 for 'render-pass-store' after extending copySinglePixelTextureToBufferUsingComputePass
+ to read multiple pixels from multisampled textures. [1]
+TODO: Test rgb10a2uint when TexelRepresentation.numericRange is made per-component. [2]
`
).
-unimplemented();
+params((u) =>
+u //
+.combine('method', kTextureViewWriteMethods).
+combine('format', kRegularTextureFormats).
+combine('sampleCount', [1, 4]).
+filter(({ format, method, sampleCount }) => {
+ const info = kTextureFormatInfo[format];
+
+ if (sampleCount > 1 && !info.multisample) {
+ return false;
+ }
+
+ // [2]
+ if (format === 'rgb10a2uint') {
+ return false;
+ }
+
+ switch (method) {
+ case 'storage-write-compute':
+ case 'storage-write-fragment':
+ return info.color?.storage && sampleCount === 1;
+ case 'render-pass-store':
+ // [1]
+ if (sampleCount > 1) {
+ return false;
+ }
+ return !!info.colorRender;
+ case 'render-pass-resolve':
+ return !!info.colorRender?.resolve && sampleCount === 1;
+ }
+ return true;
+})
+).
+beforeAllSubcases((t) => {
+ const { format, method } = t.params;
+ t.skipIfTextureFormatNotSupported(format);
+
+ switch (method) {
+ case 'storage-write-compute':
+ case 'storage-write-fragment':
+ // Still need to filter again for compat mode.
+ t.skipIfTextureFormatNotUsableAsStorageTexture(format);
+ break;
+ }
+}).
+fn((t) => {
+ const { format, method, sampleCount } = t.params;
+
+ const usage =
+ GPUTextureUsage.COPY_SRC | (
+ method.includes('storage') ?
+ GPUTextureUsage.STORAGE_BINDING :
+ GPUTextureUsage.RENDER_ATTACHMENT);
+
+ const texture = t.trackForCleanup(
+ t.device.createTexture({
+ format,
+ usage,
+ size: [kTextureSize, kTextureSize],
+ sampleCount
+ })
+ );
+
+ const view = texture.createView();
+ const expectedTexelView = writeTextureAndGetExpectedTexelView(
+ t,
+ method,
+ view,
+ format,
+ sampleCount
+ );
+
+ // [1] Use copySinglePixelTextureToBufferUsingComputePass to check multisampled texture.
+ t.expectTexelViewComparisonIsOkInTexture({ texture }, expectedTexelView, [
+ kTextureSize,
+ kTextureSize]
+ );
+});
g.test('dimension').
desc(
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/buffer/mapping.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/buffer/mapping.spec.js
index 3d27f02567..89766884d3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/buffer/mapping.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/buffer/mapping.spec.js
@@ -27,8 +27,10 @@ class F extends ValidationTest {
this.expectValidationError(() => {
p = buffer.mapAsync(mode, offset, size);
}, expectation.validationError);
+
let caught = false;
let rejectedEarly = false;
+ let microtaskBRan = false;
// If mapAsync rejected early, microtask A will run before B.
// If not, B will run before A.
p.catch(() => {
@@ -38,20 +40,31 @@ class F extends ValidationTest {
queueMicrotask(() => {
// Microtask B
rejectedEarly = caught;
+ microtaskBRan = true;
});
- try {
- // This await will always complete after microtasks A and B are both done.
- await p;
- assert(expectation.rejectName === null, 'mapAsync unexpectedly passed');
- } catch (ex) {
- assert(ex instanceof Error, 'mapAsync rejected with non-error');
- assert(typeof ex.stack === 'string', 'mapAsync rejected without a stack');
- assert(expectation.rejectName === ex.name, `mapAsync rejected unexpectedly with: ${ex}`);
- assert(
- expectation.earlyRejection === rejectedEarly,
- 'mapAsync rejected at an unexpected timing'
- );
- }
+
+ // These handlers should always run after microtasks A and B are both done.
+ await p.then(
+ () => {
+ unreachable('mapAsync unexpectedly passed');
+ },
+ (ex) => {
+ const suffix = `\n Rejection: ${ex}`;
+
+ this.expect(microtaskBRan, 'scheduling problem?: microtaskB has not run yet' + suffix);
+ assert(ex instanceof Error, 'mapAsync rejected with non-error' + suffix);
+ this.expect(typeof ex.stack === 'string', 'mapAsync rejected without a stack' + suffix);
+ this.expect(
+ expectation.rejectName === ex.name,
+ 'mapAsync rejected with wrong exception name' + suffix
+ );
+ if (expectation.earlyRejection) {
+ this.expect(rejectedEarly, 'expected early mapAsync rejection, got deferred' + suffix);
+ } else {
+ this.expect(!rejectedEarly, 'expected deferred mapAsync rejection, got early' + suffix);
+ }
+ }
+ );
}
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/features/query_types.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/features/query_types.spec.js
index 02bfb09b64..44097d184c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/features/query_types.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/features/query_types.spec.js
@@ -43,11 +43,13 @@ fn((t) => {
});
});
-g.test('writeTimestamp').
+g.test('timestamp').
desc(
`
Tests that writing a timestamp throws a type error exception if the features don't contain
'timestamp-query'.
+
+ TODO: writeTimestamp test is disabled since it's removed from the spec for now.
`
).
params((u) => u.combine('featureContainsTimestampQuery', [false, true])).
@@ -66,11 +68,53 @@ fn((t) => {
const querySet = t.device.createQuerySet({
type: featureContainsTimestampQuery ? 'timestamp' : 'occlusion',
- count: 1
+ count: 2
});
- const encoder = t.createEncoder('non-pass');
- t.shouldThrow(featureContainsTimestampQuery ? false : 'TypeError', () => {
- encoder.encoder.writeTimestamp(querySet, 0);
- });
+ {
+ let expected = featureContainsTimestampQuery ? false : 'TypeError';
+ // writeTimestamp no longer exists and this should always TypeError.
+ expected = 'TypeError';
+
+ const encoder = t.createEncoder('non-pass');
+ t.shouldThrow(expected, () => {
+
+ encoder.encoder.writeTimestamp(querySet, 0);
+ });
+ encoder.finish();
+ }
+
+ {
+ const encoder = t.createEncoder('non-pass');
+ encoder.encoder.
+ beginComputePass({
+ timestampWrites: { querySet, beginningOfPassWriteIndex: 0, endOfPassWriteIndex: 1 }
+ }).
+ end();
+ t.expectValidationError(() => {
+ encoder.finish();
+ }, !featureContainsTimestampQuery);
+ }
+
+ {
+ const encoder = t.createEncoder('non-pass');
+ const view = t.
+ trackForCleanup(
+ t.device.createTexture({
+ size: [16, 16, 1],
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.RENDER_ATTACHMENT
+ })
+ ).
+ createView();
+ encoder.encoder.
+ beginRenderPass({
+ colorAttachments: [{ view, loadOp: 'clear', storeOp: 'discard' }],
+ timestampWrites: { querySet, beginningOfPassWriteIndex: 0, endOfPassWriteIndex: 1 }
+ }).
+ end();
+ t.expectValidationError(() => {
+ encoder.finish();
+ }, !featureContainsTimestampQuery);
+ }
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/limit_utils.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/limit_utils.js
index 10cfffdcef..442af6ac74 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/limit_utils.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/limit_utils.js
@@ -45,32 +45,47 @@ export function getPipelineTypeForBindingCombination(bindingCombination) {
}
}
-function getBindGroupIndex(bindGroupTest, i) {
+function getBindGroupIndex(bindGroupTest, numBindGroups, i) {
switch (bindGroupTest) {
case 'sameGroup':
return 0;
case 'differentGroups':
- return i % 3;
+ return i % numBindGroups;
+ }
+}
+
+function getBindingIndex(bindGroupTest, numBindGroups, i) {
+ switch (bindGroupTest) {
+ case 'sameGroup':
+ return i;
+ case 'differentGroups':
+ return i / numBindGroups | 0;
}
}
function getWGSLBindings(
-order,
-bindGroupTest,
-storageDefinitionWGSLSnippetFn,
+{
+ order,
+ bindGroupTest,
+ storageDefinitionWGSLSnippetFn,
+ numBindGroups
+
+
+
+
+
+},
numBindings,
id)
{
return reorder(
order,
- range(
- numBindings,
- (i) =>
- `@group(${getBindGroupIndex(
- bindGroupTest,
- i
- )}) @binding(${i}) ${storageDefinitionWGSLSnippetFn(i, id)};`
- )
+ range(numBindings, (i) => {
+ const groupNdx = getBindGroupIndex(bindGroupTest, numBindGroups, i);
+ const bindingNdx = getBindingIndex(bindGroupTest, numBindGroups, i);
+ const storageWGSL = storageDefinitionWGSLSnippetFn(i, id);
+ return `@group(${groupNdx}) @binding(${bindingNdx}) ${storageWGSL};`;
+ })
).join('\n ');
}
@@ -80,15 +95,22 @@ order,
bindGroupTest,
storageDefinitionWGSLSnippetFn,
bodyFn,
+numBindGroups,
numBindings,
extraWGSL = '')
{
+ const bindingParams = {
+ order,
+ bindGroupTest,
+ storageDefinitionWGSLSnippetFn,
+ numBindGroups
+ };
switch (bindingCombination) {
case 'vertex':
return `
${extraWGSL}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings, 0)}
+ ${getWGSLBindings(bindingParams, numBindings, 0)}
@vertex fn mainVS() -> @builtin(position) vec4f {
${bodyFn(numBindings, 0)}
@@ -99,7 +121,7 @@ extraWGSL = '')
return `
${extraWGSL}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings, 0)}
+ ${getWGSLBindings(bindingParams, numBindings, 0)}
@vertex fn mainVS() -> @builtin(position) vec4f {
return vec4f(0);
@@ -113,9 +135,9 @@ extraWGSL = '')
return `
${extraWGSL}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings, 0)}
+ ${getWGSLBindings(bindingParams, numBindings, 0)}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings - 1, 1)}
+ ${getWGSLBindings(bindingParams, numBindings - 1, 1)}
@vertex fn mainVS() -> @builtin(position) vec4f {
${bodyFn(numBindings, 0)}
@@ -131,9 +153,9 @@ extraWGSL = '')
return `
${extraWGSL}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings - 1, 0)}
+ ${getWGSLBindings(bindingParams, numBindings - 1, 0)}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings, 1)}
+ ${getWGSLBindings(bindingParams, numBindings, 1)}
@vertex fn mainVS() -> @builtin(position) vec4f {
${bodyFn(numBindings - 1, 0)}
@@ -148,8 +170,7 @@ extraWGSL = '')
case 'compute':
return `
${extraWGSL}
- ${getWGSLBindings(order, bindGroupTest, storageDefinitionWGSLSnippetFn, numBindings, 0)}
- @group(3) @binding(0) var<storage, read_write> d: f32;
+ ${getWGSLBindings(bindingParams, numBindings, 0)}
@compute @workgroup_size(1) fn main() {
${bodyFn(numBindings, 0)}
}
@@ -164,6 +185,7 @@ order,
bindGroupTest,
storageDefinitionWGSLSnippetFn,
usageWGSLSnippetFn,
+maxBindGroups,
numBindings,
extraWGSL = '')
{
@@ -174,6 +196,7 @@ extraWGSL = '')
storageDefinitionWGSLSnippetFn,
(numBindings, set) =>
`${range(numBindings, (i) => usageWGSLSnippetFn(i, set)).join('\n ')}`,
+ maxBindGroups,
numBindings,
extraWGSL
);
@@ -185,6 +208,7 @@ order,
bindGroupTest,
storageDefinitionWGSLSnippetFn,
usageWGSLSnippetFn,
+numBindGroups,
numBindings,
extraWGSL = '')
{
@@ -195,6 +219,7 @@ extraWGSL = '')
storageDefinitionWGSLSnippetFn,
(numBindings, set) =>
`${range(numBindings, (i) => usageWGSLSnippetFn(i, set)).join('\n ')}`,
+ numBindGroups,
numBindings,
extraWGSL
);
@@ -854,7 +879,7 @@ export class LimitTestsImpl extends GPUTestBase {
/**
* Creates an GPURenderCommandsMixin setup with some initial state.
*/
- _getGPURenderCommandsMixin(encoderType) {
+ #getGPURenderCommandsMixin(encoderType) {
const { device } = this;
switch (encoderType) {
@@ -895,7 +920,7 @@ export class LimitTestsImpl extends GPUTestBase {
});
const encoder = device.createCommandEncoder();
- const mixin = encoder.beginRenderPass({
+ const passEncoder = encoder.beginRenderPass({
colorAttachments: [
{
view: texture.createView(),
@@ -906,10 +931,10 @@ export class LimitTestsImpl extends GPUTestBase {
});
return {
- mixin,
+ passEncoder,
bindGroup,
prep() {
- mixin.end();
+ passEncoder.end();
},
test() {
encoder.finish();
@@ -946,16 +971,16 @@ export class LimitTestsImpl extends GPUTestBase {
});
- const mixin = device.createRenderBundleEncoder({
+ const passEncoder = device.createRenderBundleEncoder({
colorFormats: ['rgba8unorm']
});
return {
- mixin,
+ passEncoder,
bindGroup,
prep() {},
test() {
- mixin.finish();
+ passEncoder.finish();
}
};
break;
@@ -964,17 +989,23 @@ export class LimitTestsImpl extends GPUTestBase {
}
/**
- * Tests a method on GPURenderCommandsMixin
- * The function will be called with the mixin.
+ * Test a method on GPURenderCommandsMixin or GPUBindingCommandsMixin
+ * The function will be called with the passEncoder.
*/
- async testGPURenderCommandsMixin(
+ async testGPURenderAndBindingCommandsMixin(
encoderType,
fn,
+
+
+
+
+
+
shouldError,
msg = '')
{
- const { mixin, prep, test } = this._getGPURenderCommandsMixin(encoderType);
- fn({ mixin });
+ const { passEncoder, prep, test, bindGroup } = this.#getGPURenderCommandsMixin(encoderType);
+ fn({ passEncoder, bindGroup });
prep();
await this.expectValidationError(test, shouldError, msg);
@@ -983,7 +1014,7 @@ export class LimitTestsImpl extends GPUTestBase {
/**
* Creates GPUBindingCommandsMixin setup with some initial state.
*/
- _getGPUBindingCommandsMixin(encoderType) {
+ #getGPUBindingCommandsMixin(encoderType) {
const { device } = this;
switch (encoderType) {
@@ -1016,12 +1047,12 @@ export class LimitTestsImpl extends GPUTestBase {
});
const encoder = device.createCommandEncoder();
- const mixin = encoder.beginComputePass();
+ const passEncoder = encoder.beginComputePass();
return {
- mixin,
+ passEncoder,
bindGroup,
prep() {
- mixin.end();
+ passEncoder.end();
},
test() {
encoder.finish();
@@ -1030,15 +1061,15 @@ export class LimitTestsImpl extends GPUTestBase {
break;
}
case 'render':
- return this._getGPURenderCommandsMixin('render');
+ return this.#getGPURenderCommandsMixin('render');
case 'renderBundle':
- return this._getGPURenderCommandsMixin('renderBundle');
+ return this.#getGPURenderCommandsMixin('renderBundle');
}
}
/**
* Tests a method on GPUBindingCommandsMixin
- * The function pass will be called with the mixin and a bindGroup
+ * The function pass will be called with the passEncoder and a bindGroup
*/
async testGPUBindingCommandsMixin(
encoderType,
@@ -1046,8 +1077,8 @@ export class LimitTestsImpl extends GPUTestBase {
shouldError,
msg = '')
{
- const { mixin, bindGroup, prep, test } = this._getGPUBindingCommandsMixin(encoderType);
- fn({ mixin, bindGroup });
+ const { passEncoder, bindGroup, prep, test } = this.#getGPUBindingCommandsMixin(encoderType);
+ fn({ passEncoder, bindGroup });
prep();
await this.expectValidationError(test, shouldError, msg);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroups.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroups.spec.js
index ab0eaa3e4b..f239b560fa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroups.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroups.spec.js
@@ -1,6 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { range } from '../../../../../common/util/util.js';import {
+**/import { assert } from '../../../../../common/util/util.js';import {
kCreatePipelineTypes,
kEncoderTypes,
kMaximumLimitBaseParams,
@@ -10,30 +10,152 @@
const limit = 'maxBindGroups';
export const { g, description } = makeLimitTestGroup(limit);
+
+
+
+
+
+
+
+
+
+
+
+
+
+const kLimitToBindingLayout = [
+{
+ name: 'maxSampledTexturesPerShaderStage',
+ entry: {
+ texture: {}
+ }
+},
+{
+ name: 'maxSamplersPerShaderStage',
+ entry: {
+ sampler: {}
+ }
+},
+{
+ name: 'maxUniformBuffersPerShaderStage',
+ entry: {
+ buffer: {}
+ }
+},
+{
+ name: 'maxStorageBuffersPerShaderStage',
+ entry: {
+ buffer: {
+ type: 'read-only-storage'
+ }
+ }
+},
+{
+ name: 'maxStorageTexturesPerShaderStage',
+ entry: {
+ storageTexture: {
+ access: 'write-only',
+ format: 'rgba8unorm',
+ viewDimension: '2d'
+ }
+ }
+}];
+
+
+/**
+ * Yields all possible binding layout entries for a stage.
+ */
+function* getBindingLayoutEntriesForStage(device) {
+ for (const { name, entry } of kLimitToBindingLayout) {
+ const limit = device.limits[name];
+ for (let i = 0; i < limit; ++i) {
+ yield entry;
+ }
+ }
+}
+
+/**
+ * Yields all of the possible BindingLayoutEntryAndVisibility entries for a render pipeline
+ */
+function* getBindingLayoutEntriesForRenderPipeline(
+device)
+{
+ const visibilities = [GPUShaderStage.VERTEX, GPUShaderStage.FRAGMENT];
+ for (const visibility of visibilities) {
+ for (const bindEntryResourceType of getBindingLayoutEntriesForStage(device)) {
+ const entry = {
+ binding: 0,
+ visibility,
+ ...bindEntryResourceType
+ };
+ yield entry;
+ }
+ }
+}
+
+/**
+ * Returns the total possible bindings per render pipeline
+ */
+function getTotalPossibleBindingsPerRenderPipeline(device) {
+ const totalPossibleBindingsPerStage =
+ device.limits.maxSampledTexturesPerShaderStage +
+ device.limits.maxSamplersPerShaderStage +
+ device.limits.maxUniformBuffersPerShaderStage +
+ device.limits.maxStorageBuffersPerShaderStage +
+ device.limits.maxStorageTexturesPerShaderStage;
+ return totalPossibleBindingsPerStage * 2;
+}
+
+/**
+ * Yields count GPUBindGroupLayoutEntries
+ */
+function* getBindingLayoutEntries(
+device,
+count)
+{
+ assert(count < getTotalPossibleBindingsPerRenderPipeline(device));
+ const iter = getBindingLayoutEntriesForRenderPipeline(device);
+ for (; count > 0; --count) {
+ yield iter.next().value;
+ }
+}
+
g.test('createPipelineLayout,at_over').
desc(`Test using createPipelineLayout at and over ${limit} limit`).
params(kMaximumLimitBaseParams).
fn(async (t) => {
const { limitTest, testValueName } = t.params;
+
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const bindGroupLayouts = range(testValue, (_i) =>
- device.createBindGroupLayout({
- entries: [
- {
- binding: 0,
- visibility: GPUShaderStage.VERTEX,
- buffer: {}
- }]
-
- })
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const totalPossibleBindingsPerPipeline = getTotalPossibleBindingsPerRenderPipeline(device);
+ // Not sure what to do if we ever hit this but I think it's better to assert than silently skip.
+ assert(
+ testValue < totalPossibleBindingsPerPipeline,
+ `not enough possible bindings(${totalPossibleBindingsPerPipeline}) to test ${testValue} bindGroups`
);
- await t.expectValidationError(() => {
- device.createPipelineLayout({ bindGroupLayouts });
- }, shouldError);
+ const bindingDescriptions = [];
+ const bindGroupLayouts = [...getBindingLayoutEntries(device, testValue)].map((entry) => {
+ bindingDescriptions.push(
+ `${JSON.stringify(entry)} // group(${bindingDescriptions.length})`
+ );
+ return device.createBindGroupLayout({
+ entries: [entry]
+ });
+ });
+
+ await t.expectValidationError(
+ () => {
+ device.createPipelineLayout({ bindGroupLayouts });
+ },
+ shouldError,
+ `testing ${testValue} bindGroups on maxBindGroups = ${actualLimit} with \n${bindingDescriptions.join(
+ '\n'
+ )}`
+ );
}
);
});
@@ -76,8 +198,8 @@ fn(async (t) => {
const lastIndex = testValue - 1;
await t.testGPUBindingCommandsMixin(
encoderType,
- ({ mixin, bindGroup }) => {
- mixin.setBindGroup(lastIndex, bindGroup);
+ ({ passEncoder, bindGroup }) => {
+ passEncoder.setBindGroup(lastIndex, bindGroup);
},
shouldError,
`shouldError: ${shouldError}, actualLimit: ${actualLimit}, testValue: ${lastIndex}`
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.spec.js
new file mode 100644
index 0000000000..7e4b0ccda1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers.spec.js
@@ -0,0 +1,301 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kRenderEncoderTypes, kMaximumLimitBaseParams,
+ makeLimitTestGroup } from
+
+'./limit_utils.js';
+
+const kVertexBufferBindGroupPreferences = ['vertexBuffers', 'bindGroups'];
+
+
+const kLayoutTypes = ['auto', 'explicit'];
+
+
+/**
+ * Given testValue, choose more vertex buffers or more bind groups based on preference
+ */
+function getNumBindGroupsAndNumVertexBuffers(
+device,
+preference,
+testValue)
+{
+ switch (preference) {
+ case 'bindGroups':{
+ const numBindGroups = Math.min(testValue, device.limits.maxBindGroups);
+ const numVertexBuffers = Math.max(0, testValue - numBindGroups);
+ return { numVertexBuffers, numBindGroups };
+ }
+ case 'vertexBuffers':{
+ const numVertexBuffers = Math.min(testValue, device.limits.maxVertexBuffers);
+ const numBindGroups = Math.max(0, testValue - numVertexBuffers);
+ return { numVertexBuffers, numBindGroups };
+ }
+ }
+}
+
+function createLayout(device, layoutType, numBindGroups) {
+ switch (layoutType) {
+ case 'auto':
+ return 'auto';
+ case 'explicit':{
+ const bindGroupLayouts = new Array(numBindGroups);
+ if (numBindGroups > 0) {
+ bindGroupLayouts.fill(device.createBindGroupLayout({ entries: [] }));
+ bindGroupLayouts[numBindGroups - 1] = device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility: GPUShaderStage.VERTEX,
+ buffer: {}
+ }]
+
+ });
+ }
+ return device.createPipelineLayout({ bindGroupLayouts });
+ }
+ }
+}
+
+/**
+ * Generate a render pipeline that can be used to test maxBindGroupsPlusVertexBuffers
+ */
+function getPipelineDescriptor(
+device,
+preference,
+testValue,
+layoutType)
+{
+ // Get the numVertexBuffers and numBindGroups we could use given testValue as a total.
+ // We will only use 1 of each but we'll use the last index.
+ const { numVertexBuffers, numBindGroups } = getNumBindGroupsAndNumVertexBuffers(
+ device,
+ preference,
+ testValue
+ );
+
+ const layout = createLayout(device, layoutType, numBindGroups);
+
+ const [bindGroupDecl, bindGroupUsage] =
+ numBindGroups === 0 ?
+ ['', ''] :
+ [`@group(${numBindGroups - 1}) @binding(0) var<uniform> u: f32;`, `_ = u;`];
+
+ const [attribDecl, attribUsage] =
+ numVertexBuffers === 0 ?
+ ['', ''] :
+ ['@location(0) v: vec4f', `_ = v; // will use vertex buffer ${numVertexBuffers - 1}`];
+
+ const code = `
+ ${bindGroupDecl}
+
+ @vertex fn vs(${attribDecl}) -> @builtin(position) vec4f {
+ ${bindGroupUsage}
+ ${attribUsage}
+ return vec4f(0);
+ }
+
+ @fragment fn fs() -> @location(0) vec4f {
+ return vec4f(0);
+ }
+ `;
+
+ const module = device.createShaderModule({ code });
+ const buffers = new Array(numVertexBuffers);
+ if (numVertexBuffers > 0) {
+ buffers[numVertexBuffers - 1] = {
+ arrayStride: 16,
+ attributes: [{ shaderLocation: 0, offset: 0, format: 'float32' }]
+ };
+ }
+
+ return {
+ code,
+ descriptor: {
+ layout,
+ vertex: {
+ module,
+ buffers
+ },
+ fragment: {
+ module,
+ targets: [{ format: 'rgba8unorm' }]
+ }
+ }
+ };
+}
+
+const kExtraLimits = {
+ maxBindGroups: 'adapterLimit',
+ maxVertexBuffers: 'adapterLimit'
+};
+
+const limit = 'maxBindGroupsPlusVertexBuffers';
+export const { g, description } = makeLimitTestGroup(limit);
+
+g.test('createRenderPipeline,at_over').
+desc(`Test using at and over ${limit} limit in createRenderPipeline(Async).`).
+params(
+ kMaximumLimitBaseParams.
+ combine('async', [false, true]).
+ beginSubcases().
+ combine('preference', kVertexBufferBindGroupPreferences).
+ combine('layoutType', kLayoutTypes)
+).
+fn(async (t) => {
+ const { limitTest, testValueName, async, preference, layoutType } = t.params;
+ await t.testDeviceWithRequestedMaximumLimits(
+ limitTest,
+ testValueName,
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxUsableBindGroupsPlusVertexBuffers =
+ device.limits.maxBindGroups + device.limits.maxVertexBuffers;
+ t.skipIf(
+ maxUsableBindGroupsPlusVertexBuffers < actualLimit,
+ `can not test because the max usable bindGroups + vertexBuffers (${maxUsableBindGroupsPlusVertexBuffers}) is < maxBindGroupsAndVertexBuffers (${actualLimit})`
+ );
+ t.skipIf(
+ maxUsableBindGroupsPlusVertexBuffers === actualLimit && testValue > actualLimit,
+ `can not test because the max usable bindGroups + vertexBuffers (${maxUsableBindGroupsPlusVertexBuffers}) === maxBindGroupsAndVertexBuffers (${actualLimit})
+ but the testValue (${testValue}) > maxBindGroupsAndVertexBuffers (${actualLimit})`
+ );
+
+ const { code, descriptor } = getPipelineDescriptor(
+ device,
+ preference,
+ testValue,
+ layoutType
+ );
+
+ await t.testCreateRenderPipeline(
+ descriptor,
+ async,
+ shouldError,
+ `testValue: ${testValue}, actualLimit: ${actualLimit}, shouldError: ${shouldError}\n${code}`
+ );
+ },
+ kExtraLimits
+ );
+});
+
+g.test('draw,at_over').
+desc(`Test using at and over ${limit} limit draw/drawIndexed/drawIndirect/drawIndexedIndirect`).
+params(
+ kMaximumLimitBaseParams.
+ combine('encoderType', kRenderEncoderTypes).
+ beginSubcases().
+ combine('preference', kVertexBufferBindGroupPreferences).
+ combine('drawType', ['draw', 'drawIndexed', 'drawIndirect', 'drawIndexedIndirect'])
+).
+fn(async (t) => {
+ const { limitTest, testValueName, encoderType, drawType, preference } = t.params;
+ await t.testDeviceWithRequestedMaximumLimits(
+ limitTest,
+ testValueName,
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxUsableVertexBuffers = Math.min(
+ device.limits.maxVertexBuffers,
+ device.limits.maxVertexAttributes
+ );
+ const maxUsableBindGroupsPlusVertexBuffers =
+ device.limits.maxBindGroups + maxUsableVertexBuffers;
+ t.skipIf(
+ maxUsableBindGroupsPlusVertexBuffers < actualLimit,
+ `can not test because the max usable bindGroups + vertexBuffers (${maxUsableBindGroupsPlusVertexBuffers}) is < maxBindGroupsAndVertexBuffers (${actualLimit})`
+ );
+ t.skipIf(
+ maxUsableBindGroupsPlusVertexBuffers === actualLimit && testValue > actualLimit,
+ `can not test because the max usable bindGroups + vertexBuffers (${maxUsableBindGroupsPlusVertexBuffers}) === maxBindGroupsAndVertexBuffers (${actualLimit})
+ but the testValue (${testValue}) > maxBindGroupsAndVertexBuffers (${actualLimit})`
+ );
+
+ // Get the numVertexBuffers and numBindGroups we could use given testValue as a total.
+ // We will only use 1 of each but we'll use the last index.
+ const { numVertexBuffers, numBindGroups } = getNumBindGroupsAndNumVertexBuffers(
+ device,
+ preference,
+ testValue
+ );
+
+ const module = device.createShaderModule({
+ code: `
+ @vertex fn vs() -> @builtin(position) vec4f {
+ return vec4f(0);
+ }
+ @fragment fn fs() -> @location(0) vec4f {
+ return vec4f(0);
+ }
+ `
+ });
+ const pipeline = device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: { module, targets: [{ format: 'rgba8unorm' }] }
+ });
+
+ const vertexBuffer = device.createBuffer({
+ size: 16,
+ usage: GPUBufferUsage.VERTEX
+ });
+ t.trackForCleanup(vertexBuffer);
+
+ await t.testGPURenderAndBindingCommandsMixin(
+ encoderType,
+ ({ bindGroup, passEncoder }) => {
+ // Set the last vertex buffer and clear it. This should have no effect
+ // unless there is a bug in bookkeeping in the implementation.
+ passEncoder.setVertexBuffer(device.limits.maxVertexBuffers - 1, vertexBuffer);
+ passEncoder.setVertexBuffer(device.limits.maxVertexBuffers - 1, null);
+
+ // Set the last bindGroup and clear it. This should have no effect
+ // unless there is a bug in bookkeeping in the implementation.
+ passEncoder.setBindGroup(device.limits.maxBindGroups - 1, bindGroup);
+ passEncoder.setBindGroup(device.limits.maxBindGroups - 1, null);
+
+ if (numVertexBuffers) {
+ passEncoder.setVertexBuffer(numVertexBuffers - 1, vertexBuffer);
+ }
+
+ if (numBindGroups) {
+ passEncoder.setBindGroup(numBindGroups - 1, bindGroup);
+ }
+
+ passEncoder.setPipeline(pipeline);
+
+ const indirectBuffer = device.createBuffer({
+ size: 20,
+ usage: GPUBufferUsage.INDIRECT
+ });
+ t.trackForCleanup(indirectBuffer);
+
+ const indexBuffer = device.createBuffer({
+ size: 4,
+ usage: GPUBufferUsage.INDEX
+ });
+ t.trackForCleanup(indexBuffer);
+
+ switch (drawType) {
+ case 'draw':
+ passEncoder.draw(0);
+ break;
+ case 'drawIndexed':
+ passEncoder.setIndexBuffer(indexBuffer, 'uint16');
+ passEncoder.drawIndexed(0);
+ break;
+ case 'drawIndirect':
+ passEncoder.drawIndirect(indirectBuffer, 0);
+ break;
+ case 'drawIndexedIndirect':
+ passEncoder.setIndexBuffer(indexBuffer, 'uint16');
+ passEncoder.drawIndexedIndirect(indirectBuffer, 0);
+ break;
+ }
+ },
+ shouldError,
+ `testValue: ${testValue}, actualLimit: ${actualLimit}, shouldError: ${shouldError}`
+ );
+
+ vertexBuffer.destroy();
+ },
+ kExtraLimits
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js
index 2034364a5f..4eb76c7d38 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize.spec.js
@@ -12,7 +12,8 @@ import {
const limit = 'maxComputeWorkgroupStorageSize';
export const { g, description } = makeLimitTestGroup(limit);
-const kSmallestWorkgroupVarSize = 4;
+// Each var is roundUp(16, SizeOf(T))
+const kSmallestWorkgroupVarSize = 16;
const wgslF16Types = {
f16: { alignOf: 2, sizeOf: 2, requireF16: true },
@@ -71,7 +72,9 @@ function getModuleForWorkgroupStorageSize(device, wgslType, size) {
const { sizeOf, alignOf, requireF16 } = wgslTypes[wgslType];
const unitSize = align(sizeOf, alignOf);
const units = Math.floor(size / unitSize);
- const extra = (size - units * unitSize) / kSmallestWorkgroupVarSize;
+ const sizeUsed = align(units * unitSize, 16);
+ const sizeLeft = size - sizeUsed;
+ const extra = Math.floor(sizeLeft / kSmallestWorkgroupVarSize);
const code =
(requireF16 ? 'enable f16;\n' : '') +
@@ -89,7 +92,7 @@ function getModuleForWorkgroupStorageSize(device, wgslType, size) {
b: vec2f,
};
var<workgroup> d0: array<${wgslType}, ${units}>;
- ${extra ? `var<workgroup> d1: array<f32, ${extra}>;` : ''}
+ ${extra ? `var<workgroup> d1: array<vec4<f32>, ${extra}>;` : ''}
@compute @workgroup_size(1) fn main() {
_ = d0;
${extra ? '_ = d1;' : ''}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js
index 472630a7bf..8da125b1df 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents.spec.js
@@ -111,8 +111,12 @@ params(
combine('sampleMaskOut', [false, true])
).
beforeAllSubcases((t) => {
- if (t.isCompatibility && (t.params.sampleMaskIn || t.params.sampleMaskOut)) {
- t.skip('sample_mask not supported in compatibility mode');
+ if (t.isCompatibility) {
+ t.skipIf(
+ t.params.sampleMaskIn || t.params.sampleMaskOut,
+ 'sample_mask not supported in compatibility mode'
+ );
+ t.skipIf(t.params.sampleIndex, 'sample_index not supported in compatibility mode');
}
}).
fn(async (t) => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js
index 07d19ad596..36bc191474 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage.spec.js
@@ -1,8 +1,9 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range, reorder,
- kReorderOrderKeys } from
+ kReorderOrderKeys,
+ assert } from
'../../../../../common/util/util.js';
import { kShaderStageCombinationsWithStage } from '../../../../capability_info.js';
@@ -13,8 +14,14 @@ import {
kBindingCombinations,
getPipelineTypeForBindingCombination,
getPerStageWGSLForBindingCombination } from
+
'./limit_utils.js';
+const kExtraLimits = {
+ maxBindingsPerBindGroup: 'adapterLimit',
+ maxBindGroups: 'adapterLimit'
+};
+
const limit = 'maxSampledTexturesPerShaderStage';
export const { g, description } = makeLimitTestGroup(limit);
@@ -43,6 +50,9 @@ desc(
Note: We also test order to make sure the implementation isn't just looking
at just the last entry.
+
+ Note: It's also possible the maxBindingsPerBindGroup is lower than
+ ${limit} in which case skip the test since we can not hit the limit.
`
).
params(
@@ -56,11 +66,17 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, shouldError }) => {
+ t.skipIf(
+ t.adapter.limits.maxBindingsPerBindGroup < testValue,
+ `maxBindingsPerBindGroup = ${t.adapter.limits.maxBindingsPerBindGroup} which is less than ${testValue}`
+ );
+
await t.expectValidationError(
() => createBindGroupLayout(device, visibility, order, testValue),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -83,18 +99,30 @@ fn(async (t) => {
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const kNumGroups = 3;
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxBindingsPerBindGroup = Math.min(
+ t.device.limits.maxBindingsPerBindGroup,
+ actualLimit
+ );
+ const kNumGroups = Math.ceil(testValue / maxBindingsPerBindGroup);
+
+ // Not sure what to do in this case but best we get notified if it happens.
+ assert(kNumGroups <= t.device.limits.maxBindGroups);
+
const bindGroupLayouts = range(kNumGroups, (i) => {
- const minInGroup = Math.floor(testValue / kNumGroups);
- const numInGroup = i ? minInGroup : testValue - minInGroup * (kNumGroups - 1);
+ const numInGroup = Math.min(
+ testValue - i * maxBindingsPerBindGroup,
+ maxBindingsPerBindGroup
+ );
return createBindGroupLayout(device, visibility, order, numInGroup);
});
+
await t.expectValidationError(
() => device.createPipelineLayout({ bindGroupLayouts }),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -122,16 +150,21 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, actualLimit, shouldError }) => {
+ t.skipIf(
+ bindGroupTest === 'sameGroup' && testValue > device.limits.maxBindingsPerBindGroup,
+ `can not test ${testValue} bindings in same group because maxBindingsPerBindGroup = ${device.limits.maxBindingsPerBindGroup}`
+ );
+
const code = getPerStageWGSLForBindingCombination(
bindingCombination,
order,
bindGroupTest,
(i, j) => `var u${j}_${i}: texture_2d<f32>`,
(i, j) => `_ = textureLoad(u${j}_${i}, vec2u(0), 0);`,
+ device.limits.maxBindGroups,
testValue
);
const module = device.createShaderModule({ code });
-
await t.testCreatePipeline(
pipelineType,
async,
@@ -139,6 +172,7 @@ fn(async (t) => {
shouldError,
`actualLimit: ${actualLimit}, testValue: ${testValue}\n:${code}`
);
- }
+ },
+ kExtraLimits
);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js
index c3bd3428ce..9c4dd735f1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage.spec.js
@@ -1,8 +1,9 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range, reorder,
- kReorderOrderKeys } from
+ kReorderOrderKeys,
+ assert } from
'../../../../../common/util/util.js';
import { kShaderStageCombinationsWithStage } from '../../../../capability_info.js';
@@ -13,8 +14,14 @@ import {
kBindingCombinations,
getPipelineTypeForBindingCombination,
getPerStageWGSLForBindingCombination } from
+
'./limit_utils.js';
+const kExtraLimits = {
+ maxBindingsPerBindGroup: 'adapterLimit',
+ maxBindGroups: 'adapterLimit'
+};
+
const limit = 'maxSamplersPerShaderStage';
export const { g, description } = makeLimitTestGroup(limit);
@@ -56,11 +63,17 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, shouldError }) => {
+ t.skipIf(
+ t.adapter.limits.maxBindingsPerBindGroup < testValue,
+ `maxBindingsPerBindGroup = ${t.adapter.limits.maxBindingsPerBindGroup} which is less than ${testValue}`
+ );
+
await t.expectValidationError(
() => createBindGroupLayout(device, visibility, order, testValue),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -83,18 +96,29 @@ fn(async (t) => {
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const kNumGroups = 3;
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxBindingsPerBindGroup = Math.min(
+ t.device.limits.maxBindingsPerBindGroup,
+ actualLimit
+ );
+ const kNumGroups = Math.ceil(testValue / maxBindingsPerBindGroup);
+
+ // Not sure what to do in this case but best we get notified if it happens.
+ assert(kNumGroups <= t.device.limits.maxBindGroups);
+
const bindGroupLayouts = range(kNumGroups, (i) => {
- const minInGroup = Math.floor(testValue / kNumGroups);
- const numInGroup = i ? minInGroup : testValue - minInGroup * (kNumGroups - 1);
+ const numInGroup = Math.min(
+ testValue - i * maxBindingsPerBindGroup,
+ maxBindingsPerBindGroup
+ );
return createBindGroupLayout(device, visibility, order, numInGroup);
});
await t.expectValidationError(
() => device.createPipelineLayout({ bindGroupLayouts }),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -122,14 +146,27 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, actualLimit, shouldError }) => {
+ t.skipIf(
+ bindGroupTest === 'sameGroup' && testValue > device.limits.maxBindingsPerBindGroup,
+ `can not test ${testValue} bindings in same group because maxBindingsPerBindGroup = ${device.limits.maxBindingsPerBindGroup}`
+ );
+
+ // If this was false the texture binding would overlap the sampler bindings.
+ assert(testValue < device.limits.maxBindGroups * device.limits.maxBindingsPerBindGroup);
+
+ // Put the texture on the last possible binding.
+ const groupNdx = device.limits.maxBindGroups - 1;
+ const bindingNdx = device.limits.maxBindingsPerBindGroup - 1;
+
const code = getPerStageWGSLForBindingCombination(
bindingCombination,
order,
bindGroupTest,
(i, j) => `var u${j}_${i}: sampler`,
(i, j) => `_ = textureGather(0, tex, u${j}_${i}, vec2f(0));`,
+ device.limits.maxBindGroups,
testValue,
- '@group(3) @binding(1) var tex: texture_2d<f32>;'
+ `@group(${groupNdx}) @binding(${bindingNdx}) var tex: texture_2d<f32>;`
);
const module = device.createShaderModule({ code });
@@ -140,6 +177,7 @@ fn(async (t) => {
shouldError,
`actualLimit: ${actualLimit}, testValue: ${testValue}\n:${code}`
);
- }
+ },
+ kExtraLimits
);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js
index 1c09dcfcfd..14601e20a1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage.spec.js
@@ -1,9 +1,11 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range, reorder,
- kReorderOrderKeys } from
+ kReorderOrderKeys,
+ assert } from
'../../../../../common/util/util.js';
+import { kShaderStageCombinationsWithStage } from '../../../../capability_info.js';
import { GPUConst } from '../../../../constants.js';
import {
@@ -13,8 +15,14 @@ import {
kBindingCombinations,
getPipelineTypeForBindingCombination,
getPerStageWGSLForBindingCombination } from
+
'./limit_utils.js';
+const kExtraLimits = {
+ maxBindingsPerBindGroup: 'adapterLimit',
+ maxBindGroups: 'adapterLimit'
+};
+
const limit = 'maxStorageBuffersPerShaderStage';
export const { g, description } = makeLimitTestGroup(limit);
@@ -48,34 +56,31 @@ desc(
).
params(
kMaximumLimitBaseParams.
- combine('visibility', [
- GPUConst.ShaderStage.VERTEX,
- GPUConst.ShaderStage.FRAGMENT,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.FRAGMENT,
- GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.FRAGMENT | GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.FRAGMENT | GPUConst.ShaderStage.COMPUTE]
- ).
+ combine('visibility', kShaderStageCombinationsWithStage).
combine('type', ['storage', 'read-only-storage']).
- combine('order', kReorderOrderKeys)
+ combine('order', kReorderOrderKeys).
+ filter(
+ ({ visibility, type }) =>
+ (visibility & GPUConst.ShaderStage.VERTEX) === 0 || type !== 'storage'
+ )
).
fn(async (t) => {
const { limitTest, testValueName, visibility, order, type } = t.params;
- if (visibility & GPUConst.ShaderStage.VERTEX && type === 'storage') {
- // vertex stage does not support storage buffers
- return;
- }
-
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
async ({ device, testValue, shouldError }) => {
+ t.skipIf(
+ t.adapter.limits.maxBindingsPerBindGroup < testValue,
+ `maxBindingsPerBindGroup = ${t.adapter.limits.maxBindingsPerBindGroup} which is less than ${testValue}`
+ );
+
await t.expectValidationError(() => {
createBindGroupLayout(device, visibility, type, order, testValue);
}, shouldError);
- }
+ },
+ kExtraLimits
);
});
@@ -90,41 +95,44 @@ desc(
).
params(
kMaximumLimitBaseParams.
- combine('visibility', [
- GPUConst.ShaderStage.VERTEX,
- GPUConst.ShaderStage.FRAGMENT,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.FRAGMENT,
- GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.FRAGMENT | GPUConst.ShaderStage.COMPUTE,
- GPUConst.ShaderStage.VERTEX | GPUConst.ShaderStage.FRAGMENT | GPUConst.ShaderStage.COMPUTE]
- ).
+ combine('visibility', kShaderStageCombinationsWithStage).
combine('type', ['storage', 'read-only-storage']).
- combine('order', kReorderOrderKeys)
+ combine('order', kReorderOrderKeys).
+ filter(
+ ({ visibility, type }) =>
+ (visibility & GPUConst.ShaderStage.VERTEX) === 0 || type !== 'storage'
+ )
).
fn(async (t) => {
const { limitTest, testValueName, visibility, order, type } = t.params;
- if (visibility & GPUConst.ShaderStage.VERTEX && type === 'storage') {
- // vertex stage does not support storage buffers
- return;
- }
-
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const kNumGroups = 3;
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxBindingsPerBindGroup = Math.min(
+ t.device.limits.maxBindingsPerBindGroup,
+ actualLimit
+ );
+ const kNumGroups = Math.ceil(testValue / maxBindingsPerBindGroup);
+
+ // Not sure what to do in this case but best we get notified if it happens.
+ assert(kNumGroups <= t.device.limits.maxBindGroups);
+
const bindGroupLayouts = range(kNumGroups, (i) => {
- const minInGroup = Math.floor(testValue / kNumGroups);
- const numInGroup = i ? minInGroup : testValue - minInGroup * (kNumGroups - 1);
+ const numInGroup = Math.min(
+ testValue - i * maxBindingsPerBindGroup,
+ maxBindingsPerBindGroup
+ );
return createBindGroupLayout(device, visibility, type, order, numInGroup);
});
+
await t.expectValidationError(
() => device.createPipelineLayout({ bindGroupLayouts }),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -152,12 +160,18 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, actualLimit, shouldError }) => {
+ t.skipIf(
+ bindGroupTest === 'sameGroup' && testValue > device.limits.maxBindingsPerBindGroup,
+ `can not test ${testValue} bindings in same group because maxBindingsPerBindGroup = ${device.limits.maxBindingsPerBindGroup}`
+ );
+
const code = getPerStageWGSLForBindingCombination(
bindingCombination,
order,
bindGroupTest,
(i, j) => `var<storage> u${j}_${i}: f32`,
(i, j) => `_ = u${j}_${i};`,
+ device.limits.maxBindGroups,
testValue
);
const module = device.createShaderModule({ code });
@@ -169,6 +183,7 @@ fn(async (t) => {
shouldError,
`actualLimit: ${actualLimit}, testValue: ${testValue}\n:${code}`
);
- }
+ },
+ kExtraLimits
);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js
index 5005ae35fe..a9eea3196a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage.spec.js
@@ -2,7 +2,8 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range, reorder,
- kReorderOrderKeys } from
+ kReorderOrderKeys,
+ assert } from
'../../../../../common/util/util.js';
import { GPUConst } from '../../../../constants.js';
@@ -13,8 +14,14 @@ import {
getPerStageWGSLForBindingCombinationStorageTextures,
getPipelineTypeForBindingCombination } from
+
'./limit_utils.js';
+const kExtraLimits = {
+ maxBindingsPerBindGroup: 'adapterLimit',
+ maxBindGroups: 'adapterLimit'
+};
+
const limit = 'maxStorageTexturesPerShaderStage';
export const { g, description } = makeLimitTestGroup(limit);
@@ -60,11 +67,17 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, shouldError }) => {
+ t.skipIf(
+ t.adapter.limits.maxBindingsPerBindGroup < testValue,
+ `maxBindingsPerBindGroup = ${t.adapter.limits.maxBindingsPerBindGroup} which is less than ${testValue}`
+ );
+
await t.expectValidationError(
() => createBindGroupLayout(device, visibility, order, testValue),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -91,18 +104,30 @@ fn(async (t) => {
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const kNumGroups = 3;
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxBindingsPerBindGroup = Math.min(
+ t.device.limits.maxBindingsPerBindGroup,
+ actualLimit
+ );
+ const kNumGroups = Math.ceil(testValue / maxBindingsPerBindGroup);
+
+ // Not sure what to do in this case but best we get notified if it happens.
+ assert(kNumGroups <= t.device.limits.maxBindGroups);
+
const bindGroupLayouts = range(kNumGroups, (i) => {
- const minInGroup = Math.floor(testValue / kNumGroups);
- const numInGroup = i ? minInGroup : testValue - minInGroup * (kNumGroups - 1);
+ const numInGroup = Math.min(
+ testValue - i * maxBindingsPerBindGroup,
+ maxBindingsPerBindGroup
+ );
return createBindGroupLayout(device, visibility, order, numInGroup);
});
+
await t.expectValidationError(
() => device.createPipelineLayout({ bindGroupLayouts }),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -130,6 +155,11 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, actualLimit, shouldError }) => {
+ t.skipIf(
+ bindGroupTest === 'sameGroup' && testValue > device.limits.maxBindingsPerBindGroup,
+ `can not test ${testValue} bindings in same group because maxBindingsPerBindGroup = ${device.limits.maxBindingsPerBindGroup}`
+ );
+
if (bindingCombination === 'fragment') {
return;
}
@@ -140,6 +170,7 @@ fn(async (t) => {
bindGroupTest,
(i, j) => `var u${j}_${i}: texture_storage_2d<rgba8unorm, write>`,
(i, j) => `textureStore(u${j}_${i}, vec2u(0), vec4f(1));`,
+ device.limits.maxBindGroups,
testValue
);
const module = device.createShaderModule({ code });
@@ -151,6 +182,7 @@ fn(async (t) => {
shouldError,
`actualLimit: ${actualLimit}, testValue: ${testValue}\n:${code}`
);
- }
+ },
+ kExtraLimits
);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js
index 191493046a..eb2330547d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage.spec.js
@@ -1,8 +1,9 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range, reorder,
- kReorderOrderKeys } from
+ kReorderOrderKeys,
+ assert } from
'../../../../../common/util/util.js';
import { kShaderStageCombinationsWithStage } from '../../../../capability_info.js';
@@ -13,8 +14,14 @@ import {
kBindingCombinations,
getPipelineTypeForBindingCombination,
getPerStageWGSLForBindingCombination } from
+
'./limit_utils.js';
+const kExtraLimits = {
+ maxBindingsPerBindGroup: 'adapterLimit',
+ maxBindGroups: 'adapterLimit'
+};
+
const limit = 'maxUniformBuffersPerShaderStage';
export const { g, description } = makeLimitTestGroup(limit);
@@ -56,11 +63,17 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, shouldError }) => {
+ t.skipIf(
+ t.adapter.limits.maxBindingsPerBindGroup < testValue,
+ `maxBindingsPerBindGroup = ${t.adapter.limits.maxBindingsPerBindGroup} which is less than ${testValue}`
+ );
+
await t.expectValidationError(
() => createBindGroupLayout(device, visibility, order, testValue),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -83,18 +96,30 @@ fn(async (t) => {
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const kNumGroups = 3;
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const maxBindingsPerBindGroup = Math.min(
+ t.device.limits.maxBindingsPerBindGroup,
+ actualLimit
+ );
+ const kNumGroups = Math.ceil(testValue / maxBindingsPerBindGroup);
+
+ // Not sure what to do in this case but best we get notified if it happens.
+ assert(kNumGroups <= t.device.limits.maxBindGroups);
+
const bindGroupLayouts = range(kNumGroups, (i) => {
- const minInGroup = Math.floor(testValue / kNumGroups);
- const numInGroup = i ? minInGroup : testValue - minInGroup * (kNumGroups - 1);
+ const numInGroup = Math.min(
+ testValue - i * maxBindingsPerBindGroup,
+ maxBindingsPerBindGroup
+ );
return createBindGroupLayout(device, visibility, order, numInGroup);
});
+
await t.expectValidationError(
() => device.createPipelineLayout({ bindGroupLayouts }),
shouldError
);
- }
+ },
+ kExtraLimits
);
});
@@ -122,12 +147,18 @@ fn(async (t) => {
limitTest,
testValueName,
async ({ device, testValue, actualLimit, shouldError }) => {
+ t.skipIf(
+ bindGroupTest === 'sameGroup' && testValue > device.limits.maxBindingsPerBindGroup,
+ `can not test ${testValue} bindings in same group because maxBindingsPerBindGroup = ${device.limits.maxBindingsPerBindGroup}`
+ );
+
const code = getPerStageWGSLForBindingCombination(
bindingCombination,
order,
bindGroupTest,
(i, j) => `var<uniform> u${j}_${i}: f32`,
(i, j) => `_ = u${j}_${i};`,
+ device.limits.maxBindGroups,
testValue
);
const module = device.createShaderModule({ code });
@@ -139,6 +170,7 @@ fn(async (t) => {
shouldError,
`actualLimit: ${actualLimit}, testValue: ${testValue}\n:${code}`
);
- }
+ },
+ kExtraLimits
);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxVertexBuffers.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxVertexBuffers.spec.js
index 860c40687e..142297311a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxVertexBuffers.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/capability_checks/limits/maxVertexBuffers.spec.js
@@ -1,41 +1,23 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { range } from '../../../../../common/util/util.js';import { kRenderEncoderTypes, kMaximumLimitBaseParams, makeLimitTestGroup } from './limit_utils.js';
-
-const kPipelineTypes = ['withoutLocations', 'withLocations'];
-
+**/import { kRenderEncoderTypes, kMaximumLimitBaseParams, makeLimitTestGroup } from './limit_utils.js';function getPipelineDescriptor(device, testValue) {
+ const module = device.createShaderModule({
+ code: `
+ @vertex fn vs(@location(0) p: vec4f) -> @builtin(position) vec4f {
+ return p;
+ }`
+ });
+ const buffers = new Array(testValue);
+ buffers[testValue - 1] = {
+ arrayStride: 16,
+ attributes: [{ shaderLocation: 0, offset: 0, format: 'float32' }]
+ };
-function getPipelineDescriptor(
-device,
-pipelineType,
-testValue)
-{
- const code =
- pipelineType === 'withLocations' ?
- `
- struct VSInput {
- ${range(testValue, (i) => `@location(${i}) p${i}: f32,`).join('\n')}
- }
- @vertex fn vs(v: VSInput) -> @builtin(position) vec4f {
- let x = ${range(testValue, (i) => `v.p${i}`).join(' + ')};
- return vec4f(x, 0, 0, 1);
- }
- ` :
- `
- @vertex fn vs() -> @builtin(position) vec4f {
- return vec4f(0);
- }
- `;
- const module = device.createShaderModule({ code });
return {
layout: 'auto',
vertex: {
module,
- entryPoint: 'vs',
- buffers: range(testValue, (i) => ({
- arrayStride: 32,
- attributes: [{ shaderLocation: i, offset: 0, format: 'float32' }]
- }))
+ buffers
}
};
}
@@ -45,18 +27,22 @@ export const { g, description } = makeLimitTestGroup(limit);
g.test('createRenderPipeline,at_over').
desc(`Test using at and over ${limit} limit in createRenderPipeline(Async)`).
-params(
- kMaximumLimitBaseParams.combine('async', [false, true]).combine('pipelineType', kPipelineTypes)
-).
+params(kMaximumLimitBaseParams.combine('async', [false, true])).
fn(async (t) => {
- const { limitTest, testValueName, async, pipelineType } = t.params;
+ const { limitTest, testValueName, async } = t.params;
await t.testDeviceWithRequestedMaximumLimits(
limitTest,
testValueName,
- async ({ device, testValue, shouldError }) => {
- const pipelineDescriptor = getPipelineDescriptor(device, pipelineType, testValue);
+ async ({ device, testValue, shouldError, actualLimit }) => {
+ const pipelineDescriptor = getPipelineDescriptor(device, testValue);
+ const lastIndex = testValue - 1;
- await t.testCreateRenderPipeline(pipelineDescriptor, async, shouldError);
+ await t.testCreateRenderPipeline(
+ pipelineDescriptor,
+ async,
+ shouldError,
+ `lastIndex: ${lastIndex}, actualLimit: ${actualLimit}, shouldError: ${shouldError}`
+ );
}
);
});
@@ -77,10 +63,10 @@ fn(async (t) => {
usage: GPUBufferUsage.VERTEX
});
- await t.testGPURenderCommandsMixin(
+ await t.testGPURenderAndBindingCommandsMixin(
encoderType,
- ({ mixin }) => {
- mixin.setVertexBuffer(lastIndex, buffer);
+ ({ passEncoder }) => {
+ passEncoder.setVertexBuffer(lastIndex, buffer);
},
shouldError,
`lastIndex: ${lastIndex}, actualLimit: ${actualLimit}, shouldError: ${shouldError}`
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/compute_pipeline.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/compute_pipeline.spec.js
index 3d2c5a7641..a9ad3c4476 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/compute_pipeline.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/compute_pipeline.spec.js
@@ -5,9 +5,16 @@ createComputePipeline and createComputePipelineAsync validation tests.
Note: entry point matching tests are in shader_module/entry_point.spec.ts
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
+import { keysOf } from '../../../common/util/data_tables.js';
import { kValue } from '../../util/constants.js';
import { getShaderWithEntryPoint } from '../../util/shader.js';
+import {
+ kAPIResources,
+ getWGSLShaderForResource,
+ getAPIBindGroupLayoutForResource,
+ doResourcesMatch } from
+'./utils.js';
import { ValidationTest } from './validation_test.js';
class F extends ValidationTest {
@@ -689,4 +696,47 @@ fn((t) => {
testFn(1, 1, true);
testFn(maxVec4Count + 1, 0, false);
testFn(0, maxMat4Count + 1, false);
+});
+
+g.test('resource_compatibility').
+desc(
+ 'Tests validation of resource (bind group) compatibility between pipeline layout and WGSL shader'
+).
+params((u) =>
+u //
+.combine('apiResource', keysOf(kAPIResources)).
+beginSubcases().
+combine('isAsync', [true, false]).
+combine('wgslResource', keysOf(kAPIResources))
+).
+fn((t) => {
+ const apiResource = kAPIResources[t.params.apiResource];
+ const wgslResource = kAPIResources[t.params.wgslResource];
+ t.skipIf(
+ wgslResource.storageTexture !== undefined &&
+ wgslResource.storageTexture.access !== 'write-only' &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'Storage textures require language feature'
+ );
+
+ const layout = t.device.createPipelineLayout({
+ bindGroupLayouts: [
+ getAPIBindGroupLayoutForResource(t.device, GPUShaderStage.COMPUTE, apiResource)]
+
+ });
+
+ const descriptor = {
+ layout,
+ compute: {
+ module: t.device.createShaderModule({
+ code: getWGSLShaderForResource('compute', wgslResource)
+ }),
+ entryPoint: 'main'
+ }
+ };
+ t.doCreateComputePipelineTest(
+ t.params.isAsync,
+ doResourcesMatch(apiResource, wgslResource),
+ descriptor
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroup.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroup.spec.js
index 15691f4bf7..283fe97fd2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroup.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroup.spec.js
@@ -8,6 +8,7 @@
import { assert, makeValueTestVariant, unreachable } from '../../../common/util/util.js';
import {
allBindingEntries,
+
bindingTypeInfo,
bufferBindingEntries,
bufferBindingTypeInfo,
@@ -106,7 +107,7 @@ g.test('binding_must_contain_resource_defined_in_layout').
desc(
'Test that only compatible resource types specified in the BindGroupLayout are allowed for each entry.'
).
-paramsSubcasesOnly((u) =>
+params((u) =>
u //
.combine('resourceType', kBindableResources).
combine('entry', allBindingEntries(false))
@@ -121,6 +122,17 @@ fn((t) => {
const resource = t.getBindingResource(resourceType);
+ const IsStorageTextureResourceType = (resourceType) => {
+ switch (resourceType) {
+ case 'readonlyStorageTex':
+ case 'readwriteStorageTex':
+ case 'writeonlyStorageTex':
+ return true;
+ default:
+ return false;
+ }
+ };
+
let resourceBindingIsCompatible;
switch (info.resource) {
// Either type of sampler may be bound to a filtering sampler binding.
@@ -131,6 +143,11 @@ fn((t) => {
case 'nonFiltSamp':
resourceBindingIsCompatible = resourceType === 'nonFiltSamp';
break;
+ case 'readonlyStorageTex':
+ case 'readwriteStorageTex':
+ case 'writeonlyStorageTex':
+ resourceBindingIsCompatible = IsStorageTextureResourceType(resourceType);
+ break;
default:
resourceBindingIsCompatible = info.resource === resourceType;
break;
@@ -166,7 +183,7 @@ fn((t) => {
const descriptor = {
size: { width: 16, height: 16, depthOrArrayLayers: 1 },
- format: 'rgba8unorm',
+ format: 'r32float',
usage: appliedUsage,
sampleCount: info.resource === 'sampledTexMS' ? 4 : 1
};
@@ -313,6 +330,19 @@ fn((t) => {
});
t.skipIfTextureViewDimensionNotSupported(viewDimension, dimension);
+ if (t.isCompatibility && texture.dimension === '2d') {
+ if (depthOrArrayLayers === 1) {
+ t.skipIf(
+ viewDimension !== '2d',
+ '1 layer 2d textures default to textureBindingViewDimension: "2d" in compat mode'
+ );
+ } else {
+ t.skipIf(
+ viewDimension !== '2d-array',
+ '> 1 layer 2d textures default to textureBindingViewDimension "2d-array" in compat mode'
+ );
+ }
+ }
const shouldError = viewDimension !== dimension;
const textureView = texture.createView({ dimension });
@@ -526,9 +556,7 @@ fn((t) => {
g.test('texture,resource_state').
desc('Test bind group creation with various texture resource states').
paramsSubcasesOnly((u) =>
-u.
-combine('state', kResourceStates).
-combine('entry', sampledAndStorageBindingEntries(true, 'rgba8unorm'))
+u.combine('state', kResourceStates).combine('entry', sampledAndStorageBindingEntries(true))
).
fn((t) => {
const { state, entry } = t.params;
@@ -548,10 +576,11 @@ fn((t) => {
const usage = entry.texture?.multisampled ?
info.usage | GPUConst.TextureUsage.RENDER_ATTACHMENT :
info.usage;
+ const format = entry.storageTexture !== undefined ? 'r32float' : 'rgba8unorm';
const texture = t.createTextureWithState(state, {
usage,
size: [1, 1],
- format: 'rgba8unorm',
+ format,
sampleCount: entry.texture?.multisampled ? 4 : 1
});
@@ -626,7 +655,9 @@ combine('entry', [
{ buffer: { type: 'storage' } },
{ sampler: { type: 'filtering' } },
{ texture: { multisampled: false } },
-{ storageTexture: { access: 'write-only', format: 'rgba8unorm' } }]
+{ storageTexture: { access: 'write-only', format: 'r32float' } },
+{ storageTexture: { access: 'read-only', format: 'r32float' } },
+{ storageTexture: { access: 'read-write', format: 'r32float' } }]
).
beginSubcases().
combineWithParams([
@@ -784,6 +815,10 @@ u //
.combine('storageTextureFormat', kStorageTextureFormats).
combine('resourceFormat', kStorageTextureFormats)
).
+beforeAllSubcases((t) => {
+ const { storageTextureFormat, resourceFormat } = t.params;
+ t.skipIfTextureFormatNotUsableAsStorageTexture(storageTextureFormat, resourceFormat);
+}).
fn((t) => {
const { storageTextureFormat, resourceFormat } = t.params;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroupLayout.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroupLayout.spec.js
index 580a64af4f..b5d98f8d44 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroupLayout.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createBindGroupLayout.spec.js
@@ -163,8 +163,10 @@ combine('access', [undefined, ...kStorageTextureAccessValues])
fn((t) => {
const { shaderStage, access } = t.params;
+ const appliedAccess = access ?? 'write-only';
const success = !(
- (access ?? 'write-only') === 'write-only' && shaderStage & GPUShaderStage.VERTEX);
+ // If visibility includes VERETX, storageTexture.access must be "read-only"
+ shaderStage & GPUShaderStage.VERTEX && appliedAccess !== 'read-only');
t.expectValidationError(() => {
@@ -173,7 +175,7 @@ fn((t) => {
{
binding: 0,
visibility: shaderStage,
- storageTexture: { access, format: 'rgba8unorm' }
+ storageTexture: { access, format: 'r32uint' }
}]
});
@@ -436,29 +438,36 @@ fn((t) => {
g.test('storage_texture,formats').
desc(
`
- Test that a validation error is generated if the format doesn't support the storage usage.
+ Test that a validation error is generated if the format doesn't support the storage usage. A
+ validation error is also generated if the format doesn't support the 'read-write' storage access
+ when the storage access is 'read-write'.
`
).
-params((u) => u.combine('format', kAllTextureFormats)).
+params((u) =>
+u //
+.combine('format', kAllTextureFormats) //
+.combine('access', kStorageTextureAccessValues)
+).
beforeAllSubcases((t) => {
t.selectDeviceForTextureFormatOrSkipTestCase(t.params.format);
+ t.skipIfTextureFormatNotUsableAsStorageTexture(t.params.format);
}).
fn((t) => {
- const { format } = t.params;
+ const { format, access } = t.params;
const info = kTextureFormatInfo[format];
- t.expectValidationError(
- () => {
- t.device.createBindGroupLayout({
- entries: [
- {
- binding: 0,
- visibility: GPUShaderStage.COMPUTE,
- storageTexture: { format }
- }]
-
- });
- },
- !info.color?.storage
- );
+ const success =
+ info.color?.storage && !(access === 'read-write' && !info.color?.readWriteStorage);
+
+ t.expectValidationError(() => {
+ t.device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility: GPUShaderStage.COMPUTE,
+ storageTexture: { format, access }
+ }]
+
+ });
+ }, !success);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createTexture.spec.js
index d2ea68ef85..57c80946c0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createTexture.spec.js
@@ -6,7 +6,7 @@ import { assert, makeValueTestVariant } from '../../../common/util/util.js';
import { kTextureDimensions, kTextureUsages } from '../../capability_info.js';
import { GPUConst } from '../../constants.js';
import {
- kTextureFormats,
+ kAllTextureFormats,
kTextureFormatInfo,
kCompressedTextureFormats,
kUncompressedTextureFormats,
@@ -14,7 +14,8 @@ import {
kFeaturesForFormats,
filterFormatsByFeature,
viewCompatible,
- textureDimensionAndFormatCompatible } from
+ textureDimensionAndFormatCompatible,
+ isTextureFormatUsableAsStorageFormat } from
'../../format_info.js';
import { maxMipLevelCount } from '../../util/texture/base.js';
@@ -103,7 +104,9 @@ desc(
`Test every dimension type on every format. Note that compressed formats and depth/stencil formats are not valid for 1D/3D dimension types.`
).
params((u) =>
-u.combine('dimension', [undefined, ...kTextureDimensions]).combine('format', kTextureFormats)
+u //
+.combine('dimension', [undefined, ...kTextureDimensions]).
+combine('format', kAllTextureFormats)
).
beforeAllSubcases((t) => {
const { format } = t.params;
@@ -135,7 +138,7 @@ desc(
params((u) =>
u.
combine('dimension', [undefined, ...kTextureDimensions]).
-combine('format', kTextureFormats).
+combine('format', kAllTextureFormats).
beginSubcases().
combine('mipLevelCount', [1, 2, 3, 6, 7])
// Filter out incompatible dimension type and format combinations.
@@ -270,7 +273,7 @@ desc(
params((u) =>
u.
combine('dimension', [undefined, '2d']).
-combine('format', kTextureFormats).
+combine('format', kAllTextureFormats).
beginSubcases().
combine('sampleCount', [0, 1, 2, 4, 8, 16, 32, 256])
).
@@ -296,7 +299,7 @@ fn((t) => {
usage
};
- const success = sampleCount === 1 || sampleCount === 4 && info.multisample && info.renderable;
+ const success = sampleCount === 1 || sampleCount === 4 && info.multisample;
t.expectValidationError(() => {
t.device.createTexture(descriptor);
@@ -317,7 +320,7 @@ desc(
params((u) =>
u.
combine('dimension', [undefined, ...kTextureDimensions]).
-combine('format', kTextureFormats).
+combine('format', kAllTextureFormats).
beginSubcases().
combine('sampleCount', [1, 4]).
combine('arrayLayerCount', [1, 2]).
@@ -372,8 +375,12 @@ fn((t) => {
usage
};
+ const satisfyWithStorageUsageRequirement =
+ (usage & GPUConst.TextureUsage.STORAGE_BINDING) === 0 ||
+ isTextureFormatUsableAsStorageFormat(format, t.isCompatibility);
+
const success =
- sampleCount === 1 ||
+ sampleCount === 1 && satisfyWithStorageUsageRequirement ||
sampleCount === 4 && (
dimension === '2d' || dimension === undefined) &&
kTextureFormatInfo[format].multisample &&
@@ -589,6 +596,7 @@ params((u) =>
u.
combine('dimension', [undefined, '2d']).
combine('format', kCompressedTextureFormats).
+beginSubcases().
expand('sizeVariant', (p) => {
const { blockWidth, blockHeight } = kTextureFormatInfo[p.format];
return [
@@ -1026,7 +1034,7 @@ desc(
params((u) =>
u.
combine('dimension', [undefined, ...kTextureDimensions]).
-combine('format', kTextureFormats).
+combine('format', kAllTextureFormats).
beginSubcases()
// If usage0 and usage1 are the same, then the usage being test is a single usage. Otherwise, it is a combined usage.
.combine('usage0', kTextureUsages).
@@ -1058,12 +1066,13 @@ fn((t) => {
// Note that we unconditionally test copy usages for all formats. We don't check copySrc/copyDst in kTextureFormatInfo in capability_info.js
// if (!info.copySrc && (usage & GPUTextureUsage.COPY_SRC) !== 0) success = false;
// if (!info.copyDst && (usage & GPUTextureUsage.COPY_DST) !== 0) success = false;
- if (!info.color?.storage && (usage & GPUTextureUsage.STORAGE_BINDING) !== 0) success = false;
- if (
- (!info.renderable || appliedDimension !== '2d') &&
- (usage & GPUTextureUsage.RENDER_ATTACHMENT) !== 0)
-
- success = false;
+ if (usage & GPUTextureUsage.STORAGE_BINDING) {
+ if (!isTextureFormatUsableAsStorageFormat(format, t.isCompatibility)) success = false;
+ }
+ if (usage & GPUTextureUsage.RENDER_ATTACHMENT) {
+ if (appliedDimension === '1d') success = false;
+ if (info.color && !info.colorRender) success = false;
+ }
t.expectValidationError(() => {
t.device.createTexture(descriptor);
@@ -1080,10 +1089,10 @@ combine('formatFeature', kFeaturesForFormats).
combine('viewFormatFeature', kFeaturesForFormats).
beginSubcases().
expand('format', ({ formatFeature }) =>
-filterFormatsByFeature(formatFeature, kTextureFormats)
+filterFormatsByFeature(formatFeature, kAllTextureFormats)
).
expand('viewFormat', ({ viewFormatFeature }) =>
-filterFormatsByFeature(viewFormatFeature, kTextureFormats)
+filterFormatsByFeature(viewFormatFeature, kAllTextureFormats)
)
).
beforeAllSubcases((t) => {
@@ -1096,7 +1105,7 @@ fn((t) => {
t.skipIfTextureFormatNotSupported(format, viewFormat);
- const compatible = viewCompatible(format, viewFormat);
+ const compatible = viewCompatible(t.isCompatibility, format, viewFormat);
// Test the viewFormat in the list.
t.expectValidationError(() => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createView.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createView.spec.js
index b001cb0b7a..9cf00c5d0b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createView.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/createView.spec.js
@@ -10,7 +10,7 @@ import {
'../../capability_info.js';
import {
kTextureFormatInfo,
- kTextureFormats,
+ kAllTextureFormats,
kFeaturesForFormats,
filterFormatsByFeature,
viewCompatible } from
@@ -39,10 +39,10 @@ combine('textureFormatFeature', kFeaturesForFormats).
combine('viewFormatFeature', kFeaturesForFormats).
beginSubcases().
expand('textureFormat', ({ textureFormatFeature }) =>
-filterFormatsByFeature(textureFormatFeature, kTextureFormats)
+filterFormatsByFeature(textureFormatFeature, kAllTextureFormats)
).
expand('viewFormat', ({ viewFormatFeature }) =>
-filterFormatsByFeature(viewFormatFeature, [undefined, ...kTextureFormats])
+filterFormatsByFeature(viewFormatFeature, [undefined, ...kAllTextureFormats])
).
combine('useViewFormatList', [false, true])
).
@@ -56,7 +56,8 @@ fn((t) => {
t.skipIfTextureFormatNotSupported(textureFormat, viewFormat);
- const compatible = viewFormat === undefined || viewCompatible(textureFormat, viewFormat);
+ const compatible =
+ viewFormat === undefined || viewCompatible(t.isCompatibility, textureFormat, viewFormat);
const texture = t.device.createTexture({
format: textureFormat,
@@ -123,7 +124,7 @@ desc(
).
params((u) =>
u //
-.combine('format', kTextureFormats).
+.combine('format', kAllTextureFormats).
combine('aspect', kTextureAspects)
).
beforeAllSubcases((t) => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/cmds/copyTextureToTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/cmds/copyTextureToTexture.spec.js
index 00bf4e83d8..aa14c176c4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/cmds/copyTextureToTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/cmds/copyTextureToTexture.spec.js
@@ -6,7 +6,7 @@ copyTextureToTexture tests.
import { kTextureUsages, kTextureDimensions } from '../../../../capability_info.js';
import {
kTextureFormatInfo,
- kTextureFormats,
+ kAllTextureFormats,
kCompressedTextureFormats,
kDepthStencilFormats,
kFeaturesForFormats,
@@ -255,6 +255,12 @@ u //
.combine('srcSampleCount', [1, 4]).
combine('dstSampleCount', [1, 4])
).
+beforeAllSubcases((t) => {
+ t.skipIf(
+ t.isCompatibility && (t.params.srcSampleCount !== 1 || t.params.dstSampleCount !== 1),
+ 'multisample textures are not copyable in compatibility mode'
+ );
+}).
fn((t) => {
const { srcSampleCount, dstSampleCount } = t.params;
@@ -307,6 +313,9 @@ combine('dstCopyOrigin', [
expand('copyWidth', (p) => [32 - Math.max(p.srcCopyOrigin.x, p.dstCopyOrigin.x), 16]).
expand('copyHeight', (p) => [16 - Math.max(p.srcCopyOrigin.y, p.dstCopyOrigin.y), 8])
).
+beforeAllSubcases((t) => {
+ t.skipIf(t.isCompatibility, 'multisample textures are not copyable in compatibility mode');
+}).
fn((t) => {
const { srcCopyOrigin, dstCopyOrigin, copyWidth, copyHeight } = t.params;
@@ -351,10 +360,10 @@ combine('srcFormatFeature', kFeaturesForFormats).
combine('dstFormatFeature', kFeaturesForFormats).
beginSubcases().
expand('srcFormat', ({ srcFormatFeature }) =>
-filterFormatsByFeature(srcFormatFeature, kTextureFormats)
+filterFormatsByFeature(srcFormatFeature, kAllTextureFormats)
).
expand('dstFormat', ({ dstFormatFeature }) =>
-filterFormatsByFeature(dstFormatFeature, kTextureFormats)
+filterFormatsByFeature(dstFormatFeature, kAllTextureFormats)
)
).
beforeAllSubcases((t) => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/createRenderBundleEncoder.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/createRenderBundleEncoder.spec.js
index b78322cbff..a22353bc04 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/createRenderBundleEncoder.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/createRenderBundleEncoder.spec.js
@@ -196,10 +196,7 @@ fn((t) => {
g.test('depth_stencil_readonly').
desc(
`
- Tests that createRenderBundleEncoder validation of depthReadOnly and stencilReadOnly
- - With depth-only formats
- - With stencil-only formats
- - With depth-stencil-combined formats
+ Test that allow combinations of depth-stencil format, depthReadOnly and stencilReadOnly are allowed.
`
).
params((u) =>
@@ -215,44 +212,9 @@ beforeAllSubcases((t) => {
}).
fn((t) => {
const { depthStencilFormat, depthReadOnly, stencilReadOnly } = t.params;
-
- let shouldError = false;
- if (
- kTextureFormatInfo[depthStencilFormat].depth &&
- kTextureFormatInfo[depthStencilFormat].stencil &&
- depthReadOnly !== stencilReadOnly)
- {
- shouldError = true;
- }
-
- t.expectValidationError(() => {
- t.device.createRenderBundleEncoder({
- colorFormats: [],
- depthStencilFormat,
- depthReadOnly,
- stencilReadOnly
- });
- }, shouldError);
-});
-
-g.test('depth_stencil_readonly_with_undefined_depth').
-desc(
- `
- Tests that createRenderBundleEncoder validation of depthReadOnly and stencilReadOnly is ignored
- if there is no depthStencilFormat set.
- `
-).
-params((u) =>
-u //
-.beginSubcases().
-combine('depthReadOnly', [false, true]).
-combine('stencilReadOnly', [false, true])
-).
-fn((t) => {
- const { depthReadOnly, stencilReadOnly } = t.params;
-
t.device.createRenderBundleEncoder({
- colorFormats: ['bgra8unorm'],
+ colorFormats: [],
+ depthStencilFormat,
depthReadOnly,
stencilReadOnly
});
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/encoder_open_state.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/encoder_open_state.spec.js
index 663db39fa1..b635fe1594 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/encoder_open_state.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/encoder_open_state.spec.js
@@ -57,6 +57,9 @@ class F extends ValidationTest {
export const g = makeTestGroup(F);
+// MAINTENANCE_TODO: Remove writeTimestamp from here once it's (hopefully) added back to the spec.
+
+
const kEncoderCommandInfo =
@@ -146,6 +149,8 @@ desc(
`
Test that functions of GPUCommandEncoder generate a validation error if the encoder is already
finished.
+
+ TODO: writeTimestamp is removed from the spec so it's skipped if it TypeErrors.
`
).
params((u) =>
@@ -260,8 +265,11 @@ fn((t) => {
}
break;
case 'writeTimestamp':
- {
+ try {
+
encoder.writeTimestamp(querySet, 0);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
}
break;
case 'resolveQuerySet':
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js
index cb15b694de..825f0f69e0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat.spec.js
@@ -32,13 +32,32 @@ const kComputeCmds = ['dispatch', 'dispatchIndirect'];
const kRenderCmds = ['draw', 'drawIndexed', 'drawIndirect', 'drawIndexedIndirect'];
+const kPipelineTypes = ['auto0', 'explicit'];
+
+const kBindingTypes = ['auto0', 'auto1', 'explicit'];
+
+
+const kEmptyBindGroup0Ndx = 0;
+const kEmptyBindGroup1Ndx = 1;
+const kNonEmptyBindGroup0Ndx = 2;
+const kNonEmptyBindGroup1Ndx = 3;
+
+// Swaps 2 array elements in place.
+function swapArrayElements(array, ndx1, ndx2) {
+ const t = array[ndx1];
+ array[ndx1] = array[ndx2];
+ array[ndx2] = t;
+}
+
// Test resource type compatibility in pipeline and bind group
// [1]: Need to add externalTexture
const kResourceTypes = [
'uniformBuf',
'filtSamp',
'sampledTex',
-'storageTex'];
+'readonlyStorageTex',
+'writeonlyStorageTex',
+'readwriteStorageTex'];
function getTestCmds(
@@ -75,7 +94,17 @@ class F extends ValidationTest {
if (entry.buffer !== undefined) return 'uniformBuf';
if (entry.sampler !== undefined) return 'filtSamp';
if (entry.texture !== undefined) return 'sampledTex';
- if (entry.storageTexture !== undefined) return 'storageTex';
+ if (entry.storageTexture !== undefined) {
+ switch (entry.storageTexture.access) {
+ case undefined:
+ case 'write-only':
+ return 'writeonlyStorageTex';
+ case 'read-only':
+ return 'readonlyStorageTex';
+ case 'read-write':
+ return 'readwriteStorageTex';
+ }
+ }
unreachable();
}
@@ -208,8 +237,14 @@ class F extends ValidationTest {
case 'sampledTex':
entry.texture = {}; // default sampleType: float
break;
- case 'storageTex':
- entry.storageTexture = { access: 'write-only', format: 'rgba8unorm' };
+ case 'readonlyStorageTex':
+ entry.storageTexture = { access: 'read-only', format: 'r32float' };
+ break;
+ case 'writeonlyStorageTex':
+ entry.storageTexture = { access: 'write-only', format: 'r32float' };
+ break;
+ case 'readwriteStorageTex':
+ entry.storageTexture = { access: 'read-write', format: 'r32float' };
break;
}
@@ -259,6 +294,135 @@ class F extends ValidationTest {
validateFinish(success);
}
+
+ runDefaultLayoutBindingTest({
+ visibility,
+ empty,
+ pipelineType,
+ bindingType,
+ swap,
+ success,
+ makePipelinesFn,
+ doCommandFn
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ }) {
+ const { device } = this;
+ const explicitEmptyBindGroupLayout = device.createBindGroupLayout({
+ entries: []
+ });
+ const explicitBindGroupLayout = device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility,
+ buffer: {}
+ }]
+
+ });
+ const explicitPipelineLayout = device.createPipelineLayout({
+ bindGroupLayouts: [
+ explicitEmptyBindGroupLayout,
+ explicitEmptyBindGroupLayout,
+ explicitBindGroupLayout,
+ explicitBindGroupLayout]
+
+ });
+
+ const [pipelineAuto0, pipelineAuto1, pipelineExplicit] = makePipelinesFn(
+ this,
+ explicitPipelineLayout
+ );
+
+ const buffer = device.createBuffer({
+ size: 16,
+ usage: GPUBufferUsage.UNIFORM
+ });
+ this.trackForCleanup(buffer);
+
+ let emptyBindGroupLayouts;
+ let nonEmptyBindGroupLayouts;
+ const pipeline = pipelineType === 'auto0' ? pipelineAuto0 : pipelineExplicit;
+
+ // Gets a bindGroupLayout either from the explicit layout passed in
+ // or one of the 2 `layout: 'auto'` pipelines.
+ const getBindGroupLayout = (
+ explicitBindGroupLayout,
+ bindGroupIndex) =>
+
+ bindingType === 'explicit' ?
+ explicitBindGroupLayout :
+ bindingType === 'auto0' ?
+ pipelineAuto0.getBindGroupLayout(bindGroupIndex) :
+ pipelineAuto1.getBindGroupLayout(bindGroupIndex);
+
+ if (empty) {
+ // Testing empty:
+ // - emptyBindGroupLayout comes from a possibly incompatible place.
+ // - nonEmptyBindGroupLayout comes from the pipeline we'll render/compute with.
+ emptyBindGroupLayouts = [
+ getBindGroupLayout(explicitEmptyBindGroupLayout, kEmptyBindGroup0Ndx),
+ getBindGroupLayout(explicitEmptyBindGroupLayout, kEmptyBindGroup1Ndx)];
+
+ if (swap) {
+ swapArrayElements(emptyBindGroupLayouts, 0, 1);
+ }
+ nonEmptyBindGroupLayouts = [
+ pipeline.getBindGroupLayout(kNonEmptyBindGroup0Ndx),
+ pipeline.getBindGroupLayout(kNonEmptyBindGroup1Ndx)];
+
+ } else {
+ // Testing non-empty:
+ // - nonEmptyBindGroupLayout comes from a possibly incompatible place.
+ // - emptyBindGroupLayout comes from the pipeline we'll render/compute with.
+ nonEmptyBindGroupLayouts = [
+ getBindGroupLayout(explicitBindGroupLayout, kNonEmptyBindGroup0Ndx),
+ getBindGroupLayout(explicitBindGroupLayout, kNonEmptyBindGroup1Ndx)];
+
+ if (swap) {
+ swapArrayElements(nonEmptyBindGroupLayouts, 0, 1);
+ }
+ emptyBindGroupLayouts = [
+ pipeline.getBindGroupLayout(kEmptyBindGroup0Ndx),
+ pipeline.getBindGroupLayout(kEmptyBindGroup1Ndx)];
+
+ }
+
+ const emptyBindGroups = emptyBindGroupLayouts.map((layout) =>
+ device.createBindGroup({
+ layout,
+ entries: []
+ })
+ );
+
+ const nonEmptyBindGroups = nonEmptyBindGroupLayouts.map((layout) =>
+ device.createBindGroup({
+ layout,
+ entries: [{ binding: 0, resource: { buffer } }]
+ })
+ );
+
+ const encoder = device.createCommandEncoder();
+
+ doCommandFn({ t: this, encoder, pipeline, emptyBindGroups, nonEmptyBindGroups });
+
+ this.expectValidationError(() => {
+ encoder.finish();
+ }, !success);
+ }
}
export const g = makeTestGroup(F);
@@ -774,4 +938,175 @@ fn((t) => {
t.expectValidationError(() => {
encoder.finish();
}, !success);
+});
+
+// pipelineType specifies which pipeline to try to render/compute with
+// auto0 = the first `layout: 'auto'` pipeline
+// explicit = a pipeline crated with an explicit pipeline layout using explicit bind group layouts
+//
+// bindingType specifies where to get bindGroupLayouts to use to create bindGroups
+// auto0 = the first `layout: 'auto'` pipeline
+// auto1 = the second `layout: 'auto'` pipeline
+// explicit = a pipeline crated with an explicit pipeline layout using explicit bind group layouts
+//
+// swap specifies to swap the bindgroups we're testing. We test 2 of each type, 2 empty bindgroups and
+// 2 non-empty bindgroups. The 2 empty bindgroups, when swapped should still be compatible. Similarly
+// the 2 non-empty bindgroups, when swapped, should still be compatible.
+const kPipelineTypesAndBindingTypeParams = [
+{ pipelineType: 'auto0', bindingType: 'auto0', swap: false, _success: true },
+{ pipelineType: 'explicit', bindingType: 'explicit', swap: false, _success: true },
+{ pipelineType: 'explicit', bindingType: 'auto0', swap: false, _success: false },
+{ pipelineType: 'auto0', bindingType: 'explicit', swap: false, _success: false },
+{ pipelineType: 'auto0', bindingType: 'auto1', swap: false, _success: false },
+{ pipelineType: 'auto0', bindingType: 'auto0', swap: true, _success: true }];
+
+
+g.test('default_bind_group_layouts_never_match,compute_pass').
+desc(
+ `
+ Test that bind groups created with default bind group layouts never match other layouts, including empty bind groups.
+
+ * Test that a pipeline with an explicit layout can not be used with a bindGroup from an auto layout
+ * Test that a pipeline with an auto layout can not be used with a bindGroup from an explicit layout
+ * Test that an auto layout from one pipeline can not be used with an auto layout from a different pipeline.
+ * Test matching bindgroup layouts on the same default layout pipeline are compatible. In other words if
+ you only define group(2) then group(0)'s empty layout and group(1)'s empty layout should be compatible.
+ Similarly if group(2) and group(3) have the same types of resources they should be compatible.
+ `
+).
+params((u) =>
+u.
+combineWithParams(kPipelineTypesAndBindingTypeParams).
+combine('empty', [false, true]).
+combine('computeCommand', ['dispatchIndirect', 'dispatch'])
+).
+fn((t) => {
+ const { pipelineType, bindingType, swap, _success: success, computeCommand, empty } = t.params;
+
+ t.runDefaultLayoutBindingTest({
+ visibility: GPUShaderStage.COMPUTE,
+ empty,
+ pipelineType,
+ bindingType,
+ swap,
+ success,
+ makePipelinesFn: (t, explicitPipelineLayout) => {
+ return ['auto', 'auto', explicitPipelineLayout].map((layout) =>
+ t.device.createComputePipeline({
+ layout,
+ compute: {
+ module: t.device.createShaderModule({
+ code: `
+ @group(2) @binding(0) var<uniform> u1: vec4f;
+ @group(3) @binding(0) var<uniform> u2: vec4f;
+ @compute @workgroup_size(2) fn main() { _ = u1; _ = u2; }
+ `
+ }),
+ entryPoint: 'main'
+ }
+ })
+ );
+ },
+ doCommandFn: ({ t, encoder, pipeline, emptyBindGroups, nonEmptyBindGroups }) => {
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(kEmptyBindGroup0Ndx, emptyBindGroups[0]);
+ pass.setBindGroup(kEmptyBindGroup1Ndx, emptyBindGroups[1]);
+ pass.setBindGroup(kNonEmptyBindGroup0Ndx, nonEmptyBindGroups[0]);
+ pass.setBindGroup(kNonEmptyBindGroup1Ndx, nonEmptyBindGroups[1]);
+ t.doCompute(pass, computeCommand, true);
+ pass.end();
+ }
+ });
+});
+
+g.test('default_bind_group_layouts_never_match,render_pass').
+desc(
+ `
+ Test that bind groups created with default bind group layouts never match other layouts, including empty bind groups.
+
+ * Test that a pipeline with an explicit layout can not be used with a bindGroup from an auto layout
+ * Test that a pipeline with an auto layout can not be used with a bindGroup from an explicit layout
+ * Test that an auto layout from one pipeline can not be used with an auto layout from a different pipeline.
+ * Test matching bindgroup layouts on the same default layout pipeline are compatible. In other words if
+ you only define group(2) then group(0)'s empty layout and group(1)'s empty layout should be compatible.
+ Similarly if group(2) and group(3) have the same types of resources they should be compatible.
+ `
+).
+params((u) =>
+u.
+combineWithParams(kPipelineTypesAndBindingTypeParams).
+combine('empty', [false, true]).
+combine('renderCommand', [
+'draw',
+'drawIndexed',
+'drawIndirect',
+'drawIndexedIndirect']
+)
+).
+fn((t) => {
+ const { pipelineType, bindingType, swap, _success: success, renderCommand, empty } = t.params;
+
+ t.runDefaultLayoutBindingTest({
+ visibility: GPUShaderStage.VERTEX,
+ empty,
+ pipelineType,
+ bindingType,
+ swap,
+ success,
+ makePipelinesFn: (t, explicitPipelineLayout) => {
+ return ['auto', 'auto', explicitPipelineLayout].map(
+ (layout) => {
+ const colorFormat = 'rgba8unorm';
+ return t.device.createRenderPipeline({
+ layout,
+ vertex: {
+ module: t.device.createShaderModule({
+ code: `
+ @group(2) @binding(0) var<uniform> u1: vec4f;
+ @group(3) @binding(0) var<uniform> u2: vec4f;
+ @vertex fn main() -> @builtin(position) vec4f { return u1 + u2; }
+ `
+ }),
+ entryPoint: 'main'
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code: `@fragment fn main() {}`
+ }),
+ entryPoint: 'main',
+ targets: [{ format: colorFormat, writeMask: 0 }]
+ }
+ });
+ }
+ );
+ },
+ doCommandFn: ({ t, encoder, pipeline, emptyBindGroups, nonEmptyBindGroups }) => {
+ const attachmentTexture = t.device.createTexture({
+ format: 'rgba8unorm',
+ size: { width: 16, height: 16, depthOrArrayLayers: 1 },
+ usage: GPUTextureUsage.RENDER_ATTACHMENT
+ });
+ t.trackForCleanup(attachmentTexture);
+
+ const renderPass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: attachmentTexture.createView(),
+ clearValue: [0, 0, 0, 0],
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
+
+ });
+
+ renderPass.setPipeline(pipeline);
+ renderPass.setBindGroup(kEmptyBindGroup0Ndx, emptyBindGroups[0]);
+ renderPass.setBindGroup(kEmptyBindGroup1Ndx, emptyBindGroups[1]);
+ renderPass.setBindGroup(kNonEmptyBindGroup0Ndx, nonEmptyBindGroups[0]);
+ renderPass.setBindGroup(kNonEmptyBindGroup1Ndx, nonEmptyBindGroups[1]);
+ t.doRender(renderPass, renderCommand, true);
+ renderPass.end();
+ }
+ });
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/queries/general.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/queries/general.spec.js
index 4d7342c990..984da88430 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/queries/general.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/queries/general.spec.js
@@ -68,14 +68,16 @@ fn((t) => {
encoder.validateFinish(t.params.queryIndex < 2);
});
-g.test('timestamp_query,query_type_and_index').
+g.test('writeTimestamp,query_type_and_index').
desc(
`
Tests that write timestamp to all types of query set on all possible encoders:
- type {occlusion, timestamp}
- queryIndex {in, out of} range for GPUQuerySet
- x= {non-pass} encoder
- `
+
+TODO: writeTimestamp is removed from the spec so it's skipped if it TypeErrors.
+`
).
params((u) =>
u.
@@ -101,16 +103,23 @@ fn((t) => {
const querySet = createQuerySetWithType(t, type, count);
const encoder = t.createEncoder('non-pass');
- encoder.encoder.writeTimestamp(querySet, queryIndex);
+ try {
+
+ encoder.encoder.writeTimestamp(querySet, queryIndex);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
+ }
encoder.validateFinish(type === 'timestamp' && queryIndex < count);
});
-g.test('timestamp_query,invalid_query_set').
+g.test('writeTimestamp,invalid_query_set').
desc(
`
Tests that write timestamp to a invalid query set that failed during creation:
- x= {non-pass} encoder
- `
+
+TODO: writeTimestamp is removed from the spec so it's skipped if it TypeErrors.
+`
).
paramsSubcasesOnly((u) => u.combine('querySetState', ['valid', 'invalid'])).
beforeAllSubcases((t) => {
@@ -125,12 +134,22 @@ fn((t) => {
});
const encoder = t.createEncoder('non-pass');
- encoder.encoder.writeTimestamp(querySet, 0);
+ try {
+
+ encoder.encoder.writeTimestamp(querySet, 0);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
+ }
encoder.validateFinish(querySetState !== 'invalid');
});
-g.test('timestamp_query,device_mismatch').
-desc('Tests writeTimestamp cannot be called with a query set created from another device').
+g.test('writeTimestamp,device_mismatch').
+desc(
+ `Tests writeTimestamp cannot be called with a query set created from another device
+
+ TODO: writeTimestamp is removed from the spec so it's skipped if it TypeErrors.
+ `
+).
paramsSubcasesOnly((u) => u.combine('mismatched', [true, false])).
beforeAllSubcases((t) => {
t.selectDeviceForQueryTypeOrSkipTestCase('timestamp');
@@ -147,6 +166,11 @@ fn((t) => {
t.trackForCleanup(querySet);
const encoder = t.createEncoder('non-pass');
- encoder.encoder.writeTimestamp(querySet, 0);
+ try {
+
+ encoder.encoder.writeTimestamp(querySet, 0);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
+ }
encoder.validateFinish(!mismatched);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/render_bundle.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/render_bundle.spec.js
index 49e9902f8a..bb752533a9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/render_bundle.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/encoding/render_bundle.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Tests execution of render bundles.
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { kDepthStencilFormats, kTextureFormatInfo } from '../../../format_info.js';
+import { kDepthStencilFormats } from '../../../format_info.js';
import { ValidationTest } from '../validation_test.js';
export const g = makeTestGroup(ValidationTest);
@@ -169,19 +169,7 @@ beginSubcases().
combine('bundleDepthReadOnly', [false, true]).
combine('bundleStencilReadOnly', [false, true]).
combine('passDepthReadOnly', [false, true]).
-combine('passStencilReadOnly', [false, true]).
-filter((p) => {
- // For combined depth/stencil formats the depth and stencil read only state must match
- // in order to create a valid render bundle or render pass.
- const depthStencilInfo = kTextureFormatInfo[p.depthStencilFormat];
- if (depthStencilInfo.depth && depthStencilInfo.stencil) {
- return (
- p.passDepthReadOnly === p.passStencilReadOnly &&
- p.bundleDepthReadOnly === p.bundleStencilReadOnly);
-
- }
- return true;
-})
+combine('passStencilReadOnly', [false, true])
).
beforeAllSubcases((t) => {
t.selectDeviceForTextureFormatOrSkipTestCase(t.params.depthStencilFormat);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/error_scope.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/error_scope.spec.js
index e5d76f175c..cfca6157fc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/error_scope.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/error_scope.spec.js
@@ -26,7 +26,17 @@ class ErrorScopeTests extends Fixture {
const gpu = getGPU(this.rec);
const adapter = await gpu.requestAdapter();
assert(adapter !== null);
- const device = await adapter.requestDevice();
+
+ // We need to max out the adapter limits related to texture dimensions to more reliably cause an
+ // OOM error when asked for it, so set that on the device now.
+ const device = this.trackForCleanup(
+ await adapter.requestDevice({
+ requiredLimits: {
+ maxTextureDimension2D: adapter.limits.maxTextureDimension2D,
+ maxTextureArrayLayers: adapter.limits.maxTextureArrayLayers
+ }
+ })
+ );
assert(device !== null);
this._device = device;
}
@@ -146,7 +156,7 @@ Tests that popping an empty error scope stack should reject.
).
fn((t) => {
const promise = t.device.popErrorScope();
- t.shouldReject('OperationError', promise);
+ t.shouldReject('OperationError', promise, { allowMissingStack: true });
});
g.test('parent_scope').
@@ -250,7 +260,7 @@ fn(async (t) => {
{
// Trying to pop an additional non-existing scope should reject.
const promise = t.device.popErrorScope();
- t.shouldReject('OperationError', promise);
+ t.shouldReject('OperationError', promise, { allowMissingStack: true });
}
const errors = await Promise.all(promises);
@@ -286,6 +296,6 @@ fn(async (t) => {
{
// Trying to pop an additional non-existing scope should reject.
const promise = t.device.popErrorScope();
- t.shouldReject('OperationError', promise);
+ t.shouldReject('OperationError', promise, { allowMissingStack: true });
}
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/gpu_external_texture_expiration.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/gpu_external_texture_expiration.spec.js
index 4afd966260..0b271d6afd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/gpu_external_texture_expiration.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/gpu_external_texture_expiration.spec.js
@@ -86,10 +86,7 @@ fn(async (t) => {
sourceType === 'VideoFrame' ?
await getVideoFrameFromVideoElement(t, videoElement) :
videoElement;
- externalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ externalTexture = t.device.importExternalTexture({ source });
bindGroup = t.device.createBindGroup({
layout: t.getDefaultBindGroupLayout(),
@@ -99,10 +96,7 @@ fn(async (t) => {
t.submitCommandBuffer(bindGroup, true);
// Import again in the same task scope should return same object.
- const mayBeTheSameExternalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ const mayBeTheSameExternalTexture = t.device.importExternalTexture({ source });
if (externalTexture === mayBeTheSameExternalTexture) {
t.submitCommandBuffer(bindGroup, true);
@@ -142,10 +136,7 @@ fn(async (t) => {
// Import GPUExternalTexture
queueMicrotask(() => {
- externalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ externalTexture = t.device.importExternalTexture({ source });
});
// Submit GPUExternalTexture
@@ -182,10 +173,7 @@ fn(async (t) => {
sourceType === 'VideoFrame' ?
await getVideoFrameFromVideoElement(t, videoElement) :
videoElement;
- externalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ externalTexture = t.device.importExternalTexture({ source });
bindGroup = t.device.createBindGroup({
layout: t.getDefaultBindGroupLayout(),
@@ -218,10 +206,7 @@ fn(async (t) => {
let source;
await startPlayingAndWaitForVideo(videoElement, () => {
source = videoElement;
- externalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ externalTexture = t.device.importExternalTexture({ source });
bindGroup = t.device.createBindGroup({
layout: t.getDefaultBindGroupLayout(),
@@ -232,10 +217,7 @@ fn(async (t) => {
});
await waitForNextTask(() => {
- const mayBeTheSameExternalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ const mayBeTheSameExternalTexture = t.device.importExternalTexture({ source });
if (externalTexture === mayBeTheSameExternalTexture) {
// ImportExternalTexture should refresh expired GPUExternalTexture.
@@ -264,10 +246,7 @@ fn(async (t) => {
let externalTexture;
await startPlayingAndWaitForVideo(videoElement, async () => {
const source = await getVideoFrameFromVideoElement(t, videoElement);
- externalTexture = t.device.importExternalTexture({
-
- source: source
- });
+ externalTexture = t.device.importExternalTexture({ source });
bindGroup = t.device.createBindGroup({
layout: t.getDefaultBindGroupLayout(),
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/image_copy.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/image_copy.js
index 3cffa6b3ce..96115f0bf2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/image_copy.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/image_copy.js
@@ -255,9 +255,9 @@ export function formatCopyableWithMethod({ format, method }) {
return supportedAspects.length > 0;
}
if (method === 'CopyT2B') {
- return info.copySrc;
+ return info.color.copySrc;
} else {
- return info.copyDst;
+ return info.color.copyDst;
}
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/texture_related.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/texture_related.spec.js
index 7b535935c3..ec9501e307 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/texture_related.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/image_copy/texture_related.spec.js
@@ -440,7 +440,7 @@ fn((t) => {
const texture = t.createAlignedTexture(format, size, origin, dimension);
const bytesPerRow = align(
- Math.max(1, Math.ceil(size.width / info.blockWidth)) * info.bytesPerBlock,
+ Math.max(1, Math.ceil(size.width / info.blockWidth)) * info.color.bytes,
256
);
const rowsPerImage = Math.ceil(size.height / info.blockHeight);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/layout_shader_compat.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/layout_shader_compat.spec.js
index f579b416d1..9722aec086 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/layout_shader_compat.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/layout_shader_compat.spec.js
@@ -3,12 +3,291 @@
**/export const description = `
TODO:
- interface matching between pipeline layout and shader
- - x= {compute, vertex, fragment, vertex+fragment}, visibilities
- x= bind group index values, binding index values, multiple bindings
- - x= types of bindings
- - x= {equal, superset, subset}
+ - x= {superset, subset}
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
+import {
+ kShaderStageCombinations,
+ kShaderStages } from
+
+'../../capability_info.js';
+import { GPUConst } from '../../constants.js';
import { ValidationTest } from './validation_test.js';
-export const g = makeTestGroup(ValidationTest); \ No newline at end of file
+
+const kBindableResources = [
+'uniformBuf',
+'storageBuf',
+'readonlyStorageBuf',
+'filtSamp',
+'nonFiltSamp',
+'compareSamp',
+'sampledTex',
+'sampledTexMS',
+'readonlyStorageTex',
+'writeonlyStorageTex',
+'readwriteStorageTex'];
+
+
+const bindGroupLayoutEntryContents = {
+ compareSamp: {
+ sampler: {
+ type: 'comparison'
+ }
+ },
+ filtSamp: {
+ sampler: {
+ type: 'filtering'
+ }
+ },
+ nonFiltSamp: {
+ sampler: {
+ type: 'non-filtering'
+ }
+ },
+ sampledTex: {
+ texture: {
+ sampleType: 'unfilterable-float'
+ }
+ },
+ sampledTexMS: {
+ texture: {
+ sampleType: 'unfilterable-float',
+ multisampled: true
+ }
+ },
+ storageBuf: {
+ buffer: {
+ type: 'storage'
+ }
+ },
+ readonlyStorageBuf: {
+ buffer: {
+ type: 'read-only-storage'
+ }
+ },
+ uniformBuf: {
+ buffer: {
+ type: 'uniform'
+ }
+ },
+ readonlyStorageTex: {
+ storageTexture: {
+ format: 'r32float',
+ access: 'read-only'
+ }
+ },
+ writeonlyStorageTex: {
+ storageTexture: {
+ format: 'r32float',
+ access: 'write-only'
+ }
+ },
+ readwriteStorageTex: {
+ storageTexture: {
+ format: 'r32float',
+ access: 'read-write'
+ }
+ }
+};
+
+class F extends ValidationTest {
+ createPipelineLayout(
+ bindingInPipelineLayout,
+ visibility)
+ {
+ return this.device.createPipelineLayout({
+ bindGroupLayouts: [
+ this.device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility,
+ ...bindGroupLayoutEntryContents[bindingInPipelineLayout]
+ }]
+
+ })]
+
+ });
+ }
+
+ GetBindableResourceShaderDeclaration(bindableResource) {
+ switch (bindableResource) {
+ case 'compareSamp':
+ return 'var tmp : sampler_comparison';
+ case 'filtSamp':
+ case 'nonFiltSamp':
+ return 'var tmp : sampler';
+ case 'sampledTex':
+ return 'var tmp : texture_2d<f32>';
+ case 'sampledTexMS':
+ return 'var tmp : texture_multisampled_2d<f32>';
+ case 'storageBuf':
+ return 'var<storage, read_write> tmp : vec4u';
+ case 'readonlyStorageBuf':
+ return 'var<storage, read> tmp : vec4u';
+ case 'uniformBuf':
+ return 'var<uniform> tmp : vec4u;';
+ case 'readonlyStorageTex':
+ return 'var tmp : texture_storage_2d<r32float, read>';
+ case 'writeonlyStorageTex':
+ return 'var tmp : texture_storage_2d<r32float, write>';
+ case 'readwriteStorageTex':
+ return 'var tmp : texture_storage_2d<r32float, read_write>';
+ }
+ }
+}
+
+const BindingResourceCompatibleWithShaderStages = function (
+bindingResource,
+shaderStages)
+{
+ if ((shaderStages & GPUConst.ShaderStage.VERTEX) > 0) {
+ switch (bindingResource) {
+ case 'writeonlyStorageTex':
+ case 'readwriteStorageTex':
+ case 'storageBuf':
+ return false;
+ default:
+ break;
+ }
+ }
+ return true;
+};
+
+export const g = makeTestGroup(F);
+
+g.test('pipeline_layout_shader_exact_match').
+desc(
+ `
+ Test that the binding type in the pipeline layout must match the related declaration in shader.
+ Note that read-write storage textures in the pipeline layout can match write-only storage textures
+ in the shader.
+ `
+).
+params((u) =>
+u.
+combine('bindingInPipelineLayout', kBindableResources).
+combine('bindingInShader', kBindableResources).
+beginSubcases().
+combine('pipelineLayoutVisibility', kShaderStageCombinations).
+combine('shaderStageWithBinding', kShaderStages).
+combine('isBindingStaticallyUsed', [true, false]).
+unless(
+ (p) =>
+ // We don't test using non-filtering sampler in shader because it has the same declaration
+ // as filtering sampler.
+ p.bindingInShader === 'nonFiltSamp' ||
+ !BindingResourceCompatibleWithShaderStages(
+ p.bindingInPipelineLayout,
+ p.pipelineLayoutVisibility
+ ) ||
+ !BindingResourceCompatibleWithShaderStages(p.bindingInShader, p.shaderStageWithBinding)
+)
+).
+fn((t) => {
+ const {
+ bindingInPipelineLayout,
+ bindingInShader,
+ pipelineLayoutVisibility,
+ shaderStageWithBinding,
+ isBindingStaticallyUsed
+ } = t.params;
+
+ const layout = t.createPipelineLayout(bindingInPipelineLayout, pipelineLayoutVisibility);
+ const bindResourceDeclaration = `@group(0) @binding(0) ${t.GetBindableResourceShaderDeclaration(
+ bindingInShader
+ )}`;
+ const staticallyUseBinding = isBindingStaticallyUsed ? '_ = tmp; ' : '';
+ const isAsync = false;
+
+ let success = true;
+ if (isBindingStaticallyUsed) {
+ success = bindingInPipelineLayout === bindingInShader;
+
+ // Filtering and non-filtering both have the same shader declaration.
+ success ||= bindingInPipelineLayout === 'nonFiltSamp' && bindingInShader === 'filtSamp';
+
+ // Promoting storage textures that are read-write in the layout can be readonly in the shader.
+ success ||=
+ bindingInPipelineLayout === 'readwriteStorageTex' &&
+ bindingInShader === 'writeonlyStorageTex';
+
+ // The shader using the resource must be included in the visibility in the layout.
+ success &&= (pipelineLayoutVisibility & shaderStageWithBinding) > 0;
+ }
+
+ switch (shaderStageWithBinding) {
+ case GPUConst.ShaderStage.COMPUTE:{
+ const computeShader = `
+ ${bindResourceDeclaration};
+ @compute @workgroup_size(1)
+ fn main() {
+ ${staticallyUseBinding}
+ }
+ `;
+ t.doCreateComputePipelineTest(isAsync, success, {
+ layout,
+ compute: {
+ module: t.device.createShaderModule({
+ code: computeShader
+ })
+ }
+ });
+ break;
+ }
+ case GPUConst.ShaderStage.VERTEX:{
+ const vertexShader = `
+ ${bindResourceDeclaration};
+ @vertex
+ fn main() -> @builtin(position) vec4f {
+ ${staticallyUseBinding}
+ return vec4f();
+ }
+ `;
+ t.doCreateRenderPipelineTest(isAsync, success, {
+ layout,
+ vertex: {
+ module: t.device.createShaderModule({
+ code: vertexShader
+ })
+ }
+ });
+ break;
+ }
+ case GPUConst.ShaderStage.FRAGMENT:{
+ const fragmentShader = `
+ ${bindResourceDeclaration};
+ @fragment
+ fn main() -> @location(0) vec4f {
+ ${staticallyUseBinding}
+ return vec4f();
+ }
+ `;
+ t.doCreateRenderPipelineTest(isAsync, success, {
+ layout,
+ vertex: {
+ module: t.device.createShaderModule({
+ code: `
+ @vertex
+ fn main() -> @builtin(position) vec4f {
+ return vec4f();
+ }`
+ })
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code: fragmentShader
+ }),
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ }
+ });
+ break;
+ }
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js
index a66b9a7747..f7248cf964 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/copyToTexture/CopyExternalImageToTexture.spec.js
@@ -14,7 +14,7 @@ import { raceWithRejectOnTimeout, unreachable, assert } from '../../../../../com
import { kTextureUsages } from '../../../../capability_info.js';
import {
kTextureFormatInfo,
- kTextureFormats,
+ kAllTextureFormats,
kValidTextureFormatsForCopyE2T } from
'../../../../format_info.js';
import { kResourceStates } from '../../../../gpu_test.js';
@@ -669,7 +669,7 @@ desc(
).
params((u) =>
u.
-combine('format', kTextureFormats).
+combine('format', kAllTextureFormats).
beginSubcases().
combine('copySize', [
{ width: 0, height: 0, depthOrArrayLayers: 0 },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/query_set.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/query_set.spec.js
index 606a0a7a03..ac8f810f16 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/query_set.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/query_set.spec.js
@@ -24,11 +24,13 @@ fn((t) => {
encoder.validateFinishAndSubmitGivenState(t.params.querySetState);
});
-g.test('writeTimestamp').
+g.test('timestamps').
desc(
`
-Tests that use a destroyed query set in writeTimestamp on {non-pass, compute, render} encoder.
+Tests that use a destroyed query set in timestamp query on {non-pass, compute, render} encoder.
- x= {destroyed, not destroyed (control case)}
+
+ TODO: writeTimestamp is removed from the spec so it's skipped if it TypeErrors.
`
).
params((u) => u.beginSubcases().combine('querySetState', ['valid', 'destroyed'])).
@@ -39,9 +41,50 @@ fn((t) => {
count: 2
});
- const encoder = t.createEncoder('non-pass');
- encoder.encoder.writeTimestamp(querySet, 0);
- encoder.validateFinishAndSubmitGivenState(t.params.querySetState);
+ {
+ const encoder = t.createEncoder('non-pass');
+ try {
+
+ encoder.encoder.writeTimestamp(querySet, 0);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
+ }
+ encoder.validateFinishAndSubmitGivenState(t.params.querySetState);
+ }
+
+ {
+ const encoder = t.createEncoder('non-pass');
+ encoder.encoder.
+ beginComputePass({
+ timestampWrites: { querySet, beginningOfPassWriteIndex: 0 }
+ }).
+ end();
+ encoder.validateFinishAndSubmitGivenState(t.params.querySetState);
+ }
+
+ {
+ const texture = t.trackForCleanup(
+ t.device.createTexture({
+ size: [1, 1, 1],
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.RENDER_ATTACHMENT
+ })
+ );
+ const encoder = t.createEncoder('non-pass');
+ encoder.encoder.
+ beginRenderPass({
+ colorAttachments: [
+ {
+ view: texture.createView(),
+ loadOp: 'load',
+ storeOp: 'store'
+ }],
+
+ timestampWrites: { querySet, beginningOfPassWriteIndex: 0 }
+ }).
+ end();
+ encoder.validateFinishAndSubmitGivenState(t.params.querySetState);
+ }
});
g.test('resolveQuerySet').
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/texture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/texture.spec.js
index eb32232b51..2f64023806 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/texture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/queue/destroyed/texture.spec.js
@@ -164,16 +164,17 @@ Tests that using a destroyed texture referenced by a bindGroup set with setBindG
paramsSubcasesOnly((u) =>
u.
combine('destroyed', [false, true]).
-combine('encoderType', ['compute pass', 'render pass', 'render bundle'])
+combine('encoderType', ['compute pass', 'render pass', 'render bundle']).
+combine('bindingType', ['texture', 'storageTexture'])
).
fn((t) => {
- const { destroyed, encoderType } = t.params;
+ const { destroyed, encoderType, bindingType } = t.params;
const { device } = t;
const texture = t.trackForCleanup(
t.device.createTexture({
size: [1, 1, 1],
format: 'rgba8unorm',
- usage: GPUTextureUsage.TEXTURE_BINDING
+ usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING
})
);
@@ -182,7 +183,9 @@ fn((t) => {
{
binding: 0,
visibility: GPUShaderStage.COMPUTE,
- texture: {}
+ [bindingType]: {
+ format: texture.format
+ }
}]
});
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/attachment_compatibility.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/attachment_compatibility.spec.js
index 7712bf64c4..6579343b49 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/attachment_compatibility.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/attachment_compatibility.spec.js
@@ -551,13 +551,6 @@ combine('cullMode', ['none', 'front', 'back']).
filter((p) => {
if (p.format) {
const depthStencilInfo = kTextureFormatInfo[p.format];
- // For combined depth/stencil formats the depth and stencil read only state must match
- // in order to create a valid render bundle or render pass.
- if (depthStencilInfo.depth && depthStencilInfo.stencil) {
- if (p.depthReadOnly !== p.stencilReadOnly) {
- return false;
- }
- }
// If the format has no depth aspect, the depthReadOnly, depthWriteEnabled of the pipeline must not be true
// in order to create a valid render pipeline.
if (!depthStencilInfo.depth && p.depthWriteEnabled) {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/render_pass_descriptor.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/render_pass_descriptor.spec.js
index 5108b21fc7..94633c2f70 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/render_pass_descriptor.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pass/render_pass_descriptor.spec.js
@@ -26,10 +26,12 @@ class F extends ValidationTest {
+
{})
{
const {
format = 'rgba8unorm',
+ dimension = '2d',
width = 16,
height = 16,
arrayLayerCount = 1,
@@ -41,6 +43,7 @@ class F extends ValidationTest {
return this.device.createTexture({
size: { width, height, depthOrArrayLayers: arrayLayerCount },
format,
+ dimension,
mipLevelCount,
sampleCount,
usage
@@ -90,6 +93,7 @@ class F extends ValidationTest {
}
export const g = makeTestGroup(F);
+const kArrayLayerCount = 10;
g.test('attachments,one_color_attachment').
desc(`Test that a render pass works with only one color attachment.`).
@@ -278,6 +282,184 @@ fn((t) => {
t.tryRenderPass(success, { colorAttachments });
});
+g.test('color_attachments,depthSlice,definedness').
+desc(
+ `
+ Test that depthSlice must be undefined for 2d color attachments and defined for 3d color attachments."
+ - The special value '0xFFFFFFFF' is not treated as 'undefined'.
+ `
+).
+params((u) =>
+u.
+combine('dimension', ['2d', '3d']).
+beginSubcases().
+combine('depthSlice', [undefined, 0, 0xffffffff])
+).
+fn((t) => {
+ const { dimension, depthSlice } = t.params;
+ const texture = t.createTexture({ dimension });
+
+ const colorAttachment = t.getColorAttachment(texture);
+ if (depthSlice !== undefined) {
+ colorAttachment.depthSlice = depthSlice;
+ }
+
+ const descriptor = {
+ colorAttachments: [colorAttachment]
+ };
+
+ const success =
+ dimension === '2d' && depthSlice === undefined || dimension === '3d' && depthSlice === 0;
+
+ t.tryRenderPass(success, descriptor);
+});
+
+g.test('color_attachments,depthSlice,bound_check').
+desc(
+ `
+ Test that depthSlice must be less than the depthOrArrayLayers of 3d texture's subresource at mip levels.
+ - Check depth bounds with 3d texture size [16, 1, 10], which has 5 mip levels with depth [10, 5, 2, 1, 1]
+ for testing more mip level size computation.
+ - Failed if depthSlice >= the depth of each mip level.
+ `
+).
+params((u) =>
+u.
+combine('mipLevel', [0, 1, 2, 3, 4]).
+beginSubcases().
+expand('depthSlice', ({ mipLevel }) => {
+ const depthAtMipLevel = Math.max(kArrayLayerCount >> mipLevel, 1);
+ // Use Set() to exclude duplicates when the depthAtMipLevel is 1 and 2
+ return [...new Set([0, 1, depthAtMipLevel - 1, depthAtMipLevel])];
+})
+).
+fn((t) => {
+ const { mipLevel, depthSlice } = t.params;
+
+ const texture = t.createTexture({
+ dimension: '3d',
+ width: 16,
+ height: 1,
+ arrayLayerCount: kArrayLayerCount,
+ mipLevelCount: mipLevel + 1
+ });
+
+ const viewDescriptor = {
+ baseMipLevel: mipLevel,
+ mipLevelCount: 1,
+ baseArrayLayer: 0,
+ arrayLayerCount: 1
+ };
+
+ const colorAttachment = t.getColorAttachment(texture, viewDescriptor);
+ colorAttachment.depthSlice = depthSlice;
+
+ const passDescriptor = {
+ colorAttachments: [colorAttachment]
+ };
+
+ const success = depthSlice < Math.max(kArrayLayerCount >> mipLevel, 1);
+
+ t.tryRenderPass(success, passDescriptor);
+});
+
+g.test('color_attachments,depthSlice,overlaps,same_miplevel').
+desc(
+ `
+ Test that the depth slices of 3d color attachments have no overlaps for same texture in a render
+ pass.
+ - Succeed if the depth slices are different, or from different textures, or on different render
+ passes.
+ - Fail if same depth slice from same texture's same mip level is overwritten in a render pass.
+ `
+).
+params((u) =>
+u.
+combine('sameDepthSlice', [true, false]).
+beginSubcases().
+combine('sameTexture', [true, false]).
+combine('samePass', [true, false])
+).
+fn((t) => {
+ const { sameDepthSlice, sameTexture, samePass } = t.params;
+ const arrayLayerCount = 4;
+
+ const texDescriptor = {
+ dimension: '3d',
+ arrayLayerCount
+ };
+ const texture = t.createTexture(texDescriptor);
+
+ const colorAttachments = [];
+ for (let i = 0; i < arrayLayerCount; i++) {
+ const colorAttachment = t.getColorAttachment(
+ sameTexture ? texture : t.createTexture(texDescriptor)
+ );
+ colorAttachment.depthSlice = sameDepthSlice ? 0 : i;
+ colorAttachments.push(colorAttachment);
+ }
+
+ const encoder = t.createEncoder('non-pass');
+ if (samePass) {
+ const pass = encoder.encoder.beginRenderPass({ colorAttachments });
+ pass.end();
+ } else {
+ for (let i = 0; i < arrayLayerCount; i++) {
+ const pass = encoder.encoder.beginRenderPass({ colorAttachments: [colorAttachments[i]] });
+ pass.end();
+ }
+ }
+
+ const success = !sameDepthSlice || !sameTexture || !samePass;
+
+ encoder.validateFinish(success);
+});
+
+g.test('color_attachments,depthSlice,overlaps,diff_miplevel').
+desc(
+ `
+ Test that the same depth slice from different mip levels of a 3d texture with size [1, 1, N] can
+ be set in a render pass's color attachments.
+ `
+).
+params((u) => u.combine('sameMipLevel', [true, false])).
+fn((t) => {
+ const { sameMipLevel } = t.params;
+ const mipLevelCount = 4;
+
+ const texDescriptor = {
+ dimension: '3d',
+ width: 1,
+ height: 1,
+ arrayLayerCount: 1 << mipLevelCount,
+ mipLevelCount
+ };
+ const texture = t.createTexture(texDescriptor);
+
+ const viewDescriptor = {
+ baseMipLevel: 0,
+ mipLevelCount: 1,
+ baseArrayLayer: 0,
+ arrayLayerCount: 1
+ };
+
+ const colorAttachments = [];
+ for (let i = 0; i < mipLevelCount; i++) {
+ if (!sameMipLevel) {
+ viewDescriptor.baseMipLevel = i;
+ }
+ const colorAttachment = t.getColorAttachment(texture, viewDescriptor);
+ colorAttachment.depthSlice = 0;
+ colorAttachments.push(colorAttachment);
+ }
+
+ const encoder = t.createEncoder('non-pass');
+ const pass = encoder.encoder.beginRenderPass({ colorAttachments });
+ pass.end();
+
+ encoder.validateFinish(!sameMipLevel);
+});
+
g.test('attachments,same_size').
desc(
`
@@ -909,10 +1091,8 @@ fn((t) => {
const hasDepth = info.depth;
const hasStencil = info.stencil;
- const goodAspectCombo =
- (hasDepth && hasStencil ? !depthReadOnly === !stencilReadOnly : true) && (
- hasDepthSettings ? hasDepth : true) && (
- hasStencilSettings ? hasStencil : true);
+ const goodAspectSettingsPresent =
+ (hasDepthSettings ? hasDepth : true) && (hasStencilSettings ? hasStencil : true);
const hasBothDepthOps = !!depthLoadOp && !!depthStoreOp;
const hasBothStencilOps = !!stencilLoadOp && !!stencilStoreOp;
@@ -923,7 +1103,7 @@ fn((t) => {
const goodStencilCombo =
hasStencil && !stencilReadOnly ? hasBothStencilOps : hasNeitherStencilOps;
- const shouldError = !goodAspectCombo || !goodDepthCombo || !goodStencilCombo;
+ const shouldError = !goodAspectSettingsPresent || !goodDepthCombo || !goodStencilCombo;
t.expectValidationError(() => {
encoder.finish();
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/common.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/common.js
index 2b4283b32c..6785346a2f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/common.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/common.js
@@ -6,6 +6,8 @@ kDefaultVertexShaderCode } from
'../../../util/shader.js';
import { ValidationTest } from '../validation_test.js';
+
+
const values = [0, 1, 0, 1];
export class CreateRenderPipelineValidationTest extends ValidationTest {
getDescriptor(
@@ -19,17 +21,16 @@ export class CreateRenderPipelineValidationTest extends ValidationTest {
{})
{
- const defaultTargets = [{ format: 'rgba8unorm' }];
const {
primitive = {},
- targets = defaultTargets,
+ targets = [{ format: 'rgba8unorm' }],
multisample = {},
depthStencil,
fragmentShaderCode = getFragmentShaderCodeWithOutput([
{
values,
plainType: getPlainTypeInfo(
- kTextureFormatInfo[targets[0] ? targets[0].format : 'rgba8unorm'].sampleType
+ kTextureFormatInfo[targets[0] ? targets[0].format : 'rgba8unorm'].color.type
),
componentCount: 4
}]
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/depth_stencil_state.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/depth_stencil_state.spec.js
index d47041b4fc..8be7ee6e88 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/depth_stencil_state.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/depth_stencil_state.spec.js
@@ -5,7 +5,11 @@ This test dedicatedly tests validation of GPUDepthStencilState of createRenderPi
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
import { unreachable } from '../../../../common/util/util.js';
import { kCompareFunctions, kStencilOperations } from '../../../capability_info.js';
-import { kTextureFormats, kTextureFormatInfo, kDepthStencilFormats } from '../../../format_info.js';
+import {
+ kAllTextureFormats,
+ kTextureFormatInfo,
+ kDepthStencilFormats } from
+'../../../format_info.js';
import { getFragmentShaderCodeWithOutput } from '../../../util/shader.js';
import { CreateRenderPipelineValidationTest } from './common.js';
@@ -14,7 +18,11 @@ export const g = makeTestGroup(CreateRenderPipelineValidationTest);
g.test('format').
desc(`The texture format in depthStencilState must be a depth/stencil format.`).
-params((u) => u.combine('isAsync', [false, true]).combine('format', kTextureFormats)).
+params((u) =>
+u //
+.combine('isAsync', [false, true]).
+combine('format', kAllTextureFormats)
+).
beforeAllSubcases((t) => {
const { format } = t.params;
const info = kTextureFormatInfo[format];
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/fragment_state.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/fragment_state.spec.js
index 6e7a46e943..efaca1883f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/fragment_state.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/fragment_state.spec.js
@@ -10,15 +10,17 @@ import {
kMaxColorAttachmentsToTest } from
'../../../capability_info.js';
import {
- kTextureFormats,
+ kAllTextureFormats,
kRenderableColorTextureFormats,
kTextureFormatInfo,
- computeBytesPerSampleFromFormats } from
+ computeBytesPerSampleFromFormats,
+ kColorTextureFormats } from
'../../../format_info.js';
import {
getFragmentShaderCodeWithOutput,
getPlainTypeInfo,
- kDefaultFragmentShaderCode } from
+ kDefaultFragmentShaderCode,
+ kDefaultVertexShaderCode } from
'../../../util/shader.js';
import { kTexelRepresentationInfo } from '../../../util/texture/texel_data.js';
@@ -49,9 +51,60 @@ fn((t) => {
t.doCreateRenderPipelineTest(isAsync, false, badDescriptor);
});
+g.test('targets_format_is_color_format').
+desc(
+ `Tests that color target state format must be a color format, regardless of how the
+ fragment shader writes to it.`
+).
+params((u) =>
+u
+// Test all non-color texture formats, plus 'rgba8unorm' as a control case.
+.combine('format', kAllTextureFormats).
+filter(({ format }) => {
+ return format === 'rgba8unorm' || !kTextureFormatInfo[format].color;
+}).
+combine('isAsync', [false, true]).
+beginSubcases().
+combine('fragOutType', ['f32', 'u32', 'i32'])
+).
+beforeAllSubcases((t) => {
+ const { format } = t.params;
+ const info = kTextureFormatInfo[format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ t.selectDeviceOrSkipTestCase(info.feature);
+}).
+fn((t) => {
+ const { isAsync, format, fragOutType } = t.params;
+
+ const fragmentShaderCode = getFragmentShaderCodeWithOutput([
+ { values, plainType: fragOutType, componentCount: 4 }]
+ );
+
+ const success = format === 'rgba8unorm' && fragOutType === 'f32';
+ t.doCreateRenderPipelineTest(isAsync, success, {
+ vertex: {
+ module: t.device.createShaderModule({ code: kDefaultVertexShaderCode }),
+ entryPoint: 'main'
+ },
+ fragment: {
+ module: t.device.createShaderModule({ code: fragmentShaderCode }),
+ entryPoint: 'main',
+ targets: [{ format }]
+ },
+ layout: 'auto'
+ });
+});
+
g.test('targets_format_renderable').
-desc(`Tests that color target state format must have RENDER_ATTACHMENT capability.`).
-params((u) => u.combine('isAsync', [false, true]).combine('format', kTextureFormats)).
+desc(
+ `Tests that color target state format must have RENDER_ATTACHMENT capability
+ (tests only color formats).`
+).
+params((u) =>
+u //
+.combine('isAsync', [false, true]).
+combine('format', kColorTextureFormats)
+).
beforeAllSubcases((t) => {
const { format } = t.params;
const info = kTextureFormatInfo[format];
@@ -158,22 +211,10 @@ combineWithParams([
// become 4 and 4+4+8+16+1 > 32. Re-ordering this so the R8Unorm's are at the end, however
// is allowed: 4+8+16+1+1 < 32.
{
- formats: [
- 'r8unorm',
- 'r32float',
- 'rgba8unorm',
- 'rgba32float',
- 'r8unorm']
-
+ formats: ['r8unorm', 'r32float', 'rgba8unorm', 'rgba32float', 'r8unorm']
},
{
- formats: [
- 'r32float',
- 'rgba8unorm',
- 'rgba32float',
- 'r8unorm',
- 'r8unorm']
-
+ formats: ['r32float', 'rgba8unorm', 'rgba32float', 'r8unorm', 'r8unorm']
}]
).
beginSubcases().
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/inter_stage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/inter_stage.spec.js
index 019d725d3c..f6280ccf76 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/inter_stage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/inter_stage.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Interface matching between vertex and fragment shader validation for createRenderPipeline.
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { assert, range } from '../../../../common/util/util.js';
+import { range } from '../../../../common/util/util.js';
import { CreateRenderPipelineValidationTest } from './common.js';
@@ -97,8 +97,18 @@ fn((t) => {
});
g.test('location,superset').
-desc(`TODO: implement after spec is settled: https://github.com/gpuweb/gpuweb/issues/2038`).
-unimplemented();
+desc(`Tests that validation should succeed when vertex output is superset of fragment input`).
+params((u) => u.combine('isAsync', [false, true])).
+fn((t) => {
+ const { isAsync } = t.params;
+
+ const descriptor = t.getDescriptorWithStates(
+ t.getVertexStateWithOutputs(['@location(0) vout0: f32', '@location(1) vout1: f32']),
+ t.getFragmentStateWithInputs(['@location(1) fin1: f32'])
+ );
+
+ t.doCreateRenderPipelineTest(isAsync, true, descriptor);
+});
g.test('location,subset').
desc(`Tests that validation should fail when vertex output is a subset of fragment input.`).
@@ -159,20 +169,27 @@ u.combine('isAsync', [false, true]).combineWithParams([
{ output: '@interpolate(linear)', input: '@interpolate(perspective)' },
{ output: '@interpolate(flat)', input: '@interpolate(perspective)' },
{ output: '@interpolate(linear)', input: '@interpolate(flat)' },
-{ output: '@interpolate(linear, center)', input: '@interpolate(linear, center)' }]
+{
+ output: '@interpolate(linear, center)',
+ input: '@interpolate(linear, center)',
+ _compat_success: false
+}]
)
).
fn((t) => {
- const { isAsync, output, input, _success } = t.params;
+ const { isAsync, output, input, _success, _compat_success } = t.params;
const descriptor = t.getDescriptorWithStates(
t.getVertexStateWithOutputs([`@location(0) ${output} vout0: f32`]),
t.getFragmentStateWithInputs([`@location(0) ${input} fin0: f32`])
);
- t.doCreateRenderPipelineTest(isAsync, _success ?? output === input, descriptor);
-});
+ const shouldSucceed =
+ (_success ?? output === input) && (!t.isCompatibility || _compat_success !== false);
+ t.doCreateRenderPipelineTest(isAsync, shouldSucceed, descriptor);
+});
+1;
g.test('interpolation_sampling').
desc(
`Tests that validation should fail when interpolation sampling of vertex output and fragment input at the same location doesn't match.`
@@ -186,7 +203,12 @@ u.combine('isAsync', [false, true]).combineWithParams([
input: '@interpolate(perspective, center)',
_success: true
},
-{ output: '@interpolate(linear, center)', input: '@interpolate(linear)', _success: true },
+{
+ output: '@interpolate(linear, center)',
+ input: '@interpolate(linear)',
+ _success: true,
+ _compat_success: false
+},
{ output: '@interpolate(flat)', input: '@interpolate(flat)' },
{ output: '@interpolate(perspective)', input: '@interpolate(perspective, sample)' },
{ output: '@interpolate(perspective, center)', input: '@interpolate(perspective, sample)' },
@@ -198,14 +220,17 @@ u.combine('isAsync', [false, true]).combineWithParams([
)
).
fn((t) => {
- const { isAsync, output, input, _success } = t.params;
+ const { isAsync, output, input, _success, _compat_success } = t.params;
const descriptor = t.getDescriptorWithStates(
t.getVertexStateWithOutputs([`@location(0) ${output} vout0: f32`]),
t.getFragmentStateWithInputs([`@location(0) ${input} fin0: f32`])
);
- t.doCreateRenderPipelineTest(isAsync, _success ?? output === input, descriptor);
+ const shouldSucceed =
+ (_success ?? output === input) && (!t.isCompatibility || _compat_success !== false);
+
+ t.doCreateRenderPipelineTest(isAsync, shouldSucceed, descriptor);
});
g.test('max_shader_variable_location').
@@ -251,9 +276,6 @@ fn((t) => {
const numVec4 = Math.floor(numScalarComponents / 4);
const numTrailingScalars = numScalarComponents % 4;
- const numUserDefinedInterStageVariables = numTrailingScalars > 0 ? numVec4 + 1 : numVec4;
-
- assert(numUserDefinedInterStageVariables <= t.device.limits.maxInterStageShaderVariables);
const outputs = range(numVec4, (i) => `@location(${i}) vout${i}: vec4<f32>`);
const inputs = range(numVec4, (i) => `@location(${i}) fin${i}: vec4<f32>`);
@@ -280,23 +302,23 @@ desc(
params((u) =>
u.combine('isAsync', [false, true]).combineWithParams([
// Number of user-defined input scalar components in test shader = device.limits.maxInterStageShaderComponents + numScalarDelta.
-{ numScalarDelta: 0, useExtraBuiltinInputs: false, _success: true },
-{ numScalarDelta: 1, useExtraBuiltinInputs: false, _success: false },
-{ numScalarDelta: 0, useExtraBuiltinInputs: true, _success: false },
-{ numScalarDelta: -3, useExtraBuiltinInputs: true, _success: true },
-{ numScalarDelta: -2, useExtraBuiltinInputs: true, _success: false }]
+{ numScalarDelta: 0, useExtraBuiltinInputs: false },
+{ numScalarDelta: 1, useExtraBuiltinInputs: false },
+{ numScalarDelta: 0, useExtraBuiltinInputs: true },
+{ numScalarDelta: -3, useExtraBuiltinInputs: true },
+{ numScalarDelta: -2, useExtraBuiltinInputs: true }]
)
).
fn((t) => {
- const { isAsync, numScalarDelta, useExtraBuiltinInputs, _success } = t.params;
+ const { isAsync, numScalarDelta, useExtraBuiltinInputs } = t.params;
const numScalarComponents = t.device.limits.maxInterStageShaderComponents + numScalarDelta;
+ const numExtraComponents = useExtraBuiltinInputs ? t.isCompatibility ? 2 : 3 : 0;
+ const numUsedComponents = numScalarComponents + numExtraComponents;
+ const success = numUsedComponents <= t.device.limits.maxInterStageShaderComponents;
const numVec4 = Math.floor(numScalarComponents / 4);
const numTrailingScalars = numScalarComponents % 4;
- const numUserDefinedInterStageVariables = numTrailingScalars > 0 ? numVec4 + 1 : numVec4;
-
- assert(numUserDefinedInterStageVariables <= t.device.limits.maxInterStageShaderVariables);
const outputs = range(numVec4, (i) => `@location(${i}) vout${i}: vec4<f32>`);
const inputs = range(numVec4, (i) => `@location(${i}) fin${i}: vec4<f32>`);
@@ -310,9 +332,11 @@ fn((t) => {
if (useExtraBuiltinInputs) {
inputs.push(
'@builtin(front_facing) front_facing_in: bool',
- '@builtin(sample_index) sample_index_in: u32',
'@builtin(sample_mask) sample_mask_in: u32'
);
+ if (!t.isCompatibility) {
+ inputs.push('@builtin(sample_index) sample_index_in: u32');
+ }
}
const descriptor = t.getDescriptorWithStates(
@@ -320,5 +344,5 @@ fn((t) => {
t.getFragmentStateWithInputs(inputs, true)
);
- t.doCreateRenderPipelineTest(isAsync, _success, descriptor);
+ t.doCreateRenderPipelineTest(isAsync, success, descriptor);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/misc.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/misc.spec.js
index 79dddb51e0..d4489a549f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/misc.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/misc.spec.js
@@ -95,4 +95,38 @@ fn((t) => {
};
t.doCreateRenderPipelineTest(isAsync, !mismatched, descriptor);
+});
+
+g.test('external_texture').
+desc('Tests createRenderPipeline() with an external_texture').
+fn((t) => {
+ const shader = t.device.createShaderModule({
+ code: `
+ @vertex
+ fn vertexMain() -> @builtin(position) vec4f {
+ return vec4f(1);
+ }
+
+ @group(0) @binding(0) var myTexture: texture_external;
+
+ @fragment
+ fn fragmentMain() -> @location(0) vec4f {
+ let result = textureLoad(myTexture, vec2u(1, 1));
+ return vec4f(1);
+ }
+ `
+ });
+
+ const descriptor = {
+ layout: 'auto',
+ vertex: {
+ module: shader
+ },
+ fragment: {
+ module: shader,
+ targets: [{ format: 'rgba8unorm' }]
+ }
+ };
+
+ t.doCreateRenderPipelineTest(false, true, descriptor);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/resource_compatibility.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/resource_compatibility.spec.js
new file mode 100644
index 0000000000..6b1d18290f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/render_pipeline/resource_compatibility.spec.js
@@ -0,0 +1,95 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests for resource compatibilty between pipeline layout and shader modules
+ `;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import {
+ kAPIResources,
+ getWGSLShaderForResource,
+ getAPIBindGroupLayoutForResource,
+ doResourcesMatch } from
+'../utils.js';
+
+import { CreateRenderPipelineValidationTest } from './common.js';
+
+export const g = makeTestGroup(CreateRenderPipelineValidationTest);
+
+g.test('resource_compatibility').
+desc(
+ 'Tests validation of resource (bind group) compatibility between pipeline layout and WGSL shader'
+).
+params((u) =>
+u //
+.combine('stage', ['vertex', 'fragment']).
+combine('apiResource', keysOf(kAPIResources)).
+filter((t) => {
+ const res = kAPIResources[t.apiResource];
+ if (t.stage === 'vertex') {
+ if (res.buffer && res.buffer.type === 'storage') {
+ return false;
+ }
+ if (res.storageTexture && res.storageTexture.access !== 'read-only') {
+ return false;
+ }
+ }
+ return true;
+}).
+beginSubcases().
+combine('isAsync', [true, false]).
+combine('wgslResource', keysOf(kAPIResources))
+).
+fn((t) => {
+ const apiResource = kAPIResources[t.params.apiResource];
+ const wgslResource = kAPIResources[t.params.wgslResource];
+ t.skipIf(
+ wgslResource.storageTexture !== undefined &&
+ wgslResource.storageTexture.access !== 'write-only' &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'Storage textures require language feature'
+ );
+ const emptyVS = `
+@vertex
+fn main() -> @builtin(position) vec4f {
+ return vec4f();
+}
+`;
+ const emptyFS = `
+@fragment
+fn main() -> @location(0) vec4f {
+ return vec4f();
+}
+`;
+
+ const code = getWGSLShaderForResource(t.params.stage, wgslResource);
+ const vsCode = t.params.stage === 'vertex' ? code : emptyVS;
+ const fsCode = t.params.stage === 'fragment' ? code : emptyFS;
+ const gpuStage =
+ t.params.stage === 'vertex' ? GPUShaderStage.VERTEX : GPUShaderStage.FRAGMENT;
+ const layout = t.device.createPipelineLayout({
+ bindGroupLayouts: [getAPIBindGroupLayoutForResource(t.device, gpuStage, apiResource)]
+ });
+
+ const descriptor = {
+ layout,
+ vertex: {
+ module: t.device.createShaderModule({
+ code: vsCode
+ }),
+ entryPoint: 'main'
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code: fsCode
+ }),
+ entryPoint: 'main',
+ targets: [{ format: 'rgba8unorm' }]
+ }
+ };
+
+ t.doCreateRenderPipelineTest(
+ t.params.isAsync,
+ doResourcesMatch(apiResource, wgslResource),
+ descriptor
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_pass_encoder.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_pass_encoder.spec.js
index f354053e4f..7977c3fb9d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_pass_encoder.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_pass_encoder.spec.js
@@ -14,10 +14,17 @@ import {
import { ValidationTest } from '../../validation_test.js';
+
+
+
+
+
const kTextureBindingTypes = [
'sampled-texture',
'multisampled-texture',
-'writeonly-storage-texture'];
+'writeonly-storage-texture',
+'readonly-storage-texture',
+'readwrite-storage-texture'];
const SIZE = 32;
@@ -39,7 +46,7 @@ class TextureUsageTracking extends ValidationTest {
arrayLayerCount = 1,
mipLevelCount = 1,
sampleCount = 1,
- format = 'rgba8unorm',
+ format = 'r32float',
usage = GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.TEXTURE_BINDING
} = options;
@@ -75,6 +82,14 @@ class TextureUsageTracking extends ValidationTest {
assert(format !== undefined);
entry = { storageTexture: { access: 'write-only', format, viewDimension } };
break;
+ case 'readonly-storage-texture':
+ assert(format !== undefined);
+ entry = { storageTexture: { access: 'read-only', format, viewDimension } };
+ break;
+ case 'readwrite-storage-texture':
+ assert(format !== undefined);
+ entry = { storageTexture: { access: 'read-write', format, viewDimension } };
+ break;
}
return this.device.createBindGroupLayout({
@@ -107,7 +122,7 @@ class TextureUsageTracking extends ValidationTest {
depthStencilFormat)
{
const bundleEncoder = this.device.createRenderBundleEncoder({
- colorFormats: ['rgba8unorm'],
+ colorFormats: ['r32float'],
depthStencilFormat
});
bundleEncoder.setBindGroup(binding, bindGroup);
@@ -129,16 +144,21 @@ class TextureUsageTracking extends ValidationTest {
}
/**
- * Create two bind groups. Resource usages conflict between these two bind groups. But resource
- * usage inside each bind group doesn't conflict.
+ * Create two bind groups with one texture view.
*/
- makeConflictingBindGroups() {
+ makeTwoBindGroupsWithOneTextureView(usage1, usage2) {
const view = this.createTexture({
usage: GPUTextureUsage.STORAGE_BINDING | GPUTextureUsage.TEXTURE_BINDING
}).createView();
const bindGroupLayouts = [
- this.createBindGroupLayout(0, 'sampled-texture', '2d'),
- this.createBindGroupLayout(0, 'writeonly-storage-texture', '2d', { format: 'rgba8unorm' })];
+ this.createBindGroupLayout(0, usage1, '2d', {
+ sampleType: 'unfilterable-float',
+ format: 'r32float'
+ }),
+ this.createBindGroupLayout(0, usage2, '2d', {
+ sampleType: 'unfilterable-float',
+ format: 'r32float'
+ })];
return {
bindGroupLayouts,
@@ -155,14 +175,21 @@ class TextureUsageTracking extends ValidationTest {
};
}
- testValidationScope(compute)
+ testValidationScope(
+ compute,
+ usage1,
+ usage2)
+
{
- const { bindGroupLayouts, bindGroups } = this.makeConflictingBindGroups();
+ const { bindGroupLayouts, bindGroups } = this.makeTwoBindGroupsWithOneTextureView(
+ usage1,
+ usage2
+ );
const encoder = this.device.createCommandEncoder();
const pass = compute ?
@@ -175,7 +202,7 @@ class TextureUsageTracking extends ValidationTest {
});
const pipeline = compute ?
this.createNoOpComputePipeline(pipelineLayout) :
- this.createNoOpRenderPipeline(pipelineLayout);
+ this.createNoOpRenderPipeline(pipelineLayout, 'r32float');
return {
bindGroup0: bindGroups[0],
bindGroup1: bindGroups[1],
@@ -237,6 +264,8 @@ expandWithParams(
[
{ _usageOK: true, type0: 'sampled-texture', type1: 'sampled-texture' },
{ _usageOK: false, type0: 'sampled-texture', type1: 'writeonly-storage-texture' },
+ { _usageOK: true, type0: 'sampled-texture', type1: 'readonly-storage-texture' },
+ { _usageOK: false, type0: 'sampled-texture', type1: 'readwrite-storage-texture' },
{ _usageOK: false, type0: 'sampled-texture', type1: 'render-target' },
// Race condition upon multiple writable storage texture is valid.
// For p.compute === true, fails at pass.dispatch because aliasing exists.
@@ -245,7 +274,34 @@ expandWithParams(
type0: 'writeonly-storage-texture',
type1: 'writeonly-storage-texture'
},
+ {
+ _usageOK: true,
+ type0: 'readonly-storage-texture',
+ type1: 'readonly-storage-texture'
+ },
+ {
+ _usageOK: !p.compute,
+ type0: 'readwrite-storage-texture',
+ type1: 'readwrite-storage-texture'
+ },
+ {
+ _usageOK: false,
+ type0: 'readonly-storage-texture',
+ type1: 'writeonly-storage-texture'
+ },
+ {
+ _usageOK: false,
+ type0: 'readonly-storage-texture',
+ type1: 'readwrite-storage-texture'
+ },
+ {
+ _usageOK: false,
+ type0: 'writeonly-storage-texture',
+ type1: 'readwrite-storage-texture'
+ },
+ { _usageOK: false, type0: 'readonly-storage-texture', type1: 'render-target' },
{ _usageOK: false, type0: 'writeonly-storage-texture', type1: 'render-target' },
+ { _usageOK: false, type0: 'readwrite-storage-texture', type1: 'render-target' },
{ _usageOK: false, type0: 'render-target', type1: 'render-target' }]
).
@@ -428,6 +484,11 @@ fn((t) => {
_resourceSuccess
} = t.params;
+ t.skipIf(
+ t.isCompatibility,
+ 'multiple views of the same texture in a single draw/dispatch are not supported in compat, nor are sub ranges of layers'
+ );
+
const texture = t.createTexture({
arrayLayerCount: TOTAL_LAYERS,
mipLevelCount: TOTAL_LEVELS,
@@ -497,9 +558,13 @@ fn((t) => {
const bgls = [];
// Create bind groups. Set bind groups in pass directly or set bind groups in bundle.
- const storageTextureFormat0 = type0 === 'sampled-texture' ? undefined : 'rgba8unorm';
+ const storageTextureFormat0 = type0 === 'sampled-texture' ? undefined : 'r32float';
+ const sampleType0 = type0 === 'sampled-texture' ? 'unfilterable-float' : undefined;
- const bgl0 = t.createBindGroupLayout(0, type0, dimension0, { format: storageTextureFormat0 });
+ const bgl0 = t.createBindGroupLayout(0, type0, dimension0, {
+ format: storageTextureFormat0,
+ sampleType: sampleType0
+ });
const bindGroup0 = t.device.createBindGroup({
layout: bgl0,
entries: [{ binding: 0, resource: view0 }]
@@ -513,10 +578,11 @@ fn((t) => {
pass.setBindGroup(0, bindGroup0);
}
if (type1 !== 'render-target') {
- const storageTextureFormat1 = type1 === 'sampled-texture' ? undefined : 'rgba8unorm';
-
+ const storageTextureFormat1 = type1 === 'sampled-texture' ? undefined : 'r32float';
+ const sampleType1 = type1 === 'sampled-texture' ? 'unfilterable-float' : undefined;
const bgl1 = t.createBindGroupLayout(1, type1, dimension1, {
- format: storageTextureFormat1
+ format: storageTextureFormat1,
+ sampleType: sampleType1
});
const bindGroup1 = t.device.createBindGroup({
layout: bgl1,
@@ -653,6 +719,8 @@ fn((t) => {
_usageSuccess
} = t.params;
+ t.skipIf(t.isCompatibility, 'sub ranges of layers are not supported in compat mode');
+
const texture = t.createTexture({
arrayLayerCount: TOTAL_LAYERS,
mipLevelCount: TOTAL_LEVELS,
@@ -781,10 +849,22 @@ GPUConst.ShaderStage.VERTEX,
GPUConst.ShaderStage.FRAGMENT,
GPUConst.ShaderStage.COMPUTE]
).
-combine('writeVisibility', [0, GPUConst.ShaderStage.FRAGMENT, GPUConst.ShaderStage.COMPUTE])
+combine('writeVisibility', [0, GPUConst.ShaderStage.FRAGMENT, GPUConst.ShaderStage.COMPUTE]).
+combine('readEntry', [
+{ texture: { sampleType: 'unfilterable-float' } },
+{ storageTexture: { access: 'read-only', format: 'r32float' } }]
+).
+combine('storageWriteAccess', ['write-only', 'read-write'])
).
fn((t) => {
- const { compute, readVisibility, writeVisibility, secondUseConflicts } = t.params;
+ const {
+ compute,
+ readEntry,
+ storageWriteAccess,
+ readVisibility,
+ writeVisibility,
+ secondUseConflicts
+ } = t.params;
const usage = GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING;
const view = t.createTexture({ usage }).createView();
@@ -792,11 +872,11 @@ fn((t) => {
const bgl = t.device.createBindGroupLayout({
entries: [
- { binding: 0, visibility: readVisibility, texture: {} },
+ { binding: 0, visibility: readVisibility, ...readEntry },
{
binding: 1,
visibility: writeVisibility,
- storageTexture: { access: 'write-only', format: 'rgba8unorm' }
+ storageTexture: { access: storageWriteAccess, format: 'r32float' }
}]
});
@@ -850,20 +930,24 @@ combine('readVisibility', [
GPUConst.ShaderStage.VERTEX,
GPUConst.ShaderStage.FRAGMENT,
GPUConst.ShaderStage.COMPUTE]
+).
+combine('readEntry', [
+{ texture: { sampleType: 'unfilterable-float' } },
+{ storageTexture: { access: 'read-only', format: 'r32float' } }]
)
).
fn((t) => {
- const { readVisibility, secondUseConflicts } = t.params;
+ const { readVisibility, readEntry, secondUseConflicts } = t.params;
- // writeonly-storage-texture binding type is not supported in vertex stage. So, this test
- // uses writeonly-storage-texture binding as writable binding upon the same subresource if
- // vertex stage is not included. Otherwise, it uses output attachment instead.
- const usage = GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.RENDER_ATTACHMENT;
+ const usage =
+ GPUTextureUsage.TEXTURE_BINDING |
+ GPUTextureUsage.RENDER_ATTACHMENT |
+ GPUTextureUsage.STORAGE_BINDING;
const view = t.createTexture({ usage }).createView();
const view2 = secondUseConflicts ? view : t.createTexture({ usage }).createView();
const bgl = t.device.createBindGroupLayout({
- entries: [{ binding: 0, visibility: readVisibility, texture: {} }]
+ entries: [{ binding: 0, visibility: readVisibility, ...readEntry }]
});
const bindGroup = t.device.createBindGroup({
layout: bgl,
@@ -898,8 +982,10 @@ u.
combine('compute', [false, true]).
combine('callDrawOrDispatch', [false, true]).
combine('entry', [
-{ texture: {} },
-{ storageTexture: { access: 'write-only', format: 'rgba8unorm' } }]
+{ texture: { sampleType: 'unfilterable-float' } },
+{ storageTexture: { access: 'read-only', format: 'r32float' } },
+{ storageTexture: { access: 'write-only', format: 'r32float' } },
+{ storageTexture: { access: 'read-write', format: 'r32float' } }]
)
).
fn((t) => {
@@ -912,7 +998,11 @@ fn((t) => {
// Create bindGroup0. It has two bindings. These two bindings use different views/subresources.
const bglEntries0 = [
- { binding: 0, visibility: GPUShaderStage.FRAGMENT, texture: {} },
+ {
+ binding: 0,
+ visibility: GPUShaderStage.FRAGMENT,
+ texture: { sampleType: 'unfilterable-float' }
+ },
{
binding: 1,
visibility: GPUShaderStage.FRAGMENT,
@@ -930,7 +1020,9 @@ fn((t) => {
// Create bindGroup1. It has one binding, which use the same view/subresource of a binding in
// bindGroup0. So it may or may not conflicts with that binding in bindGroup0.
- const bindGroup1 = t.createBindGroup(0, sampledStorageView, 'sampled-texture', '2d', undefined);
+ const bindGroup1 = t.createBindGroup(0, sampledStorageView, 'sampled-texture', '2d', {
+ sampleType: 'unfilterable-float'
+ });
const encoder = t.device.createCommandEncoder();
const pass = compute ?
@@ -941,7 +1033,9 @@ fn((t) => {
// But bindings in bindGroup0 should be validated too.
pass.setBindGroup(0, bindGroup0);
if (callDrawOrDispatch) {
- const pipeline = compute ? t.createNoOpComputePipeline() : t.createNoOpRenderPipeline();
+ const pipeline = compute ?
+ t.createNoOpComputePipeline() :
+ t.createNoOpRenderPipeline('auto', 'r32float');
t.setPipeline(pass, pipeline);
t.issueDrawOrDispatch(pass);
}
@@ -951,7 +1045,9 @@ fn((t) => {
// MAINTENANCE_TODO: If the Compatible Usage List
// (https://gpuweb.github.io/gpuweb/#compatible-usage-list) gets programmatically defined in
// capability_info, use it here, instead of this logic, for clarity.
- let success = entry.storageTexture?.access !== 'write-only';
+ let success =
+ entry.storageTexture?.access !== 'write-only' &&
+ entry.storageTexture?.access !== 'read-write';
// Replaced bindings should not be validated in compute pass, because validation only occurs
// inside dispatchWorkgroups() which only looks at the current resource usages.
success ||= compute;
@@ -981,7 +1077,9 @@ expandWithParams(function* ({ type0, type1 }) {
case 'multisampled-texture':
case 'sampled-texture':
return 'TEXTURE_BINDING';
+ case 'readonly-storage-texture':
case 'writeonly-storage-texture':
+ case 'readwrite-storage-texture':
return 'STORAGE_BINDING';
case 'render-target':
return 'RENDER_ATTACHMENT';
@@ -1033,17 +1131,17 @@ fn((t) => {
const bindGroups = [];
if (type0 !== 'render-target') {
- const binding0TexFormat = type0 === 'sampled-texture' ? undefined : 'rgba8unorm';
+ const binding0TexFormat = type0 === 'sampled-texture' ? undefined : 'r32float';
bindGroups[0] = t.createBindGroup(0, view, type0, '2d', {
format: binding0TexFormat,
- sampleType: _sampleCount && 'unfilterable-float'
+ sampleType: 'unfilterable-float'
});
}
if (type1 !== 'render-target') {
- const binding1TexFormat = type1 === 'sampled-texture' ? undefined : 'rgba8unorm';
+ const binding1TexFormat = type1 === 'sampled-texture' ? undefined : 'r32float';
bindGroups[1] = t.createBindGroup(1, view, type1, '2d', {
format: binding1TexFormat,
- sampleType: _sampleCount && 'unfilterable-float'
+ sampleType: 'unfilterable-float'
});
}
@@ -1062,7 +1160,7 @@ fn((t) => {
// 'render-target').
if (bindingsInBundle[i]) {
const bundleEncoder = t.device.createRenderBundleEncoder({
- colorFormats: ['rgba8unorm']
+ colorFormats: ['r32float']
});
bundleEncoder.setBindGroup(i, bindGroups[i]);
const bundleInPass = bundleEncoder.finish();
@@ -1078,6 +1176,7 @@ fn((t) => {
switch (t) {
case 'sampled-texture':
case 'multisampled-texture':
+ case 'readonly-storage-texture':
return true;
default:
return false;
@@ -1089,7 +1188,8 @@ fn((t) => {
success = true;
}
- if (type0 === 'writeonly-storage-texture' && type1 === 'writeonly-storage-texture') {
+ // Writable storage textures (write-only and read-write storage textures) cannot be aliased.
+ if (type0 === type1) {
success = true;
}
@@ -1110,6 +1210,8 @@ desc(
params((u) =>
u.
combine('compute', [false, true]).
+combine('readOnlyUsage', ['sampled-texture', 'readonly-storage-texture']).
+combine('writableUsage', ['writeonly-storage-texture', 'readwrite-storage-texture']).
combine('useBindGroup0', [false, true]).
combine('useBindGroup1', [false, true]).
combine('setBindGroupsOrder', ['common', 'reversed']).
@@ -1119,41 +1221,49 @@ combine('callDrawOrDispatch', [false, true])
fn((t) => {
const {
compute,
+ readOnlyUsage,
+ writableUsage,
useBindGroup0,
useBindGroup1,
setBindGroupsOrder,
setPipeline,
callDrawOrDispatch
} = t.params;
+ if (writableUsage === 'readwrite-storage-texture') {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
const view = t.
createTexture({ usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING }).
createView();
- const bindGroup0 = t.createBindGroup(0, view, 'sampled-texture', '2d', {
- format: 'rgba8unorm'
+ const bindGroup0 = t.createBindGroup(0, view, readOnlyUsage, '2d', {
+ sampleType: 'unfilterable-float',
+ format: 'r32float'
});
- const bindGroup1 = t.createBindGroup(0, view, 'writeonly-storage-texture', '2d', {
- format: 'rgba8unorm'
+ const bindGroup1 = t.createBindGroup(0, view, writableUsage, '2d', {
+ format: 'r32float'
});
+ const writeAccess = writableUsage === 'writeonly-storage-texture' ? 'write' : 'read_write';
const wgslVertex = `@vertex fn main() -> @builtin(position) vec4<f32> {
return vec4<f32>();
}`;
const wgslFragment = pp`
${pp._if(useBindGroup0)}
- @group(0) @binding(0) var image0 : texture_storage_2d<rgba8unorm, write>;
+ @group(0) @binding(0) var image0 : texture_storage_2d<r32float, ${writeAccess}>;
${pp._endif}
${pp._if(useBindGroup1)}
- @group(1) @binding(0) var image1 : texture_storage_2d<rgba8unorm, write>;
+ @group(1) @binding(0) var image1 : texture_storage_2d<r32float, ${writeAccess}>;
${pp._endif}
@fragment fn main() {}
`;
const wgslCompute = pp`
${pp._if(useBindGroup0)}
- @group(0) @binding(0) var image0 : texture_storage_2d<rgba8unorm, write>;
+ @group(0) @binding(0) var image0 : texture_storage_2d<r32float, ${writeAccess}>;
${pp._endif}
${pp._if(useBindGroup1)}
- @group(1) @binding(0) var image1 : texture_storage_2d<rgba8unorm, write>;
+ @group(1) @binding(0) var image1 : texture_storage_2d<r32float, ${writeAccess}>;
${pp._endif}
@compute @workgroup_size(1) fn main() {}
`;
@@ -1181,7 +1291,7 @@ fn((t) => {
code: wgslFragment
}),
entryPoint: 'main',
- targets: [{ format: 'rgba8unorm', writeMask: 0 }]
+ targets: [{ format: 'r32float', writeMask: 0 }]
},
primitive: { topology: 'triangle-list' }
});
@@ -1237,14 +1347,28 @@ desc(
params((u) =>
u.
combine('dispatch', ['none', 'direct', 'indirect']).
+expandWithParams(
+ (p) =>
+ [
+ { usage1: 'sampled-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'sampled-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'writeonly-storage-texture', usage2: 'readwrite-storage-texture' }]
+
+).
beginSubcases().
expand('setBindGroup0', (p) => p.dispatch ? [true] : [false, true]).
expand('setBindGroup1', (p) => p.dispatch ? [true] : [false, true])
).
fn((t) => {
- const { dispatch, setBindGroup0, setBindGroup1 } = t.params;
+ const { dispatch, usage1, usage2, setBindGroup0, setBindGroup1 } = t.params;
- const { bindGroup0, bindGroup1, encoder, pass, pipeline } = t.testValidationScope(true);
+ const { bindGroup0, bindGroup1, encoder, pass, pipeline } = t.testValidationScope(
+ true,
+ usage1,
+ usage2
+ );
assert(pass instanceof GPUComputePassEncoder);
t.setPipeline(pass, pipeline);
@@ -1283,12 +1407,22 @@ desc(
paramsSubcasesOnly((u) =>
u //
.combine('setBindGroup0', [false, true]).
-combine('setBindGroup1', [false, true])
+combine('setBindGroup1', [false, true]).
+expandWithParams(
+ (p) =>
+ [
+ { usage1: 'sampled-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'sampled-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'writeonly-storage-texture', usage2: 'readwrite-storage-texture' }]
+
+)
).
fn((t) => {
- const { setBindGroup0, setBindGroup1 } = t.params;
+ const { setBindGroup0, setBindGroup1, usage1, usage2 } = t.params;
- const { bindGroup0, bindGroup1, encoder, pass } = t.testValidationScope(false);
+ const { bindGroup0, bindGroup1, encoder, pass } = t.testValidationScope(false, usage1, usage2);
assert(pass instanceof GPURenderPassEncoder);
if (setBindGroup0) pass.setBindGroup(0, bindGroup0);
@@ -1308,11 +1442,22 @@ desc(
boundary in between. This should always be valid.
`
).
-paramsSubcasesOnly((u) => u.combine('splitPass', [false, true])).
+paramsSubcasesOnly((u) =>
+u.combine('splitPass', [false, true]).expandWithParams(
+ (p) =>
+ [
+ { usage1: 'sampled-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'sampled-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'writeonly-storage-texture', usage2: 'readwrite-storage-texture' }]
+
+)
+).
fn((t) => {
- const { splitPass } = t.params;
+ const { splitPass, usage1, usage2 } = t.params;
- const { bindGroupLayouts, bindGroups } = t.makeConflictingBindGroups();
+ const { bindGroupLayouts, bindGroups } = t.makeTwoBindGroupsWithOneTextureView(usage1, usage2);
const encoder = t.device.createCommandEncoder();
@@ -1354,24 +1499,36 @@ desc(
paramsSubcasesOnly((u) =>
u //
.combine('splitPass', [false, true]).
-combine('draw', [false, true])
+combine('draw', [false, true]).
+expandWithParams(
+ (p) =>
+ [
+ { usage1: 'sampled-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'sampled-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'writeonly-storage-texture' },
+ { usage1: 'readonly-storage-texture', usage2: 'readwrite-storage-texture' },
+ { usage1: 'writeonly-storage-texture', usage2: 'readwrite-storage-texture' }]
+
+)
).
fn((t) => {
- const { splitPass, draw } = t.params;
+ const { splitPass, draw, usage1, usage2 } = t.params;
- const { bindGroupLayouts, bindGroups } = t.makeConflictingBindGroups();
+ const { bindGroupLayouts, bindGroups } = t.makeTwoBindGroupsWithOneTextureView(usage1, usage2);
const encoder = t.device.createCommandEncoder();
const pipelineUsingBG0 = t.createNoOpRenderPipeline(
t.device.createPipelineLayout({
bindGroupLayouts: [bindGroupLayouts[0]]
- })
+ }),
+ 'r32float'
);
const pipelineUsingBG1 = t.createNoOpRenderPipeline(
t.device.createPipelineLayout({
bindGroupLayouts: [bindGroupLayouts[1]]
- })
+ }),
+ 'r32float'
);
const attachment = t.createTexture().createView();
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_common.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_common.spec.js
index 2a5a002327..5ba4ecfcf7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_common.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_common.spec.js
@@ -6,6 +6,21 @@ Texture Usages Validation Tests in Same or Different Render Pass Encoders.
import { assert, unreachable } from '../../../../../common/util/util.js';
import { ValidationTest } from '../../validation_test.js';
+
+
+
+
+
+export const kTextureBindingTypes = [
+'sampled-texture',
+'writeonly-storage-texture',
+'readonly-storage-texture',
+'readwrite-storage-texture'];
+
+export function IsReadOnlyTextureBindingType(t) {
+ return t === 'sampled-texture' || t === 'readonly-storage-texture';
+}
+
class F extends ValidationTest {
getColorAttachment(
texture,
@@ -31,13 +46,27 @@ class F extends ValidationTest {
visibility: GPUShaderStage.FRAGMENT
};
switch (textureUsage) {
- case 'texture':
+ case 'sampled-texture':
bindGroupLayoutEntry.texture = { viewDimension: '2d-array', sampleType };
break;
- case 'storage':
+ case 'readonly-storage-texture':
+ bindGroupLayoutEntry.storageTexture = {
+ access: 'read-only',
+ format: 'r32float',
+ viewDimension: '2d-array'
+ };
+ break;
+ case 'readwrite-storage-texture':
+ bindGroupLayoutEntry.storageTexture = {
+ access: 'read-write',
+ format: 'r32float',
+ viewDimension: '2d-array'
+ };
+ break;
+ case 'writeonly-storage-texture':
bindGroupLayoutEntry.storageTexture = {
access: 'write-only',
- format: 'rgba8unorm',
+ format: 'r32float',
viewDimension: '2d-array'
};
break;
@@ -89,7 +118,7 @@ fn((t) => {
const { layer0, level0, layer1, level1, inSamePass } = t.params;
const texture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, kTextureLayers],
mipLevelCount: kTextureLevels
@@ -152,8 +181,8 @@ combineWithParams([
{ bgLayer: 1, bgLayerCount: 1 },
{ bgLayer: 1, bgLayerCount: 2 }]
).
-combine('bgUsage', ['texture', 'storage']).
-unless((t) => t.bgUsage === 'storage' && t.bgLevelCount > 1).
+combine('bgUsage', kTextureBindingTypes).
+unless((t) => t.bgUsage !== 'sampled-texture' && t.bgLevelCount > 1).
combine('inSamePass', [true, false])
).
fn((t) => {
@@ -169,7 +198,7 @@ fn((t) => {
} = t.params;
const texture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage:
GPUTextureUsage.RENDER_ATTACHMENT |
GPUTextureUsage.TEXTURE_BINDING |
@@ -184,7 +213,7 @@ fn((t) => {
baseMipLevel: bgLevel,
mipLevelCount: bgLevelCount
});
- const bindGroup = t.createBindGroupForTest(bindGroupView, bgUsage, 'float');
+ const bindGroup = t.createBindGroupForTest(bindGroupView, bgUsage, 'unfilterable-float');
const colorAttachment = t.getColorAttachment(texture, {
dimension: '2d',
@@ -205,7 +234,7 @@ fn((t) => {
renderPass.end();
const texture2 = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, 1],
mipLevelCount: 1
@@ -261,7 +290,8 @@ combineWithParams([
{ bgLayer: 1, bgLayerCount: 2 }]
).
beginSubcases().
-combine('dsReadOnly', [true, false]).
+combine('depthReadOnly', [true, false]).
+combine('stencilReadOnly', [true, false]).
combine('bgAspect', ['depth-only', 'stencil-only']).
combine('inSamePass', [true, false])
).
@@ -273,7 +303,8 @@ fn((t) => {
bgLevelCount,
bgLayer,
bgLayerCount,
- dsReadOnly,
+ depthReadOnly,
+ stencilReadOnly,
bgAspect,
inSamePass
} = t.params;
@@ -293,7 +324,7 @@ fn((t) => {
aspect: bgAspect
});
const sampleType = bgAspect === 'depth-only' ? 'depth' : 'uint';
- const bindGroup = t.createBindGroupForTest(bindGroupView, 'texture', sampleType);
+ const bindGroup = t.createBindGroupForTest(bindGroupView, 'sampled-texture', sampleType);
const attachmentView = texture.createView({
dimension: '2d',
@@ -304,12 +335,12 @@ fn((t) => {
});
const depthStencilAttachment = {
view: attachmentView,
- depthReadOnly: dsReadOnly,
- depthLoadOp: dsReadOnly ? undefined : 'load',
- depthStoreOp: dsReadOnly ? undefined : 'store',
- stencilReadOnly: dsReadOnly,
- stencilLoadOp: dsReadOnly ? undefined : 'load',
- stencilStoreOp: dsReadOnly ? undefined : 'store'
+ depthReadOnly,
+ depthLoadOp: depthReadOnly ? undefined : 'load',
+ depthStoreOp: depthReadOnly ? undefined : 'store',
+ stencilReadOnly,
+ stencilLoadOp: stencilReadOnly ? undefined : 'load',
+ stencilStoreOp: stencilReadOnly ? undefined : 'store'
};
const encoder = t.device.createCommandEncoder();
@@ -350,8 +381,11 @@ fn((t) => {
bgLayer + bgLayerCount - 1
);
const isNotOverlapped = isMipLevelNotOverlapped || isArrayLayerNotOverlapped;
+ const readonly =
+ bgAspect === 'stencil-only' && stencilReadOnly ||
+ bgAspect === 'depth-only' && depthReadOnly;
- const success = !inSamePass || isNotOverlapped || dsReadOnly;
+ const success = !inSamePass || isNotOverlapped || readonly;
t.expectValidationError(() => {
encoder.finish();
}, !success);
@@ -388,20 +422,21 @@ combine('bg1Layers', [
{ base: 1, count: 1 },
{ base: 1, count: 2 }]
).
-combine('bgUsage0', ['texture', 'storage']).
-combine('bgUsage1', ['texture', 'storage']).
+combine('bgUsage0', kTextureBindingTypes).
+combine('bgUsage1', kTextureBindingTypes).
unless(
(t) =>
- t.bgUsage0 === 'storage' && t.bg0Levels.count > 1 ||
- t.bgUsage1 === 'storage' && t.bg1Levels.count > 1
+ t.bgUsage0 !== 'sampled-texture' && t.bg0Levels.count > 1 ||
+ t.bgUsage1 !== 'sampled-texture' && t.bg1Levels.count > 1
).
+beginSubcases().
combine('inSamePass', [true, false])
).
fn((t) => {
const { bg0Levels, bg0Layers, bg1Levels, bg1Layers, bgUsage0, bgUsage1, inSamePass } = t.params;
const texture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.STORAGE_BINDING | GPUTextureUsage.TEXTURE_BINDING,
size: [kTextureSize, kTextureSize, kTextureLayers],
mipLevelCount: kTextureLevels
@@ -420,11 +455,11 @@ fn((t) => {
baseMipLevel: bg1Levels.base,
mipLevelCount: bg1Levels.count
});
- const bindGroup0 = t.createBindGroupForTest(bg0, bgUsage0, 'float');
- const bindGroup1 = t.createBindGroupForTest(bg1, bgUsage1, 'float');
+ const bindGroup0 = t.createBindGroupForTest(bg0, bgUsage0, 'unfilterable-float');
+ const bindGroup1 = t.createBindGroupForTest(bg1, bgUsage1, 'unfilterable-float');
const colorTexture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, 1],
mipLevelCount: 1
@@ -449,6 +484,8 @@ fn((t) => {
renderPass2.end();
}
+ const bothReadOnly =
+ IsReadOnlyTextureBindingType(bgUsage0) && IsReadOnlyTextureBindingType(bgUsage1);
const isMipLevelNotOverlapped = t.isRangeNotOverlapped(
bg0Levels.base,
bg0Levels.base + bg0Levels.count - 1,
@@ -463,7 +500,7 @@ fn((t) => {
);
const isNotOverlapped = isMipLevelNotOverlapped || isArrayLayerNotOverlapped;
- const success = !inSamePass || isNotOverlapped || bgUsage0 === bgUsage1;
+ const success = !inSamePass || bothReadOnly || isNotOverlapped || bgUsage0 === bgUsage1;
t.expectValidationError(() => {
encoder.finish();
}, !success);
@@ -531,8 +568,8 @@ fn((t) => {
const sampleType0 = aspect0 === 'depth-only' ? 'depth' : 'uint';
const sampleType1 = aspect1 === 'depth-only' ? 'depth' : 'uint';
- const bindGroup0 = t.createBindGroupForTest(bindGroupView0, 'texture', sampleType0);
- const bindGroup1 = t.createBindGroupForTest(bindGroupView1, 'texture', sampleType1);
+ const bindGroup0 = t.createBindGroupForTest(bindGroupView0, 'sampled-texture', sampleType0);
+ const bindGroup1 = t.createBindGroupForTest(bindGroupView1, 'sampled-texture', sampleType1);
const colorTexture = t.device.createTexture({
format: 'rgba8unorm',
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_misc.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_misc.spec.js
index 1cab1548ea..0b7733c9d6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_misc.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/resource_usages/texture/in_render_misc.spec.js
@@ -5,6 +5,11 @@ Texture Usages Validation Tests on All Kinds of WebGPU Subresource Usage Scopes.
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { unreachable } from '../../../../../common/util/util.js';
import { ValidationTest } from '../../validation_test.js';
+import {
+
+ kTextureBindingTypes,
+ IsReadOnlyTextureBindingType } from
+'../texture/in_render_common.spec.js';
class F extends ValidationTest {
createBindGroupLayoutForTest(
@@ -18,13 +23,27 @@ class F extends ValidationTest {
};
switch (textureUsage) {
- case 'texture':
+ case 'sampled-texture':
bindGroupLayoutEntry.texture = { viewDimension: '2d-array', sampleType };
break;
- case 'storage':
+ case 'readonly-storage-texture':
+ bindGroupLayoutEntry.storageTexture = {
+ access: 'read-only',
+ format: 'r32float',
+ viewDimension: '2d-array'
+ };
+ break;
+ case 'writeonly-storage-texture':
bindGroupLayoutEntry.storageTexture = {
access: 'write-only',
- format: 'rgba8unorm',
+ format: 'r32float',
+ viewDimension: '2d-array'
+ };
+ break;
+ case 'readwrite-storage-texture':
+ bindGroupLayoutEntry.storageTexture = {
+ access: 'read-write',
+ format: 'r32float',
viewDimension: '2d-array'
};
break;
@@ -64,20 +83,16 @@ desc(
).
params((u) =>
u.
-combineWithParams([
-{ useDifferentTextureAsTexture2: true, baseLayer2: 0, view2Binding: 'texture' },
-{ useDifferentTextureAsTexture2: false, baseLayer2: 0, view2Binding: 'texture' },
-{ useDifferentTextureAsTexture2: false, baseLayer2: 1, view2Binding: 'texture' },
-{ useDifferentTextureAsTexture2: false, baseLayer2: 0, view2Binding: 'storage' },
-{ useDifferentTextureAsTexture2: false, baseLayer2: 1, view2Binding: 'storage' }]
-).
-combine('hasConflict', [true, false])
+combine('useDifferentTextureAsTexture2', [true, false]).
+combine('baseLayer2', [0, 1]).
+combine('view1Binding', kTextureBindingTypes).
+combine('view2Binding', kTextureBindingTypes)
).
fn((t) => {
- const { useDifferentTextureAsTexture2, baseLayer2, view2Binding, hasConflict } = t.params;
+ const { useDifferentTextureAsTexture2, baseLayer2, view1Binding, view2Binding } = t.params;
const texture0 = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING,
size: [kTextureSize, kTextureSize, kTextureLayers]
});
@@ -87,19 +102,12 @@ fn((t) => {
baseArrayLayer: 0,
arrayLayerCount: 1
});
- const bindGroup0 = t.createBindGroupForTest(textureView0, view2Binding, 'float');
-
- // In one renderPassEncoder it is an error to set both bindGroup0 and bindGroup1.
- const view1Binding = hasConflict ?
- view2Binding === 'texture' ?
- 'storage' :
- 'texture' :
- view2Binding;
- const bindGroup1 = t.createBindGroupForTest(textureView0, view1Binding, 'float');
+ const bindGroup0 = t.createBindGroupForTest(textureView0, view1Binding, 'unfilterable-float');
+ const bindGroup1 = t.createBindGroupForTest(textureView0, view2Binding, 'unfilterable-float');
const texture2 = useDifferentTextureAsTexture2 ?
t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING,
size: [kTextureSize, kTextureSize, kTextureLayers]
}) :
@@ -110,10 +118,14 @@ fn((t) => {
arrayLayerCount: kTextureLayers - baseLayer2
});
// There should be no conflict between bindGroup0 and validBindGroup2.
- const validBindGroup2 = t.createBindGroupForTest(textureView2, view2Binding, 'float');
+ const validBindGroup2 = t.createBindGroupForTest(
+ textureView2,
+ view2Binding,
+ 'unfilterable-float'
+ );
- const colorTexture = t.device.createTexture({
- format: 'rgba8unorm',
+ const unusedColorTexture = t.device.createTexture({
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, 1]
});
@@ -121,7 +133,7 @@ fn((t) => {
const renderPassEncoder = encoder.beginRenderPass({
colorAttachments: [
{
- view: colorTexture.createView(),
+ view: unusedColorTexture.createView(),
loadOp: 'load',
storeOp: 'store'
}]
@@ -132,9 +144,12 @@ fn((t) => {
renderPassEncoder.setBindGroup(1, validBindGroup2);
renderPassEncoder.end();
+ const noConflict =
+ IsReadOnlyTextureBindingType(view1Binding) && IsReadOnlyTextureBindingType(view2Binding) ||
+ view1Binding === view2Binding;
t.expectValidationError(() => {
encoder.finish();
- }, hasConflict);
+ }, !noConflict);
});
g.test('subresources,set_bind_group_on_same_index_depth_stencil_texture').
@@ -154,7 +169,10 @@ fn((t) => {
const depthStencilTexture = t.device.createTexture({
format: 'depth24plus-stencil8',
usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.RENDER_ATTACHMENT,
- size: [kTextureSize, kTextureSize, 1]
+ size: [kTextureSize, kTextureSize, 1],
+ ...(t.isCompatibility && {
+ textureBindingViewDimension: '2d-array'
+ })
});
const conflictedToNonReadOnlyAttachmentBindGroup = t.createBindGroupForTest(
@@ -162,21 +180,24 @@ fn((t) => {
dimension: '2d-array',
aspect: bindAspect
}),
- 'texture',
+ 'sampled-texture',
bindAspect === 'depth-only' ? 'depth' : 'uint'
);
const colorTexture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING,
- size: [kTextureSize, kTextureSize, 1]
+ size: [kTextureSize, kTextureSize, 1],
+ ...(t.isCompatibility && {
+ textureBindingViewDimension: '2d-array'
+ })
});
const validBindGroup = t.createBindGroupForTest(
colorTexture.createView({
dimension: '2d-array'
}),
- 'texture',
- 'float'
+ 'sampled-texture',
+ 'unfilterable-float'
);
const encoder = t.device.createCommandEncoder();
@@ -204,12 +225,24 @@ desc(
used in the same render or compute pass encoder, its list of internal usages within one usage
scope can only be a compatible usage list.`
).
-params((u) => u.combine('inRenderPass', [true, false]).combine('hasConflict', [true, false])).
+params((u) =>
+u.
+combine('inRenderPass', [true, false]).
+combine('textureUsage0', kTextureBindingTypes).
+combine('textureUsage1', kTextureBindingTypes)
+).
fn((t) => {
- const { inRenderPass, hasConflict } = t.params;
+ const { inRenderPass, textureUsage0, textureUsage1 } = t.params;
+
+ if (
+ textureUsage0 === 'readwrite-storage-texture' ||
+ textureUsage1 === 'readwrite-storage-texture')
+ {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
const texture0 = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING,
size: [kTextureSize, kTextureSize, kTextureLayers]
});
@@ -221,40 +254,85 @@ fn((t) => {
});
const visibility = inRenderPass ? GPUShaderStage.FRAGMENT : GPUShaderStage.COMPUTE;
// bindGroup0 is used by the pipelines, and bindGroup1 is not used by the pipelines.
- const textureUsage0 = inRenderPass ? 'texture' : 'storage';
- const textureUsage1 = hasConflict ? inRenderPass ? 'storage' : 'texture' : textureUsage0;
- const bindGroup0 = t.createBindGroupForTest(textureView0, textureUsage0, 'float', visibility);
- const bindGroup1 = t.createBindGroupForTest(textureView0, textureUsage1, 'float', visibility);
+ const bindGroup0 = t.createBindGroupForTest(
+ textureView0,
+ textureUsage0,
+ 'unfilterable-float',
+ visibility
+ );
+ const bindGroup1 = t.createBindGroupForTest(
+ textureView0,
+ textureUsage1,
+ 'unfilterable-float',
+ visibility
+ );
const encoder = t.device.createCommandEncoder();
const colorTexture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, 1]
});
- const pipelineLayout = t.device.createPipelineLayout({
- bindGroupLayouts: [t.createBindGroupLayoutForTest(textureUsage0, 'float', visibility)]
- });
if (inRenderPass) {
+ let fragmentShader = '';
+ switch (textureUsage0) {
+ case 'sampled-texture':
+ fragmentShader = `
+ @group(0) @binding(0) var texture0 : texture_2d_array<f32>;
+ @fragment fn main()
+ -> @location(0) vec4<f32> {
+ return textureLoad(texture0, vec2<i32>(), 0, 0);
+ }
+ `;
+ break;
+ case `readonly-storage-texture`:
+ fragmentShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, read>;
+ @fragment fn main()
+ -> @location(0) vec4<f32> {
+ return textureLoad(texture0, vec2<i32>(), 0);
+ }
+ `;
+ break;
+ case `writeonly-storage-texture`:
+ fragmentShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, write>;
+ @fragment fn main()
+ -> @location(0) vec4<f32> {
+ textureStore(texture0, vec2i(), 0, vec4f(1, 0, 0, 1));
+ return vec4f(0, 0, 0, 1);
+ }
+ `;
+ break;
+ case `readwrite-storage-texture`:
+ fragmentShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, read_write>;
+ @fragment fn main()
+ -> @location(0) vec4<f32> {
+ let color = textureLoad(texture0, vec2i(), 0);
+ textureStore(texture0, vec2i(), 0, vec4f(1, 0, 0, 1));
+ return color;
+ }
+ `;
+ break;
+ }
+
const renderPipeline = t.device.createRenderPipeline({
- layout: pipelineLayout,
+ layout: t.device.createPipelineLayout({
+ bindGroupLayouts: [
+ t.createBindGroupLayoutForTest(textureUsage0, 'unfilterable-float', visibility)]
+
+ }),
vertex: {
module: t.device.createShaderModule({
code: t.getNoOpShaderCode('VERTEX')
- }),
- entryPoint: 'main'
+ })
},
fragment: {
module: t.device.createShaderModule({
- code: `
- @group(0) @binding(0) var texture0 : texture_2d_array<f32>;
- @fragment fn main()
- -> @location(0) vec4<f32> {
- return textureLoad(texture0, vec2<i32>(), 0, 0);
- }`
+ code: fragmentShader
}),
- entryPoint: 'main',
- targets: [{ format: 'rgba8unorm' }]
+ targets: [{ format: 'r32float' }]
}
});
@@ -273,29 +351,97 @@ fn((t) => {
renderPassEncoder.draw(1);
renderPassEncoder.end();
} else {
+ let computeShader = '';
+ switch (textureUsage0) {
+ case 'sampled-texture':
+ computeShader = `
+ @group(0) @binding(0) var texture0 : texture_2d_array<f32>;
+ @group(1) @binding(0) var writableStorage : texture_storage_2d_array<r32float, write>;
+ @compute @workgroup_size(1) fn main() {
+ let value = textureLoad(texture0, vec2i(), 0, 0);
+ textureStore(writableStorage, vec2i(), 0, value);
+ }
+ `;
+ break;
+ case `readonly-storage-texture`:
+ computeShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, read>;
+ @group(1) @binding(0) var writableStorage : texture_storage_2d_array<r32float, write>;
+ @compute @workgroup_size(1) fn main() {
+ let value = textureLoad(texture0, vec2<i32>(), 0);
+ textureStore(writableStorage, vec2i(), 0, value);
+ }
+ `;
+ break;
+ case `writeonly-storage-texture`:
+ computeShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, write>;
+ @group(1) @binding(0) var writableStorage : texture_storage_2d_array<r32float, write>;
+ @compute @workgroup_size(1) fn main() {
+ textureStore(texture0, vec2i(), 0, vec4f(1, 0, 0, 1));
+ textureStore(writableStorage, vec2i(), 0, vec4f(1, 0, 0, 1));
+ }
+ `;
+ break;
+ case `readwrite-storage-texture`:
+ computeShader = `
+ @group(0) @binding(0) var texture0 : texture_storage_2d_array<r32float, read_write>;
+ @group(1) @binding(0) var writableStorage : texture_storage_2d_array<r32float, write>;
+ @compute @workgroup_size(1) fn main() {
+ let color = textureLoad(texture0, vec2i(), 0);
+ textureStore(texture0, vec2i(), 0, vec4f(1, 0, 0, 1));
+ textureStore(writableStorage, vec2i(), 0, color);
+ }
+ `;
+ break;
+ }
+
+ const pipelineLayout = t.device.createPipelineLayout({
+ bindGroupLayouts: [
+ t.createBindGroupLayoutForTest(textureUsage0, 'unfilterable-float', visibility),
+ t.createBindGroupLayoutForTest(
+ 'writeonly-storage-texture',
+ 'unfilterable-float',
+ visibility
+ )]
+
+ });
const computePipeline = t.device.createComputePipeline({
layout: pipelineLayout,
compute: {
module: t.device.createShaderModule({
- code: `
- @group(0) @binding(0) var texture0 : texture_storage_2d_array<rgba8unorm, write>;
- @compute @workgroup_size(1)
- fn main() {
- textureStore(texture0, vec2<i32>(), 0, vec4<f32>());
- }`
- }),
- entryPoint: 'main'
+ code: computeShader
+ })
}
});
+
+ const writableStorageTexture = t.device.createTexture({
+ format: 'r32float',
+ usage: GPUTextureUsage.STORAGE_BINDING,
+ size: [kTextureSize, kTextureSize, 1]
+ });
+ const writableStorageTextureView = writableStorageTexture.createView({
+ dimension: '2d-array',
+ baseArrayLayer: 0,
+ arrayLayerCount: 1
+ });
+ const writableStorageTextureBindGroup = t.createBindGroupForTest(
+ writableStorageTextureView,
+ 'writeonly-storage-texture',
+ 'unfilterable-float',
+ visibility
+ );
+
const computePassEncoder = encoder.beginComputePass();
computePassEncoder.setBindGroup(0, bindGroup0);
- computePassEncoder.setBindGroup(1, bindGroup1);
+ computePassEncoder.setBindGroup(1, writableStorageTextureBindGroup);
+ computePassEncoder.setBindGroup(2, bindGroup1);
computePassEncoder.setPipeline(computePipeline);
computePassEncoder.dispatchWorkgroups(1);
computePassEncoder.end();
}
- // In WebGPU SPEC (Chapter 3.4.5, Synchronization):
+ // In WebGPU SPEC (https://gpuweb.github.io/gpuweb/#programming-model-synchronization):
// This specification defines the following usage scopes:
// - In a compute pass, each dispatch command (dispatchWorkgroups() or
// dispatchWorkgroupsIndirect()) is one usage scope. A subresource is "used" in the usage
@@ -306,7 +452,11 @@ fn((t) => {
// referenced by any (state-setting or non-state-setting) command. For example, in
// setBindGroup(index, bindGroup, dynamicOffsets), every subresource in bindGroup is "used" in
// the render pass’s usage scope.
- const success = !inRenderPass || !hasConflict;
+ const success =
+ !inRenderPass ||
+ IsReadOnlyTextureBindingType(textureUsage0) &&
+ IsReadOnlyTextureBindingType(textureUsage1) ||
+ textureUsage0 === textureUsage1;
t.expectValidationError(() => {
encoder.finish();
}, !success);
@@ -324,16 +474,14 @@ u.
combine('usage0', [
'copy-src',
'copy-dst',
-'texture',
-'storage',
-'color-attachment']
+'color-attachment',
+...kTextureBindingTypes]
).
combine('usage1', [
'copy-src',
'copy-dst',
-'texture',
-'storage',
-'color-attachment']
+'color-attachment',
+...kTextureBindingTypes]
).
filter(
({ usage0, usage1 }) =>
@@ -347,14 +495,17 @@ fn((t) => {
const { usage0, usage1 } = t.params;
const texture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage:
GPUTextureUsage.COPY_SRC |
GPUTextureUsage.COPY_DST |
GPUTextureUsage.TEXTURE_BINDING |
GPUTextureUsage.STORAGE_BINDING |
GPUTextureUsage.RENDER_ATTACHMENT,
- size: [kTextureSize, kTextureSize, 1]
+ size: [kTextureSize, kTextureSize, 1],
+ ...(t.isCompatibility && {
+ textureBindingViewDimension: '2d-array'
+ })
});
const UseTextureOnCommandEncoder = (
@@ -386,10 +537,12 @@ fn((t) => {
renderPassEncoder.end();
break;
}
- case 'texture':
- case 'storage':{
+ case 'sampled-texture':
+ case 'readonly-storage-texture':
+ case 'writeonly-storage-texture':
+ case 'readwrite-storage-texture':{
const colorTexture = t.device.createTexture({
- format: 'rgba8unorm',
+ format: 'r32float',
usage: GPUTextureUsage.RENDER_ATTACHMENT,
size: [kTextureSize, kTextureSize, 1]
});
@@ -403,7 +556,7 @@ fn((t) => {
dimension: '2d-array'
}),
usage,
- 'float'
+ 'unfilterable-float'
);
renderPassEncoder.setBindGroup(0, bindGroup);
renderPassEncoder.end();
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/shader_module/entry_point.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/shader_module/entry_point.spec.js
index a76f5550aa..c8e7a0109d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/shader_module/entry_point.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/shader_module/entry_point.spec.js
@@ -5,6 +5,7 @@ This tests entry point validation of compute/render pipelines and their shader m
The entryPoint in shader module include standard "main" and others.
The entryPoint assigned in descriptor include:
+- Undefined with matching entry point for stage
- Matching case (control case)
- Empty string
- Mistyping
@@ -12,7 +13,6 @@ The entryPoint assigned in descriptor include:
- Unicode entrypoints and their ASCIIfied version
TODO:
-- Test unicode normalization (gpuweb/gpuweb#1160)
- Fine-tune test cases to reduce number by removing trivially similar cases
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
import { kDefaultVertexShaderCode, getShaderWithEntryPoint } from '../../../util/shader.js';
@@ -43,23 +43,52 @@ const kEntryPointTestCases = [
g.test('compute').
desc(
`
-Tests calling createComputePipeline(Async) with valid vertex stage shader and different entryPoints,
+Tests calling createComputePipeline(Async) with valid compute stage shader and different entryPoints,
and check that the APIs only accept matching entryPoint.
`
).
-params((u) => u.combine('isAsync', [true, false]).combineWithParams(kEntryPointTestCases)).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('shaderModuleStage', ['compute', 'vertex', 'fragment']).
+beginSubcases().
+combine('provideEntryPoint', [true, false]).
+combine('extraEntryPoint', [true, false]).
+combineWithParams(kEntryPointTestCases)
+).
fn((t) => {
- const { isAsync, shaderModuleEntryPoint, stageEntryPoint } = t.params;
+ const {
+ isAsync,
+ provideEntryPoint,
+ extraEntryPoint,
+ shaderModuleStage,
+ shaderModuleEntryPoint,
+ stageEntryPoint
+ } = t.params;
+ const entryPoint = provideEntryPoint ? stageEntryPoint : undefined;
+ let code = getShaderWithEntryPoint(shaderModuleStage, shaderModuleEntryPoint);
+ if (extraEntryPoint) {
+ code += ` ${getShaderWithEntryPoint(shaderModuleStage, 'extra')}`;
+ }
const descriptor = {
layout: 'auto',
compute: {
module: t.device.createShaderModule({
- code: getShaderWithEntryPoint('compute', shaderModuleEntryPoint)
+ code
}),
- entryPoint: stageEntryPoint
+ entryPoint
}
};
- const _success = shaderModuleEntryPoint === stageEntryPoint;
+ let _success = true;
+ if (shaderModuleStage !== 'compute') {
+ _success = false;
+ }
+ if (!provideEntryPoint && extraEntryPoint) {
+ _success = false;
+ }
+ if (shaderModuleEntryPoint !== stageEntryPoint && provideEntryPoint) {
+ _success = false;
+ }
t.doCreateComputePipelineTest(isAsync, _success, descriptor);
});
@@ -70,19 +99,46 @@ Tests calling createRenderPipeline(Async) with valid vertex stage shader and dif
and check that the APIs only accept matching entryPoint.
`
).
-params((u) => u.combine('isAsync', [true, false]).combineWithParams(kEntryPointTestCases)).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('shaderModuleStage', ['compute', 'vertex', 'fragment']).
+beginSubcases().
+combine('provideEntryPoint', [true, false]).
+combine('extraEntryPoint', [true, false]).
+combineWithParams(kEntryPointTestCases)
+).
fn((t) => {
- const { isAsync, shaderModuleEntryPoint, stageEntryPoint } = t.params;
+ const {
+ isAsync,
+ provideEntryPoint,
+ extraEntryPoint,
+ shaderModuleStage,
+ shaderModuleEntryPoint,
+ stageEntryPoint
+ } = t.params;
+ const entryPoint = provideEntryPoint ? stageEntryPoint : undefined;
+ let code = getShaderWithEntryPoint(shaderModuleStage, shaderModuleEntryPoint);
+ if (extraEntryPoint) {
+ code += ` ${getShaderWithEntryPoint(shaderModuleStage, 'extra')}`;
+ }
const descriptor = {
layout: 'auto',
vertex: {
- module: t.device.createShaderModule({
- code: getShaderWithEntryPoint('vertex', shaderModuleEntryPoint)
- }),
- entryPoint: stageEntryPoint
+ module: t.device.createShaderModule({ code }),
+ entryPoint
}
};
- const _success = shaderModuleEntryPoint === stageEntryPoint;
+ let _success = true;
+ if (shaderModuleStage !== 'vertex') {
+ _success = false;
+ }
+ if (!provideEntryPoint && extraEntryPoint) {
+ _success = false;
+ }
+ if (shaderModuleEntryPoint !== stageEntryPoint && provideEntryPoint) {
+ _success = false;
+ }
t.doCreateRenderPipelineTest(isAsync, _success, descriptor);
});
@@ -93,25 +149,155 @@ Tests calling createRenderPipeline(Async) with valid fragment stage shader and d
and check that the APIs only accept matching entryPoint.
`
).
-params((u) => u.combine('isAsync', [true, false]).combineWithParams(kEntryPointTestCases)).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('shaderModuleStage', ['compute', 'vertex', 'fragment']).
+beginSubcases().
+combine('provideEntryPoint', [true, false]).
+combine('extraEntryPoint', [true, false]).
+combineWithParams(kEntryPointTestCases)
+).
fn((t) => {
- const { isAsync, shaderModuleEntryPoint, stageEntryPoint } = t.params;
+ const {
+ isAsync,
+ provideEntryPoint,
+ extraEntryPoint,
+ shaderModuleStage,
+ shaderModuleEntryPoint,
+ stageEntryPoint
+ } = t.params;
+ const entryPoint = provideEntryPoint ? stageEntryPoint : undefined;
+ let code = getShaderWithEntryPoint(shaderModuleStage, shaderModuleEntryPoint);
+ if (extraEntryPoint) {
+ code += ` ${getShaderWithEntryPoint(shaderModuleStage, 'extra')}`;
+ }
const descriptor = {
layout: 'auto',
vertex: {
module: t.device.createShaderModule({
code: kDefaultVertexShaderCode
- }),
- entryPoint: 'main'
+ })
},
fragment: {
module: t.device.createShaderModule({
- code: getShaderWithEntryPoint('fragment', shaderModuleEntryPoint)
+ code
}),
- entryPoint: stageEntryPoint,
+ entryPoint,
targets: [{ format: 'rgba8unorm' }]
}
};
- const _success = shaderModuleEntryPoint === stageEntryPoint;
+ let _success = true;
+ if (shaderModuleStage !== 'fragment') {
+ _success = false;
+ }
+ if (!provideEntryPoint && extraEntryPoint) {
+ _success = false;
+ }
+ if (shaderModuleEntryPoint !== stageEntryPoint && provideEntryPoint) {
+ _success = false;
+ }
t.doCreateRenderPipelineTest(isAsync, _success, descriptor);
+});
+
+g.test('compute_undefined_entry_point_and_extra_stage').
+desc(
+ `
+Tests calling createComputePipeline(Async) with compute stage shader and
+an undefined entryPoint is valid if there's an extra shader stage.
+`
+).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('extraShaderModuleStage', ['compute', 'vertex', 'fragment'])
+).
+fn((t) => {
+ const { isAsync, extraShaderModuleStage } = t.params;
+ const code = `
+ ${getShaderWithEntryPoint('compute', 'main')}
+ ${getShaderWithEntryPoint(extraShaderModuleStage, 'extra')}
+ `;
+ const descriptor = {
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: undefined
+ }
+ };
+
+ const success = extraShaderModuleStage !== 'compute';
+ t.doCreateComputePipelineTest(isAsync, success, descriptor);
+});
+
+g.test('vertex_undefined_entry_point_and_extra_stage').
+desc(
+ `
+Tests calling createRenderPipeline(Async) with vertex stage shader and
+an undefined entryPoint is valid if there's an extra shader stage.
+`
+).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('extraShaderModuleStage', ['compute', 'vertex', 'fragment'])
+).
+fn((t) => {
+ const { isAsync, extraShaderModuleStage } = t.params;
+ const code = `
+ ${getShaderWithEntryPoint('vertex', 'main')}
+ ${getShaderWithEntryPoint(extraShaderModuleStage, 'extra')}
+ `;
+ const descriptor = {
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: undefined
+ }
+ };
+
+ const success = extraShaderModuleStage !== 'vertex';
+ t.doCreateRenderPipelineTest(isAsync, success, descriptor);
+});
+
+g.test('fragment_undefined_entry_point_and_extra_stage').
+desc(
+ `
+Tests calling createRenderPipeline(Async) with fragment stage shader and
+an undefined entryPoint is valid if there's an extra shader stage.
+`
+).
+params((u) =>
+u.
+combine('isAsync', [true, false]).
+combine('extraShaderModuleStage', ['compute', 'vertex', 'fragment'])
+).
+fn((t) => {
+ const { isAsync, extraShaderModuleStage } = t.params;
+ const code = `
+ ${getShaderWithEntryPoint('fragment', 'main')}
+ ${getShaderWithEntryPoint(extraShaderModuleStage, 'extra')}
+ `;
+ const descriptor = {
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({
+ code: kDefaultVertexShaderCode
+ })
+ },
+ fragment: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: undefined,
+ targets: [{ format: 'rgba8unorm' }]
+ }
+ };
+
+ const success = extraShaderModuleStage !== 'fragment';
+ t.doCreateRenderPipelineTest(isAsync, success, descriptor);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/state/device_lost/destroy.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/state/device_lost/destroy.spec.js
index d5087f9315..e8a43b50f7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/state/device_lost/destroy.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/state/device_lost/destroy.spec.js
@@ -704,10 +704,7 @@ fn(async (t) => {
entries: [
{
binding: 0,
- resource: t.device.importExternalTexture({
-
- source: source
- })
+ resource: t.device.importExternalTexture({ source })
}]
});
@@ -899,7 +896,12 @@ fn(async (t) => {
const { type, stage, awaitLost } = t.params;
const querySet = t.device.createQuerySet({ type, count: 2 });
await t.executeCommandsAfterDestroy(stage, awaitLost, 'non-pass', (maker) => {
- maker.encoder.writeTimestamp(querySet, 0);
+ try {
+
+ maker.encoder.writeTimestamp(querySet, 0);
+ } catch (ex) {
+ t.skipIf(ex instanceof TypeError, 'writeTimestamp is actually not available');
+ }
return maker;
});
});
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/texture/bgra8unorm_storage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/texture/bgra8unorm_storage.spec.js
index 57e1c5a23e..cae789a19d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/texture/bgra8unorm_storage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/texture/bgra8unorm_storage.spec.js
@@ -81,37 +81,6 @@ fn((t) => {
});
});
-g.test('create_shader_module_with_bgra8unorm_storage').
-desc(
- `
-Test that it is valid to declare the format of a storage texture as bgra8unorm in a shader module if
-the feature bgra8unorm-storage is enabled.
-`
-).
-beforeAllSubcases((t) => {
- t.selectDeviceOrSkipTestCase('bgra8unorm-storage');
-}).
-params((u) => u.combine('shaderType', ['fragment', 'compute'])).
-fn((t) => {
- const { shaderType } = t.params;
-
- t.testCreateShaderModuleWithBGRA8UnormStorage(shaderType, true);
-});
-
-g.test('create_shader_module_without_bgra8unorm_storage').
-desc(
- `
-Test that it is invalid to declare the format of a storage texture as bgra8unorm in a shader module
-if the feature bgra8unorm-storage is not enabled.
-`
-).
-params((u) => u.combine('shaderType', ['fragment', 'compute'])).
-fn((t) => {
- const { shaderType } = t.params;
-
- t.testCreateShaderModuleWithBGRA8UnormStorage(shaderType, false);
-});
-
g.test('configure_storage_usage_on_canvas_context_without_bgra8unorm_storage').
desc(
`
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/utils.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/utils.js
new file mode 100644
index 0000000000..de27f6773a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/utils.js
@@ -0,0 +1,275 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/
+
+
+
+
+
+
+
+/**
+ * Returns an array of possible resources
+ */
+function generateResources() {
+ const resources = [
+ // Buffers
+ {
+ buffer: { type: 'uniform' },
+ code: `var<uniform> res : array<vec4u, 16>`,
+ staticUse: `res[0]`
+ },
+ {
+ buffer: { type: 'storage' },
+ code: `var<storage, read_write> res : array<vec4u>`,
+ staticUse: `res[0]`
+ },
+ {
+ buffer: { type: 'read-only-storage' },
+ code: `var<storage> res : array<vec4u>`,
+ staticUse: `res[0]`
+ },
+
+ // Samplers
+ {
+ sampler: { type: 'filtering' },
+ code: `var res : sampler`
+ },
+ {
+ sampler: { type: 'non-filtering' },
+ code: `var res : sampler`
+ },
+ {
+ sampler: { type: 'comparison' },
+ code: `var res : sampler_comparison`
+ },
+ // Multisampled textures
+ {
+ texture: { sampleType: 'depth', viewDimension: '2d', multisampled: true },
+ code: `var res : texture_depth_multisampled_2d`
+ },
+ {
+ texture: { sampleType: 'unfilterable-float', viewDimension: '2d', multisampled: true },
+ code: `var res : texture_multisampled_2d<f32>`
+ },
+ {
+ texture: { sampleType: 'sint', viewDimension: '2d', multisampled: true },
+ code: `var res : texture_multisampled_2d<i32>`
+ },
+ {
+ texture: { sampleType: 'uint', viewDimension: '2d', multisampled: true },
+ code: `var res : texture_multisampled_2d<u32>`
+ }];
+
+
+ // Sampled textures
+ const sampleDims = [
+ '1d',
+ '2d',
+ '2d-array',
+ '3d',
+ 'cube',
+ 'cube-array'];
+
+ const sampleTypes = ['float', 'unfilterable-float', 'sint', 'uint'];
+ const sampleWGSL = ['f32', 'f32', 'i32', 'u32'];
+ for (const dim of sampleDims) {
+ let i = 0;
+ for (const type of sampleTypes) {
+ resources.push({
+ texture: { sampleType: type, viewDimension: dim, multisampled: false },
+ code: `var res : texture_${dim.replace('-', '_')}<${sampleWGSL[i++]}>`
+ });
+ }
+ }
+
+ // Depth textures
+ const depthDims = ['2d', '2d-array', 'cube', 'cube-array'];
+ for (const dim of depthDims) {
+ resources.push({
+ texture: { sampleType: 'depth', viewDimension: dim, multisampled: false },
+ code: `var res : texture_depth_${dim.replace('-', '_')}`
+ });
+ }
+
+ // Storage textures
+ // Only cover r32uint, r32sint, and r32float here for ease of testing.
+ const storageDims = ['1d', '2d', '2d-array', '3d'];
+ const formats = ['r32float', 'r32sint', 'r32uint'];
+ const accesses = ['write-only', 'read-only', 'read-write'];
+ for (const dim of storageDims) {
+ for (const format of formats) {
+ for (const access of accesses) {
+ resources.push({
+ storageTexture: { access, format, viewDimension: dim },
+ code: `var res : texture_storage_${dim.replace('-', '_')}<${format},${access.
+ replace('-only', '').
+ replace('-', '_')}>`
+ });
+ }
+ }
+ }
+
+ return resources;
+}
+
+/**
+ * Returns a string suitable as a Record key.
+ */
+function resourceKey(res) {
+ if (res.buffer) {
+ return `${res.buffer.type}_buffer`;
+ }
+ if (res.sampler) {
+ return `${res.sampler.type}_sampler`;
+ }
+ if (res.texture) {
+ return `texture_${res.texture.sampleType}_${res.texture.viewDimension}_${res.texture.multisampled}`;
+ }
+ if (res.storageTexture) {
+ return `storage_texture_${res.storageTexture.viewDimension}_${res.storageTexture.format}_${res.storageTexture.access}`;
+ }
+ if (res.externalTexture) {
+ return `external_texture`;
+ }
+ return ``;
+}
+
+/**
+ * Resource array converted to a Record for nicer test parameterization names.
+ */
+export const kAPIResources = Object.fromEntries(
+ generateResources().map((x) => [resourceKey(x), x])
+);
+
+/**
+ * Generates a shader of the specified stage using the specified resource at binding (0,0).
+ */
+export function getWGSLShaderForResource(stage, resource) {
+ let code = `@group(0) @binding(0) ${resource.code};\n`;
+
+ code += `@${stage}`;
+ if (stage === 'compute') {
+ code += `@workgroup_size(1)`;
+ }
+
+ let retTy = '';
+ let retVal = '';
+ if (stage === 'vertex') {
+ retTy = ' -> @builtin(position) vec4f';
+ retVal = 'return vec4f();';
+ } else if (stage === 'fragment') {
+ retTy = ' -> @location(0) vec4f';
+ retVal = 'return vec4f();';
+ }
+ code += `
+fn main() ${retTy} {
+ _ = ${resource.staticUse ?? 'res'};
+ ${retVal}
+}
+`;
+
+ return code;
+}
+
+/**
+ * Generates a bind group layout for for the given resource at binding 0.
+ */
+export function getAPIBindGroupLayoutForResource(
+device,
+stage,
+resource)
+{
+ const entry = {
+ binding: 0,
+ visibility: stage
+ };
+ if (resource.buffer) {
+ entry.buffer = resource.buffer;
+ }
+ if (resource.sampler) {
+ entry.sampler = resource.sampler;
+ }
+ if (resource.texture) {
+ entry.texture = resource.texture;
+ }
+ if (resource.storageTexture) {
+ entry.storageTexture = resource.storageTexture;
+ }
+ if (resource.externalTexture) {
+ entry.externalTexture = resource.externalTexture;
+ }
+
+ const entries = [entry];
+ return device.createBindGroupLayout({ entries });
+}
+
+/**
+ * Returns true if the sample types are compatible.
+ */
+function doSampleTypesMatch(api, wgsl) {
+ if (api === 'float' || api === 'unfilterable-float') {
+ return wgsl === 'float' || wgsl === 'unfilterable-float';
+ }
+ return api === wgsl;
+}
+
+/**
+ * Returns true if the access modes are compatible.
+ */
+function doAccessesMatch(api, wgsl) {
+ if (api === 'read-write') {
+ return wgsl === 'read-write' || wgsl === 'write-only';
+ }
+ return api === wgsl;
+}
+
+/**
+ * Returns true if the resources are compatible.
+ */
+export function doResourcesMatch(api, wgsl) {
+ if (api.buffer) {
+ if (!wgsl.buffer) {
+ return false;
+ }
+ return api.buffer.type === wgsl.buffer.type;
+ }
+ if (api.sampler) {
+ if (!wgsl.sampler) {
+ return false;
+ }
+ return (
+ api.sampler.type === wgsl.sampler.type ||
+ api.sampler.type !== 'comparison' && wgsl.sampler.type !== 'comparison');
+
+ }
+ if (api.texture) {
+ if (!wgsl.texture) {
+ return false;
+ }
+ const aType = api.texture.sampleType;
+ const wType = wgsl.texture.sampleType;
+ return (
+ doSampleTypesMatch(aType, wType) &&
+ api.texture.viewDimension === wgsl.texture.viewDimension &&
+ api.texture.multisampled === wgsl.texture.multisampled);
+
+ }
+ if (api.storageTexture) {
+ if (!wgsl.storageTexture) {
+ return false;
+ }
+ const aAccess = api.storageTexture.access;
+ const wAccess = wgsl.storageTexture.access;
+ return (
+ doAccessesMatch(aAccess, wAccess) &&
+ api.storageTexture.format === wgsl.storageTexture.format &&
+ api.storageTexture.viewDimension === wgsl.storageTexture.viewDimension);
+
+ }
+ if (api.externalTexture) {
+ return wgsl.externalTexture !== undefined;
+ }
+
+ return false;
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/validation_test.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/validation_test.js
index 9ddb6d9fad..f602556d0a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/validation_test.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/api/validation/validation_test.js
@@ -152,11 +152,11 @@ export class ValidationTest extends GPUTest {
}
/** Return an arbitrarily-configured GPUTexture with the `STORAGE_BINDING` usage. */
- getStorageTexture() {
+ getStorageTexture(format) {
return this.trackForCleanup(
this.device.createTexture({
size: { width: 16, height: 16, depthOrArrayLayers: 1 },
- format: 'rgba8unorm',
+ format,
usage: GPUTextureUsage.STORAGE_BINDING
})
);
@@ -220,8 +220,10 @@ export class ValidationTest extends GPUTest {
return this.getSampledTexture(1).createView();
case 'sampledTexMS':
return this.getSampledTexture(4).createView();
- case 'storageTex':
- return this.getStorageTexture().createView();
+ case 'readonlyStorageTex':
+ case 'writeonlyStorageTex':
+ case 'readwriteStorageTex':
+ return this.getStorageTexture('r32float').createView();
}
}
@@ -255,10 +257,10 @@ export class ValidationTest extends GPUTest {
}
/** Return an arbitrarily-configured GPUTexture with the `STORAGE` usage from mismatched device. */
- getDeviceMismatchedStorageTexture() {
+ getDeviceMismatchedStorageTexture(format) {
return this.getDeviceMismatchedTexture({
size: { width: 4, height: 4, depthOrArrayLayers: 1 },
- format: 'rgba8unorm',
+ format,
usage: GPUTextureUsage.STORAGE_BINDING
});
}
@@ -289,8 +291,10 @@ export class ValidationTest extends GPUTest {
return this.getDeviceMismatchedSampledTexture(1).createView();
case 'sampledTexMS':
return this.getDeviceMismatchedSampledTexture(4).createView();
- case 'storageTex':
- return this.getDeviceMismatchedStorageTexture().createView();
+ case 'readonlyStorageTex':
+ case 'writeonlyStorageTex':
+ case 'readwriteStorageTex':
+ return this.getDeviceMismatchedStorageTexture('r32float').createView();
}
}
@@ -317,7 +321,8 @@ export class ValidationTest extends GPUTest {
/** Return a GPURenderPipeline with default options and no-op vertex and fragment shaders. */
createNoOpRenderPipeline(
- layout = 'auto')
+ layout = 'auto',
+ colorFormat = 'rgba8unorm')
{
return this.device.createRenderPipeline({
layout,
@@ -332,7 +337,7 @@ export class ValidationTest extends GPUTest {
code: this.getNoOpShaderCode('FRAGMENT')
}),
entryPoint: 'main',
- targets: [{ format: 'rgba8unorm', writeMask: 0 }]
+ targets: [{ format: colorFormat, writeMask: 0 }]
},
primitive: { topology: 'triangle-list' }
});
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/capability_info.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/capability_info.js
index dbcb833947..eb330bb567 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/capability_info.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/capability_info.js
@@ -323,6 +323,8 @@ export const kVertexFormats = keysOf(kVertexFormatInfo);
+
+
/**
* Classes of `PerPipelineLayout` binding limits. Two bindings with the same class
* count toward the same `PerPipelineLayout` limit(s) in the spec (if any).
@@ -340,6 +342,8 @@ export const kVertexFormats = keysOf(kVertexFormatInfo);
+
+
/**
* Types of resource binding which have distinct binding rules, by spec
* (e.g. filtering vs non-filtering sampler, multisample vs non-multisample texture).
@@ -353,7 +357,9 @@ export const kBindableResources = [
'compareSamp',
'sampledTex',
'sampledTexMS',
-'storageTex',
+'readonlyStorageTex',
+'writeonlyStorageTex',
+'readwriteStorageTex',
'errorBuf',
'errorSamp',
'errorTex'];
@@ -380,7 +386,9 @@ export const kPerStageBindingLimits =
'storageBuf': { class: 'storageBuf', maxLimit: 'maxStorageBuffersPerShaderStage' },
'sampler': { class: 'sampler', maxLimit: 'maxSamplersPerShaderStage' },
'sampledTex': { class: 'sampledTex', maxLimit: 'maxSampledTexturesPerShaderStage' },
- 'storageTex': { class: 'storageTex', maxLimit: 'maxStorageTexturesPerShaderStage' }
+ 'readonlyStorageTex': { class: 'readonlyStorageTex', maxLimit: 'maxStorageTexturesPerShaderStage' },
+ 'writeonlyStorageTex': { class: 'writeonlyStorageTex', maxLimit: 'maxStorageTexturesPerShaderStage' },
+ 'readwriteStorageTex': { class: 'readwriteStorageTex', maxLimit: 'maxStorageTexturesPerShaderStage' }
};
/**
@@ -402,7 +410,9 @@ export const kPerPipelineBindingLimits =
'storageBuf': { class: 'storageBuf', maxDynamicLimit: 'maxDynamicStorageBuffersPerPipelineLayout' },
'sampler': { class: 'sampler', maxDynamicLimit: '' },
'sampledTex': { class: 'sampledTex', maxDynamicLimit: '' },
- 'storageTex': { class: 'storageTex', maxDynamicLimit: '' }
+ 'readonlyStorageTex': { class: 'readonlyStorageTex', maxDynamicLimit: '' },
+ 'writeonlyStorageTex': { class: 'writeonlyStorageTex', maxDynamicLimit: '' },
+ 'readwriteStorageTex': { class: 'readwriteStorageTex', maxDynamicLimit: '' }
};
@@ -423,7 +433,9 @@ const kBindingKind =
compareSamp: { resource: 'compareSamp', perStageLimitClass: kPerStageBindingLimits.sampler, perPipelineLimitClass: kPerPipelineBindingLimits.sampler },
sampledTex: { resource: 'sampledTex', perStageLimitClass: kPerStageBindingLimits.sampledTex, perPipelineLimitClass: kPerPipelineBindingLimits.sampledTex },
sampledTexMS: { resource: 'sampledTexMS', perStageLimitClass: kPerStageBindingLimits.sampledTex, perPipelineLimitClass: kPerPipelineBindingLimits.sampledTex },
- storageTex: { resource: 'storageTex', perStageLimitClass: kPerStageBindingLimits.storageTex, perPipelineLimitClass: kPerPipelineBindingLimits.storageTex }
+ readonlyStorageTex: { resource: 'readonlyStorageTex', perStageLimitClass: kPerStageBindingLimits.readonlyStorageTex, perPipelineLimitClass: kPerPipelineBindingLimits.readonlyStorageTex },
+ writeonlyStorageTex: { resource: 'writeonlyStorageTex', perStageLimitClass: kPerStageBindingLimits.writeonlyStorageTex, perPipelineLimitClass: kPerPipelineBindingLimits.writeonlyStorageTex },
+ readwriteStorageTex: { resource: 'readwriteStorageTex', perStageLimitClass: kPerStageBindingLimits.readwriteStorageTex, perPipelineLimitClass: kPerPipelineBindingLimits.readwriteStorageTex }
};
// Binding type info
@@ -483,14 +495,30 @@ assertTypeTrue();
/** Binding type info (including class limits) for the specified GPUStorageTextureBindingLayout. */
export function storageTextureBindingTypeInfo(d) {
- return {
- usage: GPUConst.TextureUsage.STORAGE_BINDING,
- ...kBindingKind.storageTex,
- ...kValidStagesStorageWrite
- };
+ switch (d.access) {
+ case undefined:
+ case 'write-only':
+ return {
+ usage: GPUConst.TextureUsage.STORAGE_BINDING,
+ ...kBindingKind.writeonlyStorageTex,
+ ...kValidStagesStorageWrite
+ };
+ case 'read-only':
+ return {
+ usage: GPUConst.TextureUsage.STORAGE_BINDING,
+ ...kBindingKind.readonlyStorageTex,
+ ...kValidStagesAll
+ };
+ case 'read-write':
+ return {
+ usage: GPUConst.TextureUsage.STORAGE_BINDING,
+ ...kBindingKind.readwriteStorageTex,
+ ...kValidStagesStorageWrite
+ };
+ }
}
/** List of all GPUStorageTextureAccess values. */
-export const kStorageTextureAccessValues = ['write-only'];
+export const kStorageTextureAccessValues = ['read-only', 'read-write', 'write-only'];
assertTypeTrue();
/** GPUBindGroupLayoutEntry, but only the "union" fields, not the common fields. */
@@ -539,8 +567,10 @@ export function samplerBindingEntries(includeUndefined) {
*/
export function textureBindingEntries(includeUndefined) {
return [
- ...(includeUndefined ? [{ texture: { multisampled: undefined } }] : []),
- { texture: { multisampled: false } },
+ ...(includeUndefined ?
+ [{ texture: { multisampled: undefined, sampleType: 'unfilterable-float' } }] :
+ []),
+ { texture: { multisampled: false, sampleType: 'unfilterable-float' } },
{ texture: { multisampled: true, sampleType: 'unfilterable-float' } }];
}
@@ -549,19 +579,17 @@ export function textureBindingEntries(includeUndefined) {
*
* Note: Generates different `access` options, but not `format` or `viewDimension` options.
*/
-export function storageTextureBindingEntries(format) {
- return [{ storageTexture: { access: 'write-only', format } }];
-}
-/** Generate a list of possible texture-or-storageTexture-typed BGLEntry values. */
-export function sampledAndStorageBindingEntries(
-includeUndefined,
-storageTextureFormat = 'rgba8unorm')
-{
+export function storageTextureBindingEntries() {
return [
- ...textureBindingEntries(includeUndefined),
- ...storageTextureBindingEntries(storageTextureFormat)];
+ { storageTexture: { access: 'write-only', format: 'r32float' } },
+ { storageTexture: { access: 'read-only', format: 'r32float' } },
+ { storageTexture: { access: 'read-write', format: 'r32float' } }];
}
+/** Generate a list of possible texture-or-storageTexture-typed BGLEntry values. */
+export function sampledAndStorageBindingEntries(includeUndefined) {
+ return [...textureBindingEntries(includeUndefined), ...storageTextureBindingEntries()];
+}
/**
* Generate a list of possible BGLEntry values of every type, but not variants with different:
* - buffer.hasDynamicOffset
@@ -569,14 +597,11 @@ storageTextureFormat = 'rgba8unorm')
* - texture.viewDimension
* - storageTexture.viewDimension
*/
-export function allBindingEntries(
-includeUndefined,
-storageTextureFormat = 'rgba8unorm')
-{
+export function allBindingEntries(includeUndefined) {
return [
...bufferBindingEntries(includeUndefined),
...samplerBindingEntries(includeUndefined),
- ...sampledAndStorageBindingEntries(includeUndefined, storageTextureFormat)];
+ ...sampledAndStorageBindingEntries(includeUndefined)];
}
@@ -689,7 +714,7 @@ const [kLimitInfoKeys, kLimitInfoDefaults, kLimitInfoData] =
'maxVertexAttributes': [, 16, 16],
'maxVertexBufferArrayStride': [, 2048, 2048],
'maxInterStageShaderComponents': [, 60, 60],
- 'maxInterStageShaderVariables': [, 16, 16],
+ 'maxInterStageShaderVariables': [, 16, 15],
'maxColorAttachments': [, 8, 4],
'maxColorAttachmentBytesPerSample': [, 32, 32],
@@ -789,4 +814,11 @@ export const kFeatureNameInfo =
'float32-filterable': {}
};
/** List of all GPUFeatureName values. */
-export const kFeatureNames = keysOf(kFeatureNameInfo); \ No newline at end of file
+export const kFeatureNames = keysOf(kFeatureNameInfo);
+
+/** List of all known WGSL language features */
+export const kKnownWGSLLanguageFeatures = [
+'readonly_and_readwrite_storage_textures',
+'packed_4x8_integer_dot_product',
+'unrestricted_pointer_parameters',
+'pointer_composite_access']; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroup.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroup.spec.js
new file mode 100644
index 0000000000..63cc277088
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroup.spec.js
@@ -0,0 +1,178 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests that, in compat mode, the dimension of a view is compatible with a texture's textureBindingViewDimension.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { kTextureDimensions, kTextureViewDimensions } from '../../../capability_info.js';
+import {
+ effectiveViewDimensionForTexture,
+ getTextureDimensionFromView } from
+'../../../util/texture/base.js';
+import { CompatibilityTest } from '../../compatibility_test.js';
+
+export const g = makeTestGroup(CompatibilityTest);
+
+function isTextureBindingViewDimensionCompatibleWithDimension(
+dimension = '2d',
+textureBindingViewDimension = '2d')
+{
+ return getTextureDimensionFromView(textureBindingViewDimension) === dimension;
+}
+
+function isValidViewDimensionForDimension(
+dimension,
+depthOrArrayLayers,
+viewDimension)
+{
+ if (viewDimension === undefined) {
+ return true;
+ }
+
+ switch (dimension) {
+ case '1d':
+ return viewDimension === '1d';
+ case '2d':
+ case undefined:
+ switch (viewDimension) {
+ case undefined:
+ case '2d':
+ case '2d-array':
+ return true;
+ case 'cube':
+ return depthOrArrayLayers === 6;
+ case 'cube-array':
+ return depthOrArrayLayers % 6 === 0;
+ default:
+ return false;
+ }
+ break;
+ case '3d':
+ return viewDimension === '3d';
+ }
+}
+
+function isValidDimensionForDepthOrArrayLayers(
+dimension,
+depthOrArrayLayers)
+{
+ switch (dimension) {
+ case '1d':
+ return depthOrArrayLayers === 1;
+ default:
+ return true;
+ }
+}
+
+function isValidViewDimensionForDepthOrArrayLayers(
+viewDimension,
+depthOrArrayLayers)
+{
+ switch (viewDimension) {
+ case '2d':
+ return depthOrArrayLayers === 1;
+ case 'cube':
+ return depthOrArrayLayers === 6;
+ case 'cube-array':
+ return depthOrArrayLayers % 6 === 0;
+ default:
+ return true;
+ }
+ return viewDimension === 'cube';
+}
+
+function getEffectiveTextureBindingViewDimension(
+dimension,
+depthOrArrayLayers,
+textureBindingViewDimension)
+{
+ if (textureBindingViewDimension) {
+ return textureBindingViewDimension;
+ }
+
+ switch (dimension) {
+ case '1d':
+ return '1d';
+ case '2d':
+ case undefined:
+ return depthOrArrayLayers > 1 ? '2d-array' : '2d';
+ break;
+ case '3d':
+ return '3d';
+ }
+}
+
+g.test('viewDimension_matches_textureBindingViewDimension').
+desc(
+ `
+ Tests that, in compat mode, the dimension of a view is compatible with a texture's textureBindingViewDimension
+ when used as a TEXTURE_BINDING.
+ `
+).
+params((u) =>
+u //
+.combine('dimension', [...kTextureDimensions, undefined]).
+combine('textureBindingViewDimension', [...kTextureViewDimensions, undefined]).
+combine('viewDimension', [...kTextureViewDimensions, undefined]).
+combine('depthOrArrayLayers', [1, 2, 6]).
+filter(
+ ({ dimension, textureBindingViewDimension, depthOrArrayLayers, viewDimension }) =>
+ textureBindingViewDimension !== 'cube-array' &&
+ viewDimension !== 'cube-array' &&
+ isTextureBindingViewDimensionCompatibleWithDimension(
+ dimension,
+ textureBindingViewDimension
+ ) &&
+ isValidViewDimensionForDimension(dimension, depthOrArrayLayers, viewDimension) &&
+ isValidViewDimensionForDepthOrArrayLayers(
+ textureBindingViewDimension,
+ depthOrArrayLayers
+ ) &&
+ isValidDimensionForDepthOrArrayLayers(dimension, depthOrArrayLayers)
+)
+).
+fn((t) => {
+ const { dimension, textureBindingViewDimension, viewDimension, depthOrArrayLayers } = t.params;
+
+ const texture = t.device.createTexture({
+ size: [1, 1, depthOrArrayLayers],
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.TEXTURE_BINDING,
+ ...(dimension && { dimension }),
+ ...(textureBindingViewDimension && { textureBindingViewDimension })
+ }); // MAINTENANCE_TODO: remove cast once textureBindingViewDimension is added to IDL
+ t.trackForCleanup(texture);
+
+ const effectiveTextureBindingViewDimension = getEffectiveTextureBindingViewDimension(
+ dimension,
+ texture.depthOrArrayLayers,
+ textureBindingViewDimension
+ );
+
+ const effectiveViewDimension = getEffectiveTextureBindingViewDimension(
+ dimension,
+ texture.depthOrArrayLayers,
+ viewDimension
+ );
+
+ const layout = t.device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility: GPUShaderStage.COMPUTE,
+ texture: {
+ viewDimension: effectiveViewDimensionForTexture(texture, viewDimension)
+ }
+ }]
+
+ });
+
+ const resource = texture.createView({ dimension: viewDimension });
+ const shouldError = effectiveTextureBindingViewDimension !== effectiveViewDimension;
+
+ t.expectValidationError(() => {
+ t.device.createBindGroup({
+ layout,
+ entries: [{ binding: 0, resource }]
+ });
+ }, shouldError);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroupLayout.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroupLayout.spec.js
new file mode 100644
index 0000000000..b6d9057cd0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/createBindGroupLayout.spec.js
@@ -0,0 +1,34 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests that, in compat mode, you can not create a bind group layout with unsupported storage texture formats.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { kCompatModeUnsupportedStorageTextureFormats } from '../../../format_info.js';
+import { CompatibilityTest } from '../../compatibility_test.js';
+
+export const g = makeTestGroup(CompatibilityTest);
+
+g.test('unsupportedStorageTextureFormats').
+desc(
+ `
+ Tests that, in compat mode, you can not create a bind group layout with unsupported storage texture formats.
+ `
+).
+params((u) => u.combine('format', kCompatModeUnsupportedStorageTextureFormats)).
+fn((t) => {
+ const { format } = t.params;
+
+ t.expectValidationError(() => {
+ t.device.createBindGroupLayout({
+ entries: [
+ {
+ binding: 0,
+ visibility: GPUShaderStage.COMPUTE,
+ storageTexture: {
+ format
+ }
+ }]
+
+ });
+ }, true);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js
index 30db0b1a40..dd9bb594ed 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToBuffer.spec.js
@@ -19,16 +19,17 @@ beforeAllSubcases((t) => {
fn((t) => {
const { format } = t.params;
- const { blockWidth, blockHeight, bytesPerBlock } = kTextureFormatInfo[format];
+ const info = kTextureFormatInfo[format];
+ const textureSize = [info.blockWidth, info.blockHeight, 1];
const texture = t.device.createTexture({
- size: [blockWidth, blockHeight, 1],
+ size: textureSize,
format,
usage: GPUTextureUsage.COPY_SRC
});
t.trackForCleanup(texture);
- const bytesPerRow = align(bytesPerBlock, 256);
+ const bytesPerRow = align(info.color.bytes, 256);
const buffer = t.device.createBuffer({
size: bytesPerRow,
@@ -37,7 +38,7 @@ fn((t) => {
t.trackForCleanup(buffer);
const encoder = t.device.createCommandEncoder();
- encoder.copyTextureToBuffer({ texture }, { buffer, bytesPerRow }, [blockWidth, blockHeight, 1]);
+ encoder.copyTextureToBuffer({ texture }, { buffer, bytesPerRow }, textureSize);
t.expectGPUError('validation', () => {
encoder.finish();
});
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture.spec.js
new file mode 100644
index 0000000000..07c16b940f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/encoding/cmds/copyTextureToTexture.spec.js
@@ -0,0 +1,94 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests limitations of copyTextureToTextures in compat mode.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import {
+ kAllTextureFormats,
+ kCompressedTextureFormats,
+ kTextureFormatInfo } from
+'../../../../../format_info.js';
+import { CompatibilityTest } from '../../../../compatibility_test.js';
+
+export const g = makeTestGroup(CompatibilityTest);
+
+g.test('compressed').
+desc(`Tests that you can not call copyTextureToTexture with compressed textures in compat mode.`).
+params((u) => u.combine('format', kCompressedTextureFormats)).
+beforeAllSubcases((t) => {
+ const { format } = t.params;
+ t.selectDeviceOrSkipTestCase([kTextureFormatInfo[format].feature]);
+}).
+fn((t) => {
+ const { format } = t.params;
+
+ const { blockWidth, blockHeight } = kTextureFormatInfo[format];
+
+ const srcTexture = t.device.createTexture({
+ size: [blockWidth, blockHeight, 1],
+ format,
+ usage: GPUTextureUsage.COPY_SRC
+ });
+ t.trackForCleanup(srcTexture);
+
+ const dstTexture = t.device.createTexture({
+ size: [blockWidth, blockHeight, 1],
+ format,
+ usage: GPUTextureUsage.COPY_DST
+ });
+ t.trackForCleanup(dstTexture);
+
+ const encoder = t.device.createCommandEncoder();
+ encoder.copyTextureToTexture({ texture: srcTexture }, { texture: dstTexture }, [
+ blockWidth,
+ blockHeight,
+ 1]
+ );
+ t.expectGPUError('validation', () => {
+ encoder.finish();
+ });
+});
+
+g.test('multisample').
+desc(`Test that you can not call copyTextureToTexture with multisample textures in compat mode.`).
+params((u) =>
+u.
+beginSubcases().
+combine('format', kAllTextureFormats).
+filter(({ format }) => {
+ const info = kTextureFormatInfo[format];
+ return info.multisample && !info.feature;
+})
+).
+fn((t) => {
+ const { format } = t.params;
+ const { blockWidth, blockHeight } = kTextureFormatInfo[format];
+
+ t.skipIfTextureFormatNotSupported(format);
+
+ const srcTexture = t.device.createTexture({
+ size: [blockWidth, blockHeight, 1],
+ format,
+ sampleCount: 4,
+ usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.RENDER_ATTACHMENT
+ });
+ t.trackForCleanup(srcTexture);
+
+ const dstTexture = t.device.createTexture({
+ size: [blockWidth, blockHeight, 1],
+ format,
+ sampleCount: 4,
+ usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.RENDER_ATTACHMENT
+ });
+ t.trackForCleanup(dstTexture);
+
+ const encoder = t.device.createCommandEncoder();
+ encoder.copyTextureToTexture({ texture: srcTexture }, { texture: dstTexture }, [
+ blockWidth,
+ blockHeight,
+ 1]
+ );
+ t.expectGPUError('validation', () => {
+ encoder.finish();
+ });
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/depth_stencil_state.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/depth_stencil_state.spec.js
new file mode 100644
index 0000000000..d2d997aaa4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/depth_stencil_state.spec.js
@@ -0,0 +1,53 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests that depthBiasClamp must be zero in compat mode.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { CompatibilityTest } from '../../../compatibility_test.js';
+
+export const g = makeTestGroup(CompatibilityTest);
+
+g.test('depthBiasClamp').
+desc('Tests that depthBiasClamp must be zero in compat mode.').
+params((u) =>
+u //
+.combine('depthBiasClamp', [undefined, 0, 0.1, 1]).
+combine('async', [false, true])
+).
+fn((t) => {
+ const { depthBiasClamp, async } = t.params;
+
+ const module = t.device.createShaderModule({
+ code: `
+ @vertex fn vs() -> @builtin(position) vec4f {
+ return vec4f(0);
+ }
+
+ @fragment fn fs() -> @location(0) vec4f {
+ return vec4f(0);
+ }
+ `
+ });
+
+ const pipelineDescriptor = {
+ layout: 'auto',
+ vertex: {
+ module,
+ entryPoint: 'vs'
+ },
+ fragment: {
+ module,
+ entryPoint: 'fs',
+ targets: [{ format: 'rgba8unorm' }]
+ },
+ depthStencil: {
+ format: 'depth24plus',
+ depthWriteEnabled: true,
+ depthCompare: 'always',
+ ...(depthBiasClamp !== undefined && { depthBiasClamp })
+ }
+ };
+
+ const success = !depthBiasClamp;
+ t.doCreateRenderPipelineTest(async, success, pipelineDescriptor);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/shader_module.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/shader_module.spec.js
index 5218456a84..a35d0199c8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/shader_module.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/render_pipeline/shader_module.spec.js
@@ -3,6 +3,7 @@
**/export const description = `
Tests limitations of createRenderPipeline related to shader modules in compat mode.
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { kCompatModeUnsupportedStorageTextureFormats } from '../../../../format_info.js';
import { CompatibilityTest } from '../../../compatibility_test.js';
export const g = makeTestGroup(CompatibilityTest);
@@ -71,4 +72,210 @@ fn((t) => {
() => t.device.createRenderPipeline(pipelineDescriptor),
!isValid
);
+});
+
+g.test('sample_index').
+desc(
+ `
+Tests that you can not create a render pipeline with a shader module that uses sample_index in compat mode.
+
+- Test that a pipeline with a shader that uses sample_index fails.
+- Test that a pipeline that references a module that has a shader that uses sample_index
+ but the pipeline does not reference that shader succeeds.
+ `
+).
+params((u) =>
+u.combine('entryPoint', ['fsWithoutSampleIndexUsage', 'fsWithSampleIndexUsage'])
+).
+fn((t) => {
+ const { entryPoint } = t.params;
+
+ const module = t.device.createShaderModule({
+ code: `
+ @vertex fn vs() -> @builtin(position) vec4f {
+ return vec4f(1);
+ }
+ @fragment fn fsWithoutSampleIndexUsage() -> @location(0) vec4f {
+ return vec4f(0);
+ }
+ @fragment fn fsWithSampleIndexUsage(@builtin(sample_index) sampleIndex: u32) -> @location(0) vec4f {
+ _ = sampleIndex;
+ return vec4f(0);
+ }
+ `
+ });
+
+ const pipelineDescriptor = {
+ layout: 'auto',
+ vertex: {
+ module,
+ entryPoint: 'vs'
+ },
+ fragment: {
+ module,
+ entryPoint,
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ },
+ multisample: {
+ count: 4
+ }
+ };
+
+ const isValid = entryPoint === 'fsWithoutSampleIndexUsage';
+ t.expectGPUError(
+ 'validation',
+ () => t.device.createRenderPipeline(pipelineDescriptor),
+ !isValid
+ );
+});
+
+g.test('interpolate').
+desc(
+ `
+Tests that you can not create a render pipeline with a shader module that uses interpolate(linear) nor interpolate(...,sample) in compat mode.
+
+- Test that a pipeline with a shader that uses interpolate(linear) or interpolate(sample) fails.
+- Test that a pipeline that references a module that has a shader that uses interpolate(linear/sample)
+ but the pipeline does not reference that shader succeeds.
+ `
+).
+params((u) =>
+u.
+combine('interpolate', [
+'',
+'@interpolate(linear)',
+'@interpolate(linear, sample)',
+'@interpolate(perspective, sample)']
+).
+combine('entryPoint', [
+'fsWithoutInterpolationUsage',
+'fsWithInterpolationUsage1',
+'fsWithInterpolationUsage2',
+'fsWithInterpolationUsage3']
+)
+).
+fn((t) => {
+ const { entryPoint, interpolate } = t.params;
+
+ const module = t.device.createShaderModule({
+ code: `
+ struct Vertex {
+ @builtin(position) pos: vec4f,
+ @location(0) ${interpolate} color : vec4f,
+ };
+ @vertex fn vs() -> Vertex {
+ var v: Vertex;
+ v.pos = vec4f(1);
+ v.color = vec4f(1);
+ return v;
+ }
+ @fragment fn fsWithoutInterpolationUsage() -> @location(0) vec4f {
+ return vec4f(1);
+ }
+ @fragment fn fsWithInterpolationUsage1(v: Vertex) -> @location(0) vec4f {
+ return vec4f(1);
+ }
+ @fragment fn fsWithInterpolationUsage2(v: Vertex) -> @location(0) vec4f {
+ return v.pos;
+ }
+ @fragment fn fsWithInterpolationUsage3(v: Vertex) -> @location(0) vec4f {
+ return v.color;
+ }
+ `
+ });
+
+ const pipelineDescriptor = {
+ layout: 'auto',
+ vertex: {
+ module,
+ entryPoint: 'vs'
+ },
+ fragment: {
+ module,
+ entryPoint,
+ targets: [
+ {
+ format: 'rgba8unorm'
+ }]
+
+ }
+ };
+
+ const isValid = entryPoint === 'fsWithoutInterpolationUsage' || interpolate === '';
+ t.expectGPUError(
+ 'validation',
+ () => t.device.createRenderPipeline(pipelineDescriptor),
+ !isValid
+ );
+});
+
+g.test('unsupportedStorageTextureFormats,computePipeline').
+desc(
+ `
+Tests that you can not create a compute pipeline with unsupported storage texture formats in compat mode.
+ `
+).
+params((u) =>
+u //
+.combine('format', kCompatModeUnsupportedStorageTextureFormats).
+combine('async', [false, true])
+).
+fn((t) => {
+ const { format, async } = t.params;
+
+ const module = t.device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var s: texture_storage_2d<${format}, read>;
+ @compute @workgroup_size(1) fn cs() {
+ _ = textureLoad(s, vec2u(0));
+ }
+ `
+ });
+
+ const pipelineDescriptor = {
+ layout: 'auto',
+ compute: {
+ module,
+ entryPoint: 'cs'
+ }
+ };
+ t.doCreateComputePipelineTest(async, false, pipelineDescriptor);
+});
+
+g.test('unsupportedStorageTextureFormats,renderPipeline').
+desc(
+ `
+Tests that you can not create a render pipeline with unsupported storage texture formats in compat mode.
+ `
+).
+params((u) =>
+u //
+.combine('format', kCompatModeUnsupportedStorageTextureFormats).
+combine('async', [false, true])
+).
+fn((t) => {
+ const { format, async } = t.params;
+
+ const module = t.device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var s: texture_storage_2d<${format}, read>;
+ @vertex fn vs() -> @builtin(position) vec4f {
+ _ = textureLoad(s, vec2u(0));
+ return vec4f(0);
+ }
+ `
+ });
+
+ const pipelineDescriptor = {
+ layout: 'auto',
+ vertex: {
+ module,
+ entryPoint: 'vs'
+ }
+ };
+ t.doCreateRenderPipelineTest(async, false, pipelineDescriptor);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/texture/createTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/texture/createTexture.spec.js
index c767301b17..65bc50e072 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/texture/createTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/compat/api/validation/texture/createTexture.spec.js
@@ -2,7 +2,12 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
Tests that you can not use bgra8unorm-srgb in compat mode.
-`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+Tests that textureBindingViewDimension must compatible with texture dimension
+`;
+import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { kTextureDimensions, kTextureViewDimensions } from '../../../../capability_info.js';
+import { kColorTextureFormats, kCompatModeUnsupportedStorageTextureFormats, kTextureFormatInfo } from '../../../../format_info.js';
+import { getTextureDimensionFromView } from '../../../../util/texture/base.js';
import { CompatibilityTest } from '../../../compatibility_test.js';
export const g = makeTestGroup(CompatibilityTest);
@@ -38,4 +43,130 @@ fn((t) => {
}),
true
);
+});
+
+g.test('invalidTextureBindingViewDimension').
+desc(
+ `Tests that you can not specify a textureBindingViewDimension that is incompatible with the texture's dimension.`
+).
+params((u) =>
+u //
+.combine('dimension', kTextureDimensions).
+combine('textureBindingViewDimension', kTextureViewDimensions)
+).
+fn((t) => {
+ const { dimension, textureBindingViewDimension } = t.params;
+ const depthOrArrayLayers = textureBindingViewDimension === '1d' || textureBindingViewDimension === '2d' ? 1 : 6;
+ const shouldError = getTextureDimensionFromView(textureBindingViewDimension) !== dimension;
+ t.expectGPUError(
+ 'validation',
+ () => {
+ const texture = t.device.createTexture({
+ size: [1, 1, depthOrArrayLayers],
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.TEXTURE_BINDING,
+ dimension,
+ textureBindingViewDimension
+ }); // MAINTENANCE_TODO: remove cast once textureBindingViewDimension is added to IDL
+ t.trackForCleanup(texture);
+ },
+ shouldError
+ );
+});
+
+g.test('depthOrArrayLayers_incompatible_with_textureBindingViewDimension').
+desc(
+ `Tests
+ * if textureBindingViewDimension is '2d' then depthOrArrayLayers must be 1
+ * if textureBindingViewDimension is 'cube' then depthOrArrayLayers must be 6
+ `
+).
+params((u) =>
+u //
+.combine('textureBindingViewDimension', ['2d', 'cube']).
+combine('depthOrArrayLayers', [1, 3, 6, 12])
+).
+fn((t) => {
+ const { textureBindingViewDimension, depthOrArrayLayers } = t.params;
+ const shouldError =
+ textureBindingViewDimension === '2d' && depthOrArrayLayers !== 1 ||
+ textureBindingViewDimension === 'cube' && depthOrArrayLayers !== 6;
+ t.expectGPUError(
+ 'validation',
+ () => {
+ const texture = t.device.createTexture({
+ size: [1, 1, depthOrArrayLayers],
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.TEXTURE_BINDING,
+ textureBindingViewDimension
+ }); // MAINTENANCE_TODO: remove cast once textureBindingViewDimension is added to IDL
+ t.trackForCleanup(texture);
+ },
+ shouldError
+ );
+});
+
+g.test('format_reinterpretation').
+desc(
+ `
+ Tests that you can not request different view formats when creating a texture.
+ For example, rgba8unorm can not be viewed as rgba8unorm-srgb
+ `
+).
+params((u) =>
+u //
+.combine('format', kColorTextureFormats).
+filter(
+ ({ format }) =>
+ !!kTextureFormatInfo[format].baseFormat &&
+ kTextureFormatInfo[format].baseFormat !== format
+)
+).
+beforeAllSubcases((t) => {
+ const info = kTextureFormatInfo[t.params.format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ t.selectDeviceOrSkipTestCase(info.feature);
+}).
+fn((t) => {
+ const { format } = t.params;
+ const info = kTextureFormatInfo[format];
+
+ const formatPairs = [
+ { format, viewFormats: [info.baseFormat] },
+ { format: info.baseFormat, viewFormats: [format] },
+ { format, viewFormats: [format, info.baseFormat] },
+ { format: info.baseFormat, viewFormats: [format, info.baseFormat] }];
+
+ for (const { format, viewFormats } of formatPairs) {
+ t.expectGPUError(
+ 'validation',
+ () => {
+ const texture = t.device.createTexture({
+ size: [info.blockWidth, info.blockHeight],
+ format,
+ viewFormats,
+ usage: GPUTextureUsage.TEXTURE_BINDING
+ });
+ t.trackForCleanup(texture);
+ },
+ true
+ );
+ }
+});
+
+g.test('unsupportedStorageTextureFormats').
+desc(`Tests that you can not create unsupported storage texture formats in compat mode.`).
+params((u) => u.combine('format', kCompatModeUnsupportedStorageTextureFormats)).
+fn((t) => {
+ const { format } = t.params;
+ t.expectGPUError(
+ 'validation',
+ () =>
+ t.device.createTexture({
+ size: [1, 1, 1],
+ format,
+ usage: GPUTextureUsage.STORAGE_BINDING
+ }),
+ true
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/constants.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/constants.js
index b8dbfcd9a4..1a01173428 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/constants.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/constants.js
@@ -59,4 +59,7 @@ export const GPUConst = {
};
export const kMaxUnsignedLongValue = 4294967295;
-export const kMaxUnsignedLongLongValue = Number.MAX_SAFE_INTEGER; \ No newline at end of file
+export const kMaxUnsignedLongLongValue = Number.MAX_SAFE_INTEGER;
+
+export const kInterpolationSampling = ['center', 'centroid', 'sample'];
+export const kInterpolationType = ['perspective', 'linear', 'flat']; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/format_info.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/format_info.js
index 5ba96b741b..d59a73dcdd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/format_info.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/format_info.js
@@ -1,6 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { keysOf } from '../common/util/data_tables.js';import { assert } from '../common/util/util.js';
+**/import { keysOf } from '../common/util/data_tables.js';import { assert, unreachable } from '../common/util/util.js';
import { align } from './util/math.js';
@@ -13,25 +13,26 @@ import { align } from './util/math.js';
* `formatTableWithDefaults`. This ensures keys are never missing, always explicitly `undefined`.
*
* All top-level keys must be defined here, or they won't be exposed at all.
+ * Documentation is also written here; this makes it propagate through to the end types.
*/
const kFormatUniversalDefaults = {
+ /** Texel block width. */
blockWidth: undefined,
+ /** Texel block height. */
blockHeight: undefined,
color: undefined,
depth: undefined,
stencil: undefined,
colorRender: undefined,
+ /** Whether the format can be used in a multisample texture. */
multisample: undefined,
+ /** Optional feature required to use this format, or `undefined` if none. */
feature: undefined,
+ /** The base format for srgb formats. Specified on both srgb and equivalent non-srgb formats. */
baseFormat: undefined,
- sampleType: undefined,
- copySrc: undefined,
- copyDst: undefined,
- bytesPerBlock: undefined,
- renderable: false,
- renderTargetPixelByteCost: undefined,
- renderTargetComponentAlignment: undefined
+ /** @deprecated Use `.color.bytes`, `.depth.bytes`, or `.stencil.bytes`. */
+ bytesPerBlock: undefined
// IMPORTANT:
// Add new top-level keys both here and in TextureFormatInfo_TypeCheck.
@@ -67,382 +68,506 @@ function formatTableWithDefaults({
/** "plain color formats", plus rgb9e5ufloat. */
const kRegularTextureFormatInfo = formatTableWithDefaults({
- defaults: { blockWidth: 1, blockHeight: 1, copySrc: true, copyDst: true },
+ defaults: { blockWidth: 1, blockHeight: 1 },
table: {
// plain, 8 bits per component
r8unorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 1 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
colorRender: { blend: true, resolve: true, byteCost: 1, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r8snorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 1 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r8uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 1 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
colorRender: { blend: false, resolve: false, byteCost: 1, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r8sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: false, bytes: 1 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
colorRender: { blend: false, resolve: false, byteCost: 1, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg8unorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: true, resolve: true, byteCost: 2, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg8snorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg8uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: false, resolve: false, byteCost: 2, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg8sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: false, resolve: false, byteCost: 2, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba8unorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
baseFormat: 'rgba8unorm',
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
'rgba8unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
baseFormat: 'rgba8unorm',
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba8snorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 4
+ },
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba8uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba8sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
bgra8unorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
baseFormat: 'bgra8unorm',
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
'bgra8unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 1 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
baseFormat: 'bgra8unorm',
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
// plain, 16 bits per component
r16uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: false, resolve: false, byteCost: 2, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r16sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: false, resolve: false, byteCost: 2, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r16float: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 2 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
colorRender: { blend: true, resolve: true, byteCost: 2, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg16uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg16sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg16float: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 4, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba16uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba16sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba16float: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 2 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
// plain, 32 bits per component
r32uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: true,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r32sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: true,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
r32float: {
- color: { type: 'unfilterable-float', copySrc: true, copyDst: true, storage: true, bytes: 4 },
+ color: {
+ type: 'unfilterable-float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: true,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 4, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg32uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg32sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg32float: {
- color: { type: 'unfilterable-float', copySrc: true, copyDst: true, storage: true, bytes: 8 },
+ color: {
+ type: 'unfilterable-float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 8
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba32uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: true, bytes: 16 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 16
+ },
colorRender: { blend: false, resolve: false, byteCost: 16, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba32sint: {
- color: { type: 'sint', copySrc: true, copyDst: true, storage: true, bytes: 16 },
+ color: {
+ type: 'sint',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 16
+ },
colorRender: { blend: false, resolve: false, byteCost: 16, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgba32float: {
- color: { type: 'unfilterable-float', copySrc: true, copyDst: true, storage: true, bytes: 16 },
+ color: {
+ type: 'unfilterable-float',
+ copySrc: true,
+ copyDst: true,
+ storage: true,
+ readWriteStorage: false,
+ bytes: 16
+ },
colorRender: { blend: false, resolve: false, byteCost: 16, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
// plain, mixed component width, 32 bits per texel
rgb10a2uint: {
- color: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: false, resolve: false, byteCost: 8, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rgb10a2unorm: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
colorRender: { blend: true, resolve: true, byteCost: 8, alignment: 4 },
- renderable: true,
- get renderTargetComponentAlignment() {return this.colorRender.alignment;},
- get renderTargetPixelByteCost() {return this.colorRender.byteCost;},
multisample: true,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
},
rg11b10ufloat: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
multisample: false,
- get sampleType() {return this.color.type;},
- get bytesPerBlock() {return this.color.bytes;},
- renderTargetPixelByteCost: 8,
- renderTargetComponentAlignment: 4
+ get bytesPerBlock() {return this.color.bytes;}
},
// packed
rgb9e5ufloat: {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 4 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
multisample: false,
- get sampleType() {return this.color.type;},
get bytesPerBlock() {return this.color.bytes;}
}
}
@@ -452,24 +577,39 @@ const kRegularTextureFormatInfo = formatTableWithDefaults({
// because one aspect can be sized and one can be unsized. This should be cleaned up, but is kept
// this way during a migration phase.
const kSizedDepthStencilFormatInfo = formatTableWithDefaults({
- defaults: { blockWidth: 1, blockHeight: 1, multisample: true, copySrc: true, renderable: true },
+ defaults: { blockWidth: 1, blockHeight: 1, multisample: true },
table: {
stencil8: {
- stencil: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 1 },
- sampleType: 'uint',
- copyDst: true,
+ stencil: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
bytesPerBlock: 1
},
depth16unorm: {
- depth: { type: 'depth', copySrc: true, copyDst: true, storage: false, bytes: 2 },
- sampleType: 'depth',
- copyDst: true,
+ depth: {
+ type: 'depth',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 2
+ },
bytesPerBlock: 2
},
depth32float: {
- depth: { type: 'depth', copySrc: true, copyDst: false, storage: false, bytes: 4 },
- sampleType: 'depth',
- copyDst: false,
+ depth: {
+ type: 'depth',
+ copySrc: true,
+ copyDst: false,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
bytesPerBlock: 4
}
}
@@ -478,28 +618,51 @@ const kUnsizedDepthStencilFormatInfo = formatTableWithDefaults({
defaults: { blockWidth: 1, blockHeight: 1, multisample: true },
table: {
depth24plus: {
- depth: { type: 'depth', copySrc: false, copyDst: false, storage: false, bytes: undefined },
- copySrc: false,
- copyDst: false,
- sampleType: 'depth',
- renderable: true
+ depth: {
+ type: 'depth',
+ copySrc: false,
+ copyDst: false,
+ storage: false,
+ readWriteStorage: false,
+ bytes: undefined
+ }
},
'depth24plus-stencil8': {
- depth: { type: 'depth', copySrc: false, copyDst: false, storage: false, bytes: undefined },
- stencil: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 1 },
- copySrc: false,
- copyDst: false,
- sampleType: 'depth',
- renderable: true
+ depth: {
+ type: 'depth',
+ copySrc: false,
+ copyDst: false,
+ storage: false,
+ readWriteStorage: false,
+ bytes: undefined
+ },
+ stencil: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ }
},
'depth32float-stencil8': {
- depth: { type: 'depth', copySrc: true, copyDst: false, storage: false, bytes: 4 },
- stencil: { type: 'uint', copySrc: true, copyDst: true, storage: false, bytes: 1 },
- feature: 'depth32float-stencil8',
- copySrc: false,
- copyDst: false,
- sampleType: 'depth',
- renderable: true
+ depth: {
+ type: 'depth',
+ copySrc: true,
+ copyDst: false,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 4
+ },
+ stencil: {
+ type: 'uint',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 1
+ },
+ feature: 'depth32float-stencil8'
}
}
});
@@ -509,79 +672,174 @@ const kBCTextureFormatInfo = formatTableWithDefaults({
blockWidth: 4,
blockHeight: 4,
multisample: false,
- feature: 'texture-compression-bc',
- sampleType: 'float',
- copySrc: true,
- copyDst: true
+ feature: 'texture-compression-bc'
},
table: {
'bc1-rgba-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'bc1-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc1-rgba-unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'bc1-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc2-rgba-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc2-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc2-rgba-unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc2-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc3-rgba-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc3-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc3-rgba-unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc3-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc4-r-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc4-r-snorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc5-rg-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc5-rg-snorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc6h-rgb-ufloat': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc6h-rgb-float': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'bc7-rgba-unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc7-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'bc7-rgba-unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'bc7-rgba-unorm',
get bytesPerBlock() {return this.color.bytes;}
}
@@ -593,60 +851,127 @@ const kETC2TextureFormatInfo = formatTableWithDefaults({
blockWidth: 4,
blockHeight: 4,
multisample: false,
- feature: 'texture-compression-etc2',
- sampleType: 'float',
- copySrc: true,
- copyDst: true
+ feature: 'texture-compression-etc2'
},
table: {
'etc2-rgb8unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'etc2-rgb8unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'etc2-rgb8unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'etc2-rgb8unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'etc2-rgb8a1unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'etc2-rgb8a1unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'etc2-rgb8a1unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
baseFormat: 'etc2-rgb8a1unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'etc2-rgba8unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'etc2-rgba8unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'etc2-rgba8unorm-srgb': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'etc2-rgba8unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'eac-r11unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'eac-r11snorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 8 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 8
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'eac-rg11unorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
},
'eac-rg11snorm': {
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
get bytesPerBlock() {return this.color.bytes;}
}
}
@@ -655,23 +980,34 @@ const kETC2TextureFormatInfo = formatTableWithDefaults({
const kASTCTextureFormatInfo = formatTableWithDefaults({
defaults: {
multisample: false,
- feature: 'texture-compression-astc',
- sampleType: 'float',
- copySrc: true,
- copyDst: true
+ feature: 'texture-compression-astc'
},
table: {
'astc-4x4-unorm': {
blockWidth: 4,
blockHeight: 4,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-4x4-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-4x4-unorm-srgb': {
blockWidth: 4,
blockHeight: 4,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-4x4-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -679,14 +1015,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-5x4-unorm': {
blockWidth: 5,
blockHeight: 4,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-5x4-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-5x4-unorm-srgb': {
blockWidth: 5,
blockHeight: 4,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-5x4-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -694,14 +1044,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-5x5-unorm': {
blockWidth: 5,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-5x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-5x5-unorm-srgb': {
blockWidth: 5,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-5x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -709,14 +1073,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-6x5-unorm': {
blockWidth: 6,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-6x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-6x5-unorm-srgb': {
blockWidth: 6,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-6x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -724,14 +1102,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-6x6-unorm': {
blockWidth: 6,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-6x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-6x6-unorm-srgb': {
blockWidth: 6,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-6x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -739,14 +1131,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-8x5-unorm': {
blockWidth: 8,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-8x5-unorm-srgb': {
blockWidth: 8,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -754,14 +1160,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-8x6-unorm': {
blockWidth: 8,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-8x6-unorm-srgb': {
blockWidth: 8,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -769,14 +1189,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-8x8-unorm': {
blockWidth: 8,
blockHeight: 8,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x8-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-8x8-unorm-srgb': {
blockWidth: 8,
blockHeight: 8,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-8x8-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -784,14 +1218,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-10x5-unorm': {
blockWidth: 10,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-10x5-unorm-srgb': {
blockWidth: 10,
blockHeight: 5,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x5-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -799,14 +1247,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-10x6-unorm': {
blockWidth: 10,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-10x6-unorm-srgb': {
blockWidth: 10,
blockHeight: 6,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x6-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -814,14 +1276,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-10x8-unorm': {
blockWidth: 10,
blockHeight: 8,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x8-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-10x8-unorm-srgb': {
blockWidth: 10,
blockHeight: 8,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x8-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -829,14 +1305,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-10x10-unorm': {
blockWidth: 10,
blockHeight: 10,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x10-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-10x10-unorm-srgb': {
blockWidth: 10,
blockHeight: 10,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-10x10-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -844,14 +1334,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-12x10-unorm': {
blockWidth: 12,
blockHeight: 10,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-12x10-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-12x10-unorm-srgb': {
blockWidth: 12,
blockHeight: 10,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-12x10-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
@@ -859,14 +1363,28 @@ const kASTCTextureFormatInfo = formatTableWithDefaults({
'astc-12x12-unorm': {
blockWidth: 12,
blockHeight: 12,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-12x12-unorm',
get bytesPerBlock() {return this.color.bytes;}
},
'astc-12x12-unorm-srgb': {
blockWidth: 12,
blockHeight: 12,
- color: { type: 'float', copySrc: true, copyDst: true, storage: false, bytes: 16 },
+ color: {
+ type: 'float',
+ copySrc: true,
+ copyDst: true,
+ storage: false,
+ readWriteStorage: false,
+ bytes: 16
+ },
baseFormat: 'astc-12x12-unorm',
get bytesPerBlock() {return this.color.bytes;}
}
@@ -921,13 +1439,6 @@ export const kAllTextureFormats = keysOf(kAllTextureFormatInfo);
export const kRenderableColorTextureFormats = kRegularTextureFormats.filter(
(v) => kColorTextureFormatInfo[v].colorRender
);
-assert(
- kRenderableColorTextureFormats.every(
- (f) =>
- kAllTextureFormatInfo[f].renderTargetComponentAlignment !== undefined &&
- kAllTextureFormatInfo[f].renderTargetPixelByteCost !== undefined
- )
-);
/** Per-GPUTextureFormat-per-aspect info. */
@@ -940,6 +1451,8 @@ assert(
+
+
/** Per GPUTextureFormat-per-aspect info for color aspects. */
@@ -962,7 +1475,6 @@ assert(
* This is not actually the type of values in kTextureFormatInfo; that type is fully const
* so that it can be narrowed very precisely at usage sites by the compiler.
* This type exists only as a type check on the inferred type of kTextureFormatInfo.
- * Documentation is also written here, but not actually visible to the IDE.
*/
@@ -1009,24 +1521,6 @@ assert(
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
/** Per-GPUTextureFormat info. */
export const kTextureFormatInfo = {
...kRegularTextureFormatInfo,
@@ -1043,10 +1537,6 @@ const kTextureFormatInfo_TypeCheck =
kTextureFormatInfo;
-/** List of all GPUTextureFormat values. */
-// MAINTENANCE_TODO: dedup with kAllTextureFormats
-export const kTextureFormats = keysOf(kAllTextureFormatInfo);
-
/** Valid GPUTextureFormats for `copyExternalImageToTexture`, by spec. */
export const kValidTextureFormatsForCopyE2T = [
'r8unorm',
@@ -1170,6 +1660,35 @@ aspect)
}
/**
+ * @returns the sample type of the specified aspect of the specified format.
+ */
+export function sampleTypeForFormatAndAspect(
+format,
+aspect)
+{
+ const info = kTextureFormatInfo[format];
+ if (info.color) {
+ assert(aspect === 'all', `color format ${format} used with aspect ${aspect}`);
+ return info.color.type;
+ } else if (info.depth && info.stencil) {
+ if (aspect === 'depth-only') {
+ return info.depth.type;
+ } else if (aspect === 'stencil-only') {
+ return info.stencil.type;
+ } else {
+ unreachable(`depth-stencil format ${format} used with aspect ${aspect}`);
+ }
+ } else if (info.depth) {
+ assert(aspect !== 'stencil-only', `depth-only format ${format} used with aspect ${aspect}`);
+ return info.depth.type;
+ } else if (info.stencil) {
+ assert(aspect !== 'depth-only', `stencil-only format ${format} used with aspect ${aspect}`);
+ return info.stencil.type;
+ }
+ unreachable();
+}
+
+/**
* Gets all copyable aspects for copies between texture and buffer for specified depth/stencil format and copy type, by spec.
*/
export function depthStencilFormatCopyableAspects(
@@ -1229,8 +1748,12 @@ format)
*
* This function may need to be generalized to use `baseFormat` from `kTextureFormatInfo`.
*/
-export function viewCompatible(a, b) {
- return a === b || a + '-srgb' === b || b + '-srgb' === a;
+export function viewCompatible(
+compatibilityMode,
+a,
+b)
+{
+ return compatibilityMode ? a === b : a === b || a + '-srgb' === b || b + '-srgb' === a;
}
export function getFeaturesForFormats(
@@ -1250,7 +1773,29 @@ export function isCompressedTextureFormat(format) {
return format in kCompressedTextureFormatInfo;
}
-export const kFeaturesForFormats = getFeaturesForFormats(kTextureFormats);
+export const kCompatModeUnsupportedStorageTextureFormats = [
+'rg32float',
+'rg32sint',
+'rg32uint'];
+
+
+export function isTextureFormatUsableAsStorageFormat(
+format,
+isCompatibilityMode)
+{
+ if (isCompatibilityMode) {
+ if (kCompatModeUnsupportedStorageTextureFormats.indexOf(format) >= 0) {
+ return false;
+ }
+ }
+ return !!kTextureFormatInfo[format].color?.storage;
+}
+
+export function isRegularTextureFormat(format) {
+ return format in kRegularTextureFormatInfo;
+}
+
+export const kFeaturesForFormats = getFeaturesForFormats(kAllTextureFormats);
/**
* Given an array of texture formats return the number of bytes per sample.
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/gpu_test.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/gpu_test.js
index 2b589b9316..0354abdbe7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/gpu_test.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/gpu_test.js
@@ -9,6 +9,7 @@
'../common/framework/fixture.js';
import { globalTestConfig } from '../common/framework/test_config.js';
+import { getGPU } from '../common/util/navigator_gpu.js';
import {
assert,
makeValueTestVariant,
@@ -20,15 +21,22 @@ import {
unreachable } from
'../common/util/util.js';
-import { getDefaultLimits, kQueryTypeInfo } from './capability_info.js';
+import {
+ getDefaultLimits,
+
+ kQueryTypeInfo } from
+
+'./capability_info.js';
+
import {
kTextureFormatInfo,
kEncodableTextureFormats,
resolvePerAspectFormat,
- isCompressedTextureFormat } from
+ isCompressedTextureFormat,
+ isTextureFormatUsableAsStorageFormat } from
'./format_info.js';
import { makeBufferWithContents } from './util/buffer.js';
import { checkElementsEqual, checkElementsBetween } from './util/check_contents.js';
@@ -52,7 +60,7 @@ import {
textureContentIsOKByT2B } from
'./util/texture/texture_ok.js';
import { createTextureFromTexelView, createTextureFromTexelViews } from './util/texture.js';
-import { reifyOrigin3D } from './util/unions.js';
+import { reifyExtent3D, reifyOrigin3D } from './util/unions.js';
const devicePool = new DevicePool();
@@ -245,6 +253,56 @@ export class GPUTestSubcaseBatchState extends SubcaseBatchState {
}
}
}
+
+ skipIfTextureFormatNotUsableAsStorageTexture(...formats) {
+ for (const format of formats) {
+ if (format && !isTextureFormatUsableAsStorageFormat(format, this.isCompatibility)) {
+ this.skip(`Texture with ${format} is not usable as a storage texture`);
+ }
+ }
+ }
+
+ /**
+ * Skips test if the given interpolation type or sampling is not supported.
+ */
+ skipIfInterpolationTypeOrSamplingNotSupported({
+ type,
+ sampling
+
+
+
+ }) {
+ if (this.isCompatibility) {
+ this.skipIf(
+ type === 'linear',
+ 'interpolation type linear is not supported in compatibility mode'
+ );
+ this.skipIf(
+ sampling === 'sample',
+ 'interpolation type linear is not supported in compatibility mode'
+ );
+ }
+ }
+
+ /** Skips this test case if the `langFeature` is *not* supported. */
+ skipIfLanguageFeatureNotSupported(langFeature) {
+ if (!this.hasLanguageFeature(langFeature)) {
+ this.skip(`WGSL language feature '${langFeature}' is not supported`);
+ }
+ }
+
+ /** Skips this test case if the `langFeature` is supported. */
+ skipIfLanguageFeatureSupported(langFeature) {
+ if (this.hasLanguageFeature(langFeature)) {
+ this.skip(`WGSL language feature '${langFeature}' is supported`);
+ }
+ }
+
+ /** returns true iff the `langFeature` is supported */
+ hasLanguageFeature(langFeature) {
+ const lf = getGPU(this.recorder).wgslLanguageFeatures;
+ return lf !== undefined && lf.has(langFeature);
+ }
}
/**
@@ -420,6 +478,26 @@ export class GPUTestBase extends Fixture {
}
}
+ /** Skips this test case if the `langFeature` is *not* supported. */
+ skipIfLanguageFeatureNotSupported(langFeature) {
+ if (!this.hasLanguageFeature(langFeature)) {
+ this.skip(`WGSL language feature '${langFeature}' is not supported`);
+ }
+ }
+
+ /** Skips this test case if the `langFeature` is supported. */
+ skipIfLanguageFeatureSupported(langFeature) {
+ if (this.hasLanguageFeature(langFeature)) {
+ this.skip(`WGSL language feature '${langFeature}' is supported`);
+ }
+ }
+
+ /** returns true iff the `langFeature` is supported */
+ hasLanguageFeature(langFeature) {
+ const lf = getGPU(this.rec).wgslLanguageFeatures;
+ return lf !== undefined && lf.has(langFeature);
+ }
+
/**
* Expect a GPUBuffer's contents to pass the provided check.
*
@@ -730,7 +808,8 @@ export class GPUTestBase extends Fixture {
slice = 0,
layout,
generateWarningOnly = false,
- checkElementsBetweenFn = (act, [a, b]) => checkElementsBetween(act, [(i) => a[i], (i) => b[i]])
+ checkElementsBetweenFn = (act, [a, b]) =>
+ checkElementsBetween(act, [(i) => a[i], (i) => b[i]])
@@ -757,24 +836,32 @@ export class GPUTestBase extends Fixture {
/**
* Emulate a texture to buffer copy by using a compute shader
- * to load texture value of a single pixel and write to a storage buffer.
- * For sample count == 1, the buffer contains only one value of the sample.
- * For sample count > 1, the buffer contains (N = sampleCount) values sorted
+ * to load texture values of a subregion of a 2d texture and write to a storage buffer.
+ * For sample count == 1, the buffer contains extent[0] * extent[1] of the sample.
+ * For sample count > 1, the buffer contains extent[0] * extent[1] * (N = sampleCount) values sorted
* in the order of their sample index [0, sampleCount - 1]
*
* This can be useful when the texture to buffer copy is not available to the texture format
* e.g. (depth24plus), or when the texture is multisampled.
*
- * MAINTENANCE_TODO: extend to read multiple pixels with given origin and size.
+ * MAINTENANCE_TODO: extend texture dimension to 1d and 3d.
*
* @returns storage buffer containing the copied value from the texture.
*/
- copySinglePixelTextureToBufferUsingComputePass(
+ copy2DTextureToBufferUsingComputePass(
type,
componentCount,
textureView,
- sampleCount)
+ sampleCount = 1,
+ extent_ = [1, 1, 1],
+ origin_ = [0, 0, 0])
{
+ const origin = reifyOrigin3D(origin_);
+ const extent = reifyExtent3D(extent_);
+ const width = extent.width;
+ const height = extent.height;
+ const kWorkgroupSizeX = 8;
+ const kWorkgroupSizeY = 8;
const textureSrcCode =
sampleCount === 1 ?
`@group(0) @binding(0) var src: texture_2d<${type}>;` :
@@ -787,13 +874,24 @@ export class GPUTestBase extends Fixture {
${textureSrcCode}
@group(0) @binding(1) var<storage, read_write> dst : Buffer;
- @compute @workgroup_size(1) fn main() {
- var coord = vec2<i32>(0, 0);
- for (var sampleIndex = 0; sampleIndex < ${sampleCount};
+ struct Params {
+ origin: vec2u,
+ extent: vec2u,
+ };
+ @group(0) @binding(2) var<uniform> params : Params;
+
+ @compute @workgroup_size(${kWorkgroupSizeX}, ${kWorkgroupSizeY}, 1) fn main(@builtin(global_invocation_id) id : vec3u) {
+ let boundary = params.origin + params.extent;
+ let coord = params.origin + id.xy;
+ if (any(coord >= boundary)) {
+ return;
+ }
+ let offset = (id.x + id.y * params.extent.x) * ${componentCount} * ${sampleCount};
+ for (var sampleIndex = 0u; sampleIndex < ${sampleCount};
sampleIndex = sampleIndex + 1) {
- let o = sampleIndex * ${componentCount};
- let v = textureLoad(src, coord, sampleIndex);
- for (var component = 0; component < ${componentCount}; component = component + 1) {
+ let o = offset + sampleIndex * ${componentCount};
+ let v = textureLoad(src, coord.xy, sampleIndex);
+ for (var component = 0u; component < ${componentCount}; component = component + 1) {
dst.data[o + component] = v[component];
}
}
@@ -810,11 +908,16 @@ export class GPUTestBase extends Fixture {
});
const storageBuffer = this.device.createBuffer({
- size: sampleCount * type.size * componentCount,
+ size: sampleCount * type.size * componentCount * width * height,
usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST | GPUBufferUsage.COPY_SRC
});
this.trackForCleanup(storageBuffer);
+ const uniformBuffer = this.makeBufferWithContents(
+ new Uint32Array([origin.x, origin.y, width, height]),
+ GPUBufferUsage.UNIFORM
+ );
+
const uniformBindGroup = this.device.createBindGroup({
layout: computePipeline.getBindGroupLayout(0),
entries: [
@@ -827,6 +930,12 @@ export class GPUTestBase extends Fixture {
resource: {
buffer: storageBuffer
}
+ },
+ {
+ binding: 2,
+ resource: {
+ buffer: uniformBuffer
+ }
}]
});
@@ -835,7 +944,11 @@ export class GPUTestBase extends Fixture {
const pass = encoder.beginComputePass();
pass.setPipeline(computePipeline);
pass.setBindGroup(0, uniformBindGroup);
- pass.dispatchWorkgroups(1);
+ pass.dispatchWorkgroups(
+ Math.floor((width + kWorkgroupSizeX - 1) / kWorkgroupSizeX),
+ Math.floor((height + kWorkgroupSizeY - 1) / kWorkgroupSizeY),
+ 1
+ );
pass.end();
this.device.queue.submit([encoder.finish()]);
@@ -1081,11 +1194,17 @@ export class GPUTest extends GPUTestBase {
this.mismatchedProvider = await this.sharedState.acquireMismatchedProvider();
}
+ /** GPUAdapter that the device was created from. */
+ get adapter() {
+ assert(this.provider !== undefined, 'internal error: DeviceProvider missing');
+ return this.provider.adapter;
+ }
+
/**
* GPUDevice for the test to use.
*/
get device() {
- assert(this.provider !== undefined, 'internal error: GPUDevice missing?');
+ assert(this.provider !== undefined, 'internal error: DeviceProvider missing');
return this.provider.device;
}
@@ -1241,13 +1360,30 @@ export class GPUTest extends GPUTestBase {
+
+
const s_deviceToResourcesMap = new WeakMap();
/**
* Gets a (cached) pipeline to render a texture to an rgba8unorm texture
*/
-function getPipelineToRenderTextureToRGB8UnormTexture(device) {
+function getPipelineToRenderTextureToRGB8UnormTexture(
+device,
+texture,
+isCompatibility)
+{
if (!s_deviceToResourcesMap.has(device)) {
+ s_deviceToResourcesMap.set(device, {
+ pipelineByPipelineType: new Map()
+ });
+ }
+
+ const { pipelineByPipelineType } = s_deviceToResourcesMap.get(device);
+ const pipelineType =
+ isCompatibility && texture.depthOrArrayLayers > 1 ? '2d-array' : '2d';
+ if (!pipelineByPipelineType.get(pipelineType)) {
+ const [textureType, layerCode] =
+ pipelineType === '2d' ? ['texture_2d', ''] : ['texture_2d_array', ', uni.baseArrayLayer'];
const module = device.createShaderModule({
code: `
struct VSOutput {
@@ -1255,6 +1391,10 @@ function getPipelineToRenderTextureToRGB8UnormTexture(device) {
@location(0) texcoord: vec2f,
};
+ struct Uniforms {
+ baseArrayLayer: u32,
+ };
+
@vertex fn vs(
@builtin(vertex_index) vertexIndex : u32
) -> VSOutput {
@@ -1275,10 +1415,11 @@ function getPipelineToRenderTextureToRGB8UnormTexture(device) {
}
@group(0) @binding(0) var ourSampler: sampler;
- @group(0) @binding(1) var ourTexture: texture_2d<f32>;
+ @group(0) @binding(1) var ourTexture: ${textureType}<f32>;
+ @group(0) @binding(2) var<uniform> uni: Uniforms;
@fragment fn fs(fsInput: VSOutput) -> @location(0) vec4f {
- return textureSample(ourTexture, ourSampler, fsInput.texcoord);
+ return textureSample(ourTexture, ourSampler, fsInput.texcoord${layerCode});
}
`
});
@@ -1294,10 +1435,10 @@ function getPipelineToRenderTextureToRGB8UnormTexture(device) {
targets: [{ format: 'rgba8unorm' }]
}
});
- s_deviceToResourcesMap.set(device, { pipeline });
+ pipelineByPipelineType.set(pipelineType, pipeline);
}
- const { pipeline } = s_deviceToResourcesMap.get(device);
- return pipeline;
+ const pipeline = pipelineByPipelineType.get(pipelineType);
+ return { pipelineType, pipeline };
}
@@ -1441,7 +1582,11 @@ Base)
// Render every layer of both textures at mipLevel to an rgba8unorm texture
// that matches the size of the mipLevel. After each render, copy the
// result to a buffer and expect the results from both textures to match.
- const pipeline = getPipelineToRenderTextureToRGB8UnormTexture(this.device);
+ const { pipelineType, pipeline } = getPipelineToRenderTextureToRGB8UnormTexture(
+ this.device,
+ actualTexture,
+ this.isCompatibility
+ );
const readbackPromisesPerTexturePerLayer = [actualTexture, expectedTexture].map(
(texture, ndx) => {
const attachmentSize = virtualMipSize('2d', [texture.width, texture.height, 1], mipLevel);
@@ -1457,24 +1602,45 @@ Base)
const numLayers = texture.depthOrArrayLayers;
const readbackPromisesPerLayer = [];
+
+ const uniformBuffer = this.device.createBuffer({
+ size: 4,
+ usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST
+ });
+ this.trackForCleanup(uniformBuffer);
+
for (let layer = 0; layer < numLayers; ++layer) {
+ const viewDescriptor = {
+ baseMipLevel: mipLevel,
+ mipLevelCount: 1,
+ ...(!this.isCompatibility && {
+ baseArrayLayer: layer,
+ arrayLayerCount: 1
+ }),
+ dimension: pipelineType
+ };
+
const bindGroup = this.device.createBindGroup({
layout: pipeline.getBindGroupLayout(0),
entries: [
{ binding: 0, resource: sampler },
{
binding: 1,
- resource: texture.createView({
- baseMipLevel: mipLevel,
- mipLevelCount: 1,
- baseArrayLayer: layer,
- arrayLayerCount: 1,
- dimension: '2d'
- })
- }]
+ resource: texture.createView(viewDescriptor)
+ },
+ ...(pipelineType === '2d-array' ?
+ [
+ {
+ binding: 2,
+ resource: { buffer: uniformBuffer }
+ }] :
+
+ [])]
});
+ this.device.queue.writeBuffer(uniformBuffer, 0, new Uint32Array([layer]));
+
const encoder = this.device.createCommandEncoder();
const pass = encoder.beginRenderPass({
colorAttachments: [
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/constructable.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/constructable.spec.js
new file mode 100644
index 0000000000..7104b2e812
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/idl/constructable.spec.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Test that constructable WebGPU objects are actually constructable.
+`;import { makeTestGroup } from './../../common/framework/test_group.js';
+import { IDLTest } from './idl_test.js';
+
+export const g = makeTestGroup(IDLTest);
+
+g.test('gpu_errors').
+desc('tests that GPUErrors are constructable').
+params((u) =>
+u.combine('errorType', [
+'GPUInternalError',
+'GPUOutOfMemoryError',
+'GPUValidationError']
+)
+).
+fn((t) => {
+ const { errorType } = t.params;
+ const Ctor = globalThis[errorType];
+ const msg = 'this is a test';
+ const error = new Ctor(msg);
+ t.expect(error.message === msg);
+});
+
+const pipelineErrorOptions = [
+{ reason: 'validation' },
+{ reason: 'internal' }];
+
+
+g.test('pipeline_errors').
+desc('tests that GPUPipelineError is constructable').
+params((u) =>
+u //
+.combine('msg', [undefined, 'some msg']).
+combine('options', pipelineErrorOptions)
+).
+fn((t) => {
+ const { msg, options } = t.params;
+ const error = new GPUPipelineError(msg, options);
+ const expectedMsg = msg || '';
+ t.expect(error.message === expectedMsg);
+ t.expect(error.reason === options.reason);
+});
+
+g.test('uncaptured_error_event').
+desc('tests that GPUUncapturedErrorEvent is constructable').
+fn((t) => {
+ const msg = 'this is a test';
+ const error = new GPUValidationError(msg);
+ const event = new GPUUncapturedErrorEvent('uncapturedError', { error });
+ t.expect(event.error === error);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/listing.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/listing.js
index 7632956de5..147b11bccf 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/listing.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/listing.js
@@ -1,4 +1,4 @@
-// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings.ts.
+// AUTO-GENERATED - DO NOT EDIT. See src/common/tools/gen_listings_and_webworkers.ts.
export const listing = [
{
@@ -254,6 +254,15 @@ export const listing = [
"operation",
"memory_sync",
"texture",
+ "readonly_depth_stencil"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "operation",
+ "memory_sync",
+ "texture",
"same_subresource"
]
},
@@ -380,6 +389,14 @@ export const listing = [
"api",
"operation",
"rendering",
+ "3d_texture_slices"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "operation",
+ "rendering",
"basic"
]
},
@@ -499,6 +516,22 @@ export const listing = [
"file": [
"api",
"operation",
+ "storage_texture",
+ "read_only"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "operation",
+ "storage_texture",
+ "read_write"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "operation",
"texture_view",
"format_reinterpretation"
]
@@ -647,6 +680,15 @@ export const listing = [
"validation",
"capability_checks",
"limits",
+ "maxBindGroupsPlusVertexBuffers"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "validation",
+ "capability_checks",
+ "limits",
"maxBindingsPerBindGroup"
]
},
@@ -1446,6 +1488,14 @@ export const listing = [
"api",
"validation",
"render_pipeline",
+ "resource_compatibility"
+ ]
+ },
+ {
+ "file": [
+ "api",
+ "validation",
+ "render_pipeline",
"shader_module"
]
},
@@ -1582,6 +1632,22 @@ export const listing = [
"compat",
"api",
"validation",
+ "createBindGroup"
+ ]
+ },
+ {
+ "file": [
+ "compat",
+ "api",
+ "validation",
+ "createBindGroupLayout"
+ ]
+ },
+ {
+ "file": [
+ "compat",
+ "api",
+ "validation",
"encoding",
"cmds",
"copyTextureToBuffer"
@@ -1593,6 +1659,16 @@ export const listing = [
"api",
"validation",
"encoding",
+ "cmds",
+ "copyTextureToTexture"
+ ]
+ },
+ {
+ "file": [
+ "compat",
+ "api",
+ "validation",
+ "encoding",
"programmable",
"pipeline_bind_group_compat"
]
@@ -1603,6 +1679,15 @@ export const listing = [
"api",
"validation",
"render_pipeline",
+ "depth_stencil_state"
+ ]
+ },
+ {
+ "file": [
+ "compat",
+ "api",
+ "validation",
+ "render_pipeline",
"fragment_state"
]
},
@@ -1662,6 +1747,17 @@ export const listing = [
},
{
"file": [
+ "idl",
+ "constructable"
+ ]
+ },
+ {
+ "file": [
+ "print_environment"
+ ]
+ },
+ {
+ "file": [
"shader"
],
"readme": "Tests for full coverage of the shaders that can be passed to WebGPU."
@@ -1678,6 +1774,56 @@ export const listing = [
"shader",
"execution",
"expression",
+ "access",
+ "array",
+ "index"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "access",
+ "matrix",
+ "index"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "access",
+ "structure",
+ "index"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "access",
+ "vector",
+ "components"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "access",
+ "vector",
+ "index"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
"binary",
"af_addition"
]
@@ -1715,6 +1861,24 @@ export const listing = [
"execution",
"expression",
"binary",
+ "af_matrix_matrix_multiplication"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "binary",
+ "af_matrix_scalar_multiplication"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "binary",
"af_matrix_subtraction"
]
},
@@ -1724,6 +1888,15 @@ export const listing = [
"execution",
"expression",
"binary",
+ "af_matrix_vector_multiplication"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "binary",
"af_multiplication"
]
},
@@ -1751,6 +1924,24 @@ export const listing = [
"execution",
"expression",
"binary",
+ "ai_arithmetic"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "binary",
+ "ai_comparison"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "binary",
"bitwise"
]
},
@@ -2374,6 +2565,26 @@ export const listing = [
"expression",
"call",
"builtin",
+ "dot4I8Packed"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
+ "dot4U8Packed"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
"dpdx"
]
},
@@ -2724,6 +2935,46 @@ export const listing = [
"expression",
"call",
"builtin",
+ "pack4xI8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xI8Clamp"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xU8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xU8Clamp"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
"pow"
]
},
@@ -2904,7 +3155,7 @@ export const listing = [
"expression",
"call",
"builtin",
- "textureDimension"
+ "textureDimensions"
]
},
{
@@ -3114,6 +3365,26 @@ export const listing = [
"expression",
"call",
"builtin",
+ "unpack4xI8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
+ "unpack4xU8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "builtin",
"workgroupBarrier"
]
},
@@ -3122,6 +3393,61 @@ export const listing = [
"shader",
"execution",
"expression",
+ "call",
+ "builtin",
+ "workgroupUniformLoad"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "call",
+ "user",
+ "ptr_params"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "constructor",
+ "non_zero"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "constructor",
+ "zero_value"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "precedence"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "unary",
+ "address_of_and_indirection"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
"unary",
"af_arithmetic"
]
@@ -3141,6 +3467,33 @@ export const listing = [
"execution",
"expression",
"unary",
+ "ai_arithmetic"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "unary",
+ "ai_assignment"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "unary",
+ "ai_complement"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "expression",
+ "unary",
"bool_conversion"
]
},
@@ -3325,6 +3678,13 @@ export const listing = [
"file": [
"shader",
"execution",
+ "memory_layout"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
"memory_model",
"adjacent"
]
@@ -3358,6 +3718,14 @@ export const listing = [
"shader",
"execution",
"memory_model",
+ "texture_intra_invocation_coherence"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "memory_model",
"weak"
]
},
@@ -3395,6 +3763,14 @@ export const listing = [
"shader",
"execution",
"shader_io",
+ "fragment_builtins"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "shader_io",
"shared_structs"
]
},
@@ -3402,6 +3778,22 @@ export const listing = [
"file": [
"shader",
"execution",
+ "shader_io",
+ "user_io"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "shader_io",
+ "workgroup_size"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
"shadow"
]
},
@@ -3409,6 +3801,29 @@ export const listing = [
"file": [
"shader",
"execution",
+ "stage"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "statement",
+ "compound"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
+ "statement",
+ "discard"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "execution",
"statement",
"increment_decrement"
]
@@ -3447,6 +3862,14 @@ export const listing = [
"shader",
"validation",
"decl",
+ "compound_statement"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "decl",
"const"
]
},
@@ -3455,6 +3878,22 @@ export const listing = [
"shader",
"validation",
"decl",
+ "context_dependent_resolution"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "decl",
+ "let"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "decl",
"override"
]
},
@@ -3471,6 +3910,14 @@ export const listing = [
"shader",
"validation",
"decl",
+ "var"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "decl",
"var_access_mode"
]
},
@@ -3489,6 +3936,24 @@ export const listing = [
"validation",
"expression",
"binary",
+ "add_sub_mul"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "binary",
+ "and_or_xor"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "binary",
"bitwise_shift"
]
},
@@ -3497,6 +3962,24 @@ export const listing = [
"shader",
"validation",
"expression",
+ "binary",
+ "comparison"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "binary",
+ "div_rem"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
"call",
"builtin",
"abs"
@@ -3529,6 +4012,36 @@ export const listing = [
"expression",
"call",
"builtin",
+ "all"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "any"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "arrayLength"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"asin"
]
},
@@ -3589,6 +4102,16 @@ export const listing = [
"expression",
"call",
"builtin",
+ "barriers"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"bitcast"
]
},
@@ -3639,6 +4162,46 @@ export const listing = [
"expression",
"call",
"builtin",
+ "countLeadingZeros"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "countOneBits"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "countTrailingZeros"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "cross"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"degrees"
]
},
@@ -3649,6 +4212,56 @@ export const listing = [
"expression",
"call",
"builtin",
+ "derivatives"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "determinant"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "distance"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "dot4I8Packed"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "dot4U8Packed"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"exp"
]
},
@@ -3669,6 +4282,86 @@ export const listing = [
"expression",
"call",
"builtin",
+ "extractBits"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "faceForward"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "firstLeadingBit"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "firstTrailingBit"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "floor"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "fract"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "frexp"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "insertBits"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"inverseSqrt"
]
},
@@ -3709,6 +4402,26 @@ export const listing = [
"expression",
"call",
"builtin",
+ "max"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "min"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"modf"
]
},
@@ -3719,6 +4432,106 @@ export const listing = [
"expression",
"call",
"builtin",
+ "normalize"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack2x16snorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack2x16unorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4x8snorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4x8unorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xI8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xI8Clamp"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xU8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "pack4xU8Clamp"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "quantizeToF16"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"radians"
]
},
@@ -3729,6 +4542,26 @@ export const listing = [
"expression",
"call",
"builtin",
+ "reflect"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "reverseBits"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"round"
]
},
@@ -3749,6 +4582,16 @@ export const listing = [
"expression",
"call",
"builtin",
+ "select"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"sign"
]
},
@@ -3779,6 +4622,16 @@ export const listing = [
"expression",
"call",
"builtin",
+ "smoothstep"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"sqrt"
]
},
@@ -3789,6 +4642,16 @@ export const listing = [
"expression",
"call",
"builtin",
+ "step"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
"tan"
]
},
@@ -3796,6 +4659,284 @@ export const listing = [
"file": [
"shader",
"validation",
+ "expression",
+ "call",
+ "builtin",
+ "tanh"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureGather"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureGatherCompare"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureLoad"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSample"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleBaseClampToEdge"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleBias"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleCompare"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleCompareLevel"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleGrad"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureSampleLevel"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "textureStore"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "trunc"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack2x16float"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack2x16snorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack2x16unorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack4x8snorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack4x8unorm"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack4xI8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "unpack4xU8"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "call",
+ "builtin",
+ "workgroupUniformLoad"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "overload_resolution"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "precedence"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "unary",
+ "address_of_and_indirection"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "unary",
+ "arithmetic_negation"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "unary",
+ "bitwise_complement"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "expression",
+ "unary",
+ "logical_negation"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "extension",
+ "pointer_composite_access"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "extension",
+ "readonly_and_readwrite_storage_textures"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
"functions",
"alias_analysis"
]
@@ -3853,6 +4994,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "break_if"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"builtin"
]
},
@@ -3869,6 +5018,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "compound"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"const"
]
},
@@ -3885,6 +5042,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "continuing"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"diagnostic"
]
},
@@ -3941,6 +5106,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "requires"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"semicolon"
]
},
@@ -3949,6 +5122,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "shadow_builtins"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"source"
]
},
@@ -3957,6 +5138,14 @@ export const listing = [
"shader",
"validation",
"parse",
+ "statement_behavior"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "parse",
"unary_ops"
]
},
@@ -4037,6 +5226,14 @@ export const listing = [
"shader",
"validation",
"shader_io",
+ "layout_constraints"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "shader_io",
"locations"
]
},
@@ -4069,6 +5266,30 @@ export const listing = [
"shader",
"validation",
"types",
+ "array"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "types",
+ "atomics"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "types",
+ "matrix"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "types",
"struct"
]
},
@@ -4077,6 +5298,14 @@ export const listing = [
"shader",
"validation",
"types",
+ "textures"
+ ]
+ },
+ {
+ "file": [
+ "shader",
+ "validation",
+ "types",
"vector"
]
},
@@ -4092,6 +5321,13 @@ export const listing = [
"file": [
"util",
"texture",
+ "color_space_conversions"
+ ]
+ },
+ {
+ "file": [
+ "util",
+ "texture",
"texel_data"
]
},
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/multisample_info.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/multisample_info.js
new file mode 100644
index 0000000000..5473d4ca74
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/multisample_info.js
@@ -0,0 +1,75 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/ /* Data used for multisample tests */const samplePositionToFragmentPosition = (pos) =>
+pos.map((v) => v / 16);
+const samplePositionsToFragmentPositions = (
+positions) =>
+positions.map(samplePositionToFragmentPosition);
+
+// These are sample positions based on a 16x16 grid with 0,0 at the top left.
+// For example 8,8 would be a fragment coordinate of 0.5, 0.5
+// Based on: https://learn.microsoft.com/en-us/windows/win32/api/d3d11/ne-d3d11-d3d11_standard_multisample_quality_levels
+const kMultisamplingTables = new Map([
+[1, samplePositionsToFragmentPositions([[8, 8]])],
+[
+2,
+samplePositionsToFragmentPositions([
+[4, 4],
+[12, 12]]
+)],
+
+[
+4,
+samplePositionsToFragmentPositions([
+[6, 2],
+[14, 6],
+[2, 10],
+[10, 14]]
+)],
+
+[
+8,
+samplePositionsToFragmentPositions([
+[9, 5],
+[7, 11],
+[13, 9],
+[5, 3],
+[3, 13],
+[1, 7],
+[11, 15],
+[15, 1]]
+)],
+
+[
+16,
+samplePositionsToFragmentPositions([
+[9, 9],
+[7, 5],
+[5, 10],
+[12, 7],
+
+[3, 6],
+[10, 13],
+[13, 11],
+[11, 3],
+
+[6, 14],
+[8, 1],
+[4, 2],
+[2, 12],
+
+[0, 8],
+[15, 4],
+[14, 15],
+[1, 0]]
+)]]
+
+);
+
+/**
+ * For a given sampleCount returns an array of 2d fragment offsets
+ * where each offset is between 0 and 1.
+ */
+export function getMultisampleFragmentOffsets(sampleCount) {
+ return kMultisamplingTables.get(sampleCount);
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/print_environment.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/print_environment.spec.js
new file mode 100644
index 0000000000..83ef03afd3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/print_environment.spec.js
@@ -0,0 +1,70 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+
+Examples of writing CTS tests with various features.
+
+Start here when looking for examples of basic framework usage.
+`;import { getResourcePath } from '../common/framework/resources.js';
+import { globalTestConfig } from '../common/framework/test_config.js';
+import { makeTestGroup } from '../common/framework/test_group.js';
+import { getDefaultRequestAdapterOptions } from '../common/util/navigator_gpu.js';
+
+import { GPUTest } from './gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/** console.log is disallowed by WPT. Work around it when we're not in WPT. */
+function consoleLogIfNotWPT(x) {
+ if (!('step_timeout' in globalThis)) {
+ const cons = console;
+ cons.log(x);
+ }
+}
+
+g.test('info').
+desc(
+ `Test which prints what global scope (e.g. worker type) it's running in.
+Typically, tests will check for the presence of the feature they need (like HTMLCanvasElement)
+and skip if it's not available.
+
+Run this test under various configurations to see different results
+(Window, worker scopes, Node, etc.)
+
+NOTE: If your test runtime elides logs when tests pass, you won't see the prints from this test
+in the logs. On non-WPT runtimes, it will also print to the console with console.log.
+WPT disallows console.log and doesn't support logs on passing tests, so this does nothing on WPT.`
+).
+fn(async (t) => {
+ const adapterInfo = await t.adapter.requestAdapterInfo();
+
+ const info = JSON.stringify(
+ {
+ globalScope: Object.getPrototypeOf(globalThis).constructor.name,
+ globalTestConfig,
+ baseResourcePath: getResourcePath(''),
+ defaultRequestAdapterOptions: getDefaultRequestAdapterOptions(),
+ adapterInfo,
+ userAgent: navigator.userAgent
+ },
+ // Flatten objects with prototype chains into plain objects, using `for..in`. (Otherwise,
+ // properties from the prototype chain will be ignored and things will print as `{}`.)
+ (_key, value) => {
+ if (value === undefined || value === null) return null;
+ if (typeof value !== 'object') return value;
+
+ const valueObj = value;
+ return Object.fromEntries(
+ function* () {
+ for (const key in valueObj) {
+ yield [key, valueObj[key]];
+ }
+ }()
+ );
+ },
+ 2
+ );
+
+ t.info(info);
+ consoleLogIfNotWPT(info);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/array/index.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/array/index.spec.js
new file mode 100644
index 0000000000..8a1c0c2fc0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/array/index.spec.js
@@ -0,0 +1,354 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for array indexing expressions
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import {
+ False,
+ True,
+ Type,
+
+ array,
+ f32,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { align } from '../../../../../util/math.js';
+
+import { allInputSources, basicExpressionBuilder, run } from '../../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('concrete_scalar').
+specURL('https://www.w3.org/TR/WGSL/#array-access-expr').
+desc(`Test indexing of an array of concrete scalars`).
+params((u) =>
+u.
+combine(
+ 'inputSource',
+ // 'uniform' address space requires array stride to be multiple of 16 bytes
+ allInputSources.filter((s) => s !== 'uniform')
+).
+combine('elementType', ['i32', 'u32', 'f32', 'f16']).
+combine('indexType', ['i32', 'u32'])
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const cases = [
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(10),
+ /* 1 */elementType.create(11),
+ /* 2 */elementType.create(12)
+ ),
+ indexType.create(0)],
+
+ expected: elementType.create(10)
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(20),
+ /* 1 */elementType.create(21),
+ /* 2 */elementType.create(22)
+ ),
+ indexType.create(1)],
+
+ expected: elementType.create(21)
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(30),
+ /* 1 */elementType.create(31),
+ /* 2 */elementType.create(32)
+ ),
+ indexType.create(2)],
+
+ expected: elementType.create(32)
+ }];
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}]`),
+ [Type.array(3, elementType), indexType],
+ elementType,
+ t.params,
+ cases
+ );
+});
+
+g.test('bool').
+specURL('https://www.w3.org/TR/WGSL/#array-access-expr').
+desc(`Test indexing of an array of booleans`).
+params((u) =>
+u.
+combine(
+ 'inputSource',
+ // 'uniform' address space requires array stride to be multiple of 16 bytes
+ allInputSources.filter((s) => s !== 'uniform')
+).
+combine('indexType', ['i32', 'u32'])
+).
+fn(async (t) => {
+ const indexType = Type[t.params.indexType];
+ const cases = [
+ {
+ input: [array(True, False, True), indexType.create(0)],
+ expected: True
+ },
+ {
+ input: [array(True, False, True), indexType.create(1)],
+ expected: False
+ },
+ {
+ input: [array(True, False, True), indexType.create(2)],
+ expected: True
+ }];
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}]`),
+ [Type.array(3, Type.bool), indexType],
+ Type.bool,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_scalar').
+specURL('https://www.w3.org/TR/WGSL/#array-access-expr').
+desc(`Test indexing of an array of scalars`).
+params((u) =>
+u.
+combine('elementType', ['abstract-int', 'abstract-float']).
+combine('indexType', ['i32', 'u32'])
+).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const cases = [
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(0x10_00000000),
+ /* 1 */elementType.create(0x11_00000000),
+ /* 2 */elementType.create(0x12_00000000)
+ ),
+ indexType.create(0)],
+
+ expected: f32(0x10)
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(0x20_00000000),
+ /* 1 */elementType.create(0x21_00000000),
+ /* 2 */elementType.create(0x22_00000000)
+ ),
+ indexType.create(1)],
+
+ expected: f32(0x21)
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create(0x30_00000000),
+ /* 1 */elementType.create(0x31_00000000),
+ /* 2 */elementType.create(0x32_00000000)
+ ),
+ indexType.create(2)],
+
+ expected: f32(0x32)
+ }];
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}] / 0x100000000`),
+ [Type.array(3, elementType), indexType],
+ Type.f32,
+ { inputSource: 'const' },
+ cases
+ );
+});
+
+g.test('runtime_sized').
+specURL('https://www.w3.org/TR/WGSL/#array-access-expr').
+desc(`Test indexing of a runtime sized array`).
+params((u) =>
+u.
+combine('elementType', [
+'i32',
+'u32',
+'f32',
+'f16',
+'vec4i',
+'vec2u',
+'vec3f',
+'vec2h']
+).
+combine('indexType', ['i32', 'u32'])
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(Type[t.params.elementType]).kind === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const elementType = Type[t.params.elementType];
+ const valueArrayType = Type.array(0, elementType);
+ const indexType = Type[t.params.indexType];
+ const indexArrayType = Type.array(0, indexType);
+
+ const wgsl = `
+${scalarTypeOf(elementType).kind === 'f16' ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read> input_values : ${valueArrayType};
+@group(0) @binding(1) var<storage, read> input_indices : ${indexArrayType};
+@group(0) @binding(2) var<storage, read_write> output : ${valueArrayType};
+
+@compute @workgroup_size(16)
+fn main(@builtin(local_invocation_index) invocation_id : u32) {
+ let index = input_indices[invocation_id];
+ output[invocation_id] = input_values[index];
+}
+`;
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({ code: wgsl }),
+ entryPoint: 'main'
+ }
+ });
+
+ const values = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53];
+ const indices = [9, 0, 14, 10, 12, 4, 15, 3, 5, 6, 11, 2, 8, 13, 7, 1];
+
+ const inputValues = values.map((i) => elementType.create(i));
+ const inputIndices = indices.map((i) => indexType.create(i));
+ const expected = indices.map((i) => inputValues[i]);
+
+ const bufferSize = (arr) => {
+ let offset = 0;
+ let alignment = 0;
+ for (const value of arr) {
+ alignment = Math.max(alignment, value.type.alignment);
+ offset = align(offset, value.type.alignment) + value.type.size;
+ }
+ return align(offset, alignment);
+ };
+
+ const toArray = (arr) => {
+ const array = new Uint8Array(bufferSize(arr));
+ let offset = 0;
+ for (const value of arr) {
+ offset = align(offset, value.type.alignment);
+ value.copyTo(array, offset);
+ offset += value.type.size;
+ }
+ return array;
+ };
+
+ const inputArrayBuffer = t.makeBufferWithContents(toArray(inputValues), GPUBufferUsage.STORAGE);
+ const inputIndexBuffer = t.makeBufferWithContents(
+ toArray(inputIndices),
+ GPUBufferUsage.STORAGE
+ );
+ const outputBuffer = t.device.createBuffer({
+ size: bufferSize(expected),
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ { binding: 0, resource: { buffer: inputArrayBuffer } },
+ { binding: 1, resource: { buffer: inputIndexBuffer } },
+ { binding: 2, resource: { buffer: outputBuffer } }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesEqual(outputBuffer, toArray(expected));
+});
+
+g.test('vector').
+specURL('https://www.w3.org/TR/WGSL/#array-access-expr').
+desc(`Test indexing of an array of vectors`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+expand('elementType', (t) =>
+t.inputSource === 'uniform' ?
+['vec4i', 'vec4u', 'vec4f'] :
+['vec4i', 'vec4u', 'vec4f', 'vec4h']
+).
+combine('indexType', ['i32', 'u32'])
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'vec4h') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const cases = [
+ {
+ input: [
+ array(
+ /* 0 */elementType.create([0x10, 0x11, 0x12, 0x13]),
+ /* 1 */elementType.create([0x14, 0x15, 0x16, 0x17]),
+ /* 2 */elementType.create([0x18, 0x19, 0x1a, 0x1b])
+ ),
+ indexType.create(0)],
+
+ expected: elementType.create([0x10, 0x11, 0x12, 0x13])
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create([0x20, 0x21, 0x22, 0x23]),
+ /* 1 */elementType.create([0x24, 0x25, 0x26, 0x27]),
+ /* 2 */elementType.create([0x28, 0x29, 0x2a, 0x2b])
+ ),
+ indexType.create(1)],
+
+ expected: elementType.create([0x24, 0x25, 0x26, 0x27])
+ },
+ {
+ input: [
+ array(
+ /* 0 */elementType.create([0x30, 0x31, 0x32, 0x33]),
+ /* 1 */elementType.create([0x34, 0x35, 0x36, 0x37]),
+ /* 2 */elementType.create([0x38, 0x39, 0x3a, 0x3b])
+ ),
+ indexType.create(2)],
+
+ expected: elementType.create([0x38, 0x39, 0x3a, 0x3b])
+ }];
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}]`),
+ [Type.array(3, elementType), indexType],
+ elementType,
+ t.params,
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/matrix/index.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/matrix/index.spec.js
new file mode 100644
index 0000000000..0f44f06305
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/matrix/index.spec.js
@@ -0,0 +1,200 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for matrix indexing expressions
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import {
+ MatrixValue,
+
+ Type,
+ abstractFloat,
+ f32,
+ vec } from
+'../../../../../util/conversion.js';
+
+import { allInputSources, basicExpressionBuilder, run } from '../../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('concrete_float_column').
+specURL('https://www.w3.org/TR/WGSL/#matrix-access-expr').
+desc(`Test indexing a column vector from a concrete matrix`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('elementType', ['f32', 'f16']).
+combine('indexType', ['i32', 'u32']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, elementType);
+ const columnType = Type.vec(t.params.rows, elementType);
+ const elements = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ const column = [];
+ for (let r = 0; r < t.params.rows; r++) {
+ column.push(elementType.create((c + 1) * 10 + (r + 1)));
+ }
+ elements.push(column);
+ }
+ const vector = new MatrixValue(elements);
+ const cases = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ cases.push({
+ input: [vector, indexType.create(c)],
+ expected: vec(...elements[c])
+ });
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}]`),
+ [matrixType, indexType],
+ columnType,
+ t.params,
+ cases
+ );
+});
+
+g.test('concrete_float_element').
+specURL('https://www.w3.org/TR/WGSL/#matrix-access-expr').
+desc(`Test indexing a single element from a concrete matrix`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('elementType', ['f32', 'f16']).
+combine('indexType', ['i32', 'u32']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, elementType);
+ const columnValues = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ const column = [];
+ for (let r = 0; r < t.params.rows; r++) {
+ column.push(elementType.create((c + 1) * 10 + (r + 1)));
+ }
+ columnValues.push(column);
+ }
+ const matrix = new MatrixValue(columnValues);
+ const cases = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ for (let r = 0; r < t.params.rows; r++) {
+ cases.push({
+ input: [matrix, indexType.create(c), indexType.create(r)],
+ expected: columnValues[c][r]
+ });
+ }
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}][${ops[2]}]`),
+ [matrixType, indexType, indexType],
+ elementType,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float_column').
+specURL('https://www.w3.org/TR/WGSL/#matrix-access-expr').
+desc(`Test indexing a column vector from a abstract-float matrix`).
+params((u) =>
+u.
+combine('indexType', ['i32', 'u32']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const indexType = Type[t.params.indexType];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, Type.abstractFloat);
+ const vecfColumnType = Type.vec(t.params.rows, Type.f32);
+ const values = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ const column = [];
+ for (let r = 0; r < t.params.rows; r++) {
+ column.push((c + 1) * 10 + (r + 1));
+ }
+ values.push(column);
+ }
+ const matrix = new MatrixValue(
+ values.map((column) => column.map((v) => abstractFloat(v * 0x100000000)))
+ );
+ const cases = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ cases.push({
+ input: [matrix, indexType.create(c)],
+ expected: vec(...values[c].map((v) => f32(v)))
+ });
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}] / 0x100000000`),
+ [matrixType, indexType],
+ vecfColumnType,
+ { inputSource: 'const' },
+ cases
+ );
+});
+
+g.test('abstract_float_element').
+specURL('https://www.w3.org/TR/WGSL/#matrix-access-expr').
+desc(`Test indexing a single element from a abstract-float matrix`).
+params((u) =>
+u.
+combine('indexType', ['i32', 'u32']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const indexType = Type[t.params.indexType];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, Type.abstractFloat);
+ const values = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ const column = [];
+ for (let r = 0; r < t.params.rows; r++) {
+ column.push((c + 1) * 10 + (r + 1));
+ }
+ values.push(column);
+ }
+ const matrix = new MatrixValue(
+ values.map((column) => column.map((v) => abstractFloat(v * 0x100000000)))
+ );
+ const cases = [];
+ for (let c = 0; c < t.params.columns; c++) {
+ for (let r = 0; r < t.params.rows; r++) {
+ cases.push({
+ input: [matrix, indexType.create(c), indexType.create(r)],
+ expected: f32(values[c][r])
+ });
+ }
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}][${ops[2]}] / 0x100000000`),
+ [matrixType, indexType, indexType],
+ Type.f32,
+ { inputSource: 'const' },
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/structure/index.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/structure/index.spec.js
new file mode 100644
index 0000000000..bf07397364
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/structure/index.spec.js
@@ -0,0 +1,508 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for structure member accessing expressions
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { Type, u32 } from '../../../../../util/conversion.js';
+import { align } from '../../../../../util/math.js';
+import { toComparator } from '../../expectation.js';
+import { structLayout, structStride } from '../../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+const kMemberTypes = [
+['bool'],
+['u32'],
+['vec3f'],
+['i32', 'u32'],
+['i32', 'f16', 'vec4i', 'mat3x2f'],
+['bool', 'u32', 'f16', 'vec3f', 'vec2i'],
+['i32', 'u32', 'f32', 'f16', 'vec3f', 'vec4i']];
+
+
+const kMemberTypesNoBool = kMemberTypes.filter((tys) => !tys.includes('bool'));
+
+async function run(
+t,
+wgsl,
+expected,
+input,
+inputSource)
+{
+ const outputBufferSize = structStride(
+ expected.map((v) => v.type),
+ 'storage_rw'
+ );
+
+ const outputBuffer = t.device.createBuffer({
+ size: outputBufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ });
+
+ const bindGroupEntries = [
+ {
+ binding: 0,
+ resource: { buffer: outputBuffer }
+ }];
+
+
+ if (input !== null) {
+ let inputData;
+ if (input instanceof Array) {
+ const inputTypes = input.map((v) => v.type);
+ const inputBufferSize = structStride(inputTypes, inputSource);
+ inputData = new Uint8Array(inputBufferSize);
+ structLayout(inputTypes, inputSource, (m) => {
+ input[m.index].copyTo(inputData, m.offset);
+ });
+ } else {
+ inputData = new Uint8Array(input);
+ }
+
+ const inputBuffer = t.makeBufferWithContents(
+ inputData,
+ GPUBufferUsage.COPY_SRC | (
+ inputSource === 'uniform' ? GPUBufferUsage.UNIFORM : GPUBufferUsage.STORAGE)
+ );
+
+ bindGroupEntries.push({
+ binding: 1,
+ resource: { buffer: inputBuffer }
+ });
+ }
+
+ // build the shader module
+ const module = t.device.createShaderModule({ code: wgsl });
+
+ // build the pipeline
+ const pipeline = await t.device.createComputePipelineAsync({
+ layout: 'auto',
+ compute: { module, entryPoint: 'main' }
+ });
+
+ // build the bind group
+ const group = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: bindGroupEntries
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, group);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+
+ t.queue.submit([encoder.finish()]);
+
+ const checkExpectation = (outputData) => {
+ // The list of expectation failures
+ const errs = [];
+
+ let offset = 0;
+ for (let i = 0; i < expected.length; i++) {
+ offset = align(offset, expected[i].type.alignment);
+ const got = expected[i].type.read(outputData, offset);
+ const cmp = toComparator(expected[i]).compare(got);
+ if (!cmp.matched) {
+ errs.push(`result ${i}:)
+ returned: ${cmp.got}
+ expected: ${cmp.expected}`);
+ }
+ offset += expected[i].type.size;
+ }
+
+ return errs.length > 0 ? new Error(errs.join('\n\n')) : undefined;
+ };
+
+ t.expectGPUBufferValuesPassCheck(outputBuffer, checkExpectation, {
+ type: Uint8Array,
+ typedLength: outputBufferSize
+ });
+}
+
+g.test('buffer').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a value structure in a storage or uniform buffer`).
+params((u) =>
+u.
+combine('member_types', kMemberTypesNoBool).
+combine('inputSource', ['uniform', 'storage']).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected = values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+@group(0) @binding(1) var<${t.params.inputSource}> input : MyStruct;
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+@workgroup_size(1) @compute
+fn main() {
+ output = input.member_${t.params.member_index};
+}
+`,
+ /* expected */[expected],
+ /* input */values,
+ /* inputSource */t.params.inputSource === 'uniform' ? 'uniform' : 'storage_r'
+ );
+});
+
+g.test('buffer_align').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(
+ `Test accessing of a value structure in a storage buffer that has members using the @align attribute`
+).
+params((u) =>
+u.
+beginSubcases().
+combine('member_index', [0, 1, 2]).
+combine('alignments', [
+[1, 1, 1],
+[4, 4, 4],
+[4, 8, 16],
+[8, 4, 16],
+[8, 16, 4]]
+)
+).
+fn(async (t) => {
+ const memberTypes = ['i32', 'u32', 'f32'];
+ const values = memberTypes.map((ty, i) => Type[ty].create(i));
+ const expected = values[t.params.member_index];
+ const input = new Uint8Array(64);
+ let offset = 4; // pre : i32
+ for (let i = 0; i < 3; i++) {
+ offset = align(offset, t.params.alignments[i]);
+ values[i].copyTo(input, offset);
+ offset += values[i].type.size;
+ }
+ await run(
+ t,
+ `
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+@group(0) @binding(1) var<storage> input : MyStruct;
+
+struct MyStruct {
+ pre : i32,
+ @align(${t.params.alignments[0]}) member_0 : ${memberTypes[0]},
+ @align(${t.params.alignments[1]}) member_1 : ${memberTypes[1]},
+ @align(${t.params.alignments[2]}) member_2 : ${memberTypes[2]},
+ post : i32,
+};
+
+@workgroup_size(1) @compute
+fn main() {
+output = input.member_${t.params.member_index};
+}
+`,
+ /* expected */[expected],
+ /* input */input,
+ /* inputSource */'storage_r'
+ );
+});
+
+g.test('buffer_size').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(
+ `Test accessing of a value structure in a storage buffer that has members using the @size attribute`
+).
+params((u) =>
+u.
+beginSubcases().
+combine('member_index', [0, 1, 2]).
+combine('sizes', [
+[4, 4, 4],
+[4, 8, 16],
+[8, 4, 16],
+[8, 16, 4]]
+)
+).
+fn(async (t) => {
+ const memberTypes = ['i32', 'u32', 'f32'];
+ const values = memberTypes.map((ty, i) => Type[ty].create(i));
+ const expected = values[t.params.member_index];
+ const input = new Uint8Array(64);
+ let offset = 4; // pre : i32
+ for (let i = 0; i < 3; i++) {
+ offset = align(offset, values[i].type.alignment);
+ values[i].copyTo(input, offset);
+ offset += t.params.sizes[i];
+ }
+ await run(
+ t,
+ `
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+@group(0) @binding(1) var<storage> input : MyStruct;
+
+struct MyStruct {
+ pre : i32,
+ @size(${t.params.sizes[0]}) member_0 : ${memberTypes[0]},
+ @size(${t.params.sizes[1]}) member_1 : ${memberTypes[1]},
+ @size(${t.params.sizes[2]}) member_2 : ${memberTypes[2]},
+ post : i32,
+};
+
+@workgroup_size(1) @compute
+fn main() {
+output = input.member_${t.params.member_index};
+}
+`,
+ /* expected */[expected],
+ /* input */input,
+ /* inputSource */'storage_r'
+ );
+});
+
+g.test('buffer_pointer').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a value structure via a pointer to a storage or uniform buffer`).
+params((u) =>
+u.
+combine('member_types', kMemberTypesNoBool).
+combine('inputSource', ['uniform', 'storage']).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected = values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+@group(0) @binding(1) var<${t.params.inputSource}> input : MyStruct;
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+@workgroup_size(1) @compute
+fn main() {
+ let ptr = &input;
+ output = (*ptr).member_${t.params.member_index};
+}
+`,
+ /* expected */[expected],
+ /* input */values,
+ /* inputSource */t.params.inputSource === 'uniform' ? 'uniform' : 'storage_r'
+ );
+});
+
+g.test('let').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a let structure`).
+params((u) =>
+u.
+combine('member_types', kMemberTypes).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected =
+ memberType === Type.bool ?
+ u32(values[t.params.member_index].value === true ? 1 : 0) :
+ values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+@workgroup_size(1) @compute
+fn main() {
+ let s = MyStruct(${values.map((v) => v.wgsl()).join(', ')});
+ let v = s.member_${t.params.member_index};
+ output = ${memberType === Type.bool ? `select(0u, 1u, v)` : 'v'};
+}
+`,
+ /* expected */[expected],
+ /* input */null,
+ /* inputSource */'const'
+ );
+});
+
+g.test('param').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a parameter structure`).
+params((u) =>
+u.
+combine('member_types', kMemberTypes).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected =
+ memberType === Type.bool ?
+ u32(values[t.params.member_index].value === true ? 1 : 0) :
+ values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+fn f(s : MyStruct) -> ${t.params.member_types[t.params.member_index]} {
+ return s.member_${t.params.member_index};
+}
+
+@workgroup_size(1) @compute
+fn main() {
+ let v = f(MyStruct(${values.map((v) => v.wgsl()).join(', ')}));
+ output = ${memberType === Type.bool ? `select(0u, 1u, v)` : 'v'};
+}
+`,
+ /* expected */[expected],
+ /* input */null,
+ /* inputSource */'const'
+ );
+});
+
+g.test('const').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a const value structure`).
+params((u) =>
+u.
+combine('member_types', kMemberTypes).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected =
+ memberType === Type.bool ?
+ u32(values[t.params.member_index].value === true ? 1 : 0) :
+ values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+const S = MyStruct(${values.map((v) => v.wgsl()).join(', ')});
+
+@workgroup_size(1) @compute
+fn main() {
+ let v = S.member_${t.params.member_index};
+ output = ${memberType === Type.bool ? `select(0u, 1u, v)` : 'v'};
+}
+`,
+ /* expected */[expected],
+ /* input */null,
+ /* inputSource */'const'
+ );
+});
+
+g.test('const_nested').
+specURL('https://www.w3.org/TR/WGSL/#struct-access-expr').
+desc(`Test accessing of a const value structure nested in another structure`).
+params((u) =>
+u.
+combine('member_types', kMemberTypes).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+ const expected =
+ memberType === Type.bool ?
+ u32(values[t.params.member_index].value === true ? 1 : 0) :
+ values[t.params.member_index];
+
+ await run(
+ t,
+ `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+@group(0) @binding(0) var<storage, read_write> output : ${expected.type};
+
+struct MyStruct {
+ ${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+
+struct Outer {
+ pre : i32,
+ inner : MyStruct,
+ post : i32,
+}
+
+const S = Outer(10, MyStruct(${values.map((v) => v.wgsl()).join(', ')}), 20);
+
+@workgroup_size(1) @compute
+fn main() {
+ let v = S.inner.member_${t.params.member_index};
+ output = ${memberType === Type.bool ? `select(0u, 1u, v)` : 'v'};
+}
+`,
+ /* expected */[expected],
+ /* input */null,
+ /* inputSource */'const'
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/components.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/components.spec.js
new file mode 100644
index 0000000000..9a62033a25
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/components.spec.js
@@ -0,0 +1,118 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for vector component selection expressions
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { Type, VectorValue, f32 } from '../../../../../util/conversion.js';
+import { allInputSources, basicExpressionBuilder, run } from '../../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/** @returns the full permutation of component indices used to component select a vector of width 'n' */
+function indices(n) {
+ const out = [];
+ for (let width = 1; width < n; width++) {
+ let generate = (swizzle) => {
+ out.push(swizzle);
+ };
+ for (let i = 0; i < width; i++) {
+ const next = generate;
+ generate = (swizzle) => {
+ for (let j = 0; j < width; j++) {
+ next([...swizzle, j]);
+ }
+ };
+ }
+ generate([]);
+ }
+ return out;
+}
+
+g.test('concrete_scalar').
+specURL('https://www.w3.org/TR/WGSL/#vector-access-expr').
+desc(`Test vector component selection of concrete vectors`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('elementType', ['i32', 'u32', 'f32', 'f16', 'bool']).
+combine('width', [2, 3, 4]).
+combine('components', ['rgba', 'xyzw']).
+beginSubcases().
+expand('indices', (u) => indices(u.width))
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elementValues =
+ t.params.elementType === 'bool' ? (i) => i & 1 : (i) => (i + 1) * 10;
+ const elements = [];
+ for (let i = 0; i < t.params.width; i++) {
+ elements.push(elementType.create(elementValues(i)));
+ }
+ const result = (() => {
+ if (t.params.indices.length === 1) {
+ return { type: elementType, value: elementType.create(elementValues(0)) };
+ } else {
+ const vec = Type.vec(t.params.indices.length, elementType);
+ return { type: vec, value: vec.create(t.params.indices.map((i) => elementValues(i))) };
+ }
+ })();
+
+ const components = t.params.indices.map((i) => t.params.components[i]).join('');
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}.${components}`),
+ [vectorType],
+ result.type,
+ t.params,
+ [{ input: [new VectorValue(elements)], expected: result.value }]
+ );
+});
+
+g.test('abstract_scalar').
+specURL('https://www.w3.org/TR/WGSL/#vector-access-expr').
+desc(`Test vector component selection of abstract numeric vectors`).
+params((u) =>
+u.
+combine('elementType', ['abstract-int', 'abstract-float']).
+combine('width', [2, 3, 4]).
+combine('components', ['rgba', 'xyzw']).
+beginSubcases().
+expand('indices', (u) => indices(u.width))
+).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elementValues = (i) => (i + 1) * 0x100000000;
+ const elements = [];
+ for (let i = 0; i < t.params.width; i++) {
+ elements.push(elementType.create(elementValues(i)));
+ }
+ const result = (() => {
+ if (t.params.indices.length === 1) {
+ return { type: Type.f32, value: f32(elementValues(0) / 0x100000000) };
+ } else {
+ const vec = Type.vec(t.params.indices.length, Type.f32);
+ return {
+ type: vec,
+ value: vec.create(t.params.indices.map((i) => elementValues(i) / 0x100000000))
+ };
+ }
+ })();
+
+ const components = t.params.indices.map((i) => t.params.components[i]).join('');
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}.${components} / 0x100000000`),
+ [vectorType],
+ result.type,
+ { inputSource: 'const' },
+ [{ input: [new VectorValue(elements)], expected: result.value }]
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/index.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/index.spec.js
new file mode 100644
index 0000000000..d969f543b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/access/vector/index.spec.js
@@ -0,0 +1,87 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for vector indexing expressions
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { Type, VectorValue, f32 } from '../../../../../util/conversion.js';
+
+import { allInputSources, basicExpressionBuilder, run } from '../../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('concrete_scalar').
+specURL('https://www.w3.org/TR/WGSL/#vector-access-expr').
+desc(`Test indexing of concrete vectors`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('elementType', ['i32', 'u32', 'f32', 'f16', 'bool']).
+combine('indexType', ['i32', 'u32']).
+combine('width', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.elementType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elements = [];
+ for (let i = 0; i < t.params.width; i++) {
+ if (t.params.elementType === 'bool') {
+ elements.push(elementType.create(i & 1));
+ } else {
+ elements.push(elementType.create((i + 1) * 10));
+ }
+ }
+ const vector = new VectorValue(elements);
+ const cases = [];
+ for (let i = 0; i < t.params.width; i++) {
+ cases.push({ input: [vector, indexType.create(i)], expected: elements[i] });
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}]`),
+ [vectorType, indexType],
+ elementType,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_scalar').
+specURL('https://www.w3.org/TR/WGSL/#vector-access-expr').
+desc(`Test indexing of abstract numeric vectors`).
+params((u) =>
+u.
+combine('elementType', ['abstract-int', 'abstract-float']).
+combine('indexType', ['i32', 'u32']).
+combine('width', [2, 3, 4])
+).
+fn(async (t) => {
+ const elementType = Type[t.params.elementType];
+ const indexType = Type[t.params.indexType];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elements = [];
+ for (let i = 0; i < t.params.width; i++) {
+ elements.push(elementType.create((i + 1) * 0x100000000));
+ }
+ const vector = new VectorValue(elements);
+ const cases = [];
+ for (let i = 0; i < t.params.width; i++) {
+ cases.push({ input: [vector, indexType.create(i)], expected: f32(i + 1) });
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${ops[0]}[${ops[1]}] / 0x100000000`),
+ [vectorType, indexType],
+ Type.f32,
+ { inputSource: 'const' },
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.cache.js
new file mode 100644
index 0000000000..402fd1add8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.cache.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const additionVectorScalarInterval = (v, s) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.additionInterval(e, s)));
+};
+
+const additionScalarVectorInterval = (s, v) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.additionInterval(s, e)));
+};
+
+const scalar_cases = {
+ ['scalar']: () => {
+ return FP.abstract.generateScalarPairToIntervalCases(
+ sparseScalarF64Range(),
+ sparseScalarF64Range(),
+ 'finite',
+ FP.abstract.additionInterval
+ );
+ }
+};
+
+const vector_scalar_cases = [2, 3, 4].
+map((dim) => ({
+ [`vec${dim}_scalar`]: () => {
+ return FP.abstract.generateVectorScalarToVectorCases(
+ sparseVectorF64Range(dim),
+ sparseScalarF64Range(),
+ 'finite',
+ additionVectorScalarInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+map((dim) => ({
+ [`scalar_vec${dim}`]: () => {
+ return FP.abstract.generateScalarVectorToVectorCases(
+ sparseScalarF64Range(),
+ sparseVectorF64Range(dim),
+ 'finite',
+ additionScalarVectorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_addition', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.spec.js
index c03c90b773..75fc6688c2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_addition.spec.js
@@ -1,70 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for non-matrix AbstractFloat addition expression
+Execution Tests for non-matrix abstract-float addition expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF64Range, sparseVectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
-
-const additionVectorScalarInterval = (v, s) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.additionInterval(e, s)));
-};
-
-const additionScalarVectorInterval = (s, v) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.additionInterval(s, e)));
-};
+import { d } from './af_addition.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = {
- ['scalar']: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.additionInterval
- );
- }
-};
-
-const vector_scalar_cases = [2, 3, 4].
-map((dim) => ({
- [`vec${dim}_scalar`]: () => {
- return FP.abstract.generateVectorScalarToVectorCases(
- sparseVectorF64Range(dim),
- sparseF64Range(),
- 'finite',
- additionVectorScalarInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-map((dim) => ({
- [`scalar_vec${dim}`]: () => {
- return FP.abstract.generateScalarVectorToVectorCases(
- sparseF64Range(),
- sparseVectorF64Range(dim),
- 'finite',
- additionScalarVectorInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_addition', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -78,9 +25,9 @@ fn(async (t) => {
const cases = await d.get('scalar');
await run(
t,
- abstractBinary('+'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('+'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -101,9 +48,9 @@ fn(async (t) => {
const cases = await d.get('scalar'); // Using vectorize to generate vector cases based on scalar cases
await run(
t,
- abstractBinary('+'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('+'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -123,9 +70,9 @@ fn(async (t) => {
const cases = await d.get(`vec${dim}_scalar`);
await run(
t,
- abstractBinary('+'),
- [TypeVec(dim, TypeAbstractFloat), TypeAbstractFloat],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('+'),
+ [Type.vec(dim, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
@@ -145,9 +92,9 @@ fn(async (t) => {
const cases = await d.get(`scalar_vec${dim}`);
await run(
t,
- abstractBinary('+'),
- [TypeAbstractFloat, TypeVec(dim, TypeAbstractFloat)],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('+'),
+ [Type.abstractFloat, Type.vec(dim, Type.abstractFloat)],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.cache.js
new file mode 100644
index 0000000000..382c8f59dd
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.cache.js
@@ -0,0 +1,90 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../util/compare.js';import { abstractFloat, bool } from '../../../../util/conversion.js';import { flushSubnormalNumberF64, vectorF64Range } from '../../../../util/math.js';
+
+import { makeCaseCache } from '../case_cache.js';
+
+/**
+ * @returns a test case for the provided left hand & right hand values and truth function.
+ * Handles quantization and subnormals.
+ */
+function makeCase(
+lhs,
+rhs,
+truthFunc)
+{
+ // Subnormal float values may be flushed at any time.
+ // https://www.w3.org/TR/WGSL/#floating-point-evaluation
+ const af_lhs = abstractFloat(lhs);
+ const af_rhs = abstractFloat(rhs);
+ const lhs_options = new Set([af_lhs, abstractFloat(flushSubnormalNumberF64(lhs))]);
+ const rhs_options = new Set([af_rhs, abstractFloat(flushSubnormalNumberF64(rhs))]);
+ const expected = [];
+ lhs_options.forEach((l) => {
+ rhs_options.forEach((r) => {
+ const result = bool(truthFunc(l, r));
+ if (!expected.includes(result)) {
+ expected.push(result);
+ }
+ });
+ });
+
+ return { input: [af_lhs, af_rhs], expected: anyOf(...expected) };
+}
+
+export const d = makeCaseCache('binary/af_logical', {
+ equals: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value === rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ not_equals: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value !== rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_than: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value < rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_equals: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value <= rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_than: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value > rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_equals: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value >= rhs.value;
+ };
+
+ return vectorF64Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.spec.js
index 3d80b3ec6d..3b1033a26e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_comparison.spec.js
@@ -1,110 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for the AbstractFloat comparison operations
+Execution Tests for the abstract-float comparison operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { anyOf } from '../../../../util/compare.js';
-import {
- abstractFloat,
- bool,
-
- TypeAbstractFloat,
- TypeBool } from
-'../../../../util/conversion.js';
-import { flushSubnormalNumberF64, vectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './af_comparison.cache.js';
import { binary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-/**
- * @returns a test case for the provided left hand & right hand values and truth function.
- * Handles quantization and subnormals.
- */
-function makeCase(
-lhs,
-rhs,
-truthFunc)
-{
- // Subnormal float values may be flushed at any time.
- // https://www.w3.org/TR/WGSL/#floating-point-evaluation
- const af_lhs = abstractFloat(lhs);
- const af_rhs = abstractFloat(rhs);
- const lhs_options = new Set([af_lhs, abstractFloat(flushSubnormalNumberF64(lhs))]);
- const rhs_options = new Set([af_rhs, abstractFloat(flushSubnormalNumberF64(rhs))]);
- const expected = [];
- lhs_options.forEach((l) => {
- rhs_options.forEach((r) => {
- const result = bool(truthFunc(l, r));
- if (!expected.includes(result)) {
- expected.push(result);
- }
- });
- });
-
- return { input: [af_lhs, af_rhs], expected: anyOf(...expected) };
-}
-
-export const d = makeCaseCache('binary/af_logical', {
- equals: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value === rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- not_equals: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value !== rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_than: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value < rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_equals: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value <= rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_than: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value > rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_equals: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value >= rhs.value;
- };
-
- return vectorF64Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- }
-});
-
g.test('equals').
specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
desc(
@@ -120,7 +27,14 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('equals');
- await run(t, binary('=='), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(
+ t,
+ binary('=='),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.bool,
+ t.params,
+ cases
+ );
});
g.test('not_equals').
@@ -138,7 +52,14 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('not_equals');
- await run(t, binary('!='), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(
+ t,
+ binary('!='),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.bool,
+ t.params,
+ cases
+ );
});
g.test('less_than').
@@ -156,7 +77,7 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('less_than');
- await run(t, binary('<'), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(t, binary('<'), [Type.abstractFloat, Type.abstractFloat], Type.bool, t.params, cases);
});
g.test('less_equals').
@@ -174,7 +95,14 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('less_equals');
- await run(t, binary('<='), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(
+ t,
+ binary('<='),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.bool,
+ t.params,
+ cases
+ );
});
g.test('greater_than').
@@ -192,7 +120,7 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('greater_than');
- await run(t, binary('>'), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(t, binary('>'), [Type.abstractFloat, Type.abstractFloat], Type.bool, t.params, cases);
});
g.test('greater_equals').
@@ -210,5 +138,12 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('greater_equals');
- await run(t, binary('>='), [TypeAbstractFloat, TypeAbstractFloat], TypeBool, t.params, cases);
+ await run(
+ t,
+ binary('>='),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.bool,
+ t.params,
+ cases
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.cache.js
new file mode 100644
index 0000000000..0eca9ce46c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.cache.js
@@ -0,0 +1,57 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const divisionVectorScalarInterval = (v, s) => {
+ // division has an ulp accuracy, so abstract is only expected to be as accurate as f32
+ return FP.abstract.toVector(v.map((e) => FP.f32.divisionInterval(e, s)));
+};
+
+const divisionScalarVectorInterval = (s, v) => {
+ // division has an ulp accuracy, so abstract is only expected to be as accurate as f32
+ return FP.abstract.toVector(v.map((e) => FP.f32.divisionInterval(s, e)));
+};
+
+const scalar_cases = {
+ ['scalar']: () => {
+ return FP.abstract.generateScalarPairToIntervalCases(
+ sparseScalarF64Range(),
+ sparseScalarF64Range(),
+ 'finite',
+ // division has an ulp accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.divisionInterval
+ );
+ }
+};
+
+const vector_scalar_cases = [2, 3, 4].
+map((dim) => ({
+ [`vec${dim}_scalar`]: () => {
+ return FP.abstract.generateVectorScalarToVectorCases(
+ sparseVectorF64Range(dim),
+ sparseScalarF64Range(),
+ 'finite',
+ divisionVectorScalarInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+map((dim) => ({
+ [`scalar_vec${dim}`]: () => {
+ return FP.abstract.generateScalarVectorToVectorCases(
+ sparseScalarF64Range(),
+ sparseVectorF64Range(dim),
+ 'finite',
+ divisionScalarVectorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_division', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.spec.js
index 34d5d7b836..495706ef5d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_division.spec.js
@@ -1,70 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for non-matrix AbstractFloat division expression
+Execution Tests for non-matrix abstract-float division expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF64Range, sparseVectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
-
-const divisionVectorScalarInterval = (v, s) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.divisionInterval(e, s)));
-};
-
-const divisionScalarVectorInterval = (s, v) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.divisionInterval(s, e)));
-};
+import { d } from './af_division.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = {
- ['scalar']: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.divisionInterval
- );
- }
-};
-
-const vector_scalar_cases = [2, 3, 4].
-map((dim) => ({
- [`vec${dim}_scalar`]: () => {
- return FP.abstract.generateVectorScalarToVectorCases(
- sparseVectorF64Range(dim),
- sparseF64Range(),
- 'finite',
- divisionVectorScalarInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-map((dim) => ({
- [`scalar_vec${dim}`]: () => {
- return FP.abstract.generateScalarVectorToVectorCases(
- sparseF64Range(),
- sparseVectorF64Range(dim),
- 'finite',
- divisionScalarVectorInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_division', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -78,9 +25,9 @@ fn(async (t) => {
const cases = await d.get('scalar');
await run(
t,
- abstractBinary('/'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('/'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -101,9 +48,9 @@ fn(async (t) => {
const cases = await d.get('scalar'); // Using vectorize to generate vector cases based on scalar cases
await run(
t,
- abstractBinary('/'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('/'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -123,9 +70,9 @@ fn(async (t) => {
const cases = await d.get(`vec${dim}_scalar`);
await run(
t,
- abstractBinary('/'),
- [TypeVec(dim, TypeAbstractFloat), TypeAbstractFloat],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('/'),
+ [Type.vec(dim, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
@@ -145,9 +92,9 @@ fn(async (t) => {
const cases = await d.get(`scalar_vec${dim}`);
await run(
t,
- abstractBinary('/'),
- [TypeAbstractFloat, TypeVec(dim, TypeAbstractFloat)],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('/'),
+ [Type.abstractFloat, Type.vec(dim, Type.abstractFloat)],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.cache.js
new file mode 100644
index 0000000000..18fe33ac5e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF64Range } from '../../../../util/math.js';import { selectNCases } from '../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`mat${cols}x${rows}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_addition',
+ 50,
+ FP.abstract.generateMatrixPairToMatrixCases(
+ sparseMatrixF64Range(cols, rows),
+ sparseMatrixF64Range(cols, rows),
+ 'finite',
+ FP.abstract.additionMatrixMatrixInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_matrix_addition', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.spec.js
index 6fc50ca540..132fe4244e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_addition.spec.js
@@ -1,37 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for matrix AbstractFloat addition expressions
+Execution Tests for matrix abstract-float addition expressions
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
+import { d } from './af_matrix_addition.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].map((rows) => ({
- [`mat${cols}x${rows}`]: () => {
- return FP.abstract.generateMatrixPairToMatrixCases(
- sparseMatrixF64Range(cols, rows),
- sparseMatrixF64Range(cols, rows),
- 'finite',
- FP.abstract.additionMatrixMatrixInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_matrix_addition', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -52,9 +32,9 @@ fn(async (t) => {
const cases = await d.get(`mat${cols}x${rows}`);
await run(
t,
- abstractBinary('+'),
- [TypeMat(cols, rows, TypeAbstractFloat), TypeMat(cols, rows, TypeAbstractFloat)],
- TypeMat(cols, rows, TypeAbstractFloat),
+ abstractFloatBinary('+'),
+ [Type.mat(cols, rows, Type.abstractFloat), Type.mat(cols, rows, Type.abstractFloat)],
+ Type.mat(cols, rows, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.cache.js
new file mode 100644
index 0000000000..a313cea992
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.cache.js
@@ -0,0 +1,29 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF64Range } from '../../../../util/math.js';import { selectNCases } from '../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matKxR_matCxK
+const mat_mat_cases = [2, 3, 4].
+flatMap((k) =>
+[2, 3, 4].flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`mat${k}x${rows}_mat${cols}x${k}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_matrix_multiplication',
+ 10,
+ FP.abstract.generateMatrixPairToMatrixCases(
+ sparseMatrixF64Range(k, rows),
+ sparseMatrixF64Range(cols, k),
+ 'finite',
+ // Matrix-matrix multiplication has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.multiplicationMatrixMatrixInterval
+ )
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_matrix_matrix_multiplication', mat_mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.spec.js
new file mode 100644
index 0000000000..27889a2a4f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_matrix_multiplication.spec.js
@@ -0,0 +1,45 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for matrix-matrix AbstractFloat multiplication expression
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { d } from './af_matrix_matrix_multiplication.cache.js';
+import { abstractFloatBinary } from './binary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('matrix_matrix').
+specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
+desc(
+ `
+Expression: x * y, where x is a matrix and y is a matrix
+Accuracy: Correctly rounded
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('common_dim', [2, 3, 4]).
+combine('x_rows', [2, 3, 4]).
+combine('y_cols', [2, 3, 4])
+).
+fn(async (t) => {
+ const x_cols = t.params.common_dim;
+ const x_rows = t.params.x_rows;
+ const y_cols = t.params.y_cols;
+ const y_rows = t.params.common_dim;
+
+ const cases = await d.get(`mat${x_cols}x${x_rows}_mat${y_cols}x${y_rows}`);
+ await run(
+ t,
+ abstractFloatBinary('*'),
+ [Type.mat(x_cols, x_rows, Type.abstractFloat), Type.mat(y_cols, y_rows, Type.abstractFloat)],
+ Type.mat(y_cols, x_rows, Type.abstractFloat),
+ t.params,
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.cache.js
new file mode 100644
index 0000000000..db049bd26b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.cache.js
@@ -0,0 +1,49 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF64Range, sparseScalarF64Range } from '../../../../util/math.js';import { selectNCases } from '../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_scalar
+const mat_scalar_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`mat${cols}x${rows}_scalar`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_scalar_multiplication_mat_scalar',
+ 50,
+ FP.abstract.generateMatrixScalarToMatrixCases(
+ sparseMatrixF64Range(cols, rows),
+ sparseScalarF64Range(),
+ 'finite',
+ FP.abstract.multiplicationMatrixScalarInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: scalar_matCxR
+const scalar_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`scalar_mat${cols}x${rows}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_scalar_multiplication_scalar_mat',
+ 50,
+ FP.abstract.generateScalarMatrixToMatrixCases(
+ sparseScalarF64Range(),
+ sparseMatrixF64Range(cols, rows),
+ 'finite',
+ FP.abstract.multiplicationScalarMatrixInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_matrix_scalar_multiplication', {
+ ...mat_scalar_cases,
+ ...scalar_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.spec.js
new file mode 100644
index 0000000000..78b2b4bcf8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_scalar_multiplication.spec.js
@@ -0,0 +1,69 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for matrix-scalar and scalar-matrix AbstractFloat multiplication expression
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { d } from './af_matrix_scalar_multiplication.cache.js';
+import { abstractFloatBinary } from './binary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('matrix_scalar').
+specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
+desc(
+ `
+Expression: x * y, where x is a matrix and y is a scalar
+Accuracy: Correctly rounded
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const cases = await d.get(`mat${cols}x${rows}_scalar`);
+ await run(
+ t,
+ abstractFloatBinary('*'),
+ [Type.mat(cols, rows, Type.abstractFloat), Type.abstractFloat],
+ Type.mat(cols, rows, Type.abstractFloat),
+ t.params,
+ cases
+ );
+});
+
+g.test('scalar_matrix').
+specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
+desc(
+ `
+Expression: x * y, where x is a scalar and y is a matrix
+Accuracy: Correctly rounded
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const cases = await d.get(`scalar_mat${cols}x${rows}`);
+ await run(
+ t,
+ abstractFloatBinary('*'),
+ [Type.abstractFloat, Type.mat(cols, rows, Type.abstractFloat)],
+ Type.mat(cols, rows, Type.abstractFloat),
+ t.params,
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.cache.js
new file mode 100644
index 0000000000..ca10c79ad1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF64Range } from '../../../../util/math.js';import { selectNCases } from '../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`mat${cols}x${rows}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_subtraction',
+ 50,
+ FP.abstract.generateMatrixPairToMatrixCases(
+ sparseMatrixF64Range(cols, rows),
+ sparseMatrixF64Range(cols, rows),
+ 'finite',
+ FP.abstract.subtractionMatrixMatrixInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_matrix_subtraction', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.spec.js
index 09dbcdf692..5a0f0ff8ff 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_subtraction.spec.js
@@ -1,37 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for matrix AbstractFloat subtraction expression
+Execution Tests for matrix abstract-float subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
+import { d } from './af_matrix_subtraction.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].map((rows) => ({
- [`mat${cols}x${rows}`]: () => {
- return FP.abstract.generateMatrixPairToMatrixCases(
- sparseMatrixF64Range(cols, rows),
- sparseMatrixF64Range(cols, rows),
- 'finite',
- FP.abstract.subtractionMatrixMatrixInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_matrix_subtraction', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -52,9 +32,9 @@ fn(async (t) => {
const cases = await d.get(`mat${cols}x${rows}`);
await run(
t,
- abstractBinary('-'),
- [TypeMat(cols, rows, TypeAbstractFloat), TypeMat(cols, rows, TypeAbstractFloat)],
- TypeMat(cols, rows, TypeAbstractFloat),
+ abstractFloatBinary('-'),
+ [Type.mat(cols, rows, Type.abstractFloat), Type.mat(cols, rows, Type.abstractFloat)],
+ Type.mat(cols, rows, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.cache.js
new file mode 100644
index 0000000000..9f2124652c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.cache.js
@@ -0,0 +1,51 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { selectNCases } from '../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_vecC
+const mat_vec_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`mat${cols}x${rows}_vec${cols}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_vector_multiplication_mat_vec',
+ 50,
+ FP.abstract.generateMatrixVectorToVectorCases(
+ sparseMatrixF64Range(cols, rows),
+ sparseVectorF64Range(cols),
+ 'finite',
+ // Matrix-vector multiplication has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.multiplicationMatrixVectorInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: vecR_matCxR
+const vec_mat_cases = [2, 3, 4].
+flatMap((rows) =>
+[2, 3, 4].map((cols) => ({
+ [`vec${rows}_mat${cols}x${rows}`]: () => {
+ return selectNCases(
+ 'binary/af_matrix_vector_multiplication_vec_mat',
+ 50,
+ FP.abstract.generateVectorMatrixToVectorCases(
+ sparseVectorF64Range(rows),
+ sparseMatrixF64Range(cols, rows),
+ 'finite',
+ // Vector-matrix multiplication has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.multiplicationVectorMatrixInterval
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_matrix_vector_multiplication', {
+ ...mat_vec_cases,
+ ...vec_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.spec.js
new file mode 100644
index 0000000000..9ae17ce0cc
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_matrix_vector_multiplication.spec.js
@@ -0,0 +1,69 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for matrix-vector and vector-matrix AbstractFloat multiplication expression
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { d } from './af_matrix_vector_multiplication.cache.js';
+import { abstractFloatBinary } from './binary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('matrix_vector').
+specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
+desc(
+ `
+Expression: x * y, where x is a matrix and y is a vector
+Accuracy: Correctly rounded
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const cases = await d.get(`mat${cols}x${rows}_vec${cols}`);
+ await run(
+ t,
+ abstractFloatBinary('*'),
+ [Type.mat(cols, rows, Type.abstractFloat), Type.vec(cols, Type.abstractFloat)],
+ Type.vec(rows, Type.abstractFloat),
+ t.params,
+ cases
+ );
+});
+
+g.test('vector_matrix').
+specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
+desc(
+ `
+Expression: x * y, where x is a vector and y is is a matrix
+Accuracy: Correctly rounded
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+fn(async (t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const cases = await d.get(`vec${rows}_mat${cols}x${rows}`);
+ await run(
+ t,
+ abstractFloatBinary('*'),
+ [Type.vec(rows, Type.abstractFloat), Type.mat(cols, rows, Type.abstractFloat)],
+ Type.vec(cols, Type.abstractFloat),
+ t.params,
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.cache.js
new file mode 100644
index 0000000000..210aab7752
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.cache.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const multiplicationVectorScalarInterval = (v, s) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.multiplicationInterval(e, s)));
+};
+
+const multiplicationScalarVectorInterval = (s, v) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.multiplicationInterval(s, e)));
+};
+
+const scalar_cases = {
+ ['scalar']: () => {
+ return FP.abstract.generateScalarPairToIntervalCases(
+ sparseScalarF64Range(),
+ sparseScalarF64Range(),
+ 'finite',
+ FP.abstract.multiplicationInterval
+ );
+ }
+};
+
+const vector_scalar_cases = [2, 3, 4].
+map((dim) => ({
+ [`vec${dim}_scalar`]: () => {
+ return FP.abstract.generateVectorScalarToVectorCases(
+ sparseVectorF64Range(dim),
+ sparseScalarF64Range(),
+ 'finite',
+ multiplicationVectorScalarInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+map((dim) => ({
+ [`scalar_vec${dim}`]: () => {
+ return FP.abstract.generateScalarVectorToVectorCases(
+ sparseScalarF64Range(),
+ sparseVectorF64Range(dim),
+ 'finite',
+ multiplicationScalarVectorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_multiplication', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.spec.js
index 6f8cc65f4e..9a5f7bdb0d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_multiplication.spec.js
@@ -1,70 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for non-matrix AbstractFloat multiplication expression
+Execution Tests for non-matrix abstract-float multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF64Range, sparseVectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
-
-const multiplicationVectorScalarInterval = (v, s) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.multiplicationInterval(e, s)));
-};
-
-const multiplicationScalarVectorInterval = (s, v) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.multiplicationInterval(s, e)));
-};
+import { d } from './af_multiplication.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = {
- ['scalar']: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.multiplicationInterval
- );
- }
-};
-
-const vector_scalar_cases = [2, 3, 4].
-map((dim) => ({
- [`vec${dim}_scalar`]: () => {
- return FP.abstract.generateVectorScalarToVectorCases(
- sparseVectorF64Range(dim),
- sparseF64Range(),
- 'finite',
- multiplicationVectorScalarInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-map((dim) => ({
- [`scalar_vec${dim}`]: () => {
- return FP.abstract.generateScalarVectorToVectorCases(
- sparseF64Range(),
- sparseVectorF64Range(dim),
- 'finite',
- multiplicationScalarVectorInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_multiplication', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -78,9 +25,9 @@ fn(async (t) => {
const cases = await d.get('scalar');
await run(
t,
- abstractBinary('*'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('*'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -101,9 +48,9 @@ fn(async (t) => {
const cases = await d.get('scalar'); // Using vectorize to generate vector cases based on scalar cases
await run(
t,
- abstractBinary('*'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('*'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -123,9 +70,9 @@ fn(async (t) => {
const cases = await d.get(`vec${dim}_scalar`);
await run(
t,
- abstractBinary('*'),
- [TypeVec(dim, TypeAbstractFloat), TypeAbstractFloat],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('*'),
+ [Type.vec(dim, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
@@ -145,9 +92,9 @@ fn(async (t) => {
const cases = await d.get(`scalar_vec${dim}`);
await run(
t,
- abstractBinary('*'),
- [TypeAbstractFloat, TypeVec(dim, TypeAbstractFloat)],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('*'),
+ [Type.abstractFloat, Type.vec(dim, Type.abstractFloat)],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.cache.js
new file mode 100644
index 0000000000..e0e3453553
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.cache.js
@@ -0,0 +1,57 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const remainderVectorScalarInterval = (v, s) => {
+ // remainder has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ return FP.abstract.toVector(v.map((e) => FP.f32.remainderInterval(e, s)));
+};
+
+const remainderScalarVectorInterval = (s, v) => {
+ // remainder has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ return FP.abstract.toVector(v.map((e) => FP.f32.remainderInterval(s, e)));
+};
+
+const scalar_cases = {
+ ['scalar']: () => {
+ return FP.abstract.generateScalarPairToIntervalCases(
+ sparseScalarF64Range(),
+ sparseScalarF64Range(),
+ 'finite',
+ // remainder has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.remainderInterval
+ );
+ }
+};
+
+const vector_scalar_cases = [2, 3, 4].
+map((dim) => ({
+ [`vec${dim}_scalar`]: () => {
+ return FP.abstract.generateVectorScalarToVectorCases(
+ sparseVectorF64Range(dim),
+ sparseScalarF64Range(),
+ 'finite',
+ remainderVectorScalarInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+map((dim) => ({
+ [`scalar_vec${dim}`]: () => {
+ return FP.abstract.generateScalarVectorToVectorCases(
+ sparseScalarF64Range(),
+ sparseVectorF64Range(dim),
+ 'finite',
+ remainderScalarVectorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_remainder', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.spec.js
index cbb45f45c6..7cbeda971c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_remainder.spec.js
@@ -4,67 +4,14 @@
Execution Tests for non-matrix abstract float remainder expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF64Range, sparseVectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
-
-const remainderVectorScalarInterval = (v, s) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.remainderInterval(e, s)));
-};
-
-const remainderScalarVectorInterval = (s, v) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.remainderInterval(s, e)));
-};
+import { d } from './af_remainder.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = {
- ['scalar']: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.remainderInterval
- );
- }
-};
-
-const vector_scalar_cases = [2, 3, 4].
-map((dim) => ({
- [`vec${dim}_scalar`]: () => {
- return FP.abstract.generateVectorScalarToVectorCases(
- sparseVectorF64Range(dim),
- sparseF64Range(),
- 'finite',
- remainderVectorScalarInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-map((dim) => ({
- [`scalar_vec${dim}`]: () => {
- return FP.abstract.generateScalarVectorToVectorCases(
- sparseF64Range(),
- sparseVectorF64Range(dim),
- 'finite',
- remainderScalarVectorInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_remainder', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -78,9 +25,9 @@ fn(async (t) => {
const cases = await d.get('scalar');
await run(
t,
- abstractBinary('%'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('%'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -101,9 +48,9 @@ fn(async (t) => {
const cases = await d.get('scalar'); // Using vectorize to generate vector cases based on scalar cases
await run(
t,
- abstractBinary('%'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('%'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -123,9 +70,9 @@ fn(async (t) => {
const cases = await d.get(`vec${dim}_scalar`);
await run(
t,
- abstractBinary('%'),
- [TypeVec(dim, TypeAbstractFloat), TypeAbstractFloat],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('%'),
+ [Type.vec(dim, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
@@ -145,9 +92,9 @@ fn(async (t) => {
const cases = await d.get(`scalar_vec${dim}`);
await run(
t,
- abstractBinary('%'),
- [TypeAbstractFloat, TypeVec(dim, TypeAbstractFloat)],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('%'),
+ [Type.abstractFloat, Type.vec(dim, Type.abstractFloat)],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.cache.js
new file mode 100644
index 0000000000..ea2adc302f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.cache.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF64Range, sparseVectorF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const subtractionVectorScalarInterval = (v, s) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.subtractionInterval(e, s)));
+};
+
+const subtractionScalarVectorInterval = (s, v) => {
+ return FP.abstract.toVector(v.map((e) => FP.abstract.subtractionInterval(s, e)));
+};
+
+const scalar_cases = {
+ ['scalar']: () => {
+ return FP.abstract.generateScalarPairToIntervalCases(
+ sparseScalarF64Range(),
+ sparseScalarF64Range(),
+ 'finite',
+ FP.abstract.subtractionInterval
+ );
+ }
+};
+
+const vector_scalar_cases = [2, 3, 4].
+map((dim) => ({
+ [`vec${dim}_scalar`]: () => {
+ return FP.abstract.generateVectorScalarToVectorCases(
+ sparseVectorF64Range(dim),
+ sparseScalarF64Range(),
+ 'finite',
+ subtractionVectorScalarInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+map((dim) => ({
+ [`scalar_vec${dim}`]: () => {
+ return FP.abstract.generateScalarVectorToVectorCases(
+ sparseScalarF64Range(),
+ sparseVectorF64Range(dim),
+ 'finite',
+ subtractionScalarVectorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/af_subtraction', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.spec.js
index 0782cf61be..a3cdd89f21 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/af_subtraction.spec.js
@@ -1,70 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for non-matrix AbstractFloat subtraction expression
+Execution Tests for non-matrix abstract-float subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF64Range, sparseVectorF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractBinary } from './binary.js';
-
-const subtractionVectorScalarInterval = (v, s) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.subtractionInterval(e, s)));
-};
-
-const subtractionScalarVectorInterval = (s, v) => {
- return FP.abstract.toVector(v.map((e) => FP.abstract.subtractionInterval(s, e)));
-};
+import { d } from './af_subtraction.cache.js';
+import { abstractFloatBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = {
- ['scalar']: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.subtractionInterval
- );
- }
-};
-
-const vector_scalar_cases = [2, 3, 4].
-map((dim) => ({
- [`vec${dim}_scalar`]: () => {
- return FP.abstract.generateVectorScalarToVectorCases(
- sparseVectorF64Range(dim),
- sparseF64Range(),
- 'finite',
- subtractionVectorScalarInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-map((dim) => ({
- [`scalar_vec${dim}`]: () => {
- return FP.abstract.generateScalarVectorToVectorCases(
- sparseF64Range(),
- sparseVectorF64Range(dim),
- 'finite',
- subtractionScalarVectorInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/af_subtraction', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -78,9 +25,9 @@ fn(async (t) => {
const cases = await d.get('scalar');
await run(
t,
- abstractBinary('-'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('-'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -101,9 +48,9 @@ fn(async (t) => {
const cases = await d.get('scalar'); // Using vectorize to generate vector cases based on scalar cases
await run(
t,
- abstractBinary('-'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBinary('-'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -123,9 +70,9 @@ fn(async (t) => {
const cases = await d.get(`vec${dim}_scalar`);
await run(
t,
- abstractBinary('-'),
- [TypeVec(dim, TypeAbstractFloat), TypeAbstractFloat],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('-'),
+ [Type.vec(dim, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
@@ -145,9 +92,9 @@ fn(async (t) => {
const cases = await d.get(`scalar_vec${dim}`);
await run(
t,
- abstractBinary('-'),
- [TypeAbstractFloat, TypeVec(dim, TypeAbstractFloat)],
- TypeVec(dim, TypeAbstractFloat),
+ abstractFloatBinary('-'),
+ [Type.abstractFloat, Type.vec(dim, Type.abstractFloat)],
+ Type.vec(dim, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.cache.js
new file mode 100644
index 0000000000..af9ec7ac62
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.cache.js
@@ -0,0 +1,145 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../util/constants.js';import { sparseI64Range, vectorI64Range } from '../../../../util/math.js';import {
+ generateBinaryToI64Cases,
+ generateI64VectorBinaryToVectorCases,
+ generateVectorI64BinaryToVectorCases } from
+'../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+function ai_add(x, y) {
+ const result = x + y;
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+function ai_div(x, y) {
+ if (y === 0n) return undefined;
+ if (x === kValue.i64.negative.min && y === -1n) return undefined;
+ const result = x / y;
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+function ai_mul(x, y) {
+ const result = x * y;
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+function ai_rem(x, y) {
+ if (y === 0n) return undefined;
+ if (x === kValue.i64.negative.min && y === -1n) return undefined;
+ const result = x % y;
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+function ai_sub(x, y) {
+ const result = x - y;
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+export const d = makeCaseCache('binary/ai_arithmetic', {
+ addition: () => {
+ return generateBinaryToI64Cases(sparseI64Range(), sparseI64Range(), ai_add);
+ },
+ addition_scalar_vector2: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(2), ai_add);
+ },
+ addition_scalar_vector3: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(3), ai_add);
+ },
+ addition_scalar_vector4: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(4), ai_add);
+ },
+ addition_vector2_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(2), sparseI64Range(), ai_add);
+ },
+ addition_vector3_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(3), sparseI64Range(), ai_add);
+ },
+ addition_vector4_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(4), sparseI64Range(), ai_add);
+ },
+ division: () => {
+ return generateBinaryToI64Cases(sparseI64Range(), sparseI64Range(), ai_div);
+ },
+ division_scalar_vector2: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(2), ai_div);
+ },
+ division_scalar_vector3: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(3), ai_div);
+ },
+ division_scalar_vector4: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(4), ai_div);
+ },
+ division_vector2_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(2), sparseI64Range(), ai_div);
+ },
+ division_vector3_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(3), sparseI64Range(), ai_div);
+ },
+ division_vector4_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(4), sparseI64Range(), ai_div);
+ },
+ multiplication: () => {
+ return generateBinaryToI64Cases(sparseI64Range(), sparseI64Range(), ai_mul);
+ },
+ multiplication_scalar_vector2: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(2), ai_mul);
+ },
+ multiplication_scalar_vector3: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(3), ai_mul);
+ },
+ multiplication_scalar_vector4: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(4), ai_mul);
+ },
+ multiplication_vector2_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(2), sparseI64Range(), ai_mul);
+ },
+ multiplication_vector3_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(3), sparseI64Range(), ai_mul);
+ },
+ multiplication_vector4_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(4), sparseI64Range(), ai_mul);
+ },
+ remainder: () => {
+ return generateBinaryToI64Cases(sparseI64Range(), sparseI64Range(), ai_rem);
+ },
+ remainder_scalar_vector2: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(2), ai_rem);
+ },
+ remainder_scalar_vector3: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(3), ai_rem);
+ },
+ remainder_scalar_vector4: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(4), ai_rem);
+ },
+ remainder_vector2_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(2), sparseI64Range(), ai_rem);
+ },
+ remainder_vector3_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(3), sparseI64Range(), ai_rem);
+ },
+ remainder_vector4_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(4), sparseI64Range(), ai_rem);
+ },
+ subtraction: () => {
+ return generateBinaryToI64Cases(sparseI64Range(), sparseI64Range(), ai_sub);
+ },
+ subtraction_scalar_vector2: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(2), ai_sub);
+ },
+ subtraction_scalar_vector3: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(3), ai_sub);
+ },
+ subtraction_scalar_vector4: () => {
+ return generateI64VectorBinaryToVectorCases(sparseI64Range(), vectorI64Range(4), ai_sub);
+ },
+ subtraction_vector2_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(2), sparseI64Range(), ai_sub);
+ },
+ subtraction_vector3_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(3), sparseI64Range(), ai_sub);
+ },
+ subtraction_vector4_scalar: () => {
+ return generateVectorI64BinaryToVectorCases(vectorI64Range(4), sparseI64Range(), ai_sub);
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.spec.js
new file mode 100644
index 0000000000..ae85bd2d6f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_arithmetic.spec.js
@@ -0,0 +1,303 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for the abstract int arithmetic binary expression operations
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { d } from './ai_arithmetic.cache.js';
+import { abstractIntBinary } from './binary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('addition').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x + y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('addition');
+ await run(
+ t,
+ abstractIntBinary('+'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('addition_scalar_vector').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x + y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_rhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_rhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`addition_scalar_vector${vec_size}`);
+ await run(t, abstractIntBinary('+'), [Type.abstractInt, vec_type], vec_type, t.params, cases);
+});
+
+g.test('addition_vector_scalar').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x + y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_lhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_lhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`addition_vector${vec_size}_scalar`);
+ await run(t, abstractIntBinary('+'), [vec_type, Type.abstractInt], vec_type, t.params, cases);
+});
+
+g.test('division').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x / y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('division');
+ await run(
+ t,
+ abstractIntBinary('/'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('division_scalar_vector').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x / y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_rhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_rhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`division_scalar_vector${vec_size}`);
+ await run(t, abstractIntBinary('/'), [Type.abstractInt, vec_type], vec_type, t.params, cases);
+});
+
+g.test('division_vector_scalar').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x / y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_lhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_lhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`division_vector${vec_size}_scalar`);
+ await run(t, abstractIntBinary('/'), [vec_type, Type.abstractInt], vec_type, t.params, cases);
+});
+
+g.test('multiplication').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x * y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('multiplication');
+ await run(
+ t,
+ abstractIntBinary('*'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('multiplication_scalar_vector').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x * y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_rhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_rhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`multiplication_scalar_vector${vec_size}`);
+ await run(t, abstractIntBinary('*'), [Type.abstractInt, vec_type], vec_type, t.params, cases);
+});
+
+g.test('multiplication_vector_scalar').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x * y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_lhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_lhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`multiplication_vector${vec_size}_scalar`);
+ await run(t, abstractIntBinary('*'), [vec_type, Type.abstractInt], vec_type, t.params, cases);
+});
+
+g.test('remainder').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x % y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('remainder');
+ await run(
+ t,
+ abstractIntBinary('%'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('remainder_scalar_vector').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x % y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_rhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_rhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`remainder_scalar_vector${vec_size}`);
+ await run(t, abstractIntBinary('%'), [Type.abstractInt, vec_type], vec_type, t.params, cases);
+});
+
+g.test('remainder_vector_scalar').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x % y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_lhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_lhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`remainder_vector${vec_size}_scalar`);
+ await run(t, abstractIntBinary('%'), [vec_type, Type.abstractInt], vec_type, t.params, cases);
+});
+
+g.test('subtraction').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x - y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('subtraction');
+ await run(
+ t,
+ abstractIntBinary('-'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('subtraction_scalar_vector').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x - y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_rhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_rhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`subtraction_scalar_vector${vec_size}`);
+ await run(t, abstractIntBinary('-'), [Type.abstractInt, vec_type], vec_type, t.params, cases);
+});
+
+g.test('subtraction_vector_scalar').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: x - y
+`
+).
+params((u) =>
+u.combine('inputSource', onlyConstInputSource).combine('vectorize_lhs', [2, 3, 4])
+).
+fn(async (t) => {
+ const vec_size = t.params.vectorize_lhs;
+ const vec_type = Type.vec(vec_size, Type.abstractInt);
+ const cases = await d.get(`subtraction_vector${vec_size}_scalar`);
+ await run(t, abstractIntBinary('-'), [vec_type, Type.abstractInt], vec_type, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_comparison.spec.js
new file mode 100644
index 0000000000..902e1c0000
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/ai_comparison.spec.js
@@ -0,0 +1,124 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for the abstract-int comparison expressions
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { bool, abstractInt, Type } from '../../../../util/conversion.js';
+import { vectorI64Range } from '../../../../util/math.js';
+
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { binary } from './binary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/**
+ * @returns a test case for the provided left hand & right hand values and
+ * expected boolean result.
+ */
+function makeCase(lhs, rhs, expected_answer) {
+ return { input: [abstractInt(lhs), abstractInt(rhs)], expected: bool(expected_answer) };
+}
+
+g.test('equals').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x == y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] === v[1]));
+ await run(t, binary('=='), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+});
+
+g.test('not_equals').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x != y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] !== v[1]));
+ await run(t, binary('!='), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+});
+
+g.test('less_than').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x < y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] < v[1]));
+ await run(t, binary('<'), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+});
+
+g.test('less_equals').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x <= y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] <= v[1]));
+ await run(t, binary('<='), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+});
+
+g.test('greater_than').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x > y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] > v[1]));
+ await run(t, binary('>'), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+});
+
+g.test('greater_equals').
+specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
+desc(
+ `
+Expression: x >= y
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = vectorI64Range(2).map((v) => makeCase(v[0], v[1], v[0] >= v[1]));
+ await run(t, binary('>='), [Type.abstractInt, Type.abstractInt], Type.bool, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/binary.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/binary.js
index f3f84db87c..1f0329e40b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/binary.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/binary.js
@@ -2,7 +2,8 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { basicExpressionBuilder,
compoundAssignmentBuilder,
-abstractFloatShaderBuilder } from
+abstractFloatShaderBuilder,
+abstractIntShaderBuilder } from
'../expression.js';
/* @returns a ShaderBuilder that evaluates a binary operation */
@@ -16,6 +17,11 @@ export function compoundBinary(op) {
}
/* @returns a ShaderBuilder that evaluates a binary operation that returns AbstractFloats */
-export function abstractBinary(op) {
+export function abstractFloatBinary(op) {
return abstractFloatShaderBuilder((values) => `(${values.map((v) => `(${v})`).join(op)})`);
+}
+
+/* @returns a ShaderBuilder that evaluates a binary operation that returns AbstractFloats */
+export function abstractIntBinary(op) {
+ return abstractIntShaderBuilder((values) => `(${values.map((v) => `(${v})`).join(op)})`);
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise.spec.js
index c442f5cfa4..06ff03bb12 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise.spec.js
@@ -3,59 +3,171 @@
**/export const description = `
Execution Tests for the bitwise binary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { assert } from '../../../../../common/util/util.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { i32, scalarType, u32 } from '../../../../util/conversion.js';
-import { allInputSources, run } from '../expression.js';
+import {
+ abstractIntBits,
+ i32Bits,
-import { binary, compoundBinary } from './binary.js';
+ scalarType,
+ u32Bits } from
+'../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../expression.js';
+
+import { abstractIntBinary, binary, compoundBinary } from './binary.js';
export const g = makeTestGroup(GPUTest);
-function makeBitwiseOrCases(inputType) {
- const V = inputType === 'i32' ? i32 : u32;
- const cases = [
- // Static patterns
+/**
+ * Collection of functions and values required to implement bitwise tests for a
+ * specific scalar type
+ */
+
+
+
+
+
+
+
+const kScalarImpls = {
+ i32: {
+ builder: (bits) => {
+ assert(typeof bits === 'number');
+ return i32Bits(bits);
+ },
+ size: 32
+ },
+ u32: {
+ builder: (bits) => {
+ assert(typeof bits === 'number');
+ return u32Bits(bits);
+ },
+ size: 32
+ },
+ 'abstract-int': {
+ builder: (bits) => {
+ assert(typeof bits === 'bigint');
+ return abstractIntBits(bits);
+ },
+ size: 64
+ }
+};
+
+/** Wrapper for converting from input type strings to the appropriate implementation */
+function scalarImplForInputType(inputType) {
+ assert(inputType === 'i32' || inputType === 'u32' || inputType === 'abstract-int');
+ return kScalarImpls[inputType];
+}
+
+/** Manually calculated bitwise-or cases used a check that the CTS test is correct */
+const kBitwiseOrStaticPatterns = {
+ 32: [
+ {
+ input: [0b00000000000000000000000000000000, 0b00000000000000000000000000000000],
+ expected: 0b00000000000000000000000000000000
+ },
+ {
+ input: [0b11111111111111111111111111111111, 0b00000000000000000000000000000000],
+ expected: 0b11111111111111111111111111111111
+ },
+ {
+ input: [0b00000000000000000000000000000000, 0b11111111111111111111111111111111],
+ expected: 0b11111111111111111111111111111111
+ },
{
- input: [V(0b00000000000000000000000000000000), V(0b00000000000000000000000000000000)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b11111111111111111111111111111111, 0b11111111111111111111111111111111],
+ expected: 0b11111111111111111111111111111111
},
{
- input: [V(0b11111111111111111111111111111111), V(0b00000000000000000000000000000000)],
- expected: V(0b11111111111111111111111111111111)
+ input: [0b10100100010010100100010010100100, 0b00000000000000000000000000000000],
+ expected: 0b10100100010010100100010010100100
},
{
- input: [V(0b00000000000000000000000000000000), V(0b11111111111111111111111111111111)],
- expected: V(0b11111111111111111111111111111111)
+ input: [0b00000000000000000000000000000000, 0b10100100010010100100010010100100],
+ expected: 0b10100100010010100100010010100100
},
{
- input: [V(0b11111111111111111111111111111111), V(0b11111111111111111111111111111111)],
- expected: V(0b11111111111111111111111111111111)
+ input: [0b01010010001001010010001001010010, 0b10100100010010100100010010100100],
+ expected: 0b11110110011011110110011011110110
+ }],
+
+ 64: [
+ {
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
},
{
- input: [V(0b10100100010010100100010010100100), V(0b00000000000000000000000000000000)],
- expected: V(0b10100100010010100100010010100100)
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
},
{
- input: [V(0b00000000000000000000000000000000), V(0b10100100010010100100010010100100)],
- expected: V(0b10100100010010100100010010100100)
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
},
{
- input: [V(0b01010010001001010010001001010010), V(0b10100100010010100100010010100100)],
- expected: V(0b11110110011011110110011011110110)
- }];
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
+ },
+ {
+ input: [
+ 0b1010010001001010010001001010010010100100010010100100010010100100n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
+ },
+ {
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
+ },
+ {
+ input: [
+ 0b0101001000100101001000100101001010100100010010100100010010100100n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b1111011001101111011001101111011010100100010010100100010010100100n
+ }]
+
+};
+
+/** @returns a set of bitwise-or cases for the specific input type */
+function makeBitwiseOrCases(inputType) {
+ const impl = scalarImplForInputType(inputType);
+ const indices =
+ impl.size === 64 ? [...Array(impl.size).keys()].map(BigInt) : [...Array(impl.size).keys()];
+
+ return [
+ ...kBitwiseOrStaticPatterns[impl.size].map((c) => {
+ return {
+ input: c.input.map(impl.builder),
+ expected: impl.builder(c.expected)
+ };
+ }),
// Permute all combinations of a single bit being set for the LHS and RHS
- for (let i = 0; i < 32; i++) {
- const lhs = 1 << i;
- for (let j = 0; j < 32; j++) {
- const rhs = 1 << j;
- cases.push({
- input: [V(lhs), V(rhs)],
- expected: V(lhs | rhs)
- });
- }
- }
- return cases;
+ ...indices.flatMap((i) => {
+ const lhs = typeof i === 'bigint' ? 1n << i : 1 << i;
+ return indices.map((j) => {
+ const rhs = typeof j === 'bigint' ? 1n << j : 1 << j;
+ assert(typeof lhs === typeof rhs);
+ const result = typeof lhs === 'bigint' ? lhs | rhs : lhs | rhs;
+ return { input: [impl.builder(lhs), impl.builder(rhs)], expected: impl.builder(result) };
+ });
+ })];
+
}
g.test('bitwise_or').
@@ -63,22 +175,25 @@ specURL('https://www.w3.org/TR/WGSL/#bit-expr').
desc(
`
e1 | e2: T
-T is i32, u32, vecN<i32>, or vecN<u32>
+T is i32, u32, abstractInt, vecN<i32>, vecN<u32>, or vecN<abstractInt>
Bitwise-or. Component-wise when T is a vector.
`
).
params((u) =>
u.
-combine('type', ['i32', 'u32']).
+combine('type', ['i32', 'u32', 'abstract-int']).
combine('inputSource', allInputSources).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
+ t.skipIf(
+ t.params.type === 'abstract-int' && !onlyConstInputSource.includes(t.params.inputSource)
+ );
const type = scalarType(t.params.type);
const cases = makeBitwiseOrCases(t.params.type);
-
- await run(t, binary('|'), [type, type], type, t.params, cases);
+ const builder = t.params.type === 'abstract-int' ? abstractIntBinary('|') : binary('|');
+ await run(t, builder, [type, type], type, t.params, cases);
});
g.test('bitwise_or_compound').
@@ -104,59 +219,137 @@ fn(async (t) => {
await run(t, compoundBinary('|='), [type, type], type, t.params, cases);
});
-function makeBitwiseAndCases(inputType) {
- const V = inputType === 'i32' ? i32 : u32;
- const cases = [
- // Static patterns
+/** Manually calculated bitwise-and cases used a check that the CTS test is correct */
+const kBitwiseAndStaticPatterns = {
+ 32: [
+ {
+ input: [0b00000000000000000000000000000000, 0b00000000000000000000000000000000],
+ expected: 0b00000000000000000000000000000000
+ },
+ {
+ input: [0b11111111111111111111111111111111, 0b00000000000000000000000000000000],
+ expected: 0b00000000000000000000000000000000
+ },
{
- input: [V(0b00000000000000000000000000000000), V(0b00000000000000000000000000000000)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b00000000000000000000000000000000, 0b11111111111111111111111111111111],
+ expected: 0b00000000000000000000000000000000
},
{
- input: [V(0b11111111111111111111111111111111), V(0b00000000000000000000000000000000)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b11111111111111111111111111111111, 0b11111111111111111111111111111111],
+ expected: 0b11111111111111111111111111111111
},
{
- input: [V(0b00000000000000000000000000000000), V(0b11111111111111111111111111111111)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b10100100010010100100010010100100, 0b00000000000000000000000000000000],
+ expected: 0b00000000000000000000000000000000
},
{
- input: [V(0b11111111111111111111111111111111), V(0b11111111111111111111111111111111)],
- expected: V(0b11111111111111111111111111111111)
+ input: [0b10100100010010100100010010100100, 0b11111111111111111111111111111111],
+ expected: 0b10100100010010100100010010100100
},
{
- input: [V(0b10100100010010100100010010100100), V(0b00000000000000000000000000000000)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b00000000000000000000000000000000, 0b10100100010010100100010010100100],
+ expected: 0b00000000000000000000000000000000
},
{
- input: [V(0b10100100010010100100010010100100), V(0b11111111111111111111111111111111)],
- expected: V(0b10100100010010100100010010100100)
+ input: [0b11111111111111111111111111111111, 0b10100100010010100100010010100100],
+ expected: 0b10100100010010100100010010100100
},
{
- input: [V(0b00000000000000000000000000000000), V(0b10100100010010100100010010100100)],
- expected: V(0b00000000000000000000000000000000)
+ input: [0b01010010001001010010001001010010, 0b01011011101101011011101101011011],
+ expected: 0b01010010001001010010001001010010
+ }],
+
+ 64: [
+ {
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
},
{
- input: [V(0b11111111111111111111111111111111), V(0b10100100010010100100010010100100)],
- expected: V(0b10100100010010100100010010100100)
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
+ },
+ {
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
},
{
- input: [V(0b01010010001001010010001001010010), V(0b01011011101101011011101101011011)],
- expected: V(0b01010010001001010010001001010010)
- }];
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
+ },
+ {
+ input: [
+ 0b1010010001001010010001001010010010100100010010100100010010100100n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
+ },
+ {
+ input: [
+ 0b1010010001001010010001001010010010100100010010100100010010100100n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
+ },
+ {
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
+ },
+ {
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
+ },
+ {
+ input: [
+ 0b0101001000100101001000100101001001010010001001010010001001010010n,
+ 0b0101101110110101101110110101101101011011101101011011101101011011n],
+
+ expected: 0b0101001000100101001000100101001001010010001001010010001001010010n
+ }]
+
+};
+
+/** @returns a set of bitwise-or cases for the specific input type */
+function makeBitwiseAndCases(inputType) {
+ const impl = scalarImplForInputType(inputType);
+ const indices =
+ impl.size === 64 ? [...Array(impl.size).keys()].map(BigInt) : [...Array(impl.size).keys()];
+
+ return [
+ ...kBitwiseAndStaticPatterns[impl.size].map((c) => {
+ return {
+ input: c.input.map(impl.builder),
+ expected: impl.builder(c.expected)
+ };
+ }),
// Permute all combinations of a single bit being set for the LHS and all but one bit set for the RHS
- for (let i = 0; i < 32; i++) {
- const lhs = 1 << i;
- for (let j = 0; j < 32; j++) {
- const rhs = 0xffffffff ^ 1 << j;
- cases.push({
- input: [V(lhs), V(rhs)],
- expected: V(lhs & rhs)
- });
- }
- }
- return cases;
+ ...indices.flatMap((i) => {
+ const lhs = typeof i === 'bigint' ? 1n << i : 1 << i;
+ return indices.map((j) => {
+ const rhs = typeof j === 'bigint' ? 0xffffffffffffffffn ^ 1n << j : 0xffffffff ^ 1 << j;
+ assert(typeof lhs === typeof rhs);
+ const result = typeof lhs === 'bigint' ? lhs & rhs : lhs & rhs;
+ return { input: [impl.builder(lhs), impl.builder(rhs)], expected: impl.builder(result) };
+ });
+ })];
+
}
g.test('bitwise_and').
@@ -164,21 +357,25 @@ specURL('https://www.w3.org/TR/WGSL/#bit-expr').
desc(
`
e1 & e2: T
-T is i32, u32, vecN<i32>, or vecN<u32>
+T is i32, u32, AbstractInt, vecN<i32>, vecN<u32>, or vecN<AbstractInt>
Bitwise-and. Component-wise when T is a vector.
`
).
params((u) =>
u.
-combine('type', ['i32', 'u32']).
+combine('type', ['i32', 'u32', 'abstract-int']).
combine('inputSource', allInputSources).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
+ t.skipIf(
+ t.params.type === 'abstract-int' && !onlyConstInputSource.includes(t.params.inputSource)
+ );
const type = scalarType(t.params.type);
const cases = makeBitwiseAndCases(t.params.type);
- await run(t, binary('&'), [type, type], type, t.params, cases);
+ const builder = t.params.type === 'abstract-int' ? abstractIntBinary('&') : binary('&');
+ await run(t, builder, [type, type], type, t.params, cases);
});
g.test('bitwise_and_compound').
@@ -203,59 +400,137 @@ fn(async (t) => {
await run(t, compoundBinary('&='), [type, type], type, t.params, cases);
});
-function makeBitwiseExcluseOrCases(inputType) {
- const V = inputType === 'i32' ? i32 : u32;
- const cases = [
- // Static patterns
+/** Manually calculated bitwise-or cases used a check that the CTS test is correct */
+const kBitwiseExclusiveOrStaticPatterns = {
+ 32: [
+ {
+ input: [0b00000000000000000000000000000000, 0b00000000000000000000000000000000],
+ expected: 0b00000000000000000000000000000000
+ },
+ {
+ input: [0b11111111111111111111111111111111, 0b00000000000000000000000000000000],
+ expected: 0b11111111111111111111111111111111
+ },
+ {
+ input: [0b00000000000000000000000000000000, 0b11111111111111111111111111111111],
+ expected: 0b11111111111111111111111111111111
+ },
+ {
+ input: [0b11111111111111111111111111111111, 0b11111111111111111111111111111111],
+ expected: 0b00000000000000000000000000000000
+ },
+ {
+ input: [0b10100100010010100100010010100100, 0b00000000000000000000000000000000],
+ expected: 0b10100100010010100100010010100100
+ },
+ {
+ input: [0b10100100010010100100010010100100, 0b11111111111111111111111111111111],
+ expected: 0b01011011101101011011101101011011
+ },
+ {
+ input: [0b00000000000000000000000000000000, 0b10100100010010100100010010100100],
+ expected: 0b10100100010010100100010010100100
+ },
+ {
+ input: [0b11111111111111111111111111111111, 0b10100100010010100100010010100100],
+ expected: 0b01011011101101011011101101011011
+ },
+ {
+ input: [0b01010010001001010010001001010010, 0b01011011101101011011101101011011],
+ expected: 0b00001001100100001001100100001001
+ }],
+
+ 64: [
{
- input: [V(0b00000000000000000000000000000000), V(0b00000000000000000000000000000000)],
- expected: V(0b00000000000000000000000000000000)
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
},
{
- input: [V(0b11111111111111111111111111111111), V(0b00000000000000000000000000000000)],
- expected: V(0b11111111111111111111111111111111)
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
},
{
- input: [V(0b00000000000000000000000000000000), V(0b11111111111111111111111111111111)],
- expected: V(0b11111111111111111111111111111111)
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b1111111111111111111111111111111111111111111111111111111111111111n
},
{
- input: [V(0b11111111111111111111111111111111), V(0b11111111111111111111111111111111)],
- expected: V(0b00000000000000000000000000000000)
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b0000000000000000000000000000000000000000000000000000000000000000n
},
{
- input: [V(0b10100100010010100100010010100100), V(0b00000000000000000000000000000000)],
- expected: V(0b10100100010010100100010010100100)
+ input: [
+ 0b1010010001001010010001001010010010100100010010100100010010100100n,
+ 0b0000000000000000000000000000000000000000000000000000000000000000n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
},
{
- input: [V(0b10100100010010100100010010100100), V(0b11111111111111111111111111111111)],
- expected: V(0b01011011101101011011101101011011)
+ input: [
+ 0b1010010001001010010001001010010010100100010010100100010010100100n,
+ 0b1111111111111111111111111111111111111111111111111111111111111111n],
+
+ expected: 0b0101101110110101101110110101101101011011101101011011101101011011n
},
{
- input: [V(0b00000000000000000000000000000000), V(0b10100100010010100100010010100100)],
- expected: V(0b10100100010010100100010010100100)
+ input: [
+ 0b0000000000000000000000000000000000000000000000000000000000000000n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b1010010001001010010001001010010010100100010010100100010010100100n
},
{
- input: [V(0b11111111111111111111111111111111), V(0b10100100010010100100010010100100)],
- expected: V(0b01011011101101011011101101011011)
+ input: [
+ 0b1111111111111111111111111111111111111111111111111111111111111111n,
+ 0b1010010001001010010001001010010010100100010010100100010010100100n],
+
+ expected: 0b0101101110110101101110110101101101011011101101011011101101011011n
},
{
- input: [V(0b01010010001001010010001001010010), V(0b01011011101101011011101101011011)],
- expected: V(0b00001001100100001001100100001001)
- }];
+ input: [
+ 0b0101001000100101001000100101001001010010001001010010001001010010n,
+ 0b0101101110110101101110110101101101011011101101011011101101011011n],
+ expected: 0b0000100110010000100110010000100100001001100100001001100100001001n
+ }]
+
+};
+
+/** @returns a set of bitwise-xor cases for the specific input type */
+function makeBitwiseExclusiveOrCases(inputType) {
+ const impl = scalarImplForInputType(inputType);
+ const indices =
+ impl.size === 64 ? [...Array(impl.size).keys()].map(BigInt) : [...Array(impl.size).keys()];
+
+ return [
+ ...kBitwiseExclusiveOrStaticPatterns[impl.size].map((c) => {
+ return {
+ input: c.input.map(impl.builder),
+ expected: impl.builder(c.expected)
+ };
+ }),
// Permute all combinations of a single bit being set for the LHS and all but one bit set for the RHS
- for (let i = 0; i < 32; i++) {
- const lhs = 1 << i;
- for (let j = 0; j < 32; j++) {
- const rhs = 0xffffffff ^ 1 << j;
- cases.push({
- input: [V(lhs), V(rhs)],
- expected: V(lhs ^ rhs)
- });
- }
- }
- return cases;
+ ...indices.flatMap((i) => {
+ const lhs = typeof i === 'bigint' ? 1n << i : 1 << i;
+ return indices.map((j) => {
+ const rhs = typeof j === 'bigint' ? 0xffffffffffffffffn ^ 1n << j : 0xffffffff ^ 1 << j;
+ assert(typeof lhs === typeof rhs);
+ const result = typeof lhs === 'bigint' ? lhs ^ rhs : lhs ^ rhs;
+ return { input: [impl.builder(lhs), impl.builder(rhs)], expected: impl.builder(result) };
+ });
+ })];
+
}
g.test('bitwise_exclusive_or').
@@ -263,21 +538,25 @@ specURL('https://www.w3.org/TR/WGSL/#bit-expr').
desc(
`
e1 ^ e2: T
-T is i32, u32, vecN<i32>, or vecN<u32>
+T is i32, u32, abstractInt, vecN<i32>, vecN<u32>, or vecN<abstractInt>
Bitwise-exclusive-or. Component-wise when T is a vector.
`
).
params((u) =>
u.
-combine('type', ['i32', 'u32']).
+combine('type', ['i32', 'u32', 'abstract-int']).
combine('inputSource', allInputSources).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
+ t.skipIf(
+ t.params.type === 'abstract-int' && !onlyConstInputSource.includes(t.params.inputSource)
+ );
const type = scalarType(t.params.type);
- const cases = makeBitwiseExcluseOrCases(t.params.type);
- await run(t, binary('^'), [type, type], type, t.params, cases);
+ const cases = makeBitwiseExclusiveOrCases(t.params.type);
+ const builder = t.params.type === 'abstract-int' ? abstractIntBinary('^') : binary('^');
+ await run(t, builder, [type, type], type, t.params, cases);
});
g.test('bitwise_exclusive_or_compound').
@@ -298,6 +577,6 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const type = scalarType(t.params.type);
- const cases = makeBitwiseExcluseOrCases(t.params.type);
+ const cases = makeBitwiseExclusiveOrCases(t.params.type);
await run(t, compoundBinary('^='), [type, type], type, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise_shift.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise_shift.spec.js
index feed24b687..ebad2a8493 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise_shift.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bitwise_shift.spec.js
@@ -4,7 +4,8 @@
Execution Tests for the bitwise shift binary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { i32, scalarType, TypeU32, u32 } from '../../../../util/conversion.js';
+import { i32, scalarType, Type, u32 } from '../../../../util/conversion.js';
+
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
@@ -193,7 +194,7 @@ combine('vectorize', [undefined, 2, 3, 4])
fn(async (t) => {
const type = scalarType(t.params.type);
const cases = makeShiftLeftConcreteCases(t.params.type, t.params.inputSource, type);
- await run(t, binary('<<'), [type, TypeU32], type, t.params, cases);
+ await run(t, binary('<<'), [type, Type.u32], type, t.params, cases);
});
g.test('shift_left_concrete_compound').
@@ -214,7 +215,7 @@ combine('vectorize', [undefined, 2, 3, 4])
fn(async (t) => {
const type = scalarType(t.params.type);
const cases = makeShiftLeftConcreteCases(t.params.type, t.params.inputSource, type);
- await run(t, compoundBinary('<<='), [type, TypeU32], type, t.params, cases);
+ await run(t, compoundBinary('<<='), [type, Type.u32], type, t.params, cases);
});
function makeShiftRightConcreteCases(inputType, inputSource, type) {
@@ -318,7 +319,7 @@ combine('vectorize', [undefined, 2, 3, 4])
fn(async (t) => {
const type = scalarType(t.params.type);
const cases = makeShiftRightConcreteCases(t.params.type, t.params.inputSource, type);
- await run(t, binary('>>'), [type, TypeU32], type, t.params, cases);
+ await run(t, binary('>>'), [type, Type.u32], type, t.params, cases);
});
g.test('shift_right_concrete_compound').
@@ -339,5 +340,5 @@ combine('vectorize', [undefined, 2, 3, 4])
fn(async (t) => {
const type = scalarType(t.params.type);
const cases = makeShiftRightConcreteCases(t.params.type, t.params.inputSource, type);
- await run(t, compoundBinary('>>='), [type, TypeU32], type, t.params, cases);
+ await run(t, compoundBinary('>>='), [type, Type.u32], type, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bool_logical.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bool_logical.spec.js
index 52cbe17222..69a24f22a0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bool_logical.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/bool_logical.spec.js
@@ -4,7 +4,7 @@
Execution Tests for the boolean binary logical expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { bool, TypeBool } from '../../../../util/conversion.js';
+import { bool, Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
@@ -33,7 +33,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, binary('&'), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('&'), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('and_compound').
@@ -55,7 +55,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, compoundBinary('&='), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, compoundBinary('&='), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('and_short_circuit').
@@ -75,7 +75,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, binary('&&'), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('&&'), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('or').
@@ -97,7 +97,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, binary('|'), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('|'), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('or_compound').
@@ -119,7 +119,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, compoundBinary('|='), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, compoundBinary('|='), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('or_short_circuit').
@@ -139,7 +139,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, binary('||'), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('||'), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('equals').
@@ -161,7 +161,7 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(true) }];
- await run(t, binary('=='), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('=='), [Type.bool, Type.bool], Type.bool, t.params, cases);
});
g.test('not_equals').
@@ -183,5 +183,5 @@ fn(async (t) => {
{ input: [bool(true), bool(true)], expected: bool(false) }];
- await run(t, binary('!='), [TypeBool, TypeBool], TypeBool, t.params, cases);
+ await run(t, binary('!='), [Type.bool, Type.bool], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.cache.js
new file mode 100644
index 0000000000..deefe3744e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const additionVectorScalarInterval = (v, s) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.additionInterval(e, s)));
+};
+
+const additionScalarVectorInterval = (s, v) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.additionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarPairToIntervalCases(
+ sparseScalarF16Range(),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.additionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorScalarToVectorCases(
+ sparseVectorF16Range(dim),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ additionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarVectorToVectorCases(
+ sparseScalarF16Range(),
+ sparseVectorF16Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ additionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_addition', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.spec.js
index 28087a1ca3..982aa1e43a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_addition.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f16 addition expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const additionVectorScalarInterval = (v, s) => {
- return FP.f16.toVector(v.map((e) => FP.f16.additionInterval(e, s)));
-};
-
-const additionScalarVectorInterval = (s, v) => {
- return FP.f16.toVector(v.map((e) => FP.f16.additionInterval(s, e)));
-};
+import { d } from './f16_addition.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.additionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorScalarToVectorCases(
- sparseVectorF16Range(dim),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- additionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarVectorToVectorCases(
- sparseF16Range(),
- sparseVectorF16Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- additionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_addition', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -87,7 +28,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('+'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('+'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector').
@@ -106,7 +47,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('+'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('+'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('scalar_compound').
@@ -127,7 +68,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('+='), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, compoundBinary('+='), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector_scalar').
@@ -150,8 +91,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -177,8 +118,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('+='),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -204,8 +145,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeF16, TypeVec(dim, TypeF16)],
- TypeVec(dim, TypeF16),
+ [Type.f16, Type.vec(dim, Type.f16)],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.cache.js
new file mode 100644
index 0000000000..2c5edd5027
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.cache.js
@@ -0,0 +1,144 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../util/compare.js';import { bool, f16 } from '../../../../util/conversion.js';import { flushSubnormalNumberF16, vectorF16Range } from '../../../../util/math.js';
+
+import { makeCaseCache } from '../case_cache.js';
+
+/**
+ * @returns a test case for the provided left hand & right hand values and truth function.
+ * Handles quantization and subnormals.
+ */
+function makeCase(
+lhs,
+rhs,
+truthFunc)
+{
+ // Subnormal float values may be flushed at any time.
+ // https://www.w3.org/TR/WGSL/#floating-point-evaluation
+ const f16_lhs = f16(lhs);
+ const f16_rhs = f16(rhs);
+ const lhs_options = new Set([f16_lhs, f16(flushSubnormalNumberF16(lhs))]);
+ const rhs_options = new Set([f16_rhs, f16(flushSubnormalNumberF16(rhs))]);
+ const expected = [];
+ lhs_options.forEach((l) => {
+ rhs_options.forEach((r) => {
+ const result = bool(truthFunc(l, r));
+ if (!expected.includes(result)) {
+ expected.push(result);
+ }
+ });
+ });
+
+ return { input: [f16_lhs, f16_rhs], expected: anyOf(...expected) };
+}
+
+export const d = makeCaseCache('binary/f16_logical', {
+ equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value === rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value === rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ not_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value !== rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ not_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value !== rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_than_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value < rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_than_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value < rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value <= rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value <= rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_than_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value > rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_than_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value > rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value >= rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value >= rhs.value;
+ };
+
+ return vectorF16Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.spec.js
index 33b99a219b..defab2c209 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_comparison.spec.js
@@ -4,155 +4,14 @@
Execution Tests for the f16 comparison operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { anyOf } from '../../../../util/compare.js';
-import { bool, f16, TypeBool, TypeF16 } from '../../../../util/conversion.js';
-import { flushSubnormalNumberF16, vectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary } from './binary.js';
+import { d } from './f16_comparison.cache.js';
export const g = makeTestGroup(GPUTest);
-/**
- * @returns a test case for the provided left hand & right hand values and truth function.
- * Handles quantization and subnormals.
- */
-function makeCase(
-lhs,
-rhs,
-truthFunc)
-{
- // Subnormal float values may be flushed at any time.
- // https://www.w3.org/TR/WGSL/#floating-point-evaluation
- const f16_lhs = f16(lhs);
- const f16_rhs = f16(rhs);
- const lhs_options = new Set([f16_lhs, f16(flushSubnormalNumberF16(lhs))]);
- const rhs_options = new Set([f16_rhs, f16(flushSubnormalNumberF16(rhs))]);
- const expected = [];
- lhs_options.forEach((l) => {
- rhs_options.forEach((r) => {
- const result = bool(truthFunc(l, r));
- if (!expected.includes(result)) {
- expected.push(result);
- }
- });
- });
-
- return { input: [f16_lhs, f16_rhs], expected: anyOf(...expected) };
-}
-
-export const d = makeCaseCache('binary/f16_logical', {
- equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value === rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value === rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- not_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value !== rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- not_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value !== rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_than_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value < rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_than_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value < rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value <= rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value <= rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_than_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value > rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_than_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value > rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value >= rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value >= rhs.value;
- };
-
- return vectorF16Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- }
-});
-
g.test('equals').
specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
desc(
@@ -171,7 +30,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'equals_const' : 'equals_non_const'
);
- await run(t, binary('=='), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('=='), [Type.f16, Type.f16], Type.bool, t.params, cases);
});
g.test('not_equals').
@@ -192,7 +51,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'not_equals_const' : 'not_equals_non_const'
);
- await run(t, binary('!='), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('!='), [Type.f16, Type.f16], Type.bool, t.params, cases);
});
g.test('less_than').
@@ -213,7 +72,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'less_than_const' : 'less_than_non_const'
);
- await run(t, binary('<'), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('<'), [Type.f16, Type.f16], Type.bool, t.params, cases);
});
g.test('less_equals').
@@ -234,7 +93,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'less_equals_const' : 'less_equals_non_const'
);
- await run(t, binary('<='), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('<='), [Type.f16, Type.f16], Type.bool, t.params, cases);
});
g.test('greater_than').
@@ -255,7 +114,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'greater_than_const' : 'greater_than_non_const'
);
- await run(t, binary('>'), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('>'), [Type.f16, Type.f16], Type.bool, t.params, cases);
});
g.test('greater_equals').
@@ -276,5 +135,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'greater_equals_const' : 'greater_equals_non_const'
);
- await run(t, binary('>='), [TypeF16, TypeF16], TypeBool, t.params, cases);
+ await run(t, binary('>='), [Type.f16, Type.f16], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.cache.js
new file mode 100644
index 0000000000..bd3335f681
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const divisionVectorScalarInterval = (v, s) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.divisionInterval(e, s)));
+};
+
+const divisionScalarVectorInterval = (s, v) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.divisionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarPairToIntervalCases(
+ sparseScalarF16Range(),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.divisionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorScalarToVectorCases(
+ sparseVectorF16Range(dim),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ divisionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarVectorToVectorCases(
+ sparseScalarF16Range(),
+ sparseVectorF16Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ divisionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_division', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.spec.js
index bcbb523c0e..324d27c43a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_division.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f16 division expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const divisionVectorScalarInterval = (v, s) => {
- return FP.f16.toVector(v.map((e) => FP.f16.divisionInterval(e, s)));
-};
-
-const divisionScalarVectorInterval = (s, v) => {
- return FP.f16.toVector(v.map((e) => FP.f16.divisionInterval(s, e)));
-};
+import { d } from './f16_division.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.divisionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorScalarToVectorCases(
- sparseVectorF16Range(dim),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- divisionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarVectorToVectorCases(
- sparseF16Range(),
- sparseVectorF16Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- divisionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_division', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -87,7 +28,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('/'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('/'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector').
@@ -106,7 +47,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('/'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('/'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('scalar_compound').
@@ -127,7 +68,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('/='), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, compoundBinary('/='), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector_scalar').
@@ -150,8 +91,8 @@ fn(async (t) => {
await run(
t,
binary('/'),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -177,8 +118,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('/='),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -204,8 +145,8 @@ fn(async (t) => {
await run(
t,
binary('/'),
- [TypeF16, TypeVec(dim, TypeF16)],
- TypeVec(dim, TypeF16),
+ [Type.f16, Type.vec(dim, Type.f16)],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.cache.js
new file mode 100644
index 0000000000..fb3140a58a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_[non_]const
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixPairToMatrixCases(
+ sparseMatrixF16Range(cols, rows),
+ sparseMatrixF16Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.additionMatrixMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_matrix_addition', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.spec.js
index 9948b0d164..a5478d9a49 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_addition.spec.js
@@ -4,36 +4,14 @@
Execution Tests for matrix f16 addition expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f16_matrix_addition.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_[non_]const
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixPairToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.additionMatrixMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_matrix_addition', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -60,8 +38,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeMat(cols, rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
@@ -93,8 +71,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('+='),
- [TypeMat(cols, rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.cache.js
new file mode 100644
index 0000000000..356c64e3e0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matKxR_matCxK_[non_]const
+const mat_mat_cases = [2, 3, 4].
+flatMap((k) =>
+[2, 3, 4].flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${k}x${rows}_mat${cols}x${k}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixPairToMatrixCases(
+ sparseMatrixF16Range(k, rows),
+ sparseMatrixF16Range(cols, k),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationMatrixMatrixInterval
+ );
+ }
+}))
+)
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_matrix_matrix_multiplication', mat_mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js
index 5076e979ab..9df1697583 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_matrix_multiplication.spec.js
@@ -4,38 +4,14 @@
Execution Tests for matrix-matrix f16 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f16_matrix_matrix_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matKxR_matCxK_[non_]const
-const mat_mat_cases = [2, 3, 4].
-flatMap((k) =>
-[2, 3, 4].flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${k}x${rows}_mat${cols}x${k}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixPairToMatrixCases(
- sparseMatrixF16Range(k, rows),
- sparseMatrixF16Range(cols, k),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationMatrixMatrixInterval
- );
- }
-}))
-)
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_matrix_matrix_multiplication', mat_mat_cases);
-
g.test('matrix_matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -68,8 +44,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(x_cols, x_rows, TypeF16), TypeMat(y_cols, y_rows, TypeF16)],
- TypeMat(y_cols, x_rows, TypeF16),
+ [Type.mat(x_cols, x_rows, Type.f16), Type.mat(y_cols, y_rows, Type.f16)],
+ Type.mat(y_cols, x_rows, Type.f16),
t.params,
cases
);
@@ -106,8 +82,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeMat(x_cols, x_rows, TypeF16), TypeMat(y_cols, y_rows, TypeF16)],
- TypeMat(y_cols, x_rows, TypeF16),
+ [Type.mat(x_cols, x_rows, Type.f16), Type.mat(y_cols, y_rows, Type.f16)],
+ Type.mat(y_cols, x_rows, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.cache.js
new file mode 100644
index 0000000000..43776ca14a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF16Range, sparseScalarF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_scalar_[non_]const
+const mat_scalar_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixScalarToMatrixCases(
+ sparseMatrixF16Range(cols, rows),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationMatrixScalarInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: scalar_matCxR_[non_]const
+const scalar_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`scalar_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarMatrixToMatrixCases(
+ sparseScalarF16Range(),
+ sparseMatrixF16Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationScalarMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_matrix_scalar_multiplication', {
+ ...mat_scalar_cases,
+ ...scalar_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js
index 292c7ad508..040745320e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication.spec.js
@@ -4,57 +4,14 @@
Execution Tests for matrix-scalar and scalar-matrix f16 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseMatrixF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f16_matrix_scalar_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_scalar_[non_]const
-const mat_scalar_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixScalarToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationMatrixScalarInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: scalar_matCxR_[non_]const
-const scalar_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`scalar_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarMatrixToMatrixCases(
- sparseF16Range(),
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationScalarMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_matrix_scalar_multiplication', {
- ...mat_scalar_cases,
- ...scalar_mat_cases
-});
-
g.test('matrix_scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -83,8 +40,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(cols, rows, TypeF16), TypeF16],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.f16],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
@@ -118,8 +75,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeMat(cols, rows, TypeF16), TypeF16],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.f16],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
@@ -153,8 +110,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeF16, TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.f16, Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.cache.js
new file mode 100644
index 0000000000..f759832ae7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_[non_]const
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixPairToMatrixCases(
+ sparseMatrixF16Range(cols, rows),
+ sparseMatrixF16Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.subtractionMatrixMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_matrix_subtraction', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.spec.js
index c787e555be..f47021eee6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_subtraction.spec.js
@@ -4,36 +4,14 @@
Execution Tests for matrix f16 subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f16_matrix_subtraction.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_[non_]const
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixPairToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.subtractionMatrixMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_matrix_subtraction', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -60,8 +38,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeMat(cols, rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
@@ -93,8 +71,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('-='),
- [TypeMat(cols, rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.cache.js
new file mode 100644
index 0000000000..81b117512a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_vecC_[non_]const
+const mat_vec_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_vec${cols}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixVectorToVectorCases(
+ sparseMatrixF16Range(cols, rows),
+ sparseVectorF16Range(cols),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationMatrixVectorInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: vecR_matCxR_[non_]const
+const vec_mat_cases = [2, 3, 4].
+flatMap((rows) =>
+[2, 3, 4].flatMap((cols) =>
+[true, false].map((nonConst) => ({
+ [`vec${rows}_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorMatrixToVectorCases(
+ sparseVectorF16Range(rows),
+ sparseMatrixF16Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationVectorMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_matrix_vector_multiplication', {
+ ...mat_vec_cases,
+ ...vec_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js
index 3cfcd5d4e1..d0262e0484 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication.spec.js
@@ -4,57 +4,14 @@
Execution Tests for matrix-vector and vector-matrix f16 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeMat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f16_matrix_vector_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_vecC_[non_]const
-const mat_vec_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_vec${cols}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixVectorToVectorCases(
- sparseMatrixF16Range(cols, rows),
- sparseVectorF16Range(cols),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationMatrixVectorInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: vecR_matCxR_[non_]const
-const vec_mat_cases = [2, 3, 4].
-flatMap((rows) =>
-[2, 3, 4].flatMap((cols) =>
-[true, false].map((nonConst) => ({
- [`vec${rows}_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorMatrixToVectorCases(
- sparseVectorF16Range(rows),
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationVectorMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_matrix_vector_multiplication', {
- ...mat_vec_cases,
- ...vec_mat_cases
-});
-
g.test('matrix_vector').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -83,8 +40,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(cols, rows, TypeF16), TypeVec(cols, TypeF16)],
- TypeVec(rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16), Type.vec(cols, Type.f16)],
+ Type.vec(rows, Type.f16),
t.params,
cases
);
@@ -118,8 +75,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeVec(rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeVec(cols, TypeF16),
+ [Type.vec(rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.vec(cols, Type.f16),
t.params,
cases
);
@@ -148,8 +105,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeVec(rows, TypeF16), TypeMat(cols, rows, TypeF16)],
- TypeVec(cols, TypeF16),
+ [Type.vec(rows, Type.f16), Type.mat(cols, rows, Type.f16)],
+ Type.vec(cols, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.cache.js
new file mode 100644
index 0000000000..35ad006426
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const multiplicationVectorScalarInterval = (v, s) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.multiplicationInterval(e, s)));
+};
+
+const multiplicationScalarVectorInterval = (s, v) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.multiplicationInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarPairToIntervalCases(
+ sparseScalarF16Range(),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.multiplicationInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorScalarToVectorCases(
+ sparseVectorF16Range(dim),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ multiplicationVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarVectorToVectorCases(
+ sparseScalarF16Range(),
+ sparseVectorF16Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ multiplicationScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_multiplication', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.spec.js
index 42310b240f..c9d264f949 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_multiplication.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f16 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const multiplicationVectorScalarInterval = (v, s) => {
- return FP.f16.toVector(v.map((e) => FP.f16.multiplicationInterval(e, s)));
-};
-
-const multiplicationScalarVectorInterval = (s, v) => {
- return FP.f16.toVector(v.map((e) => FP.f16.multiplicationInterval(s, e)));
-};
+import { d } from './f16_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.multiplicationInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorScalarToVectorCases(
- sparseVectorF16Range(dim),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- multiplicationVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarVectorToVectorCases(
- sparseF16Range(),
- sparseVectorF16Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- multiplicationScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_multiplication', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -87,7 +28,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('*'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('*'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector').
@@ -106,7 +47,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('*'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('*'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('scalar_compound').
@@ -127,7 +68,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('*='), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, compoundBinary('*='), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector_scalar').
@@ -150,8 +91,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -177,8 +118,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -204,8 +145,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeF16, TypeVec(dim, TypeF16)],
- TypeVec(dim, TypeF16),
+ [Type.f16, Type.vec(dim, Type.f16)],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.cache.js
new file mode 100644
index 0000000000..816fd1d510
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const remainderVectorScalarInterval = (v, s) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.remainderInterval(e, s)));
+};
+
+const remainderScalarVectorInterval = (s, v) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.remainderInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarPairToIntervalCases(
+ sparseScalarF16Range(),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.remainderInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorScalarToVectorCases(
+ sparseVectorF16Range(dim),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ remainderVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarVectorToVectorCases(
+ sparseScalarF16Range(),
+ sparseVectorF16Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ remainderScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_remainder', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.spec.js
index e03aeee248..52aa994502 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_remainder.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f16 remainder expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const remainderVectorScalarInterval = (v, s) => {
- return FP.f16.toVector(v.map((e) => FP.f16.remainderInterval(e, s)));
-};
-
-const remainderScalarVectorInterval = (s, v) => {
- return FP.f16.toVector(v.map((e) => FP.f16.remainderInterval(s, e)));
-};
+import { d } from './f16_remainder.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.remainderInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorScalarToVectorCases(
- sparseVectorF16Range(dim),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- remainderVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarVectorToVectorCases(
- sparseF16Range(),
- sparseVectorF16Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- remainderScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_remainder', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -87,7 +28,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('%'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('%'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector').
@@ -106,7 +47,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('%'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('%'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('scalar_compound').
@@ -127,7 +68,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('%='), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, compoundBinary('%='), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector_scalar').
@@ -150,8 +91,8 @@ fn(async (t) => {
await run(
t,
binary('%'),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -177,8 +118,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('%='),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -204,8 +145,8 @@ fn(async (t) => {
await run(
t,
binary('%'),
- [TypeF16, TypeVec(dim, TypeF16)],
- TypeVec(dim, TypeF16),
+ [Type.f16, Type.vec(dim, Type.f16)],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.cache.js
new file mode 100644
index 0000000000..65ff0d7f18
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF16Range, sparseVectorF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const subtractionVectorScalarInterval = (v, s) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.subtractionInterval(e, s)));
+};
+
+const subtractionScalarVectorInterval = (s, v) => {
+ return FP.f16.toVector(v.map((e) => FP.f16.subtractionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarPairToIntervalCases(
+ sparseScalarF16Range(),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.subtractionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateVectorScalarToVectorCases(
+ sparseVectorF16Range(dim),
+ sparseScalarF16Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ subtractionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateScalarVectorToVectorCases(
+ sparseScalarF16Range(),
+ sparseVectorF16Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ subtractionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f16_subtraction', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.spec.js
index badf829b69..f5910cd986 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f16_subtraction.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f16 subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF16Range, sparseVectorF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const subtractionVectorScalarInterval = (v, s) => {
- return FP.f16.toVector(v.map((e) => FP.f16.subtractionInterval(e, s)));
-};
-
-const subtractionScalarVectorInterval = (s, v) => {
- return FP.f16.toVector(v.map((e) => FP.f16.subtractionInterval(s, e)));
-};
+import { d } from './f16_subtraction.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.subtractionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorScalarToVectorCases(
- sparseVectorF16Range(dim),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- subtractionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateScalarVectorToVectorCases(
- sparseF16Range(),
- sparseVectorF16Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- subtractionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f16_subtraction', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -87,7 +28,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('-'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('-'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector').
@@ -106,7 +47,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('-'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, binary('-'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('scalar_compound').
@@ -127,7 +68,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('-='), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, compoundBinary('-='), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('vector_scalar').
@@ -150,8 +91,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -177,8 +118,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('-='),
- [TypeVec(dim, TypeF16), TypeF16],
- TypeVec(dim, TypeF16),
+ [Type.vec(dim, Type.f16), Type.f16],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
@@ -204,8 +145,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeF16, TypeVec(dim, TypeF16)],
- TypeVec(dim, TypeF16),
+ [Type.f16, Type.vec(dim, Type.f16)],
+ Type.vec(dim, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.cache.js
new file mode 100644
index 0000000000..65c280ce3b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF32Range, sparseVectorF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const additionVectorScalarInterval = (v, s) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.additionInterval(e, s)));
+};
+
+const additionScalarVectorInterval = (s, v) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.additionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.additionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorScalarToVectorCases(
+ sparseVectorF32Range(dim),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ additionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarVectorToVectorCases(
+ sparseScalarF32Range(),
+ sparseVectorF32Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ additionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_addition', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.spec.js
index a4dff15436..6c9adbb126 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_addition.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f32 addition expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const additionVectorScalarInterval = (v, s) => {
- return FP.f32.toVector(v.map((e) => FP.f32.additionInterval(e, s)));
-};
-
-const additionScalarVectorInterval = (s, v) => {
- return FP.f32.toVector(v.map((e) => FP.f32.additionInterval(s, e)));
-};
+import { d } from './f32_addition.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.additionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorScalarToVectorCases(
- sparseVectorF32Range(dim),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- additionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarVectorToVectorCases(
- sparseF32Range(),
- sparseVectorF32Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- additionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_addition', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -84,7 +25,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('+'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('+'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector').
@@ -100,7 +41,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('+'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('+'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('scalar_compound').
@@ -118,7 +59,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('+='), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, compoundBinary('+='), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector_scalar').
@@ -138,8 +79,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -162,8 +103,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('+='),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -186,8 +127,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeF32, TypeVec(dim, TypeF32)],
- TypeVec(dim, TypeF32),
+ [Type.f32, Type.vec(dim, Type.f32)],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.cache.js
new file mode 100644
index 0000000000..6ed518e519
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.cache.js
@@ -0,0 +1,144 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../util/compare.js';import { bool, f32 } from '../../../../util/conversion.js';import { flushSubnormalNumberF32, vectorF32Range } from '../../../../util/math.js';
+
+import { makeCaseCache } from '../case_cache.js';
+
+/**
+ * @returns a test case for the provided left hand & right hand values and truth function.
+ * Handles quantization and subnormals.
+ */
+function makeCase(
+lhs,
+rhs,
+truthFunc)
+{
+ // Subnormal float values may be flushed at any time.
+ // https://www.w3.org/TR/WGSL/#floating-point-evaluation
+ const f32_lhs = f32(lhs);
+ const f32_rhs = f32(rhs);
+ const lhs_options = new Set([f32_lhs, f32(flushSubnormalNumberF32(lhs))]);
+ const rhs_options = new Set([f32_rhs, f32(flushSubnormalNumberF32(rhs))]);
+ const expected = [];
+ lhs_options.forEach((l) => {
+ rhs_options.forEach((r) => {
+ const result = bool(truthFunc(l, r));
+ if (!expected.includes(result)) {
+ expected.push(result);
+ }
+ });
+ });
+
+ return { input: [f32_lhs, f32_rhs], expected: anyOf(...expected) };
+}
+
+export const d = makeCaseCache('binary/f32_logical', {
+ equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value === rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value === rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ not_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value !== rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ not_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value !== rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_than_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value < rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_than_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value < rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value <= rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ less_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value <= rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_than_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value > rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_than_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value > rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_equals_non_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value >= rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ },
+ greater_equals_const: () => {
+ const truthFunc = (lhs, rhs) => {
+ return lhs.value >= rhs.value;
+ };
+
+ return vectorF32Range(2).map((v) => {
+ return makeCase(v[0], v[1], truthFunc);
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.spec.js
index dddf58cb3f..2c362db2ed 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_comparison.spec.js
@@ -4,155 +4,14 @@
Execution Tests for the f32 comparison operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { anyOf } from '../../../../util/compare.js';
-import { bool, f32, TypeBool, TypeF32 } from '../../../../util/conversion.js';
-import { flushSubnormalNumberF32, vectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary } from './binary.js';
+import { d } from './f32_comparison.cache.js';
export const g = makeTestGroup(GPUTest);
-/**
- * @returns a test case for the provided left hand & right hand values and truth function.
- * Handles quantization and subnormals.
- */
-function makeCase(
-lhs,
-rhs,
-truthFunc)
-{
- // Subnormal float values may be flushed at any time.
- // https://www.w3.org/TR/WGSL/#floating-point-evaluation
- const f32_lhs = f32(lhs);
- const f32_rhs = f32(rhs);
- const lhs_options = new Set([f32_lhs, f32(flushSubnormalNumberF32(lhs))]);
- const rhs_options = new Set([f32_rhs, f32(flushSubnormalNumberF32(rhs))]);
- const expected = [];
- lhs_options.forEach((l) => {
- rhs_options.forEach((r) => {
- const result = bool(truthFunc(l, r));
- if (!expected.includes(result)) {
- expected.push(result);
- }
- });
- });
-
- return { input: [f32_lhs, f32_rhs], expected: anyOf(...expected) };
-}
-
-export const d = makeCaseCache('binary/f32_logical', {
- equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value === rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value === rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- not_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value !== rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- not_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value !== rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_than_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value < rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_than_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value < rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value <= rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- less_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value <= rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_than_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value > rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_than_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value > rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_equals_non_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value >= rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- },
- greater_equals_const: () => {
- const truthFunc = (lhs, rhs) => {
- return lhs.value >= rhs.value;
- };
-
- return vectorF32Range(2).map((v) => {
- return makeCase(v[0], v[1], truthFunc);
- });
- }
-});
-
g.test('equals').
specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
desc(
@@ -168,7 +27,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'equals_const' : 'equals_non_const'
);
- await run(t, binary('=='), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('=='), [Type.f32, Type.f32], Type.bool, t.params, cases);
});
g.test('not_equals').
@@ -186,7 +45,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'not_equals_const' : 'not_equals_non_const'
);
- await run(t, binary('!='), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('!='), [Type.f32, Type.f32], Type.bool, t.params, cases);
});
g.test('less_than').
@@ -204,7 +63,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'less_than_const' : 'less_than_non_const'
);
- await run(t, binary('<'), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('<'), [Type.f32, Type.f32], Type.bool, t.params, cases);
});
g.test('less_equals').
@@ -222,7 +81,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'less_equals_const' : 'less_equals_non_const'
);
- await run(t, binary('<='), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('<='), [Type.f32, Type.f32], Type.bool, t.params, cases);
});
g.test('greater_than').
@@ -240,7 +99,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'greater_than_const' : 'greater_than_non_const'
);
- await run(t, binary('>'), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('>'), [Type.f32, Type.f32], Type.bool, t.params, cases);
});
g.test('greater_equals').
@@ -258,5 +117,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'greater_equals_const' : 'greater_equals_non_const'
);
- await run(t, binary('>='), [TypeF32, TypeF32], TypeBool, t.params, cases);
+ await run(t, binary('>='), [Type.f32, Type.f32], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.cache.js
new file mode 100644
index 0000000000..987cb3676f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF32Range, sparseVectorF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const divisionVectorScalarInterval = (v, s) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.divisionInterval(e, s)));
+};
+
+const divisionScalarVectorInterval = (s, v) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.divisionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.divisionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorScalarToVectorCases(
+ sparseVectorF32Range(dim),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ divisionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarVectorToVectorCases(
+ sparseScalarF32Range(),
+ sparseVectorF32Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ divisionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_division', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.spec.js
index 66573b123c..fc752b9e3a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_division.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f32 division expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const divisionVectorScalarInterval = (v, s) => {
- return FP.f32.toVector(v.map((e) => FP.f32.divisionInterval(e, s)));
-};
-
-const divisionScalarVectorInterval = (s, v) => {
- return FP.f32.toVector(v.map((e) => FP.f32.divisionInterval(s, e)));
-};
+import { d } from './f32_division.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.divisionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorScalarToVectorCases(
- sparseVectorF32Range(dim),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- divisionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarVectorToVectorCases(
- sparseF32Range(),
- sparseVectorF32Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- divisionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_division', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -84,7 +25,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('/'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('/'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector').
@@ -100,7 +41,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('/'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('/'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('scalar_compound').
@@ -118,7 +59,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('/='), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, compoundBinary('/='), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector_scalar').
@@ -138,8 +79,8 @@ fn(async (t) => {
await run(
t,
binary('/'),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -162,8 +103,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('/='),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -186,8 +127,8 @@ fn(async (t) => {
await run(
t,
binary('/'),
- [TypeF32, TypeVec(dim, TypeF32)],
- TypeVec(dim, TypeF32),
+ [Type.f32, Type.vec(dim, Type.f32)],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.cache.js
new file mode 100644
index 0000000000..b3c7bec492
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_[non_]const
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixPairToMatrixCases(
+ sparseMatrixF32Range(cols, rows),
+ sparseMatrixF32Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.additionMatrixMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_matrix_addition', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.spec.js
index f203990550..7da49853cc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_addition.spec.js
@@ -4,36 +4,14 @@
Execution Tests for matrix f32 addition expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f32_matrix_addition.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_[non_]const
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixPairToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.additionMatrixMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_matrix_addition', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -57,8 +35,8 @@ fn(async (t) => {
await run(
t,
binary('+'),
- [TypeMat(cols, rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
@@ -87,8 +65,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('+='),
- [TypeMat(cols, rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.cache.js
new file mode 100644
index 0000000000..4d5382f649
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matKxR_matCxK_[non_]const
+const mat_mat_cases = [2, 3, 4].
+flatMap((k) =>
+[2, 3, 4].flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${k}x${rows}_mat${cols}x${k}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixPairToMatrixCases(
+ sparseMatrixF32Range(k, rows),
+ sparseMatrixF32Range(cols, k),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationMatrixMatrixInterval
+ );
+ }
+}))
+)
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_matrix_matrix_multiplication', mat_mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js
index bebbaa701a..bee27aea4c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_matrix_multiplication.spec.js
@@ -4,38 +4,14 @@
Execution Tests for matrix-matrix f32 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f32_matrix_matrix_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matKxR_matCxK_[non_]const
-const mat_mat_cases = [2, 3, 4].
-flatMap((k) =>
-[2, 3, 4].flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${k}x${rows}_mat${cols}x${k}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixPairToMatrixCases(
- sparseMatrixF32Range(k, rows),
- sparseMatrixF32Range(cols, k),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationMatrixMatrixInterval
- );
- }
-}))
-)
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_matrix_matrix_multiplication', mat_mat_cases);
-
g.test('matrix_matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -65,8 +41,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(x_cols, x_rows, TypeF32), TypeMat(y_cols, y_rows, TypeF32)],
- TypeMat(y_cols, x_rows, TypeF32),
+ [Type.mat(x_cols, x_rows, Type.f32), Type.mat(y_cols, y_rows, Type.f32)],
+ Type.mat(y_cols, x_rows, Type.f32),
t.params,
cases
);
@@ -100,8 +76,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeMat(x_cols, x_rows, TypeF32), TypeMat(y_cols, y_rows, TypeF32)],
- TypeMat(y_cols, x_rows, TypeF32),
+ [Type.mat(x_cols, x_rows, Type.f32), Type.mat(y_cols, y_rows, Type.f32)],
+ Type.mat(y_cols, x_rows, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.cache.js
new file mode 100644
index 0000000000..cc3321acb7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF32Range, sparseScalarF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_scalar_[non_]const
+const mat_scalar_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixScalarToMatrixCases(
+ sparseMatrixF32Range(cols, rows),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationMatrixScalarInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: scalar_matCxR_[non_]const
+const scalar_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`scalar_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarMatrixToMatrixCases(
+ sparseScalarF32Range(),
+ sparseMatrixF32Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationScalarMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_matrix_scalar_multiplication', {
+ ...mat_scalar_cases,
+ ...scalar_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js
index 324998e915..918cbc49d6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication.spec.js
@@ -4,57 +4,14 @@
Execution Tests for matrix-scalar and scalar-matrix f32 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseMatrixF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f32_matrix_scalar_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_scalar_[non_]const
-const mat_scalar_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixScalarToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationMatrixScalarInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: scalar_matCxR_[non_]const
-const scalar_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`scalar_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarMatrixToMatrixCases(
- sparseF32Range(),
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationScalarMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_matrix_scalar_multiplication', {
- ...mat_scalar_cases,
- ...scalar_mat_cases
-});
-
g.test('matrix_scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -80,8 +37,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(cols, rows, TypeF32), TypeF32],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.f32],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
@@ -112,8 +69,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeMat(cols, rows, TypeF32), TypeF32],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.f32],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
@@ -144,8 +101,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeF32, TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.f32, Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.cache.js
new file mode 100644
index 0000000000..61a60d8e49
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_[non_]const
+const mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixPairToMatrixCases(
+ sparseMatrixF32Range(cols, rows),
+ sparseMatrixF32Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.subtractionMatrixMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_matrix_subtraction', mat_cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.spec.js
index c427c8d5bd..9c6930a63c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_subtraction.spec.js
@@ -4,36 +4,14 @@
Execution Tests for matrix f32 subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeMat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f32_matrix_subtraction.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_[non_]const
-const mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixPairToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.subtractionMatrixMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_matrix_subtraction', mat_cases);
-
g.test('matrix').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -57,8 +35,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeMat(cols, rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
@@ -87,8 +65,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('-='),
- [TypeMat(cols, rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.cache.js
new file mode 100644
index 0000000000..778c0500f8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseMatrixF32Range, sparseVectorF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+// Cases: matCxR_vecC_[non_]const
+const mat_vec_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`mat${cols}x${rows}_vec${cols}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixVectorToVectorCases(
+ sparseMatrixF32Range(cols, rows),
+ sparseVectorF32Range(cols),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationMatrixVectorInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: vecR_matCxR_[non_]const
+const vec_mat_cases = [2, 3, 4].
+flatMap((rows) =>
+[2, 3, 4].flatMap((cols) =>
+[true, false].map((nonConst) => ({
+ [`vec${rows}_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorMatrixToVectorCases(
+ sparseVectorF32Range(rows),
+ sparseMatrixF32Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationVectorMatrixInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_matrix_vector_multiplication', {
+ ...mat_vec_cases,
+ ...vec_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js
index 8149f4a140..dc2d9a2604 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication.spec.js
@@ -4,57 +4,14 @@
Execution Tests for matrix-vector and vector-matrix f32 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeMat, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseMatrixF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
+import { d } from './f32_matrix_vector_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: matCxR_vecC_[non_]const
-const mat_vec_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`mat${cols}x${rows}_vec${cols}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixVectorToVectorCases(
- sparseMatrixF32Range(cols, rows),
- sparseVectorF32Range(cols),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationMatrixVectorInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: vecR_matCxR_[non_]const
-const vec_mat_cases = [2, 3, 4].
-flatMap((rows) =>
-[2, 3, 4].flatMap((cols) =>
-[true, false].map((nonConst) => ({
- [`vec${rows}_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorMatrixToVectorCases(
- sparseVectorF32Range(rows),
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationVectorMatrixInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_matrix_vector_multiplication', {
- ...mat_vec_cases,
- ...vec_mat_cases
-});
-
g.test('matrix_vector').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -80,8 +37,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeMat(cols, rows, TypeF32), TypeVec(cols, TypeF32)],
- TypeVec(rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32), Type.vec(cols, Type.f32)],
+ Type.vec(rows, Type.f32),
t.params,
cases
);
@@ -112,8 +69,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeVec(rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeVec(cols, TypeF32),
+ [Type.vec(rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.vec(cols, Type.f32),
t.params,
cases
);
@@ -139,8 +96,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeVec(rows, TypeF32), TypeMat(cols, rows, TypeF32)],
- TypeVec(cols, TypeF32),
+ [Type.vec(rows, Type.f32), Type.mat(cols, rows, Type.f32)],
+ Type.vec(cols, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.cache.js
new file mode 100644
index 0000000000..3135f87b29
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF32Range, sparseVectorF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const multiplicationVectorScalarInterval = (v, s) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.multiplicationInterval(e, s)));
+};
+
+const multiplicationScalarVectorInterval = (s, v) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.multiplicationInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.multiplicationInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorScalarToVectorCases(
+ sparseVectorF32Range(dim),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ multiplicationVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarVectorToVectorCases(
+ sparseScalarF32Range(),
+ sparseVectorF32Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ multiplicationScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_multiplication', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.spec.js
index dd60365d5d..c7a737a876 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_multiplication.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f32 multiplication expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const multiplicationVectorScalarInterval = (v, s) => {
- return FP.f32.toVector(v.map((e) => FP.f32.multiplicationInterval(e, s)));
-};
-
-const multiplicationScalarVectorInterval = (s, v) => {
- return FP.f32.toVector(v.map((e) => FP.f32.multiplicationInterval(s, e)));
-};
+import { d } from './f32_multiplication.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.multiplicationInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorScalarToVectorCases(
- sparseVectorF32Range(dim),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- multiplicationVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarVectorToVectorCases(
- sparseF32Range(),
- sparseVectorF32Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- multiplicationScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_multiplication', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -84,7 +25,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('*'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('*'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector').
@@ -100,7 +41,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('*'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('*'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('scalar_compound').
@@ -118,7 +59,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('*='), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, compoundBinary('*='), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector_scalar').
@@ -138,8 +79,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -162,8 +103,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('*='),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -186,8 +127,8 @@ fn(async (t) => {
await run(
t,
binary('*'),
- [TypeF32, TypeVec(dim, TypeF32)],
- TypeVec(dim, TypeF32),
+ [Type.f32, Type.vec(dim, Type.f32)],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.cache.js
new file mode 100644
index 0000000000..62f9c4f85c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.cache.js
@@ -0,0 +1,64 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for non-matrix f32 remainder expression
+`;import { FP } from '../../../../util/floating_point.js';
+import { sparseScalarF32Range, sparseVectorF32Range } from '../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+const remainderVectorScalarInterval = (v, s) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.remainderInterval(e, s)));
+};
+
+const remainderScalarVectorInterval = (s, v) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.remainderInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.remainderInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorScalarToVectorCases(
+ sparseVectorF32Range(dim),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ remainderVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarVectorToVectorCases(
+ sparseScalarF32Range(),
+ sparseVectorF32Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ remainderScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_remainder', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.spec.js
index 2b569180ee..aab16e65e9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_remainder.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f32 remainder expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const remainderVectorScalarInterval = (v, s) => {
- return FP.f32.toVector(v.map((e) => FP.f32.remainderInterval(e, s)));
-};
-
-const remainderScalarVectorInterval = (s, v) => {
- return FP.f32.toVector(v.map((e) => FP.f32.remainderInterval(s, e)));
-};
+import { d } from './f32_remainder.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.remainderInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorScalarToVectorCases(
- sparseVectorF32Range(dim),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- remainderVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarVectorToVectorCases(
- sparseF32Range(),
- sparseVectorF32Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- remainderScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_remainder', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -84,7 +25,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('%'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('%'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector').
@@ -100,7 +41,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('%'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('%'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('scalar_compound').
@@ -118,7 +59,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('%='), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, compoundBinary('%='), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector_scalar').
@@ -138,8 +79,8 @@ fn(async (t) => {
await run(
t,
binary('%'),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -162,8 +103,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('%='),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -186,8 +127,8 @@ fn(async (t) => {
await run(
t,
binary('%'),
- [TypeF32, TypeVec(dim, TypeF32)],
- TypeVec(dim, TypeF32),
+ [Type.f32, Type.vec(dim, Type.f32)],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.cache.js
new file mode 100644
index 0000000000..d328133b14
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.cache.js
@@ -0,0 +1,60 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { sparseScalarF32Range, sparseVectorF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+const subtractionVectorScalarInterval = (v, s) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.subtractionInterval(e, s)));
+};
+
+const subtractionScalarVectorInterval = (s, v) => {
+ return FP.f32.toVector(v.map((e) => FP.f32.subtractionInterval(s, e)));
+};
+
+const scalar_cases = [true, false].
+map((nonConst) => ({
+ [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.subtractionInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const vector_scalar_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateVectorScalarToVectorCases(
+ sparseVectorF32Range(dim),
+ sparseScalarF32Range(),
+ nonConst ? 'unfiltered' : 'finite',
+ subtractionVectorScalarInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const scalar_vector_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateScalarVectorToVectorCases(
+ sparseScalarF32Range(),
+ sparseVectorF32Range(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ subtractionScalarVectorInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('binary/f32_subtraction', {
+ ...scalar_cases,
+ ...vector_scalar_cases,
+ ...scalar_vector_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.spec.js
index fe3ed8783a..92325e6550 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/f32_subtraction.spec.js
@@ -4,73 +4,14 @@
Execution Tests for non-matrix f32 subtraction expression
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32, TypeVec } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { sparseF32Range, sparseVectorF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-const subtractionVectorScalarInterval = (v, s) => {
- return FP.f32.toVector(v.map((e) => FP.f32.subtractionInterval(e, s)));
-};
-
-const subtractionScalarVectorInterval = (s, v) => {
- return FP.f32.toVector(v.map((e) => FP.f32.subtractionInterval(s, e)));
-};
+import { d } from './f32_subtraction.cache.js';
export const g = makeTestGroup(GPUTest);
-const scalar_cases = [true, false].
-map((nonConst) => ({
- [`scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.subtractionInterval
- );
- }
-})).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const vector_scalar_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorScalarToVectorCases(
- sparseVectorF32Range(dim),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- subtractionVectorScalarInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-const scalar_vector_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`scalar_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateScalarVectorToVectorCases(
- sparseF32Range(),
- sparseVectorF32Range(dim),
- nonConst ? 'unfiltered' : 'finite',
- subtractionScalarVectorInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('binary/f32_subtraction', {
- ...scalar_cases,
- ...vector_scalar_cases,
- ...scalar_vector_cases
-});
-
g.test('scalar').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -84,7 +25,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, binary('-'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('-'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector').
@@ -100,7 +41,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const' // Using vectorize to generate vector cases based on scalar cases
);
- await run(t, binary('-'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, binary('-'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('scalar_compound').
@@ -118,7 +59,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'scalar_const' : 'scalar_non_const'
);
- await run(t, compoundBinary('-='), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, compoundBinary('-='), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('vector_scalar').
@@ -138,8 +79,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -162,8 +103,8 @@ fn(async (t) => {
await run(
t,
compoundBinary('-='),
- [TypeVec(dim, TypeF32), TypeF32],
- TypeVec(dim, TypeF32),
+ [Type.vec(dim, Type.f32), Type.f32],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
@@ -186,8 +127,8 @@ fn(async (t) => {
await run(
t,
binary('-'),
- [TypeF32, TypeVec(dim, TypeF32)],
- TypeVec(dim, TypeF32),
+ [Type.f32, Type.vec(dim, Type.f32)],
+ Type.vec(dim, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.cache.js
new file mode 100644
index 0000000000..c1ceca4ec6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.cache.js
@@ -0,0 +1,306 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../util/constants.js';import { sparseI32Range, vectorI32Range } from '../../../../util/math.js';import {
+ generateBinaryToI32Cases,
+ generateI32VectorBinaryToVectorCases,
+ generateVectorI32BinaryToVectorCases } from
+'../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+function i32_add(x, y) {
+ return x + y;
+}
+
+function i32_subtract(x, y) {
+ return x - y;
+}
+
+function i32_multiply(x, y) {
+ return Math.imul(x, y);
+}
+
+function i32_divide_non_const(x, y) {
+ if (y === 0) {
+ return x;
+ }
+ if (x === kValue.i32.negative.min && y === -1) {
+ return x;
+ }
+ return x / y;
+}
+
+function i32_divide_const(x, y) {
+ if (y === 0) {
+ return undefined;
+ }
+ if (x === kValue.i32.negative.min && y === -1) {
+ return undefined;
+ }
+ return x / y;
+}
+
+function i32_remainder_non_const(x, y) {
+ if (y === 0) {
+ return 0;
+ }
+ if (x === kValue.i32.negative.min && y === -1) {
+ return 0;
+ }
+ return x % y;
+}
+
+function i32_remainder_const(x, y) {
+ if (y === 0) {
+ return undefined;
+ }
+ if (x === kValue.i32.negative.min && y === -1) {
+ return undefined;
+ }
+ return x % y;
+}
+
+export const d = makeCaseCache('binary/i32_arithmetic', {
+ addition: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_add);
+ },
+ subtraction: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_subtract);
+ },
+ multiplication: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_multiply);
+ },
+ division_non_const: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_divide_non_const);
+ },
+ division_const: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_divide_const);
+ },
+ remainder_non_const: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_remainder_non_const);
+ },
+ remainder_const: () => {
+ return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_remainder_const);
+ },
+ addition_scalar_vector2: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_add);
+ },
+ addition_scalar_vector3: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_add);
+ },
+ addition_scalar_vector4: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_add);
+ },
+ addition_vector2_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_add);
+ },
+ addition_vector3_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_add);
+ },
+ addition_vector4_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_add);
+ },
+ subtraction_scalar_vector2: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_subtract);
+ },
+ subtraction_scalar_vector3: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_subtract);
+ },
+ subtraction_scalar_vector4: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_subtract);
+ },
+ subtraction_vector2_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_subtract);
+ },
+ subtraction_vector3_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_subtract);
+ },
+ subtraction_vector4_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_subtract);
+ },
+ multiplication_scalar_vector2: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_multiply);
+ },
+ multiplication_scalar_vector3: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_multiply);
+ },
+ multiplication_scalar_vector4: () => {
+ return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_multiply);
+ },
+ multiplication_vector2_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_multiply);
+ },
+ multiplication_vector3_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_multiply);
+ },
+ multiplication_vector4_scalar: () => {
+ return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_multiply);
+ },
+ division_scalar_vector2_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(2),
+ i32_divide_non_const
+ );
+ },
+ division_scalar_vector3_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(3),
+ i32_divide_non_const
+ );
+ },
+ division_scalar_vector4_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(4),
+ i32_divide_non_const
+ );
+ },
+ division_vector2_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(2),
+ sparseI32Range(),
+ i32_divide_non_const
+ );
+ },
+ division_vector3_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(3),
+ sparseI32Range(),
+ i32_divide_non_const
+ );
+ },
+ division_vector4_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(4),
+ sparseI32Range(),
+ i32_divide_non_const
+ );
+ },
+ division_scalar_vector2_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(2),
+ i32_divide_const
+ );
+ },
+ division_scalar_vector3_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(3),
+ i32_divide_const
+ );
+ },
+ division_scalar_vector4_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(4),
+ i32_divide_const
+ );
+ },
+ division_vector2_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(2),
+ sparseI32Range(),
+ i32_divide_const
+ );
+ },
+ division_vector3_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(3),
+ sparseI32Range(),
+ i32_divide_const
+ );
+ },
+ division_vector4_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(4),
+ sparseI32Range(),
+ i32_divide_const
+ );
+ },
+ remainder_scalar_vector2_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(2),
+ i32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector3_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(3),
+ i32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector4_non_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(4),
+ i32_remainder_non_const
+ );
+ },
+ remainder_vector2_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(2),
+ sparseI32Range(),
+ i32_remainder_non_const
+ );
+ },
+ remainder_vector3_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(3),
+ sparseI32Range(),
+ i32_remainder_non_const
+ );
+ },
+ remainder_vector4_scalar_non_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(4),
+ sparseI32Range(),
+ i32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector2_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(2),
+ i32_remainder_const
+ );
+ },
+ remainder_scalar_vector3_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(3),
+ i32_remainder_const
+ );
+ },
+ remainder_scalar_vector4_const: () => {
+ return generateI32VectorBinaryToVectorCases(
+ sparseI32Range(),
+ vectorI32Range(4),
+ i32_remainder_const
+ );
+ },
+ remainder_vector2_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(2),
+ sparseI32Range(),
+ i32_remainder_const
+ );
+ },
+ remainder_vector3_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(3),
+ sparseI32Range(),
+ i32_remainder_const
+ );
+ },
+ remainder_vector4_scalar_const: () => {
+ return generateVectorI32BinaryToVectorCases(
+ vectorI32Range(4),
+ sparseI32Range(),
+ i32_remainder_const
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.spec.js
index 57f03df3da..8f84d041b0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_arithmetic.spec.js
@@ -4,320 +4,14 @@
Execution Tests for the i32 arithmetic binary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { kValue } from '../../../../util/constants.js';
-import { TypeI32, TypeVec } from '../../../../util/conversion.js';
-import { sparseI32Range, vectorI32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
-import {
- allInputSources,
- generateBinaryToI32Cases,
- generateI32VectorBinaryToVectorCases,
- generateVectorI32BinaryToVectorCases,
- run } from
-'../expression.js';
+import { Type } from '../../../../util/conversion.js';
+import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-function i32_add(x, y) {
- return x + y;
-}
-
-function i32_subtract(x, y) {
- return x - y;
-}
-
-function i32_multiply(x, y) {
- return Math.imul(x, y);
-}
-
-function i32_divide_non_const(x, y) {
- if (y === 0) {
- return x;
- }
- if (x === kValue.i32.negative.min && y === -1) {
- return x;
- }
- return x / y;
-}
-
-function i32_divide_const(x, y) {
- if (y === 0) {
- return undefined;
- }
- if (x === kValue.i32.negative.min && y === -1) {
- return undefined;
- }
- return x / y;
-}
-
-function i32_remainder_non_const(x, y) {
- if (y === 0) {
- return 0;
- }
- if (x === kValue.i32.negative.min && y === -1) {
- return 0;
- }
- return x % y;
-}
-
-function i32_remainder_const(x, y) {
- if (y === 0) {
- return undefined;
- }
- if (x === kValue.i32.negative.min && y === -1) {
- return undefined;
- }
- return x % y;
-}
+import { d } from './i32_arithmetic.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('binary/i32_arithmetic', {
- addition: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_add);
- },
- subtraction: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_subtract);
- },
- multiplication: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_multiply);
- },
- division_non_const: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_divide_non_const);
- },
- division_const: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_divide_const);
- },
- remainder_non_const: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_remainder_non_const);
- },
- remainder_const: () => {
- return generateBinaryToI32Cases(sparseI32Range(), sparseI32Range(), i32_remainder_const);
- },
- addition_scalar_vector2: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_add);
- },
- addition_scalar_vector3: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_add);
- },
- addition_scalar_vector4: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_add);
- },
- addition_vector2_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_add);
- },
- addition_vector3_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_add);
- },
- addition_vector4_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_add);
- },
- subtraction_scalar_vector2: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_subtract);
- },
- subtraction_scalar_vector3: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_subtract);
- },
- subtraction_scalar_vector4: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_subtract);
- },
- subtraction_vector2_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_subtract);
- },
- subtraction_vector3_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_subtract);
- },
- subtraction_vector4_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_subtract);
- },
- multiplication_scalar_vector2: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(2), i32_multiply);
- },
- multiplication_scalar_vector3: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(3), i32_multiply);
- },
- multiplication_scalar_vector4: () => {
- return generateI32VectorBinaryToVectorCases(sparseI32Range(), vectorI32Range(4), i32_multiply);
- },
- multiplication_vector2_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(2), sparseI32Range(), i32_multiply);
- },
- multiplication_vector3_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(3), sparseI32Range(), i32_multiply);
- },
- multiplication_vector4_scalar: () => {
- return generateVectorI32BinaryToVectorCases(vectorI32Range(4), sparseI32Range(), i32_multiply);
- },
- division_scalar_vector2_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(2),
- i32_divide_non_const
- );
- },
- division_scalar_vector3_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(3),
- i32_divide_non_const
- );
- },
- division_scalar_vector4_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(4),
- i32_divide_non_const
- );
- },
- division_vector2_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(2),
- sparseI32Range(),
- i32_divide_non_const
- );
- },
- division_vector3_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(3),
- sparseI32Range(),
- i32_divide_non_const
- );
- },
- division_vector4_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(4),
- sparseI32Range(),
- i32_divide_non_const
- );
- },
- division_scalar_vector2_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(2),
- i32_divide_const
- );
- },
- division_scalar_vector3_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(3),
- i32_divide_const
- );
- },
- division_scalar_vector4_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(4),
- i32_divide_const
- );
- },
- division_vector2_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(2),
- sparseI32Range(),
- i32_divide_const
- );
- },
- division_vector3_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(3),
- sparseI32Range(),
- i32_divide_const
- );
- },
- division_vector4_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(4),
- sparseI32Range(),
- i32_divide_const
- );
- },
- remainder_scalar_vector2_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(2),
- i32_remainder_non_const
- );
- },
- remainder_scalar_vector3_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(3),
- i32_remainder_non_const
- );
- },
- remainder_scalar_vector4_non_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(4),
- i32_remainder_non_const
- );
- },
- remainder_vector2_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(2),
- sparseI32Range(),
- i32_remainder_non_const
- );
- },
- remainder_vector3_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(3),
- sparseI32Range(),
- i32_remainder_non_const
- );
- },
- remainder_vector4_scalar_non_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(4),
- sparseI32Range(),
- i32_remainder_non_const
- );
- },
- remainder_scalar_vector2_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(2),
- i32_remainder_const
- );
- },
- remainder_scalar_vector3_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(3),
- i32_remainder_const
- );
- },
- remainder_scalar_vector4_const: () => {
- return generateI32VectorBinaryToVectorCases(
- sparseI32Range(),
- vectorI32Range(4),
- i32_remainder_const
- );
- },
- remainder_vector2_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(2),
- sparseI32Range(),
- i32_remainder_const
- );
- },
- remainder_vector3_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(3),
- sparseI32Range(),
- i32_remainder_const
- );
- },
- remainder_vector4_scalar_const: () => {
- return generateVectorI32BinaryToVectorCases(
- vectorI32Range(4),
- sparseI32Range(),
- i32_remainder_const
- );
- }
-});
-
g.test('addition').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -330,7 +24,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('addition');
- await run(t, binary('+'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, binary('+'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('addition_compound').
@@ -345,7 +39,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('addition');
- await run(t, compoundBinary('+='), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, compoundBinary('+='), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('subtraction').
@@ -360,7 +54,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('subtraction');
- await run(t, binary('-'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, binary('-'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('subtraction_compound').
@@ -375,7 +69,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('subtraction');
- await run(t, compoundBinary('-='), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, compoundBinary('-='), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('multiplication').
@@ -390,7 +84,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('multiplication');
- await run(t, binary('*'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, binary('*'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('multiplication_compound').
@@ -405,7 +99,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('multiplication');
- await run(t, compoundBinary('*='), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, compoundBinary('*='), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('division').
@@ -422,7 +116,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'division_const' : 'division_non_const'
);
- await run(t, binary('/'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, binary('/'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('division_compound').
@@ -439,7 +133,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'division_const' : 'division_non_const'
);
- await run(t, compoundBinary('/='), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, compoundBinary('/='), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('remainder').
@@ -456,7 +150,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'remainder_const' : 'remainder_non_const'
);
- await run(t, binary('%'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, binary('%'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('remainder_compound').
@@ -473,7 +167,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'remainder_const' : 'remainder_non_const'
);
- await run(t, compoundBinary('%='), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, compoundBinary('%='), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('addition_scalar_vector').
@@ -488,9 +182,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`addition_scalar_vector${vec_size}`);
- await run(t, binary('+'), [TypeI32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('+'), [Type.i32, vec_type], vec_type, t.params, cases);
});
g.test('addition_vector_scalar').
@@ -505,9 +199,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`addition_vector${vec_size}_scalar`);
- await run(t, binary('+'), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, binary('+'), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('addition_vector_scalar_compound').
@@ -522,9 +216,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`addition_vector${vec_size}_scalar`);
- await run(t, compoundBinary('+='), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, compoundBinary('+='), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('subtraction_scalar_vector').
@@ -539,9 +233,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`subtraction_scalar_vector${vec_size}`);
- await run(t, binary('-'), [TypeI32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('-'), [Type.i32, vec_type], vec_type, t.params, cases);
});
g.test('subtraction_vector_scalar').
@@ -556,9 +250,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`subtraction_vector${vec_size}_scalar`);
- await run(t, binary('-'), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, binary('-'), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('subtraction_vector_scalar_compound').
@@ -573,9 +267,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`subtraction_vector${vec_size}_scalar`);
- await run(t, compoundBinary('-='), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, compoundBinary('-='), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('multiplication_scalar_vector').
@@ -590,9 +284,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`multiplication_scalar_vector${vec_size}`);
- await run(t, binary('*'), [TypeI32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('*'), [Type.i32, vec_type], vec_type, t.params, cases);
});
g.test('multiplication_vector_scalar').
@@ -607,9 +301,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`multiplication_vector${vec_size}_scalar`);
- await run(t, binary('*'), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, binary('*'), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('multiplication_vector_scalar_compound').
@@ -624,9 +318,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const cases = await d.get(`multiplication_vector${vec_size}_scalar`);
- await run(t, compoundBinary('*='), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, compoundBinary('*='), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('division_scalar_vector').
@@ -641,10 +335,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_scalar_vector${vec_size}_${source}`);
- await run(t, binary('/'), [TypeI32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('/'), [Type.i32, vec_type], vec_type, t.params, cases);
});
g.test('division_vector_scalar').
@@ -659,10 +353,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_vector${vec_size}_scalar_${source}`);
- await run(t, binary('/'), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, binary('/'), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('division_vector_scalar_compound').
@@ -677,10 +371,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_vector${vec_size}_scalar_${source}`);
- await run(t, compoundBinary('/='), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, compoundBinary('/='), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('remainder_scalar_vector').
@@ -695,10 +389,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_scalar_vector${vec_size}_${source}`);
- await run(t, binary('%'), [TypeI32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('%'), [Type.i32, vec_type], vec_type, t.params, cases);
});
g.test('remainder_vector_scalar').
@@ -713,10 +407,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_vector${vec_size}_scalar_${source}`);
- await run(t, binary('%'), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, binary('%'), [vec_type, Type.i32], vec_type, t.params, cases);
});
g.test('remainder_vector_scalar_compound').
@@ -731,8 +425,8 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeI32);
+ const vec_type = Type.vec(vec_size, Type.i32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_vector${vec_size}_scalar_${source}`);
- await run(t, compoundBinary('%='), [vec_type, TypeI32], vec_type, t.params, cases);
+ await run(t, compoundBinary('%='), [vec_type, Type.i32], vec_type, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.cache.js
new file mode 100644
index 0000000000..4576051d1d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.cache.js
@@ -0,0 +1,21 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { bool, i32 } from '../../../../util/conversion.js';import { vectorI32Range } from '../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+/**
+ * @returns a test case for the provided left hand & right hand values and
+ * expected boolean result.
+ */
+function makeCase(lhs, rhs, expected_answer) {
+ return { input: [i32(lhs), i32(rhs)], expected: bool(expected_answer) };
+}
+
+export const d = makeCaseCache('binary/i32_comparison', {
+ equals: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] === v[1])),
+ not_equals: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] !== v[1])),
+ less_than: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] < v[1])),
+ less_equal: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] <= v[1])),
+ greater_than: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] > v[1])),
+ greater_equal: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] >= v[1]))
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.spec.js
index 939bb51cf2..e0f78079ba 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/i32_comparison.spec.js
@@ -4,32 +4,14 @@
Execution Tests for the i32 comparison expressions
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { i32, bool, TypeBool, TypeI32 } from '../../../../util/conversion.js';
-import { vectorI32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary } from './binary.js';
+import { d } from './i32_comparison.cache.js';
export const g = makeTestGroup(GPUTest);
-/**
- * @returns a test case for the provided left hand & right hand values and
- * expected boolean result.
- */
-function makeCase(lhs, rhs, expected_answer) {
- return { input: [i32(lhs), i32(rhs)], expected: bool(expected_answer) };
-}
-
-export const d = makeCaseCache('binary/i32_comparison', {
- equals: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] === v[1])),
- not_equals: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] !== v[1])),
- less_than: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] < v[1])),
- less_equal: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] <= v[1])),
- greater_than: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] > v[1])),
- greater_equal: () => vectorI32Range(2).map((v) => makeCase(v[0], v[1], v[0] >= v[1]))
-});
-
g.test('equals').
specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
desc(
@@ -42,7 +24,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('equals');
- await run(t, binary('=='), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('=='), [Type.i32, Type.i32], Type.bool, t.params, cases);
});
g.test('not_equals').
@@ -57,7 +39,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('not_equals');
- await run(t, binary('!='), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('!='), [Type.i32, Type.i32], Type.bool, t.params, cases);
});
g.test('less_than').
@@ -72,7 +54,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('less_than');
- await run(t, binary('<'), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('<'), [Type.i32, Type.i32], Type.bool, t.params, cases);
});
g.test('less_equals').
@@ -87,7 +69,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('less_equal');
- await run(t, binary('<='), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('<='), [Type.i32, Type.i32], Type.bool, t.params, cases);
});
g.test('greater_than').
@@ -102,7 +84,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('greater_than');
- await run(t, binary('>'), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('>'), [Type.i32, Type.i32], Type.bool, t.params, cases);
});
g.test('greater_equals').
@@ -117,5 +99,5 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('greater_equal');
- await run(t, binary('>='), [TypeI32, TypeI32], TypeBool, t.params, cases);
+ await run(t, binary('>='), [Type.i32, Type.i32], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.cache.js
new file mode 100644
index 0000000000..cf7ffcf99e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.cache.js
@@ -0,0 +1,293 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { sparseU32Range, vectorU32Range } from '../../../../util/math.js';import { generateBinaryToU32Cases,
+generateU32VectorBinaryToVectorCases,
+generateVectorU32BinaryToVectorCases } from
+'../case.js';
+import { makeCaseCache } from '../case_cache.js';
+
+function u32_add(x, y) {
+ return x + y;
+}
+
+function u32_subtract(x, y) {
+ return x - y;
+}
+
+function u32_multiply(x, y) {
+ return Math.imul(x, y);
+}
+
+function u32_divide_non_const(x, y) {
+ if (y === 0) {
+ return x;
+ }
+ return x / y;
+}
+
+function u32_divide_const(x, y) {
+ if (y === 0) {
+ return undefined;
+ }
+ return x / y;
+}
+
+function u32_remainder_non_const(x, y) {
+ if (y === 0) {
+ return 0;
+ }
+ return x % y;
+}
+
+function u32_remainder_const(x, y) {
+ if (y === 0) {
+ return undefined;
+ }
+ return x % y;
+}
+
+export const d = makeCaseCache('binary/u32_arithmetic', {
+ addition: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_add);
+ },
+ subtraction: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_subtract);
+ },
+ multiplication: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_multiply);
+ },
+ division_non_const: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_divide_non_const);
+ },
+ division_const: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_divide_const);
+ },
+ remainder_non_const: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_remainder_non_const);
+ },
+ remainder_const: () => {
+ return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_remainder_const);
+ },
+ addition_scalar_vector2: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_add);
+ },
+ addition_scalar_vector3: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_add);
+ },
+ addition_scalar_vector4: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_add);
+ },
+ addition_vector2_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_add);
+ },
+ addition_vector3_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_add);
+ },
+ addition_vector4_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_add);
+ },
+ subtraction_scalar_vector2: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_subtract);
+ },
+ subtraction_scalar_vector3: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_subtract);
+ },
+ subtraction_scalar_vector4: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_subtract);
+ },
+ subtraction_vector2_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_subtract);
+ },
+ subtraction_vector3_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_subtract);
+ },
+ subtraction_vector4_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_subtract);
+ },
+ multiplication_scalar_vector2: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_multiply);
+ },
+ multiplication_scalar_vector3: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_multiply);
+ },
+ multiplication_scalar_vector4: () => {
+ return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_multiply);
+ },
+ multiplication_vector2_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_multiply);
+ },
+ multiplication_vector3_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_multiply);
+ },
+ multiplication_vector4_scalar: () => {
+ return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_multiply);
+ },
+ division_scalar_vector2_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(2),
+ u32_divide_non_const
+ );
+ },
+ division_scalar_vector3_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(3),
+ u32_divide_non_const
+ );
+ },
+ division_scalar_vector4_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(4),
+ u32_divide_non_const
+ );
+ },
+ division_vector2_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(2),
+ sparseU32Range(),
+ u32_divide_non_const
+ );
+ },
+ division_vector3_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(3),
+ sparseU32Range(),
+ u32_divide_non_const
+ );
+ },
+ division_vector4_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(4),
+ sparseU32Range(),
+ u32_divide_non_const
+ );
+ },
+ division_scalar_vector2_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(2),
+ u32_divide_const
+ );
+ },
+ division_scalar_vector3_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(3),
+ u32_divide_const
+ );
+ },
+ division_scalar_vector4_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(4),
+ u32_divide_const
+ );
+ },
+ division_vector2_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(2),
+ sparseU32Range(),
+ u32_divide_const
+ );
+ },
+ division_vector3_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(3),
+ sparseU32Range(),
+ u32_divide_const
+ );
+ },
+ division_vector4_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(4),
+ sparseU32Range(),
+ u32_divide_const
+ );
+ },
+ remainder_scalar_vector2_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(2),
+ u32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector3_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(3),
+ u32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector4_non_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(4),
+ u32_remainder_non_const
+ );
+ },
+ remainder_vector2_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(2),
+ sparseU32Range(),
+ u32_remainder_non_const
+ );
+ },
+ remainder_vector3_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(3),
+ sparseU32Range(),
+ u32_remainder_non_const
+ );
+ },
+ remainder_vector4_scalar_non_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(4),
+ sparseU32Range(),
+ u32_remainder_non_const
+ );
+ },
+ remainder_scalar_vector2_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(2),
+ u32_remainder_const
+ );
+ },
+ remainder_scalar_vector3_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(3),
+ u32_remainder_const
+ );
+ },
+ remainder_scalar_vector4_const: () => {
+ return generateU32VectorBinaryToVectorCases(
+ sparseU32Range(),
+ vectorU32Range(4),
+ u32_remainder_const
+ );
+ },
+ remainder_vector2_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(2),
+ sparseU32Range(),
+ u32_remainder_const
+ );
+ },
+ remainder_vector3_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(3),
+ sparseU32Range(),
+ u32_remainder_const
+ );
+ },
+ remainder_vector4_scalar_const: () => {
+ return generateVectorU32BinaryToVectorCases(
+ vectorU32Range(4),
+ sparseU32Range(),
+ u32_remainder_const
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.spec.js
index 32fd44b474..0a86c46ffd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_arithmetic.spec.js
@@ -4,307 +4,14 @@
Execution Tests for the u32 arithmetic binary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeU32, TypeVec } from '../../../../util/conversion.js';
-import { sparseU32Range, vectorU32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
-import {
- allInputSources,
- generateBinaryToU32Cases,
- generateU32VectorBinaryToVectorCases,
- generateVectorU32BinaryToVectorCases,
- run } from
-'../expression.js';
+import { Type } from '../../../../util/conversion.js';
+import { allInputSources, run } from '../expression.js';
import { binary, compoundBinary } from './binary.js';
-
-function u32_add(x, y) {
- return x + y;
-}
-
-function u32_subtract(x, y) {
- return x - y;
-}
-
-function u32_multiply(x, y) {
- return Math.imul(x, y);
-}
-
-function u32_divide_non_const(x, y) {
- if (y === 0) {
- return x;
- }
- return x / y;
-}
-
-function u32_divide_const(x, y) {
- if (y === 0) {
- return undefined;
- }
- return x / y;
-}
-
-function u32_remainder_non_const(x, y) {
- if (y === 0) {
- return 0;
- }
- return x % y;
-}
-
-function u32_remainder_const(x, y) {
- if (y === 0) {
- return undefined;
- }
- return x % y;
-}
+import { d } from './u32_arithmetic.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('binary/u32_arithmetic', {
- addition: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_add);
- },
- subtraction: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_subtract);
- },
- multiplication: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_multiply);
- },
- division_non_const: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_divide_non_const);
- },
- division_const: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_divide_const);
- },
- remainder_non_const: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_remainder_non_const);
- },
- remainder_const: () => {
- return generateBinaryToU32Cases(sparseU32Range(), sparseU32Range(), u32_remainder_const);
- },
- addition_scalar_vector2: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_add);
- },
- addition_scalar_vector3: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_add);
- },
- addition_scalar_vector4: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_add);
- },
- addition_vector2_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_add);
- },
- addition_vector3_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_add);
- },
- addition_vector4_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_add);
- },
- subtraction_scalar_vector2: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_subtract);
- },
- subtraction_scalar_vector3: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_subtract);
- },
- subtraction_scalar_vector4: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_subtract);
- },
- subtraction_vector2_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_subtract);
- },
- subtraction_vector3_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_subtract);
- },
- subtraction_vector4_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_subtract);
- },
- multiplication_scalar_vector2: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(2), u32_multiply);
- },
- multiplication_scalar_vector3: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(3), u32_multiply);
- },
- multiplication_scalar_vector4: () => {
- return generateU32VectorBinaryToVectorCases(sparseU32Range(), vectorU32Range(4), u32_multiply);
- },
- multiplication_vector2_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(2), sparseU32Range(), u32_multiply);
- },
- multiplication_vector3_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(3), sparseU32Range(), u32_multiply);
- },
- multiplication_vector4_scalar: () => {
- return generateVectorU32BinaryToVectorCases(vectorU32Range(4), sparseU32Range(), u32_multiply);
- },
- division_scalar_vector2_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(2),
- u32_divide_non_const
- );
- },
- division_scalar_vector3_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(3),
- u32_divide_non_const
- );
- },
- division_scalar_vector4_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(4),
- u32_divide_non_const
- );
- },
- division_vector2_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(2),
- sparseU32Range(),
- u32_divide_non_const
- );
- },
- division_vector3_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(3),
- sparseU32Range(),
- u32_divide_non_const
- );
- },
- division_vector4_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(4),
- sparseU32Range(),
- u32_divide_non_const
- );
- },
- division_scalar_vector2_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(2),
- u32_divide_const
- );
- },
- division_scalar_vector3_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(3),
- u32_divide_const
- );
- },
- division_scalar_vector4_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(4),
- u32_divide_const
- );
- },
- division_vector2_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(2),
- sparseU32Range(),
- u32_divide_const
- );
- },
- division_vector3_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(3),
- sparseU32Range(),
- u32_divide_const
- );
- },
- division_vector4_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(4),
- sparseU32Range(),
- u32_divide_const
- );
- },
- remainder_scalar_vector2_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(2),
- u32_remainder_non_const
- );
- },
- remainder_scalar_vector3_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(3),
- u32_remainder_non_const
- );
- },
- remainder_scalar_vector4_non_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(4),
- u32_remainder_non_const
- );
- },
- remainder_vector2_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(2),
- sparseU32Range(),
- u32_remainder_non_const
- );
- },
- remainder_vector3_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(3),
- sparseU32Range(),
- u32_remainder_non_const
- );
- },
- remainder_vector4_scalar_non_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(4),
- sparseU32Range(),
- u32_remainder_non_const
- );
- },
- remainder_scalar_vector2_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(2),
- u32_remainder_const
- );
- },
- remainder_scalar_vector3_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(3),
- u32_remainder_const
- );
- },
- remainder_scalar_vector4_const: () => {
- return generateU32VectorBinaryToVectorCases(
- sparseU32Range(),
- vectorU32Range(4),
- u32_remainder_const
- );
- },
- remainder_vector2_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(2),
- sparseU32Range(),
- u32_remainder_const
- );
- },
- remainder_vector3_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(3),
- sparseU32Range(),
- u32_remainder_const
- );
- },
- remainder_vector4_scalar_const: () => {
- return generateVectorU32BinaryToVectorCases(
- vectorU32Range(4),
- sparseU32Range(),
- u32_remainder_const
- );
- }
-});
-
g.test('addition').
specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
desc(
@@ -317,7 +24,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('addition');
- await run(t, binary('+'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, binary('+'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('addition_compound').
@@ -332,7 +39,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('addition');
- await run(t, compoundBinary('+='), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, compoundBinary('+='), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('subtraction').
@@ -347,7 +54,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('subtraction');
- await run(t, binary('-'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, binary('-'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('subtraction_compound').
@@ -362,7 +69,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('subtraction');
- await run(t, compoundBinary('-='), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, compoundBinary('-='), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('multiplication').
@@ -377,7 +84,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('multiplication');
- await run(t, binary('*'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, binary('*'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('multiplication_compound').
@@ -392,7 +99,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('multiplication');
- await run(t, compoundBinary('*='), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, compoundBinary('*='), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('division').
@@ -409,7 +116,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'division_const' : 'division_non_const'
);
- await run(t, binary('/'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, binary('/'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('division_compound').
@@ -426,7 +133,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'division_const' : 'division_non_const'
);
- await run(t, compoundBinary('/='), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, compoundBinary('/='), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('remainder').
@@ -443,7 +150,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'remainder_const' : 'remainder_non_const'
);
- await run(t, binary('%'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, binary('%'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('remainder_compound').
@@ -460,7 +167,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'remainder_const' : 'remainder_non_const'
);
- await run(t, compoundBinary('%='), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, compoundBinary('%='), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('addition_scalar_vector').
@@ -475,9 +182,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`addition_scalar_vector${vec_size}`);
- await run(t, binary('+'), [TypeU32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('+'), [Type.u32, vec_type], vec_type, t.params, cases);
});
g.test('addition_vector_scalar').
@@ -492,9 +199,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`addition_vector${vec_size}_scalar`);
- await run(t, binary('+'), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, binary('+'), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('addition_vector_scalar_compound').
@@ -509,9 +216,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`addition_vector${vec_size}_scalar`);
- await run(t, compoundBinary('+='), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, compoundBinary('+='), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('subtraction_scalar_vector').
@@ -526,9 +233,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`subtraction_scalar_vector${vec_size}`);
- await run(t, binary('-'), [TypeU32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('-'), [Type.u32, vec_type], vec_type, t.params, cases);
});
g.test('subtraction_vector_scalar').
@@ -543,9 +250,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`subtraction_vector${vec_size}_scalar`);
- await run(t, binary('-'), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, binary('-'), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('subtraction_vector_scalar_compound').
@@ -560,9 +267,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`subtraction_vector${vec_size}_scalar`);
- await run(t, compoundBinary('-='), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, compoundBinary('-='), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('multiplication_scalar_vector').
@@ -577,9 +284,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`multiplication_scalar_vector${vec_size}`);
- await run(t, binary('*'), [TypeU32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('*'), [Type.u32, vec_type], vec_type, t.params, cases);
});
g.test('multiplication_vector_scalar').
@@ -594,9 +301,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`multiplication_vector${vec_size}_scalar`);
- await run(t, binary('*'), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, binary('*'), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('multiplication_vector_scalar_compound').
@@ -611,9 +318,9 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const cases = await d.get(`multiplication_vector${vec_size}_scalar`);
- await run(t, compoundBinary('*='), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, compoundBinary('*='), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('division_scalar_vector').
@@ -628,10 +335,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_scalar_vector${vec_size}_${source}`);
- await run(t, binary('/'), [TypeU32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('/'), [Type.u32, vec_type], vec_type, t.params, cases);
});
g.test('division_vector_scalar').
@@ -646,10 +353,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_vector${vec_size}_scalar_${source}`);
- await run(t, binary('/'), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, binary('/'), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('division_vector_scalar_compound').
@@ -664,10 +371,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`division_vector${vec_size}_scalar_${source}`);
- await run(t, compoundBinary('/='), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, compoundBinary('/='), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('remainder_scalar_vector').
@@ -682,10 +389,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_rhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_rhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_scalar_vector${vec_size}_${source}`);
- await run(t, binary('%'), [TypeU32, vec_type], vec_type, t.params, cases);
+ await run(t, binary('%'), [Type.u32, vec_type], vec_type, t.params, cases);
});
g.test('remainder_vector_scalar').
@@ -700,10 +407,10 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_vector${vec_size}_scalar_${source}`);
- await run(t, binary('%'), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, binary('%'), [vec_type, Type.u32], vec_type, t.params, cases);
});
g.test('remainder_vector_scalar_compound').
@@ -718,8 +425,8 @@ u.combine('inputSource', allInputSources).combine('vectorize_lhs', [2, 3, 4])
).
fn(async (t) => {
const vec_size = t.params.vectorize_lhs;
- const vec_type = TypeVec(vec_size, TypeU32);
+ const vec_type = Type.vec(vec_size, Type.u32);
const source = t.params.inputSource === 'const' ? 'const' : 'non_const';
const cases = await d.get(`remainder_vector${vec_size}_scalar_${source}`);
- await run(t, compoundBinary('%='), [vec_type, TypeU32], vec_type, t.params, cases);
+ await run(t, compoundBinary('%='), [vec_type, Type.u32], vec_type, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.cache.js
new file mode 100644
index 0000000000..cd4e4c067e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.cache.js
@@ -0,0 +1,21 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { bool, u32 } from '../../../../util/conversion.js';import { vectorU32Range } from '../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+/**
+ * @returns a test case for the provided left hand & right hand values and
+ * expected boolean result.
+ */
+function makeCase(lhs, rhs, expected_answer) {
+ return { input: [u32(lhs), u32(rhs)], expected: bool(expected_answer) };
+}
+
+export const d = makeCaseCache('binary/u32_comparison', {
+ equals: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] === v[1])),
+ not_equals: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] !== v[1])),
+ less_than: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] < v[1])),
+ less_equal: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] <= v[1])),
+ greater_than: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] > v[1])),
+ greater_equal: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] >= v[1]))
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.spec.js
index 20bf128901..a9424f205c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/binary/u32_comparison.spec.js
@@ -4,32 +4,14 @@
Execution Tests for the u32 comparison expressions
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { u32, bool, TypeBool, TypeU32 } from '../../../../util/conversion.js';
-import { vectorU32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { binary } from './binary.js';
+import { d } from './u32_comparison.cache.js';
export const g = makeTestGroup(GPUTest);
-/**
- * @returns a test case for the provided left hand & right hand values and
- * expected boolean result.
- */
-function makeCase(lhs, rhs, expected_answer) {
- return { input: [u32(lhs), u32(rhs)], expected: bool(expected_answer) };
-}
-
-export const d = makeCaseCache('binary/u32_comparison', {
- equals: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] === v[1])),
- not_equals: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] !== v[1])),
- less_than: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] < v[1])),
- less_equal: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] <= v[1])),
- greater_than: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] > v[1])),
- greater_equal: () => vectorU32Range(2).map((v) => makeCase(v[0], v[1], v[0] >= v[1]))
-});
-
g.test('equals').
specURL('https://www.w3.org/TR/WGSL/#comparison-expr').
desc(
@@ -42,7 +24,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('equals');
- await run(t, binary('=='), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('=='), [Type.u32, Type.u32], Type.bool, t.params, cases);
});
g.test('not_equals').
@@ -57,7 +39,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('not_equals');
- await run(t, binary('!='), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('!='), [Type.u32, Type.u32], Type.bool, t.params, cases);
});
g.test('less_than').
@@ -72,7 +54,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('less_than');
- await run(t, binary('<'), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('<'), [Type.u32, Type.u32], Type.bool, t.params, cases);
});
g.test('less_equals').
@@ -87,7 +69,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('less_equal');
- await run(t, binary('<='), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('<='), [Type.u32, Type.u32], Type.bool, t.params, cases);
});
g.test('greater_than').
@@ -102,7 +84,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('greater_than');
- await run(t, binary('>'), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('>'), [Type.u32, Type.u32], Type.bool, t.params, cases);
});
g.test('greater_equals').
@@ -117,5 +99,5 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('greater_equal');
- await run(t, binary('>='), [TypeU32, TypeU32], TypeBool, t.params, cases);
+ await run(t, binary('>='), [Type.u32, Type.u32], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.cache.js
new file mode 100644
index 0000000000..18404671f5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { abstractInt } from '../../../../../util/conversion.js';import { FP } from '../../../../../util/floating_point.js';import { absBigInt, fullI64Range } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract_float|abstract_int]
+const cases = {
+ ...['f32', 'f16', 'abstract'].
+ map((trait) => ({
+ [`${trait === 'abstract' ? 'abstract_float' : trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ 'unfiltered',
+ FP[trait].absInterval
+ );
+ }
+ })).
+ reduce((a, b) => ({ ...a, ...b }), {}),
+ abstract_int: () => {
+ return fullI64Range().map((e) => {
+ return { input: abstractInt(e), expected: abstractInt(absBigInt(e)) };
+ });
+ }
+};
+
+export const d = makeCaseCache('abs', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.spec.js
index d6f843e50a..e5f9196d5d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/abs.spec.js
@@ -3,14 +3,14 @@
**/export const description = `
Execution tests for the 'abs' builtin function
-S is AbstractInt, i32, or u32
+S is abstract-int, i32, or u32
T is S or vecN<S>
@const fn abs(e: T ) -> T
The absolute value of e. Component-wise when T is a vector. If e is a signed
integral scalar type and evaluates to the largest negative value, then the
result is e. If e is an unsigned integral type, then the result is e.
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn abs(e: T ) -> T
Returns the absolute value of e (e.g. e with a positive sign bit).
@@ -18,47 +18,26 @@ Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
import { kBit } from '../../../../../util/constants.js';
-import {
- i32Bits,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32Bits,
- TypeAbstractFloat } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, fullF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type, i32Bits, u32Bits } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { d } from './abs.cache.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('abs', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.absInterval);
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.absInterval);
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF64Range(),
- 'unfiltered',
- FP.abstract.absInterval
- );
- }
-});
-
g.test('abstract_int').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
desc(`abstract int tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_int');
+ await run(t, abstractIntBuiltin('abs'), [Type.abstractInt], Type.abstractInt, t.params, cases);
+});
g.test('u32').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
@@ -67,7 +46,7 @@ params((u) =>
u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- await run(t, builtin('abs'), [TypeU32], TypeU32, t.params, [
+ await run(t, builtin('abs'), [Type.u32], Type.u32, t.params, [
// Min and Max u32
{ input: u32Bits(kBit.u32.min), expected: u32Bits(kBit.u32.min) },
{ input: u32Bits(kBit.u32.max), expected: u32Bits(kBit.u32.max) },
@@ -114,7 +93,7 @@ params((u) =>
u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- await run(t, builtin('abs'), [TypeI32], TypeI32, t.params, [
+ await run(t, builtin('abs'), [Type.i32], Type.i32, t.params, [
// Min and max i32
// If e evaluates to the largest negative value, then the result is e.
{ input: i32Bits(kBit.i32.negative.min), expected: i32Bits(kBit.i32.negative.min) },
@@ -166,8 +145,15 @@ combine('inputSource', onlyConstInputSource).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('abstract');
- await run(t, abstractBuiltin('abs'), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ const cases = await d.get('abstract_float');
+ await run(
+ t,
+ abstractFloatBuiltin('abs'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
});
g.test('f32').
@@ -178,7 +164,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('abs'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('abs'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -192,5 +178,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('abs'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('abs'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.cache.js
new file mode 100644
index 0000000000..2252cdfada
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [...linearRange(-1, 1, 100), ...FP[trait].scalarRange()], // acos is defined on [-1, 1]
+ nonConst ? 'unfiltered' : 'finite',
+ // acos has an ulp or inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].acosInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('acos', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.spec.js
index c3970213ff..587d894db4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acos.spec.js
@@ -3,54 +3,39 @@
**/export const description = `
Execution tests for the 'acos' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn acos(e: T ) -> T
Returns the arc cosine of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { linearRange, fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './acos.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const f32_inputs = [
-...linearRange(-1, 1, 100), // acos is defined on [-1, 1]
-...fullF32Range()];
-
-
-const f16_inputs = [
-...linearRange(-1, 1, 100), // acos is defined on [-1, 1]
-...fullF16Range()];
-
-
-export const d = makeCaseCache('acos', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.acosInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.acosInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.acosInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.acosInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('acos'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -60,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('acos'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('acos'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -74,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('acos'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('acos'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.cache.js
new file mode 100644
index 0000000000..7ec1882dea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { biasedRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [...biasedRange(1, 2, 100), ...FP[trait].scalarRange()], // x near 1 can be problematic to implement
+ nonConst ? 'unfiltered' : 'finite',
+ // acosh has an inherited accuracy, so is only expected to be as accurate as f32
+ ...FP[trait !== 'abstract' ? trait : 'f32'].acoshIntervals
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('acosh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.spec.js
index a6d3d4728f..621805031f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/acosh.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Execution tests for the 'acosh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn acosh(e: T ) -> T
Returns the hyperbolic arc cosine of e. The result is 0 when e < 1.
@@ -13,47 +13,33 @@ Note: The result is not mathematically meaningful when e < 1.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './acosh.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const f32_inputs = [
-...biasedRange(1, 2, 100), // x near 1 can be problematic to implement
-...fullF32Range()];
-
-const f16_inputs = [
-...biasedRange(1, 2, 100), // x near 1 can be problematic to implement
-...fullF16Range()];
-
-
-export const d = makeCaseCache('acosh', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', ...FP.f32.acoshIntervals);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', ...FP.f32.acoshIntervals);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', ...FP.f16.acoshIntervals);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', ...FP.f16.acoshIntervals);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('acosh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -63,7 +49,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('acosh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('acosh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -77,5 +63,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('acosh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('acosh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/all.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/all.spec.js
index 09bbb7c02e..8189413ce4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/all.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/all.spec.js
@@ -10,15 +10,7 @@ Returns e if e is scalar.
Returns true if each component of e is true if e is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- False,
- True,
- TypeBool,
- TypeVec,
- vec2,
- vec3,
- vec4 } from
-'../../../../../util/conversion.js';
+import { False, True, Type, vec2, vec3, vec4 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -36,14 +28,14 @@ combine('overload', ['scalar', 'vec2', 'vec3', 'vec4'])
fn(async (t) => {
const overloads = {
scalar: {
- type: TypeBool,
+ type: Type.bool,
cases: [
{ input: False, expected: False },
{ input: True, expected: True }]
},
vec2: {
- type: TypeVec(2, TypeBool),
+ type: Type.vec(2, Type.bool),
cases: [
{ input: vec2(False, False), expected: False },
{ input: vec2(True, False), expected: False },
@@ -52,7 +44,7 @@ fn(async (t) => {
},
vec3: {
- type: TypeVec(3, TypeBool),
+ type: Type.vec(3, Type.bool),
cases: [
{ input: vec3(False, False, False), expected: False },
{ input: vec3(True, False, False), expected: False },
@@ -65,7 +57,7 @@ fn(async (t) => {
},
vec4: {
- type: TypeVec(4, TypeBool),
+ type: Type.vec(4, Type.bool),
cases: [
{ input: vec4(False, False, False, False), expected: False },
{ input: vec4(False, True, False, False), expected: False },
@@ -88,5 +80,5 @@ fn(async (t) => {
};
const overload = overloads[t.params.overload];
- await run(t, builtin('all'), [overload.type], TypeBool, t.params, overload.cases);
+ await run(t, builtin('all'), [overload.type], Type.bool, t.params, overload.cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/any.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/any.spec.js
index 119efbb2be..621e56be22 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/any.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/any.spec.js
@@ -10,15 +10,7 @@ Returns e if e is scalar.
Returns true if any component of e is true if e is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- False,
- True,
- TypeBool,
- TypeVec,
- vec2,
- vec3,
- vec4 } from
-'../../../../../util/conversion.js';
+import { False, True, Type, vec2, vec3, vec4 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -36,14 +28,14 @@ combine('overload', ['scalar', 'vec2', 'vec3', 'vec4'])
fn(async (t) => {
const overloads = {
scalar: {
- type: TypeBool,
+ type: Type.bool,
cases: [
{ input: False, expected: False },
{ input: True, expected: True }]
},
vec2: {
- type: TypeVec(2, TypeBool),
+ type: Type.vec(2, Type.bool),
cases: [
{ input: vec2(False, False), expected: False },
{ input: vec2(True, False), expected: True },
@@ -52,7 +44,7 @@ fn(async (t) => {
},
vec3: {
- type: TypeVec(3, TypeBool),
+ type: Type.vec(3, Type.bool),
cases: [
{ input: vec3(False, False, False), expected: False },
{ input: vec3(True, False, False), expected: True },
@@ -65,7 +57,7 @@ fn(async (t) => {
},
vec4: {
- type: TypeVec(4, TypeBool),
+ type: Type.vec(4, Type.bool),
cases: [
{ input: vec4(False, False, False, False), expected: False },
{ input: vec4(False, True, False, False), expected: True },
@@ -88,5 +80,5 @@ fn(async (t) => {
};
const overload = overloads[t.params.overload];
- await run(t, builtin('any'), [overload.type], TypeBool, t.params, overload.cases);
+ await run(t, builtin('any'), [overload.type], Type.bool, t.params, overload.cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.cache.js
new file mode 100644
index 0000000000..99f0e6b798
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [...linearRange(-1, 1, 100), ...FP[trait].scalarRange()], // asin is defined on [-1, 1]
+ nonConst ? 'unfiltered' : 'finite',
+ // asin has an ulp or inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].asinInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('asin', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.spec.js
index 13461e409a..0f8d808079 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asin.spec.js
@@ -3,54 +3,39 @@
**/export const description = `
Execution tests for the 'asin' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn asin(e: T ) -> T
Returns the arc sine of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { linearRange, fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './asin.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const f32_inputs = [
-...linearRange(-1, 1, 100), // asin is defined on [-1, 1]
-...fullF32Range()];
-
-
-const f16_inputs = [
-...linearRange(-1, 1, 100), // asin is defined on [-1, 1]
-...fullF16Range()];
-
-
-export const d = makeCaseCache('asin', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.asinInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.asinInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.asinInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.asinInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('asin'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -60,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('asin'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('asin'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -74,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('asin'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('asin'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.cache.js
new file mode 100644
index 0000000000..2c3d6f33eb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ 'unfiltered',
+ // asinh has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].asinhInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('asinh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.spec.js
index 4460e16cf7..4cee7ca2d8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/asinh.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Execution tests for the 'sinh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn asinh(e: T ) -> T
Returns the hyperbolic arc sine of e.
@@ -12,32 +12,33 @@ Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './asinh.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('asinh', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.asinhInterval);
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.asinhInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float test`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('asinh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -47,7 +48,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('asinh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('asinh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -61,5 +62,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('asinh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('asinh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.cache.js
new file mode 100644
index 0000000000..aff1d32cba
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+const known_values = [-Math.sqrt(3), -1, -1 / Math.sqrt(3), 0, 1, 1 / Math.sqrt(3), Math.sqrt(3)];
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [...known_values, ...FP[trait].scalarRange()],
+ nonConst ? 'unfiltered' : 'finite',
+ // atan has an ulp accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].atanInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('atan', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.spec.js
index df6c63401b..fe58aca571 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan.spec.js
@@ -3,50 +3,40 @@
**/export const description = `
Execution tests for the 'atan' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn atan(e: T ) -> T
Returns the arc tangent of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './atan.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const known_values = [-Math.sqrt(3), -1, -1 / Math.sqrt(3), 0, 1, 1 / Math.sqrt(3), Math.sqrt(3)];
-
-const f32_inputs = [...known_values, ...fullF32Range()];
-const f16_inputs = [...known_values, ...fullF16Range()];
-
-export const d = makeCaseCache('atan', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.atanInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.atanInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.atanInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.atanInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('atan'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -62,7 +52,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('atan'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('atan'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -76,5 +66,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('atan'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('atan'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.cache.js
new file mode 100644
index 0000000000..b4625d38eb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.cache.js
@@ -0,0 +1,35 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ // Using sparse range since there are N^2 cases being generated, and also including extra values
+ // around 0, where there is a discontinuity that implementations may behave badly at.
+ const numeric_range = [
+ ...FP[trait].sparseScalarRange(),
+ ...linearRange(
+ FP[trait].constants().negative.max,
+ FP[trait].constants().positive.min,
+ 10
+ )];
+
+ return FP[trait].generateScalarPairToIntervalCases(
+ numeric_range,
+ numeric_range,
+ nonConst ? 'unfiltered' : 'finite',
+ // atan2 has an ulp accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].atan2Interval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('atan2', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.spec.js
index d3b13d34c2..88a223e52e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atan2.spec.js
@@ -3,53 +3,39 @@
**/export const description = `
Execution tests for the 'atan2' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn atan2(e1: T ,e2: T ) -> T
Returns the arc tangent of e1 over e2. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { linearRange, sparseF32Range, sparseF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './atan2.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const cases = ['f32', 'f16'].
-flatMap((kind) =>
-[true, false].map((nonConst) => ({
- [`${kind}_${nonConst ? 'non_const' : 'const'}`]: () => {
- const fp = FP[kind];
- // Using sparse range since there are N^2 cases being generated, and also including extra values
- // around 0, where there is a discontinuity that implementations may behave badly at.
- const numeric_range = [
- ...(kind === 'f32' ? sparseF32Range() : sparseF16Range()),
- ...linearRange(fp.constants().negative.max, fp.constants().positive.min, 10)];
-
- return fp.generateScalarPairToIntervalCases(
- numeric_range,
- numeric_range,
- nonConst ? 'unfiltered' : 'finite',
- fp.atan2Interval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('atan2', cases);
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get(`abstract_const`);
+ await run(
+ t,
+ abstractFloatBuiltin('atan2'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -65,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(`f32_${t.params.inputSource === 'const' ? 'const' : 'non_const'}`);
- await run(t, builtin('atan2'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('atan2'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -79,5 +65,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(`f16_${t.params.inputSource === 'const' ? 'const' : 'non_const'}`);
- await run(t, builtin('atan2'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('atan2'), [Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.cache.js
new file mode 100644
index 0000000000..b10574328e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.cache.js
@@ -0,0 +1,32 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { biasedRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ // discontinuity at x = -1
+ ...biasedRange(FP[trait].constants().negative.less_than_one, -0.9, 20),
+ -1,
+ // discontinuity at x = 1
+ ...biasedRange(FP[trait].constants().positive.less_than_one, 0.9, 20),
+ 1,
+ ...FP[trait].scalarRange()],
+
+ nonConst ? 'unfiltered' : 'finite',
+ // atanh has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].atanhInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('atanh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.spec.js
index 85266368a7..b378b0a494 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atanh.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Execution tests for the 'atanh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn atanh(e: T ) -> T
Returns the hyperbolic arc tangent of e. The result is 0 when abs(e) ≥ 1.
@@ -12,54 +12,33 @@ Component-wise when T is a vector.
Note: The result is not mathematically meaningful when abs(e) >= 1.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { d } from './atanh.cache.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const f32_inputs = [
-...biasedRange(kValue.f32.negative.less_than_one, -0.9, 20), // discontinuity at x = -1
--1,
-...biasedRange(kValue.f32.positive.less_than_one, 0.9, 20), // discontinuity at x = 1
-1,
-...fullF32Range()];
-
-const f16_inputs = [
-...biasedRange(kValue.f16.negative.less_than_one, -0.9, 20), // discontinuity at x = -1
--1,
-...biasedRange(kValue.f16.positive.less_than_one, 0.9, 20), // discontinuity at x = 1
-1,
-...fullF16Range()];
-
-
-export const d = makeCaseCache('atanh', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.atanhInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.atanhInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.atanhInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.atanhInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('atanh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -69,7 +48,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('atanh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('atanh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -83,5 +62,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('atanh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('atanh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js
index 60d1488c0b..1c33de38ca 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak.spec.js
@@ -339,6 +339,11 @@ fn(async (t) => {
const numInvocations = t.params.workgroupSize;
const scalarType = t.params.scalarType;
+ t.skipIf(
+ numInvocations > t.device.limits.maxComputeWorkgroupSizeX,
+ `${numInvocations} > maxComputeWorkgroupSizeX(${t.device.limits.maxComputeWorkgroupSizeX})`
+ );
+
// Number of times each workgroup attempts to exchange the same value to the same memory address
const numWrites = 4;
@@ -556,6 +561,11 @@ fn(async (t) => {
const numInvocations = t.params.workgroupSize;
const scalarType = t.params.scalarType;
+ t.skipIf(
+ numInvocations > t.device.limits.maxComputeWorkgroupSizeX,
+ `${numInvocations} > maxComputeWorkgroupSizeX(${t.device.limits.maxComputeWorkgroupSizeX})`
+ );
+
// Number of times each workgroup attempts to exchange the same value to the same memory address
const numWrites = 4;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/harness.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/harness.js
index 986814d425..c377728f10 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/harness.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/atomics/harness.js
@@ -25,15 +25,14 @@ export const kMapId = {
}
};
-export function typedArrayCtor(scalarType) {
+export function typedArrayCtor(
+scalarType)
+{
switch (scalarType) {
case 'u32':
return Uint32Array;
case 'i32':
return Int32Array;
- default:
- assert(false, 'Atomic variables can only by u32 or i32');
- return Uint8Array;
}
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.cache.js
new file mode 100644
index 0000000000..6ecbee7dd6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.cache.js
@@ -0,0 +1,837 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { assert } from '../../../../../../common/util/util.js';import { alwaysPass, anyOf } from '../../../../../util/compare.js';import { kBit, kValue } from '../../../../../util/constants.js';
+import {
+
+ VectorValue,
+ f16,
+ f32,
+ i32,
+ toVector,
+ u32,
+ abstractFloat,
+ abstractInt } from
+'../../../../../util/conversion.js';
+import { FP, FPInterval } from '../../../../../util/floating_point.js';
+import {
+ cartesianProduct,
+ fullI32Range,
+ fullU32Range,
+ isFiniteF16,
+ isFiniteF32,
+ isSubnormalNumberF16,
+ isSubnormalNumberF32,
+ linearRange,
+ scalarF16Range,
+ scalarF32Range } from
+'../../../../../util/math.js';
+import {
+ reinterpretF16AsU16,
+ reinterpretF32AsI32,
+ reinterpretF32AsU32,
+ reinterpretI32AsF32,
+ reinterpretI32AsU32,
+ reinterpretU16AsF16,
+ reinterpretU32AsF32,
+ reinterpretU32AsI32 } from
+'../../../../../util/reinterpret.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+const numNaNs = 11;
+const f32InfAndNaNInU32 = [
+// Cover NaNs evenly in integer space.
+// The positive NaN with the lowest integer representation is the integer
+// for infinity, plus one.
+// The positive NaN with the highest integer representation is i32.max (!)
+...linearRange(kBit.f32.positive.infinity + 1, kBit.i32.positive.max, numNaNs),
+// The negative NaN with the lowest integer representation is the integer
+// for negative infinity, plus one.
+// The negative NaN with the highest integer representation is u32.max (!)
+...linearRange(kBit.f32.negative.infinity + 1, kBit.u32.max, numNaNs),
+kBit.f32.positive.infinity,
+kBit.f32.negative.infinity];
+
+const f32InfAndNaNInF32 = f32InfAndNaNInU32.map((u) => reinterpretU32AsF32(u));
+const f32InfAndNaNInI32 = f32InfAndNaNInU32.map((u) => reinterpretU32AsI32(u));
+
+const f32ZerosInU32 = [0, kBit.f32.negative.zero];
+const f32ZerosInF32 = f32ZerosInU32.map((u) => reinterpretU32AsF32(u));
+const f32ZerosInI32 = f32ZerosInU32.map((u) => reinterpretU32AsI32(u));
+const f32ZerosInterval = new FPInterval('f32', -0.0, 0.0);
+
+// f32FiniteRange is a list of finite f32s. fullF32Range() already
+// has +0, we only need to add -0.
+const f32FiniteRange = [...scalarF32Range(), kValue.f32.negative.zero];
+const f32RangeWithInfAndNaN = [...f32FiniteRange, ...f32InfAndNaNInF32];
+
+// Type.f16 values, finite, Inf/NaN, and zeros. Represented in float and u16.
+const f16FiniteInF16 = [...scalarF16Range(), kValue.f16.negative.zero];
+const f16FiniteInU16 = f16FiniteInF16.map((u) => reinterpretF16AsU16(u));
+
+const f16InfAndNaNInU16 = [
+// Cover NaNs evenly in integer space.
+// The positive NaN with the lowest integer representation is the integer
+// for infinity, plus one.
+// The positive NaN with the highest integer representation is u16 0x7fff i.e. 32767.
+...linearRange(kBit.f16.positive.infinity + 1, 32767, numNaNs).map((v) => Math.ceil(v)),
+// The negative NaN with the lowest integer representation is the integer
+// for negative infinity, plus one.
+// The negative NaN with the highest integer representation is u16 0xffff i.e. 65535
+...linearRange(kBit.f16.negative.infinity + 1, 65535, numNaNs).map((v) => Math.floor(v)),
+kBit.f16.positive.infinity,
+kBit.f16.negative.infinity];
+
+const f16InfAndNaNInF16 = f16InfAndNaNInU16.map((u) => reinterpretU16AsF16(u));
+
+const f16ZerosInU16 = [kBit.f16.negative.zero, 0];
+
+// f16 interval that match +/-0.0.
+const f16ZerosInterval = new FPInterval('f16', -0.0, 0.0);
+
+/**
+ * @returns an u32 whose lower and higher 16bits are the two elements of the
+ * given array of two u16 respectively, in little-endian.
+ */
+function u16x2ToU32(u16x2) {
+ assert(u16x2.length === 2);
+ // Create a DataView with 4 bytes buffer.
+ const buffer = new ArrayBuffer(4);
+ const view = new DataView(buffer);
+ // Enforce little-endian.
+ view.setUint16(0, u16x2[0], true);
+ view.setUint16(2, u16x2[1], true);
+ return view.getUint32(0, true);
+}
+
+/**
+ * @returns an array of two u16, respectively the lower and higher 16bits of
+ * given u32 in little-endian.
+ */
+function u32ToU16x2(u32) {
+ // Create a DataView with 4 bytes buffer.
+ const buffer = new ArrayBuffer(4);
+ const view = new DataView(buffer);
+ // Enforce little-endian.
+ view.setUint32(0, u32, true);
+ return [view.getUint16(0, true), view.getUint16(2, true)];
+}
+
+/**
+ * @returns a vec2<f16> from an array of two u16, each reinterpreted as f16.
+ */
+function u16x2ToVec2F16(u16x2) {
+ assert(u16x2.length === 2);
+ return toVector(u16x2.map(reinterpretU16AsF16), f16);
+}
+
+/**
+ * @returns a vec4<f16> from an array of four u16, each reinterpreted as f16.
+ */
+function u16x4ToVec4F16(u16x4) {
+ assert(u16x4.length === 4);
+ return toVector(u16x4.map(reinterpretU16AsF16), f16);
+}
+
+/**
+ * @returns true if and only if a given u32 can bitcast to a vec2<f16> with all elements
+ * being finite f16 values.
+ */
+function canU32BitcastToFiniteVec2F16(u32) {
+ return u32ToU16x2(u32).
+ map((u16) => isFiniteF16(reinterpretU16AsF16(u16))).
+ reduce((a, b) => a && b, true);
+}
+
+/**
+ * @returns an array of N elements with the i-th element being an array of len elements
+ * [a_i, a_((i+1)%N), ..., a_((i+len-1)%N)], for the input array of N element [a_1, ... a_N]
+ * and the given len. For example, slidingSlice([1, 2, 3], 2) result in
+ * [[1, 2], [2, 3], [3, 1]].
+ * This helper function is used for generating vector cases from scalar values array.
+ */
+function slidingSlice(input, len) {
+ const result = [];
+ for (let i = 0; i < input.length; i++) {
+ const sub = [];
+ for (let j = 0; j < len; j++) {
+ sub.push(input[(i + j) % input.length]);
+ }
+ result.push(sub);
+ }
+ return result;
+}
+
+// vec2<f16> interesting (zeros, Inf, and NaN) values for testing cases.
+// vec2<f16> values that has at least one Inf/NaN f16 element, reinterpreted as u32/i32.
+const f16Vec2InfAndNaNInU32 = [
+...cartesianProduct(f16InfAndNaNInU16, [...f16InfAndNaNInU16, ...f16FiniteInU16]),
+...cartesianProduct(f16FiniteInU16, f16InfAndNaNInU16)].
+map(u16x2ToU32);
+const f16Vec2InfAndNaNInI32 = f16Vec2InfAndNaNInU32.map((u) => reinterpretU32AsI32(u));
+// vec2<f16> values with two f16 0.0 element, reinterpreted as u32/i32.
+const f16Vec2ZerosInU32 = cartesianProduct(f16ZerosInU16, f16ZerosInU16).map(u16x2ToU32);
+const f16Vec2ZerosInI32 = f16Vec2ZerosInU32.map((u) => reinterpretU32AsI32(u));
+
+// i32/u32/f32 range for bitcasting to vec2<f16>
+// u32 values for bitcasting to vec2<f16> finite, Inf, and NaN.
+const u32RangeForF16Vec2FiniteInfNaN = [
+...fullU32Range(),
+...f16Vec2ZerosInU32,
+...f16Vec2InfAndNaNInU32];
+
+// u32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
+const u32RangeForF16Vec2Finite = u32RangeForF16Vec2FiniteInfNaN.filter(
+ canU32BitcastToFiniteVec2F16
+);
+// i32 values for bitcasting to vec2<f16> finite, zeros, Inf, and NaN.
+const i32RangeForF16Vec2FiniteInfNaN = [
+...fullI32Range(),
+...f16Vec2ZerosInI32,
+...f16Vec2InfAndNaNInI32];
+
+// i32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
+const i32RangeForF16Vec2Finite = i32RangeForF16Vec2FiniteInfNaN.filter((u) =>
+canU32BitcastToFiniteVec2F16(reinterpretI32AsU32(u))
+);
+// f32 values with finite/Inf/NaN f32, for bitcasting to vec2<f16> finite, zeros, Inf, and NaN.
+const f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN = [
+...f32RangeWithInfAndNaN,
+...u32RangeForF16Vec2FiniteInfNaN.map(reinterpretU32AsF32)];
+
+// Finite f32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
+const f32FiniteRangeForF16Vec2Finite = f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN.
+filter(isFiniteF32).
+filter((u) => canU32BitcastToFiniteVec2F16(reinterpretF32AsU32(u)));
+
+// vec2<f16> cases for bitcasting to i32/u32/f32, by combining f16 values into pairs
+const f16Vec2FiniteInU16x2 = slidingSlice(f16FiniteInU16, 2);
+const f16Vec2FiniteInfNanInU16x2 = slidingSlice([...f16FiniteInU16, ...f16InfAndNaNInU16], 2);
+// vec4<f16> cases for bitcasting to vec2<i32/u32/f32>, by combining f16 values 4-by-4
+const f16Vec2FiniteInU16x4 = slidingSlice(f16FiniteInU16, 4);
+const f16Vec2FiniteInfNanInU16x4 = slidingSlice([...f16FiniteInU16, ...f16InfAndNaNInU16], 4);
+
+// alwaysPass comparator for i32/u32/f32 cases. For f32/f16 we also use unbound interval, which
+// allow per-element unbounded expectation for vector.
+const anyF32 = alwaysPass('any f32');
+const anyI32 = alwaysPass('any i32');
+const anyU32 = alwaysPass('any u32');
+
+// Unbounded FPInterval
+const f32UnboundedInterval = FP.f32.constants().unboundedInterval;
+const f16UnboundedInterval = FP.f16.constants().unboundedInterval;
+
+// i32 and u32 cases for bitcasting to f32.
+// i32 cases for bitcasting to f32 finite, zeros, Inf, and NaN.
+const i32RangeForF32FiniteInfNaN = [
+...fullI32Range(),
+...f32ZerosInI32,
+...f32InfAndNaNInI32];
+
+// i32 cases for bitcasting to f32 finite only.
+const i32RangeForF32Finite = i32RangeForF32FiniteInfNaN.filter((i) =>
+isFiniteF32(reinterpretI32AsF32(i))
+);
+// u32 cases for bitcasting to f32 finite, zeros, Inf, and NaN.
+const u32RangeForF32FiniteInfNaN = [
+...fullU32Range(),
+...f32ZerosInU32,
+...f32InfAndNaNInU32];
+
+// u32 cases for bitcasting to f32 finite only.
+const u32RangeForF32Finite = u32RangeForF32FiniteInfNaN.filter((u) =>
+isFiniteF32(reinterpretU32AsF32(u))
+);
+
+/**
+ * @returns a Comparator for checking if a f32 value is a valid
+ * bitcast conversion from f32.
+ */
+function bitcastF32ToF32Comparator(f) {
+ if (!isFiniteF32(f)) return anyF32;
+ const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
+ return anyOf(...acceptable.map(f32));
+}
+
+/**
+ * @returns a Comparator for checking if a u32 value is a valid
+ * bitcast conversion from f32.
+ */
+function bitcastF32ToU32Comparator(f) {
+ if (!isFiniteF32(f)) return anyU32;
+ const acceptable = [
+ reinterpretF32AsU32(f),
+ ...(isSubnormalNumberF32(f) ? f32ZerosInU32 : [])];
+
+ return anyOf(...acceptable.map(u32));
+}
+
+/**
+ * @returns a Comparator for checking if a i32 value is a valid
+ * bitcast conversion from f32.
+ */
+function bitcastF32ToI32Comparator(f) {
+ if (!isFiniteF32(f)) return anyI32;
+ const acceptable = [
+ reinterpretF32AsI32(f),
+ ...(isSubnormalNumberF32(f) ? f32ZerosInI32 : [])];
+
+ return anyOf(...acceptable.map(i32));
+}
+
+/**
+ * @returns a Comparator for checking if a f32 value is a valid
+ * bitcast conversion from i32.
+ */
+function bitcastI32ToF32Comparator(i) {
+ const f = reinterpretI32AsF32(i);
+ if (!isFiniteF32(f)) return anyI32;
+ // Positive or negative zero bit pattern map to any zero.
+ if (f32ZerosInI32.includes(i)) return anyOf(...f32ZerosInF32.map(f32));
+ const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
+ return anyOf(...acceptable.map(f32));
+}
+
+/**
+ * @returns a Comparator for checking if a f32 value is a valid
+ * bitcast conversion from u32.
+ */
+function bitcastU32ToF32Comparator(u) {
+ const f = reinterpretU32AsF32(u);
+ if (!isFiniteF32(f)) return anyU32;
+ // Positive or negative zero bit pattern map to any zero.
+ if (f32ZerosInU32.includes(u)) return anyOf(...f32ZerosInF32.map(f32));
+ const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
+ return anyOf(...acceptable.map(f32));
+}
+
+/**
+ * @returns an array of expected f16 FPInterval for the given bitcasted f16 value, which may be
+ * subnormal, Inf, or NaN. Test cases that bitcasted to vector of f16 use this function to get
+ * per-element expectation and build vector expectation using cartesianProduct.
+ */
+function generateF16ExpectationIntervals(bitcastedF16Value) {
+ // If the bitcasted f16 value is inf or nan, the result is unbounded
+ if (!isFiniteF16(bitcastedF16Value)) {
+ return [f16UnboundedInterval];
+ }
+ // If the casted f16 value is +/-0.0, the result can be one of both. Note that in JS -0.0 === 0.0.
+ if (bitcastedF16Value === 0.0) {
+ return [f16ZerosInterval];
+ }
+ const exactInterval = FP.f16.toInterval(bitcastedF16Value);
+ // If the casted f16 value is subnormal, it also may be flushed to +/-0.0.
+ return [exactInterval, ...(isSubnormalNumberF16(bitcastedF16Value) ? [f16ZerosInterval] : [])];
+}
+
+/**
+ * @returns a Comparator for checking if a f16 value is a valid
+ * bitcast conversion from f16.
+ */
+function bitcastF16ToF16Comparator(f) {
+ if (!isFiniteF16(f)) return anyOf(f16UnboundedInterval);
+ return anyOf(...generateF16ExpectationIntervals(f));
+}
+
+/**
+ * @returns a Comparator for checking if a vec2<f16> is a valid bitcast
+ * conversion from u32.
+ */
+function bitcastU32ToVec2F16Comparator(u) {
+ const bitcastedVec2F16InU16x2 = u32ToU16x2(u).map(reinterpretU16AsF16);
+ // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+/**
+ * @returns a Comparator for checking if a vec2<f16> value is a valid
+ * bitcast conversion from i32.
+ */
+function bitcastI32ToVec2F16Comparator(i) {
+ const bitcastedVec2F16InU16x2 = u32ToU16x2(reinterpretI32AsU32(i)).map(reinterpretU16AsF16);
+ // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+/**
+ * @returns a Comparator for checking if a vec2<f16> value is a valid
+ * bitcast conversion from f32.
+ */
+function bitcastF32ToVec2F16Comparator(f) {
+ // If input f32 is not finite, it can be evaluated to any value and thus any result f16 vec2 is
+ // possible.
+ if (!isFiniteF32(f)) {
+ return anyOf([f16UnboundedInterval, f16UnboundedInterval]);
+ }
+ const bitcastedVec2F16InU16x2 = u32ToU16x2(reinterpretF32AsU32(f)).map(reinterpretU16AsF16);
+ // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+/**
+ * @returns a Comparator for checking if a vec4<f16> is a valid
+ * bitcast conversion from vec2<u32>.
+ */
+function bitcastVec2U32ToVec4F16Comparator(u32x2) {
+ assert(u32x2.length === 2);
+ const bitcastedVec4F16InU16x4 = u32x2.flatMap(u32ToU16x2).map(reinterpretU16AsF16);
+ // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+/**
+ * @returns a Comparator for checking if a vec4<f16> is a valid
+ * bitcast conversion from vec2<i32>.
+ */
+function bitcastVec2I32ToVec4F16Comparator(i32x2) {
+ assert(i32x2.length === 2);
+ const bitcastedVec4F16InU16x4 = i32x2.
+ map(reinterpretI32AsU32).
+ flatMap(u32ToU16x2).
+ map(reinterpretU16AsF16);
+ // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+/**
+ * @returns a Comparator for checking if a vec4<f16> is a valid
+ * bitcast conversion from vec2<f32>.
+ */
+function bitcastVec2F32ToVec4F16Comparator(f32x2) {
+ assert(f32x2.length === 2);
+ const bitcastedVec4F16InU16x4 = f32x2.
+ map(reinterpretF32AsU32).
+ flatMap(u32ToU16x2).
+ map(reinterpretU16AsF16);
+ // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
+ // then do cartesian product.
+ const expectedIntervalsCombination = cartesianProduct(
+ ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
+ );
+ return anyOf(...expectedIntervalsCombination);
+}
+
+// Structure that store the expectations of a single 32bit scalar/element bitcasted from two f16.
+
+
+
+
+
+
+
+/**
+ * @returns the array of possible 16bits, represented in u16, that bitcasted
+ * from a given finite f16 represented in u16, handling the possible subnormal
+ * flushing. Used to build up 32bits or larger results.
+ */
+function possibleBitsInU16FromFiniteF16InU16(f16InU16) {
+ const h = reinterpretU16AsF16(f16InU16);
+ assert(isFiniteF16(h));
+ return [f16InU16, ...(isSubnormalNumberF16(h) ? f16ZerosInU16 : [])];
+}
+
+/**
+ * @returns the expectation for a single 32bit scalar bitcasted from given pair of
+ * f16, result in ExpectionFor32BitsScalarFromF16x2.
+ */
+function possible32BitScalarIntervalsFromF16x2(
+f16x2InU16x2,
+type)
+{
+ assert(f16x2InU16x2.length === 2);
+ let reinterpretFromU32;
+ let expectationsForValue;
+ let unboundedExpectations;
+ if (type === 'u32') {
+ reinterpretFromU32 = (x) => x;
+ expectationsForValue = (x) => [u32(x)];
+ // Scalar expectation can not express "unbounded" for i32 and u32, so use 0 here as a
+ // placeholder, and the possibleExpectations should be ignored if the result is unbounded.
+ unboundedExpectations = [u32(0)];
+ } else if (type === 'i32') {
+ reinterpretFromU32 = (x) => reinterpretU32AsI32(x);
+ expectationsForValue = (x) => [i32(x)];
+ // Scalar expectation can not express "unbounded" for i32 and u32, so use 0 here as a
+ // placeholder, and the possibleExpectations should be ignored if the result is unbounded.
+ unboundedExpectations = [i32(0)];
+ } else {
+ assert(type === 'f32');
+ reinterpretFromU32 = (x) => reinterpretU32AsF32(x);
+ expectationsForValue = (x) => {
+ // Handle the possible Inf/NaN/zeros and subnormal cases for f32 result.
+ if (!isFiniteF32(x)) {
+ return [f32UnboundedInterval];
+ }
+ // If the casted f16 value is +/-0.0, the result can be one of both. Note that in JS -0.0 === 0.0.
+ if (x === 0.0) {
+ return [f32ZerosInterval];
+ }
+ const exactInterval = FP.f32.toInterval(x);
+ // If the casted f16 value is subnormal, it also may be flushed to +/-0.0.
+ return [exactInterval, ...(isSubnormalNumberF32(x) ? [f32ZerosInterval] : [])];
+ };
+ unboundedExpectations = [f32UnboundedInterval];
+ }
+ // Return unbounded expection if f16 Inf/NaN occurs
+ if (
+ !isFiniteF16(reinterpretU16AsF16(f16x2InU16x2[0])) ||
+ !isFiniteF16(reinterpretU16AsF16(f16x2InU16x2[1])))
+ {
+ return { possibleExpectations: unboundedExpectations, isUnbounded: true };
+ }
+ const possibleU16Bits = f16x2InU16x2.map(possibleBitsInU16FromFiniteF16InU16);
+ const possibleExpectations = cartesianProduct(...possibleU16Bits).flatMap(
+
+ (possibleBitsU16x2) => {
+ assert(possibleBitsU16x2.length === 2);
+ return expectationsForValue(reinterpretFromU32(u16x2ToU32(possibleBitsU16x2)));
+ });
+ return { possibleExpectations, isUnbounded: false };
+}
+
+/**
+ * @returns a Comparator for checking if a u32 value is a valid
+ * bitcast conversion from vec2 f16.
+ */
+function bitcastVec2F16ToU32Comparator(vec2F16InU16x2) {
+ assert(vec2F16InU16x2.length === 2);
+ const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'u32');
+ // Return alwaysPass if result is expected unbounded.
+ if (expectations.isUnbounded) {
+ return anyU32;
+ }
+ return anyOf(...expectations.possibleExpectations);
+}
+
+/**
+ * @returns a Comparator for checking if a i32 value is a valid
+ * bitcast conversion from vec2 f16.
+ */
+function bitcastVec2F16ToI32Comparator(vec2F16InU16x2) {
+ assert(vec2F16InU16x2.length === 2);
+ const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'i32');
+ // Return alwaysPass if result is expected unbounded.
+ if (expectations.isUnbounded) {
+ return anyI32;
+ }
+ return anyOf(...expectations.possibleExpectations);
+}
+
+/**
+ * @returns a Comparator for checking if a i32 value is a valid
+ * bitcast conversion from vec2 f16.
+ */
+function bitcastVec2F16ToF32Comparator(vec2F16InU16x2) {
+ assert(vec2F16InU16x2.length === 2);
+ const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'f32');
+ // Return alwaysPass if result is expected unbounded.
+ if (expectations.isUnbounded) {
+ return anyF32;
+ }
+ return anyOf(...expectations.possibleExpectations);
+}
+
+/**
+ * @returns a Comparator for checking if a vec2 u32 value is a valid
+ * bitcast conversion from vec4 f16.
+ */
+function bitcastVec4F16ToVec2U32Comparator(vec4F16InU16x4) {
+ assert(vec4F16InU16x4.length === 4);
+ const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
+ possible32BitScalarIntervalsFromF16x2(e, 'u32')
+ );
+ // Return alwaysPass if any element is expected unbounded. Although it may be only one unbounded
+ // element in the result vector, currently we don't have a way to build a comparator that expect
+ // only one element of i32/u32 vector unbounded.
+ if (expectationsPerElement.map((e) => e.isUnbounded).reduce((a, b) => a || b, false)) {
+ return alwaysPass('any vec2<u32>');
+ }
+ return anyOf(
+ ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map(
+ (e) => new VectorValue(e)
+ )
+ );
+}
+
+/**
+ * @returns a Comparator for checking if a vec2 i32 value is a valid
+ * bitcast conversion from vec4 f16.
+ */
+function bitcastVec4F16ToVec2I32Comparator(vec4F16InU16x4) {
+ assert(vec4F16InU16x4.length === 4);
+ const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
+ possible32BitScalarIntervalsFromF16x2(e, 'i32')
+ );
+ // Return alwaysPass if any element is expected unbounded. Although it may be only one unbounded
+ // element in the result vector, currently we don't have a way to build a comparator that expect
+ // only one element of i32/u32 vector unbounded.
+ if (expectationsPerElement.map((e) => e.isUnbounded).reduce((a, b) => a || b, false)) {
+ return alwaysPass('any vec2<i32>');
+ }
+ return anyOf(
+ ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map(
+ (e) => new VectorValue(e)
+ )
+ );
+}
+
+/**
+ * @returns a Comparator for checking if a vec2 f32 value is a valid
+ * bitcast conversion from vec4 f16.
+ */
+function bitcastVec4F16ToVec2F32Comparator(vec4F16InU16x4) {
+ assert(vec4F16InU16x4.length === 4);
+ const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
+ possible32BitScalarIntervalsFromF16x2(e, 'f32')
+ );
+ return anyOf(
+ ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map((e) => [
+ e[0],
+ e[1]]
+ )
+ );
+}
+
+export const d = makeCaseCache('bitcast', {
+ // Identity Cases
+ i32_to_i32: () => fullI32Range().map((e) => ({ input: i32(e), expected: i32(e) })),
+ u32_to_u32: () => fullU32Range().map((e) => ({ input: u32(e), expected: u32(e) })),
+ f32_inf_nan_to_f32: () =>
+ f32RangeWithInfAndNaN.map((e) => ({
+ input: f32(e),
+ expected: bitcastF32ToF32Comparator(e)
+ })),
+ f32_to_f32: () =>
+ f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToF32Comparator(e) })),
+ f16_inf_nan_to_f16: () =>
+ [...f16FiniteInF16, ...f16InfAndNaNInF16].map((e) => ({
+ input: f16(e),
+ expected: bitcastF16ToF16Comparator(e)
+ })),
+ f16_to_f16: () =>
+ f16FiniteInF16.map((e) => ({ input: f16(e), expected: bitcastF16ToF16Comparator(e) })),
+
+ // i32,u32,f32,Abstract to different i32,u32,f32
+ i32_to_u32: () => fullI32Range().map((e) => ({ input: i32(e), expected: u32(e) })),
+ i32_to_f32: () =>
+ i32RangeForF32Finite.map((e) => ({
+ input: i32(e),
+ expected: bitcastI32ToF32Comparator(e)
+ })),
+ ai_to_i32: () => fullI32Range().map((e) => ({ input: abstractInt(BigInt(e)), expected: i32(e) })),
+ ai_to_u32: () => fullU32Range().map((e) => ({ input: abstractInt(BigInt(e)), expected: u32(e) })),
+ ai_to_f32: () =>
+ // AbstractInt is converted to i32, because there is no explicit overload
+ i32RangeForF32Finite.map((e) => ({
+ input: abstractInt(BigInt(e)),
+ expected: bitcastI32ToF32Comparator(e)
+ })),
+ i32_to_f32_inf_nan: () =>
+ i32RangeForF32FiniteInfNaN.map((e) => ({
+ input: i32(e),
+ expected: bitcastI32ToF32Comparator(e)
+ })),
+ u32_to_i32: () => fullU32Range().map((e) => ({ input: u32(e), expected: i32(e) })),
+ u32_to_f32: () =>
+ u32RangeForF32Finite.map((e) => ({
+ input: u32(e),
+ expected: bitcastU32ToF32Comparator(e)
+ })),
+ u32_to_f32_inf_nan: () =>
+ u32RangeForF32FiniteInfNaN.map((e) => ({
+ input: u32(e),
+ expected: bitcastU32ToF32Comparator(e)
+ })),
+ f32_inf_nan_to_i32: () =>
+ f32RangeWithInfAndNaN.map((e) => ({
+ input: f32(e),
+ expected: bitcastF32ToI32Comparator(e)
+ })),
+ f32_to_i32: () =>
+ f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToI32Comparator(e) })),
+
+ f32_inf_nan_to_u32: () =>
+ f32RangeWithInfAndNaN.map((e) => ({
+ input: f32(e),
+ expected: bitcastF32ToU32Comparator(e)
+ })),
+ f32_to_u32: () =>
+ f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToU32Comparator(e) })),
+
+ // i32,u32,f32,AbstractInt to vec2<f16>
+ u32_to_vec2_f16_inf_nan: () =>
+ u32RangeForF16Vec2FiniteInfNaN.map((e) => ({
+ input: u32(e),
+ expected: bitcastU32ToVec2F16Comparator(e)
+ })),
+ u32_to_vec2_f16: () =>
+ u32RangeForF16Vec2Finite.map((e) => ({
+ input: u32(e),
+ expected: bitcastU32ToVec2F16Comparator(e)
+ })),
+ i32_to_vec2_f16_inf_nan: () =>
+ i32RangeForF16Vec2FiniteInfNaN.map((e) => ({
+ input: i32(e),
+ expected: bitcastI32ToVec2F16Comparator(e)
+ })),
+ i32_to_vec2_f16: () =>
+ i32RangeForF16Vec2Finite.map((e) => ({
+ input: i32(e),
+ expected: bitcastI32ToVec2F16Comparator(e)
+ })),
+ ai_to_vec2_f16: () =>
+ // AbstractInt is converted to i32, because there is no explicit overload
+ i32RangeForF16Vec2Finite.map((e) => ({
+ input: abstractInt(BigInt(e)),
+ expected: bitcastI32ToVec2F16Comparator(e)
+ })),
+ f32_inf_nan_to_vec2_f16_inf_nan: () =>
+ f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN.map((e) => ({
+ input: f32(e),
+ expected: bitcastF32ToVec2F16Comparator(e)
+ })),
+ f32_to_vec2_f16: () =>
+ f32FiniteRangeForF16Vec2Finite.map((e) => ({
+ input: f32(e),
+ expected: bitcastF32ToVec2F16Comparator(e)
+ })),
+ af_to_vec2_f16: () =>
+ f32FiniteRangeForF16Vec2Finite.map((e) => ({
+ input: abstractFloat(e),
+ expected: bitcastF32ToVec2F16Comparator(e)
+ })),
+
+ // vec2<i32>, vec2<u32>, vec2<f32>, vec2<AbstractInt> to vec4<f16>
+ vec2_i32_to_vec4_f16_inf_nan: () =>
+ slidingSlice(i32RangeForF16Vec2FiniteInfNaN, 2).map((e) => ({
+ input: toVector(e, i32),
+ expected: bitcastVec2I32ToVec4F16Comparator(e)
+ })),
+ vec2_i32_to_vec4_f16: () =>
+ slidingSlice(i32RangeForF16Vec2Finite, 2).map((e) => ({
+ input: toVector(e, i32),
+ expected: bitcastVec2I32ToVec4F16Comparator(e)
+ })),
+ vec2_ai_to_vec4_f16: () =>
+ // AbstractInt is converted to i32, because there is no explicit overload
+ slidingSlice(i32RangeForF16Vec2Finite, 2).map((e) => ({
+ input: toVector(e, (n) => abstractInt(BigInt(n))),
+ expected: bitcastVec2I32ToVec4F16Comparator(e)
+ })),
+ vec2_u32_to_vec4_f16_inf_nan: () =>
+ slidingSlice(u32RangeForF16Vec2FiniteInfNaN, 2).map((e) => ({
+ input: toVector(e, u32),
+ expected: bitcastVec2U32ToVec4F16Comparator(e)
+ })),
+ vec2_u32_to_vec4_f16: () =>
+ slidingSlice(u32RangeForF16Vec2Finite, 2).map((e) => ({
+ input: toVector(e, u32),
+ expected: bitcastVec2U32ToVec4F16Comparator(e)
+ })),
+ vec2_f32_inf_nan_to_vec4_f16_inf_nan: () =>
+ slidingSlice(f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN, 2).map((e) => ({
+ input: toVector(e, f32),
+ expected: bitcastVec2F32ToVec4F16Comparator(e)
+ })),
+ vec2_f32_to_vec4_f16: () =>
+ slidingSlice(f32FiniteRangeForF16Vec2Finite, 2).map((e) => ({
+ input: toVector(e, f32),
+ expected: bitcastVec2F32ToVec4F16Comparator(e)
+ })),
+ vec2_af_to_vec4_f16: () =>
+ slidingSlice(f32FiniteRangeForF16Vec2Finite, 2).map((e) => ({
+ input: toVector(e, abstractFloat),
+ expected: bitcastVec2F32ToVec4F16Comparator(e)
+ })),
+
+ // vec2<f16> to i32, u32, f32
+ vec2_f16_to_u32: () =>
+ f16Vec2FiniteInU16x2.map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToU32Comparator(e)
+ })),
+ vec2_f16_inf_nan_to_u32: () =>
+ f16Vec2FiniteInfNanInU16x2.map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToU32Comparator(e)
+ })),
+ vec2_f16_to_i32: () =>
+ f16Vec2FiniteInU16x2.map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToI32Comparator(e)
+ })),
+ vec2_f16_inf_nan_to_i32: () =>
+ f16Vec2FiniteInfNanInU16x2.map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToI32Comparator(e)
+ })),
+ vec2_f16_to_f32_finite: () =>
+ f16Vec2FiniteInU16x2.
+ filter((u16x2) => isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x2)))).
+ map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToF32Comparator(e)
+ })),
+ vec2_f16_inf_nan_to_f32: () =>
+ f16Vec2FiniteInfNanInU16x2.map((e) => ({
+ input: u16x2ToVec2F16(e),
+ expected: bitcastVec2F16ToF32Comparator(e)
+ })),
+
+ // vec4<f16> to vec2 of i32, u32, f32
+ vec4_f16_to_vec2_u32: () =>
+ f16Vec2FiniteInU16x4.map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2U32Comparator(e)
+ })),
+ vec4_f16_inf_nan_to_vec2_u32: () =>
+ f16Vec2FiniteInfNanInU16x4.map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2U32Comparator(e)
+ })),
+ vec4_f16_to_vec2_i32: () =>
+ f16Vec2FiniteInU16x4.map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2I32Comparator(e)
+ })),
+ vec4_f16_inf_nan_to_vec2_i32: () =>
+ f16Vec2FiniteInfNanInU16x4.map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2I32Comparator(e)
+ })),
+ vec4_f16_to_vec2_f32_finite: () =>
+ f16Vec2FiniteInU16x4.
+ filter(
+ (u16x4) =>
+ isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x4.slice(0, 2)))) &&
+ isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x4.slice(2, 4))))
+ ).
+ map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2F32Comparator(e)
+ })),
+ vec4_f16_inf_nan_to_vec2_f32: () =>
+ f16Vec2FiniteInfNanInU16x4.map((e) => ({
+ input: u16x4ToVec4F16(e),
+ expected: bitcastVec4F16ToVec2F32Comparator(e)
+ }))
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.spec.js
index d01c43dbfb..a2e9ab49e7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/bitcast.spec.js
@@ -13,6 +13,9 @@ S is i32, u32, f32
T is i32, u32, f32, and T is not S
Reinterpretation of bits. Beware non-normal f32 values.
+@const @must_use fn bitcast<u32>(e : Type.abstractInt) -> T
+@const @must_use fn bitcast<vecN<u32>>(e : vecN<Type.abstractInt>) -> T
+
@const @must_use fn bitcast<T>(e: vec2<f16> ) -> T
@const @must_use fn bitcast<vec2<T>>(e: vec4<f16> ) -> vec2<T>
@const @must_use fn bitcast<vec2<f16>>(e: T ) -> vec2<f16>
@@ -20,823 +23,26 @@ Reinterpretation of bits. Beware non-normal f32 values.
T is i32, u32, f32
`;
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-import { assert } from '../../../../../../common/util/util.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { alwaysPass, anyOf } from '../../../../../util/compare.js';
-import { kBit, kValue } from '../../../../../util/constants.js';
+import { anyOf } from '../../../../../util/compare.js';
import {
f32,
- i32,
u32,
- f16,
- TypeF32,
- TypeI32,
- TypeU32,
- TypeF16,
- TypeVec,
- Vector,
-
- toVector } from
+ i32,
+ abstractFloat,
+ uint32ToFloat32,
+ u32Bits,
+ Type } from
'../../../../../util/conversion.js';
-import { FPInterval, FP } from '../../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullI32Range,
- fullU32Range,
- fullF16Range,
- linearRange,
- isSubnormalNumberF32,
- isSubnormalNumberF16,
- cartesianProduct,
- isFiniteF32,
- isFiniteF16 } from
-'../../../../../util/math.js';
-import {
- reinterpretI32AsF32,
- reinterpretI32AsU32,
- reinterpretF32AsI32,
- reinterpretF32AsU32,
- reinterpretU32AsF32,
- reinterpretU32AsI32,
- reinterpretU16AsF16,
- reinterpretF16AsU16 } from
-'../../../../../util/reinterpret.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { FP } from '../../../../../util/floating_point.js';
+import { scalarF32Range } from '../../../../../util/math.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
+import { d } from './bitcast.cache.js';
import { builtinWithPredeclaration } from './builtin.js';
export const g = makeTestGroup(GPUTest);
-const numNaNs = 11;
-const f32InfAndNaNInU32 = [
-// Cover NaNs evenly in integer space.
-// The positive NaN with the lowest integer representation is the integer
-// for infinity, plus one.
-// The positive NaN with the highest integer representation is i32.max (!)
-...linearRange(kBit.f32.positive.infinity + 1, kBit.i32.positive.max, numNaNs),
-// The negative NaN with the lowest integer representation is the integer
-// for negative infinity, plus one.
-// The negative NaN with the highest integer representation is u32.max (!)
-...linearRange(kBit.f32.negative.infinity + 1, kBit.u32.max, numNaNs),
-kBit.f32.positive.infinity,
-kBit.f32.negative.infinity];
-
-const f32InfAndNaNInF32 = f32InfAndNaNInU32.map((u) => reinterpretU32AsF32(u));
-const f32InfAndNaNInI32 = f32InfAndNaNInU32.map((u) => reinterpretU32AsI32(u));
-
-const f32ZerosInU32 = [0, kBit.f32.negative.zero];
-const f32ZerosInF32 = f32ZerosInU32.map((u) => reinterpretU32AsF32(u));
-const f32ZerosInI32 = f32ZerosInU32.map((u) => reinterpretU32AsI32(u));
-const f32ZerosInterval = new FPInterval('f32', -0.0, 0.0);
-
-// f32FiniteRange is a list of finite f32s. fullF32Range() already
-// has +0, we only need to add -0.
-const f32FiniteRange = [...fullF32Range(), kValue.f32.negative.zero];
-const f32RangeWithInfAndNaN = [...f32FiniteRange, ...f32InfAndNaNInF32];
-
-// F16 values, finite, Inf/NaN, and zeros. Represented in float and u16.
-const f16FiniteInF16 = [...fullF16Range(), kValue.f16.negative.zero];
-const f16FiniteInU16 = f16FiniteInF16.map((u) => reinterpretF16AsU16(u));
-
-const f16InfAndNaNInU16 = [
-// Cover NaNs evenly in integer space.
-// The positive NaN with the lowest integer representation is the integer
-// for infinity, plus one.
-// The positive NaN with the highest integer representation is u16 0x7fff i.e. 32767.
-...linearRange(kBit.f16.positive.infinity + 1, 32767, numNaNs).map((v) => Math.ceil(v)),
-// The negative NaN with the lowest integer representation is the integer
-// for negative infinity, plus one.
-// The negative NaN with the highest integer representation is u16 0xffff i.e. 65535
-...linearRange(kBit.f16.negative.infinity + 1, 65535, numNaNs).map((v) => Math.floor(v)),
-kBit.f16.positive.infinity,
-kBit.f16.negative.infinity];
-
-const f16InfAndNaNInF16 = f16InfAndNaNInU16.map((u) => reinterpretU16AsF16(u));
-
-const f16ZerosInU16 = [kBit.f16.negative.zero, 0];
-
-// f16 interval that match +/-0.0.
-const f16ZerosInterval = new FPInterval('f16', -0.0, 0.0);
-
-/**
- * @returns an u32 whose lower and higher 16bits are the two elements of the
- * given array of two u16 respectively, in little-endian.
- */
-function u16x2ToU32(u16x2) {
- assert(u16x2.length === 2);
- // Create a DataView with 4 bytes buffer.
- const buffer = new ArrayBuffer(4);
- const view = new DataView(buffer);
- // Enforce little-endian.
- view.setUint16(0, u16x2[0], true);
- view.setUint16(2, u16x2[1], true);
- return view.getUint32(0, true);
-}
-
-/**
- * @returns an array of two u16, respectively the lower and higher 16bits of
- * given u32 in little-endian.
- */
-function u32ToU16x2(u32) {
- // Create a DataView with 4 bytes buffer.
- const buffer = new ArrayBuffer(4);
- const view = new DataView(buffer);
- // Enforce little-endian.
- view.setUint32(0, u32, true);
- return [view.getUint16(0, true), view.getUint16(2, true)];
-}
-
-/**
- * @returns a vec2<f16> from an array of two u16, each reinterpreted as f16.
- */
-function u16x2ToVec2F16(u16x2) {
- assert(u16x2.length === 2);
- return toVector(u16x2.map(reinterpretU16AsF16), f16);
-}
-
-/**
- * @returns a vec4<f16> from an array of four u16, each reinterpreted as f16.
- */
-function u16x4ToVec4F16(u16x4) {
- assert(u16x4.length === 4);
- return toVector(u16x4.map(reinterpretU16AsF16), f16);
-}
-
-/**
- * @returns true if and only if a given u32 can bitcast to a vec2<f16> with all elements
- * being finite f16 values.
- */
-function canU32BitcastToFiniteVec2F16(u32) {
- return u32ToU16x2(u32).
- map((u16) => isFiniteF16(reinterpretU16AsF16(u16))).
- reduce((a, b) => a && b, true);
-}
-
-/**
- * @returns an array of N elements with the i-th element being an array of len elements
- * [a_i, a_((i+1)%N), ..., a_((i+len-1)%N)], for the input array of N element [a_1, ... a_N]
- * and the given len. For example, slidingSlice([1, 2, 3], 2) result in
- * [[1, 2], [2, 3], [3, 1]].
- * This helper function is used for generating vector cases from scalar values array.
- */
-function slidingSlice(input, len) {
- const result = [];
- for (let i = 0; i < input.length; i++) {
- const sub = [];
- for (let j = 0; j < len; j++) {
- sub.push(input[(i + j) % input.length]);
- }
- result.push(sub);
- }
- return result;
-}
-
-// vec2<f16> interesting (zeros, Inf, and NaN) values for testing cases.
-// vec2<f16> values that has at least one Inf/NaN f16 element, reinterpreted as u32/i32.
-const f16Vec2InfAndNaNInU32 = [
-...cartesianProduct(f16InfAndNaNInU16, [...f16InfAndNaNInU16, ...f16FiniteInU16]),
-...cartesianProduct(f16FiniteInU16, f16InfAndNaNInU16)].
-map(u16x2ToU32);
-const f16Vec2InfAndNaNInI32 = f16Vec2InfAndNaNInU32.map((u) => reinterpretU32AsI32(u));
-// vec2<f16> values with two f16 0.0 element, reinterpreted as u32/i32.
-const f16Vec2ZerosInU32 = cartesianProduct(f16ZerosInU16, f16ZerosInU16).map(u16x2ToU32);
-const f16Vec2ZerosInI32 = f16Vec2ZerosInU32.map((u) => reinterpretU32AsI32(u));
-
-// i32/u32/f32 range for bitcasting to vec2<f16>
-// u32 values for bitcasting to vec2<f16> finite, Inf, and NaN.
-const u32RangeForF16Vec2FiniteInfNaN = [
-...fullU32Range(),
-...f16Vec2ZerosInU32,
-...f16Vec2InfAndNaNInU32];
-
-// u32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
-const u32RangeForF16Vec2Finite = u32RangeForF16Vec2FiniteInfNaN.filter(
- canU32BitcastToFiniteVec2F16
-);
-// i32 values for bitcasting to vec2<f16> finite, zeros, Inf, and NaN.
-const i32RangeForF16Vec2FiniteInfNaN = [
-...fullI32Range(),
-...f16Vec2ZerosInI32,
-...f16Vec2InfAndNaNInI32];
-
-// i32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
-const i32RangeForF16Vec2Finite = i32RangeForF16Vec2FiniteInfNaN.filter((u) =>
-canU32BitcastToFiniteVec2F16(reinterpretI32AsU32(u))
-);
-// f32 values with finite/Inf/NaN f32, for bitcasting to vec2<f16> finite, zeros, Inf, and NaN.
-const f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN = [
-...f32RangeWithInfAndNaN,
-...u32RangeForF16Vec2FiniteInfNaN.map(reinterpretU32AsF32)];
-
-// Finite f32 values for bitcasting to finite only vec2<f16>, used for constant evaluation.
-const f32FiniteRangeForF16Vec2Finite = f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN.
-filter(isFiniteF32).
-filter((u) => canU32BitcastToFiniteVec2F16(reinterpretF32AsU32(u)));
-
-// vec2<f16> cases for bitcasting to i32/u32/f32, by combining f16 values into pairs
-const f16Vec2FiniteInU16x2 = slidingSlice(f16FiniteInU16, 2);
-const f16Vec2FiniteInfNanInU16x2 = slidingSlice([...f16FiniteInU16, ...f16InfAndNaNInU16], 2);
-// vec4<f16> cases for bitcasting to vec2<i32/u32/f32>, by combining f16 values 4-by-4
-const f16Vec2FiniteInU16x4 = slidingSlice(f16FiniteInU16, 4);
-const f16Vec2FiniteInfNanInU16x4 = slidingSlice([...f16FiniteInU16, ...f16InfAndNaNInU16], 4);
-
-// alwaysPass comparator for i32/u32/f32 cases. For f32/f16 we also use unbound interval, which
-// allow per-element unbounded expectation for vector.
-const anyF32 = alwaysPass('any f32');
-const anyI32 = alwaysPass('any i32');
-const anyU32 = alwaysPass('any u32');
-
-// Unbounded FPInterval
-const f32UnboundedInterval = FP.f32.constants().unboundedInterval;
-const f16UnboundedInterval = FP.f16.constants().unboundedInterval;
-
-// i32 and u32 cases for bitcasting to f32.
-// i32 cases for bitcasting to f32 finite, zeros, Inf, and NaN.
-const i32RangeForF32FiniteInfNaN = [
-...fullI32Range(),
-...f32ZerosInI32,
-...f32InfAndNaNInI32];
-
-// i32 cases for bitcasting to f32 finite only.
-const i32RangeForF32Finite = i32RangeForF32FiniteInfNaN.filter((i) =>
-isFiniteF32(reinterpretI32AsF32(i))
-);
-// u32 cases for bitcasting to f32 finite, zeros, Inf, and NaN.
-const u32RangeForF32FiniteInfNaN = [
-...fullU32Range(),
-...f32ZerosInU32,
-...f32InfAndNaNInU32];
-
-// u32 cases for bitcasting to f32 finite only.
-const u32RangeForF32Finite = u32RangeForF32FiniteInfNaN.filter((u) =>
-isFiniteF32(reinterpretU32AsF32(u))
-);
-
-/**
- * @returns a Comparator for checking if a f32 value is a valid
- * bitcast conversion from f32.
- */
-function bitcastF32ToF32Comparator(f) {
- if (!isFiniteF32(f)) return anyF32;
- const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
- return anyOf(...acceptable.map(f32));
-}
-
-/**
- * @returns a Comparator for checking if a u32 value is a valid
- * bitcast conversion from f32.
- */
-function bitcastF32ToU32Comparator(f) {
- if (!isFiniteF32(f)) return anyU32;
- const acceptable = [
- reinterpretF32AsU32(f),
- ...(isSubnormalNumberF32(f) ? f32ZerosInU32 : [])];
-
- return anyOf(...acceptable.map(u32));
-}
-
-/**
- * @returns a Comparator for checking if a i32 value is a valid
- * bitcast conversion from f32.
- */
-function bitcastF32ToI32Comparator(f) {
- if (!isFiniteF32(f)) return anyI32;
- const acceptable = [
- reinterpretF32AsI32(f),
- ...(isSubnormalNumberF32(f) ? f32ZerosInI32 : [])];
-
- return anyOf(...acceptable.map(i32));
-}
-
-/**
- * @returns a Comparator for checking if a f32 value is a valid
- * bitcast conversion from i32.
- */
-function bitcastI32ToF32Comparator(i) {
- const f = reinterpretI32AsF32(i);
- if (!isFiniteF32(f)) return anyI32;
- // Positive or negative zero bit pattern map to any zero.
- if (f32ZerosInI32.includes(i)) return anyOf(...f32ZerosInF32.map(f32));
- const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
- return anyOf(...acceptable.map(f32));
-}
-
-/**
- * @returns a Comparator for checking if a f32 value is a valid
- * bitcast conversion from u32.
- */
-function bitcastU32ToF32Comparator(u) {
- const f = reinterpretU32AsF32(u);
- if (!isFiniteF32(f)) return anyU32;
- // Positive or negative zero bit pattern map to any zero.
- if (f32ZerosInU32.includes(u)) return anyOf(...f32ZerosInF32.map(f32));
- const acceptable = [f, ...(isSubnormalNumberF32(f) ? f32ZerosInF32 : [])];
- return anyOf(...acceptable.map(f32));
-}
-
-/**
- * @returns an array of expected f16 FPInterval for the given bitcasted f16 value, which may be
- * subnormal, Inf, or NaN. Test cases that bitcasted to vector of f16 use this function to get
- * per-element expectation and build vector expectation using cartesianProduct.
- */
-function generateF16ExpectationIntervals(bitcastedF16Value) {
- // If the bitcasted f16 value is inf or nan, the result is unbounded
- if (!isFiniteF16(bitcastedF16Value)) {
- return [f16UnboundedInterval];
- }
- // If the casted f16 value is +/-0.0, the result can be one of both. Note that in JS -0.0 === 0.0.
- if (bitcastedF16Value === 0.0) {
- return [f16ZerosInterval];
- }
- const exactInterval = FP.f16.toInterval(bitcastedF16Value);
- // If the casted f16 value is subnormal, it also may be flushed to +/-0.0.
- return [exactInterval, ...(isSubnormalNumberF16(bitcastedF16Value) ? [f16ZerosInterval] : [])];
-}
-
-/**
- * @returns a Comparator for checking if a f16 value is a valid
- * bitcast conversion from f16.
- */
-function bitcastF16ToF16Comparator(f) {
- if (!isFiniteF16(f)) return anyOf(f16UnboundedInterval);
- return anyOf(...generateF16ExpectationIntervals(f));
-}
-
-/**
- * @returns a Comparator for checking if a vec2<f16> is a valid bitcast
- * conversion from u32.
- */
-function bitcastU32ToVec2F16Comparator(u) {
- const bitcastedVec2F16InU16x2 = u32ToU16x2(u).map(reinterpretU16AsF16);
- // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-/**
- * @returns a Comparator for checking if a vec2<f16> value is a valid
- * bitcast conversion from i32.
- */
-function bitcastI32ToVec2F16Comparator(i) {
- const bitcastedVec2F16InU16x2 = u32ToU16x2(reinterpretI32AsU32(i)).map(reinterpretU16AsF16);
- // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-/**
- * @returns a Comparator for checking if a vec2<f16> value is a valid
- * bitcast conversion from f32.
- */
-function bitcastF32ToVec2F16Comparator(f) {
- // If input f32 is not finite, it can be evaluated to any value and thus any result f16 vec2 is
- // possible.
- if (!isFiniteF32(f)) {
- return anyOf([f16UnboundedInterval, f16UnboundedInterval]);
- }
- const bitcastedVec2F16InU16x2 = u32ToU16x2(reinterpretF32AsU32(f)).map(reinterpretU16AsF16);
- // Generate expection for vec2 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec2F16InU16x2.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-/**
- * @returns a Comparator for checking if a vec4<f16> is a valid
- * bitcast conversion from vec2<u32>.
- */
-function bitcastVec2U32ToVec4F16Comparator(u32x2) {
- assert(u32x2.length === 2);
- const bitcastedVec4F16InU16x4 = u32x2.flatMap(u32ToU16x2).map(reinterpretU16AsF16);
- // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-/**
- * @returns a Comparator for checking if a vec4<f16> is a valid
- * bitcast conversion from vec2<i32>.
- */
-function bitcastVec2I32ToVec4F16Comparator(i32x2) {
- assert(i32x2.length === 2);
- const bitcastedVec4F16InU16x4 = i32x2.
- map(reinterpretI32AsU32).
- flatMap(u32ToU16x2).
- map(reinterpretU16AsF16);
- // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-/**
- * @returns a Comparator for checking if a vec4<f16> is a valid
- * bitcast conversion from vec2<f32>.
- */
-function bitcastVec2F32ToVec4F16Comparator(f32x2) {
- assert(f32x2.length === 2);
- const bitcastedVec4F16InU16x4 = f32x2.
- map(reinterpretF32AsU32).
- flatMap(u32ToU16x2).
- map(reinterpretU16AsF16);
- // Generate expection for vec4 f16 result, by generating expected intervals for each elements and
- // then do cartesian product.
- const expectedIntervalsCombination = cartesianProduct(
- ...bitcastedVec4F16InU16x4.map(generateF16ExpectationIntervals)
- );
- return anyOf(...expectedIntervalsCombination);
-}
-
-// Structure that store the expectations of a single 32bit scalar/element bitcasted from two f16.
-
-
-
-
-
-
-
-/**
- * @returns the array of possible 16bits, represented in u16, that bitcasted
- * from a given finite f16 represented in u16, handling the possible subnormal
- * flushing. Used to build up 32bits or larger results.
- */
-function possibleBitsInU16FromFiniteF16InU16(f16InU16) {
- const h = reinterpretU16AsF16(f16InU16);
- assert(isFiniteF16(h));
- return [f16InU16, ...(isSubnormalNumberF16(h) ? f16ZerosInU16 : [])];
-}
-
-/**
- * @returns the expectation for a single 32bit scalar bitcasted from given pair of
- * f16, result in ExpectionFor32BitsScalarFromF16x2.
- */
-function possible32BitScalarIntervalsFromF16x2(
-f16x2InU16x2,
-type)
-{
- assert(f16x2InU16x2.length === 2);
- let reinterpretFromU32;
- let expectationsForValue;
- let unboundedExpectations;
- if (type === 'u32') {
- reinterpretFromU32 = (x) => x;
- expectationsForValue = (x) => [u32(x)];
- // Scalar expectation can not express "unbounded" for i32 and u32, so use 0 here as a
- // placeholder, and the possibleExpectations should be ignored if the result is unbounded.
- unboundedExpectations = [u32(0)];
- } else if (type === 'i32') {
- reinterpretFromU32 = (x) => reinterpretU32AsI32(x);
- expectationsForValue = (x) => [i32(x)];
- // Scalar expectation can not express "unbounded" for i32 and u32, so use 0 here as a
- // placeholder, and the possibleExpectations should be ignored if the result is unbounded.
- unboundedExpectations = [i32(0)];
- } else {
- assert(type === 'f32');
- reinterpretFromU32 = (x) => reinterpretU32AsF32(x);
- expectationsForValue = (x) => {
- // Handle the possible Inf/NaN/zeros and subnormal cases for f32 result.
- if (!isFiniteF32(x)) {
- return [f32UnboundedInterval];
- }
- // If the casted f16 value is +/-0.0, the result can be one of both. Note that in JS -0.0 === 0.0.
- if (x === 0.0) {
- return [f32ZerosInterval];
- }
- const exactInterval = FP.f32.toInterval(x);
- // If the casted f16 value is subnormal, it also may be flushed to +/-0.0.
- return [exactInterval, ...(isSubnormalNumberF32(x) ? [f32ZerosInterval] : [])];
- };
- unboundedExpectations = [f32UnboundedInterval];
- }
- // Return unbounded expection if f16 Inf/NaN occurs
- if (
- !isFiniteF16(reinterpretU16AsF16(f16x2InU16x2[0])) ||
- !isFiniteF16(reinterpretU16AsF16(f16x2InU16x2[1])))
- {
- return { possibleExpectations: unboundedExpectations, isUnbounded: true };
- }
- const possibleU16Bits = f16x2InU16x2.map(possibleBitsInU16FromFiniteF16InU16);
- const possibleExpectations = cartesianProduct(...possibleU16Bits).flatMap(
- (possibleBitsU16x2) => {
- assert(possibleBitsU16x2.length === 2);
- return expectationsForValue(reinterpretFromU32(u16x2ToU32(possibleBitsU16x2)));
- }
- );
- return { possibleExpectations, isUnbounded: false };
-}
-
-/**
- * @returns a Comparator for checking if a u32 value is a valid
- * bitcast conversion from vec2 f16.
- */
-function bitcastVec2F16ToU32Comparator(vec2F16InU16x2) {
- assert(vec2F16InU16x2.length === 2);
- const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'u32');
- // Return alwaysPass if result is expected unbounded.
- if (expectations.isUnbounded) {
- return anyU32;
- }
- return anyOf(...expectations.possibleExpectations);
-}
-
-/**
- * @returns a Comparator for checking if a i32 value is a valid
- * bitcast conversion from vec2 f16.
- */
-function bitcastVec2F16ToI32Comparator(vec2F16InU16x2) {
- assert(vec2F16InU16x2.length === 2);
- const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'i32');
- // Return alwaysPass if result is expected unbounded.
- if (expectations.isUnbounded) {
- return anyI32;
- }
- return anyOf(...expectations.possibleExpectations);
-}
-
-/**
- * @returns a Comparator for checking if a i32 value is a valid
- * bitcast conversion from vec2 f16.
- */
-function bitcastVec2F16ToF32Comparator(vec2F16InU16x2) {
- assert(vec2F16InU16x2.length === 2);
- const expectations = possible32BitScalarIntervalsFromF16x2(vec2F16InU16x2, 'f32');
- // Return alwaysPass if result is expected unbounded.
- if (expectations.isUnbounded) {
- return anyF32;
- }
- return anyOf(...expectations.possibleExpectations);
-}
-
-/**
- * @returns a Comparator for checking if a vec2 u32 value is a valid
- * bitcast conversion from vec4 f16.
- */
-function bitcastVec4F16ToVec2U32Comparator(vec4F16InU16x4) {
- assert(vec4F16InU16x4.length === 4);
- const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
- possible32BitScalarIntervalsFromF16x2(e, 'u32')
- );
- // Return alwaysPass if any element is expected unbounded. Although it may be only one unbounded
- // element in the result vector, currently we don't have a way to build a comparator that expect
- // only one element of i32/u32 vector unbounded.
- if (expectationsPerElement.map((e) => e.isUnbounded).reduce((a, b) => a || b, false)) {
- return alwaysPass('any vec2<u32>');
- }
- return anyOf(
- ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map(
- (e) => new Vector(e)
- )
- );
-}
-
-/**
- * @returns a Comparator for checking if a vec2 i32 value is a valid
- * bitcast conversion from vec4 f16.
- */
-function bitcastVec4F16ToVec2I32Comparator(vec4F16InU16x4) {
- assert(vec4F16InU16x4.length === 4);
- const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
- possible32BitScalarIntervalsFromF16x2(e, 'i32')
- );
- // Return alwaysPass if any element is expected unbounded. Although it may be only one unbounded
- // element in the result vector, currently we don't have a way to build a comparator that expect
- // only one element of i32/u32 vector unbounded.
- if (expectationsPerElement.map((e) => e.isUnbounded).reduce((a, b) => a || b, false)) {
- return alwaysPass('any vec2<i32>');
- }
- return anyOf(
- ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map(
- (e) => new Vector(e)
- )
- );
-}
-
-/**
- * @returns a Comparator for checking if a vec2 f32 value is a valid
- * bitcast conversion from vec4 f16.
- */
-function bitcastVec4F16ToVec2F32Comparator(vec4F16InU16x4) {
- assert(vec4F16InU16x4.length === 4);
- const expectationsPerElement = [vec4F16InU16x4.slice(0, 2), vec4F16InU16x4.slice(2, 4)].map((e) =>
- possible32BitScalarIntervalsFromF16x2(e, 'f32')
- );
- return anyOf(
- ...cartesianProduct(...expectationsPerElement.map((e) => e.possibleExpectations)).map((e) => [
- e[0],
- e[1]]
- )
- );
-}
-
-export const d = makeCaseCache('bitcast', {
- // Identity Cases
- i32_to_i32: () => fullI32Range().map((e) => ({ input: i32(e), expected: i32(e) })),
- u32_to_u32: () => fullU32Range().map((e) => ({ input: u32(e), expected: u32(e) })),
- f32_inf_nan_to_f32: () =>
- f32RangeWithInfAndNaN.map((e) => ({
- input: f32(e),
- expected: bitcastF32ToF32Comparator(e)
- })),
- f32_to_f32: () =>
- f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToF32Comparator(e) })),
- f16_inf_nan_to_f16: () =>
- [...f16FiniteInF16, ...f16InfAndNaNInF16].map((e) => ({
- input: f16(e),
- expected: bitcastF16ToF16Comparator(e)
- })),
- f16_to_f16: () =>
- f16FiniteInF16.map((e) => ({ input: f16(e), expected: bitcastF16ToF16Comparator(e) })),
-
- // i32,u32,f32 to different i32,u32,f32
- i32_to_u32: () => fullI32Range().map((e) => ({ input: i32(e), expected: u32(e) })),
- i32_to_f32: () =>
- i32RangeForF32Finite.map((e) => ({
- input: i32(e),
- expected: bitcastI32ToF32Comparator(e)
- })),
- i32_to_f32_inf_nan: () =>
- i32RangeForF32FiniteInfNaN.map((e) => ({
- input: i32(e),
- expected: bitcastI32ToF32Comparator(e)
- })),
- u32_to_i32: () => fullU32Range().map((e) => ({ input: u32(e), expected: i32(e) })),
- u32_to_f32: () =>
- u32RangeForF32Finite.map((e) => ({
- input: u32(e),
- expected: bitcastU32ToF32Comparator(e)
- })),
- u32_to_f32_inf_nan: () =>
- u32RangeForF32FiniteInfNaN.map((e) => ({
- input: u32(e),
- expected: bitcastU32ToF32Comparator(e)
- })),
- f32_inf_nan_to_i32: () =>
- f32RangeWithInfAndNaN.map((e) => ({
- input: f32(e),
- expected: bitcastF32ToI32Comparator(e)
- })),
- f32_to_i32: () =>
- f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToI32Comparator(e) })),
-
- f32_inf_nan_to_u32: () =>
- f32RangeWithInfAndNaN.map((e) => ({
- input: f32(e),
- expected: bitcastF32ToU32Comparator(e)
- })),
- f32_to_u32: () =>
- f32FiniteRange.map((e) => ({ input: f32(e), expected: bitcastF32ToU32Comparator(e) })),
-
- // i32,u32,f32 to vec2<f16>
- u32_to_vec2_f16_inf_nan: () =>
- u32RangeForF16Vec2FiniteInfNaN.map((e) => ({
- input: u32(e),
- expected: bitcastU32ToVec2F16Comparator(e)
- })),
- u32_to_vec2_f16: () =>
- u32RangeForF16Vec2Finite.map((e) => ({
- input: u32(e),
- expected: bitcastU32ToVec2F16Comparator(e)
- })),
- i32_to_vec2_f16_inf_nan: () =>
- i32RangeForF16Vec2FiniteInfNaN.map((e) => ({
- input: i32(e),
- expected: bitcastI32ToVec2F16Comparator(e)
- })),
- i32_to_vec2_f16: () =>
- i32RangeForF16Vec2Finite.map((e) => ({
- input: i32(e),
- expected: bitcastI32ToVec2F16Comparator(e)
- })),
- f32_inf_nan_to_vec2_f16_inf_nan: () =>
- f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN.map((e) => ({
- input: f32(e),
- expected: bitcastF32ToVec2F16Comparator(e)
- })),
- f32_to_vec2_f16: () =>
- f32FiniteRangeForF16Vec2Finite.map((e) => ({
- input: f32(e),
- expected: bitcastF32ToVec2F16Comparator(e)
- })),
-
- // vec2<i32>, vec2<u32>, vec2<f32> to vec4<f16>
- vec2_i32_to_vec4_f16_inf_nan: () =>
- slidingSlice(i32RangeForF16Vec2FiniteInfNaN, 2).map((e) => ({
- input: toVector(e, i32),
- expected: bitcastVec2I32ToVec4F16Comparator(e)
- })),
- vec2_i32_to_vec4_f16: () =>
- slidingSlice(i32RangeForF16Vec2Finite, 2).map((e) => ({
- input: toVector(e, i32),
- expected: bitcastVec2I32ToVec4F16Comparator(e)
- })),
- vec2_u32_to_vec4_f16_inf_nan: () =>
- slidingSlice(u32RangeForF16Vec2FiniteInfNaN, 2).map((e) => ({
- input: toVector(e, u32),
- expected: bitcastVec2U32ToVec4F16Comparator(e)
- })),
- vec2_u32_to_vec4_f16: () =>
- slidingSlice(u32RangeForF16Vec2Finite, 2).map((e) => ({
- input: toVector(e, u32),
- expected: bitcastVec2U32ToVec4F16Comparator(e)
- })),
- vec2_f32_inf_nan_to_vec4_f16_inf_nan: () =>
- slidingSlice(f32RangeWithInfAndNaNForF16Vec2FiniteInfNaN, 2).map((e) => ({
- input: toVector(e, f32),
- expected: bitcastVec2F32ToVec4F16Comparator(e)
- })),
- vec2_f32_to_vec4_f16: () =>
- slidingSlice(f32FiniteRangeForF16Vec2Finite, 2).map((e) => ({
- input: toVector(e, f32),
- expected: bitcastVec2F32ToVec4F16Comparator(e)
- })),
-
- // vec2<f16> to i32, u32, f32
- vec2_f16_to_u32: () =>
- f16Vec2FiniteInU16x2.map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToU32Comparator(e)
- })),
- vec2_f16_inf_nan_to_u32: () =>
- f16Vec2FiniteInfNanInU16x2.map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToU32Comparator(e)
- })),
- vec2_f16_to_i32: () =>
- f16Vec2FiniteInU16x2.map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToI32Comparator(e)
- })),
- vec2_f16_inf_nan_to_i32: () =>
- f16Vec2FiniteInfNanInU16x2.map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToI32Comparator(e)
- })),
- vec2_f16_to_f32_finite: () =>
- f16Vec2FiniteInU16x2.
- filter((u16x2) => isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x2)))).
- map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToF32Comparator(e)
- })),
- vec2_f16_inf_nan_to_f32: () =>
- f16Vec2FiniteInfNanInU16x2.map((e) => ({
- input: u16x2ToVec2F16(e),
- expected: bitcastVec2F16ToF32Comparator(e)
- })),
-
- // vec4<f16> to vec2 of i32, u32, f32
- vec4_f16_to_vec2_u32: () =>
- f16Vec2FiniteInU16x4.map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2U32Comparator(e)
- })),
- vec4_f16_inf_nan_to_vec2_u32: () =>
- f16Vec2FiniteInfNanInU16x4.map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2U32Comparator(e)
- })),
- vec4_f16_to_vec2_i32: () =>
- f16Vec2FiniteInU16x4.map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2I32Comparator(e)
- })),
- vec4_f16_inf_nan_to_vec2_i32: () =>
- f16Vec2FiniteInfNanInU16x4.map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2I32Comparator(e)
- })),
- vec4_f16_to_vec2_f32_finite: () =>
- f16Vec2FiniteInU16x4.
- filter(
- (u16x4) =>
- isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x4.slice(0, 2)))) &&
- isFiniteF32(reinterpretU32AsF32(u16x2ToU32(u16x4.slice(2, 4))))
- ).
- map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2F32Comparator(e)
- })),
- vec4_f16_inf_nan_to_vec2_f32: () =>
- f16Vec2FiniteInfNanInU16x4.map((e) => ({
- input: u16x4ToVec4F16(e),
- expected: bitcastVec4F16ToVec2F32Comparator(e)
- }))
-});
-
/**
* @returns a ShaderBuilder that generates a call to bitcast,
* using appropriate destination type, which optionally can be
@@ -865,7 +71,7 @@ combine('alias', [false, true])
).
fn(async (t) => {
const cases = await d.get('i32_to_i32');
- await run(t, bitcastBuilder('i32', t.params), [TypeI32], TypeI32, t.params, cases);
+ await run(t, bitcastBuilder('i32', t.params), [Type.i32], Type.i32, t.params, cases);
});
g.test('u32_to_u32').
@@ -879,7 +85,7 @@ combine('alias', [false, true])
).
fn(async (t) => {
const cases = await d.get('u32_to_u32');
- await run(t, bitcastBuilder('u32', t.params), [TypeU32], TypeU32, t.params, cases);
+ await run(t, bitcastBuilder('u32', t.params), [Type.u32], Type.u32, t.params, cases);
});
g.test('f32_to_f32').
@@ -896,7 +102,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'f32_to_f32' : 'f32_inf_nan_to_f32'
);
- await run(t, bitcastBuilder('f32', t.params), [TypeF32], TypeF32, t.params, cases);
+ await run(t, bitcastBuilder('f32', t.params), [Type.f32], Type.f32, t.params, cases);
});
// To i32 from u32, f32
@@ -911,7 +117,7 @@ combine('alias', [false, true])
).
fn(async (t) => {
const cases = await d.get('u32_to_i32');
- await run(t, bitcastBuilder('i32', t.params), [TypeU32], TypeI32, t.params, cases);
+ await run(t, bitcastBuilder('i32', t.params), [Type.u32], Type.i32, t.params, cases);
});
g.test('f32_to_i32').
@@ -928,7 +134,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'f32_to_i32' : 'f32_inf_nan_to_i32'
);
- await run(t, bitcastBuilder('i32', t.params), [TypeF32], TypeI32, t.params, cases);
+ await run(t, bitcastBuilder('i32', t.params), [Type.f32], Type.i32, t.params, cases);
});
// To u32 from i32, f32
@@ -943,7 +149,7 @@ combine('alias', [false, true])
).
fn(async (t) => {
const cases = await d.get('i32_to_u32');
- await run(t, bitcastBuilder('u32', t.params), [TypeI32], TypeU32, t.params, cases);
+ await run(t, bitcastBuilder('u32', t.params), [Type.i32], Type.u32, t.params, cases);
});
g.test('f32_to_u32').
@@ -960,7 +166,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'f32_to_u32' : 'f32_inf_nan_to_u32'
);
- await run(t, bitcastBuilder('u32', t.params), [TypeF32], TypeU32, t.params, cases);
+ await run(t, bitcastBuilder('u32', t.params), [Type.f32], Type.u32, t.params, cases);
});
// To f32 from i32, u32
@@ -978,7 +184,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'i32_to_f32' : 'i32_to_f32_inf_nan'
);
- await run(t, bitcastBuilder('f32', t.params), [TypeI32], TypeF32, t.params, cases);
+ await run(t, bitcastBuilder('f32', t.params), [Type.i32], Type.f32, t.params, cases);
});
g.test('u32_to_f32').
@@ -995,7 +201,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'u32_to_f32' : 'u32_to_f32_inf_nan'
);
- await run(t, bitcastBuilder('f32', t.params), [TypeU32], TypeF32, t.params, cases);
+ await run(t, bitcastBuilder('f32', t.params), [Type.u32], Type.f32, t.params, cases);
});
// 16 bit types
@@ -1020,7 +226,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'f16_to_f16' : 'f16_inf_nan_to_f16'
);
- await run(t, bitcastBuilder('f16', t.params), [TypeF16], TypeF16, t.params, cases);
+ await run(t, bitcastBuilder('f16', t.params), [Type.f16], Type.f16, t.params, cases);
});
// f16: 32-bit scalar numeric to vec2<f16>
@@ -1036,14 +242,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'i32_to_vec2_f16' : 'i32_to_vec2_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec2<f16>', t.params),
- [TypeI32],
- TypeVec(2, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec2<f16>', t.params), [Type.i32], Type.vec2h, t.params, cases);
});
g.test('u32_to_vec2h').
@@ -1058,14 +257,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'u32_to_vec2_f16' : 'u32_to_vec2_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec2<f16>', t.params),
- [TypeU32],
- TypeVec(2, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec2<f16>', t.params), [Type.u32], Type.vec2h, t.params, cases);
});
g.test('f32_to_vec2h').
@@ -1080,14 +272,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'f32_to_vec2_f16' : 'f32_inf_nan_to_vec2_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec2<f16>', t.params),
- [TypeF32],
- TypeVec(2, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec2<f16>', t.params), [Type.f32], Type.vec2h, t.params, cases);
});
// f16: vec2<32-bit scalar numeric> to vec4<f16>
@@ -1103,14 +288,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec2_i32_to_vec4_f16' : 'vec2_i32_to_vec4_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec4<f16>', t.params),
- [TypeVec(2, TypeI32)],
- TypeVec(4, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec4<f16>', t.params), [Type.vec2i], Type.vec4h, t.params, cases);
});
g.test('vec2u_to_vec4h').
@@ -1125,14 +303,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec2_u32_to_vec4_f16' : 'vec2_u32_to_vec4_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec4<f16>', t.params),
- [TypeVec(2, TypeU32)],
- TypeVec(4, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec4<f16>', t.params), [Type.vec2u], Type.vec4h, t.params, cases);
});
g.test('vec2f_to_vec4h').
@@ -1149,14 +320,7 @@ fn(async (t) => {
'vec2_f32_to_vec4_f16' :
'vec2_f32_inf_nan_to_vec4_f16_inf_nan'
);
- await run(
- t,
- bitcastBuilder('vec4<f16>', t.params),
- [TypeVec(2, TypeF32)],
- TypeVec(4, TypeF16),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec4<f16>', t.params), [Type.vec2f], Type.vec4h, t.params, cases);
});
// f16: vec2<f16> to 32-bit scalar numeric
@@ -1172,7 +336,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec2_f16_to_i32' : 'vec2_f16_inf_nan_to_i32'
);
- await run(t, bitcastBuilder('i32', t.params), [TypeVec(2, TypeF16)], TypeI32, t.params, cases);
+ await run(t, bitcastBuilder('i32', t.params), [Type.vec2h], Type.i32, t.params, cases);
});
g.test('vec2h_to_u32').
@@ -1187,7 +351,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec2_f16_to_u32' : 'vec2_f16_inf_nan_to_u32'
);
- await run(t, bitcastBuilder('u32', t.params), [TypeVec(2, TypeF16)], TypeU32, t.params, cases);
+ await run(t, bitcastBuilder('u32', t.params), [Type.vec2h], Type.u32, t.params, cases);
});
g.test('vec2h_to_f32').
@@ -1202,7 +366,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec2_f16_to_f32_finite' : 'vec2_f16_inf_nan_to_f32'
);
- await run(t, bitcastBuilder('f32', t.params), [TypeVec(2, TypeF16)], TypeF32, t.params, cases);
+ await run(t, bitcastBuilder('f32', t.params), [Type.vec2h], Type.f32, t.params, cases);
});
// f16: vec4<f16> to vec2<32-bit scalar numeric>
@@ -1218,14 +382,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec4_f16_to_vec2_i32' : 'vec4_f16_inf_nan_to_vec2_i32'
);
- await run(
- t,
- bitcastBuilder('vec2<i32>', t.params),
- [TypeVec(4, TypeF16)],
- TypeVec(2, TypeI32),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec2<i32>', t.params), [Type.vec4h], Type.vec2i, t.params, cases);
});
g.test('vec4h_to_vec2u').
@@ -1240,14 +397,7 @@ fn(async (t) => {
// Infinities and NaNs are errors in const-eval.
t.params.inputSource === 'const' ? 'vec4_f16_to_vec2_u32' : 'vec4_f16_inf_nan_to_vec2_u32'
);
- await run(
- t,
- bitcastBuilder('vec2<u32>', t.params),
- [TypeVec(4, TypeF16)],
- TypeVec(2, TypeU32),
- t.params,
- cases
- );
+ await run(t, bitcastBuilder('vec2<u32>', t.params), [Type.vec4h], Type.vec2u, t.params, cases);
});
g.test('vec4h_to_vec2f').
@@ -1264,12 +414,230 @@ fn(async (t) => {
'vec4_f16_to_vec2_f32_finite' :
'vec4_f16_inf_nan_to_vec2_f32'
);
+ await run(t, bitcastBuilder('vec2<f32>', t.params), [Type.vec4h], Type.vec2f, t.params, cases);
+});
+
+// Abstract Float
+g.test('af_to_f32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract float to f32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = scalarF32Range().map((u) => {
+ const res = FP['f32'].addFlushedIfNeeded([u]).map((f) => {
+ return f32(f);
+ });
+ return {
+ input: abstractFloat(u),
+ expected: anyOf(...res)
+ };
+ });
+
+ await run(t, bitcastBuilder('f32', t.params), [Type.abstractFloat], Type.f32, t.params, cases);
+});
+
+g.test('af_to_i32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract float to i32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const values = [
+ 0,
+ 1,
+ 10,
+ 256,
+ u32Bits(0b11111111011111111111111111111111).value,
+ u32Bits(0b11111111010000000000000000000000).value,
+ u32Bits(0b11111110110000000000000000000000).value,
+ u32Bits(0b11111101110000000000000000000000).value,
+ u32Bits(0b11111011110000000000000000000000).value,
+ u32Bits(0b11110111110000000000000000000000).value,
+ u32Bits(0b11101111110000000000000000000000).value,
+ u32Bits(0b11011111110000000000000000000000).value,
+ u32Bits(0b10111111110000000000000000000000).value,
+ u32Bits(0b01111111011111111111111111111111).value,
+ u32Bits(0b01111111010000000000000000000000).value,
+ u32Bits(0b01111110110000000000000000000000).value,
+ u32Bits(0b01111101110000000000000000000000).value,
+ u32Bits(0b01111011110000000000000000000000).value,
+ u32Bits(0b01110111110000000000000000000000).value,
+ u32Bits(0b01101111110000000000000000000000).value,
+ u32Bits(0b01011111110000000000000000000000).value,
+ u32Bits(0b00111111110000000000000000000000).value];
+
+
+ const cases = values.map((u) => {
+ return {
+ input: abstractFloat(uint32ToFloat32(u)),
+ expected: i32(u)
+ };
+ });
+
+ await run(t, bitcastBuilder('i32', t.params), [Type.abstractFloat], Type.i32, t.params, cases);
+});
+
+g.test('af_to_u32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract float to u32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const values = [
+ 0,
+ 1,
+ 10,
+ 256,
+ u32Bits(0b11111111011111111111111111111111).value,
+ u32Bits(0b11111111010000000000000000000000).value,
+ u32Bits(0b11111110110000000000000000000000).value,
+ u32Bits(0b11111101110000000000000000000000).value,
+ u32Bits(0b11111011110000000000000000000000).value,
+ u32Bits(0b11110111110000000000000000000000).value,
+ u32Bits(0b11101111110000000000000000000000).value,
+ u32Bits(0b11011111110000000000000000000000).value,
+ u32Bits(0b10111111110000000000000000000000).value,
+ u32Bits(0b01111111011111111111111111111111).value,
+ u32Bits(0b01111111010000000000000000000000).value,
+ u32Bits(0b01111110110000000000000000000000).value,
+ u32Bits(0b01111101110000000000000000000000).value,
+ u32Bits(0b01111011110000000000000000000000).value,
+ u32Bits(0b01110111110000000000000000000000).value,
+ u32Bits(0b01101111110000000000000000000000).value,
+ u32Bits(0b01011111110000000000000000000000).value,
+ u32Bits(0b00111111110000000000000000000000).value];
+
+
+ const cases = values.map((u) => {
+ return {
+ input: abstractFloat(uint32ToFloat32(u)),
+ expected: u32(u)
+ };
+ });
+
+ await run(t, bitcastBuilder('u32', t.params), [Type.abstractFloat], Type.u32, t.params, cases);
+});
+
+g.test('af_to_vec2f16').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract float to f16 tests`).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+}).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('af_to_vec2_f16');
+
+ await run(
+ t,
+ bitcastBuilder('vec2<f16>', t.params),
+ [Type.abstractFloat],
+ Type.vec2h,
+ t.params,
+ cases
+ );
+});
+
+g.test('vec2af_to_vec4f16').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract float to f16 tests`).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+}).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('vec2_af_to_vec4_f16');
+
await run(
t,
- bitcastBuilder('vec2<f32>', t.params),
- [TypeVec(4, TypeF16)],
- TypeVec(2, TypeF32),
+ bitcastBuilder('vec4<f16>', t.params),
+ [Type.vec(2, Type.abstractFloat)],
+ Type.vec4h,
t.params,
cases
);
+});
+
+// Abstract Int
+g.test('ai_to_i32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract int to i32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('alias', [false, true])
+).
+fn(async (t) => {
+ const cases = await d.get('ai_to_i32');
+ await run(t, bitcastBuilder('i32', t.params), [Type.abstractInt], Type.i32, t.params, cases);
+});
+
+g.test('ai_to_u32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract int to u32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('alias', [false, true])
+).
+fn(async (t) => {
+ const cases = await d.get('ai_to_u32');
+ await run(t, bitcastBuilder('u32', t.params), [Type.abstractInt], Type.u32, t.params, cases);
+});
+
+g.test('ai_to_f32').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast abstract int to f32 tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('alias', [false, true])
+).
+fn(async (t) => {
+ const cases = await d.get('ai_to_f32');
+ await run(t, bitcastBuilder('f32', t.params), [Type.abstractInt], Type.f32, t.params, cases);
+});
+
+g.test('ai_to_vec2h').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast ai to vec2h tests`).
+params((u) => u.combine('inputSource', onlyConstInputSource).combine('alias', [false, true])).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+}).
+fn(async (t) => {
+ const cases = await d.get('ai_to_vec2_f16');
+ await run(
+ t,
+ bitcastBuilder('vec2<f16>', t.params),
+ [Type.abstractInt],
+ Type.vec2h,
+ t.params,
+ cases
+ );
+});
+
+g.test('vec2ai_to_vec4h').
+specURL('https://www.w3.org/TR/WGSL/#bitcast-builtin').
+desc(`bitcast vec2ai to vec4h tests`).
+params((u) => u.combine('inputSource', onlyConstInputSource).combine('alias', [false, true])).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+}).
+fn(async (t) => {
+ const cases = await d.get('vec2_ai_to_vec4_f16');
+ await run(t, bitcastBuilder('vec4<f16>', t.params), [Type.vec2ai], Type.vec4h, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/builtin.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/builtin.js
index cd3e52298c..1cc248421b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/builtin.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/builtin.js
@@ -1,6 +1,7 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { abstractFloatShaderBuilder, basicExpressionBuilder,
+**/import { abstractFloatShaderBuilder, abstractIntShaderBuilder,
+ basicExpressionBuilder,
basicExpressionWithPredeclarationBuilder } from
'../../expression.js';
@@ -11,10 +12,15 @@ export function builtin(name) {
}
/* @returns a ShaderBuilder that calls the builtin with the given name that returns AbstractFloats */
-export function abstractBuiltin(name) {
+export function abstractFloatBuiltin(name) {
return abstractFloatShaderBuilder((values) => `${name}(${values.join(', ')})`);
}
+/* @returns a ShaderBuilder that calls the builtin with the given name that returns AbstractInts */
+export function abstractIntBuiltin(name) {
+ return abstractIntShaderBuilder((values) => `${name}(${values.join(', ')})`);
+}
+
/* @returns a ShaderBuilder that calls the builtin with the given name and has given predeclaration */
export function builtinWithPredeclaration(name, predeclaration) {
return basicExpressionWithPredeclarationBuilder(
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.cache.js
new file mode 100644
index 0000000000..5c101715f1
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+const kSmallMagnitudeTestValues = [0.1, 0.9, 1.0, 1.1, 1.9, -0.1, -0.9, -1.0, -1.1, -1.9];
+
+// See https://github.com/gpuweb/cts/issues/2766 for details
+const kIssue2766Value = {
+ f32: 0x8000_0000,
+ f16: 0x8000,
+ abstract: 0x8000_0000_0000_0000
+};
+
+// Cases: [f32|f16]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [...kSmallMagnitudeTestValues, kIssue2766Value[trait], ...FP[trait].scalarRange()],
+ 'unfiltered',
+ FP[trait].ceilInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('ceil', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.spec.js
index 076c7178ef..fab2be8c01 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ceil.spec.js
@@ -3,77 +3,40 @@
**/export const description = `
Execution tests for the 'ceil' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn ceil(e: T ) -> T
Returns the ceiling of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './ceil.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('ceil', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // Small positive numbers
- 0.1,
- 0.9,
- 1.0,
- 1.1,
- 1.9,
- // Small negative numbers
- -0.1,
- -0.9,
- -1.0,
- -1.1,
- -1.9,
- 0x80000000, // https://github.com/gpuweb/cts/issues/2766
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.ceilInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // Small positive numbers
- 0.1,
- 0.9,
- 1.0,
- 1.1,
- 1.9,
- // Small negative numbers
- -0.1,
- -0.9,
- -1.0,
- -1.1,
- -1.9,
- 0x8000, // https://github.com/gpuweb/cts/issues/2766
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.ceilInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('ceil'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -83,7 +46,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('ceil'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('ceil'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -97,5 +60,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('ceil'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('ceil'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.cache.js
new file mode 100644
index 0000000000..eee76e0de0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.cache.js
@@ -0,0 +1,131 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../../util/constants.js';import { Type } from '../../../../../util/conversion.js';import { FP } from '../../../../../util/floating_point.js';
+import { maxBigInt, minBigInt } from '../../../../../util/math.js';
+
+import { makeCaseCache } from '../../case_cache.js';
+
+const u32Values = [0, 1, 2, 3, 0x70000000, 0x80000000, kValue.u32.max];
+
+const i32Values = [
+kValue.i32.negative.min,
+-3,
+-2,
+-1,
+0,
+1,
+2,
+3,
+0x70000000,
+kValue.i32.positive.max];
+
+
+const abstractFloatValues = [
+kValue.i64.negative.min,
+-3n,
+-2n,
+-1n,
+0n,
+1n,
+2n,
+3n,
+0x70000000n,
+kValue.i64.positive.max];
+
+
+/** @returns a set of clamp test cases from an ascending list of concrete integer values */
+function generateConcreteIntegerTestCases(
+test_values,
+type,
+stage)
+{
+ return test_values.flatMap((low) =>
+ test_values.flatMap((high) =>
+ stage === 'const' && low > high ?
+ [] :
+ test_values.map((e) => ({
+ input: [type.create(e), type.create(low), type.create(high)],
+ expected: type.create(Math.min(Math.max(e, low), high))
+ }))
+ )
+ );
+}
+
+/** @returns a set of clamp test cases from an ascending list of abstract integer values */
+function generateAbstractIntegerTestCases(test_values) {
+ return test_values.flatMap((low) =>
+ test_values.flatMap((high) =>
+ low > high ?
+ [] :
+ test_values.map((e) => ({
+ input: [
+ Type.abstractInt.create(e),
+ Type.abstractInt.create(low),
+ Type.abstractInt.create(high)],
+
+ expected: Type.abstractInt.create(minBigInt(maxBigInt(e, low), high))
+ }))
+ )
+ );
+}
+
+function generateFloatTestCases(
+test_values,
+trait,
+stage)
+{
+ return test_values.flatMap((low) =>
+ test_values.flatMap((high) =>
+ stage === 'const' && low > high ?
+ [] :
+ test_values.flatMap((e) => {
+ const c = FP[trait].makeScalarTripleToIntervalCase(
+ e,
+ low,
+ high,
+ stage === 'const' ? 'finite' : 'unfiltered',
+ ...FP[trait].clampIntervals
+ );
+ return c === undefined ? [] : [c];
+ })
+ )
+ );
+}
+
+// Cases: [f32|f16|abstract]_[non_]const
+// abstract_non_const is empty and unused
+const fp_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return generateFloatTestCases(
+ FP[trait].sparseScalarRange(),
+ trait,
+ nonConst ? 'non_const' : 'const'
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('clamp', {
+ u32_non_const: () => {
+ return generateConcreteIntegerTestCases(u32Values, Type.u32, 'non_const');
+ },
+ u32_const: () => {
+ return generateConcreteIntegerTestCases(u32Values, Type.u32, 'const');
+ },
+ i32_non_const: () => {
+ return generateConcreteIntegerTestCases(i32Values, Type.i32, 'non_const');
+ },
+ i32_const: () => {
+ return generateConcreteIntegerTestCases(i32Values, Type.i32, 'const');
+ },
+ abstract_int: () => {
+ return generateAbstractIntegerTestCases(abstractFloatValues);
+ },
+ ...fp_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.spec.js
index 6d4d05ba36..1cf7035691 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/clamp.spec.js
@@ -3,129 +3,45 @@
**/export const description = `
Execution tests for the 'clamp' builtin function
-S is AbstractInt, i32, or u32
+S is abstract-int, i32, or u32
T is S or vecN<S>
@const fn clamp(e: T , low: T, high: T) -> T
Returns min(max(e,low),high). Component-wise when T is a vector.
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const clamp(e: T , low: T , high: T) -> T
Returns either min(max(e,low),high), or the median of the three values e, low, high.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import {
-
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- TypeAbstractFloat } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseF32Range, sparseF16Range, sparseF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
+import { d } from './clamp.cache.js';
export const g = makeTestGroup(GPUTest);
-const u32Values = [0, 1, 2, 3, 0x70000000, 0x80000000, kValue.u32.max];
-
-const i32Values = [
-kValue.i32.negative.min,
--3,
--2,
--1,
-0,
-1,
-2,
-3,
-0x70000000,
-kValue.i32.positive.max];
-
-
-export const d = makeCaseCache('clamp', {
- u32_non_const: () => {
- return generateIntegerTestCases(u32Values, TypeU32, 'non-const');
- },
- u32_const: () => {
- return generateIntegerTestCases(u32Values, TypeU32, 'const');
- },
- i32_non_const: () => {
- return generateIntegerTestCases(i32Values, TypeI32, 'non-const');
- },
- i32_const: () => {
- return generateIntegerTestCases(i32Values, TypeI32, 'const');
- },
- f32_const: () => {
- return generateFloatTestCases(sparseF32Range(), 'f32', 'const');
- },
- f32_non_const: () => {
- return generateFloatTestCases(sparseF32Range(), 'f32', 'non-const');
- },
- f16_const: () => {
- return generateFloatTestCases(sparseF16Range(), 'f16', 'const');
- },
- f16_non_const: () => {
- return generateFloatTestCases(sparseF16Range(), 'f16', 'non-const');
- },
- abstract: () => {
- return generateFloatTestCases(sparseF64Range(), 'abstract', 'const');
- }
-});
-
-/** @returns a set of clamp test cases from an ascending list of integer values */
-function generateIntegerTestCases(
-test_values,
-type,
-stage)
-{
- return test_values.flatMap((low) =>
- test_values.flatMap((high) =>
- stage === 'const' && low > high ?
- [] :
- test_values.map((e) => ({
- input: [type.create(e), type.create(low), type.create(high)],
- expected: type.create(Math.min(Math.max(e, low), high))
- }))
- )
- );
-}
-
-function generateFloatTestCases(
-test_values,
-trait,
-stage)
-{
- return test_values.flatMap((low) =>
- test_values.flatMap((high) =>
- stage === 'const' && low > high ?
- [] :
- test_values.flatMap((e) => {
- const c = FP[trait].makeScalarTripleToIntervalCase(
- e,
- low,
- high,
- stage === 'const' ? 'finite' : 'unfiltered',
- ...FP[trait].clampIntervals
- );
- return c === undefined ? [] : [c];
- })
- )
- );
-}
-
g.test('abstract_int').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
desc(`abstract int tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_int');
+ await run(
+ t,
+ abstractIntBuiltin('clamp'),
+ [Type.abstractInt, Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
g.test('u32').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
@@ -135,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('clamp'), [TypeU32, TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, builtin('clamp'), [Type.u32, Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('i32').
@@ -146,7 +62,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'i32_const' : 'i32_non_const');
- await run(t, builtin('clamp'), [TypeI32, TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, builtin('clamp'), [Type.i32, Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('abstract_float').
@@ -158,12 +74,12 @@ combine('inputSource', onlyConstInputSource).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('abstract');
+ const cases = await d.get('abstract_const');
await run(
t,
- abstractBuiltin('clamp'),
- [TypeAbstractFloat, TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('clamp'),
+ [Type.abstractFloat, Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -177,7 +93,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('clamp'), [TypeF32, TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('clamp'), [Type.f32, Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -191,5 +107,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('clamp'), [TypeF16, TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('clamp'), [Type.f16, Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.cache.js
new file mode 100644
index 0000000000..453110b9f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ // Well-defined accuracy range
+ ...linearRange(-Math.PI, Math.PI, 100),
+ ...FP[trait].scalarRange()],
+
+ trait === 'abstract' ? 'finite' : 'unfiltered',
+ // cos has an absolute accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].cosInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('cos', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.spec.js
index 46b5eade73..ae31f07610 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cos.spec.js
@@ -3,54 +3,39 @@
**/export const description = `
Execution tests for the 'cos' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn cos(e: T ) -> T
Returns the cosine of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './cos.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('cos', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // Well-defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 1000),
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.cosInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // Well-defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 1000),
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.cosInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('cos'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -66,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('cos'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('cos'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -80,5 +65,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('cos'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('cos'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.cache.js
new file mode 100644
index 0000000000..264a58ca7f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // cosh has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].coshInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('cosh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.spec.js
index 4304a39268..f51fef5dac 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cosh.spec.js
@@ -3,44 +3,39 @@
**/export const description = `
Execution tests for the 'cosh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn cosh(e: T ) -> T
Returns the hyperbolic cosine of e. Component-wise when T is a vector
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './cosh.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('cosh', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'finite', FP.f32.coshInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.coshInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'finite', FP.f16.coshInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.coshInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('cosh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -50,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('cosh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('cosh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -64,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('cosh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('cosh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countLeadingZeros.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countLeadingZeros.spec.js
index 8622bef96e..c394cc60a4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countLeadingZeros.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countLeadingZeros.spec.js
@@ -12,7 +12,7 @@ Component-wise when T is a vector.
Also known as "clz" in some languages.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeU32, u32Bits, u32, TypeI32, i32Bits, i32 } from '../../../../../util/conversion.js';
+import { Type, u32Bits, u32, i32Bits, i32 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -27,7 +27,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countLeadingZeros'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('countLeadingZeros'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32(32) },
@@ -142,7 +142,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countLeadingZeros'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('countLeadingZeros'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32(32) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countOneBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countOneBits.spec.js
index 500b02ba61..7de73dc811 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countOneBits.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countOneBits.spec.js
@@ -11,7 +11,7 @@ Also known as "population count".
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeU32, u32Bits, u32, TypeI32, i32Bits, i32 } from '../../../../../util/conversion.js';
+import { Type, u32Bits, u32, i32Bits, i32 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -26,7 +26,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countOneBits'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('countOneBits'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32(0) },
@@ -141,7 +141,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countOneBits'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('countOneBits'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32(0) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countTrailingZeros.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countTrailingZeros.spec.js
index ca3f78ee05..f7b3b3a9dd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countTrailingZeros.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/countTrailingZeros.spec.js
@@ -12,7 +12,7 @@ Component-wise when T is a vector.
Also known as "ctz" in some languages.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { i32, i32Bits, TypeI32, u32, TypeU32, u32Bits } from '../../../../../util/conversion.js';
+import { i32, i32Bits, Type, u32, u32Bits } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -27,7 +27,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countTrailingZeros'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('countTrailingZeros'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32(32) },
@@ -142,7 +142,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('countTrailingZeros'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('countTrailingZeros'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32(32) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.cache.js
new file mode 100644
index 0000000000..e5a68365ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+// abstract_non_const is empty and not used
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateVectorPairToVectorCases(
+ FP[trait].vectorRange(3),
+ FP[trait].vectorRange(3),
+ nonConst ? 'unfiltered' : 'finite',
+ // cross has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].crossInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('cross', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.spec.js
index 7d1c862bf1..c5a54fbe3e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/cross.spec.js
@@ -3,75 +3,30 @@
**/export const description = `
Execution tests for the 'cross' builtin function
-T is AbstractFloat, f32, or f16
+T is abstract-float, f32, or f16
@const fn cross(e1: vec3<T> ,e2: vec3<T>) -> vec3<T>
Returns the cross product of e1 and e2.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseVectorF64Range, vectorF16Range, vectorF32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './cross.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('cross', {
- f32_const: () => {
- return FP.f32.generateVectorPairToVectorCases(
- vectorF32Range(3),
- vectorF32Range(3),
- 'finite',
- FP.f32.crossInterval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateVectorPairToVectorCases(
- vectorF32Range(3),
- vectorF32Range(3),
- 'unfiltered',
- FP.f32.crossInterval
- );
- },
- f16_const: () => {
- return FP.f16.generateVectorPairToVectorCases(
- vectorF16Range(3),
- vectorF16Range(3),
- 'finite',
- FP.f16.crossInterval
- );
- },
- f16_non_const: () => {
- return FP.f16.generateVectorPairToVectorCases(
- vectorF16Range(3),
- vectorF16Range(3),
- 'unfiltered',
- FP.f16.crossInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateVectorPairToVectorCases(
- sparseVectorF64Range(3),
- sparseVectorF64Range(3),
- 'finite',
- FP.abstract.crossInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
- const cases = await d.get('abstract');
+ const cases = await d.get('abstract_const');
await run(
t,
- abstractBuiltin('cross'),
- [TypeVec(3, TypeAbstractFloat), TypeVec(3, TypeAbstractFloat)],
- TypeVec(3, TypeAbstractFloat),
+ abstractFloatBuiltin('cross'),
+ [Type.vec(3, Type.abstractFloat), Type.vec(3, Type.abstractFloat)],
+ Type.vec(3, Type.abstractFloat),
t.params,
cases
);
@@ -83,14 +38,7 @@ desc(`f32 tests`).
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(
- t,
- builtin('cross'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32)],
- TypeVec(3, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('cross'), [Type.vec3f, Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f16').
@@ -102,12 +50,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(
- t,
- builtin('cross'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16)],
- TypeVec(3, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('cross'), [Type.vec3h, Type.vec3h], Type.vec3h, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.cache.js
new file mode 100644
index 0000000000..e4e012f202
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+// abstract_non_const is empty and not used
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // degrees has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].degreesInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('degrees', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.spec.js
index cf3a7e34bc..a79889a43b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/degrees.spec.js
@@ -3,52 +3,20 @@
**/export const description = `
Execution tests for the 'degrees' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<T>
@const fn degrees(e1: T ) -> T
Converts radians to degrees, approximating e1 × 180 ÷ π. Component-wise when T is a vector
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF16Range, fullF32Range, fullF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './degrees.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('degrees', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'finite', FP.f32.degreesInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(
- fullF32Range(),
- 'unfiltered',
- FP.f32.degreesInterval
- );
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'finite', FP.f16.degreesInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(
- fullF16Range(),
- 'unfiltered',
- FP.f16.degreesInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF64Range(),
- 'finite',
- FP.abstract.degreesInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -58,12 +26,12 @@ combine('inputSource', onlyConstInputSource).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('abstract');
+ const cases = await d.get('abstract_const');
await run(
t,
- abstractBuiltin('degrees'),
- [TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('degrees'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -77,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('degrees'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('degrees'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -91,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('degrees'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('degrees'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.cache.js
new file mode 100644
index 0000000000..98a271f54a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.cache.js
@@ -0,0 +1,14 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { sparseScalarF32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('derivatives', {
+ scalar: () => {
+ return FP.f32.generateScalarPairToIntervalCases(
+ sparseScalarF32Range(),
+ sparseScalarF32Range(),
+ 'unfiltered',
+ FP.f32.subtractionInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.js
new file mode 100644
index 0000000000..edf2ae3fe7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/derivatives.js
@@ -0,0 +1,215 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { Type } from '../../../../../util/conversion.js';
+import { toComparator } from '../../expectation.js';
+import { packScalarsToVector } from '../../expression.js';
+
+/**
+ * Run a test for a derivative builtin function.
+ * @param t the GPUTest
+ * @param cases list of test cases to run
+ * @param builtin the builtin function to test
+ * @param non_uniform_discard if true, one of each pair of invocations will discard
+ * @param vectorize if defined, the vector width to use (2, 3, or 4)
+ */
+export function runDerivativeTest(
+t,
+cases,
+builtin,
+non_uniform_discard,
+vectorize)
+{
+ // If the 'vectorize' config option was provided, pack the cases into vectors.
+ let type = Type.f32;
+ if (vectorize !== undefined) {
+ const packed = packScalarsToVector([type, type], type, cases, vectorize);
+ cases = packed.cases;
+ type = packed.resultType;
+ }
+
+ ////////////////////////////////////////////////////////////////
+ // The two input values for a given case are distributed to two different invocations in a quad.
+ // We will populate a storage buffer with these input values laid out sequentially:
+ // [ case_0_input_1, case_0_input_0, case_1_input_1, case_1_input_0, ...]
+ //
+ // The render pipeline will be launched several times over a viewport size of (2, 2). Each draw
+ // call will execute a single quad (four fragment invocation), which will exercise two test cases.
+ // Each of these draw calls will use a different instance index, which is forwarded to the
+ // fragment shader. Each invocation will determine its index into the storage buffer using its
+ // fragment position and the instance index for that draw call.
+ //
+ // Consider two draw calls that test 4 cases (c_0, c_1, c_2, c_3).
+ //
+ // For derivatives along the 'x' direction, the mapping from fragment position to case input is:
+ // Quad 0: | c_0_i_1 | c_0_i_0 | Quad 1: | c_2_i_1 | c_2_i_0 |
+ // | c_1_i_1 | c_1_i_0 | | c_3_i_1 | c_3_i_0 |
+ //
+ // For derivatives along the 'y' direction, the mapping from fragment position to case input is:
+ // Quad 0: | c_0_i_1 | c_1_i_1 | Quad 1: | c_2_i_1 | c_3_i_1 |
+ // | c_0_i_0 | c_1_i_0 | | c_2_i_0 | c_3_i_0 |
+ //
+ ////////////////////////////////////////////////////////////////
+
+ // Determine the direction of the derivative ('x' or 'y') from the builtin name.
+ const dir = builtin[3];
+
+ // Determine the WGSL type to use in the shader, and the stride in bytes between values.
+ let valueStride = 4;
+ let wgslType = 'f32';
+ if (vectorize) {
+ wgslType = `vec${vectorize}f`;
+ valueStride = vectorize * 4;
+ if (vectorize === 3) {
+ valueStride = 16;
+ }
+ }
+
+ // Define a vertex shader that draws a triangle over the full viewport, and a fragment shader that
+ // calls the derivative builtin with a value loaded from that fragment's index into the storage
+ // buffer (determined using the quad index and fragment position, as described above).
+ const code = `
+struct CaseInfo {
+ @builtin(position) position: vec4f,
+ @location(0) @interpolate(flat) quad_idx: u32,
+}
+
+@vertex
+fn vert(@builtin(vertex_index) vertex_idx: u32,
+ @builtin(instance_index) instance_idx: u32) -> CaseInfo {
+ const kVertices = array(
+ vec2f(-2, -2),
+ vec2f( 2, -2),
+ vec2f( 0, 2),
+ );
+ return CaseInfo(vec4(kVertices[vertex_idx], 0, 1), instance_idx);
+}
+
+@group(0) @binding(0) var<storage, read> inputs : array<${wgslType}>;
+@group(0) @binding(1) var<storage, read_write> outputs : array<${wgslType}>;
+
+@fragment
+fn frag(info : CaseInfo) {
+ let case_idx = u32(info.position.${dir === 'x' ? 'y' : 'x'});
+ let inv_idx = u32(info.position.${dir});
+ let index = info.quad_idx*4 + case_idx*2 + inv_idx;
+ let input = inputs[index];
+ ${non_uniform_discard ? 'if inv_idx == 0 { discard; }' : ''}
+ outputs[index] = ${builtin}(input);
+}
+`;
+
+ // Create the render pipeline.
+ const module = t.device.createShaderModule({ code });
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module },
+ fragment: { module, targets: [{ format: 'rgba8unorm', writeMask: 0 }] }
+ });
+
+ // Create storage buffers to hold the inputs and outputs.
+ const bufferSize = cases.length * 2 * valueStride;
+ const inputBuffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.STORAGE,
+ mappedAtCreation: true
+ });
+ const outputBuffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+
+ // Populate the input storage buffer with case input values.
+ const valuesData = new Uint8Array(inputBuffer.getMappedRange());
+ for (let i = 0; i < cases.length; i++) {
+ const inputs = cases[i].input;
+ inputs[0].copyTo(valuesData, (i * 2 + 1) * valueStride);
+ inputs[1].copyTo(valuesData, i * 2 * valueStride);
+ }
+ inputBuffer.unmap();
+
+ // Create a bind group for the storage buffers.
+ const group = t.device.createBindGroup({
+ entries: [
+ { binding: 0, resource: { buffer: inputBuffer } },
+ { binding: 1, resource: { buffer: outputBuffer } }],
+
+ layout: pipeline.getBindGroupLayout(0)
+ });
+
+ // Create a texture to use as a color attachment.
+ // We only need this for launching the desired number of fragment invocations.
+ const colorAttachment = t.device.createTexture({
+ size: { width: 2, height: 2 },
+ format: 'rgba8unorm',
+ usage: GPUTextureUsage.RENDER_ATTACHMENT
+ });
+
+ // Submit the render pass to the device.
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: colorAttachment.createView(),
+ loadOp: 'clear',
+ storeOp: 'discard'
+ }]
+
+ });
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, group);
+ for (let quad = 0; quad < cases.length / 2; quad++) {
+ pass.draw(3, 1, undefined, quad);
+ }
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ // Check the outputs match the expected results.
+ t.expectGPUBufferValuesPassCheck(
+ outputBuffer,
+ (outputData) => {
+ for (let i = 0; i < cases.length; i++) {
+ const c = cases[i];
+
+ // Both invocations involved in the derivative should get the same result.
+ for (let d = 0; d < 2; d++) {
+ if (non_uniform_discard && d === 0) {
+ continue;
+ }
+
+ const index = (i * 2 + d) * valueStride;
+ const result = type.read(outputData, index);
+ const cmp = toComparator(c.expected).compare(result);
+ if (!cmp.matched) {
+ // If this is a coarse derivative, the implementation is also allowed to calculate only
+ // one of the two derivatives and return that result to all of the invocations.
+ if (!builtin.endsWith('Fine')) {
+ const c0 = cases[i % 2 === 0 ? i + 1 : i - 1];
+ const cmp0 = toComparator(c0.expected).compare(result);
+ if (!cmp0.matched) {
+ return new Error(`
+ 1st pair: (${c.input.join(', ')})
+ expected: ${cmp.expected}
+
+ 2nd pair: (${c0.input.join(', ')})
+ expected: ${cmp0.expected}
+
+ returned: ${result}`);
+ }
+ } else {
+ return new Error(`
+ inputs: (${c.input.join(', ')})
+ expected: ${cmp.expected}
+
+ returned: ${result}`);
+ }
+ }
+ }
+ }
+ return undefined;
+ },
+ {
+ type: Uint8Array,
+ typedLength: bufferSize
+ }
+ );
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.cache.js
new file mode 100644
index 0000000000..cc6ca5bd00
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.cache.js
@@ -0,0 +1,99 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Accuracy for determinant is only defined for e, where e is an integer and
+// |e| < quadroot(2**21) [~38],
+// due to computational complexity of calculating the general solution for 4x4,
+// so custom matrices are used.
+//
+// Note: For 2x2 and 3x3 the limits are squareroot and cuberoot instead of
+// quadroot, but using the tighter 4x4 limits for all cases for simplicity.
+const kDeterminantValues = [-38, -10, -5, -1, 0, 1, 5, 10, 38];
+
+const kDeterminantMatrixValues = {
+ 2: kDeterminantValues.map((f, idx) => [
+ [idx % 4 === 0 ? f : idx, idx % 4 === 1 ? f : -idx],
+ [idx % 4 === 2 ? f : -idx, idx % 4 === 3 ? f : idx]]
+ ),
+ 3: kDeterminantValues.map((f, idx) => [
+ [idx % 9 === 0 ? f : idx, idx % 9 === 1 ? f : -idx, idx % 9 === 2 ? f : idx],
+ [idx % 9 === 3 ? f : -idx, idx % 9 === 4 ? f : idx, idx % 9 === 5 ? f : -idx],
+ [idx % 9 === 6 ? f : idx, idx % 9 === 7 ? f : -idx, idx % 9 === 8 ? f : idx]]
+ ),
+ 4: kDeterminantValues.map((f, idx) => [
+ [
+ idx % 16 === 0 ? f : idx,
+ idx % 16 === 1 ? f : -idx,
+ idx % 16 === 2 ? f : idx,
+ idx % 16 === 3 ? f : -idx],
+
+ [
+ idx % 16 === 4 ? f : -idx,
+ idx % 16 === 5 ? f : idx,
+ idx % 16 === 6 ? f : -idx,
+ idx % 16 === 7 ? f : idx],
+
+ [
+ idx % 16 === 8 ? f : idx,
+ idx % 16 === 9 ? f : -idx,
+ idx % 16 === 10 ? f : idx,
+ idx % 16 === 11 ? f : -idx],
+
+ [
+ idx % 16 === 12 ? f : -idx,
+ idx % 16 === 13 ? f : idx,
+ idx % 16 === 14 ? f : -idx,
+ idx % 16 === 15 ? f : idx]]
+
+ )
+};
+
+// Cases: f32_matDxD_[non_]const
+const f32_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`f32_mat${dim}x${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixToScalarCases(
+ kDeterminantMatrixValues[dim],
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.determinantInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: f16_matDxD_[non_]const
+const f16_cases = [2, 3, 4].
+flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`f16_mat${dim}x${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f16.generateMatrixToScalarCases(
+ kDeterminantMatrixValues[dim],
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.determinantInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: abstract_matDxD
+const abstract_cases = [2, 3, 4].
+map((dim) => ({
+ [`abstract_mat${dim}x${dim}`]: () => {
+ return FP.abstract.generateMatrixToScalarCases(
+ kDeterminantMatrixValues[dim],
+ 'finite',
+ // determinant has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP.f32.determinantInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('determinant', {
+ ...f32_cases,
+ ...f16_cases,
+ ...abstract_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.spec.js
index 730c5b0ca2..92d092c70b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/determinant.spec.js
@@ -3,107 +3,35 @@
**/export const description = `
Execution tests for the 'determinant' builtin function
-T is AbstractFloat, f32, or f16
+T is abstract-float, f32, or f16
@const determinant(e: matCxC<T> ) -> T
Returns the determinant of e.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeMat } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './determinant.cache.js';
export const g = makeTestGroup(GPUTest);
-// Accuracy for determinant is only defined for e, where e is an integer and
-// |e| < quadroot(2**21) [~38],
-// due to computational complexity of calculating the general solution for 4x4,
-// so custom matrices are used.
-//
-// Note: For 2x2 and 3x3 the limits are squareroot and cuberoot instead of
-// quadroot, but using the tighter 4x4 limits for all cases for simplicity.
-const kDeterminantValues = [-38, -10, -5, -1, 0, 1, 5, 10, 38];
-
-const kDeterminantMatrixValues = {
- 2: kDeterminantValues.map((f, idx) => [
- [idx % 4 === 0 ? f : idx, idx % 4 === 1 ? f : -idx],
- [idx % 4 === 2 ? f : -idx, idx % 4 === 3 ? f : idx]]
- ),
- 3: kDeterminantValues.map((f, idx) => [
- [idx % 9 === 0 ? f : idx, idx % 9 === 1 ? f : -idx, idx % 9 === 2 ? f : idx],
- [idx % 9 === 3 ? f : -idx, idx % 9 === 4 ? f : idx, idx % 9 === 5 ? f : -idx],
- [idx % 9 === 6 ? f : idx, idx % 9 === 7 ? f : -idx, idx % 9 === 8 ? f : idx]]
- ),
- 4: kDeterminantValues.map((f, idx) => [
- [
- idx % 16 === 0 ? f : idx,
- idx % 16 === 1 ? f : -idx,
- idx % 16 === 2 ? f : idx,
- idx % 16 === 3 ? f : -idx],
-
- [
- idx % 16 === 4 ? f : -idx,
- idx % 16 === 5 ? f : idx,
- idx % 16 === 6 ? f : -idx,
- idx % 16 === 7 ? f : idx],
-
- [
- idx % 16 === 8 ? f : idx,
- idx % 16 === 9 ? f : -idx,
- idx % 16 === 10 ? f : idx,
- idx % 16 === 11 ? f : -idx],
-
- [
- idx % 16 === 12 ? f : -idx,
- idx % 16 === 13 ? f : idx,
- idx % 16 === 14 ? f : -idx,
- idx % 16 === 15 ? f : idx]]
-
- )
-};
-
-// Cases: f32_matDxD_[non_]const
-const f32_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`f32_mat${dim}x${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixToScalarCases(
- kDeterminantMatrixValues[dim],
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.determinantInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_matDxD_[non_]const
-const f16_cases = [2, 3, 4].
-flatMap((dim) =>
-[true, false].map((nonConst) => ({
- [`f16_mat${dim}x${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixToScalarCases(
- kDeterminantMatrixValues[dim],
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.determinantInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('determinant', {
- ...f32_cases,
- ...f16_cases
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#matrix-builtin-functions').
desc(`abstract float tests`).
-params((u) => u.combine('inputSource', allInputSources).combine('dimension', [2, 3, 4])).
-unimplemented();
+params((u) => u.combine('inputSource', onlyConstInputSource).combine('dim', [2, 3, 4])).
+fn(async (t) => {
+ const dim = t.params.dim;
+ const cases = await d.get(`abstract_mat${dim}x${dim}`);
+ await run(
+ t,
+ abstractFloatBuiltin('determinant'),
+ [Type.mat(dim, dim, Type.abstractFloat)],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#matrix-builtin-functions').
@@ -116,7 +44,7 @@ fn(async (t) => {
`f32_mat${dim}x${dim}_const` :
`f32_mat${dim}x${dim}_non_const`
);
- await run(t, builtin('determinant'), [TypeMat(dim, dim, TypeF32)], TypeF32, t.params, cases);
+ await run(t, builtin('determinant'), [Type.mat(dim, dim, Type.f32)], Type.f32, t.params, cases);
});
g.test('f16').
@@ -133,5 +61,5 @@ fn(async (t) => {
`f16_mat${dim}x${dim}_const` :
`f16_mat${dim}x${dim}_non_const`
);
- await run(t, builtin('determinant'), [TypeMat(dim, dim, TypeF16)], TypeF16, t.params, cases);
+ await run(t, builtin('determinant'), [Type.mat(dim, dim, Type.f16)], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.cache.js
new file mode 100644
index 0000000000..3e0199304d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.cache.js
@@ -0,0 +1,49 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+const scalar_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarPairToIntervalCases(
+ FP[trait].scalarRange(),
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // distance has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].distanceInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const vec_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateVectorPairToIntervalCases(
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ // distance has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].distanceInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('distance', {
+ ...scalar_cases,
+ ...vec_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.spec.js
index bf33822288..7a45853faa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/distance.spec.js
@@ -3,104 +3,84 @@
**/export const description = `
Execution tests for the 'distance' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn distance(e1: T ,e2: T ) -> f32
Returns the distance between e1 and e2 (e.g. length(e1-e2)).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullF16Range,
- sparseVectorF32Range,
- sparseVectorF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
-
-import { builtin } from './builtin.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-export const g = makeTestGroup(GPUTest);
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './distance.cache.js';
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorPairToIntervalCases(
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.distanceInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorPairToIntervalCases(
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.distanceInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('distance', {
- f32_const: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'finite',
- FP.f32.distanceInterval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'unfiltered',
- FP.f32.distanceInterval
- );
- },
- ...f32_vec_cases,
- f16_const: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'finite',
- FP.f16.distanceInterval
- );
- },
- f16_non_const: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'unfiltered',
- FP.f16.distanceInterval
- );
- },
- ...f16_vec_cases
-});
+export const g = makeTestGroup(GPUTest);
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
-params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
-).
-unimplemented();
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('distance'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('distance'),
+ [Type.vec2af, Type.vec2af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(
+ t,
+ abstractFloatBuiltin('distance'),
+ [Type.vec3af, Type.vec3af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('distance'),
+ [Type.vec4af, Type.vec4af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -108,7 +88,7 @@ desc(`f32 tests`).
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('distance'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('distance'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f32_vec2').
@@ -119,14 +99,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32)],
- TypeF32,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec2f, Type.vec2f], Type.f32, t.params, cases);
});
g.test('f32_vec3').
@@ -137,14 +110,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_const' : 'f32_vec3_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32)],
- TypeF32,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec3f, Type.vec3f], Type.f32, t.params, cases);
});
g.test('f32_vec4').
@@ -155,14 +121,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_const' : 'f32_vec4_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32)],
- TypeF32,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec4f, Type.vec4f], Type.f32, t.params, cases);
});
g.test('f16').
@@ -174,7 +133,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('distance'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('distance'), [Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('f16_vec2').
@@ -188,14 +147,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_const' : 'f16_vec2_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec2h, Type.vec2h], Type.f16, t.params, cases);
});
g.test('f16_vec3').
@@ -209,14 +161,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_const' : 'f16_vec3_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec3h, Type.vec3h], Type.f16, t.params, cases);
});
g.test('f16_vec4').
@@ -230,12 +175,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_const' : 'f16_vec4_non_const'
);
- await run(
- t,
- builtin('distance'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('distance'), [Type.vec4h, Type.vec4h], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.cache.js
new file mode 100644
index 0000000000..4bdf75bc31
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.cache.js
@@ -0,0 +1,118 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { assert } from '../../../../../../common/util/util.js';import { kValue } from '../../../../../util/constants.js';
+import { FP } from '../../../../../util/floating_point.js';
+import {
+ calculatePermutations,
+ sparseVectorI32Range,
+ sparseVectorI64Range,
+ sparseVectorU32Range,
+ vectorI32Range,
+ vectorI64Range,
+ vectorU32Range } from
+'../../../../../util/math.js';
+import {
+ generateVectorVectorToI32Cases,
+ generateVectorVectorToI64Cases,
+ generateVectorVectorToU32Cases } from
+'../../case.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+function ai_dot(x, y) {
+ assert(x.length === y.length, 'Cannot calculate dot for vectors of different lengths');
+ const multiplications = x.map((_, idx) => x[idx] * y[idx]);
+ if (multiplications.some(kValue.i64.isOOB)) return undefined;
+
+ const result = multiplications.reduce((prev, curr) => prev + curr);
+ if (kValue.i64.isOOB(result)) return undefined;
+
+ // The spec does not state the ordering of summation, so all the
+ // permutations are calculated and the intermediate results checked for
+ // going OOB. vec2 does not need permutations, since a + b === b + a.
+ // All the end results should be the same regardless of the order if the
+ // intermediate additions stay inbounds.
+ if (x.length !== 2) {
+ let wentOOB = false;
+ const permutations = calculatePermutations(multiplications);
+ permutations.forEach((p) => {
+ if (!wentOOB) {
+ p.reduce((prev, curr) => {
+ const next = prev + curr;
+ if (kValue.i64.isOOB(next)) {
+ wentOOB = true;
+ }
+ return next;
+ });
+ }
+ });
+
+ if (wentOOB) return undefined;
+ }
+
+ return !kValue.i64.isOOB(result) ? result : undefined;
+}
+
+function ci_dot(x, y) {
+ assert(x.length === y.length, 'Cannot calculate dot for vectors of different lengths');
+ return x.reduce((prev, _, idx) => prev + Math.imul(x[idx], y[idx]), 0);
+}
+
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const float_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((N) =>
+[true, false].map((nonConst) => ({
+ [`${trait === 'abstract' ? 'abstract_float' : trait}_vec${N}_${
+ nonConst ? 'non_const' : 'const'
+ }`]: () => {
+ // Emit an empty array for not const abstract float, since they will never be run
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ // vec3 and vec4 require calculating all possible permutations, so their runtime is much
+ // longer per test, so only using sparse vectors for them.
+ return FP[trait].generateVectorPairToIntervalCases(
+ N === 2 ? FP[trait].vectorRange(2) : FP[trait].sparseVectorRange(N),
+ N === 2 ? FP[trait].vectorRange(2) : FP[trait].sparseVectorRange(N),
+ nonConst ? 'unfiltered' : 'finite',
+ // dot has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].dotInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+const cases = {
+ ...float_cases,
+ abstract_int_vec2: () => {
+ return generateVectorVectorToI64Cases(vectorI64Range(2), vectorI64Range(2), ai_dot);
+ },
+ abstract_int_vec3: () => {
+ return generateVectorVectorToI64Cases(sparseVectorI64Range(3), sparseVectorI64Range(3), ai_dot);
+ },
+ abstract_int_vec4: () => {
+ return generateVectorVectorToI64Cases(sparseVectorI64Range(4), sparseVectorI64Range(4), ai_dot);
+ },
+ i32_vec2: () => {
+ return generateVectorVectorToI32Cases(vectorI32Range(2), vectorI32Range(2), ci_dot);
+ },
+ i32_vec3: () => {
+ return generateVectorVectorToI32Cases(sparseVectorI32Range(3), sparseVectorI32Range(3), ci_dot);
+ },
+ i32_vec4: () => {
+ return generateVectorVectorToI32Cases(sparseVectorI32Range(4), sparseVectorI32Range(4), ci_dot);
+ },
+ u32_vec2: () => {
+ return generateVectorVectorToU32Cases(vectorU32Range(2), vectorU32Range(2), ci_dot);
+ },
+ u32_vec3: () => {
+ return generateVectorVectorToU32Cases(sparseVectorU32Range(3), sparseVectorU32Range(3), ci_dot);
+ },
+ u32_vec4: () => {
+ return generateVectorVectorToU32Cases(sparseVectorU32Range(4), sparseVectorU32Range(4), ci_dot);
+ }
+};
+
+export const d = makeCaseCache('dot', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.spec.js
index def9be1611..76cbb50393 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot.spec.js
@@ -3,85 +3,180 @@
**/export const description = `
Execution tests for the 'dot' builtin function
-T is AbstractInt, AbstractFloat, i32, u32, f32, or f16
+T is Type.abstractInt, Type.abstractFloat, i32, u32, f32, or f16
@const fn dot(e1: vecN<T>,e2: vecN<T>) -> T
Returns the dot product of e1 and e2.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseVectorF32Range, vectorF32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
+import { d } from './dot.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: [f32|f16]_vecN_[non_]const
-const cases = ['f32', 'f16'].
-flatMap((trait) =>
-[2, 3, 4].flatMap((N) =>
-[true, false].map((nonConst) => ({
- [`${trait}_vec${N}_${nonConst ? 'non_const' : 'const'}`]: () => {
- // vec3 and vec4 require calculating all possible permutations, so their runtime is much
- // longer per test, so only using sparse vectors for them.
- return FP[trait].generateVectorPairToIntervalCases(
- N === 2 ? vectorF32Range(2) : sparseVectorF32Range(N),
- N === 2 ? vectorF32Range(2) : sparseVectorF32Range(N),
- nonConst ? 'unfiltered' : 'finite',
- FP[trait].dotInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('dot', cases);
-
-g.test('abstract_int').
-specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
-desc(`abstract int tests`).
+g.test('abstract_int_vec2').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract integer tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_int_vec2');
+ await run(
+ t,
+ abstractIntBuiltin('dot'),
+ [Type.vec(2, Type.abstractInt), Type.vec(2, Type.abstractInt)],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_int_vec3').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract integer tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_int_vec3');
+ await run(
+ t,
+ abstractIntBuiltin('dot'),
+ [Type.vec(3, Type.abstractInt), Type.vec(3, Type.abstractInt)],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_int_vec4').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract integer tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_int_vec4');
+ await run(
+ t,
+ abstractIntBuiltin('dot'),
+ [Type.vec(4, Type.abstractInt), Type.vec(4, Type.abstractInt)],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
+
+g.test('i32_vec2').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`i32 tests using vec2s`).
params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('i32_vec2');
+ await run(t, builtin('dot'), [Type.vec2i, Type.vec2i], Type.i32, t.params, cases);
+});
-g.test('i32').
+g.test('i32_vec3').
specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
-desc(`i32 tests`).
+desc(`i32 tests using vec3s`).
params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('i32_vec3');
+ await run(t, builtin('dot'), [Type.vec3i, Type.vec3i], Type.i32, t.params, cases);
+});
-g.test('u32').
+g.test('i32_vec4').
specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
-desc(`u32 tests`).
+desc(`i32 tests using vec4s`).
params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('i32_vec4');
+ await run(t, builtin('dot'), [Type.vec4i, Type.vec4i], Type.i32, t.params, cases);
+});
-g.test('abstract_float').
+g.test('u32_vec2').
specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
-desc(`abstract float test`).
+desc(`u32 tests using vec2s`).
params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('u32_vec2');
+ await run(t, builtin('dot'), [Type.vec2u, Type.vec2u], Type.u32, t.params, cases);
+});
-g.test('f32_vec2').
+g.test('u32_vec3').
specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
-desc(`f32 tests using vec2s`).
+desc(`u32 tests using vec3s`).
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
- const cases = await d.get(
- t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
+ const cases = await d.get('u32_vec3');
+ await run(t, builtin('dot'), [Type.vec3u, Type.vec3u], Type.u32, t.params, cases);
+});
+
+g.test('u32_vec4').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`u32 tests using vec4s`).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cases = await d.get('u32_vec4');
+ await run(t, builtin('dot'), [Type.vec4u, Type.vec4u], Type.u32, t.params, cases);
+});
+
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_float_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('dot'),
+ [Type.vec(2, Type.abstractFloat), Type.vec(2, Type.abstractFloat)],
+ Type.abstractFloat,
+ t.params,
+ cases
);
+});
+
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_float_vec3_const');
await run(
t,
- builtin('dot'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32)],
- TypeF32,
+ abstractFloatBuiltin('dot'),
+ [Type.vec(3, Type.abstractFloat), Type.vec(3, Type.abstractFloat)],
+ Type.abstractFloat,
t.params,
cases
);
});
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_float_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('dot'),
+ [Type.vec(4, Type.abstractFloat), Type.vec(4, Type.abstractFloat)],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
+
+g.test('f32_vec2').
+specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
+desc(`f32 tests using vec2s`).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cases = await d.get(
+ t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
+ );
+ await run(t, builtin('dot'), [Type.vec2f, Type.vec2f], Type.f32, t.params, cases);
+});
+
g.test('f32_vec3').
specURL('https://www.w3.org/TR/WGSL/#vector-builtin-functions').
desc(`f32 tests using vec3s`).
@@ -90,14 +185,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_const' : 'f32_vec3_non_const'
);
- await run(
- t,
- builtin('dot'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32)],
- TypeF32,
- t.params,
- cases
- );
+ await run(t, builtin('dot'), [Type.vec3f, Type.vec3f], Type.f32, t.params, cases);
});
g.test('f32_vec4').
@@ -108,14 +196,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_const' : 'f32_vec4_non_const'
);
- await run(
- t,
- builtin('dot'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32)],
- TypeF32,
- t.params,
- cases
- );
+ await run(t, builtin('dot'), [Type.vec4f, Type.vec4f], Type.f32, t.params, cases);
});
g.test('f16_vec2').
@@ -129,14 +210,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_const' : 'f16_vec2_non_const'
);
- await run(
- t,
- builtin('dot'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('dot'), [Type.vec2h, Type.vec2h], Type.f16, t.params, cases);
});
g.test('f16_vec3').
@@ -150,14 +224,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_const' : 'f16_vec3_non_const'
);
- await run(
- t,
- builtin('dot'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('dot'), [Type.vec3h, Type.vec3h], Type.f16, t.params, cases);
});
g.test('f16_vec4').
@@ -171,12 +238,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_const' : 'f16_vec4_non_const'
);
- await run(
- t,
- builtin('dot'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16)],
- TypeF16,
- t.params,
- cases
- );
+ await run(t, builtin('dot'), [Type.vec4h, Type.vec4h], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4I8Packed.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4I8Packed.spec.js
new file mode 100644
index 0000000000..9a2e9eae8d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4I8Packed.spec.js
@@ -0,0 +1,74 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'dot4I8Packed' builtin function
+
+@const fn dot4I8Packed(e1: u32 ,e2: u32) -> i32
+e1 and e2 are interpreted as vectors with four 8-bit signed integer components. Return the signed
+integer dot product of these two vectors. Each component is sign-extended to i32 before performing
+the multiply, and then the add operations are done in WGSL i32 with wrapping behaviour.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { Type, i32, u32 } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#dot4I8Packed-builtin').
+desc(
+ `
+@const fn dot4I8Packed(e1: u32, e2: u32) -> i32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const dot4I8Packed = (e1, e2) => {
+ let result = 0;
+ for (let i = 0; i < 4; ++i) {
+ let e1_i = e1 >> i * 8 & 0xff;
+ if (e1_i >= 128) {
+ e1_i -= 256;
+ }
+ let e2_i = e2 >> i * 8 & 0xff;
+ if (e2_i >= 128) {
+ e2_i -= 256;
+ }
+ result += e1_i * e2_i;
+ }
+ return result;
+ };
+
+ const testInputs = [
+ // dot({0, 0, 0, 0}, {0, 0, 0, 0})
+ [0, 0],
+ // dot({127, 127, 127, 127}, {127, 127, 127, 127})
+ [0x7f7f7f7f, 0x7f7f7f7f],
+ // dot({-128, -128, -128, -128}, {-128, -128, -128, -128})
+ [0x80808080, 0x80808080],
+ // dot({127, 127, 127, 127}, {-128, -128, -128, -128})
+ [0x7f7f7f7f, 0x80808080],
+ // dot({1, 2, 3, 4}, {5, 6, 7, 8})
+ [0x01020304, 0x05060708],
+ // dot({1, 2, 3, 4}, {-1, -2, -3, -4})
+ [0x01020304, 0xfffefdfc],
+ // dot({-5, -6, -7, -8}, {5, 6, 7, 8})
+ [0xfbfaf9f8, 0x05060708],
+ // dot({-9, -10, -11, -12}, {-13, -14, -15, -16})
+ [0xf7f6f5f4, 0xf3f2f1f0]];
+
+
+ const makeCase = (x, y) => {
+ return { input: [u32(x), u32(y)], expected: i32(dot4I8Packed(x, y)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(...v)];
+ });
+
+ await run(t, builtin('dot4I8Packed'), [Type.u32, Type.u32], Type.i32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4U8Packed.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4U8Packed.spec.js
new file mode 100644
index 0000000000..7fd3c08a5f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dot4U8Packed.spec.js
@@ -0,0 +1,59 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'dot4U8Packed' builtin function
+
+@const fn dot4U8Packed(e1: u32 ,e2: u32) -> u32
+e1 and e2 are interpreted as vectors with four 8-bit unsigned integer components. Return the
+unsigned integer dot product of these two vectors.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { Type, u32 } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#dot4U8Packed-builtin').
+desc(
+ `
+@const fn dot4U8Packed(e1: u32, e2: u32) -> u32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const dot4U8Packed = (e1, e2) => {
+ let result = 0;
+ for (let i = 0; i < 4; ++i) {
+ const e1_i = e1 >> i * 8 & 0xff;
+ const e2_i = e2 >> i * 8 & 0xff;
+ result += e1_i * e2_i;
+ }
+ return result;
+ };
+
+ const testInputs = [
+ // dot({0, 0, 0, 0}, {0, 0, 0, 0})
+ [0, 0],
+ // dot({255u, 255u, 255u, 255u}, {255u, 255u, 255u, 255u})
+ [0xffffffff, 0xffffffff],
+ // dot({1u, 2u, 3u, 4u}, {5u, 6u, 7u, 8u})
+ [0x01020304, 0x05060708],
+ // dot({120u, 90u, 60u, 30u}, {50u, 100u, 150u, 200u})
+ [0x785a3c1e, 0x326496c8]];
+
+
+ const makeCase = (x, y) => {
+ return { input: [u32(x), u32(y)], expected: u32(dot4U8Packed(x, y)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(...v)];
+ });
+
+ await run(t, builtin('dot4U8Packed'), [Type.u32, Type.u32], Type.u32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdx.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdx.spec.js
index 9d595f7d23..9ea801316d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdx.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdx.spec.js
@@ -10,14 +10,22 @@ The result is the same as either dpdxFine(e) or dpdxCoarse(e).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdx';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxCoarse.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxCoarse.spec.js
index db31f42df1..9b1b78f381 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxCoarse.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxCoarse.spec.js
@@ -9,14 +9,22 @@ Returns the partial derivative of e with respect to window x coordinates using l
This may result in fewer unique positions that dpdxFine(e).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdxCoarse';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxFine.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxFine.spec.js
index 5eaf792439..25a0436034 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxFine.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdxFine.spec.js
@@ -8,14 +8,22 @@ fn dpdxFine(e:T) ->T
Returns the partial derivative of e with respect to window x coordinates.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdxFine';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdy.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdy.spec.js
index edba9b14c1..0f79064b92 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdy.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdy.spec.js
@@ -9,14 +9,22 @@ Partial derivative of e with respect to window y coordinates.
The result is the same as either dpdyFine(e) or dpdyCoarse(e).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdy';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyCoarse.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyCoarse.spec.js
index f002a587b6..c547896de9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyCoarse.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyCoarse.spec.js
@@ -9,14 +9,22 @@ Returns the partial derivative of e with respect to window y coordinates using l
This may result in fewer unique positions that dpdyFine(e).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdyCoarse';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 test`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyFine.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyFine.spec.js
index 405914acf1..85a829ca00 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyFine.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/dpdyFine.spec.js
@@ -8,14 +8,22 @@ fn dpdyFine(e:T) ->T
Returns the partial derivative of e with respect to window y coordinates.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { allInputSources } from '../../expression.js';
+
+import { d } from './derivatives.cache.js';
+import { runDerivativeTest } from './derivatives.js';
export const g = makeTestGroup(GPUTest);
+const builtin = 'dpdyFine';
+
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
-desc(`f32 tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('non_uniform_discard', [false, true])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('scalar');
+ runDerivativeTest(t, cases, builtin, t.params.non_uniform_discard, t.params.vectorize);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.cache.js
new file mode 100644
index 0000000000..00a4cd7d2d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../../util/constants.js';import { FP } from '../../../../../util/floating_point.js';import { biasedRange, linearRange } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+// floor(ln(max f32 value)) = 88, so exp(88) will be within range of a f32, but exp(89) will not
+// floor(ln(max f64 value)) = 709, so exp(709) can be handled by the testing framework, but exp(710) will misbehave
+const f32_inputs = [
+0, // Returns 1 by definition
+-89, // Returns subnormal value
+kValue.f32.negative.min, // Closest to returning 0 as possible
+...biasedRange(kValue.f32.negative.max, -88, 100),
+...biasedRange(kValue.f32.positive.min, 88, 100),
+...linearRange(89, 709, 10) // Overflows f32, but not f64
+];
+
+// floor(ln(max f16 value)) = 11, so exp(11) will be within range of a f16, but exp(12) will not
+const f16_inputs = [
+0, // Returns 1 by definition
+-12, // Returns subnormal value
+kValue.f16.negative.min, // Closest to returning 0 as possible
+...biasedRange(kValue.f16.negative.max, -11, 100),
+...biasedRange(kValue.f16.positive.min, 11, 100),
+...linearRange(12, 709, 10) // Overflows f16, but not f64
+];
+
+export const d = makeCaseCache('exp', {
+ f32_const: () => {
+ return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.expInterval);
+ },
+ f32_non_const: () => {
+ return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.expInterval);
+ },
+ f16_const: () => {
+ return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.expInterval);
+ },
+ f16_non_const: () => {
+ return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.expInterval);
+ },
+ abstract: () => {
+ // exp has an ulp accuracy, so is only expected to be as accurate as f32
+ return FP.abstract.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.expInterval);
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.spec.js
index 9eac534ba3..69883e92c0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp.spec.js
@@ -3,66 +3,39 @@
**/export const description = `
Execution tests for the 'exp' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn exp(e1: T ) -> T
Returns the natural exponentiation of e1 (e.g. e^e1). Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './exp.cache.js';
export const g = makeTestGroup(GPUTest);
-// floor(ln(max f32 value)) = 88, so exp(88) will be within range of a f32, but exp(89) will not
-// floor(ln(max f64 value)) = 709, so exp(709) can be handled by the testing framework, but exp(710) will misbehave
-const f32_inputs = [
-0, // Returns 1 by definition
--89, // Returns subnormal value
-kValue.f32.negative.min, // Closest to returning 0 as possible
-...biasedRange(kValue.f32.negative.max, -88, 100),
-...biasedRange(kValue.f32.positive.min, 88, 100),
-...linearRange(89, 709, 10) // Overflows f32, but not f64
-];
-
-// floor(ln(max f16 value)) = 11, so exp(11) will be within range of a f16, but exp(12) will not
-const f16_inputs = [
-0, // Returns 1 by definition
--12, // Returns subnormal value
-kValue.f16.negative.min, // Closest to returning 0 as possible
-...biasedRange(kValue.f16.negative.max, -11, 100),
-...biasedRange(kValue.f16.positive.min, 11, 100),
-...linearRange(12, 709, 10) // Overflows f16, but not f64
-];
-
-export const d = makeCaseCache('exp', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.expInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.expInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.expInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.expInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('exp'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -72,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('exp'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('exp'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -86,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('exp'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('exp'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.cache.js
new file mode 100644
index 0000000000..c001595cc0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../../util/constants.js';import { FP } from '../../../../../util/floating_point.js';import { biasedRange, linearRange } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+// floor(log2(max f32 value)) = 127, so exp2(127) will be within range of a f32, but exp2(128) will not
+// floor(ln(max f64 value)) = 1023, so exp2(1023) can be handled by the testing framework, but exp2(1024) will misbehave
+const f32_inputs = [
+0, // Returns 1 by definition
+-128, // Returns subnormal value
+kValue.f32.negative.min, // Closest to returning 0 as possible
+...biasedRange(kValue.f32.negative.max, -127, 100),
+...biasedRange(kValue.f32.positive.min, 127, 100),
+...linearRange(128, 1023, 10) // Overflows f32, but not f64
+];
+
+// floor(log2(max f16 value)) = 15, so exp2(15) will be within range of a f16, but exp2(15) will not
+const f16_inputs = [
+0, // Returns 1 by definition
+-16, // Returns subnormal value
+kValue.f16.negative.min, // Closest to returning 0 as possible
+...biasedRange(kValue.f16.negative.max, -15, 100),
+...biasedRange(kValue.f16.positive.min, 15, 100),
+...linearRange(16, 1023, 10) // Overflows f16, but not f64
+];
+
+export const d = makeCaseCache('exp2', {
+ f32_const: () => {
+ return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.exp2Interval);
+ },
+ f32_non_const: () => {
+ return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.exp2Interval);
+ },
+ f16_const: () => {
+ return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.exp2Interval);
+ },
+ f16_non_const: () => {
+ return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.exp2Interval);
+ },
+ abstract: () => {
+ // exp2 has an ulp accuracy, so is only expected to be as accurate as f32
+ return FP.abstract.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.exp2Interval);
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.spec.js
index 288079ef82..573512cb52 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/exp2.spec.js
@@ -3,66 +3,39 @@
**/export const description = `
Execution tests for the 'exp2' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn exp2(e: T ) -> T
Returns 2 raised to the power e (e.g. 2^e). Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './exp2.cache.js';
export const g = makeTestGroup(GPUTest);
-// floor(log2(max f32 value)) = 127, so exp2(127) will be within range of a f32, but exp2(128) will not
-// floor(ln(max f64 value)) = 1023, so exp2(1023) can be handled by the testing framework, but exp2(1024) will misbehave
-const f32_inputs = [
-0, // Returns 1 by definition
--128, // Returns subnormal value
-kValue.f32.negative.min, // Closest to returning 0 as possible
-...biasedRange(kValue.f32.negative.max, -127, 100),
-...biasedRange(kValue.f32.positive.min, 127, 100),
-...linearRange(128, 1023, 10) // Overflows f32, but not f64
-];
-
-// floor(log2(max f16 value)) = 15, so exp2(15) will be within range of a f16, but exp2(15) will not
-const f16_inputs = [
-0, // Returns 1 by definition
--16, // Returns subnormal value
-kValue.f16.negative.min, // Closest to returning 0 as possible
-...biasedRange(kValue.f16.negative.max, -15, 100),
-...biasedRange(kValue.f16.positive.min, 15, 100),
-...linearRange(16, 1023, 10) // Overflows f16, but not f64
-];
-
-export const d = makeCaseCache('exp2', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.exp2Interval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.exp2Interval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.exp2Interval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.exp2Interval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('exp2'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -72,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('exp2'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('exp2'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -86,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('exp2'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('exp2'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/extractBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/extractBits.spec.js
index 3faccc58a7..ea3197696d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/extractBits.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/extractBits.spec.js
@@ -33,17 +33,7 @@ Other bits of the result are the same as bit c-1 of the result.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- i32Bits,
- TypeI32,
- u32,
- TypeU32,
- u32Bits,
- vec2,
- vec3,
- vec4,
- TypeVec } from
-'../../../../../util/conversion.js';
+import { i32Bits, Type, u32, u32Bits, vec2, vec3, vec4 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -57,7 +47,7 @@ params((u) => u.combine('inputSource', allInputSources).combine('width', [1, 2,
fn(async (t) => {
const cfg = t.params;
- const T = t.params.width === 1 ? TypeU32 : TypeVec(t.params.width, TypeU32);
+ const T = t.params.width === 1 ? Type.u32 : Type.vec(t.params.width, Type.u32);
const V = (x, y, z, w) => {
y = y === undefined ? x : y;
@@ -193,7 +183,7 @@ fn(async (t) => {
);
}
- await run(t, builtin('extractBits'), [T, TypeU32, TypeU32], T, cfg, cases);
+ await run(t, builtin('extractBits'), [T, Type.u32, Type.u32], T, cfg, cases);
});
g.test('i32').
@@ -203,7 +193,7 @@ params((u) => u.combine('inputSource', allInputSources).combine('width', [1, 2,
fn(async (t) => {
const cfg = t.params;
- const T = t.params.width === 1 ? TypeI32 : TypeVec(t.params.width, TypeI32);
+ const T = t.params.width === 1 ? Type.i32 : Type.vec(t.params.width, Type.i32);
const V = (x, y, z, w) => {
y = y === undefined ? x : y;
@@ -333,5 +323,5 @@ fn(async (t) => {
);
}
- await run(t, builtin('extractBits'), [T, TypeU32, TypeU32], T, cfg, cases);
+ await run(t, builtin('extractBits'), [T, Type.u32, Type.u32], T, cfg, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.cache.js
new file mode 100644
index 0000000000..f2b96e3a5f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.cache.js
@@ -0,0 +1,125 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../../util/compare.js';import { toVector } from '../../../../../util/conversion.js';
+import { FP } from '../../../../../util/floating_point.js';
+import { cartesianProduct } from '../../../../../util/math.js';
+import { selectNCases } from '../../case.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+
+// Using a bespoke implementation of make*Case and generate*Cases here
+// since faceForwardIntervals is the only builtin with the API signature
+// (vec, vec, vec) -> vec
+//
+// Additionally faceForward has significant complexities around it due to the
+// fact that `dot` is calculated in its operation, but the result of dot isn't
+// used to calculate the builtin's result.
+
+/**
+ * @returns a Case for `faceForward`
+ * @param argumentKind what kind of floating point numbers being operated on
+ * @param parameterKind what kind of floating point operation should be performed,
+ * should be the same as argumentKind, except for abstract
+ * @param x the `x` param for the case
+ * @param y the `y` param for the case
+ * @param z the `z` param for the case
+ * @param check what interval checking to apply
+ * */
+function makeCase(
+argumentKind,
+parameterKind,
+x,
+y,
+z,
+check)
+{
+ const fp = FP[argumentKind];
+ x = x.map(fp.quantize);
+ y = y.map(fp.quantize);
+ z = z.map(fp.quantize);
+
+ const results = FP[parameterKind].faceForwardIntervals(x, y, z);
+ if (check === 'finite' && results.some((r) => r === undefined)) {
+ return undefined;
+ }
+
+ // Stripping the undefined results, since undefined is used to signal that an OOB
+ // could occur within the calculation that isn't reflected in the result
+ // intervals.
+ const define_results = results.filter((r) => r !== undefined);
+
+ return {
+ input: [
+ toVector(x, fp.scalarBuilder),
+ toVector(y, fp.scalarBuilder),
+ toVector(z, fp.scalarBuilder)],
+
+ expected: anyOf(...define_results)
+ };
+}
+
+/**
+ * @returns an array of Cases for `faceForward`
+ * @param argumentKind what kind of floating point numbers being operated on
+ * @param parameterKind what kind of floating point operation should be performed,
+ * should be the same as argumentKind, except for abstract
+ * @param xs array of inputs to try for the `x` param
+ * @param ys array of inputs to try for the `y` param
+ * @param zs array of inputs to try for the `z` param
+ * @param check what interval checking to apply
+ */
+function generateCases(
+argumentKind,
+parameterKind,
+xs,
+ys,
+zs,
+check)
+{
+ // Cannot use `cartesianProduct` here due to heterogeneous param types
+ return cartesianProduct(xs, ys, zs).
+ map((e) => makeCase(argumentKind, parameterKind, e[0], e[1], e[2], check)).
+ filter((c) => c !== undefined);
+}
+
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ if (trait !== 'abstract') {
+ return generateCases(
+ trait,
+ trait,
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite'
+ );
+ } else {
+ // Restricting the number of cases, because a vector of abstract floats needs to be returned, which is costly.
+ return selectNCases(
+ 'faceForward',
+ 20,
+ generateCases(
+ trait,
+ // faceForward has an inherited accuracy, so is only expected to be as accurate as f32
+ 'f32',
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite'
+ )
+ );
+ }
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('faceForward', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.spec.js
index 20ac9cbd2c..542bff23f3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/faceForward.spec.js
@@ -3,140 +3,66 @@
**/export const description = `
Execution tests for the 'faceForward' builtin function
-T is vecN<AbstractFloat>, vecN<f32>, or vecN<f16>
+T is vecN<Type.abstractFloat>, vecN<f32>, or vecN<f16>
@const fn faceForward(e1: T ,e2: T ,e3: T ) -> T
Returns e1 if dot(e2,e3) is negative, and -e1 otherwise.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-
import { GPUTest } from '../../../../../gpu_test.js';
-import { anyOf } from '../../../../../util/compare.js';
-import { toVector, TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- cartesianProduct,
- sparseVectorF32Range,
- sparseVectorF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './faceForward.cache.js';
export const g = makeTestGroup(GPUTest);
-// Using a bespoke implementation of make*Case and generate*Cases here
-// since faceForwardIntervals is the only builtin with the API signature
-// (vec, vec, vec) -> vec
-//
-// Additionally faceForward has significant complexities around it due to the
-// fact that `dot` is calculated in it s operation, but the result of dot isn't
-// used to calculate the builtin's result.
-
-/**
- * @returns a Case for `faceForward`
- * @param kind what kind of floating point numbers being operated on
- * @param x the `x` param for the case
- * @param y the `y` param for the case
- * @param z the `z` param for the case
- * @param check what interval checking to apply
- * */
-function makeCase(
-kind,
-x,
-y,
-z,
-check)
-{
- const fp = FP[kind];
- x = x.map(fp.quantize);
- y = y.map(fp.quantize);
- z = z.map(fp.quantize);
-
- const results = FP[kind].faceForwardIntervals(x, y, z);
- if (check === 'finite' && results.some((r) => r === undefined)) {
- return undefined;
- }
-
- // Stripping the undefined results, since undefined is used to signal that an OOB
- // could occur within the calculation that isn't reflected in the result
- // intervals.
- const define_results = results.filter((r) => r !== undefined);
-
- return {
- input: [
- toVector(x, fp.scalarBuilder),
- toVector(y, fp.scalarBuilder),
- toVector(z, fp.scalarBuilder)],
-
- expected: anyOf(...define_results)
- };
-}
-
-/**
- * @returns an array of Cases for `faceForward`
- * @param kind what kind of floating point numbers being operated on
- * @param xs array of inputs to try for the `x` param
- * @param ys array of inputs to try for the `y` param
- * @param zs array of inputs to try for the `z` param
- * @param check what interval checking to apply
- */
-function generateCases(
-kind,
-xs,
-ys,
-zs,
-check)
-{
- // Cannot use `cartesianProduct` here due to heterogeneous param types
- return cartesianProduct(xs, ys, zs).
- map((e) => makeCase(kind, e[0], e[1], e[2], check)).
- filter((c) => c !== undefined);
-}
-
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return generateCases(
- 'f32',
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- nonConst ? 'unfiltered' : 'finite'
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return generateCases(
- 'f16',
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- nonConst ? 'unfiltered' : 'finite'
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('faceForward'),
+ [Type.vec2af, Type.vec2af, Type.vec2af],
+ Type.vec2af,
+ t.params,
+ cases
+ );
+});
-export const d = makeCaseCache('faceForward', {
- ...f32_vec_cases,
- ...f16_vec_cases
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(
+ t,
+ abstractFloatBuiltin('faceForward'),
+ [Type.vec3af, Type.vec3af, Type.vec3af],
+ Type.vec3af,
+ t.params,
+ cases
+ );
});
-g.test('abstract_float').
-specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
-desc(`abstract float tests`).
-params((u) => u.combine('inputSource', allInputSources).combine('vectorize', [2, 3, 4])).
-unimplemented();
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('faceForward'),
+ [Type.vec4af, Type.vec4af, Type.vec4af],
+ Type.vec4af,
+ t.params,
+ cases
+ );
+});
g.test('f32_vec2').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -149,8 +75,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32), TypeVec(2, TypeF32)],
- TypeVec(2, TypeF32),
+ [Type.vec2f, Type.vec2f, Type.vec2f],
+ Type.vec2f,
t.params,
cases
);
@@ -167,8 +93,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32), TypeVec(3, TypeF32)],
- TypeVec(3, TypeF32),
+ [Type.vec3f, Type.vec3f, Type.vec3f],
+ Type.vec3f,
t.params,
cases
);
@@ -185,8 +111,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32), TypeVec(4, TypeF32)],
- TypeVec(4, TypeF32),
+ [Type.vec4f, Type.vec4f, Type.vec4f],
+ Type.vec4f,
t.params,
cases
);
@@ -206,8 +132,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16), TypeVec(2, TypeF16)],
- TypeVec(2, TypeF16),
+ [Type.vec2h, Type.vec2h, Type.vec2h],
+ Type.vec2h,
t.params,
cases
);
@@ -227,8 +153,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16), TypeVec(3, TypeF16)],
- TypeVec(3, TypeF16),
+ [Type.vec3h, Type.vec3h, Type.vec3h],
+ Type.vec3h,
t.params,
cases
);
@@ -248,8 +174,8 @@ fn(async (t) => {
await run(
t,
builtin('faceForward'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16), TypeVec(4, TypeF16)],
- TypeVec(4, TypeF16),
+ [Type.vec4h, Type.vec4h, Type.vec4h],
+ Type.vec4h,
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstLeadingBit.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstLeadingBit.spec.js
index fd6b6359f1..139e653961 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstLeadingBit.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstLeadingBit.spec.js
@@ -16,7 +16,7 @@ Otherwise the position of the most significant bit in e that is different from e
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { i32, i32Bits, TypeI32, u32, TypeU32, u32Bits } from '../../../../../util/conversion.js';
+import { i32, i32Bits, Type, u32, u32Bits } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -31,7 +31,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('firstLeadingBit'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('firstLeadingBit'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32(-1) },
@@ -146,7 +146,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('firstLeadingBit'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('firstLeadingBit'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32(-1) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstTrailingBit.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstTrailingBit.spec.js
index 73071c3808..51fa9fa474 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstTrailingBit.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/firstTrailingBit.spec.js
@@ -12,7 +12,7 @@ Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { i32, i32Bits, TypeI32, u32, TypeU32, u32Bits } from '../../../../../util/conversion.js';
+import { i32, i32Bits, Type, u32, u32Bits } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -27,7 +27,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('firstTrailingBit'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('firstTrailingBit'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32(-1) },
@@ -142,7 +142,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('firstTrailingBit'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('firstTrailingBit'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32(-1) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.cache.js
new file mode 100644
index 0000000000..a15ef4c952
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+const kSmallMagnitudeTestValues = [0.1, 0.9, 1.0, 1.1, 1.9, -0.1, -0.9, -1.0, -1.1, -1.9];
+
+// See https://github.com/gpuweb/cts/issues/2766 for details
+const kIssue2766Value = {
+ abstract: 0x8000_0000_0000_0000,
+ f32: 0x8000_0000,
+ f16: 0x8000
+};
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [...kSmallMagnitudeTestValues, kIssue2766Value[trait], ...FP[trait].scalarRange()],
+ 'unfiltered',
+ FP[trait].floorInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('floor', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.spec.js
index 322fffe0eb..6274dd75d1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/floor.spec.js
@@ -3,60 +3,20 @@
**/export const description = `
Execution tests for the 'floor' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn floor(e: T ) -> T
Returns the floor of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeAbstractFloat } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, fullF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './floor.cache.js';
export const g = makeTestGroup(GPUTest);
-const kSmallMagnitudeTestValues = [0.1, 0.9, 1.0, 1.1, 1.9, -0.1, -0.9, -1.0, -1.1, -1.9];
-
-export const d = makeCaseCache('floor', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- ...kSmallMagnitudeTestValues,
- ...fullF32Range(),
- 0x8000_0000 // https://github.com/gpuweb/cts/issues/2766
- ],
- 'unfiltered',
- FP.f32.floorInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- ...kSmallMagnitudeTestValues,
- ...fullF16Range(),
- 0x8000 // https://github.com/gpuweb/cts/issues/2766
- ],
- 'unfiltered',
- FP.f16.floorInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- [
- ...kSmallMagnitudeTestValues,
- ...fullF64Range(),
- 0x8000_0000_0000_0000 // https://github.com/gpuweb/cts/issues/2766
- ],
- 'unfiltered',
- FP.abstract.floorInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -67,7 +27,14 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('abstract');
- await run(t, abstractBuiltin('floor'), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ await run(
+ t,
+ abstractFloatBuiltin('floor'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
});
g.test('f32').
@@ -78,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('floor'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('floor'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -92,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('floor'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('floor'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.cache.js
new file mode 100644
index 0000000000..d8a7da7aab
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+// abstract_non_const is empty and not used
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarTripleToIntervalCases(
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // fma has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].fmaInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('fma', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.spec.js
index f5bac2d922..ed0203f89f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fma.spec.js
@@ -3,70 +3,20 @@
**/export const description = `
Execution tests for the 'fma' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn fma(e1: T ,e2: T ,e3: T ) -> T
Returns e1 * e2 + e3. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeAbstractFloat } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseF32Range, sparseF16Range, sparseF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './fma.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('fma', {
- f32_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'finite',
- FP.f32.fmaInterval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'unfiltered',
- FP.f32.fmaInterval
- );
- },
- f16_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'finite',
- FP.f16.fmaInterval
- );
- },
- f16_non_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'unfiltered',
- FP.f16.fmaInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarTripleToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- sparseF64Range(),
- 'finite',
- FP.abstract.fmaInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -76,12 +26,12 @@ combine('inputSource', onlyConstInputSource).
combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('abstract');
+ const cases = await d.get('abstract_const');
await run(
t,
- abstractBuiltin('fma'),
- [TypeAbstractFloat, TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('fma'),
+ [Type.abstractFloat, Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -95,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('fma'), [TypeF32, TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('fma'), [Type.f32, Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -109,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('fma'), [TypeF16, TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('fma'), [Type.f16, Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.cache.js
new file mode 100644
index 0000000000..7610605bfa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.cache.js
@@ -0,0 +1,50 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+const kCommonValues = [
+0.5, // 0.5 -> 0.5
+0.9, // ~0.9 -> ~0.9
+1, // 1 -> 0
+2, // 2 -> 0
+1.11, // ~1.11 -> ~0.11
+-0.1, // ~-0.1 -> ~0.9
+-0.5, // -0.5 -> 0.5
+-0.9, // ~-0.9 -> ~0.1
+-1, // -1 -> 0
+-2, // -2 -> 0
+-1.11 // ~-1.11 -> ~0.89
+];
+
+const kTraitSpecificValues = {
+ f32: [
+ 10.0001, // ~10.0001 -> ~0.0001
+ -10.0001, // -10.0001 -> ~0.9999
+ 0x8000_0000 // https://github.com/gpuweb/cts/issues/2766
+ ],
+ f16: [
+ 10.0078125, // 10.0078125 -> 0.0078125
+ -10.0078125, // -10.0078125 -> 0.9921875
+ 658.5, // 658.5 -> 0.5
+ 0x8000 // https://github.com/gpuweb/cts/issues/2766
+ ],
+ abstract: [
+ 10.0001, // ~10.0001 -> ~0.0001
+ -10.0001, // -10.0001 -> ~0.9999
+ 0x8000_0000 // https://github.com/gpuweb/cts/issues/2766
+ ]
+};
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [...kCommonValues, ...kTraitSpecificValues[trait], ...FP[trait].scalarRange()],
+ trait === 'abstract' ? 'finite' : 'unfiltered',
+ FP[trait].fractInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('fract', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.spec.js
index 8f85d604bc..b556fcf18f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/fract.spec.js
@@ -3,79 +3,40 @@
**/export const description = `
Execution tests for the 'fract' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn fract(e: T ) -> T
Returns the fractional part of e, computed as e - floor(e).
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './fract.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('fract', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- 0.5, // 0.5 -> 0.5
- 0.9, // ~0.9 -> ~0.9
- 1, // 1 -> 0
- 2, // 2 -> 0
- 1.11, // ~1.11 -> ~0.11
- 10.0001, // ~10.0001 -> ~0.0001
- -0.1, // ~-0.1 -> ~0.9
- -0.5, // -0.5 -> 0.5
- -0.9, // ~-0.9 -> ~0.1
- -1, // -1 -> 0
- -2, // -2 -> 0
- -1.11, // ~-1.11 -> ~0.89
- -10.0001, // -10.0001 -> ~0.9999
- 0x80000000, // https://github.com/gpuweb/cts/issues/2766
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.fractInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- 0.5, // 0.5 -> 0.5
- 0.9, // ~0.9 -> ~0.9
- 1, // 1 -> 0
- 2, // 2 -> 0
- 1.11, // ~1.11 -> ~0.11
- 10.0078125, // 10.0078125 -> 0.0078125
- -0.1, // ~-0.1 -> ~0.9
- -0.5, // -0.5 -> 0.5
- -0.9, // ~-0.9 -> ~0.1
- -1, // -1 -> 0
- -2, // -2 -> 0
- -1.11, // ~-1.11 -> ~0.89
- -10.0078125, // -10.0078125 -> 0.9921875
- 658.5, // 658.5 -> 0.5
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.fractInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('fract'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -85,7 +46,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('fract'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('fract'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -99,5 +60,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('fract'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('fract'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.cache.js
new file mode 100644
index 0000000000..11d49dd040
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.cache.js
@@ -0,0 +1,103 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { skipUndefined } from '../../../../../util/compare.js';import {
+
+ i32,
+ toVector,
+ abstractInt } from
+'../../../../../util/conversion.js';
+import { FP } from '../../../../../util/floating_point.js';
+import { frexp } from '../../../../../util/math.js';
+
+import { makeCaseCache } from '../../case_cache.js';
+
+/* @returns a fract Case for a given scalar or vector input */
+function makeCaseFract(v, trait) {
+ const fp = FP[trait];
+ let toInput;
+ let toOutput;
+ if (v instanceof Array) {
+ // Input is vector
+ toInput = (n) => toVector(n, fp.scalarBuilder);
+ toOutput = (n) => toVector(n, fp.scalarBuilder);
+ } else {
+ // Input is scalar, also wrap it in an array.
+ v = [v];
+ toInput = (n) => fp.scalarBuilder(n[0]);
+ toOutput = (n) => fp.scalarBuilder(n[0]);
+ }
+
+ v = v.map(fp.quantize);
+ if (v.some((e) => e !== 0 && fp.isSubnormal(e))) {
+ return { input: toInput(v), expected: skipUndefined(undefined) };
+ }
+
+ const fs = v.map((e) => {
+ return frexp(e, trait !== 'abstract' ? trait : 'f64').fract;
+ });
+
+ return { input: toInput(v), expected: toOutput(fs) };
+}
+
+/* @returns an exp Case for a given scalar or vector input */
+function makeCaseExp(v, trait) {
+ const fp = FP[trait];
+ let toInput;
+ let toOutput;
+ if (v instanceof Array) {
+ // Input is vector
+ toInput = (n) => toVector(n, fp.scalarBuilder);
+ toOutput = (n) =>
+ toVector(n, trait !== 'abstract' ? i32 : (n) => abstractInt(BigInt(n)));
+ } else {
+ // Input is scalar, also wrap it in an array.
+ v = [v];
+ toInput = (n) => fp.scalarBuilder(n[0]);
+ toOutput = (n) =>
+ trait !== 'abstract' ? i32(n[0]) : abstractInt(BigInt(n[0]));
+ }
+
+ v = v.map(fp.quantize);
+ if (v.some((e) => e !== 0 && fp.isSubnormal(e))) {
+ return { input: toInput(v), expected: skipUndefined(undefined) };
+ }
+
+ const fs = v.map((e) => {
+ return frexp(e, trait !== 'abstract' ? trait : 'f64').exp;
+ });
+
+ return { input: toInput(v), expected: toOutput(fs) };
+}
+
+// Cases: [f32|f16]_vecN_[exp|whole]
+const vec_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+['exp', 'fract'].map((portion) => ({
+ [`${trait}_vec${dim}_${portion}`]: () => {
+ return FP[trait].
+ vectorRange(dim).
+ map((v) => portion === 'exp' ? makeCaseExp(v, trait) : makeCaseFract(v, trait));
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: [f32|f16]_[exp|whole]
+const scalar_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+['exp', 'fract'].map((portion) => ({
+ [`${trait}_${portion}`]: () => {
+ return FP[trait].
+ scalarRange().
+ map((v) => portion === 'exp' ? makeCaseExp(v, trait) : makeCaseFract(v, trait));
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('frexp', {
+ ...scalar_cases,
+ ...vec_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.spec.js
index 962de5456e..b7877a4583 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/frexp.spec.js
@@ -15,34 +15,19 @@ Returns the result_struct for the appropriate overload.
The magnitude of the significand is in the range of [0.5, 1.0) or 0.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { skipUndefined } from '../../../../../util/compare.js';
+import { Type } from '../../../../../util/conversion.js';
import {
- i32,
- toVector,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeVec } from
-
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- frexp,
- fullF16Range,
- fullF32Range,
- vectorF16Range,
- vectorF32Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import {
allInputSources,
basicExpressionBuilder,
-
- run } from
-
+ run,
+ abstractFloatShaderBuilder,
+ abstractIntShaderBuilder,
+ onlyConstInputSource } from
'../../expression.js';
+import { d } from './frexp.cache.js';
+
export const g = makeTestGroup(GPUTest);
/* @returns an ShaderBuilder that evaluates frexp and returns .fract from the result structure */
@@ -55,111 +40,158 @@ function expBuilder() {
return basicExpressionBuilder((value) => `frexp(${value}).exp`);
}
-/* @returns a fract Case for a given scalar or vector input */
-function makeVectorCaseFract(v, trait) {
- const fp = FP[trait];
- let toInput;
- let toOutput;
- if (v instanceof Array) {
- // Input is vector
- toInput = (n) => toVector(n, fp.scalarBuilder);
- toOutput = (n) => toVector(n, fp.scalarBuilder);
- } else {
- // Input is scalar, also wrap it in an array.
- v = [v];
- toInput = (n) => fp.scalarBuilder(n[0]);
- toOutput = (n) => fp.scalarBuilder(n[0]);
- }
-
- v = v.map(fp.quantize);
- if (v.some((e) => e !== 0 && fp.isSubnormal(e))) {
- return { input: toInput(v), expected: skipUndefined(undefined) };
- }
-
- const fs = v.map((e) => {
- return frexp(e, trait).fract;
- });
-
- return { input: toInput(v), expected: toOutput(fs) };
+/* @returns an ShaderBuilder that evaluates frexp and returns .fract from the result structure, for abstract inputs */
+function abstractFractBuilder() {
+ return abstractFloatShaderBuilder((value) => `frexp(${value}).fract`);
+}
+
+/* @returns an ShaderBuilder that evaluates frexp and returns .exp from the result structure, for abstract inputs */
+function abstractExpBuilder() {
+ return abstractIntShaderBuilder((value) => `frexp(${value}).exp`);
+}
+
+g.test('abstract_float_fract').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is AbstractFloat
+
+struct __frexp_result_abstract {
+ fract : AbstractFloat, // fract part
+ exp : AbstractInt // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_fract');
+ await run(t, abstractFractBuilder(), [Type.abstractFloat], Type.abstractFloat, t.params, cases);
+});
+
+g.test('abstract_float_exp').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is AbstractFloat
+
+struct __frexp_result_abstract {
+ fract : AbstractFloat, // fract part
+ exp : AbstractInt // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_exp');
+ await run(t, abstractExpBuilder(), [Type.abstractFloat], Type.abstractInt, t.params, cases);
+});
+
+g.test('abstract_float_vec2_fract').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec2<AbstractFloat>
+
+struct __frexp_result_vec2_abstract {
+ fract : vec2<AbstractFloat>, // fract part
+ exp : vec2<AbstractInt> // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_fract');
+ await run(t, abstractFractBuilder(), [Type.vec2af], Type.vec2af, t.params, cases);
+});
+
+g.test('abstract_float_vec2_exp').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec2<AbstractFloat>
+
+struct __frexp_result_vec2_abstract {
+ fract : vec2<AbstractFloat>, // fractional part
+ exp : vec2<AbstractInt> // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_exp');
+ await run(t, abstractExpBuilder(), [Type.vec2af], Type.vec2ai, t.params, cases);
+});
+
+g.test('abstract_float_vec3_fract').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec3<AbstractFloat>
+
+struct __frexp_result_vec3_abstract {
+ fract : vec3<AbstractFloat>, // fractional part
+ exp : vec3<AbstractInt> // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_fract');
+ await run(t, abstractFractBuilder(), [Type.vec3af], Type.vec3af, t.params, cases);
+});
+
+g.test('abstract_float_vec3_exp').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec3<AbstractFloat>
+
+struct __frexp_result_vec3_abstract {
+ fract : vec3<AbstractFloat>, // fractional part
+ exp : vec3<AbstractInt> // exponent part
}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_exp');
+ await run(t, abstractExpBuilder(), [Type.vec3af], Type.vec3ai, t.params, cases);
+});
-/* @returns an exp Case for a given scalar or vector input */
-function makeVectorCaseExp(v, trait) {
- const fp = FP[trait];
- let toInput;
- let toOutput;
- if (v instanceof Array) {
- // Input is vector
- toInput = (n) => toVector(n, fp.scalarBuilder);
- toOutput = (n) => toVector(n, i32);
- } else {
- // Input is scalar, also wrap it in an array.
- v = [v];
- toInput = (n) => fp.scalarBuilder(n[0]);
- toOutput = (n) => i32(n[0]);
- }
-
- v = v.map(fp.quantize);
- if (v.some((e) => e !== 0 && fp.isSubnormal(e))) {
- return { input: toInput(v), expected: skipUndefined(undefined) };
- }
-
- const fs = v.map((e) => {
- return frexp(e, trait).exp;
- });
-
- return { input: toInput(v), expected: toOutput(fs) };
+g.test('abstract_float_vec4_fract').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec4<AbstractFloat>
+
+struct __frexp_result_vec4_abstract {
+ fract : vec4<AbstractFloat>, // fractional part
+ exp : vec4<AbstractInt> // exponent part
}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_fract');
+ await run(t, abstractFractBuilder(), [Type.vec4af], Type.vec4af, t.params, cases);
+});
+
+g.test('abstract_float_vec4_exp').
+specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
+desc(
+ `
+T is vec4<AbstractFloat>
-export const d = makeCaseCache('frexp', {
- f32_fract: () => {
- return fullF32Range().map((v) => makeVectorCaseFract(v, 'f32'));
- },
- f32_exp: () => {
- return fullF32Range().map((v) => makeVectorCaseExp(v, 'f32'));
- },
- f32_vec2_fract: () => {
- return vectorF32Range(2).map((v) => makeVectorCaseFract(v, 'f32'));
- },
- f32_vec2_exp: () => {
- return vectorF32Range(2).map((v) => makeVectorCaseExp(v, 'f32'));
- },
- f32_vec3_fract: () => {
- return vectorF32Range(3).map((v) => makeVectorCaseFract(v, 'f32'));
- },
- f32_vec3_exp: () => {
- return vectorF32Range(3).map((v) => makeVectorCaseExp(v, 'f32'));
- },
- f32_vec4_fract: () => {
- return vectorF32Range(4).map((v) => makeVectorCaseFract(v, 'f32'));
- },
- f32_vec4_exp: () => {
- return vectorF32Range(4).map((v) => makeVectorCaseExp(v, 'f32'));
- },
- f16_fract: () => {
- return fullF16Range().map((v) => makeVectorCaseFract(v, 'f16'));
- },
- f16_exp: () => {
- return fullF16Range().map((v) => makeVectorCaseExp(v, 'f16'));
- },
- f16_vec2_fract: () => {
- return vectorF16Range(2).map((v) => makeVectorCaseFract(v, 'f16'));
- },
- f16_vec2_exp: () => {
- return vectorF16Range(2).map((v) => makeVectorCaseExp(v, 'f16'));
- },
- f16_vec3_fract: () => {
- return vectorF16Range(3).map((v) => makeVectorCaseFract(v, 'f16'));
- },
- f16_vec3_exp: () => {
- return vectorF16Range(3).map((v) => makeVectorCaseExp(v, 'f16'));
- },
- f16_vec4_fract: () => {
- return vectorF16Range(4).map((v) => makeVectorCaseFract(v, 'f16'));
- },
- f16_vec4_exp: () => {
- return vectorF16Range(4).map((v) => makeVectorCaseExp(v, 'f16'));
- }
+struct __frexp_result_vec4_abstract {
+ fract : vec4<AbstractFloat>, // fractional part
+ exp : vec4<AbstractInt> // exponent part
+}
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_exp');
+ await run(t, abstractExpBuilder(), [Type.vec4af], Type.vec4ai, t.params, cases);
});
g.test('f32_fract').
@@ -177,7 +209,7 @@ struct __frexp_result_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_fract');
- await run(t, fractBuilder(), [TypeF32], TypeF32, t.params, cases);
+ await run(t, fractBuilder(), [Type.f32], Type.f32, t.params, cases);
});
g.test('f32_exp').
@@ -195,7 +227,7 @@ struct __frexp_result_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_exp');
- await run(t, expBuilder(), [TypeF32], TypeI32, t.params, cases);
+ await run(t, expBuilder(), [Type.f32], Type.i32, t.params, cases);
});
g.test('f32_vec2_fract').
@@ -213,7 +245,7 @@ struct __frexp_result_vec2_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec2_fract');
- await run(t, fractBuilder(), [TypeVec(2, TypeF32)], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec2f], Type.vec2f, t.params, cases);
});
g.test('f32_vec2_exp').
@@ -231,7 +263,7 @@ struct __frexp_result_vec2_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec2_exp');
- await run(t, expBuilder(), [TypeVec(2, TypeF32)], TypeVec(2, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec2f], Type.vec2i, t.params, cases);
});
g.test('f32_vec3_fract').
@@ -249,7 +281,7 @@ struct __frexp_result_vec3_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec3_fract');
- await run(t, fractBuilder(), [TypeVec(3, TypeF32)], TypeVec(3, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f32_vec3_exp').
@@ -267,7 +299,7 @@ struct __frexp_result_vec3_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec3_exp');
- await run(t, expBuilder(), [TypeVec(3, TypeF32)], TypeVec(3, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec3f], Type.vec3i, t.params, cases);
});
g.test('f32_vec4_fract').
@@ -285,7 +317,7 @@ struct __frexp_result_vec4_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec4_fract');
- await run(t, fractBuilder(), [TypeVec(4, TypeF32)], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec4f], Type.vec4f, t.params, cases);
});
g.test('f32_vec4_exp').
@@ -303,7 +335,7 @@ struct __frexp_result_vec4_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec4_exp');
- await run(t, expBuilder(), [TypeVec(4, TypeF32)], TypeVec(4, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec4f], Type.vec4i, t.params, cases);
});
g.test('f16_fract').
@@ -324,7 +356,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_fract');
- await run(t, fractBuilder(), [TypeF16], TypeF16, t.params, cases);
+ await run(t, fractBuilder(), [Type.f16], Type.f16, t.params, cases);
});
g.test('f16_exp').
@@ -345,7 +377,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_exp');
- await run(t, expBuilder(), [TypeF16], TypeI32, t.params, cases);
+ await run(t, expBuilder(), [Type.f16], Type.i32, t.params, cases);
});
g.test('f16_vec2_fract').
@@ -366,7 +398,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec2_fract');
- await run(t, fractBuilder(), [TypeVec(2, TypeF16)], TypeVec(2, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec2h], Type.vec2h, t.params, cases);
});
g.test('f16_vec2_exp').
@@ -387,7 +419,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec2_exp');
- await run(t, expBuilder(), [TypeVec(2, TypeF16)], TypeVec(2, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec2h], Type.vec2i, t.params, cases);
});
g.test('f16_vec3_fract').
@@ -408,7 +440,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec3_fract');
- await run(t, fractBuilder(), [TypeVec(3, TypeF16)], TypeVec(3, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec3h], Type.vec3h, t.params, cases);
});
g.test('f16_vec3_exp').
@@ -429,7 +461,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec3_exp');
- await run(t, expBuilder(), [TypeVec(3, TypeF16)], TypeVec(3, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec3h], Type.vec3i, t.params, cases);
});
g.test('f16_vec4_fract').
@@ -450,7 +482,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec4_fract');
- await run(t, fractBuilder(), [TypeVec(4, TypeF16)], TypeVec(4, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec4h], Type.vec4h, t.params, cases);
});
g.test('f16_vec4_exp').
@@ -471,5 +503,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec4_exp');
- await run(t, expBuilder(), [TypeVec(4, TypeF16)], TypeVec(4, TypeI32), t.params, cases);
+ await run(t, expBuilder(), [Type.vec4h], Type.vec4i, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/insertBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/insertBits.spec.js
index 1af24a5189..5a0a8182d6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/insertBits.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/insertBits.spec.js
@@ -18,17 +18,7 @@ Other bits of the result are copied from e.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- i32Bits,
- TypeI32,
- u32,
- TypeU32,
- u32Bits,
- vec2,
- vec3,
- vec4,
- TypeVec } from
-'../../../../../util/conversion.js';
+import { i32Bits, Type, u32, u32Bits, vec2, vec3, vec4 } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -46,8 +36,8 @@ combine('width', [1, 2, 3, 4])
).
fn(async (t) => {
const cfg = t.params;
- const scalarType = t.params.signed ? TypeI32 : TypeU32;
- const T = t.params.width === 1 ? scalarType : TypeVec(t.params.width, scalarType);
+ const scalarType = t.params.signed ? Type.i32 : Type.u32;
+ const T = t.params.width === 1 ? scalarType : Type.vec(t.params.width, scalarType);
const V = (x, y, z, w) => {
y = y === undefined ? x : y;
@@ -382,5 +372,5 @@ fn(async (t) => {
);
}
- await run(t, builtin('insertBits'), [T, T, TypeU32, TypeU32], T, cfg, cases);
+ await run(t, builtin('insertBits'), [T, T, Type.u32, Type.u32], T, cfg, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.cache.js
new file mode 100644
index 0000000000..883dc14c08
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.cache.js
@@ -0,0 +1,44 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../../util/constants.js';import { FP } from '../../../../../util/floating_point.js';import { biasedRange, linearRange } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('inverseSqrt', {
+ f32: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ [
+ // 0 < x <= 1 linearly spread
+ ...linearRange(kValue.f32.positive.min, 1, 100),
+ // 1 <= x < 2^32, biased towards 1
+ ...biasedRange(1, 2 ** 32, 1000)],
+
+ 'unfiltered',
+ FP.f32.inverseSqrtInterval
+ );
+ },
+ f16: () => {
+ return FP.f16.generateScalarToIntervalCases(
+ [
+ // 0 < x <= 1 linearly spread
+ ...linearRange(kValue.f16.positive.min, 1, 100),
+ // 1 <= x < 2^15, biased towards 1
+ ...biasedRange(1, 2 ** 15, 1000)],
+
+ 'unfiltered',
+ FP.f16.inverseSqrtInterval
+ );
+ },
+ abstract: () => {
+ return FP.abstract.generateScalarToIntervalCases(
+ [
+ // 0 < x <= 1 linearly spread
+ ...linearRange(kValue.f64.positive.min, 1, 100),
+ // 1 <= x < 2^64, biased towards 1, only using 100 steps, because af tests are more expensive per case
+ ...biasedRange(1, 2 ** 64, 100)],
+
+ 'finite',
+ // inverseSqrt has an ulp accuracy, so is only expected to be as accurate as f32
+ FP.f32.inverseSqrtInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.spec.js
index c24121c716..d22daed907 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/inversesqrt.spec.js
@@ -3,57 +3,39 @@
**/export const description = `
Execution tests for the 'inverseSqrt' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn inverseSqrt(e: T ) -> T
Returns the reciprocal of sqrt(e). Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './inversesqrt.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('inverseSqrt', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // 0 < x <= 1 linearly spread
- ...linearRange(kValue.f32.positive.min, 1, 100),
- // 1 <= x < 2^32, biased towards 1
- ...biasedRange(1, 2 ** 32, 1000)],
-
- 'unfiltered',
- FP.f32.inverseSqrtInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // 0 < x <= 1 linearly spread
- ...linearRange(kValue.f16.positive.min, 1, 100),
- // 1 <= x < 2^15, biased towards 1
- ...biasedRange(1, 2 ** 15, 1000)],
-
- 'unfiltered',
- FP.f16.inverseSqrtInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('inverseSqrt'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -63,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('inverseSqrt'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('inverseSqrt'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -77,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('inverseSqrt'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('inverseSqrt'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.cache.js
new file mode 100644
index 0000000000..bacdae0349
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.cache.js
@@ -0,0 +1,61 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { assert } from '../../../../../../common/util/util.js';import { anyOf } from '../../../../../util/compare.js';import { abstractInt, i32 } from '../../../../../util/conversion.js';
+import { FP } from '../../../../../util/floating_point.js';
+import { biasedRange, quantizeToI32, sparseI32Range } from '../../../../../util/math.js';
+
+import { makeCaseCache } from '../../case_cache.js';
+
+// ldexpInterval's return interval doesn't cover the flush-to-zero cases when e2 + bias <= 0, thus
+// special examination is required.
+// See the comment block on ldexpInterval for more details
+// e2 is an integer (i32) while e1 is float.
+const makeCase = (trait, e1, e2) => {
+ const FPTrait = FP[trait];
+ e1 = FPTrait.quantize(e1);
+ // e2 should be in i32 range for the convenience.
+ assert(-2147483648 <= e2 && e2 <= 2147483647, 'e2 should be in i32 range');
+ e2 = quantizeToI32(e2);
+
+ const expected = FPTrait.ldexpInterval(e1, e2);
+
+ const e2_scalar = trait === 'abstract' ? abstractInt(BigInt(e2)) : i32(e2);
+ // Result may be zero if e2 + bias <= 0
+ if (e2 + FPTrait.constants().bias <= 0) {
+ return {
+ input: [FPTrait.scalarBuilder(e1), e2_scalar],
+ expected: anyOf(expected, FPTrait.constants().zeroInterval)
+ };
+ }
+
+ return { input: [FPTrait.scalarBuilder(e1), e2_scalar], expected };
+};
+
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (nonConst) {
+ if (trait === 'abstract') {
+ return [];
+ }
+ return FP[trait].
+ sparseScalarRange().
+ flatMap((e1) => sparseI32Range().map((e2) => makeCase(trait, e1, e2)));
+ }
+ const bias = FP[trait].constants().bias;
+ // const
+ return FP[trait].
+ sparseScalarRange().
+ flatMap((e1) =>
+ biasedRange(-bias - 10, bias + 1, 10).flatMap((e2) =>
+ FP[trait].isFinite(e1 * 2 ** quantizeToI32(e2)) ? makeCase(trait, e1, e2) : []
+ )
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('ldexp', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.spec.js
index a91e9d73ff..99bb09d176 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/ldexp.spec.js
@@ -3,87 +3,25 @@
**/export const description = `
Execution tests for the 'ldexp' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
-K is AbstractInt, i32
+K is Type.abstractInt, i32
I is K or vecN<K>, where
I is a scalar if T is a scalar, or a vector when T is a vector
@const fn ldexp(e1: T ,e2: I ) -> T
Returns e1 * 2^e2. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-import { assert } from '../../../../../../common/util/util.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { anyOf } from '../../../../../util/compare.js';
-import { i32, TypeF32, TypeF16, TypeI32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- biasedRange,
- quantizeToI32,
- sparseF32Range,
- sparseI32Range,
- sparseF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './ldexp.cache.js';
export const g = makeTestGroup(GPUTest);
-const bias = {
- f32: 127,
- f16: 15
-};
-
-// ldexpInterval's return interval doesn't cover the flush-to-zero cases when e2 + bias <= 0, thus
-// special examination is required.
-// See the comment block on ldexpInterval for more details
-// e2 is an integer (i32) while e1 is float.
-const makeCase = (trait, e1, e2) => {
- const FPTrait = FP[trait];
- e1 = FPTrait.quantize(e1);
- // e2 should be in i32 range for the convinience.
- assert(-2147483648 <= e2 && e2 <= 2147483647, 'e2 should be in i32 range');
- e2 = quantizeToI32(e2);
-
- const expected = FPTrait.ldexpInterval(e1, e2);
-
- // Result may be zero if e2 + bias <= 0
- if (e2 + bias[trait] <= 0) {
- return {
- input: [FPTrait.scalarBuilder(e1), i32(e2)],
- expected: anyOf(expected, FPTrait.constants().zeroInterval)
- };
- }
-
- return { input: [FPTrait.scalarBuilder(e1), i32(e2)], expected };
-};
-
-export const d = makeCaseCache('ldexp', {
- f32_non_const: () => {
- return sparseF32Range().flatMap((e1) => sparseI32Range().map((e2) => makeCase('f32', e1, e2)));
- },
- f32_const: () => {
- return sparseF32Range().flatMap((e1) =>
- biasedRange(-bias.f32 - 10, bias.f32 + 1, 10).flatMap((e2) =>
- FP.f32.isFinite(e1 * 2 ** quantizeToI32(e2)) ? makeCase('f32', e1, e2) : []
- )
- );
- },
- f16_non_const: () => {
- return sparseF16Range().flatMap((e1) => sparseI32Range().map((e2) => makeCase('f16', e1, e2)));
- },
- f16_const: () => {
- return sparseF16Range().flatMap((e1) =>
- biasedRange(-bias.f16 - 10, bias.f16 + 1, 10).flatMap((e2) =>
- FP.f16.isFinite(e1 * 2 ** quantizeToI32(e2)) ? makeCase('f16', e1, e2) : []
- )
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(
@@ -91,9 +29,21 @@ desc(
`
).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('ldexp'),
+ [Type.abstractFloat, Type.abstractInt],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -103,7 +53,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('ldexp'), [TypeF32, TypeI32], TypeF32, t.params, cases);
+ await run(t, builtin('ldexp'), [Type.f32, Type.i32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -117,5 +67,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('ldexp'), [TypeF16, TypeI32], TypeF16, t.params, cases);
+ await run(t, builtin('ldexp'), [Type.f16, Type.i32], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.cache.js
new file mode 100644
index 0000000000..18c15dec5d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.cache.js
@@ -0,0 +1,42 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+const scalar_cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ trait !== 'abstract' ? 'unfiltered' : 'finite',
+ // length has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].lengthInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const vec_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateVectorToIntervalCases(
+ FP[trait].vectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ // length has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].lengthInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('length', {
+ ...scalar_cases,
+ ...vec_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.spec.js
index fa42f7e504..9aa959e086 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/length.spec.js
@@ -3,83 +3,83 @@
**/export const description = `
Execution tests for the 'length' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn length(e: T ) -> f32
Returns the length of e (e.g. abs(e) if T is a scalar, or sqrt(e[0]^2 + e[1]^2 + ...) if T is a vector).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullF16Range,
- vectorF32Range,
- vectorF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './length.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorToIntervalCases(
- vectorF32Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.lengthInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract_float tests`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('length'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorToIntervalCases(
- vectorF16Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.lengthInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('length'),
+ [Type.vec2af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
-export const d = makeCaseCache('length', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- fullF32Range(),
- 'unfiltered',
- FP.f32.lengthInterval
- );
- },
- ...f32_vec_cases,
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- fullF16Range(),
- 'unfiltered',
- FP.f16.lengthInterval
- );
- },
- ...f16_vec_cases
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract_float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(
+ t,
+ abstractFloatBuiltin('length'),
+ [Type.vec3af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
});
-g.test('abstract_float').
+g.test('abstract_float_vec4').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
-desc(`abstract float tests`).
-params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
-).
-unimplemented();
+desc(`abstract_float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('length'),
+ [Type.vec4af],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -87,7 +87,7 @@ desc(`f32 tests`).
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('length'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('length'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f32_vec2').
@@ -98,7 +98,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
);
- await run(t, builtin('length'), [TypeVec(2, TypeF32)], TypeF32, t.params, cases);
+ await run(t, builtin('length'), [Type.vec2f], Type.f32, t.params, cases);
});
g.test('f32_vec3').
@@ -109,7 +109,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_const' : 'f32_vec3_non_const'
);
- await run(t, builtin('length'), [TypeVec(3, TypeF32)], TypeF32, t.params, cases);
+ await run(t, builtin('length'), [Type.vec3f], Type.f32, t.params, cases);
});
g.test('f32_vec4').
@@ -120,7 +120,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_const' : 'f32_vec4_non_const'
);
- await run(t, builtin('length'), [TypeVec(4, TypeF32)], TypeF32, t.params, cases);
+ await run(t, builtin('length'), [Type.vec4f], Type.f32, t.params, cases);
});
g.test('f16').
@@ -132,7 +132,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('length'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('length'), [Type.f16], Type.f16, t.params, cases);
});
g.test('f16_vec2').
@@ -146,7 +146,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_const' : 'f16_vec2_non_const'
);
- await run(t, builtin('length'), [TypeVec(2, TypeF16)], TypeF16, t.params, cases);
+ await run(t, builtin('length'), [Type.vec2h], Type.f16, t.params, cases);
});
g.test('f16_vec3').
@@ -160,7 +160,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_const' : 'f16_vec3_non_const'
);
- await run(t, builtin('length'), [TypeVec(3, TypeF16)], TypeF16, t.params, cases);
+ await run(t, builtin('length'), [Type.vec3h], Type.f16, t.params, cases);
});
g.test('f16_vec4').
@@ -174,5 +174,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_const' : 'f16_vec4_non_const'
);
- await run(t, builtin('length'), [TypeVec(4, TypeF16)], TypeF16, t.params, cases);
+ await run(t, builtin('length'), [Type.vec4h], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.cache.js
new file mode 100644
index 0000000000..b984c1f30a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.cache.js
@@ -0,0 +1,30 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { biasedRange, linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// log's accuracy is defined in three regions { [0, 0.5), [0.5, 2.0], (2.0, +∞] }
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ ...linearRange(FP[trait].constants().positive.min, 0.5, 20),
+ ...linearRange(0.5, 2.0, 20),
+ ...biasedRange(2.0, 2 ** 32, 1000),
+ ...FP[trait].scalarRange()],
+
+ nonConst ? 'unfiltered' : 'finite',
+ // log has an absolute or ulp accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].logInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('log', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.spec.js
index 5135d0ec02..e828fabdbe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log.spec.js
@@ -3,59 +3,39 @@
**/export const description = `
Execution tests for the 'log' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn log(e: T ) -> T
Returns the natural logarithm of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, fullF32Range, fullF16Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './log.cache.js';
export const g = makeTestGroup(GPUTest);
-// log's accuracy is defined in three regions { [0, 0.5), [0.5, 2.0], (2.0, +∞] }
-const f32_inputs = [
-...linearRange(kValue.f32.positive.min, 0.5, 20),
-...linearRange(0.5, 2.0, 20),
-...biasedRange(2.0, 2 ** 32, 1000),
-...fullF32Range()];
-
-const f16_inputs = [
-...linearRange(kValue.f16.positive.min, 0.5, 20),
-...linearRange(0.5, 2.0, 20),
-...biasedRange(2.0, 2 ** 32, 1000),
-...fullF16Range()];
-
-
-export const d = makeCaseCache('log', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.logInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.logInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.logInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.logInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('log'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -71,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('log'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('log'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -85,5 +65,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('log'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('log'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.cache.js
new file mode 100644
index 0000000000..1ed1f82474
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.cache.js
@@ -0,0 +1,30 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { biasedRange, linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// log2's accuracy is defined in three regions { [0, 0.5), [0.5, 2.0], (2.0, +∞] }
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ ...linearRange(FP[trait].constants().positive.min, 0.5, 20),
+ ...linearRange(0.5, 2.0, 20),
+ ...biasedRange(2.0, 2 ** 32, 1000),
+ ...FP[trait].scalarRange()],
+
+ nonConst ? 'unfiltered' : 'finite',
+ // log2 has an absolute or ulp accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].log2Interval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('log2', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.spec.js
index c63b2c4224..df280e5965 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/log2.spec.js
@@ -3,59 +3,39 @@
**/export const description = `
Execution tests for the 'log2' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn log2(e: T ) -> T
Returns the base-2 logarithm of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { biasedRange, fullF32Range, fullF16Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './log2.cache.js';
export const g = makeTestGroup(GPUTest);
-// log2's accuracy is defined in three regions { [0, 0.5), [0.5, 2.0], (2.0, +∞] }
-const f32_inputs = [
-...linearRange(kValue.f32.positive.min, 0.5, 20),
-...linearRange(0.5, 2.0, 20),
-...biasedRange(2.0, 2 ** 32, 1000),
-...fullF32Range()];
-
-const f16_inputs = [
-...linearRange(kValue.f16.positive.min, 0.5, 20),
-...linearRange(0.5, 2.0, 20),
-...biasedRange(2.0, 2 ** 32, 1000),
-...fullF16Range()];
-
-
-export const d = makeCaseCache('log2', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'finite', FP.f32.log2Interval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(f32_inputs, 'unfiltered', FP.f32.log2Interval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'finite', FP.f16.log2Interval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(f16_inputs, 'unfiltered', FP.f16.log2Interval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('log2'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -71,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('log2'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('log2'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -85,5 +65,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('log2'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('log2'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.cache.js
new file mode 100644
index 0000000000..8644a569ac
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarPairToIntervalCases(
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ 'unfiltered',
+ FP[trait].maxInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('max', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.spec.js
index 53abc03c33..a605553a4a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/max.spec.js
@@ -3,12 +3,12 @@
**/export const description = `
Execution tests for the 'max' builtin function
-S is AbstractInt, i32, or u32
+S is abstract-int, i32, or u32
T is S or vecN<S>
@const fn max(e1: T ,e2: T) -> T
Returns e2 if e1 is less than e2, and e1 otherwise. Component-wise when T is a vector.
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is vecN<S>
@const fn max(e1: T ,e2: T) -> T
Returns e2 if e1 is less than e2, and e1 otherwise.
@@ -18,72 +18,50 @@ Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- i32,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32,
- TypeAbstractFloat } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, sparseF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type, i32, u32, abstractInt } from '../../../../../util/conversion.js';
+import { maxBigInt } from '../../../../../util/math.js';
+
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
+import { d } from './max.cache.js';
/** Generate set of max test cases from list of interesting values */
-function generateTestCases(
-values,
-makeCase)
-{
- const cases = new Array();
- values.forEach((e) => {
- values.forEach((f) => {
- cases.push(makeCase(e, f));
+function generateTestCases(values, makeCase) {
+ return values.flatMap((e) => {
+ return values.map((f) => {
+ return makeCase(e, f);
});
});
- return cases;
}
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('max', {
- f32: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'unfiltered',
- FP.f32.maxInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'unfiltered',
- FP.f16.maxInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'unfiltered',
- FP.abstract.maxInterval
- );
- }
-});
-
g.test('abstract_int').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
desc(`abstract int tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const makeCase = (x, y) => {
+ return { input: [abstractInt(x), abstractInt(y)], expected: abstractInt(maxBigInt(x, y)) };
+ };
+
+ const test_values = [-0x70000000n, -2n, -1n, 0n, 1n, 2n, 0x70000000n];
+ const cases = generateTestCases(test_values, makeCase);
+
+ await run(
+ t,
+ abstractIntBuiltin('max'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
g.test('u32').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
@@ -99,7 +77,7 @@ fn(async (t) => {
const test_values = [0, 1, 2, 0x70000000, 0x80000000, 0xffffffff];
const cases = generateTestCases(test_values, makeCase);
- await run(t, builtin('max'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, builtin('max'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('i32').
@@ -116,7 +94,7 @@ fn(async (t) => {
const test_values = [-0x70000000, -2, -1, 0, 1, 2, 0x70000000];
const cases = generateTestCases(test_values, makeCase);
- await run(t, builtin('max'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, builtin('max'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('abstract_float').
@@ -131,9 +109,9 @@ fn(async (t) => {
const cases = await d.get('abstract');
await run(
t,
- abstractBuiltin('max'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('max'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -147,7 +125,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('max'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('max'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -161,5 +139,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('max'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('max'), [Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.cache.js
new file mode 100644
index 0000000000..482502e390
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarPairToIntervalCases(
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ 'unfiltered',
+ FP[trait].minInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('min', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.spec.js
index 0b1bc58c3e..05bd9dd0e4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/min.spec.js
@@ -3,12 +3,12 @@
**/export const description = `
Execution tests for the 'min' builtin function
-S is AbstractInt, i32, or u32
+S is abstract-int, i32, or u32
T is S or vecN<S>
@const fn min(e1: T ,e2: T) -> T
Returns e1 if e1 is less than e2, and e2 otherwise. Component-wise when T is a vector.
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn min(e1: T ,e2: T) -> T
Returns e2 if e2 is less than e1, and e1 otherwise.
@@ -17,72 +17,50 @@ If both operands are NaNs, a NaN is returned.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- i32,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32,
- TypeAbstractFloat } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, sparseF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type, i32, u32, abstractInt } from '../../../../../util/conversion.js';
+import { minBigInt } from '../../../../../util/math.js';
+
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
+import { d } from './min.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('min', {
- f32: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'unfiltered',
- FP.f32.minInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'unfiltered',
- FP.f16.minInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarPairToIntervalCases(
- sparseF64Range(),
- sparseF64Range(),
- 'unfiltered',
- FP.abstract.minInterval
- );
- }
-});
-
/** Generate set of min test cases from list of interesting values */
-function generateTestCases(
-values,
-makeCase)
-{
- const cases = new Array();
- values.forEach((e) => {
- values.forEach((f) => {
- cases.push(makeCase(e, f));
+function generateTestCases(values, makeCase) {
+ return values.flatMap((e) => {
+ return values.map((f) => {
+ return makeCase(e, f);
});
});
- return cases;
}
g.test('abstract_int').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
desc(`abstract int tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const makeCase = (x, y) => {
+ return { input: [abstractInt(x), abstractInt(y)], expected: abstractInt(minBigInt(x, y)) };
+ };
+
+ const test_values = [-0x70000000n, -2n, -1n, 0n, 1n, 2n, 0x70000000n];
+ const cases = generateTestCases(test_values, makeCase);
+
+ await run(
+ t,
+ abstractIntBuiltin('min'),
+ [Type.abstractInt, Type.abstractInt],
+ Type.abstractInt,
+ t.params,
+ cases
+ );
+});
g.test('u32').
specURL('https://www.w3.org/TR/WGSL/#integer-builtin-functions').
@@ -98,7 +76,7 @@ fn(async (t) => {
const test_values = [0, 1, 2, 0x70000000, 0x80000000, 0xffffffff];
const cases = generateTestCases(test_values, makeCase);
- await run(t, builtin('min'), [TypeU32, TypeU32], TypeU32, t.params, cases);
+ await run(t, builtin('min'), [Type.u32, Type.u32], Type.u32, t.params, cases);
});
g.test('i32').
@@ -115,7 +93,7 @@ fn(async (t) => {
const test_values = [-0x70000000, -2, -1, 0, 1, 2, 0x70000000];
const cases = generateTestCases(test_values, makeCase);
- await run(t, builtin('min'), [TypeI32, TypeI32], TypeI32, t.params, cases);
+ await run(t, builtin('min'), [Type.i32, Type.i32], Type.i32, t.params, cases);
});
g.test('abstract_float').
@@ -130,9 +108,9 @@ fn(async (t) => {
const cases = await d.get('abstract');
await run(
t,
- abstractBuiltin('min'),
- [TypeAbstractFloat, TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('min'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -146,7 +124,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('min'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('min'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -160,5 +138,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('min'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('min'), [Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.cache.js
new file mode 100644
index 0000000000..ac1d4cf573
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.cache.js
@@ -0,0 +1,56 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { selectNCases } from '../../case.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]_[non_]const
+// abstract_non_const is empty and unused
+const scalar_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ const cases = FP[trait].generateScalarTripleToIntervalCases(
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // mix has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ ...FP[trait !== 'abstract' ? trait : 'f32'].mixIntervals
+ );
+ return selectNCases('mix_scalar', trait === 'abstract' ? 50 : cases.length, cases);
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: [f32|f16]_vecN_scalar_[non_]const
+// abstract_vecN_non_const is empty and unused
+const vec_scalar_cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ const cases = FP[trait].generateVectorPairScalarToVectorComponentWiseCase(
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // mix has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ ...FP[trait !== 'abstract' ? trait : 'f32'].mixIntervals
+ );
+ return selectNCases('mix_vector', trait === 'abstract' ? 50 : cases.length, cases);
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('mix', {
+ ...scalar_cases,
+ ...vec_scalar_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.spec.js
index 4466ecd8a7..a118c24978 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/mix.spec.js
@@ -3,12 +3,12 @@
**/export const description = `
Execution tests for the 'mix' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn mix(e1: T, e2: T, e3: T) -> T
Returns the linear blend of e1 and e2 (e.g. e1*(1-e3)+e2*e3). Component-wise when T is a vector.
-T is AbstractFloat, f32, or f16
+T is abstract-float, f32, or f16
T2 is vecN<T>
@const fn mix(e1: T2, e2: T2, e3: T) -> T2
Returns the component-wise linear blend of e1 and e2, using scalar blending factor e3 for each component.
@@ -16,121 +16,81 @@ Same as mix(e1,e2,T2(e3)).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeVec, TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- sparseF32Range,
- sparseF16Range,
- sparseVectorF32Range,
- sparseVectorF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './mix.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_vecN_scalar_[non_]const
-const f32_vec_scalar_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorPairScalarToVectorComponentWiseCase(
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite',
- ...FP.f32.mixIntervals
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_scalar_[non_]const
-const f16_vec_scalar_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_scalar_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorPairScalarToVectorComponentWiseCase(
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite',
- ...FP.f16.mixIntervals
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('mix', {
- f32_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'finite',
- ...FP.f32.mixIntervals
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'unfiltered',
- ...FP.f32.mixIntervals
- );
- },
- ...f32_vec_scalar_cases,
- f16_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'finite',
- ...FP.f16.mixIntervals
- );
- },
- f16_non_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'unfiltered',
- ...FP.f16.mixIntervals
- );
- },
- ...f16_vec_scalar_cases
-});
-
g.test('abstract_float_matching').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract_float test with matching third param`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('mix'),
+ [Type.abstractFloat, Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('abstract_float_nonmatching_vec2').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract_float tests with two vec2<abstract_float> params and scalar third param`).
-params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_scalar_const');
+ await run(
+ t,
+ abstractFloatBuiltin('mix'),
+ [Type.vec(2, Type.abstractFloat), Type.vec(2, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(2, Type.abstractFloat),
+ t.params,
+ cases
+ );
+});
g.test('abstract_float_nonmatching_vec3').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract_float tests with two vec3<abstract_float> params and scalar third param`).
-params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_scalar_const');
+ await run(
+ t,
+ abstractFloatBuiltin('mix'),
+ [Type.vec(3, Type.abstractFloat), Type.vec(3, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(3, Type.abstractFloat),
+ t.params,
+ cases
+ );
+});
g.test('abstract_float_nonmatching_vec4').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract_float tests with two vec4<abstract_float> params and scalar third param`).
-params((u) => u.combine('inputSource', allInputSources)).
-unimplemented();
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_scalar_const');
+ await run(
+ t,
+ abstractFloatBuiltin('mix'),
+ [Type.vec(4, Type.abstractFloat), Type.vec(4, Type.abstractFloat), Type.abstractFloat],
+ Type.vec(4, Type.abstractFloat),
+ t.params,
+ cases
+ );
+});
g.test('f32_matching').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -140,7 +100,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('mix'), [TypeF32, TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('mix'), [Type.f32, Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f32_nonmatching_vec2').
@@ -151,14 +111,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec2_scalar_const' : 'f32_vec2_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32), TypeF32],
- TypeVec(2, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec2f, Type.vec2f, Type.f32], Type.vec2f, t.params, cases);
});
g.test('f32_nonmatching_vec3').
@@ -169,14 +122,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_scalar_const' : 'f32_vec3_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32), TypeF32],
- TypeVec(3, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec3f, Type.vec3f, Type.f32], Type.vec3f, t.params, cases);
});
g.test('f32_nonmatching_vec4').
@@ -187,14 +133,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_scalar_const' : 'f32_vec4_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32), TypeF32],
- TypeVec(4, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec4f, Type.vec4f, Type.f32], Type.vec4f, t.params, cases);
});
g.test('f16_matching').
@@ -208,7 +147,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('mix'), [TypeF16, TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('mix'), [Type.f16, Type.f16, Type.f16], Type.f16, t.params, cases);
});
g.test('f16_nonmatching_vec2').
@@ -222,14 +161,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_scalar_const' : 'f16_vec2_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16), TypeF16],
- TypeVec(2, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec2h, Type.vec2h, Type.f16], Type.vec2h, t.params, cases);
});
g.test('f16_nonmatching_vec3').
@@ -243,14 +175,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_scalar_const' : 'f16_vec3_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16), TypeF16],
- TypeVec(3, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec3h, Type.vec3h, Type.f16], Type.vec3h, t.params, cases);
});
g.test('f16_nonmatching_vec4').
@@ -264,12 +189,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_scalar_const' : 'f16_vec4_scalar_non_const'
);
- await run(
- t,
- builtin('mix'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16), TypeF16],
- TypeVec(4, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('mix'), [Type.vec4h, Type.vec4h, Type.f16], Type.vec4h, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.cache.js
new file mode 100644
index 0000000000..63f90ec346
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.cache.js
@@ -0,0 +1,75 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { toVector } from '../../../../../util/conversion.js';import { FP } from '../../../../../util/floating_point.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+/** @returns a fract Case for a scalar vector input */
+function makeScalarCaseFract(kind, n) {
+ const fp = FP[kind];
+ n = fp.quantize(n);
+ const result = fp.modfInterval(n).fract;
+
+ return { input: fp.scalarBuilder(n), expected: result };
+}
+
+/** @returns a whole Case for a scalar vector input */
+function makeScalarCaseWhole(kind, n) {
+ const fp = FP[kind];
+ n = fp.quantize(n);
+ const result = fp.modfInterval(n).whole;
+
+ return { input: fp.scalarBuilder(n), expected: result };
+}
+
+/** @returns a fract Case for a given vector input */
+function makeVectorCaseFract(kind, v) {
+ const fp = FP[kind];
+ v = v.map(fp.quantize);
+ const fs = v.map((e) => {
+ return fp.modfInterval(e).fract;
+ });
+
+ return { input: toVector(v, fp.scalarBuilder), expected: fs };
+}
+
+/** @returns a whole Case for a given vector input */
+function makeVectorCaseWhole(kind, v) {
+ const fp = FP[kind];
+ v = v.map(fp.quantize);
+ const ws = v.map((e) => {
+ return fp.modfInterval(e).whole;
+ });
+
+ return { input: toVector(v, fp.scalarBuilder), expected: ws };
+}
+
+// Cases: [f32|f16|abstract]_[fract|whole]
+const scalar_cases = ['f32', 'f16', 'abstract'].
+flatMap((kind) =>
+['whole', 'fract'].map((portion) => ({
+ [`${kind}_${portion}`]: () => {
+ const makeCase = portion === 'whole' ? makeScalarCaseWhole : makeScalarCaseFract;
+ return FP[kind].scalarRange().map(makeCase.bind(null, kind));
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: [f32|f16|abstract]_vecN_[fract|whole]
+const vec_cases = ['f32', 'f16', 'abstract'].
+flatMap((kind) =>
+[2, 3, 4].flatMap((n) =>
+['whole', 'fract'].map((portion) => ({
+ [`${kind}_vec${n}_${portion}`]: () => {
+ const makeCase = portion === 'whole' ? makeVectorCaseWhole : makeVectorCaseFract;
+ return FP[kind].vectorRange(n).map(makeCase.bind(null, kind));
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('modf', {
+ ...scalar_cases,
+ ...vec_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.spec.js
index 4e3f8c0a85..39a3c7f10d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/modf.spec.js
@@ -3,13 +3,13 @@
**/export const description = `
Execution tests for the 'modf' builtin function
-T is f32 or f16 or AbstractFloat
+T is f32 or f16 or Type.abstractFloat
@const fn modf(e:T) -> result_struct
Splits |e| into fractional and whole number parts.
The whole part is (|e| % 1.0), and the fractional part is |e| minus the whole part.
Returns the result_struct for the given type.
-S is f32 or f16 or AbstractFloat
+S is f32 or f16 or Type.abstractFloat
T is vecN<S>
@const fn modf(e:T) -> result_struct
Splits the components of |e| into fractional and whole number parts.
@@ -18,33 +18,18 @@ Returns the result_struct for the given type.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- toVector,
- TypeAbstractFloat,
- TypeF16,
- TypeF32,
- TypeVec } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- fullF16Range,
- fullF32Range,
- fullF64Range,
- vectorF16Range,
- vectorF32Range,
- vectorF64Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import {
abstractFloatShaderBuilder,
allInputSources,
basicExpressionBuilder,
-
onlyConstInputSource,
run } from
'../../expression.js';
+import { d } from './modf.cache.js';
+
export const g = makeTestGroup(GPUTest);
/** @returns an ShaderBuilder that evaluates modf and returns .whole from the result structure */
@@ -67,101 +52,6 @@ function abstractFractBuilder() {
return abstractFloatShaderBuilder((value) => `modf(${value}).fract`);
}
-/** @returns a fract Case for a scalar vector input */
-function makeScalarCaseFract(kind, n) {
- const fp = FP[kind];
- n = fp.quantize(n);
- const result = fp.modfInterval(n).fract;
-
- return { input: fp.scalarBuilder(n), expected: result };
-}
-
-/** @returns a whole Case for a scalar vector input */
-function makeScalarCaseWhole(kind, n) {
- const fp = FP[kind];
- n = fp.quantize(n);
- const result = fp.modfInterval(n).whole;
-
- return { input: fp.scalarBuilder(n), expected: result };
-}
-
-/** @returns a fract Case for a given vector input */
-function makeVectorCaseFract(kind, v) {
- const fp = FP[kind];
- v = v.map(fp.quantize);
- const fs = v.map((e) => {
- return fp.modfInterval(e).fract;
- });
-
- return { input: toVector(v, fp.scalarBuilder), expected: fs };
-}
-
-/** @returns a whole Case for a given vector input */
-function makeVectorCaseWhole(kind, v) {
- const fp = FP[kind];
- v = v.map(fp.quantize);
- const ws = v.map((e) => {
- return fp.modfInterval(e).whole;
- });
-
- return { input: toVector(v, fp.scalarBuilder), expected: ws };
-}
-
-const scalar_range = {
- f32: fullF32Range(),
- f16: fullF16Range(),
- abstract: fullF64Range()
-};
-
-const vector_range = {
- f32: {
- 2: vectorF32Range(2),
- 3: vectorF32Range(3),
- 4: vectorF32Range(4)
- },
- f16: {
- 2: vectorF16Range(2),
- 3: vectorF16Range(3),
- 4: vectorF16Range(4)
- },
- abstract: {
- 2: vectorF64Range(2),
- 3: vectorF64Range(3),
- 4: vectorF64Range(4)
- }
-};
-
-// Cases: [f32|f16|abstract]_[fract|whole]
-const scalar_cases = ['f32', 'f16', 'abstract'].
-flatMap((kind) =>
-['whole', 'fract'].map((portion) => ({
- [`${kind}_${portion}`]: () => {
- const makeCase = portion === 'whole' ? makeScalarCaseWhole : makeScalarCaseFract;
- return scalar_range[kind].map(makeCase.bind(null, kind));
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: [f32|f16|abstract]_vecN_[fract|whole]
-const vec_cases = ['f32', 'f16', 'abstract'].
-flatMap((kind) =>
-[2, 3, 4].flatMap((n) =>
-['whole', 'fract'].map((portion) => ({
- [`${kind}_vec${n}_${portion}`]: () => {
- const makeCase = portion === 'whole' ? makeVectorCaseWhole : makeVectorCaseFract;
- return vector_range[kind][n].map(makeCase.bind(null, kind));
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('modf', {
- ...scalar_cases,
- ...vec_cases
-});
-
g.test('f32_fract').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(
@@ -177,7 +67,7 @@ struct __modf_result_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_fract');
- await run(t, fractBuilder(), [TypeF32], TypeF32, t.params, cases);
+ await run(t, fractBuilder(), [Type.f32], Type.f32, t.params, cases);
});
g.test('f32_whole').
@@ -195,7 +85,7 @@ struct __modf_result_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_whole');
- await run(t, wholeBuilder(), [TypeF32], TypeF32, t.params, cases);
+ await run(t, wholeBuilder(), [Type.f32], Type.f32, t.params, cases);
});
g.test('f32_vec2_fract').
@@ -213,7 +103,7 @@ struct __modf_result_vec2_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec2_fract');
- await run(t, fractBuilder(), [TypeVec(2, TypeF32)], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec2f], Type.vec2f, t.params, cases);
});
g.test('f32_vec2_whole').
@@ -231,7 +121,7 @@ struct __modf_result_vec2_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec2_whole');
- await run(t, wholeBuilder(), [TypeVec(2, TypeF32)], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec2f], Type.vec2f, t.params, cases);
});
g.test('f32_vec3_fract').
@@ -249,7 +139,7 @@ struct __modf_result_vec3_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec3_fract');
- await run(t, fractBuilder(), [TypeVec(3, TypeF32)], TypeVec(3, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f32_vec3_whole').
@@ -267,7 +157,7 @@ struct __modf_result_vec3_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec3_whole');
- await run(t, wholeBuilder(), [TypeVec(3, TypeF32)], TypeVec(3, TypeF32), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f32_vec4_fract').
@@ -285,7 +175,7 @@ struct __modf_result_vec4_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec4_fract');
- await run(t, fractBuilder(), [TypeVec(4, TypeF32)], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec4f], Type.vec4f, t.params, cases);
});
g.test('f32_vec4_whole').
@@ -303,7 +193,7 @@ struct __modf_result_vec4_f32 {
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get('f32_vec4_whole');
- await run(t, wholeBuilder(), [TypeVec(4, TypeF32)], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec4f], Type.vec4f, t.params, cases);
});
g.test('f16_fract').
@@ -324,7 +214,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_fract');
- await run(t, fractBuilder(), [TypeF16], TypeF16, t.params, cases);
+ await run(t, fractBuilder(), [Type.f16], Type.f16, t.params, cases);
});
g.test('f16_whole').
@@ -345,7 +235,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_whole');
- await run(t, wholeBuilder(), [TypeF16], TypeF16, t.params, cases);
+ await run(t, wholeBuilder(), [Type.f16], Type.f16, t.params, cases);
});
g.test('f16_vec2_fract').
@@ -366,7 +256,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec2_fract');
- await run(t, fractBuilder(), [TypeVec(2, TypeF16)], TypeVec(2, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec2h], Type.vec2h, t.params, cases);
});
g.test('f16_vec2_whole').
@@ -387,7 +277,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec2_whole');
- await run(t, wholeBuilder(), [TypeVec(2, TypeF16)], TypeVec(2, TypeF16), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec2h], Type.vec2h, t.params, cases);
});
g.test('f16_vec3_fract').
@@ -408,7 +298,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec3_fract');
- await run(t, fractBuilder(), [TypeVec(3, TypeF16)], TypeVec(3, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec3h], Type.vec3h, t.params, cases);
});
g.test('f16_vec3_whole').
@@ -429,7 +319,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec3_whole');
- await run(t, wholeBuilder(), [TypeVec(3, TypeF16)], TypeVec(3, TypeF16), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec3h], Type.vec3h, t.params, cases);
});
g.test('f16_vec4_fract').
@@ -450,7 +340,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec4_fract');
- await run(t, fractBuilder(), [TypeVec(4, TypeF16)], TypeVec(4, TypeF16), t.params, cases);
+ await run(t, fractBuilder(), [Type.vec4h], Type.vec4h, t.params, cases);
});
g.test('f16_vec4_whole').
@@ -471,43 +361,43 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16_vec4_whole');
- await run(t, wholeBuilder(), [TypeVec(4, TypeF16)], TypeVec(4, TypeF16), t.params, cases);
+ await run(t, wholeBuilder(), [Type.vec4h], Type.vec4h, t.params, cases);
});
g.test('abstract_fract').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(
`
-T is AbstractFloat
+T is abstract-float
struct __modf_result_abstract {
- fract : AbstractFloat, // fractional part
- whole : AbstractFloat // whole part
+ fract : Type.abstractFloat, // fractional part
+ whole : Type.abstractFloat // whole part
}
`
).
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
const cases = await d.get('abstract_fract');
- await run(t, abstractFractBuilder(), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ await run(t, abstractFractBuilder(), [Type.abstractFloat], Type.abstractFloat, t.params, cases);
});
g.test('abstract_whole').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(
`
-T is AbstractFloat
+T is abstract-float
struct __modf_result_abstract {
- fract : AbstractFloat, // fractional part
- whole : AbstractFloat // whole part
+ fract : Type.abstractFloat, // fractional part
+ whole : Type.abstractFloat // whole part
}
`
).
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
const cases = await d.get('abstract_whole');
- await run(t, abstractWholeBuilder(), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ await run(t, abstractWholeBuilder(), [Type.abstractFloat], Type.abstractFloat, t.params, cases);
});
g.test('abstract_vec2_fract').
@@ -528,8 +418,8 @@ fn(async (t) => {
await run(
t,
abstractFractBuilder(),
- [TypeVec(2, TypeAbstractFloat)],
- TypeVec(2, TypeAbstractFloat),
+ [Type.vec(2, Type.abstractFloat)],
+ Type.vec(2, Type.abstractFloat),
t.params,
cases
);
@@ -553,8 +443,8 @@ fn(async (t) => {
await run(
t,
abstractWholeBuilder(),
- [TypeVec(2, TypeAbstractFloat)],
- TypeVec(2, TypeAbstractFloat),
+ [Type.vec(2, Type.abstractFloat)],
+ Type.vec(2, Type.abstractFloat),
t.params,
cases
);
@@ -578,8 +468,8 @@ fn(async (t) => {
await run(
t,
abstractFractBuilder(),
- [TypeVec(3, TypeAbstractFloat)],
- TypeVec(3, TypeAbstractFloat),
+ [Type.vec(3, Type.abstractFloat)],
+ Type.vec(3, Type.abstractFloat),
t.params,
cases
);
@@ -603,8 +493,8 @@ fn(async (t) => {
await run(
t,
abstractWholeBuilder(),
- [TypeVec(3, TypeAbstractFloat)],
- TypeVec(3, TypeAbstractFloat),
+ [Type.vec(3, Type.abstractFloat)],
+ Type.vec(3, Type.abstractFloat),
t.params,
cases
);
@@ -628,8 +518,8 @@ fn(async (t) => {
await run(
t,
abstractFractBuilder(),
- [TypeVec(4, TypeAbstractFloat)],
- TypeVec(4, TypeAbstractFloat),
+ [Type.vec(4, Type.abstractFloat)],
+ Type.vec(4, Type.abstractFloat),
t.params,
cases
);
@@ -653,8 +543,8 @@ fn(async (t) => {
await run(
t,
abstractWholeBuilder(),
- [TypeVec(4, TypeAbstractFloat)],
- TypeVec(4, TypeAbstractFloat),
+ [Type.vec(4, Type.abstractFloat)],
+ Type.vec(4, Type.abstractFloat),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.cache.js
new file mode 100644
index 0000000000..a1b8b07b9f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateVectorToVectorCases(
+ FP[trait].vectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ // normalize has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].normalizeInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('normalize', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.spec.js
index 3aa17a8ade..8bc4ea7ca8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/normalize.spec.js
@@ -3,63 +3,45 @@
**/export const description = `
Execution tests for the 'normalize' builtin function
-T is AbstractFloat, f32, or f16
+T is abstract-float, f32, or f16
@const fn normalize(e: vecN<T> ) -> vecN<T>
Returns a unit vector in the same direction as e.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { vectorF32Range, vectorF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './normalize.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorToVectorCases(
- vectorF32Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.normalizeInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorToVectorCases(
- vectorF16Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.normalizeInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(t, abstractFloatBuiltin('normalize'), [Type.vec2af], Type.vec2af, t.params, cases);
+});
-export const d = makeCaseCache('normalize', {
- ...f32_vec_cases,
- ...f16_vec_cases
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(t, abstractFloatBuiltin('normalize'), [Type.vec3af], Type.vec3af, t.params, cases);
});
-g.test('abstract_float').
-specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
-desc(`abstract float tests`).
-params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
-).
-unimplemented();
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(t, abstractFloatBuiltin('normalize'), [Type.vec4af], Type.vec4af, t.params, cases);
+});
g.test('f32_vec2').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -69,7 +51,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(2, TypeF32)], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec2f], Type.vec2f, t.params, cases);
});
g.test('f32_vec3').
@@ -80,7 +62,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_const' : 'f32_vec3_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(3, TypeF32)], TypeVec(3, TypeF32), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f32_vec4').
@@ -91,7 +73,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_const' : 'f32_vec4_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(4, TypeF32)], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec4f], Type.vec4f, t.params, cases);
});
g.test('f16_vec2').
@@ -105,7 +87,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_const' : 'f16_vec2_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(2, TypeF16)], TypeVec(2, TypeF16), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec2h], Type.vec2h, t.params, cases);
});
g.test('f16_vec3').
@@ -119,7 +101,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_const' : 'f16_vec3_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(3, TypeF16)], TypeVec(3, TypeF16), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec3h], Type.vec3h, t.params, cases);
});
g.test('f16_vec4').
@@ -133,5 +115,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_const' : 'f16_vec4_non_const'
);
- await run(t, builtin('normalize'), [TypeVec(4, TypeF16)], TypeVec(4, TypeF16), t.params, cases);
+ await run(t, builtin('normalize'), [Type.vec4h], Type.vec4h, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.cache.js
new file mode 100644
index 0000000000..ca204e03b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.cache.js
@@ -0,0 +1,55 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf, skipUndefined } from '../../../../../util/compare.js';import { f32, pack2x16float, u32, vec2 } from '../../../../../util/conversion.js';import { cartesianProduct, quantizeToF32, scalarF32Range } from '../../../../../util/math.js';
+
+import { makeCaseCache } from '../../case_cache.js';
+
+// pack2x16float has somewhat unusual behaviour, specifically around how it is
+// supposed to behave when values go OOB and when they are considered to have
+// gone OOB, so has its own bespoke implementation.
+
+/**
+ * @returns a Case for `pack2x16float`
+ * @param param0 first param for the case
+ * @param param1 second param for the case
+ * @param filter_undefined should inputs that cause an undefined expectation be
+ * filtered out, needed for const-eval
+ */
+function makeCase(param0, param1, filter_undefined) {
+ param0 = quantizeToF32(param0);
+ param1 = quantizeToF32(param1);
+
+ const results = pack2x16float(param0, param1);
+ if (filter_undefined && results.some((r) => r === undefined)) {
+ return undefined;
+ }
+
+ return {
+ input: [vec2(f32(param0), f32(param1))],
+ expected: anyOf(
+ ...results.map((r) => r === undefined ? skipUndefined(undefined) : skipUndefined(u32(r)))
+ )
+ };
+}
+
+/**
+ * @returns an array of Cases for `pack2x16float`
+ * @param param0s array of inputs to try for the first param
+ * @param param1s array of inputs to try for the second param
+ * @param filter_undefined should inputs that cause an undefined expectation be
+ * filtered out, needed for const-eval
+ */
+function generateCases(param0s, param1s, filter_undefined) {
+ return cartesianProduct(param0s, param1s).
+ map((e) => makeCase(e[0], e[1], filter_undefined)).
+ filter((c) => c !== undefined);
+}
+
+export const d = makeCaseCache('pack2x16float', {
+ f32_const: () => {
+ return generateCases(scalarF32Range(), scalarF32Range(), true);
+ },
+ f32_non_const: () => {
+ return generateCases(scalarF32Range(), scalarF32Range(), false);
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.spec.js
index 1d991dc4f0..e859b1898a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16float.spec.js
@@ -6,74 +6,14 @@ Component e[i] of the input is converted to a IEEE-754 binary16 value,
which is then placed in bits 16 × i through 16 × i + 15 of the result.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { anyOf, skipUndefined } from '../../../../../util/compare.js';
-import {
- f32,
- pack2x16float,
- TypeF32,
- TypeU32,
- TypeVec,
- u32,
- vec2 } from
-'../../../../../util/conversion.js';
-import { cartesianProduct, fullF32Range, quantizeToF32 } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './pack2x16float.cache.js';
export const g = makeTestGroup(GPUTest);
-// pack2x16float has somewhat unusual behaviour, specifically around how it is
-// supposed to behave when values go OOB and when they are considered to have
-// gone OOB, so has its own bespoke implementation.
-
-/**
- * @returns a Case for `pack2x16float`
- * @param param0 first param for the case
- * @param param1 second param for the case
- * @param filter_undefined should inputs that cause an undefined expectation be
- * filtered out, needed for const-eval
- */
-function makeCase(param0, param1, filter_undefined) {
- param0 = quantizeToF32(param0);
- param1 = quantizeToF32(param1);
-
- const results = pack2x16float(param0, param1);
- if (filter_undefined && results.some((r) => r === undefined)) {
- return undefined;
- }
-
- return {
- input: [vec2(f32(param0), f32(param1))],
- expected: anyOf(
- ...results.map((r) => r === undefined ? skipUndefined(undefined) : skipUndefined(u32(r)))
- )
- };
-}
-
-/**
- * @returns an array of Cases for `pack2x16float`
- * @param param0s array of inputs to try for the first param
- * @param param1s array of inputs to try for the second param
- * @param filter_undefined should inputs that cause an undefined expectation be
- * filtered out, needed for const-eval
- */
-function generateCases(param0s, param1s, filter_undefined) {
- return cartesianProduct(param0s, param1s).
- map((e) => makeCase(e[0], e[1], filter_undefined)).
- filter((c) => c !== undefined);
-}
-
-export const d = makeCaseCache('pack2x16float', {
- f32_const: () => {
- return generateCases(fullF32Range(), fullF32Range(), true);
- },
- f32_non_const: () => {
- return generateCases(fullF32Range(), fullF32Range(), false);
- }
-});
-
g.test('pack').
specURL('https://www.w3.org/TR/WGSL/#pack-builtin-functions').
desc(
@@ -84,5 +24,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('pack2x16float'), [TypeVec(2, TypeF32)], TypeU32, t.params, cases);
+ await run(t, builtin('pack2x16float'), [Type.vec2f], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16snorm.spec.js
index fb1ea8a5eb..e9f4b65582 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16snorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16snorm.spec.js
@@ -8,16 +8,9 @@ bits 16 × i through 16 × i + 15 of the result.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
import { kValue } from '../../../../../util/constants.js';
-import {
- f32,
- pack2x16snorm,
- TypeF32,
- TypeU32,
- TypeVec,
- u32,
- vec2 } from
-'../../../../../util/conversion.js';
+import { f32, pack2x16snorm, u32, vec2, Type } from '../../../../../util/conversion.js';
import { quantizeToF32, vectorF32Range } from '../../../../../util/math.js';
+
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -51,5 +44,5 @@ fn(async (t) => {
});
- await run(t, builtin('pack2x16snorm'), [TypeVec(2, TypeF32)], TypeU32, t.params, cases);
+ await run(t, builtin('pack2x16snorm'), [Type.vec2f], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16unorm.spec.js
index cce847339d..f98d606b8d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16unorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack2x16unorm.spec.js
@@ -8,16 +8,9 @@ bits 16 × i through 16 × i + 15 of the result.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
import { kValue } from '../../../../../util/constants.js';
-import {
- f32,
- pack2x16unorm,
- TypeF32,
- TypeU32,
- TypeVec,
- u32,
- vec2 } from
-'../../../../../util/conversion.js';
+import { f32, pack2x16unorm, u32, vec2, Type } from '../../../../../util/conversion.js';
import { quantizeToF32, vectorF32Range } from '../../../../../util/math.js';
+
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -51,5 +44,5 @@ fn(async (t) => {
});
- await run(t, builtin('pack2x16unorm'), [TypeVec(2, TypeF32)], TypeU32, t.params, cases);
+ await run(t, builtin('pack2x16unorm'), [Type.vec2f], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8snorm.spec.js
index 60dc348348..42db991e53 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8snorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8snorm.spec.js
@@ -8,17 +8,9 @@ bits 8 × i through 8 × i + 7 of the result.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
import { kValue } from '../../../../../util/constants.js';
-import {
- f32,
- pack4x8snorm,
-
- TypeF32,
- TypeU32,
- TypeVec,
- u32,
- vec4 } from
-'../../../../../util/conversion.js';
+import { f32, pack4x8snorm, u32, vec4, Type } from '../../../../../util/conversion.js';
import { quantizeToF32, vectorF32Range } from '../../../../../util/math.js';
+
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -36,6 +28,11 @@ params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const makeCase = (vals) => {
const vals_f32 = new Array(4);
+
+
+
+
+
for (const idx in vals) {
vals[idx] = quantizeToF32(vals[idx]);
vals_f32[idx] = f32(vals[idx]);
@@ -56,5 +53,5 @@ fn(async (t) => {
});
- await run(t, builtin('pack4x8snorm'), [TypeVec(4, TypeF32)], TypeU32, t.params, cases);
+ await run(t, builtin('pack4x8snorm'), [Type.vec4f], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8unorm.spec.js
index 5ef35db626..d0299f973c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8unorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4x8unorm.spec.js
@@ -8,17 +8,9 @@ bits 8 × i through 8 × i + 7 of the result.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
import { kValue } from '../../../../../util/constants.js';
-import {
- f32,
- pack4x8unorm,
-
- TypeF32,
- TypeU32,
- TypeVec,
- u32,
- vec4 } from
-'../../../../../util/conversion.js';
+import { f32, pack4x8unorm, u32, vec4, Type } from '../../../../../util/conversion.js';
import { quantizeToF32, vectorF32Range } from '../../../../../util/math.js';
+
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -36,6 +28,11 @@ params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const makeCase = (vals) => {
const vals_f32 = new Array(4);
+
+
+
+
+
for (const idx in vals) {
vals[idx] = quantizeToF32(vals[idx]);
vals_f32[idx] = f32(vals[idx]);
@@ -56,5 +53,5 @@ fn(async (t) => {
});
- await run(t, builtin('pack4x8unorm'), [TypeVec(4, TypeF32)], TypeU32, t.params, cases);
+ await run(t, builtin('pack4x8unorm'), [Type.vec4f], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8.spec.js
new file mode 100644
index 0000000000..4ced1a04b4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8.spec.js
@@ -0,0 +1,69 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'pack4xI8' builtin function
+
+@const fn pack4xI8(e: vec4<i32>) -> u32
+Pack the lower 8 bits of each component of e into a u32 value and drop all the unused bits.
+Component e[i] of the input is mapped to bits (8 * i) through (8 * (i + 7)) of the result.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, i32, Type } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#pack4xI8-builtin').
+desc(
+ `
+@const fn pack4xI8(e: vec4<i32>) -> u32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const pack4xI8 = (vals) => {
+ const result = new Uint32Array(1);
+ for (let i = 0; i < 4; ++i) {
+ result[0] |= (vals[i] & 0xff) << i * 8;
+ }
+ return result[0];
+ };
+
+ const testInputs = [
+ [0, 0, 0, 0],
+ [1, 2, 3, 4],
+ [-1, 2, 3, 4],
+ [1, -2, 3, 4],
+ [1, 2, -3, 4],
+ [1, 2, 3, -4],
+ [-1, -2, 3, 4],
+ [-1, 2, -3, 4],
+ [-1, 2, 3, -4],
+ [1, -2, -3, 4],
+ [1, -2, 3, -4],
+ [1, 2, -3, -4],
+ [-1, -2, -3, 4],
+ [-1, -2, 3, -4],
+ [-1, 2, -3, -4],
+ [1, -2, -3, -4],
+ [-1, -2, -3, -4],
+ [127, 128, -128, -129],
+ [128, 128, -128, -128],
+ [32767, 32768, -32768, -32769]];
+
+
+ const makeCase = (vals) => {
+ return { input: [toVector(vals, i32)], expected: u32(pack4xI8(vals)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('pack4xI8'), [Type.vec4i], Type.u32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp.spec.js
new file mode 100644
index 0000000000..e7ee33839e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xI8Clamp.spec.js
@@ -0,0 +1,73 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'pack4xI8Clamp' builtin function
+
+@const fn pack4xI8Clamp(e: vec4<i32>) -> u32
+Clamp each component of e in the range [-128, 127] and then pack the lower 8 bits of each component
+into a u32 value. Component e[i] of the input is mapped to bits (8 * i) through (8 * (i + 7)) of the
+result.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, i32, Type } from '../../../../../util/conversion.js';
+import { clamp } from '../../../../../util/math.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#pack4xI8Clamp-builtin').
+desc(
+ `
+@const fn pack4xI8Clamp(e: vec4<i32>) -> u32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const pack4xI8Clamp = (vals) => {
+ const result = new Uint32Array(1);
+ for (let i = 0; i < 4; ++i) {
+ const clampedValue = clamp(vals[i], { min: -128, max: 127 });
+ result[0] |= (clampedValue & 0xff) << i * 8;
+ }
+ return result[0];
+ };
+
+ const testInputs = [
+ [0, 0, 0, 0],
+ [1, 2, 3, 4],
+ [-1, 2, 3, 4],
+ [1, -2, 3, 4],
+ [1, 2, -3, 4],
+ [1, 2, 3, -4],
+ [-1, -2, 3, 4],
+ [-1, 2, -3, 4],
+ [-1, 2, 3, -4],
+ [1, -2, -3, 4],
+ [1, -2, 3, -4],
+ [1, 2, -3, -4],
+ [-1, -2, -3, 4],
+ [-1, -2, 3, -4],
+ [-1, 2, -3, -4],
+ [1, -2, -3, -4],
+ [-1, -2, -3, -4],
+ [126, 127, 128, 129],
+ [-130, -129, -128, -127],
+ [127, 128, -128, -129],
+ [32767, 32768, -32768, -32769]];
+
+
+ const makeCase = (vals) => {
+ return { input: [toVector(vals, i32)], expected: u32(pack4xI8Clamp(vals)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('pack4xI8Clamp'), [Type.vec4i], Type.u32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8.spec.js
new file mode 100644
index 0000000000..e5ace048f7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8.spec.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'pack4xU8' builtin function
+
+@const fn pack4xU8(e: vec4<u32>) -> u32
+Pack the lower 8 bits of each component of e into a u32 value and drop all the unused bits.
+Component e[i] of the input is mapped to bits (8 * i) through (8 * (i + 7)) of the result.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, Type } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#pack4xU8-builtin').
+desc(
+ `
+@const fn pack4xU8(e: vec4<u32>) -> u32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const pack4xU8 = (vals) => {
+ const result = new Uint32Array(1);
+ for (let i = 0; i < 4; ++i) {
+ result[0] |= (vals[i] & 0xff) << i * 8;
+ }
+ return result[0];
+ };
+
+ const testInputs = [
+ [0, 0, 0, 0],
+ [1, 2, 3, 4],
+ [255, 255, 255, 255],
+ [254, 255, 256, 257],
+ [65535, 65536, 255, 254]];
+
+
+ const makeCase = (vals) => {
+ return { input: [toVector(vals, u32)], expected: u32(pack4xU8(vals)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('pack4xU8'), [Type.vec4u], Type.u32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp.spec.js
new file mode 100644
index 0000000000..5a68795299
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pack4xU8Clamp.spec.js
@@ -0,0 +1,57 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'pack4xU8Clamp' builtin function
+
+@const fn pack4xU8Clamp(e: vec4<u32>) -> u32
+Clamp each component of e in the range of [0, 255] and then pack the lower 8 bits of each component
+into a u32 value. Component e[i] of the input is mapped to bits (8 * i) through (8 * (i + 7)) of the
+result.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, Type } from '../../../../../util/conversion.js';
+import { clamp } from '../../../../../util/math.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#pack4xU8Clamp-builtin').
+desc(
+ `
+@const fn pack4xU8Clamp(e: vec4<u32>) -> u32
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const pack4xU8Clamp = (vals) => {
+ const result = new Uint32Array(1);
+ for (let i = 0; i < 4; ++i) {
+ const clampedValue = clamp(vals[i], { min: 0, max: 255 });
+ result[0] |= clampedValue << i * 8;
+ }
+ return result[0];
+ };
+
+ const testInputs = [
+ [0, 0, 0, 0],
+ [1, 2, 3, 4],
+ [255, 255, 255, 255],
+ [254, 255, 256, 257],
+ [65535, 65536, 255, 254]];
+
+
+ const makeCase = (vals) => {
+ return { input: [toVector(vals, u32)], expected: u32(pack4xU8Clamp(vals)) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('pack4xU8Clamp'), [Type.vec4u], Type.u32, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.cache.js
new file mode 100644
index 0000000000..944c406bd8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarPairToIntervalCases(
+ FP[trait].scalarRange(),
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // pow has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].powInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('pow', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.spec.js
index 45703c3df9..562c75de99 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/pow.spec.js
@@ -3,64 +3,39 @@
**/export const description = `
Execution tests for the 'pow' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn pow(e1: T ,e2: T ) -> T
Returns e1 raised to the power e2. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './pow.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('pow', {
- f32_const: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'finite',
- FP.f32.powInterval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarPairToIntervalCases(
- fullF32Range(),
- fullF32Range(),
- 'unfiltered',
- FP.f32.powInterval
- );
- },
- f16_const: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'finite',
- FP.f16.powInterval
- );
- },
- f16_non_const: () => {
- return FP.f16.generateScalarPairToIntervalCases(
- fullF16Range(),
- fullF16Range(),
- 'unfiltered',
- FP.f16.powInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('pow'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -70,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('pow'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('pow'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -84,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('pow'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('pow'), [Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.cache.js
new file mode 100644
index 0000000000..1613f45143
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.cache.js
@@ -0,0 +1,41 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../../util/constants.js';import { FP } from '../../../../../util/floating_point.js';import { scalarF16Range, scalarF32Range } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('quantizeToF16', {
+ f32_const: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ [
+ kValue.f16.negative.min,
+ kValue.f16.negative.max,
+ kValue.f16.negative.subnormal.min,
+ kValue.f16.negative.subnormal.max,
+ kValue.f16.positive.subnormal.min,
+ kValue.f16.positive.subnormal.max,
+ kValue.f16.positive.min,
+ kValue.f16.positive.max,
+ ...scalarF16Range()],
+
+ 'finite',
+ FP.f32.quantizeToF16Interval
+ );
+ },
+ f32_non_const: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ [
+ kValue.f16.negative.min,
+ kValue.f16.negative.max,
+ kValue.f16.negative.subnormal.min,
+ kValue.f16.negative.subnormal.max,
+ kValue.f16.positive.subnormal.min,
+ kValue.f16.positive.subnormal.max,
+ kValue.f16.positive.min,
+ kValue.f16.positive.max,
+ ...scalarF32Range()],
+
+ 'unfiltered',
+ FP.f32.quantizeToF16Interval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.spec.js
index 53ccd41cfb..b872d0923f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/quantizeToF16.spec.js
@@ -10,54 +10,14 @@ binary16 value, and then converted back to a IEEE 754 binary32 value.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { kValue } from '../../../../../util/constants.js';
-import { TypeF32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF16Range, fullF32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './quantizeToF16.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('quantizeToF16', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- kValue.f16.negative.min,
- kValue.f16.negative.max,
- kValue.f16.negative.subnormal.min,
- kValue.f16.negative.subnormal.max,
- kValue.f16.positive.subnormal.min,
- kValue.f16.positive.subnormal.max,
- kValue.f16.positive.min,
- kValue.f16.positive.max,
- ...fullF16Range()],
-
- 'finite',
- FP.f32.quantizeToF16Interval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- kValue.f16.negative.min,
- kValue.f16.negative.max,
- kValue.f16.negative.subnormal.min,
- kValue.f16.negative.subnormal.max,
- kValue.f16.positive.subnormal.min,
- kValue.f16.positive.subnormal.max,
- kValue.f16.positive.min,
- kValue.f16.positive.max,
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.quantizeToF16Interval
- );
- }
-});
-
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`f32 tests`).
@@ -66,5 +26,5 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('quantizeToF16'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('quantizeToF16'), [Type.f32], Type.f32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.cache.js
new file mode 100644
index 0000000000..d3770a173c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ trait !== 'abstract' ? 'unfiltered' : 'finite',
+ // radians has an inherited accuracy, so abstract is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].radiansInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('radians', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.spec.js
index 72aea0ee9f..46e8dbb09b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/radians.spec.js
@@ -3,47 +3,21 @@
**/export const description = `
Execution tests for the 'radians' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn radians(e1: T ) -> T
Converts degrees to radians, approximating e1 * π / 180.
Component-wise when T is a vector
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF16Range, fullF32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './radians.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('radians', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- fullF32Range(),
- 'unfiltered',
- FP.f32.radiansInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- fullF16Range(),
- 'unfiltered',
- FP.f16.radiansInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF16Range(),
- 'unfiltered',
- FP.abstract.radiansInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -56,9 +30,9 @@ fn(async (t) => {
const cases = await d.get('abstract');
await run(
t,
- abstractBuiltin('radians'),
- [TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('radians'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -72,7 +46,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('radians'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('radians'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -86,5 +60,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('radians'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('radians'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.cache.js
new file mode 100644
index 0000000000..359e731bf2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.cache.js
@@ -0,0 +1,26 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateVectorPairToVectorCases(
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ nonConst ? 'unfiltered' : 'finite',
+ // reflect has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].reflectInterval
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('reflect', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.spec.js
index 0c3933ce2e..4d1b805e1f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reflect.spec.js
@@ -3,64 +3,67 @@
**/export const description = `
Execution tests for the 'reflect' builtin function
-T is vecN<AbstractFloat>, vecN<f32>, or vecN<f16>
+T is vecN<Type.abstractFloat>, vecN<f32>, or vecN<f16>
@const fn reflect(e1: T, e2: T ) -> T
For the incident vector e1 and surface orientation e2, returns the reflection
direction e1-2*dot(e2,e1)*e2.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseVectorF32Range, sparseVectorF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './reflect.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateVectorPairToVectorCases(
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.reflectInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateVectorPairToVectorCases(
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.reflectInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('reflect'),
+ [Type.vec2af, Type.vec2af],
+ Type.vec2af,
+ t.params,
+ cases
+ );
+});
-export const d = makeCaseCache('reflect', {
- ...f32_vec_cases,
- ...f16_vec_cases
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(
+ t,
+ abstractFloatBuiltin('reflect'),
+ [Type.vec3af, Type.vec3af],
+ Type.vec3af,
+ t.params,
+ cases
+ );
});
-g.test('abstract_float').
-specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
-desc(`abstract float tests`).
-params((u) => u.combine('inputSource', allInputSources).combine('vectorize', [2, 3, 4])).
-unimplemented();
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('reflect'),
+ [Type.vec4af, Type.vec4af],
+ Type.vec4af,
+ t.params,
+ cases
+ );
+});
g.test('f32_vec2').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -70,14 +73,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec2_const' : 'f32_vec2_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32)],
- TypeVec(2, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec2f, Type.vec2f], Type.vec2f, t.params, cases);
});
g.test('f32_vec3').
@@ -88,14 +84,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec3_const' : 'f32_vec3_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32)],
- TypeVec(3, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec3f, Type.vec3f], Type.vec3f, t.params, cases);
});
g.test('f32_vec4').
@@ -106,14 +95,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f32_vec4_const' : 'f32_vec4_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32)],
- TypeVec(4, TypeF32),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec4f, Type.vec4f], Type.vec4f, t.params, cases);
});
g.test('f16_vec2').
@@ -127,14 +109,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec2_const' : 'f16_vec2_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16)],
- TypeVec(2, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec2h, Type.vec2h], Type.vec2h, t.params, cases);
});
g.test('f16_vec3').
@@ -148,14 +123,7 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec3_const' : 'f16_vec3_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16)],
- TypeVec(3, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec3h, Type.vec3h], Type.vec3h, t.params, cases);
});
g.test('f16_vec4').
@@ -169,12 +137,5 @@ fn(async (t) => {
const cases = await d.get(
t.params.inputSource === 'const' ? 'f16_vec4_const' : 'f16_vec4_non_const'
);
- await run(
- t,
- builtin('reflect'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16)],
- TypeVec(4, TypeF16),
- t.params,
- cases
- );
+ await run(t, builtin('reflect'), [Type.vec4h, Type.vec4h], Type.vec4h, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.cache.js
new file mode 100644
index 0000000000..4f2ce5e2b4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.cache.js
@@ -0,0 +1,116 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { toVector } from '../../../../../util/conversion.js';import { FP } from '../../../../../util/floating_point.js';
+import { selectNCases } from '../../case.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+
+// Using a bespoke implementation of make*Case and generate*Cases here
+// since refract is the only builtin with the API signature
+// (vec, vec, scalar) -> vec
+
+/**
+ * @returns a Case for `refract`
+ * @param argumentKind what kind of floating point numbers being operated on
+ * @param parameterKind what kind of floating point operation should be performed,
+ * should be the same as argumentKind, except for abstract
+ * @param i the `i` param for the case
+ * @param s the `s` param for the case
+ * @param r the `r` param for the case
+ * @param check what interval checking to apply
+ * */
+function makeCase(
+argumentKind,
+parameterKind,
+i,
+s,
+r,
+check)
+{
+ const fp = FP[argumentKind];
+ i = i.map(fp.quantize);
+ s = s.map(fp.quantize);
+ r = fp.quantize(r);
+
+ const vectors = FP[parameterKind].refractInterval(i, s, r);
+ if (check === 'finite' && vectors.some((e) => !e.isFinite())) {
+ return undefined;
+ }
+
+ return {
+ input: [toVector(i, fp.scalarBuilder), toVector(s, fp.scalarBuilder), fp.scalarBuilder(r)],
+ expected: vectors
+ };
+}
+
+/**
+ * @returns an array of Cases for `refract`
+ * @param argumentKind what kind of floating point numbers being operated on
+ * @param parameterKind what kind of floating point operation should be performed,
+ * should be the same as argumentKind, except for abstract
+ * @param param_is array of inputs to try for the `i` param
+ * @param param_ss array of inputs to try for the `s` param
+ * @param param_rs array of inputs to try for the `r` param
+ * @param check what interval checking to apply
+ */
+function generateCases(
+argumentKind,
+parameterKind,
+param_is,
+param_ss,
+param_rs,
+check)
+{
+ // Cannot use `cartesianProduct` here due to heterogeneous param types
+ return param_is.
+ flatMap((i) => {
+ return param_ss.flatMap((s) => {
+ return param_rs.map((r) => {
+ return makeCase(argumentKind, parameterKind, i, s, r, check);
+ });
+ });
+ }).
+ filter((c) => c !== undefined);
+}
+
+// Cases: [f32|f16|abstract]_vecN_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((dim) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_vec${dim}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ if (trait !== 'abstract') {
+ return generateCases(
+ trait,
+ trait,
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite'
+ );
+ } else {
+ // Restricting the number of cases, because a vector of abstract floats needs to be returned, which is costly.
+ return selectNCases(
+ 'faceForward',
+ 20,
+ generateCases(
+ trait,
+ // refract has an inherited accuracy, so is only expected to be as accurate as f32
+ 'f32',
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseVectorRange(dim),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite'
+ )
+ );
+ }
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('refract', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.spec.js
index 53ccfb4fed..a2ffec4a1a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/refract.spec.js
@@ -4,136 +4,69 @@
Execution tests for the 'refract' builtin function
T is vecN<I>
-I is AbstractFloat, f32, or f16
+I is abstract-float, f32, or f16
@const fn refract(e1: T ,e2: T ,e3: I ) -> T
For the incident vector e1 and surface normal e2, and the ratio of indices of
refraction e3, let k = 1.0 -e3*e3* (1.0 - dot(e2,e1) * dot(e2,e1)).
If k < 0.0, returns the refraction vector 0.0, otherwise return the refraction
vector e3*e1- (e3* dot(e2,e1) + sqrt(k)) *e2.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-
import { GPUTest } from '../../../../../gpu_test.js';
-import { toVector, TypeF32, TypeF16, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- sparseVectorF32Range,
- sparseVectorF16Range,
- sparseF32Range,
- sparseF16Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './refract.cache.js';
export const g = makeTestGroup(GPUTest);
-// Using a bespoke implementation of make*Case and generate*Cases here
-// since refract is the only builtin with the API signature
-// (vec, vec, scalar) -> vec
-
-/**
- * @returns a Case for `refract`
- * @param kind what type of floating point numbers to operate on
- * @param i the `i` param for the case
- * @param s the `s` param for the case
- * @param r the `r` param for the case
- * @param check what interval checking to apply
- * */
-function makeCase(
-kind,
-i,
-s,
-r,
-check)
-{
- const fp = FP[kind];
- i = i.map(fp.quantize);
- s = s.map(fp.quantize);
- r = fp.quantize(r);
-
- const vectors = fp.refractInterval(i, s, r);
- if (check === 'finite' && vectors.some((e) => !e.isFinite())) {
- return undefined;
- }
-
- return {
- input: [toVector(i, fp.scalarBuilder), toVector(s, fp.scalarBuilder), fp.scalarBuilder(r)],
- expected: fp.refractInterval(i, s, r)
- };
-}
-
-/**
- * @returns an array of Cases for `refract`
- * @param kind what type of floating point numbers to operate on
- * @param param_is array of inputs to try for the `i` param
- * @param param_ss array of inputs to try for the `s` param
- * @param param_rs array of inputs to try for the `r` param
- * @param check what interval checking to apply
- */
-function generateCases(
-kind,
-param_is,
-param_ss,
-param_rs,
-check)
-{
- // Cannot use `cartesianProduct` here due to heterogeneous param types
- return param_is.
- flatMap((i) => {
- return param_ss.flatMap((s) => {
- return param_rs.map((r) => {
- return makeCase(kind, i, s, r, check);
- });
- });
- }).
- filter((c) => c !== undefined);
-}
-
-// Cases: f32_vecN_[non_]const
-const f32_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f32_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return generateCases(
- 'f32',
- sparseVectorF32Range(n),
- sparseVectorF32Range(n),
- sparseF32Range(),
- nonConst ? 'unfiltered' : 'finite'
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_vecN_[non_]const
-const f16_vec_cases = [2, 3, 4].
-flatMap((n) =>
-[true, false].map((nonConst) => ({
- [`f16_vec${n}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return generateCases(
- 'f16',
- sparseVectorF16Range(n),
- sparseVectorF16Range(n),
- sparseF16Range(),
- nonConst ? 'unfiltered' : 'finite'
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
+g.test('abstract_float_vec2').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec2s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec2_const');
+ await run(
+ t,
+ abstractFloatBuiltin('refract'),
+ [Type.vec2af, Type.vec2af, Type.abstractFloat],
+ Type.vec2af,
+ t.params,
+ cases
+ );
+});
-export const d = makeCaseCache('refract', {
- ...f32_vec_cases,
- ...f16_vec_cases
+g.test('abstract_float_vec3').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec3s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec3_const');
+ await run(
+ t,
+ abstractFloatBuiltin('refract'),
+ [Type.vec3af, Type.vec3af, Type.abstractFloat],
+ Type.vec3af,
+ t.params,
+ cases
+ );
});
-g.test('abstract_float').
-specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
-desc(`abstract float tests`).
-params((u) => u.combine('inputSource', allInputSources).combine('vectorize', [2, 3, 4])).
-unimplemented();
+g.test('abstract_float_vec4').
+specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
+desc(`abstract float tests using vec4s`).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract_vec4_const');
+ await run(
+ t,
+ abstractFloatBuiltin('refract'),
+ [Type.vec4af, Type.vec4af, Type.abstractFloat],
+ Type.vec4af,
+ t.params,
+ cases
+ );
+});
g.test('f32_vec2').
specURL('https://www.w3.org/TR/WGSL/#numeric-builtin-functions').
@@ -146,8 +79,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(2, TypeF32), TypeVec(2, TypeF32), TypeF32],
- TypeVec(2, TypeF32),
+ [Type.vec2f, Type.vec2f, Type.f32],
+ Type.vec2f,
t.params,
cases
);
@@ -164,8 +97,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(3, TypeF32), TypeVec(3, TypeF32), TypeF32],
- TypeVec(3, TypeF32),
+ [Type.vec3f, Type.vec3f, Type.f32],
+ Type.vec3f,
t.params,
cases
);
@@ -182,8 +115,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(4, TypeF32), TypeVec(4, TypeF32), TypeF32],
- TypeVec(4, TypeF32),
+ [Type.vec4f, Type.vec4f, Type.f32],
+ Type.vec4f,
t.params,
cases
);
@@ -203,8 +136,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(2, TypeF16), TypeVec(2, TypeF16), TypeF16],
- TypeVec(2, TypeF16),
+ [Type.vec2h, Type.vec2h, Type.f16],
+ Type.vec2h,
t.params,
cases
);
@@ -224,8 +157,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(3, TypeF16), TypeVec(3, TypeF16), TypeF16],
- TypeVec(3, TypeF16),
+ [Type.vec3h, Type.vec3h, Type.f16],
+ Type.vec3h,
t.params,
cases
);
@@ -245,8 +178,8 @@ fn(async (t) => {
await run(
t,
builtin('refract'),
- [TypeVec(4, TypeF16), TypeVec(4, TypeF16), TypeF16],
- TypeVec(4, TypeF16),
+ [Type.vec4h, Type.vec4h, Type.f16],
+ Type.vec4h,
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reverseBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reverseBits.spec.js
index fc99867f10..9716dfd108 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reverseBits.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/reverseBits.spec.js
@@ -10,7 +10,7 @@ Reverses the bits in e: The bit at position k of the result equals the bit at po
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeU32, u32Bits, TypeI32, i32Bits } from '../../../../../util/conversion.js';
+import { u32Bits, i32Bits, Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
@@ -26,7 +26,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('reverseBits'), [TypeU32], TypeU32, cfg, [
+ await run(t, builtin('reverseBits'), [Type.u32], Type.u32, cfg, [
// Zero
{ input: u32Bits(0b00000000000000000000000000000000), expected: u32Bits(0b00000000000000000000000000000000) },
@@ -142,7 +142,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
fn(async (t) => {
const cfg = t.params;
- await run(t, builtin('reverseBits'), [TypeI32], TypeI32, cfg, [
+ await run(t, builtin('reverseBits'), [Type.i32], Type.i32, cfg, [
// Zero
{ input: i32Bits(0b00000000000000000000000000000000), expected: i32Bits(0b00000000000000000000000000000000) },
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.cache.js
new file mode 100644
index 0000000000..12184af16a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.cache.js
@@ -0,0 +1,24 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// See https://github.com/gpuweb/cts/issues/2766 for details
+const kIssue2766Value = {
+ abstract: 0x8000_0000_0000_0000,
+ f32: 0x8000_0000,
+ f16: 0x8000
+};
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [kIssue2766Value[trait], ...FP[trait].scalarRange()],
+ 'unfiltered',
+ FP[trait].roundInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('round', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.spec.js
index d5e6eec3aa..b60399773e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/round.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Execution tests for the 'round' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn round(e: T) -> T
Result is the integer k nearest to e, as a floating point value.
@@ -12,46 +12,33 @@ and k+1 when k is odd.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './round.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('round', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- 0x80000000, // https://github.com/gpuweb/cts/issues/2766,
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.roundInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- 0x8000, // https://github.com/gpuweb/cts/issues/2766
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.roundInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('round'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -61,7 +48,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('round'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('round'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -75,5 +62,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('round'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('round'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.cache.js
new file mode 100644
index 0000000000..5552284c2e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [...linearRange(0.0, 1.0, 20), ...FP[trait].scalarRange()],
+ 'unfiltered',
+ FP[trait].saturateInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('saturate', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.spec.js
index 1869d9c058..e18f41ae65 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/saturate.spec.js
@@ -3,58 +3,20 @@
**/export const description = `
Execution tests for the 'saturate' builtin function
-S is AbstractFloat, f32, or f16
+S is abstract-float, f32, or f16
T is S or vecN<S>
@const fn saturate(e: T) -> T
Returns clamp(e, 0.0, 1.0). Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF16Range, fullF32Range, fullF64Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './saturate.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('saturate', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // Non-clamped values
- ...linearRange(0.0, 1.0, 20),
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.saturateInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // Non-clamped values
- ...linearRange(0.0, 1.0, 20),
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.saturateInterval
- );
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- [
- // Non-clamped values
- ...linearRange(0.0, 1.0, 20),
- ...fullF64Range()],
-
- 'unfiltered',
- FP.abstract.saturateInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -67,9 +29,9 @@ fn(async (t) => {
const cases = await d.get('abstract');
await run(
t,
- abstractBuiltin('saturate'),
- [TypeAbstractFloat],
- TypeAbstractFloat,
+ abstractFloatBuiltin('saturate'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
t.params,
cases
);
@@ -82,7 +44,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('saturate'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('saturate'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -96,5 +58,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('saturate'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('saturate'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/select.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/select.spec.js
index 8248e04dc0..c08f4d5f1b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/select.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/select.spec.js
@@ -14,12 +14,6 @@ Component-wise selection. Result component i is evaluated as select(f[i],t[i],co
import { GPUTest } from '../../../../../gpu_test.js';
import {
- TypeVec,
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
f32,
f16,
i32,
@@ -31,11 +25,14 @@ import {
vec3,
vec4,
abstractFloat,
- TypeAbstractFloat } from
+ abstractInt,
+
+ Type } from
'../../../../../util/conversion.js';
+
import { run, allInputSources } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
export const g = makeTestGroup(GPUTest);
@@ -47,28 +44,43 @@ function makeBool(n) {
const dataType = {
b: {
- type: TypeBool,
- constructor: makeBool
+ type: Type.bool,
+ scalar_builder: makeBool,
+ shader_builder: builtin('select')
},
af: {
- type: TypeAbstractFloat,
- constructor: abstractFloat
+ type: Type.abstractFloat,
+ scalar_builder: abstractFloat,
+ shader_builder: abstractFloatBuiltin('select')
},
f: {
- type: TypeF32,
- constructor: f32
+ type: Type.f32,
+ scalar_builder: f32,
+ shader_builder: builtin('select')
},
h: {
- type: TypeF16,
- constructor: f16
+ type: Type.f16,
+ scalar_builder: f16,
+ shader_builder: builtin('select')
+ },
+ ai: {
+ type: Type.abstractInt,
+ // Only ints are used in the tests below, so the conversion to bigint will
+ // be safe. If a non-int is passed in this will Error.
+ scalar_builder: (v) => {
+ return abstractInt(BigInt(v));
+ },
+ shader_builder: abstractIntBuiltin('select')
},
i: {
- type: TypeI32,
- constructor: i32
+ type: Type.i32,
+ scalar_builder: i32,
+ shader_builder: builtin('select')
},
u: {
- type: TypeU32,
- constructor: u32
+ type: Type.u32,
+ scalar_builder: u32,
+ shader_builder: builtin('select')
}
};
@@ -78,7 +90,7 @@ desc(`scalar tests`).
params((u) =>
u.
combine('inputSource', allInputSources).
-combine('component', ['b', 'af', 'f', 'h', 'i', 'u']).
+combine('component', ['b', 'af', 'f', 'h', 'ai', 'i', 'u']).
combine('overload', ['scalar', 'vec2', 'vec3', 'vec4'])
).
beforeAllSubcases((t) => {
@@ -86,10 +98,11 @@ beforeAllSubcases((t) => {
t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
}
t.skipIf(t.params.component === 'af' && t.params.inputSource !== 'const');
+ t.skipIf(t.params.component === 'ai' && t.params.inputSource !== 'const');
}).
fn(async (t) => {
const componentType = dataType[t.params.component].type;
- const cons = dataType[t.params.component].constructor;
+ const scalar_builder = dataType[t.params.component].scalar_builder;
// Create the scalar values that will be selected from, either as scalars
// or vectors.
@@ -97,39 +110,40 @@ fn(async (t) => {
// Each boolean will select between c[k] and c[k+4]. Those values must
// always compare as different. The tricky case is boolean, where the parity
// has to be different, i.e. c[k]-c[k+4] must be odd.
- const c = [0, 1, 2, 3, 5, 6, 7, 8].map((i) => cons(i));
+ const scalars = [0, 1, 2, 3, 5, 6, 7, 8].map((i) => scalar_builder(i));
+
// Now form vectors that will have different components from each other.
- const v2a = vec2(c[0], c[1]);
- const v2b = vec2(c[4], c[5]);
- const v3a = vec3(c[0], c[1], c[2]);
- const v3b = vec3(c[4], c[5], c[6]);
- const v4a = vec4(c[0], c[1], c[2], c[3]);
- const v4b = vec4(c[4], c[5], c[6], c[7]);
+ const v2a = vec2(scalars[0], scalars[1]);
+ const v2b = vec2(scalars[4], scalars[5]);
+ const v3a = vec3(scalars[0], scalars[1], scalars[2]);
+ const v3b = vec3(scalars[4], scalars[5], scalars[6]);
+ const v4a = vec4(scalars[0], scalars[1], scalars[2], scalars[3]);
+ const v4b = vec4(scalars[4], scalars[5], scalars[6], scalars[7]);
const overloads = {
scalar: {
type: componentType,
cases: [
- { input: [c[0], c[1], False], expected: c[0] },
- { input: [c[0], c[1], True], expected: c[1] }]
+ { input: [scalars[0], scalars[1], False], expected: scalars[0] },
+ { input: [scalars[0], scalars[1], True], expected: scalars[1] }]
},
vec2: {
- type: TypeVec(2, componentType),
+ type: Type.vec(2, componentType),
cases: [
{ input: [v2a, v2b, False], expected: v2a },
{ input: [v2a, v2b, True], expected: v2b }]
},
vec3: {
- type: TypeVec(3, componentType),
+ type: Type.vec(3, componentType),
cases: [
{ input: [v3a, v3b, False], expected: v3a },
{ input: [v3a, v3b, True], expected: v3b }]
},
vec4: {
- type: TypeVec(4, componentType),
+ type: Type.vec(4, componentType),
cases: [
{ input: [v4a, v4b, False], expected: v4a },
{ input: [v4a, v4b, True], expected: v4b }]
@@ -140,8 +154,8 @@ fn(async (t) => {
await run(
t,
- t.params.component === 'af' ? abstractBuiltin('select') : builtin('select'),
- [overload.type, overload.type, TypeBool],
+ dataType[t.params.component].shader_builder,
+ [overload.type, overload.type, Type.bool],
overload.type,
t.params,
overload.cases
@@ -154,7 +168,7 @@ desc(`vector tests`).
params((u) =>
u.
combine('inputSource', allInputSources).
-combine('component', ['b', 'af', 'f', 'h', 'i', 'u']).
+combine('component', ['b', 'af', 'f', 'h', 'ai', 'i', 'u']).
combine('overload', ['vec2', 'vec3', 'vec4'])
).
beforeAllSubcases((t) => {
@@ -162,17 +176,18 @@ beforeAllSubcases((t) => {
t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
}
t.skipIf(t.params.component === 'af' && t.params.inputSource !== 'const');
+ t.skipIf(t.params.component === 'ai' && t.params.inputSource !== 'const');
}).
fn(async (t) => {
const componentType = dataType[t.params.component].type;
- const cons = dataType[t.params.component].constructor;
+ const scalar_builder = dataType[t.params.component].scalar_builder;
// Create the scalar values that will be selected from.
//
// Each boolean will select between c[k] and c[k+4]. Those values must
// always compare as different. The tricky case is boolean, where the parity
// has to be different, i.e. c[k]-c[k+4] must be odd.
- const c = [0, 1, 2, 3, 5, 6, 7, 8].map((i) => cons(i));
+ const scalars = [0, 1, 2, 3, 5, 6, 7, 8].map((i) => scalar_builder(i));
const T = True;
const F = False;
@@ -180,11 +195,11 @@ fn(async (t) => {
switch (t.params.overload) {
case 'vec2':{
- const a = vec2(c[0], c[1]);
- const b = vec2(c[4], c[5]);
+ const a = vec2(scalars[0], scalars[1]);
+ const b = vec2(scalars[4], scalars[5]);
tests = {
- dataType: TypeVec(2, componentType),
- boolType: TypeVec(2, TypeBool),
+ dataType: Type.vec(2, componentType),
+ boolType: Type.vec(2, Type.bool),
cases: [
{ input: [a, b, vec2(F, F)], expected: vec2(a.x, a.y) },
{ input: [a, b, vec2(F, T)], expected: vec2(a.x, b.y) },
@@ -195,11 +210,11 @@ fn(async (t) => {
break;
}
case 'vec3':{
- const a = vec3(c[0], c[1], c[2]);
- const b = vec3(c[4], c[5], c[6]);
+ const a = vec3(scalars[0], scalars[1], scalars[2]);
+ const b = vec3(scalars[4], scalars[5], scalars[6]);
tests = {
- dataType: TypeVec(3, componentType),
- boolType: TypeVec(3, TypeBool),
+ dataType: Type.vec(3, componentType),
+ boolType: Type.vec(3, Type.bool),
cases: [
{ input: [a, b, vec3(F, F, F)], expected: vec3(a.x, a.y, a.z) },
{ input: [a, b, vec3(F, F, T)], expected: vec3(a.x, a.y, b.z) },
@@ -214,11 +229,11 @@ fn(async (t) => {
break;
}
case 'vec4':{
- const a = vec4(c[0], c[1], c[2], c[3]);
- const b = vec4(c[4], c[5], c[6], c[7]);
+ const a = vec4(scalars[0], scalars[1], scalars[2], scalars[3]);
+ const b = vec4(scalars[4], scalars[5], scalars[6], scalars[7]);
tests = {
- dataType: TypeVec(4, componentType),
- boolType: TypeVec(4, TypeBool),
+ dataType: Type.vec(4, componentType),
+ boolType: Type.vec(4, Type.bool),
cases: [
{ input: [a, b, vec4(F, F, F, F)], expected: vec4(a.x, a.y, a.z, a.w) },
{ input: [a, b, vec4(F, F, F, T)], expected: vec4(a.x, a.y, a.z, b.w) },
@@ -244,7 +259,7 @@ fn(async (t) => {
await run(
t,
- t.params.component === 'af' ? abstractBuiltin('select') : builtin('select'),
+ dataType[t.params.component].shader_builder,
[tests.dataType, tests.dataType, tests.boolType],
tests.dataType,
t.params,
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.cache.js
new file mode 100644
index 0000000000..839f97d59a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.cache.js
@@ -0,0 +1,31 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { abstractInt, i32 } from '../../../../../util/conversion.js';import { FP } from '../../../../../util/floating_point.js';import { fullI32Range, fullI64Range } from '../../../../../util/math.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]
+const fp_cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait === 'abstract' ? 'abstract_float' : trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ 'unfiltered',
+ FP[trait].signInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('sign', {
+ ...fp_cases,
+ i32: () =>
+ fullI32Range().map((i) => {
+ const signFunc = (i) => i < 0 ? -1 : i > 0 ? 1 : 0;
+ return { input: [i32(i)], expected: i32(signFunc(i)) };
+ }),
+ abstract_int: () =>
+ fullI64Range().map((i) => {
+ const signFunc = (i) => i < 0n ? -1n : i > 0n ? 1n : 0n;
+ return { input: [abstractInt(i)], expected: abstractInt(signFunc(i)) };
+ })
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.spec.js
index 5bbc1527e3..7f9218e7ef 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sign.spec.js
@@ -3,54 +3,20 @@
**/export const description = `
Execution tests for the 'sign' builtin function
-S is AbstractFloat, AbstractInt, i32, f32, f16
+S is abstract-float, Type.abstractInt, i32, f32, f16
T is S or vecN<S>
@const fn sign(e: T ) -> T
Returns the sign of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import {
- i32,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeAbstractFloat } from
-'../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullF64Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, abstractIntBuiltin, builtin } from './builtin.js';
+import { d } from './sign.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('sign', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.signInterval);
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.signInterval);
- },
- abstract_float: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF64Range(),
- 'unfiltered',
- FP.abstract.signInterval
- );
- },
- i32: () =>
- fullI32Range().map((i) => {
- const signFunc = (i) => i < 0 ? -1 : i > 0 ? 1 : 0;
- return { input: [i32(i)], expected: i32(signFunc(i)) };
- })
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#sign-builtin').
desc(`abstract float tests`).
@@ -61,16 +27,28 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('abstract_float');
- await run(t, abstractBuiltin('sign'), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ await run(
+ t,
+ abstractFloatBuiltin('sign'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
});
g.test('abstract_int').
specURL('https://www.w3.org/TR/WGSL/#sign-builtin').
desc(`abstract int tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_int');
+ await run(t, abstractIntBuiltin('sign'), [Type.abstractInt], Type.abstractInt, t.params, cases);
+});
g.test('i32').
specURL('https://www.w3.org/TR/WGSL/#sign-builtin').
@@ -80,7 +58,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('i32');
- await run(t, builtin('sign'), [TypeI32], TypeI32, t.params, cases);
+ await run(t, builtin('sign'), [Type.i32], Type.i32, t.params, cases);
});
g.test('f32').
@@ -91,7 +69,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('sign'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('sign'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -105,5 +83,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('sign'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('sign'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.cache.js
new file mode 100644
index 0000000000..69457c8b27
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ // Well-defined accuracy range
+ ...linearRange(-Math.PI, Math.PI, 100),
+ ...FP[trait].scalarRange()],
+
+ trait === 'abstract' ? 'finite' : 'unfiltered',
+ // sin has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].sinInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('sin', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.spec.js
index 776ba690a0..85a7a665f7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sin.spec.js
@@ -3,54 +3,39 @@
**/export const description = `
Execution tests for the 'sin' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn sin(e: T ) -> T
Returns the sine of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './sin.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('sin', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // Well-defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 1000),
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.sinInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // Well-defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 1000),
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.sinInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('sin'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -66,7 +51,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('sin'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('sin'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -80,5 +65,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('sin'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('sin'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.cache.js
new file mode 100644
index 0000000000..0a9b03fb0a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // sinh has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].sinhInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('sinh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.spec.js
index a691680867..c19a84ebc2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sinh.spec.js
@@ -3,44 +3,39 @@
**/export const description = `
Execution tests for the 'sinh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn sinh(e: T ) -> T
Returns the hyperbolic sine of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './sinh.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('sinh', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'finite', FP.f32.sinhInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.sinhInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'finite', FP.f16.sinhInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.sinhInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('sinh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -50,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('sinh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('sinh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -64,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('sinh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('sinh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.cache.js
new file mode 100644
index 0000000000..9a379eed1d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.cache.js
@@ -0,0 +1,25 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarTripleToIntervalCases(
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ FP[trait].sparseScalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // smoothstep has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].smoothStepInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('smoothstep', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.spec.js
index 5a5f113ab8..353f70a00c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/smoothstep.spec.js
@@ -3,7 +3,7 @@
**/export const description = `
Execution tests for the 'smoothstep' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn smoothstep(low: T , high: T , x: T ) -> T
Returns the smooth Hermite interpolation between 0 and 1.
@@ -11,62 +11,33 @@ Component-wise when T is a vector.
For scalar T, the result is t * t * (3.0 - 2.0 * t), where t = clamp((x - low) / (high - low), 0.0, 1.0).
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { sparseF32Range, sparseF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './smoothstep.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('smoothstep', {
- f32_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'finite',
- FP.f32.smoothStepInterval
- );
- },
- f32_non_const: () => {
- return FP.f32.generateScalarTripleToIntervalCases(
- sparseF32Range(),
- sparseF32Range(),
- sparseF32Range(),
- 'unfiltered',
- FP.f32.smoothStepInterval
- );
- },
- f16_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'finite',
- FP.f16.smoothStepInterval
- );
- },
- f16_non_const: () => {
- return FP.f16.generateScalarTripleToIntervalCases(
- sparseF16Range(),
- sparseF16Range(),
- sparseF16Range(),
- 'unfiltered',
- FP.f16.smoothStepInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('smoothstep'),
+ [Type.abstractFloat, Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -76,7 +47,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('smoothstep'), [TypeF32, TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('smoothstep'), [Type.f32, Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -90,5 +61,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('smoothstep'), [TypeF16, TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('smoothstep'), [Type.f16, Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.cache.js
new file mode 100644
index 0000000000..af8f0ba376
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16]_[non_]const
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ nonConst ? 'unfiltered' : 'finite',
+ // sqrt has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].sqrtInterval
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('sqrt', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.spec.js
index 488db327d7..b2bc38b8ce 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/sqrt.spec.js
@@ -3,44 +3,39 @@
**/export const description = `
Execution tests for the 'sqrt' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn sqrt(e: T ) -> T
Returns the square root of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './sqrt.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('sqrt', {
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'finite', FP.f32.sqrtInterval);
- },
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.sqrtInterval);
- },
- f16_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'finite', FP.f16.sqrtInterval);
- },
- f16_non_const: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.sqrtInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract_const');
+ await run(
+ t,
+ abstractFloatBuiltin('sqrt'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -50,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, builtin('sqrt'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('sqrt'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -64,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f16_const' : 'f16_non_const');
- await run(t, builtin('sqrt'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('sqrt'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.cache.js
new file mode 100644
index 0000000000..91f05db9d4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.cache.js
@@ -0,0 +1,41 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../../util/compare.js';import { FP } from '../../../../../util/floating_point.js';
+import { makeCaseCache } from '../../case_cache.js';
+
+// stepInterval's return value can't always be interpreted as a single acceptance
+// interval, valid result may be 0.0 or 1.0 or both of them, but will never be a
+// value in interval (0.0, 1.0).
+// See the comment block on stepInterval for more details
+const makeCase = (trait, edge, x) => {
+ const FPTrait = FP[trait];
+ edge = FPTrait.quantize(edge);
+ x = FPTrait.quantize(x);
+ const expected = FPTrait.stepInterval(edge, x);
+
+ // [0, 0], [1, 1], or [-∞, +∞] cases
+ if (expected.isPoint() || !expected.isFinite()) {
+ return { input: [FPTrait.scalarBuilder(edge), FPTrait.scalarBuilder(x)], expected };
+ }
+
+ // [0, 1] case, valid result is either 0.0 or 1.0.
+ const zeroInterval = FPTrait.toInterval(0);
+ const oneInterval = FPTrait.toInterval(1);
+ return {
+ input: [FPTrait.scalarBuilder(edge), FPTrait.scalarBuilder(x)],
+ expected: anyOf(zeroInterval, oneInterval)
+ };
+};
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].
+ sparseScalarRange().
+ flatMap((edge) => FP[trait].sparseScalarRange().map((x) => makeCase(trait, edge, x)));
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('step', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.spec.js
index e11f25505d..86c7b64ba7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/step.spec.js
@@ -3,63 +3,39 @@
**/export const description = `
Execution tests for the 'step' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn step(edge: T ,x: T ) -> T
Returns 1.0 if edge ≤ x, and 0.0 otherwise. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { anyOf } from '../../../../../util/compare.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './step.cache.js';
export const g = makeTestGroup(GPUTest);
-// stepInterval's return value can't always be interpreted as a single acceptance
-// interval, valid result may be 0.0 or 1.0 or both of them, but will never be a
-// value in interval (0.0, 1.0).
-// See the comment block on stepInterval for more details
-const makeCase = (trait, edge, x) => {
- const FPTrait = FP[trait];
- edge = FPTrait.quantize(edge);
- x = FPTrait.quantize(x);
- const expected = FPTrait.stepInterval(edge, x);
-
- // [0, 0], [1, 1], or [-∞, +∞] cases
- if (expected.isPoint() || !expected.isFinite()) {
- return { input: [FPTrait.scalarBuilder(edge), FPTrait.scalarBuilder(x)], expected };
- }
-
- // [0, 1] case, valid result is either 0.0 or 1.0.
- const zeroInterval = FPTrait.toInterval(0);
- const oneInterval = FPTrait.toInterval(1);
- return {
- input: [FPTrait.scalarBuilder(edge), FPTrait.scalarBuilder(x)],
- expected: anyOf(zeroInterval, oneInterval)
- };
-};
-
-export const d = makeCaseCache('step', {
- f32: () => {
- return fullF32Range().flatMap((edge) => fullF32Range().map((x) => makeCase('f32', edge, x)));
- },
- f16: () => {
- return fullF16Range().flatMap((edge) => fullF16Range().map((x) => makeCase('f16', edge, x)));
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('step'),
+ [Type.abstractFloat, Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -69,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('step'), [TypeF32, TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('step'), [Type.f32, Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -83,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('step'), [TypeF16, TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('step'), [Type.f16, Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.cache.js
new file mode 100644
index 0000000000..d88c4a2907
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.cache.js
@@ -0,0 +1,23 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { linearRange } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ [
+ // Well-defined accuracy range
+ ...linearRange(-Math.PI, Math.PI, 100),
+ ...FP[trait].scalarRange()],
+
+ 'unfiltered',
+ // tan has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].tanInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('tan', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.spec.js
index 72fa92f5af..af936622e2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tan.spec.js
@@ -3,54 +3,39 @@
**/export const description = `
Execution tests for the 'tan' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn tan(e: T ) -> T
Returns the tangent of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range, linearRange } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './tan.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('tan', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(
- [
- // Defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 100),
- ...fullF32Range()],
-
- 'unfiltered',
- FP.f32.tanInterval
- );
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(
- [
- // Defined accuracy range
- ...linearRange(-Math.PI, Math.PI, 100),
- ...fullF16Range()],
-
- 'unfiltered',
- FP.f16.tanInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('tan'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -60,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('tan'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('tan'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -74,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('tan'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('tan'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.cache.js
new file mode 100644
index 0000000000..a1ec6c9e7f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.cache.js
@@ -0,0 +1,18 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ 'unfiltered',
+ // tanh has an inherited accuracy, so is only expected to be as accurate as f32
+ FP[trait !== 'abstract' ? trait : 'f32'].tanhInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('tanh', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.spec.js
index 41498f4318..9c7b348f10 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/tanh.spec.js
@@ -3,38 +3,39 @@
**/export const description = `
Execution tests for the 'tanh' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn tanh(e: T ) -> T
Returns the hyperbolic tangent of e. Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeF16 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF16Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
-import { allInputSources, run } from '../../expression.js';
+import { Type } from '../../../../../util/conversion.js';
+import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './tanh.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('tanh', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.tanhInterval);
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(fullF16Range(), 'unfiltered', FP.f16.tanhInterval);
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented();
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(
+ t,
+ abstractFloatBuiltin('tanh'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
+});
g.test('f32').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
@@ -44,7 +45,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('tanh'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('tanh'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -58,5 +59,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('tanh'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('tanh'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimension.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimension.spec.js
deleted file mode 100644
index 8ed1e289ee..0000000000
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimension.spec.js
+++ /dev/null
@@ -1,160 +0,0 @@
-/**
-* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/export const description = `
-Execution tests for the 'textureDimension' builtin function
-
-The dimensions of the texture in texels.
-For textures based on cubes, the results are the dimensions of each face of the cube.
-Cube faces are square, so the x and y components of the result are equal.
-If level is outside the range [0, textureNumLevels(t)) then any valid value for the return type may be returned.
-`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-import { GPUTest } from '../../../../../gpu_test.js';
-
-export const g = makeTestGroup(GPUTest);
-
-g.test('sampled').
-specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
-desc(
- `
-T: f32, i32, u32
-
-fn textureDimensions(t: texture_1d<T>) -> u32
-fn textureDimensions(t: texture_1d<T>, level: u32) -> u32
-fn textureDimensions(t: texture_2d<T>) -> vec2<u32>
-fn textureDimensions(t: texture_2d<T>, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_2d_array<T>) -> vec2<u32>
-fn textureDimensions(t: texture_2d_array<T>, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_3d<T>) -> vec3<u32>
-fn textureDimensions(t: texture_3d<T>, level: u32) -> vec3<u32>
-fn textureDimensions(t: texture_cube<T>) -> vec2<u32>
-fn textureDimensions(t: texture_cube<T>, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_cube_array<T>) -> vec2<u32>
-fn textureDimensions(t: texture_cube_array<T>, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_multisampled_2d<T>)-> vec2<u32>
-
-Parameters:
- * t: the sampled texture
- * level:
- - The mip level, with level 0 containing a full size version of the texture.
- - If omitted, the dimensions of level 0 are returned.
-`
-).
-params((u) =>
-u.
-combine('texture_type', [
-'texture_1d',
-'texture_2d',
-'texture_2d_array',
-'texture_3d',
-'texture_cube',
-'texture_cube_array',
-'texture_multisampled_2d']
-).
-beginSubcases().
-combine('sampled_type', ['f32-only', 'i32', 'u32']).
-combine('level', [undefined, 0, 1, 'textureNumLevels', 'textureNumLevels+1'])
-).
-unimplemented();
-
-g.test('depth').
-specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
-desc(
- `
-fn textureDimensions(t: texture_depth_2d) -> vec2<u32>
-fn textureDimensions(t: texture_depth_2d, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_depth_2d_array) -> vec2<u32>
-fn textureDimensions(t: texture_depth_2d_array, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_depth_cube) -> vec2<u32>
-fn textureDimensions(t: texture_depth_cube, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_depth_cube_array) -> vec2<u32>
-fn textureDimensions(t: texture_depth_cube_array, level: u32) -> vec2<u32>
-fn textureDimensions(t: texture_depth_multisampled_2d)-> vec2<u32>
-
-Parameters:
- * t: the depth or multisampled texture
- * level:
- - The mip level, with level 0 containing a full size version of the texture.
- - If omitted, the dimensions of level 0 are returned.
-`
-).
-params((u) =>
-u.
-combine('texture_type', [
-'texture_depth_2d',
-'texture_depth_2d_array',
-'texture_depth_cube',
-'texture_depth_cube_array',
-'texture_depth_multisampled_2d']
-).
-beginSubcases().
-combine('level', [undefined, 0, 1, 'textureNumLevels', 'textureNumLevels+1'])
-).
-unimplemented();
-
-g.test('storage').
-specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
-desc(
- `
-F: rgba8unorm
- rgba8snorm
- rgba8uint
- rgba8sint
- rgba16uint
- rgba16sint
- rgba16float
- r32uint
- r32sint
- r32float
- rg32uint
- rg32sint
- rg32float
- rgba32uint
- rgba32sint
- rgba32float
-A: read, write, read_write
-
-fn textureDimensions(t: texture_storage_1d<F,A>) -> u32
-fn textureDimensions(t: texture_storage_2d<F,A>) -> vec2<u32>
-fn textureDimensions(t: texture_storage_2d_array<F,A>) -> vec2<u32>
-fn textureDimensions(t: texture_storage_3d<F,A>) -> vec3<u32>
-
-Parameters:
- * t: the storage texture
-`
-).
-params((u) =>
-u.
-combine('texel_format', [
-'rgba8unorm',
-'rgba8snorm',
-'rgba8uint',
-'rgba8sint',
-'rgba16uint',
-'rgba16sint',
-'rgba16float',
-'r32uint',
-'r32sint',
-'r32float',
-'rg32uint',
-'rg32sint',
-'rg32float',
-'rgba32uint',
-'rgba32sint',
-'rgba32float']
-).
-beginSubcases().
-combine('access_mode', ['read', 'write', 'read_write'])
-).
-unimplemented();
-
-g.test('external').
-specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
-desc(
- `
-fn textureDimensions(t: texture_external) -> vec2<u32>
-
-Parameters:
- * t: the external texture
-`
-).
-unimplemented(); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimensions.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimensions.spec.js
new file mode 100644
index 0000000000..f3699e63d9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureDimensions.spec.js
@@ -0,0 +1,518 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'textureDimensions' builtin function
+
+The dimensions of the texture in texels.
+For textures based on cubes, the results are the dimensions of each face of the cube.
+Cube faces are square, so the x and y components of the result are equal.
+If level is outside the range [0, textureNumLevels(t)) then any valid value for the return type may be returned.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import {
+ kAllTextureFormats,
+ kColorTextureFormats,
+ kTextureFormatInfo,
+ sampleTypeForFormatAndAspect,
+ textureDimensionAndFormatCompatible } from
+'../../../../../format_info.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { align } from '../../../../../util/math.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/// The maximum number of texture mipmap levels to test.
+/// Keep this small to reduce memory and test permutations.
+const kMaxMipsForTest = 3;
+
+/// The maximum number of texture samples to test.
+const kMaxSamplesForTest = 4;
+
+/// All the possible GPUTextureViewDimensions.
+const kAllViewDimensions = [
+'1d',
+'2d',
+'2d-array',
+'3d',
+'cube',
+'cube-array'];
+
+
+/** @returns the aspects to test for the given format */
+function aspectsForFormat(format) {
+ const formatInfo = kTextureFormatInfo[format];
+ if (formatInfo.depth !== undefined && formatInfo.stencil !== undefined) {
+ return ['depth-only', 'stencil-only'];
+ }
+ return ['all'];
+}
+
+/** @returns the sample counts to test for the given format */
+function samplesForFormat(format) {
+ const info = kTextureFormatInfo[format];
+ return info.multisample ? [1, kMaxSamplesForTest] : [1];
+}
+
+/**
+ * @returns a list of number of texture mipmap levels to test, given the format, view dimensions and
+ * number of samples.
+ */
+function textureMipCount(params)
+
+
+
+{
+ if (params.samples !== undefined && params.samples !== 1) {
+ // https://www.w3.org/TR/webgpu/#texture-creation
+ // If descriptor.sampleCount > 1: descriptor.mipLevelCount must be 1.
+ return [1];
+ }
+ if (textureDimensionsForViewDimensions(params.dimensions) === '1d') {
+ // https://www.w3.org/TR/webgpu/#dom-gputexturedimension-2d
+ // Only "2d" textures may have mipmaps, be multisampled, use a compressed or depth/stencil
+ // format, and be used as a render attachment.
+ return [1];
+ }
+ return [1, kMaxMipsForTest];
+}
+
+/**
+ * @returns a list of GPUTextureViewDescriptor.baseMipLevel to test, give the texture mipmap count.
+ */
+function baseMipLevel(params) {
+ const out = [];
+ for (let i = 0; i < params.textureMipCount; i++) {
+ out.push(i);
+ }
+ return out;
+}
+
+/**
+ * @returns the argument values for the textureDimensions() `level` parameter to test.
+ * An `undefined` represents a call to textureDimensions() without the level argument.
+ */
+function textureDimensionsLevel(params)
+
+
+
+{
+ if (params.samples !== undefined && params.samples > 1) {
+ return [undefined]; // textureDimensions() overload with `level` not available.
+ }
+ const out = [undefined];
+ for (let i = 0; i < params.textureMipCount - params.baseMipLevel; i++) {
+ out.push(i);
+ }
+ return out;
+}
+
+/** @returns the GPUTextureViewDimensions to test for the format and number of samples */
+function viewDimensions(params)
+
+
+{
+ if (params.samples !== undefined && params.samples > 1) {
+ // https://www.w3.org/TR/webgpu/#dom-gputexturedimension-2d
+ // Only 2d textures can be multisampled
+ return ['2d'];
+ }
+
+ return kAllViewDimensions.filter((dim) =>
+ textureDimensionAndFormatCompatible(textureDimensionsForViewDimensions(dim), params.format)
+ );
+}
+
+/** @returns the GPUTextureDimension for the GPUTextureViewDimension */
+function textureDimensionsForViewDimensions(dim) {
+ switch (dim) {
+ case '1d':
+ return '1d';
+ case '2d':
+ case '2d-array':
+ case 'cube':
+ case 'cube-array':
+ return '2d';
+ case '3d':
+ return '3d';
+ }
+}
+
+/** TestValues holds the texture size and expected return value of textureDimensions() */
+
+
+
+
+
+
+
+/** @returns The TestValues to use for the given texture dimensions and format */
+function testValues(params)
+
+
+
+
+{
+ // The minimum dimension length, given the number of mipmap levels that are being tested.
+ const kMinLen = 1 << kMaxMipsForTest;
+ const kNumCubeFaces = 6;
+
+ const formatInfo = kTextureFormatInfo[params.format];
+ const bw = formatInfo.blockWidth;
+ const bh = formatInfo.blockHeight;
+ let mip = params.baseMipLevel;
+ if (params.textureDimensionsLevel !== undefined) {
+ mip += params.textureDimensionsLevel;
+ }
+
+ // Magic constants to multiply the minimum texture dimensions with, to provide
+ // different dimension values in the test. These could be parameterized, but
+ // these are currently fixed to reduce the number of test parameterizations.
+ const kMultipleA = 2;
+ const kMultipleB = 3;
+ const kMultipleC = 4;
+
+ switch (params.dimensions) {
+ case '1d':{
+ const w = align(kMinLen, bw) * kMultipleA;
+ return { size: [w], expected: [w >>> mip] };
+ }
+ case '2d':{
+ const w = align(kMinLen, bw) * kMultipleA;
+ const h = align(kMinLen, bh) * kMultipleB;
+ return { size: [w, h], expected: [w >>> mip, h >>> mip] };
+ }
+ case '2d-array':{
+ const w = align(kMinLen, bw) * kMultipleC;
+ const h = align(kMinLen, bh) * kMultipleB;
+ return { size: [w, h, 4], expected: [w >>> mip, h >>> mip] };
+ }
+ case '3d':{
+ const w = align(kMinLen, bw) * kMultipleA;
+ const h = align(kMinLen, bh) * kMultipleB;
+ const d = kMinLen * kMultipleC;
+ return {
+ size: [w, h, d],
+ expected: [w >>> mip, h >>> mip, d >>> mip]
+ };
+ }
+ case 'cube':{
+ const l = align(kMinLen, bw) * align(kMinLen, bh) * kMultipleB;
+ return {
+ size: [l, l, kNumCubeFaces],
+ expected: [l >>> mip, l >>> mip]
+ };
+ }
+ case 'cube-array':{
+ const l = align(kMinLen, bw) * align(kMinLen, bh) * kMultipleC;
+ return {
+ size: [l, l, kNumCubeFaces * 3],
+ expected: [l >>> mip, l >>> mip]
+ };
+ }
+ }
+}
+
+/**
+ * Builds a shader module with the texture view bound to the WGSL texture with the given WGSL type,
+ * which calls textureDimensions(), assigning the result to an output buffer.
+ * This shader is executed with a compute shader, and the output buffer is compared to
+ * `values.expected`.
+ */
+function run(
+t,
+view,
+textureType,
+levelArg,
+values)
+{
+ const outputType = values.expected.length > 1 ? `vec${values.expected.length}u` : 'u32';
+ const wgsl = `
+@group(0) @binding(0) var texture : ${textureType};
+@group(0) @binding(1) var<storage, read_write> output : ${outputType};
+
+@compute @workgroup_size(1)
+fn main() {
+output = ${
+ levelArg !== undefined ?
+ `textureDimensions(texture, ${levelArg})` :
+ 'textureDimensions(texture)'
+ };
+}
+`;
+ const module = t.device.createShaderModule({
+ code: wgsl
+ });
+ const pipeline = t.device.createComputePipeline({
+ compute: { module },
+ layout: 'auto'
+ });
+ const outputBuffer = t.device.createBuffer({
+ size: 32,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ });
+ const bindgroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ { binding: 0, resource: view },
+ { binding: 1, resource: { buffer: outputBuffer } }]
+
+ });
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindgroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.device.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesEqual(outputBuffer, new Uint32Array(values.expected));
+}
+
+/** @returns true if the GPUTextureViewDimension is valid for a storage texture */
+function dimensionsValidForStorage(dimensions) {
+ switch (dimensions) {
+ case '1d':
+ case '2d':
+ case '2d-array':
+ case '3d':
+ return true;
+ default:
+ return false;
+ }
+}
+
+g.test('sampled_and_multisampled').
+specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
+desc(
+ `
+T: f32, i32, u32
+
+fn textureDimensions(t: texture_1d<T>) -> u32
+fn textureDimensions(t: texture_1d<T>, level: u32) -> u32
+fn textureDimensions(t: texture_2d<T>) -> vec2<u32>
+fn textureDimensions(t: texture_2d<T>, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_2d_array<T>) -> vec2<u32>
+fn textureDimensions(t: texture_2d_array<T>, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_3d<T>) -> vec3<u32>
+fn textureDimensions(t: texture_3d<T>, level: u32) -> vec3<u32>
+fn textureDimensions(t: texture_cube<T>) -> vec2<u32>
+fn textureDimensions(t: texture_cube<T>, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_cube_array<T>) -> vec2<u32>
+fn textureDimensions(t: texture_cube_array<T>, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_multisampled_2d<T>)-> vec2<u32>
+
+Parameters:
+ * t: the sampled texture
+ * level:
+ - The mip level, with level 0 containing a full size version of the texture.
+ - If omitted, the dimensions of level 0 are returned.
+`
+).
+params((u) =>
+u.
+combine('format', kAllTextureFormats).
+unless((p) => kTextureFormatInfo[p.format].color?.type === 'unfilterable-float').
+expand('aspect', (u) => aspectsForFormat(u.format)).
+expand('samples', (u) => samplesForFormat(u.format)).
+beginSubcases().
+expand('dimensions', viewDimensions).
+expand('textureMipCount', textureMipCount).
+expand('baseMipLevel', baseMipLevel).
+expand('textureDimensionsLevel', textureDimensionsLevel)
+).
+beforeAllSubcases((t) => {
+ const info = kTextureFormatInfo[t.params.format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ t.selectDeviceOrSkipTestCase(info.feature);
+}).
+fn((t) => {
+ t.skipIfTextureViewDimensionNotSupported(t.params.dimensions);
+ const values = testValues(t.params);
+ const texture = t.device.createTexture({
+ size: values.size,
+ dimension: textureDimensionsForViewDimensions(t.params.dimensions),
+ ...(t.isCompatibility && { textureBindingViewDimension: t.params.dimensions }),
+ usage:
+ t.params.samples === 1 ?
+ GPUTextureUsage.TEXTURE_BINDING :
+ GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.RENDER_ATTACHMENT,
+ format: t.params.format,
+ sampleCount: t.params.samples,
+ mipLevelCount: t.params.textureMipCount
+ });
+ const textureView = texture.createView({
+ dimension: t.params.dimensions,
+ aspect: t.params.aspect,
+ baseMipLevel: t.params.baseMipLevel
+ });
+
+ function wgslSampledTextureType() {
+ const base = t.params.samples !== 1 ? 'texture_multisampled' : 'texture';
+ const dimensions = t.params.dimensions.replace('-', '_');
+ const sampleType = sampleTypeForFormatAndAspect(t.params.format, t.params.aspect);
+ switch (sampleType) {
+ case 'depth':
+ case 'float':
+ return `${base}_${dimensions}<f32>`;
+ case 'uint':
+ return `${base}_${dimensions}<u32>`;
+ case 'sint':
+ return `${base}_${dimensions}<i32>`;
+ case 'unfilterable-float':
+ throw new Error(`'${t.params.format}' does not support sampling`);
+ }
+ }
+
+ run(t, textureView, wgslSampledTextureType(), t.params.textureDimensionsLevel, values);
+});
+
+g.test('depth').
+specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
+desc(
+ `
+fn textureDimensions(t: texture_depth_2d) -> vec2<u32>
+fn textureDimensions(t: texture_depth_2d, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_depth_2d_array) -> vec2<u32>
+fn textureDimensions(t: texture_depth_2d_array, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_depth_cube) -> vec2<u32>
+fn textureDimensions(t: texture_depth_cube, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_depth_cube_array) -> vec2<u32>
+fn textureDimensions(t: texture_depth_cube_array, level: u32) -> vec2<u32>
+fn textureDimensions(t: texture_depth_multisampled_2d)-> vec2<u32>
+
+Parameters:
+ * t: the depth or multisampled texture
+ * level:
+ - The mip level, with level 0 containing a full size version of the texture.
+ - If omitted, the dimensions of level 0 are returned.
+`
+).
+params((u) =>
+u.
+combine('format', kAllTextureFormats).
+filter((p) => !!kTextureFormatInfo[p.format].depth).
+expand('aspect', (u) => aspectsForFormat(u.format)).
+unless((u) => u.aspect === 'stencil-only').
+expand('samples', (u) => samplesForFormat(u.format)).
+beginSubcases().
+expand('dimensions', viewDimensions).
+expand('textureMipCount', textureMipCount).
+expand('baseMipLevel', baseMipLevel).
+expand('textureDimensionsLevel', textureDimensionsLevel)
+).
+beforeAllSubcases((t) => {
+ const info = kTextureFormatInfo[t.params.format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ t.selectDeviceOrSkipTestCase(info.feature);
+}).
+fn((t) => {
+ t.skipIfTextureViewDimensionNotSupported(t.params.dimensions);
+ const values = testValues(t.params);
+ const texture = t.device.createTexture({
+ size: values.size,
+ dimension: textureDimensionsForViewDimensions(t.params.dimensions),
+ ...(t.isCompatibility && { textureBindingViewDimension: t.params.dimensions }),
+ usage:
+ t.params.samples === 1 ?
+ GPUTextureUsage.TEXTURE_BINDING :
+ GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.RENDER_ATTACHMENT,
+ format: t.params.format,
+ sampleCount: t.params.samples,
+ mipLevelCount: t.params.textureMipCount
+ });
+ const textureView = texture.createView({
+ dimension: t.params.dimensions,
+ aspect: t.params.aspect,
+ baseMipLevel: t.params.baseMipLevel
+ });
+
+ function wgslDepthTextureType() {
+ const base = t.params.samples !== 1 ? 'texture_depth_multisampled' : 'texture_depth';
+ const dimensions = t.params.dimensions.replace('-', '_');
+ return `${base}_${dimensions}`;
+ }
+
+ run(t, textureView, wgslDepthTextureType(), t.params.textureDimensionsLevel, values);
+});
+
+g.test('storage').
+specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
+desc(
+ `
+F: rgba8unorm
+ rgba8snorm
+ rgba8uint
+ rgba8sint
+ rgba16uint
+ rgba16sint
+ rgba16float
+ r32uint
+ r32sint
+ r32float
+ rg32uint
+ rg32sint
+ rg32float
+ rgba32uint
+ rgba32sint
+ rgba32float
+A: read, write, read_write
+
+fn textureDimensions(t: texture_storage_1d<F,A>) -> u32
+fn textureDimensions(t: texture_storage_2d<F,A>) -> vec2<u32>
+fn textureDimensions(t: texture_storage_2d_array<F,A>) -> vec2<u32>
+fn textureDimensions(t: texture_storage_3d<F,A>) -> vec3<u32>
+
+Parameters:
+ * t: the storage texture
+`
+).
+params((u) =>
+u.
+combine('format', kColorTextureFormats).
+filter((p) => kTextureFormatInfo[p.format].color?.storage === true).
+expand('aspect', (u) => aspectsForFormat(u.format)).
+beginSubcases().
+expand('dimensions', (u) => viewDimensions(u).filter(dimensionsValidForStorage)).
+expand('textureMipCount', textureMipCount).
+expand('baseMipLevel', baseMipLevel)
+).
+beforeAllSubcases((t) => {
+ const info = kTextureFormatInfo[t.params.format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ t.skipIfTextureFormatNotUsableAsStorageTexture(t.params.format);
+ t.selectDeviceOrSkipTestCase(info.feature);
+}).
+fn((t) => {
+ const values = testValues(t.params);
+ const texture = t.device.createTexture({
+ size: values.size,
+ dimension: textureDimensionsForViewDimensions(t.params.dimensions),
+ usage: GPUTextureUsage.STORAGE_BINDING,
+ format: t.params.format,
+ mipLevelCount: t.params.textureMipCount
+ });
+ const textureView = texture.createView({
+ dimension: t.params.dimensions,
+ aspect: t.params.aspect,
+ mipLevelCount: 1,
+ baseMipLevel: t.params.baseMipLevel
+ });
+
+ function wgslStorageTextureType() {
+ const dimensions = t.params.dimensions.replace('-', '_');
+ return `texture_storage_${dimensions}<${t.params.format}, write>`;
+ }
+
+ run(t, textureView, wgslStorageTextureType(), undefined, values);
+});
+
+g.test('external').
+specURL('https://www.w3.org/TR/WGSL/#texturedimensions').
+desc(
+ `
+fn textureDimensions(t: texture_external) -> vec2<u32>
+
+Parameters:
+ * t: the external texture
+`
+).
+unimplemented(); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSample.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSample.spec.js
index 7e4bbd7744..cec04b8ce8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSample.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSample.spec.js
@@ -2,25 +2,23 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
Samples a texture.
-
-Must only be used in a fragment shader stage.
-Must only be invoked in uniform control flow.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
-import { GPUTest } from '../../../../../gpu_test.js';
+import { kEncodableTextureFormats, kTextureFormatInfo } from '../../../../../format_info.js';
+import { GPUTest, TextureTestMixin } from '../../../../../gpu_test.js';
+import { hashU32 } from '../../../../../util/math.js';
+import { kTexelRepresentationInfo } from '../../../../../util/texture/texel_data.js';
-import { generateCoordBoundaries, generateOffsets } from './utils.js';
+import {
-export const g = makeTestGroup(GPUTest);
+ createRandomTexelView,
-g.test('stage').
-specURL('https://www.w3.org/TR/WGSL/#texturesample').
-desc(
- `
-Tests that 'textureSample' can only be called in 'fragment' shaders.
-`
-).
-params((u) => u.combine('stage', ['fragment', 'vertex', 'compute'])).
-unimplemented();
+ putDataInTextureThenDrawAndCheckResults,
+ generateSamplePoints,
+ kSamplePointMethods } from
+'./texture_utils.js';
+import { generateCoordBoundaries, generateOffsets } from './utils.js';
+
+export const g = makeTestGroup(TextureTestMixin(GPUTest));
g.test('control_flow').
specURL('https://www.w3.org/TR/WGSL/#texturesample').
@@ -70,11 +68,74 @@ Parameters:
Values outside of this range will result in a shader-creation error.
`
).
-paramsSubcasesOnly((u) =>
+params((u) =>
u.
-combine('S', ['clamp-to-edge', 'repeat', 'mirror-repeat']).
-combine('coords', generateCoordBoundaries(2)).
-combine('offset', generateOffsets(2))
+combine('format', kEncodableTextureFormats).
+filter((t) => {
+ const type = kTextureFormatInfo[t.format].color?.type;
+ return type === 'float' || type === 'unfilterable-float';
+}).
+combine('sample_points', kSamplePointMethods).
+combine('addressModeU', ['clamp-to-edge', 'repeat', 'mirror-repeat']).
+combine('addressModeV', ['clamp-to-edge', 'repeat', 'mirror-repeat']).
+combine('minFilter', ['nearest', 'linear']).
+combine('offset', [false, true])
+).
+beforeAllSubcases((t) => {
+ const format = kTexelRepresentationInfo[t.params.format];
+ t.skipIfTextureFormatNotSupported(t.params.format);
+ const hasFloat32 = format.componentOrder.some((c) => {
+ const info = format.componentInfo[c];
+ return info.dataType === 'float' && info.bitLength === 32;
+ });
+ if (hasFloat32) {
+ t.selectDeviceOrSkipTestCase('float32-filterable');
+ }
+}).
+fn(async (t) => {
+ const descriptor = {
+ format: t.params.format,
+ size: { width: 8, height: 8 },
+ usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.TEXTURE_BINDING
+ };
+ const texelView = createRandomTexelView(descriptor);
+ const calls = generateSamplePoints(50, t.params.minFilter === 'nearest', {
+ method: t.params.sample_points,
+ textureWidth: 8,
+ textureHeight: 8
+ }).map((c, i) => {
+ const hash = hashU32(i) & 0xff;
+ return {
+ builtin: 'textureSample',
+ coordType: 'f',
+ coords: c,
+ offset: t.params.offset ? [(hash & 15) - 8, (hash >> 4) - 8] : undefined
+ };
+ });
+ const sampler = {
+ addressModeU: t.params.addressModeU,
+ addressModeV: t.params.addressModeV,
+ minFilter: t.params.minFilter,
+ magFilter: t.params.minFilter
+ };
+ const res = await putDataInTextureThenDrawAndCheckResults(
+ t.device,
+ { texels: texelView, descriptor },
+ sampler,
+ calls
+ );
+ t.expectOK(res);
+});
+
+g.test('sampled_2d_coords,derivatives').
+specURL('https://www.w3.org/TR/WGSL/#texturesample').
+desc(
+ `
+fn textureSample(t: texture_2d<f32>, s: sampler, coords: vec2<f32>) -> vec4<f32>
+fn textureSample(t: texture_2d<f32>, s: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<f32>
+
+test mip level selection based on derivatives
+ `
).
unimplemented();
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleBias.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleBias.spec.js
index 7594f3ad5a..a11274e067 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleBias.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleBias.spec.js
@@ -4,8 +4,6 @@
Execution tests for the 'textureSampleBias' builtin function
Samples a texture with a bias to the mip level.
-Must only be used in a fragment shader stage.
-Must only be invoked in uniform control flow.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
@@ -13,26 +11,6 @@ import { generateCoordBoundaries, generateOffsets } from './utils.js';
export const g = makeTestGroup(GPUTest);
-g.test('stage').
-specURL('https://www.w3.org/TR/WGSL/#texturesamplebias').
-desc(
- `
-Tests that 'textureSampleBias' can only be called in 'fragment' shaders.
-`
-).
-params((u) => u.combine('stage', ['fragment', 'vertex', 'compute'])).
-unimplemented();
-
-g.test('control_flow').
-specURL('https://www.w3.org/TR/WGSL/#texturesamplebias').
-desc(
- `
-Tests that 'textureSampleBias' can only be called in uniform control flow.
-`
-).
-params((u) => u.combine('stage', ['fragment', 'vertex', 'compute'])).
-unimplemented();
-
g.test('sampled_2d_coords').
specURL('https://www.w3.org/TR/WGSL/#texturesamplebias').
desc(
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleCompare.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleCompare.spec.js
index 9f90e69f63..cb34aa652c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleCompare.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/textureSampleCompare.spec.js
@@ -2,9 +2,6 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
Samples a depth texture and compares the sampled depth values against a reference value.
-
-Must only be used in a fragment shader stage.
-Must only be invoked in uniform control flow.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
@@ -12,26 +9,6 @@ import { generateCoordBoundaries, generateOffsets } from './utils.js';
export const g = makeTestGroup(GPUTest);
-g.test('stage').
-specURL('https://www.w3.org/TR/WGSL/#texturesamplecompare').
-desc(
- `
-Tests that 'textureSampleCompare' can only be called in 'fragment' shaders.
-`
-).
-params((u) => u.combine('stage', ['fragment', 'vertex', 'compute'])).
-unimplemented();
-
-g.test('control_flow').
-specURL('https://www.w3.org/TR/WGSL/#texturesamplecompare').
-desc(
- `
-Tests that 'textureSampleCompare' can only be called in uniform control flow.
-`
-).
-params((u) => u.combine('stage', ['fragment', 'vertex', 'compute'])).
-unimplemented();
-
g.test('2d_coords').
specURL('https://www.w3.org/TR/WGSL/#texturesamplecompare').
desc(
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/texture_utils.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/texture_utils.js
new file mode 100644
index 0000000000..65c07947d8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/texture_utils.js
@@ -0,0 +1,809 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { assert, range, unreachable } from '../../../../../../common/util/util.js';import { float32ToUint32 } from '../../../../../util/conversion.js';
+import { align, clamp, hashU32, lerp, quantizeToF32 } from '../../../../../util/math.js';
+import {
+ kTexelRepresentationInfo } from
+
+
+'../../../../../util/texture/texel_data.js';
+import { TexelView } from '../../../../../util/texture/texel_view.js';
+import { createTextureFromTexelView } from '../../../../../util/texture.js';
+import { reifyExtent3D } from '../../../../../util/unions.js';
+
+function getLimitValue(v) {
+ switch (v) {
+ case Number.POSITIVE_INFINITY:
+ return 1000;
+ case Number.NEGATIVE_INFINITY:
+ return -1000;
+ default:
+ return v;
+ }
+}
+
+function getValueBetweenMinAndMaxTexelValueInclusive(
+rep,
+normalized)
+{
+ return lerp(
+ getLimitValue(rep.numericRange.min),
+ getLimitValue(rep.numericRange.max),
+ normalized
+ );
+}
+
+/**
+ * Creates a TexelView filled with random values.
+ */
+export function createRandomTexelView(info)
+
+
+{
+ const rep = kTexelRepresentationInfo[info.format];
+ const generator = (coords) => {
+ const texel = {};
+ for (const component of rep.componentOrder) {
+ const rnd = hashU32(coords.x, coords.y, coords.z, component.charCodeAt(0));
+ const normalized = clamp(rnd / 0xffffffff, { min: 0, max: 1 });
+ texel[component] = getValueBetweenMinAndMaxTexelValueInclusive(rep, normalized);
+ }
+ return quantize(texel, rep);
+ };
+ return TexelView.fromTexelsAsColors(info.format, generator);
+}
+
+
+
+
+
+
+
+const kTextureCallArgNames = [
+'coords',
+'mipLevel',
+'arrayIndex',
+'ddx',
+'ddy',
+'offset'];
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+function toArray(coords) {
+ if (coords instanceof Array) {
+ return coords;
+ }
+ return [coords];
+}
+
+function quantize(texel, repl) {
+ return repl.bitsToNumber(repl.unpackBits(new Uint8Array(repl.pack(repl.encode(texel)))));
+}
+
+function apply(a, b, op) {
+ assert(a.length === b.length, `apply(${a}, ${b}): arrays must have same length`);
+ return a.map((v, i) => op(v, b[i]));
+}
+
+const add = (a, b) => apply(a, b, (x, y) => x + y);
+
+
+
+
+
+
+/**
+ * Returns the expect value for a WGSL builtin texture function
+ */
+export function expected(
+call,
+texture,
+sampler)
+{
+ const rep = kTexelRepresentationInfo[texture.texels.format];
+ const textureExtent = reifyExtent3D(texture.descriptor.size);
+ const textureSize = [textureExtent.width, textureExtent.height, textureExtent.depthOrArrayLayers];
+ const addressMode = [
+ sampler.addressModeU ?? 'clamp-to-edge',
+ sampler.addressModeV ?? 'clamp-to-edge',
+ sampler.addressModeW ?? 'clamp-to-edge'];
+
+
+ const load = (at) =>
+ texture.texels.color({
+ x: Math.floor(at[0]),
+ y: Math.floor(at[1] ?? 0),
+ z: Math.floor(at[2] ?? 0)
+ });
+
+ switch (call.builtin) {
+ case 'textureSample':{
+ const coords = toArray(call.coords);
+
+ // convert normalized to absolute texel coordinate
+ // ┌───┬───┬───┬───┐
+ // │ a │ │ │ │ norm: a = 1/8, b = 7/8
+ // ├───┼───┼───┼───┤ abs: a = 0, b = 3
+ // │ │ │ │ │
+ // ├───┼───┼───┼───┤
+ // │ │ │ │ │
+ // ├───┼───┼───┼───┤
+ // │ │ │ │ b │
+ // └───┴───┴───┴───┘
+ let at = coords.map((v, i) => v * textureSize[i] - 0.5);
+
+ // Apply offset in whole texel units
+ if (call.offset !== undefined) {
+ at = add(at, toArray(call.offset));
+ }
+
+ const samples = [];
+
+ const filter = sampler.minFilter;
+ switch (filter) {
+ case 'linear':{
+ // 'p0' is the lower texel for 'at'
+ const p0 = at.map((v) => Math.floor(v));
+ // 'p1' is the higher texel for 'at'
+ const p1 = p0.map((v) => v + 1);
+
+ // interpolation weights for p0 and p1
+ const p1W = at.map((v, i) => v - p0[i]);
+ const p0W = p1W.map((v) => 1 - v);
+
+ switch (coords.length) {
+ case 1:
+ samples.push({ at: p0, weight: p0W[0] });
+ samples.push({ at: p1, weight: p1W[0] });
+ break;
+ case 2:{
+ samples.push({ at: p0, weight: p0W[0] * p0W[1] });
+ samples.push({ at: [p1[0], p0[1]], weight: p1W[0] * p0W[1] });
+ samples.push({ at: [p0[0], p1[1]], weight: p0W[0] * p1W[1] });
+ samples.push({ at: p1, weight: p1W[0] * p1W[1] });
+ break;
+ }
+ }
+ break;
+ }
+ case 'nearest':{
+ const p = at.map((v) => Math.round(quantizeToF32(v)));
+ samples.push({ at: p, weight: 1 });
+ break;
+ }
+ default:
+ unreachable();
+ }
+
+ const out = {};
+ const ss = [];
+ for (const sample of samples) {
+ // Apply sampler address mode
+ const c = sample.at.map((v, i) => {
+ switch (addressMode[i]) {
+ case 'clamp-to-edge':
+ return clamp(v, { min: 0, max: textureSize[i] - 1 });
+ case 'mirror-repeat':{
+ const n = Math.floor(v / textureSize[i]);
+ v = v - n * textureSize[i];
+ return (n & 1) !== 0 ? textureSize[i] - v - 1 : v;
+ }
+ case 'repeat':
+ return v - Math.floor(v / textureSize[i]) * textureSize[i];
+ default:
+ unreachable();
+ }
+ });
+ const v = load(c);
+ ss.push(v);
+ for (const component of rep.componentOrder) {
+ out[component] = (out[component] ?? 0) + v[component] * sample.weight;
+ }
+ }
+
+ return out;
+ }
+ case 'textureLoad':{
+ return load(toArray(call.coords));
+ }
+ }
+}
+
+/**
+ * Puts random data in a texture, generates a shader that implements `calls`
+ * such that each call's result is written to the next consecutive texel of
+ * a rgba32float texture. It then checks the result of each call matches
+ * the expected result.
+ */
+export async function putDataInTextureThenDrawAndCheckResults(
+device,
+texture,
+sampler,
+calls)
+{
+ const results = await doTextureCalls(device, texture, sampler, calls);
+ const errs = [];
+ const rep = kTexelRepresentationInfo[texture.texels.format];
+ for (let callIdx = 0; callIdx < calls.length; callIdx++) {
+ const call = calls[callIdx];
+ const got = results[callIdx];
+ const expect = expected(call, texture, sampler);
+
+ const gULP = rep.bitsToULPFromZero(rep.numberToBits(got));
+ const eULP = rep.bitsToULPFromZero(rep.numberToBits(expect));
+ for (const component of rep.componentOrder) {
+ const g = got[component];
+ const e = expect[component];
+ const absDiff = Math.abs(g - e);
+ const ulpDiff = Math.abs(gULP[component] - eULP[component]);
+ const relDiff = absDiff / Math.max(Math.abs(g), Math.abs(e));
+ if (ulpDiff > 3 && relDiff > 0.03) {
+ const desc = describeTextureCall(call);
+ errs.push(`component was not as expected:
+ call: ${desc}
+ component: ${component}
+ got: ${g}
+ expected: ${e}
+ abs diff: ${absDiff.toFixed(4)}
+ rel diff: ${(relDiff * 100).toFixed(2)}%
+ ulp diff: ${ulpDiff}
+ sample points:
+`);
+ const expectedSamplePoints = [
+ 'expected:',
+ ...(await identifySamplePoints(texture.descriptor, (texels) => {
+ return Promise.resolve(
+ expected(call, { texels, descriptor: texture.descriptor }, sampler)
+ );
+ }))];
+
+ const gotSamplePoints = [
+ 'got:',
+ ...(await identifySamplePoints(
+ texture.descriptor,
+ async (texels) =>
+ (
+ await doTextureCalls(device, { texels, descriptor: texture.descriptor }, sampler, [
+ call]
+ ))[
+ 0]
+ ))];
+
+ errs.push(layoutTwoColumns(expectedSamplePoints, gotSamplePoints).join('\n'));
+ errs.push('', '');
+ }
+ }
+ }
+
+ return errs.length > 0 ? new Error(errs.join('\n')) : undefined;
+}
+
+/**
+ * Generates a text art grid showing which texels were sampled
+ * followed by a list of the samples and the weights used for each
+ * component.
+ *
+ * Example:
+ *
+ * 0 1 2 3 4 5 6 7
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┐
+ * 0 │ │ │ │ │ │ │ │ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 1 │ │ │ │ │ │ │ │ a │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 2 │ │ │ │ │ │ │ │ b │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 3 │ │ │ │ │ │ │ │ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 4 │ │ │ │ │ │ │ │ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 5 │ │ │ │ │ │ │ │ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 6 │ │ │ │ │ │ │ │ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┤
+ * 7 │ │ │ │ │ │ │ │ │
+ * └───┴───┴───┴───┴───┴───┴───┴───┘
+ * a: at: [7, 1], weights: [R: 0.75000]
+ * b: at: [7, 2], weights: [R: 0.25000]
+ */
+async function identifySamplePoints(
+info,
+run)
+{
+ const textureSize = reifyExtent3D(info.size);
+ const numTexels = textureSize.width * textureSize.height;
+ const rep = kTexelRepresentationInfo[info.format];
+
+ // Identify all the texels that are sampled, and their weights.
+ const sampledTexelWeights = new Map();
+ const unclassifiedStack = [new Set(range(numTexels, (v) => v))];
+ while (unclassifiedStack.length > 0) {
+ // Pop the an unclassified texels stack
+ const unclassified = unclassifiedStack.pop();
+
+ // Split unclassified texels evenly into two new sets
+ const setA = new Set();
+ const setB = new Set();
+ [...unclassified.keys()].forEach((t, i) => ((i & 1) === 0 ? setA : setB).add(t));
+
+ // Push setB to the unclassified texels stack
+ if (setB.size > 0) {
+ unclassifiedStack.push(setB);
+ }
+
+ // See if any of the texels in setA were sampled.
+ const results = await run(
+ TexelView.fromTexelsAsColors(
+ info.format,
+ (coords) => {
+ const isCandidate = setA.has(coords.x + coords.y * textureSize.width);
+ const texel = {};
+ for (const component of rep.componentOrder) {
+ texel[component] = isCandidate ? 1 : 0;
+ }
+ return texel;
+ }
+ )
+ );
+ if (rep.componentOrder.some((c) => results[c] !== 0)) {
+ // One or more texels of setA were sampled.
+ if (setA.size === 1) {
+ // We identified a specific texel was sampled.
+ // As there was only one texel in the set, results holds the sampling weights.
+ setA.forEach((texel) => sampledTexelWeights.set(texel, results));
+ } else {
+ // More than one texel in the set. Needs splitting.
+ unclassifiedStack.push(setA);
+ }
+ }
+ }
+
+ // ┌───┬───┬───┬───┐
+ // │ a │ │ │ │
+ // ├───┼───┼───┼───┤
+ // │ │ │ │ │
+ // ├───┼───┼───┼───┤
+ // │ │ │ │ │
+ // ├───┼───┼───┼───┤
+ // │ │ │ │ b │
+ // └───┴───┴───┴───┘
+ const letter = (idx) => String.fromCharCode(97 + idx); // 97: 'a'
+ const orderedTexelIndices = [];
+ const lines = [];
+ {
+ let line = ' ';
+ for (let x = 0; x < textureSize.width; x++) {
+ line += ` ${x} `;
+ }
+ lines.push(line);
+ }
+ {
+ let line = ' ┌';
+ for (let x = 0; x < textureSize.width; x++) {
+ line += x === textureSize.width - 1 ? '───┐' : '───┬';
+ }
+ lines.push(line);
+ }
+ for (let y = 0; y < textureSize.height; y++) {
+ {
+ let line = `${y} │`;
+ for (let x = 0; x < textureSize.width; x++) {
+ const texelIdx = x + y * textureSize.height;
+ const weight = sampledTexelWeights.get(texelIdx);
+ if (weight !== undefined) {
+ line += ` ${letter(orderedTexelIndices.length)} │`;
+ orderedTexelIndices.push(texelIdx);
+ } else {
+ line += ' │';
+ }
+ }
+ lines.push(line);
+ }
+ if (y < textureSize.height - 1) {
+ let line = ' ├';
+ for (let x = 0; x < textureSize.width; x++) {
+ line += x === textureSize.width - 1 ? '───┤' : '───┼';
+ }
+ lines.push(line);
+ }
+ }
+ {
+ let line = ' └';
+ for (let x = 0; x < textureSize.width; x++) {
+ line += x === textureSize.width - 1 ? '───┘' : '───┴';
+ }
+ lines.push(line);
+ }
+
+ orderedTexelIndices.forEach((texelIdx, i) => {
+ const weights = sampledTexelWeights.get(texelIdx);
+ const y = Math.floor(texelIdx / textureSize.width);
+ const x = texelIdx - y * textureSize.height;
+ const w = rep.componentOrder.map((c) => `${c}: ${weights[c]?.toFixed(5)}`).join(', ');
+ lines.push(`${letter(i)}: at: [${x}, ${y}], weights: [${w}]`);
+ });
+ return lines;
+}
+
+function layoutTwoColumns(columnA, columnB) {
+ const widthA = Math.max(...columnA.map((l) => l.length));
+ const lines = Math.max(columnA.length, columnB.length);
+ const out = new Array(lines);
+ for (let line = 0; line < lines; line++) {
+ const a = columnA[line] ?? '';
+ const b = columnB[line] ?? '';
+ out[line] = `${a}${' '.repeat(widthA - a.length)} | ${b}`;
+ }
+ return out;
+}
+
+export const kSamplePointMethods = ['texel-centre', 'spiral'];
+
+
+/**
+ * Generates an array of coordinates at which to sample a texture.
+ */
+export function generateSamplePoints(
+n,
+nearest,
+args)
+
+
+
+
+
+
+
+
+
+
+
+
+{
+ const out = [];
+ switch (args.method) {
+ case 'texel-centre':{
+ for (let i = 0; i < n; i++) {
+ const r = hashU32(i);
+ const x = Math.floor(lerp(0, args.textureWidth - 1, (r & 0xffff) / 0xffff)) + 0.5;
+ const y = Math.floor(lerp(0, args.textureHeight - 1, (r >>> 16) / 0xffff)) + 0.5;
+ out.push([x / args.textureWidth, y / args.textureHeight]);
+ }
+ break;
+ }
+ case 'spiral':{
+ for (let i = 0; i < n; i++) {
+ const f = i / (Math.max(n, 2) - 1);
+ const r = (args.radius ?? 1.5) * f;
+ const a = (args.loops ?? 2) * 2 * Math.PI * f;
+ out.push([0.5 + r * Math.cos(a), 0.5 + r * Math.sin(a)]);
+ }
+ break;
+ }
+ }
+ // Samplers across devices use different methods to interpolate.
+ // Quantizing the texture coordinates seems to hit coords that produce
+ // comparable results to our computed results.
+ // Note: This value works with 8x8 textures. Other sizes have not been tested.
+ // Values that worked for reference:
+ // Win 11, NVidia 2070 Super: 16
+ // Linux, AMD Radeon Pro WX 3200: 256
+ // MacOS, M1 Mac: 256
+ const kSubdivisionsPerTexel = 4;
+ const q = [args.textureWidth * kSubdivisionsPerTexel, args.textureHeight * kSubdivisionsPerTexel];
+ return out.map(
+ (c) =>
+ c.map((v, i) => {
+ // Quantize to kSubdivisionsPerPixel
+ const v1 = Math.floor(v * q[i]);
+ // If it's nearest and we're on the edge of a texel then move us off the edge
+ // since the edge could choose one texel or another in nearest mode
+ const v2 = nearest && v1 % kSubdivisionsPerTexel === 0 ? v1 + 1 : v1;
+ // Convert back to texture coords
+ return v2 / q[i];
+ })
+ );
+}
+
+function wgslTypeFor(data, type) {
+ if (data instanceof Array) {
+ switch (data.length) {
+ case 2:
+ return `vec2${type}`;
+ case 3:
+ return `vec3${type}`;
+ }
+ }
+ return '${type}32';
+}
+
+function wgslExpr(data) {
+ if (data instanceof Array) {
+ switch (data.length) {
+ case 2:
+ return `vec2(${data.map((v) => v.toString()).join(', ')})`;
+ case 3:
+ return `vec3(${data.map((v) => v.toString()).join(', ')})`;
+ }
+ }
+ return data.toString();
+}
+
+function binKey(call) {
+ const keys = [];
+ for (const name of kTextureCallArgNames) {
+ const value = call[name];
+ if (value !== undefined) {
+ if (name === 'offset') {
+ // offset must be a constant expression
+ keys.push(`${name}: ${wgslExpr(value)}`);
+ } else {
+ keys.push(`${name}: ${wgslTypeFor(value, call.coordType)}`);
+ }
+ }
+ }
+ return `${call.builtin}(${keys.join(', ')})`;
+}
+
+function buildBinnedCalls(calls) {
+ const args = ['T']; // All texture builtins take the texture as the first argument
+ const fields = [];
+ const data = [];
+
+ const prototype = calls[0];
+ if (prototype.builtin.startsWith('textureSample')) {
+ // textureSample*() builtins take a sampler as the second argument
+ args.push('S');
+ }
+
+ for (const name of kTextureCallArgNames) {
+ const value = prototype[name];
+ if (value !== undefined) {
+ if (name === 'offset') {
+ args.push(`/* offset */ ${wgslExpr(value)}`);
+ } else {
+ args.push(`args.${name}`);
+ fields.push(`@align(16) ${name} : ${wgslTypeFor(value, prototype.coordType)}`);
+ }
+ }
+ }
+
+ for (const call of calls) {
+ for (const name of kTextureCallArgNames) {
+ const value = call[name];
+ assert(
+ prototype[name] === undefined === (value === undefined),
+ 'texture calls are not binned correctly'
+ );
+ if (value !== undefined && name !== 'offset') {
+ const bitcastToU32 = (value) => {
+ if (calls[0].coordType === 'f') {
+ return float32ToUint32(value);
+ }
+ return value;
+ };
+ if (value instanceof Array) {
+ for (const c of value) {
+ data.push(bitcastToU32(c));
+ }
+ } else {
+ data.push(bitcastToU32(value));
+ }
+ // All fields are aligned to 16 bytes.
+ while ((data.length & 3) !== 0) {
+ data.push(0);
+ }
+ }
+ }
+ }
+
+ const expr = `${prototype.builtin}(${args.join(', ')})`;
+
+ return { expr, fields, data };
+}
+
+function binCalls(calls) {
+ const map = new Map(); // key to bin index
+ const bins = [];
+ calls.forEach((call, callIdx) => {
+ const key = binKey(call);
+ const binIdx = map.get(key);
+ if (binIdx === undefined) {
+ map.set(key, bins.length);
+ bins.push([callIdx]);
+ } else {
+ bins[binIdx].push(callIdx);
+ }
+ });
+ return bins;
+}
+
+export function describeTextureCall(call) {
+ const args = ['texture: T'];
+ if (call.builtin.startsWith('textureSample')) {
+ args.push('sampler: S');
+ }
+ for (const name of kTextureCallArgNames) {
+ const value = call[name];
+ if (value !== undefined) {
+ args.push(`${name}: ${wgslExpr(value)}`);
+ }
+ }
+ return `${call.builtin}(${args.join(', ')})`;
+}
+
+/**
+ * Given a list of "calls", each one of which has a texture coordinate,
+ * generates a fragment shader that uses the fragment position as an index
+ * (position.y * 256 + position.x) That index is then used to look up a
+ * coordinate from a storage buffer which is used to call the WGSL texture
+ * function to read/sample the texture, and then write to an rgba32float
+ * texture. We then read the rgba32float texture for the per "call" results.
+ *
+ * Calls are "binned" by call parameters. Each bin has its own structure and
+ * field in the storage buffer. This allows the calls to be non-homogenous and
+ * each have their own data type for coordinates.
+ */
+export async function doTextureCalls(
+device,
+texture,
+sampler,
+calls)
+{
+ let structs = '';
+ let body = '';
+ let dataFields = '';
+ const data = [];
+ let callCount = 0;
+ const binned = binCalls(calls);
+ binned.forEach((binCalls, binIdx) => {
+ const b = buildBinnedCalls(binCalls.map((callIdx) => calls[callIdx]));
+ structs += `struct Args${binIdx} {
+ ${b.fields.join(', \n')}
+}
+`;
+ dataFields += ` args${binIdx} : array<Args${binIdx}, ${binCalls.length}>,
+`;
+ body += `
+ {
+ let is_active = (frag_idx >= ${callCount}) & (frag_idx < ${callCount + binCalls.length});
+ let args = data.args${binIdx}[frag_idx - ${callCount}];
+ let call = ${b.expr};
+ result = select(result, call, is_active);
+ }
+`;
+ callCount += binCalls.length;
+ data.push(...b.data);
+ });
+
+ const dataBuffer = device.createBuffer({
+ size: data.length * 4,
+ usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ });
+ device.queue.writeBuffer(dataBuffer, 0, new Uint32Array(data));
+
+ const rtWidth = 256;
+ const renderTarget = device.createTexture({
+ format: 'rgba32float',
+ size: { width: rtWidth, height: Math.ceil(calls.length / rtWidth) },
+ usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.RENDER_ATTACHMENT
+ });
+
+ const code = `
+${structs}
+
+struct Data {
+${dataFields}
+}
+
+@vertex
+fn vs_main(@builtin(vertex_index) vertex_index : u32) -> @builtin(position) vec4f {
+ let positions = array(
+ vec4f(-1, 1, 0, 1), vec4f( 1, 1, 0, 1),
+ vec4f(-1, -1, 0, 1), vec4f( 1, -1, 0, 1),
+ );
+ return positions[vertex_index];
+}
+
+@group(0) @binding(0) var T : texture_2d<f32>;
+@group(0) @binding(1) var S : sampler;
+@group(0) @binding(2) var<storage> data : Data;
+
+@fragment
+fn fs_main(@builtin(position) frag_pos : vec4f) -> @location(0) vec4f {
+ let frag_idx = u32(frag_pos.x) + u32(frag_pos.y) * ${renderTarget.width};
+ var result : vec4f;
+${body}
+ return result;
+}
+`;
+ const shaderModule = device.createShaderModule({ code });
+
+ const pipeline = device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module: shaderModule, entryPoint: 'vs_main' },
+ fragment: {
+ module: shaderModule,
+ entryPoint: 'fs_main',
+ targets: [{ format: renderTarget.format }]
+ },
+ primitive: { topology: 'triangle-strip', cullMode: 'none' }
+ });
+
+ const gpuTexture = createTextureFromTexelView(device, texture.texels, texture.descriptor);
+ const gpuSampler = device.createSampler(sampler);
+
+ const bindGroup = device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ { binding: 0, resource: gpuTexture.createView() },
+ { binding: 1, resource: gpuSampler },
+ { binding: 2, resource: { buffer: dataBuffer } }]
+
+ });
+
+ const bytesPerRow = align(16 * renderTarget.width, 256);
+ const resultBuffer = device.createBuffer({
+ size: renderTarget.height * bytesPerRow,
+ usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ
+ });
+ const encoder = device.createCommandEncoder();
+
+ const renderPass = encoder.beginRenderPass({
+ colorAttachments: [{ view: renderTarget.createView(), loadOp: 'clear', storeOp: 'store' }]
+ });
+
+ renderPass.setPipeline(pipeline);
+ renderPass.setBindGroup(0, bindGroup);
+ renderPass.draw(4);
+ renderPass.end();
+ encoder.copyTextureToBuffer(
+ { texture: renderTarget },
+ { buffer: resultBuffer, bytesPerRow },
+ { width: renderTarget.width, height: renderTarget.height }
+ );
+ device.queue.submit([encoder.finish()]);
+
+ await resultBuffer.mapAsync(GPUMapMode.READ);
+
+ const view = TexelView.fromTextureDataByReference(
+ renderTarget.format,
+ new Uint8Array(resultBuffer.getMappedRange()),
+ {
+ bytesPerRow,
+ rowsPerImage: renderTarget.height,
+ subrectOrigin: [0, 0, 0],
+ subrectSize: [renderTarget.width, renderTarget.height]
+ }
+ );
+
+ let outIdx = 0;
+ const out = new Array(calls.length);
+ for (const bin of binned) {
+ for (const callIdx of bin) {
+ const x = outIdx % rtWidth;
+ const y = Math.floor(outIdx / rtWidth);
+ out[callIdx] = view.color({ x, y, z: 0 });
+ outIdx++;
+ }
+ }
+
+ renderTarget.destroy();
+ gpuTexture.destroy();
+ resultBuffer.destroy();
+
+ return out;
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.cache.js
new file mode 100644
index 0000000000..a1d6c0d6f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.cache.js
@@ -0,0 +1,27 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]_matCxR_[non_]const
+// abstract_matCxR_non_const is empty and not used
+const cases = ['f32', 'f16', 'abstract'].
+flatMap((trait) =>
+[2, 3, 4].flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`${trait}_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ if (trait === 'abstract' && nonConst) {
+ return [];
+ }
+ return FP[trait].generateMatrixToMatrixCases(
+ FP[trait].sparseMatrixRange(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP[trait].transposeInterval
+ );
+ }
+}))
+)
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('transpose', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.spec.js
index 0e1003b9d6..8e1c70e37f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/transpose.spec.js
@@ -3,80 +3,19 @@
**/export const description = `
Execution tests for the 'transpose' builtin function
-T is AbstractFloat, f32, or f16
+T is abstract-float, f32, or f16
@const transpose(e: matRxC<T> ) -> matCxR<T>
Returns the transpose of e.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32, TypeMat } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import {
- sparseMatrixF16Range,
- sparseMatrixF32Range,
- sparseMatrixF64Range } from
-'../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './transpose.cache.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_matCxR_[non_]const
-const f32_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f32_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.transposeInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_matCxR_[non_]const
-const f16_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f16_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f16.generateMatrixToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.transposeInterval
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: abstract_matCxR
-const abstract_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].map((rows) => ({
- [`abstract_mat${cols}x${rows}`]: () => {
- return FP.abstract.generateMatrixToMatrixCases(
- sparseMatrixF64Range(cols, rows),
- 'finite',
- FP.abstract.transposeInterval
- );
- }
-}))
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('transpose', {
- ...f32_cases,
- ...f16_cases,
- ...abstract_cases
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#matrix-builtin-functions').
desc(`abstract float tests`).
@@ -89,12 +28,12 @@ combine('rows', [2, 3, 4])
fn(async (t) => {
const cols = t.params.cols;
const rows = t.params.rows;
- const cases = await d.get(`abstract_mat${cols}x${rows}`);
+ const cases = await d.get(`abstract_mat${cols}x${rows}_const`);
await run(
t,
- abstractBuiltin('transpose'),
- [TypeMat(cols, rows, TypeAbstractFloat)],
- TypeMat(rows, cols, TypeAbstractFloat),
+ abstractFloatBuiltin('transpose'),
+ [Type.mat(cols, rows, Type.abstractFloat)],
+ Type.mat(rows, cols, Type.abstractFloat),
t.params,
cases
);
@@ -120,8 +59,8 @@ fn(async (t) => {
await run(
t,
builtin('transpose'),
- [TypeMat(cols, rows, TypeF32)],
- TypeMat(rows, cols, TypeF32),
+ [Type.mat(cols, rows, Type.f32)],
+ Type.mat(rows, cols, Type.f32),
t.params,
cases
);
@@ -150,8 +89,8 @@ fn(async (t) => {
await run(
t,
builtin('transpose'),
- [TypeMat(cols, rows, TypeF16)],
- TypeMat(rows, cols, TypeF16),
+ [Type.mat(cols, rows, Type.f16)],
+ Type.mat(rows, cols, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.cache.js
new file mode 100644
index 0000000000..33b77ee5d0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.cache.js
@@ -0,0 +1,17 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { makeCaseCache } from '../../case_cache.js';
+// Cases: [f32|f16|abstract]
+const cases = ['f32', 'f16', 'abstract'].
+map((trait) => ({
+ [`${trait}`]: () => {
+ return FP[trait].generateScalarToIntervalCases(
+ FP[trait].scalarRange(),
+ 'unfiltered',
+ FP[trait].truncInterval
+ );
+ }
+})).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('trunc', cases); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.spec.js
index 042c02875d..b2af7b2e03 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/trunc.spec.js
@@ -3,39 +3,21 @@
**/export const description = `
Execution tests for the 'trunc' builtin function
-S is AbstractFloat, f32, f16
+S is abstract-float, f32, f16
T is S or vecN<S>
@const fn trunc(e: T ) -> T
Returns the nearest whole number whose absolute value is less than or equal to e.
Component-wise when T is a vector.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeAbstractFloat, TypeF16, TypeF32 } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullF32Range, fullF64Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, onlyConstInputSource, run } from '../../expression.js';
-import { abstractBuiltin, builtin } from './builtin.js';
+import { abstractFloatBuiltin, builtin } from './builtin.js';
+import { d } from './trunc.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('trunc', {
- f32: () => {
- return FP.f32.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f32.truncInterval);
- },
- f16: () => {
- return FP.f16.generateScalarToIntervalCases(fullF32Range(), 'unfiltered', FP.f16.truncInterval);
- },
- abstract: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF64Range(),
- 'unfiltered',
- FP.abstract.truncInterval
- );
- }
-});
-
g.test('abstract_float').
specURL('https://www.w3.org/TR/WGSL/#float-builtin-functions').
desc(`abstract float tests`).
@@ -46,7 +28,14 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('abstract');
- await run(t, abstractBuiltin('trunc'), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases);
+ await run(
+ t,
+ abstractFloatBuiltin('trunc'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases
+ );
});
g.test('f32').
@@ -57,7 +46,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, builtin('trunc'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, builtin('trunc'), [Type.f32], Type.f32, t.params, cases);
});
g.test('f16').
@@ -71,5 +60,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, builtin('trunc'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, builtin('trunc'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.cache.js
new file mode 100644
index 0000000000..d6415bb6d6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.cache.js
@@ -0,0 +1,20 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { fullU32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('unpack2x16float', {
+ u32_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'finite',
+ FP.f32.unpack2x16floatInterval
+ );
+ },
+ u32_non_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'unfiltered',
+ FP.f32.unpack2x16floatInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.spec.js
index ca91659889..39e1ca28e5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16float.spec.js
@@ -7,33 +7,14 @@ Component i of the result is the f32 representation of v, where v is the
interpretation of bits 16×i through 16×i+15 of e as an IEEE-754 binary16 value.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeU32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullU32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './unpack2x16float.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unpack2x16float', {
- u32_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'finite',
- FP.f32.unpack2x16floatInterval
- );
- },
- u32_non_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'unfiltered',
- FP.f32.unpack2x16floatInterval
- );
- }
-});
-
g.test('unpack').
specURL('https://www.w3.org/TR/WGSL/#unpack-builtin-functions').
desc(
@@ -44,5 +25,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('unpack2x16float'), [TypeU32], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, builtin('unpack2x16float'), [Type.u32], Type.vec2f, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.cache.js
new file mode 100644
index 0000000000..f29307ae60
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.cache.js
@@ -0,0 +1,20 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { fullU32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('unpack2x16snorm', {
+ u32_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'finite',
+ FP.f32.unpack2x16snormInterval
+ );
+ },
+ u32_non_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'unfiltered',
+ FP.f32.unpack2x16snormInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.spec.js
index d8811b5070..f2b36e2ceb 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16snorm.spec.js
@@ -7,33 +7,14 @@ Component i of the result is max(v ÷ 32767, -1), where v is the interpretation
of bits 16×i through 16×i+15 of e as a twos-complement signed integer.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeU32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullU32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './unpack2x16snorm.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unpack2x16snorm', {
- u32_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'finite',
- FP.f32.unpack2x16snormInterval
- );
- },
- u32_non_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'unfiltered',
- FP.f32.unpack2x16snormInterval
- );
- }
-});
-
g.test('unpack').
specURL('https://www.w3.org/TR/WGSL/#unpack-builtin-functions').
desc(
@@ -44,5 +25,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('unpack2x16snorm'), [TypeU32], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, builtin('unpack2x16snorm'), [Type.u32], Type.vec2f, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.cache.js
new file mode 100644
index 0000000000..ba72ff60a7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.cache.js
@@ -0,0 +1,20 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { fullU32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('unpack2x16unorm', {
+ u32_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'finite',
+ FP.f32.unpack2x16unormInterval
+ );
+ },
+ u32_non_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'unfiltered',
+ FP.f32.unpack2x16unormInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.spec.js
index 3e18938080..37547b1b3c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack2x16unorm.spec.js
@@ -7,33 +7,14 @@ Component i of the result is v ÷ 65535, where v is the interpretation of bits
16×i through 16×i+15 of e as an unsigned integer.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeU32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullU32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './unpack2x16unorm.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unpack2x16unorm', {
- u32_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'finite',
- FP.f32.unpack2x16unormInterval
- );
- },
- u32_non_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'unfiltered',
- FP.f32.unpack2x16unormInterval
- );
- }
-});
-
g.test('unpack').
specURL('https://www.w3.org/TR/WGSL/#unpack-builtin-functions').
desc(
@@ -44,5 +25,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('unpack2x16unorm'), [TypeU32], TypeVec(2, TypeF32), t.params, cases);
+ await run(t, builtin('unpack2x16unorm'), [Type.u32], Type.vec2f, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.cache.js
new file mode 100644
index 0000000000..aa9331fa49
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.cache.js
@@ -0,0 +1,20 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { fullU32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('unpack4x8snorm', {
+ u32_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'finite',
+ FP.f32.unpack4x8snormInterval
+ );
+ },
+ u32_non_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'unfiltered',
+ FP.f32.unpack4x8snormInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.spec.js
index 3684db6474..59043efbfa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8snorm.spec.js
@@ -7,33 +7,14 @@ Component i of the result is max(v ÷ 127, -1), where v is the interpretation of
bits 8×i through 8×i+7 of e as a twos-complement signed integer.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeU32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullU32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './unpack4x8snorm.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unpack4x8snorm', {
- u32_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'finite',
- FP.f32.unpack4x8snormInterval
- );
- },
- u32_non_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'unfiltered',
- FP.f32.unpack4x8snormInterval
- );
- }
-});
-
g.test('unpack').
specURL('https://www.w3.org/TR/WGSL/#unpack-builtin-functions').
desc(
@@ -44,5 +25,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('unpack4x8snorm'), [TypeU32], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, builtin('unpack4x8snorm'), [Type.u32], Type.vec4f, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.cache.js
new file mode 100644
index 0000000000..c012505d3a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.cache.js
@@ -0,0 +1,20 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../../util/floating_point.js';import { fullU32Range } from '../../../../../util/math.js';import { makeCaseCache } from '../../case_cache.js';
+
+export const d = makeCaseCache('unpack4x8unorm', {
+ u32_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'finite',
+ FP.f32.unpack4x8unormInterval
+ );
+ },
+ u32_non_const: () => {
+ return FP.f32.generateU32ToIntervalCases(
+ fullU32Range(),
+ 'unfiltered',
+ FP.f32.unpack4x8unormInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.spec.js
index 80330885ad..755c490c0c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4x8unorm.spec.js
@@ -7,33 +7,14 @@ Component i of the result is v ÷ 255, where v is the interpretation of bits 8×
through 8×i+7 of e as an unsigned integer.
`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../../gpu_test.js';
-import { TypeF32, TypeU32, TypeVec } from '../../../../../util/conversion.js';
-import { FP } from '../../../../../util/floating_point.js';
-import { fullU32Range } from '../../../../../util/math.js';
-import { makeCaseCache } from '../../case_cache.js';
+import { Type } from '../../../../../util/conversion.js';
import { allInputSources, run } from '../../expression.js';
import { builtin } from './builtin.js';
+import { d } from './unpack4x8unorm.cache.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unpack4x8unorm', {
- u32_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'finite',
- FP.f32.unpack4x8unormInterval
- );
- },
- u32_non_const: () => {
- return FP.f32.generateU32ToIntervalCases(
- fullU32Range(),
- 'unfiltered',
- FP.f32.unpack4x8unormInterval
- );
- }
-});
-
g.test('unpack').
specURL('https://www.w3.org/TR/WGSL/#unpack-builtin-functions').
desc(
@@ -44,5 +25,5 @@ desc(
params((u) => u.combine('inputSource', allInputSources)).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, builtin('unpack4x8unorm'), [TypeU32], TypeVec(4, TypeF32), t.params, cases);
+ await run(t, builtin('unpack4x8unorm'), [Type.u32], Type.vec4f, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xI8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xI8.spec.js
new file mode 100644
index 0000000000..30bd91d235
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xI8.spec.js
@@ -0,0 +1,56 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'unpack4xI8' builtin function
+
+@const fn unpack4xI8(e: u32) -> vec4<i32>
+e is interpreted as a vector with four 8-bit signed integer components. Unpack e into a vec4<i32>
+with sign extension.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, i32, Type } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#unpack4xI8-builtin').
+desc(
+ `
+@const fn unpack4xI8(e: u32) -> vec4<i32>
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const unpack4xI8 = (e) => {
+ const result = [0, 0, 0, 0];
+ for (let i = 0; i < 4; ++i) {
+ let intValue = e >> 8 * i & 0xff;
+ if (intValue > 127) {
+ intValue -= 256;
+ }
+ result[i] = intValue;
+ }
+ return result;
+ };
+
+ const testInputs = [
+ 0, 0x01020304, 0xfcfdfeff, 0x040302ff, 0x0403fe01, 0x04fd0201, 0xfc030201, 0xfcfdfe01,
+ 0xfcfd02ff, 0xfc03feff, 0x04fdfeff, 0x0403feff, 0x04fd02ff, 0xfc0302ff, 0x04fdfe01,
+ 0xfc03fe01, 0xfcfd0201, 0x80817f7e];
+
+
+ const makeCase = (e) => {
+ return { input: [u32(e)], expected: toVector(unpack4xI8(e), i32) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('unpack4xI8'), [Type.u32], Type.vec4i, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xU8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xU8.spec.js
new file mode 100644
index 0000000000..9711650ec0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/unpack4xU8.spec.js
@@ -0,0 +1,48 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for the 'unpack4xU8' builtin function
+
+@const fn unpack4xU8(e: u32) -> vec4<u32>
+e is interpreted as a vector with four 8-bit unsigned integer components. Unpack e into a vec4<u32>
+with zero extension.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { u32, toVector, Type } from '../../../../../util/conversion.js';
+
+import { allInputSources, run } from '../../expression.js';
+
+import { builtin } from './builtin.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic').
+specURL('https://www.w3.org/TR/WGSL/#unpack4xU8-builtin').
+desc(
+ `
+@const fn unpack4xU8(e: u32) -> vec4<u32>
+ `
+).
+params((u) => u.combine('inputSource', allInputSources)).
+fn(async (t) => {
+ const cfg = t.params;
+
+ const unpack4xU8 = (e) => {
+ const result = [0, 0, 0, 0];
+ for (let i = 0; i < 4; ++i) {
+ result[i] = e >> 8 * i & 0xff;
+ }
+ return result;
+ };
+
+ const testInputs = [0, 0x08060402, 0xffffffff, 0xfefdfcfb];
+
+ const makeCase = (e) => {
+ return { input: [u32(e)], expected: toVector(unpack4xU8(e), u32) };
+ };
+ const cases = testInputs.flatMap((v) => {
+ return [makeCase(v)];
+ });
+
+ await run(t, builtin('unpack4xU8'), [Type.u32], Type.vec4u, cfg, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad.spec.js
new file mode 100644
index 0000000000..0a08baba0d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/builtin/workgroupUniformLoad.spec.js
@@ -0,0 +1,182 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Executes a control barrier synchronization function that affects memory and atomic operations in the workgroup address space.
+`; // NOTE: The control barrier executed by this builtin is tested in the memory_model tests.
+
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import {
+
+
+ iterRange } from
+'../../../../../../common/util/util.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+import { checkElementsEqualGenerated } from '../../../../../util/check_contents.js';
+
+export const g = makeTestGroup(GPUTest);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+// A list of types configurations used for the workgroup variable.
+const kTypes = {
+ bool: {
+ store_val: `true`,
+ expected: new Uint32Array([1]),
+ host_type: 'u32',
+ to_host: (x) => `u32(${x})`
+ },
+ u32: {
+ store_val: `42`,
+ expected: new Uint32Array([42])
+ },
+ vec4u: {
+ store_val: `vec4u(42, 1, 0xffffffff, 777)`,
+ expected: new Uint32Array([42, 1, 0xffffffff, 777])
+ },
+ mat3x2f: {
+ store_val: `mat3x2(42, 1, 65536, -42, -1, -65536)`,
+ expected: new Float32Array([42, 1, 65536, -42, -1, -65536])
+ },
+ 'array<u32, 4>': {
+ store_val: `array(42, 1, 0xffffffff, 777)`,
+ expected: new Uint32Array([42, 1, 0xffffffff, 777])
+ },
+ SimpleStruct: {
+ decls: 'struct SimpleStruct { a: u32, b: u32, c: u32, d: u32, }',
+ store_val: `SimpleStruct(42, 1, 0xffffffff, 777)`,
+ expected: new Uint32Array([42, 1, 0xffffffff, 777])
+ },
+ ComplexStruct: {
+ decls: `struct Inner { v: vec4u, }
+ struct ComplexStruct {
+ a: array<Inner, 4>,
+ @size(28) b: vec4u,
+ c: u32
+ }
+ const v = vec4(42, 1, 0xffffffff, 777);
+ const rhs = ComplexStruct(
+ array(Inner(v.xyzw), Inner(v.yzwx), Inner(v.zwxy), Inner(v.wxyz)),
+ v.xzxz,
+ 0x12345678,
+ );`,
+ store_val: `rhs`,
+ expected: new Uint32Array([
+ // v.xyzw
+ 42, 1, 0xffffffff, 777,
+ // v.yzwx
+ 1, 0xffffffff, 777, 42,
+ // v.zwxy
+ 0xffffffff, 777, 42, 1,
+ // v.wxyz
+ 777, 42, 1, 0xffffffff,
+ // v.xzxz
+ 42, 0xffffffff, 42, 0xffffffff,
+ // 12 bytes of padding
+ 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0x12345678]
+ )
+ }
+};
+
+g.test('types').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#workgroupUniformLoad-builtin').
+desc(
+ `Test that the result of a workgroupUniformLoad is the value previously stored to the workgroup variable, for a variety of types.
+ `
+).
+params((u) =>
+u.combine('type', keysOf(kTypes)).combine('wgsize', [
+[1, 1],
+[3, 7],
+[1, 128],
+[16, 16]]
+)
+).
+fn((t) => {
+ const type = kTypes[t.params.type];
+ const wgsize_x = t.params.wgsize[0];
+ const wgsize_y = t.params.wgsize[1];
+ const num_invocations = wgsize_x * wgsize_y;
+ const num_words_per_invocation = type.expected.length;
+ const total_host_words = num_invocations * num_words_per_invocation;
+
+ t.skipIf(
+ num_invocations > t.device.limits.maxComputeInvocationsPerWorkgroup,
+ `num_invocations (${num_invocations}) > maxComputeInvocationsPerWorkgroup (${t.device.limits.maxComputeInvocationsPerWorkgroup})`
+ );
+
+ let load = `workgroupUniformLoad(&wgvar)`;
+ if (type.to_host) {
+ load = type.to_host(load);
+ }
+
+ // Construct a shader that stores a value to workgroup variable and then loads it using
+ // workgroupUniformLoad() in every invocation, copying the results back to a storage buffer.
+ const code = `
+ ${type.decls ? type.decls : ''}
+
+ @group(0) @binding(0) var<storage, read_write> buffer : array<${
+ type.host_type ? type.host_type : t.params.type
+ }, ${num_invocations}>;
+
+ var<workgroup> wgvar : ${t.params.type};
+
+ @compute @workgroup_size(${wgsize_x}, ${wgsize_y})
+ fn main(@builtin(local_invocation_index) lid: u32) {
+ if (lid == ${num_invocations - 1}) {
+ wgvar = ${type.store_val};
+ }
+ buffer[lid] = ${load};
+ }
+ `;
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({ code }),
+ entryPoint: 'main'
+ }
+ });
+
+ // Allocate a buffer and fill it with 0xdeadbeef values.
+ const outputBuffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(total_host_words, (_i) => 0xdeadbeef)]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ );
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [{ binding: 0, resource: { buffer: outputBuffer } }]
+ });
+
+ // Run the shader.
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ // Check that the output matches the expected values for each invocation.
+ t.expectGPUBufferValuesPassCheck(
+ outputBuffer,
+ (data) =>
+ checkElementsEqualGenerated(data, (i) => {
+ return Number(type.expected[i % num_words_per_invocation]);
+ }),
+ {
+ type: type.expected.constructor,
+ typedLength: total_host_words
+ }
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/user/ptr_params.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/user/ptr_params.spec.js
new file mode 100644
index 0000000000..af36316c7d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/call/user/ptr_params.spec.js
@@ -0,0 +1,849 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+User function call tests for pointer parameters.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+function wgslTypeDecl(kind) {
+ switch (kind) {
+ case 'vec4i':
+ return `
+alias T = vec4i;
+`;
+ case 'array':
+ return `
+alias T = array<vec4f, 3>;
+`;
+ case 'struct':
+ return `
+struct S {
+a : i32,
+b : u32,
+c : i32,
+d : u32,
+}
+alias T = S;
+`;
+ }
+}
+
+function valuesForType(kind) {
+ switch (kind) {
+ case 'vec4i':
+ return new Uint32Array([1, 2, 3, 4]);
+ case 'array':
+ return new Float32Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]);
+ case 'struct':
+ return new Uint32Array([1, 2, 3, 4]);
+ }
+}
+
+function run(
+t,
+wgsl,
+inputUsage,
+input,
+expected)
+{
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({ code: wgsl }),
+ entryPoint: 'main'
+ }
+ });
+
+ const inputBuffer = t.makeBufferWithContents(
+ input,
+ inputUsage === 'uniform' ? GPUBufferUsage.UNIFORM : GPUBufferUsage.STORAGE
+ );
+
+ const outputBuffer = t.device.createBuffer({
+ size: expected.buffer.byteLength,
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ { binding: 0, resource: { buffer: inputBuffer } },
+ { binding: 1, resource: { buffer: outputBuffer } }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesEqual(outputBuffer, expected);
+}
+
+g.test('read_full_object').
+desc('Test a pointer parameter can be read by a callee function').
+params((u) =>
+u.
+combine('address_space', ['function', 'private', 'workgroup', 'storage', 'uniform']).
+combine('call_indirection', [0, 1, 2]).
+combine('type', ['vec4i', 'array', 'struct'])
+).
+fn((t) => {
+ switch (t.params.address_space) {
+ case 'workgroup':
+ case 'storage':
+ case 'uniform':
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var F : T = input;
+ f0(&F);
+}
+`,
+ private: `
+var<private> P : T;
+@compute @workgroup_size(1)
+fn main() {
+ P = input;
+ f0(&P);
+}
+`,
+ workgroup: `
+var<workgroup> W : T;
+@compute @workgroup_size(1)
+fn main() {
+ W = input;
+ f0(&W);
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ f0(&input);
+}
+`,
+ uniform: `
+@compute @workgroup_size(1)
+fn main() {
+ f0(&input);
+}
+`
+ }[t.params.address_space];
+
+ let call_chain = '';
+ for (let i = 0; i < t.params.call_indirection; i++) {
+ call_chain += `
+fn f${i}(p : ptr<${t.params.address_space}, T>) {
+ f${i + 1}(p);
+}
+`;
+ }
+
+ const inputVar =
+ t.params.address_space === 'uniform' ?
+ `@binding(0) @group(0) var<uniform> input : T;` :
+ `@binding(0) @group(0) var<storage, read> input : T;`;
+
+ const wgsl = `
+${wgslTypeDecl(t.params.type)}
+
+${inputVar}
+
+@binding(1) @group(0) var<storage, read_write> output : T;
+
+fn f${t.params.call_indirection}(p : ptr<${t.params.address_space}, T>) {
+ output = *p;
+}
+
+${call_chain}
+
+${main}
+`;
+
+ const values = valuesForType(t.params.type);
+
+ run(t, wgsl, t.params.address_space === 'uniform' ? 'uniform' : 'storage', values, values);
+});
+
+g.test('read_ptr_to_member').
+desc('Test a pointer parameter to a member of a structure can be read by a callee function').
+params((u) =>
+u.combine('address_space', ['function', 'private', 'workgroup', 'storage', 'uniform'])
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var v : S = input;
+ output = f0(&v);
+}
+`,
+ private: `
+var<private> P : S;
+@compute @workgroup_size(1)
+fn main() {
+ P = input;
+ output = f0(&P);
+}
+`,
+ workgroup: `
+var<workgroup> W : S;
+@compute @workgroup_size(1)
+fn main() {
+ W = input;
+ output = f0(&W);
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ output = f0(&input);
+}
+`,
+ uniform: `
+@compute @workgroup_size(1)
+fn main() {
+ output = f0(&input);
+}
+`
+ }[t.params.address_space];
+
+ const inputVar =
+ t.params.address_space === 'uniform' ?
+ `@binding(0) @group(0) var<uniform> input : S;` :
+ `@binding(0) @group(0) var<storage, read> input : S;`;
+
+ const wgsl = `
+struct S {
+ a : vec4i,
+ b : T,
+ c : vec4i,
+}
+
+struct T {
+ a : vec4i,
+ b : vec4i,
+}
+
+
+${inputVar}
+@binding(1) @group(0) var<storage, read_write> output : T;
+
+fn f2(p : ptr<${t.params.address_space}, T>) -> T {
+ return *p;
+}
+
+fn f1(p : ptr<${t.params.address_space}, S>) -> T {
+ return f2(&(*p).b);
+}
+
+fn f0(p : ptr<${t.params.address_space}, S>) -> T {
+ return f1(p);
+}
+
+${main}
+`;
+
+
+ const input = new Uint32Array([
+ /* S.a */1, 2, 3, 4,
+ /* S.b.a */5, 6, 7, 8,
+ /* S.b.b */9, 10, 11, 12,
+ /* S.c */13, 14, 15, 16]
+ );
+
+
+ const expected = new Uint32Array([
+ /* S.b.a */5, 6, 7, 8,
+ /* S.b.b */9, 10, 11, 12]
+ );
+
+ run(t, wgsl, t.params.address_space === 'uniform' ? 'uniform' : 'storage', input, expected);
+});
+
+g.test('read_ptr_to_element').
+desc('Test a pointer parameter to an element of an array can be read by a callee function').
+params((u) =>
+u.combine('address_space', ['function', 'private', 'workgroup', 'storage', 'uniform'])
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var v : T = input;
+ output = f0(&v);
+}
+`,
+ private: `
+var<private> P : T;
+@compute @workgroup_size(1)
+fn main() {
+ P = input;
+ output = f0(&P);
+}
+`,
+ workgroup: `
+var<workgroup> W : T;
+@compute @workgroup_size(1)
+fn main() {
+ W = input;
+ output = f0(&W);
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ output = f0(&input);
+}
+`,
+ uniform: `
+@compute @workgroup_size(1)
+fn main() {
+ output = f0(&input);
+}
+`
+ }[t.params.address_space];
+
+ const inputVar =
+ t.params.address_space === 'uniform' ?
+ `@binding(0) @group(0) var<uniform> input : T;` :
+ `@binding(0) @group(0) var<storage, read> input : T;`;
+
+ const wgsl = `
+alias T3 = vec4i;
+alias T2 = array<T3, 2>;
+alias T1 = array<T2, 3>;
+alias T = array<T1, 2>;
+
+${inputVar}
+@binding(1) @group(0) var<storage, read_write> output : T3;
+
+fn f2(p : ptr<${t.params.address_space}, T2>) -> T3 {
+ return (*p)[1];
+}
+
+fn f1(p : ptr<${t.params.address_space}, T1>) -> T3 {
+ return f2(&(*p)[0]) + f2(&(*p)[2]);
+}
+
+fn f0(p : ptr<${t.params.address_space}, T>) -> T3 {
+ return f1(&(*p)[0]);
+}
+
+${main}
+`;
+
+
+ const input = new Uint32Array([
+ /* [0][0][0] */1, 2, 3, 4,
+ /* [0][0][1] */5, 6, 7, 8,
+ /* [0][1][0] */9, 10, 11, 12,
+ /* [0][1][1] */13, 14, 15, 16,
+ /* [0][2][0] */17, 18, 19, 20,
+ /* [0][2][1] */21, 22, 23, 24,
+ /* [1][0][0] */25, 26, 27, 28,
+ /* [1][0][1] */29, 30, 31, 32,
+ /* [1][1][0] */33, 34, 35, 36,
+ /* [1][1][1] */37, 38, 39, 40,
+ /* [1][2][0] */41, 42, 43, 44,
+ /* [1][2][1] */45, 46, 47, 48]
+ );
+ const expected = new Uint32Array([/* [0][0][1] + [0][2][1] */5 + 21, 6 + 22, 7 + 23, 8 + 24]);
+
+ run(t, wgsl, t.params.address_space === 'uniform' ? 'uniform' : 'storage', input, expected);
+});
+
+g.test('write_full_object').
+desc('Test a pointer parameter can be written to by a callee function').
+params((u) =>
+u.
+combine('address_space', ['function', 'private', 'workgroup', 'storage']).
+combine('call_indirection', [0, 1, 2]).
+combine('type', ['vec4i', 'array', 'struct'])
+).
+fn((t) => {
+ switch (t.params.address_space) {
+ case 'workgroup':
+ case 'storage':
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
+ const ptr =
+ t.params.address_space === 'storage' ?
+ `ptr<storage, T, read_write>` :
+ `ptr<${t.params.address_space}, T>`;
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var F : T;
+ f0(&F);
+ output = F;
+}
+`,
+ private: `
+var<private> P : T;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&P);
+ output = P;
+}
+`,
+ workgroup: `
+var<workgroup> W : T;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&W);
+ output = W;
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ f0(&output);
+}
+`
+ }[t.params.address_space];
+
+ let call_chain = '';
+ for (let i = 0; i < t.params.call_indirection; i++) {
+ call_chain += `
+fn f${i}(p : ${ptr}) {
+ f${i + 1}(p);
+}
+`;
+ }
+
+ const wgsl = `
+${wgslTypeDecl(t.params.type)}
+
+@binding(0) @group(0) var<uniform> input : T;
+@binding(1) @group(0) var<storage, read_write> output : T;
+
+fn f${t.params.call_indirection}(p : ${ptr}) {
+ *p = input;
+}
+
+${call_chain}
+
+${main}
+`;
+
+ const values = valuesForType(t.params.type);
+
+ run(t, wgsl, 'uniform', values, values);
+});
+
+g.test('write_ptr_to_member').
+desc(
+ 'Test a pointer parameter to a member of a structure can be written to by a callee function'
+).
+params((u) => u.combine('address_space', ['function', 'private', 'workgroup', 'storage'])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var v : S;
+ f0(&v);
+ output = v;
+}
+`,
+ private: `
+var<private> P : S;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&P);
+ output = P;
+}
+`,
+ workgroup: `
+var<workgroup> W : S;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&W);
+ output = W;
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ f1(&output);
+}
+`
+ }[t.params.address_space];
+
+ const ptr = (ty) =>
+ t.params.address_space === 'storage' ?
+ `ptr<storage, ${ty}, read_write>` :
+ `ptr<${t.params.address_space}, ${ty}>`;
+
+ const wgsl = `
+struct S {
+ a : vec4i,
+ b : T,
+ c : vec4i,
+}
+
+struct T {
+ a : vec4i,
+ b : vec4i,
+}
+
+
+@binding(0) @group(0) var<storage> input : T;
+@binding(1) @group(0) var<storage, read_write> output : S;
+
+fn f2(p : ${ptr('T')}) {
+ *p = input;
+}
+
+fn f1(p : ${ptr('S')}) {
+ f2(&(*p).b);
+}
+
+fn f0(p : ${ptr('S')}) {
+ f1(p);
+}
+
+${main}
+`;
+
+
+ const input = new Uint32Array([
+ /* S.b.a */5, 6, 7, 8,
+ /* S.b.b */9, 10, 11, 12]
+ );
+
+
+ const expected = new Uint32Array([
+ /* S.a */0, 0, 0, 0,
+ /* S.b.a */5, 6, 7, 8,
+ /* S.b.b */9, 10, 11, 12,
+ /* S.c */0, 0, 0, 0]
+ );
+
+ run(t, wgsl, 'storage', input, expected);
+});
+
+g.test('write_ptr_to_element').
+desc('Test a pointer parameter to an element of an array can be written to by a callee function').
+params((u) => u.combine('address_space', ['function', 'private', 'workgroup', 'storage'])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const main = {
+ function: `
+@compute @workgroup_size(1)
+fn main() {
+ var v : T;
+ f0(&v);
+ output = v;
+}
+`,
+ private: `
+var<private> P : T;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&P);
+ output = P;
+}
+`,
+ workgroup: `
+var<workgroup> W : T;
+@compute @workgroup_size(1)
+fn main() {
+ f0(&W);
+ output = W;
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ f0(&output);
+}
+`
+ }[t.params.address_space];
+
+ const ptr = (ty) =>
+ t.params.address_space === 'storage' ?
+ `ptr<storage, ${ty}, read_write>` :
+ `ptr<${t.params.address_space}, ${ty}>`;
+
+ const wgsl = `
+alias T3 = vec4i;
+alias T2 = array<T3, 2>;
+alias T1 = array<T2, 3>;
+alias T = array<T1, 2>;
+
+@binding(0) @group(0) var<storage, read> input : T3;
+@binding(1) @group(0) var<storage, read_write> output : T;
+
+fn f2(p : ${ptr('T2')}) {
+ (*p)[1] = input;
+}
+
+fn f1(p : ${ptr('T1')}) {
+ f2(&(*p)[0]);
+ f2(&(*p)[2]);
+}
+
+fn f0(p : ${ptr('T')}) {
+ f1(&(*p)[0]);
+}
+
+${main}
+`;
+
+ const input = new Uint32Array([1, 2, 3, 4]);
+
+
+ const expected = new Uint32Array([
+ /* [0][0][0] */0, 0, 0, 0,
+ /* [0][0][1] */1, 2, 3, 4,
+ /* [0][1][0] */0, 0, 0, 0,
+ /* [0][1][1] */0, 0, 0, 0,
+ /* [0][2][0] */0, 0, 0, 0,
+ /* [0][2][1] */1, 2, 3, 4,
+ /* [1][0][0] */0, 0, 0, 0,
+ /* [1][0][1] */0, 0, 0, 0,
+ /* [1][1][0] */0, 0, 0, 0,
+ /* [1][1][1] */0, 0, 0, 0,
+ /* [1][2][0] */0, 0, 0, 0,
+ /* [1][2][1] */0, 0, 0, 0]
+ );
+
+ run(t, wgsl, 'storage', input, expected);
+});
+
+g.test('atomic_ptr_to_element').
+desc(
+ 'Test a pointer parameter to an atomic<i32> of an array can be read from and written to by a callee function'
+).
+params((u) => u.combine('address_space', ['workgroup', 'storage'])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const main = {
+ workgroup: `
+var<workgroup> W_input : T;
+var<workgroup> W_output : T;
+@compute @workgroup_size(1)
+fn main() {
+ // Copy input -> W_input
+ for (var i = 0; i < 2; i++) {
+ for (var j = 0; j < 3; j++) {
+ for (var k = 0; k < 2; k++) {
+ atomicStore(&W_input[k][j][i], atomicLoad(&input[k][j][i]));
+ }
+ }
+ }
+
+ f0(&W_input, &W_output);
+
+ // Copy W_output -> output
+ for (var i = 0; i < 2; i++) {
+ for (var j = 0; j < 3; j++) {
+ for (var k = 0; k < 2; k++) {
+ atomicStore(&output[k][j][i], atomicLoad(&W_output[k][j][i]));
+ }
+ }
+ }
+}
+`,
+ storage: `
+@compute @workgroup_size(1)
+fn main() {
+ f0(&input, &output);
+}
+`
+ }[t.params.address_space];
+
+ const ptr = (ty) =>
+ t.params.address_space === 'storage' ?
+ `ptr<storage, ${ty}, read_write>` :
+ `ptr<${t.params.address_space}, ${ty}>`;
+
+ const wgsl = `
+alias T3 = atomic<i32>;
+alias T2 = array<T3, 2>;
+alias T1 = array<T2, 3>;
+alias T = array<T1, 2>;
+
+@binding(0) @group(0) var<storage, read_write> input : T;
+@binding(1) @group(0) var<storage, read_write> output : T;
+
+fn f2(in : ${ptr('T2')}, out : ${ptr('T2')}) {
+ let v = atomicLoad(&(*in)[0]);
+ atomicStore(&(*out)[1], v);
+}
+
+fn f1(in : ${ptr('T1')}, out : ${ptr('T1')}) {
+ f2(&(*in)[0], &(*out)[1]);
+ f2(&(*in)[2], &(*out)[0]);
+}
+
+fn f0(in : ${ptr('T')}, out : ${ptr('T')}) {
+ f1(&(*in)[1], &(*out)[0]);
+}
+
+${main}
+`;
+
+
+ const input = new Uint32Array([
+ /* [0][0][0] */1,
+ /* [0][0][1] */2,
+ /* [0][1][0] */3,
+ /* [0][1][1] */4,
+ /* [0][2][0] */5,
+ /* [0][2][1] */6,
+ /* [1][0][0] */7, // -> [0][1][1]
+ /* [1][0][1] */8,
+ /* [1][1][0] */9,
+ /* [1][1][1] */10,
+ /* [1][2][0] */11, // -> [0][0][1]
+ /* [1][2][1] */12]
+ );
+
+
+ const expected = new Uint32Array([
+ /* [0][0][0] */0,
+ /* [0][0][1] */11,
+ /* [0][1][0] */0,
+ /* [0][1][1] */7,
+ /* [0][2][0] */0,
+ /* [0][2][1] */0,
+ /* [1][0][0] */0,
+ /* [1][0][1] */0,
+ /* [1][1][0] */0,
+ /* [1][1][1] */0,
+ /* [1][2][0] */0,
+ /* [1][2][1] */0]
+ );
+
+ run(t, wgsl, 'storage', input, expected);
+});
+
+g.test('array_length').
+desc(
+ 'Test a pointer parameter to a runtime sized array can be used by arrayLength() in a callee function'
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const wgsl = `
+@binding(0) @group(0) var<storage, read> arr : array<u32>;
+@binding(1) @group(0) var<storage, read_write> output : u32;
+
+fn f2(p : ptr<storage, array<u32>, read>) -> u32 {
+ return arrayLength(p);
+}
+
+fn f1(p : ptr<storage, array<u32>, read>) -> u32 {
+ return f2(p);
+}
+
+fn f0(p : ptr<storage, array<u32>, read>) -> u32 {
+ return f1(p);
+}
+
+@compute @workgroup_size(1)
+fn main() {
+ output = f0(&arr);
+}
+`;
+
+ const input = new Uint32Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]);
+ const expected = new Uint32Array([12]);
+
+ run(t, wgsl, 'storage', input, expected);
+});
+
+g.test('mixed_ptr_parameters').
+desc('Test that functions can accept multiple, mixed pointer parameters').
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const wgsl = `
+@binding(0) @group(0) var<uniform> input : array<vec4i, 4>;
+@binding(1) @group(0) var<storage, read_write> output : array<vec4i, 4>;
+
+fn sum(f : ptr<function, i32>,
+ w : ptr<workgroup, atomic<i32>>,
+ p : ptr<private, i32>,
+ u : ptr<uniform, vec4i>) -> vec4i {
+
+ return vec4(*f + atomicLoad(w) + *p) + *u;
+}
+
+struct S {
+ i : i32,
+}
+
+var<private> P0 = S(0);
+var<private> P1 = S(10);
+var<private> P2 = 20;
+var<private> P3 = 30;
+
+struct T {
+ i : atomic<i32>,
+}
+
+var<workgroup> W0 : T;
+var<workgroup> W1 : atomic<i32>;
+var<workgroup> W2 : T;
+var<workgroup> W3 : atomic<i32>;
+
+@compute @workgroup_size(1)
+fn main() {
+ atomicStore(&W0.i, 0);
+ atomicStore(&W1, 100);
+ atomicStore(&W2.i, 200);
+ atomicStore(&W3, 300);
+
+ var F = array(0, 1000, 2000, 3000);
+
+ output[0] = sum(&F[2], &W3, &P1.i, &input[0]); // vec4(2310) + vec4(1, 2, 3, 4)
+ output[1] = sum(&F[1], &W2.i, &P0.i, &input[1]); // vec4(1200) + vec4(4, 3, 2, 1)
+ output[2] = sum(&F[3], &W0.i, &P3, &input[2]); // vec4(3030) + vec4(2, 4, 1, 3)
+ output[3] = sum(&F[2], &W1, &P2, &input[3]); // vec4(2120) + vec4(4, 1, 2, 3)
+}
+`;
+
+
+ const input = new Uint32Array([
+ /* [0] */1, 2, 3, 4,
+ /* [1] */4, 3, 2, 1,
+ /* [2] */2, 4, 1, 3,
+ /* [3] */4, 1, 2, 3]
+ );
+
+
+ const expected = new Uint32Array([
+ /* [0] */2311, 2312, 2313, 2314,
+ /* [1] */1204, 1203, 1202, 1201,
+ /* [2] */3032, 3034, 3031, 3033,
+ /* [3] */2124, 2121, 2122, 2123]
+ );
+
+ run(t, wgsl, 'uniform', input, expected);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case.js
new file mode 100644
index 0000000000..d2d3a019de
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case.js
@@ -0,0 +1,440 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { crc32 } from '../../../../common/util/crc32.js';import { assert } from '../../../../common/util/util.js';
+import {
+ abstractInt,
+ i32,
+
+ u32,
+
+ VectorValue } from
+'../../../util/conversion.js';
+import {
+ cartesianProduct,
+
+ quantizeToI32,
+ quantizeToI64,
+ quantizeToU32 } from
+'../../../util/math.js';
+
+
+
+function notUndefined(value) {
+ return value !== undefined;
+}
+
+/** Case is a single expression test case. */
+
+
+
+
+
+
+
+/**
+ * Filters a given set of Cases down to a target number of cases by
+ * randomly selecting which Cases to return.
+ *
+ * The selection algorithm is deterministic and stable for a case's
+ * inputs.
+ *
+ * This means that if a specific case is selected is not affected by the
+ * presence of other cases in the list, so in theory it is possible to create a
+ * pathological set of cases such that all or not of the cases are selected
+ * in spite of the target number.
+ *
+ * This is a trade-off from guaranteeing stability of the selected cases over
+ * small changes, so the target number of cases is more of a suggestion. It is
+ * still guaranteed that if you set n0 < n1, then the invocation with n0 will
+ * return at most the number of cases that n1 does, it just isn't guaranteed to
+ * be less.
+ *
+ * @param dis is a string provided for additional hashing information to avoid
+ * systemic bias in the selection process across different test
+ * suites. Specifically every Case with the same input values being
+ * included or skipped regardless of the operation that they are
+ * testing. This string should be something like the name of the case
+ * cache the values are for or the operation under test.
+ * @param n number of cases targeted be returned. Expected to be a positive
+ * integer. If equal or greater than the number of cases, then all the
+ * cases are returned. 0 is not allowed, since it is likely a
+ * programming error, because if the caller intentionally wants 0
+ * items, they can just use [].
+ * @param cases list of Cases to be selected from.
+ */
+export function selectNCases(dis, n, cases) {
+ assert(n > 0 && Math.round(n) === n, `n ${n} is expected to be a positive integer`);
+ const count = cases.length;
+ if (n >= count) {
+ return cases;
+ }
+ const dis_crc32 = crc32(dis);
+ return cases.filter(
+ (c) => Math.trunc(n / count * 0xffff_ffff) > (crc32(c.input.toString()) ^ dis_crc32) >>> 0
+ );
+}
+
+/**
+ * A function that performs a binary operation on x and y, and returns the
+ * expected result.
+ */
+
+
+
+
+/**
+ * A function that performs a vector-vector operation on x and y, and returns the
+ * expected result.
+ */
+
+
+
+
+/**
+ * @returns a Case for the input params with op applied
+ * @param scalar scalar param
+ * @param vector vector param (2, 3, or 4 elements)
+ * @param op the op to apply to scalar and vector
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function makeScalarVectorBinaryToVectorCase(
+scalar,
+vector,
+op,
+quantize,
+scalarize)
+{
+ scalar = quantize(scalar);
+ vector = vector.map(quantize);
+ const result = vector.map((v) => op(scalar, v));
+ if (result.includes(undefined)) {
+ return undefined;
+ }
+ return {
+ input: [scalarize(scalar), new VectorValue(vector.map(scalarize))],
+ expected: new VectorValue(result.filter(notUndefined).map(scalarize))
+ };
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param scalars array of scalar params
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param op the op to apply to each pair of scalar and vector
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function generateScalarVectorBinaryToVectorCases(
+scalars,
+vectors,
+op,
+quantize,
+scalarize)
+{
+ return scalars.flatMap((s) => {
+ return vectors.
+ map((v) => {
+ return makeScalarVectorBinaryToVectorCase(s, v, op, quantize, scalarize);
+ }).
+ filter(notUndefined);
+ });
+}
+
+/**
+ * @returns a Case for the input params with op applied
+ * @param vector vector param (2, 3, or 4 elements)
+ * @param scalar scalar param
+ * @param op the op to apply to vector and scalar
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function makeVectorScalarBinaryToVectorCase(
+vector,
+scalar,
+op,
+quantize,
+scalarize)
+{
+ vector = vector.map(quantize);
+ scalar = quantize(scalar);
+ const result = vector.map((v) => op(v, scalar));
+ if (result.includes(undefined)) {
+ return undefined;
+ }
+ return {
+ input: [new VectorValue(vector.map(scalarize)), scalarize(scalar)],
+ expected: new VectorValue(result.filter(notUndefined).map(scalarize))
+ };
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param scalars array of scalar params
+ * @param op the op to apply to each pair of vector and scalar
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function generateVectorScalarBinaryToVectorCases(
+vectors,
+scalars,
+op,
+quantize,
+scalarize)
+{
+ return scalars.flatMap((s) => {
+ return vectors.
+ map((v) => {
+ return makeVectorScalarBinaryToVectorCase(v, s, op, quantize, scalarize);
+ }).
+ filter(notUndefined);
+ });
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param scalars array of scalar params
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param op he op to apply to each pair of scalar and vector
+ */
+export function generateU32VectorBinaryToVectorCases(
+scalars,
+vectors,
+op)
+{
+ return generateScalarVectorBinaryToVectorCases(scalars, vectors, op, quantizeToU32, u32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param scalars array of scalar params
+ * @param op he op to apply to each pair of vector and scalar
+ */
+export function generateVectorU32BinaryToVectorCases(
+vectors,
+scalars,
+op)
+{
+ return generateVectorScalarBinaryToVectorCases(vectors, scalars, op, quantizeToU32, u32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param scalars array of scalar params
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param op he op to apply to each pair of scalar and vector
+ */
+export function generateI32VectorBinaryToVectorCases(
+scalars,
+vectors,
+op)
+{
+ return generateScalarVectorBinaryToVectorCases(scalars, vectors, op, quantizeToI32, i32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param scalars array of scalar params
+ * @param op he op to apply to each pair of vector and scalar
+ */
+export function generateVectorI32BinaryToVectorCases(
+vectors,
+scalars,
+op)
+{
+ return generateVectorScalarBinaryToVectorCases(vectors, scalars, op, quantizeToI32, i32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param scalars array of scalar params
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param op he op to apply to each pair of scalar and vector
+ */
+export function generateI64VectorBinaryToVectorCases(
+scalars,
+vectors,
+op)
+{
+ return generateScalarVectorBinaryToVectorCases(scalars, vectors, op, quantizeToI64, abstractInt);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param vectors array of vector params (2, 3, or 4 elements)
+ * @param scalars array of scalar params
+ * @param op he op to apply to each pair of vector and scalar
+ */
+export function generateVectorI64BinaryToVectorCases(
+vectors,
+scalars,
+op)
+{
+ return generateVectorScalarBinaryToVectorCases(vectors, scalars, op, quantizeToI64, abstractInt);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param param0s array of inputs to try for the first param
+ * @param param1s array of inputs to try for the second param
+ * @param op callback called on each pair of inputs to produce each case
+ * @param quantize function to quantize all values
+ * @param scalarize function to convert numbers to Scalars
+ */
+function generateScalarBinaryToScalarCases(
+param0s,
+param1s,
+op,
+quantize,
+scalarize)
+{
+ param0s = param0s.map(quantize);
+ param1s = param1s.map(quantize);
+ return cartesianProduct(param0s, param1s).reduce((cases, e) => {
+ const expected = op(e[0], e[1]);
+ if (expected !== undefined) {
+ cases.push({ input: [scalarize(e[0]), scalarize(e[1])], expected: scalarize(expected) });
+ }
+ return cases;
+ }, new Array());
+}
+
+/**
+ * @returns an array of Cases for operations over a range of inputs
+ * @param param0s array of inputs to try for the first param
+ * @param param1s array of inputs to try for the second param
+ * @param op callback called on each pair of inputs to produce each case
+ */
+export function generateBinaryToI32Cases(
+param0s,
+param1s,
+op)
+{
+ return generateScalarBinaryToScalarCases(param0s, param1s, op, quantizeToI32, i32);
+}
+
+/**
+ * @returns an array of Cases for operations over a range of inputs
+ * @param param0s array of inputs to try for the first param
+ * @param param1s array of inputs to try for the second param
+ * @param op callback called on each pair of inputs to produce each case
+ */
+export function generateBinaryToU32Cases(
+param0s,
+param1s,
+op)
+{
+ return generateScalarBinaryToScalarCases(param0s, param1s, op, quantizeToU32, u32);
+}
+
+/**
+ * @returns an array of Cases for operations over a range of inputs
+ * @param param0s array of inputs to try for the first param
+ * @param param1s array of inputs to try for the second param
+ * @param op callback called on each pair of inputs to produce each case
+ */
+export function generateBinaryToI64Cases(
+param0s,
+param1s,
+op)
+{
+ return generateScalarBinaryToScalarCases(param0s, param1s, op, quantizeToI64, abstractInt);
+}
+
+/**
+ * @returns a Case for the input params with op applied
+ * @param param0 vector param (2, 3, or 4 elements) for the first param
+ * @param param1 vector param (2, 3, or 4 elements) for the second param
+ * @param op the op to apply to each pair of vectors
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function makeVectorVectorToScalarCase(
+param0,
+param1,
+op,
+quantize,
+scalarize)
+{
+ const param0_quantized = param0.map(quantize);
+ const param1_quantized = param1.map(quantize);
+ const result = op(param0_quantized, param1_quantized);
+ if (result === undefined) return undefined;
+
+ return {
+ input: [
+ new VectorValue(param0_quantized.map(scalarize)),
+ new VectorValue(param1_quantized.map(scalarize))],
+
+ expected: scalarize(result)
+ };
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param param0s array of vector params (2, 3, or 4 elements) for the first param
+ * @param param1s array of vector params (2, 3, or 4 elements) for the second param
+ * @param op the op to apply to each pair of vectors
+ * @param quantize function to quantize all values in vectors and scalars
+ * @param scalarize function to convert numbers to Scalars
+ */
+function generateVectorVectorToScalarCases(
+param0s,
+param1s,
+op,
+quantize,
+scalarize)
+{
+ return param0s.flatMap((param0) => {
+ return param1s.
+ map((param1) => {
+ return makeVectorVectorToScalarCase(param0, param1, op, quantize, scalarize);
+ }).
+ filter(notUndefined);
+ });
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param param0s array of vector params (2, 3, or 4 elements) for the first param
+ * @param param1s array of vector params (2, 3, or 4 elements) for the second param
+ * @param op the op to apply to each pair of vectors
+ */
+export function generateVectorVectorToI32Cases(
+param0s,
+param1s,
+op)
+{
+ return generateVectorVectorToScalarCases(param0s, param1s, op, quantizeToI32, i32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param param0s array of vector params (2, 3, or 4 elements) for the first param
+ * @param param1s array of vector params (2, 3, or 4 elements) for the second param
+ * @param op the op to apply to each pair of vectors
+ */
+export function generateVectorVectorToU32Cases(
+param0s,
+param1s,
+op)
+{
+ return generateVectorVectorToScalarCases(param0s, param1s, op, quantizeToU32, u32);
+}
+
+/**
+ * @returns array of Case for the input params with op applied
+ * @param param0s array of vector params (2, 3, or 4 elements) for the first param
+ * @param param1s array of vector params (2, 3, or 4 elements) for the second param
+ * @param op the op to apply to each pair of vectors
+ */
+export function generateVectorVectorToI64Cases(
+param0s,
+param1s,
+op)
+{
+ return generateVectorVectorToScalarCases(param0s, param1s, op, quantizeToI64, abstractInt);
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case_cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case_cache.js
index 6b3cb1a4c2..41857ad8fa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case_cache.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/case_cache.js
@@ -3,21 +3,22 @@
**/import { dataCache } from '../../../../common/framework/data_cache.js';import { unreachable } from '../../../../common/util/util.js';import BinaryStream from '../../../util/binary_stream.js';
import { deserializeComparator, serializeComparator } from '../../../util/compare.js';
import {
- Scalar,
- Vector,
- serializeValue,
- deserializeValue,
- Matrix } from
+ MatrixValue,
+ VectorValue,
+ deserializeValue,
+ isScalarValue,
+ serializeValue } from
'../../../util/conversion.js';
import {
- deserializeFPInterval,
FPInterval,
+ deserializeFPInterval,
serializeFPInterval } from
'../../../util/floating_point.js';
import { flatten2DArray, unflatten2DArray } from '../../../util/math.js';
-import { isComparator } from './expression.js';var
+
+import { isComparator } from './expectation.js';var
SerializedExpectationKind = /*#__PURE__*/function (SerializedExpectationKind) {SerializedExpectationKind[SerializedExpectationKind["Value"] = 0] = "Value";SerializedExpectationKind[SerializedExpectationKind["Interval"] = 1] = "Interval";SerializedExpectationKind[SerializedExpectationKind["Interval1DArray"] = 2] = "Interval1DArray";SerializedExpectationKind[SerializedExpectationKind["Interval2DArray"] = 3] = "Interval2DArray";SerializedExpectationKind[SerializedExpectationKind["Array"] = 4] = "Array";SerializedExpectationKind[SerializedExpectationKind["Comparator"] = 5] = "Comparator";return SerializedExpectationKind;}(SerializedExpectationKind || {});
@@ -30,7 +31,7 @@ SerializedExpectationKind = /*#__PURE__*/function (SerializedExpectationKind) {S
/** serializeExpectation() serializes an Expectation to a BinaryStream */
export function serializeExpectation(s, e) {
- if (e instanceof Scalar || e instanceof Vector || e instanceof Matrix) {
+ if (isScalarValue(e) || e instanceof VectorValue || e instanceof MatrixValue) {
s.writeU8(SerializedExpectationKind.Value);
serializeValue(s, e);
return;
@@ -122,11 +123,11 @@ export function deserializeCase(s) {
return { input, expected };
}
-/** CaseListBuilder is a function that builds a CaseList */
+/** CaseListBuilder is a function that builds a list of cases, Case[] */
/**
- * CaseCache is a cache of CaseList.
+ * CaseCache is a cache of Case[].
* CaseCache implements the Cacheable interface, so the cases can be pre-built
* and stored in the data cache, reducing computation costs at CTS runtime.
*/
@@ -137,7 +138,7 @@ export class CaseCache {
* @param builders a Record of case-list name to case-list builder.
*/
constructor(name, builders) {
- this.path = `webgpu/shader/execution/case-cache/${name}.bin`;
+ this.path = `webgpu/shader/execution/${name}.bin`;
this.builders = builders;
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/non_zero.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/non_zero.spec.js
new file mode 100644
index 0000000000..83da4e63c0
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/non_zero.spec.js
@@ -0,0 +1,797 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for value constructors from components
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import {
+ ArrayValue,
+
+
+ Type,
+
+
+
+ scalarTypeOf,
+ vec2,
+ vec3 } from
+'../../../../util/conversion.js';
+import { FP } from '../../../../util/floating_point.js';
+import { allInputSources, basicExpressionBuilder, run } from '../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/** @returns true if 'v' is 'min' or 'max' */
+function isMinOrMax(v) {
+ return v === 'min' || v === 'max';
+}
+
+/** A list of concrete types to test for the given abstract-numeric type */
+const kConcreteTypesForAbstractType = {
+ 'abstract-float': ['f32', 'f16'],
+ 'abstract-int': ['f32', 'f16', 'i32', 'u32'],
+ 'vec3<abstract-int>': ['vec3f', 'vec3h', 'vec3i', 'vec3u'],
+ 'vec4<abstract-float>': ['vec4f', 'vec4h'],
+ 'mat2x3<abstract-float>': ['mat2x3f', 'mat2x3h']
+};
+
+/**
+ * @returns the lowest finite value for 'kind' if 'v' is 'min',
+ * the highest finite value for 'kind' if 'v' is 'max',
+ * otherwise returns 'v'
+ */
+function valueFor(v, kind) {
+ if (!isMinOrMax(v)) {
+ return v;
+ }
+ switch (kind) {
+ case 'bool':
+ return v === 'min' ? 0 : 1;
+ case 'i32':
+ return v === 'min' ? -0x80000000 : 0x7fffffff;
+ case 'u32':
+ return v === 'min' ? 0 : 0xffffffff;
+ case 'f32':
+ return v === 'min' ? FP['f32'].constants().negative.min : FP['f32'].constants().positive.max;
+ case 'f16':
+ return v === 'min' ? FP['f16'].constants().negative.min : FP['f16'].constants().positive.max;
+ }
+}
+
+g.test('scalar_identity').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a scalar constructed from a value of the same type produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('value', ['min', 'max', 1, 2, 5, 100])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+ t.skipIf(t.params.type === 'bool' && !isMinOrMax(t.params.value));
+}).
+fn(async (t) => {
+ const type = Type[t.params.type];
+ const value = valueFor(t.params.value, t.params.type);
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${type}(${ops[0]})`),
+ [type],
+ type,
+ t.params,
+ [{ input: [type.create(value)], expected: type.create(value) }]
+ );
+});
+
+g.test('vector_identity').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a vector constructed from a value of the same type produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('width', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elements = [];
+ const fn = t.params.infer_type ? `vec${t.params.width}` : `${vectorType}`;
+ for (let i = 0; i < t.params.width; i++) {
+ if (t.params.type === 'bool') {
+ elements.push(i & 1);
+ } else {
+ elements.push((i + 1) * 10);
+ }
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops[0]})`),
+ [vectorType],
+ vectorType,
+ t.params,
+ [
+ {
+ input: vectorType.create(elements),
+ expected: vectorType.create(elements)
+ }]
+
+ );
+});
+
+g.test('concrete_vector_splat').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a vector constructed from a single concrete scalar produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('value', ['min', 'max', 1, 2, 5, 100]).
+combine('width', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+ t.skipIf(t.params.type === 'bool' && !isMinOrMax(t.params.value));
+}).
+fn(async (t) => {
+ const value = valueFor(t.params.value, t.params.type);
+ const elementType = Type[t.params.type];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const fn = t.params.infer_type ? `vec${t.params.width}` : `${vectorType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops[0]})`),
+ [elementType],
+ vectorType,
+ t.params,
+ [{ input: [elementType.create(value)], expected: vectorType.create(value) }]
+ );
+});
+
+g.test('abstract_vector_splat').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a vector constructed from a single abstract scalar produces the expected value`).
+params((u) =>
+u.
+combine('abstract_type', ['abstract-int', 'abstract-float']).
+expand('concrete_type', (t) => kConcreteTypesForAbstractType[t.abstract_type]).
+combine('value', [1, 2, 5, 100]).
+combine('width', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.concrete_type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const suffix = t.params.abstract_type === 'abstract-float' ? '.0' : '';
+ const concreteElementType = Type[t.params.concrete_type];
+ const concreteVectorType = Type.vec(t.params.width, concreteElementType);
+ const fn = `vec${t.params.width}`;
+ await run(
+ t,
+ basicExpressionBuilder((_) => `${fn}(${t.params.value * 0x100000000}${suffix}) / 0x100000000`),
+ [],
+ concreteVectorType,
+ { inputSource: 'const' },
+ [{ input: [], expected: concreteVectorType.create(t.params.value) }]
+ );
+});
+
+g.test('concrete_vector_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a vector constructed from concrete element values produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('width', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const vectorType = Type.vec(t.params.width, elementType);
+ const elements = [];
+ const fn = t.params.infer_type ? `vec${t.params.width}` : `${vectorType}`;
+ for (let i = 0; i < t.params.width; i++) {
+ if (t.params.type === 'bool') {
+ elements.push(i & 1);
+ } else {
+ elements.push((i + 1) * 10);
+ }
+ }
+
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops.join(', ')})`),
+ elements.map((e) => elementType),
+ vectorType,
+ t.params,
+ [
+ {
+ input: elements.map((v) => elementType.create(v)),
+ expected: vectorType.create(elements)
+ }]
+
+ );
+});
+
+g.test('abstract_vector_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a vector constructed from abstract element values produces the expected value`).
+params((u) =>
+u.
+combine('abstract_type', ['abstract-int', 'abstract-float']).
+expand('concrete_type', (t) => kConcreteTypesForAbstractType[t.abstract_type]).
+combine('width', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.concrete_type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const suffix = t.params.abstract_type === 'abstract-float' ? '.0' : '';
+ const concreteElementType = Type[t.params.concrete_type];
+ const concreteVectorType = Type.vec(t.params.width, concreteElementType);
+ const fn = `vec${t.params.width}`;
+ const elements = [];
+ for (let i = 0; i < t.params.width; i++) {
+ elements.push((i + 1) * 10);
+ }
+ await run(
+ t,
+ basicExpressionBuilder(
+ (_) => `${fn}(${elements.map((v) => `${v * 0x100000000}${suffix}`).join(', ')}) / 0x100000000`
+ ),
+ [],
+ concreteVectorType,
+ { inputSource: 'const' },
+ [{ input: [], expected: concreteVectorType.create(elements) }]
+ );
+});
+
+const kMixSignatures = [
+'2s', // [vec2, scalar]
+'s2', // [scalar, vec2]
+'2ss', // [vec2, scalar, scalar]
+'s2s', // [scalar, vec2, scalar]
+'ss2', // [scalar, scalar, vec2 ]
+'22', // [vec2, vec2]
+'3s', // [vec3, scalar]
+'s3' // [scalar, vec3]
+];
+
+g.test('concrete_vector_mix').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `Test that a vector constructed from a mix of concrete element values and sub-vectors produces the expected value`
+).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('signature', kMixSignatures).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ let width = 0;
+ const elementValue = (i) => t.params.type === 'bool' ? i & 1 : (i + 1) * 10;
+ const elements = [];
+ const nextValue = () => {
+ const value = elementValue(width++);
+ elements.push(value);
+ return elementType.create(value);
+ };
+ const args = [];
+ for (const c of t.params.signature) {
+ switch (c) {
+ case '2':
+ args.push(vec2(nextValue(), nextValue()));
+ break;
+ case '3':
+ args.push(vec3(nextValue(), nextValue(), nextValue()));
+ break;
+ case 's':
+ args.push(nextValue());
+ break;
+ }
+ }
+ const vectorType = Type.vec(width, elementType);
+ const fn = t.params.infer_type ? `vec${width}` : `${vectorType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops.join(', ')})`),
+ args.map((e) => e.type),
+ vectorType,
+ t.params,
+ [
+ {
+ input: args,
+ expected: vectorType.create(elements)
+ }]
+
+ );
+});
+
+g.test('abstract_vector_mix').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `Test that a vector constructed from a mix of abstract element values and sub-vectors produces the expected value`
+).
+params((u) =>
+u.
+combine('abstract_type', ['abstract-int', 'abstract-float']).
+expand('concrete_type', (t) => kConcreteTypesForAbstractType[t.abstract_type]).
+combine('signature', kMixSignatures)
+).
+beforeAllSubcases((t) => {
+ if (t.params.concrete_type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ let width = 0;
+ const suffix = t.params.abstract_type === 'abstract-float' ? '.0' : '';
+ const concreteElementType = Type[t.params.concrete_type];
+ const elementValue = (i) => (i + 1) * 10;
+ const elements = [];
+ const nextValue = () => {
+ const value = elementValue(width++);
+ elements.push(value);
+ return `${value * 0x100000000}${suffix}`;
+ };
+ const args = [];
+ for (const c of t.params.signature) {
+ switch (c) {
+ case '2':
+ args.push(`vec2(${nextValue()}, ${nextValue()})`);
+ break;
+ case '3':
+ args.push(`vec3(${nextValue()}, ${nextValue()}, ${nextValue()})`);
+ break;
+ case 's':
+ args.push(`${nextValue()}`);
+ break;
+ }
+ }
+ const concreteVectorType = Type.vec(width, concreteElementType);
+ const fn = `vec${width}`;
+ await run(
+ t,
+ basicExpressionBuilder((_) => `${fn}(${args.join(', ')}) / 0x100000000`),
+ [],
+ concreteVectorType,
+ { inputSource: 'const' },
+ [
+ {
+ input: [],
+ expected: concreteVectorType.create(elements)
+ }]
+
+ );
+});
+
+g.test('matrix_identity').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a matrix constructed from a value of the same type produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, elementType);
+ const elements = [];
+ for (let column = 0; column < t.params.columns; column++) {
+ for (let row = 0; row < t.params.rows; row++) {
+ elements.push((column + 1) * 10 + (row + 1));
+ }
+ }
+ const fn = t.params.infer_type ? `mat${t.params.columns}x${t.params.rows}` : `${matrixType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops[0]})`),
+ [matrixType],
+ matrixType,
+ t.params,
+ [
+ {
+ input: matrixType.create(elements),
+ expected: matrixType.create(elements)
+ }]
+
+ );
+});
+
+g.test('concrete_matrix_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a matrix constructed from concrete element values produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const matrixType = Type.mat(t.params.columns, t.params.rows, elementType);
+ const elements = [];
+ for (let column = 0; column < t.params.columns; column++) {
+ for (let row = 0; row < t.params.rows; row++) {
+ elements.push((column + 1) * 10 + (row + 1));
+ }
+ }
+ const fn = t.params.infer_type ? `mat${t.params.columns}x${t.params.rows}` : `${matrixType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops.join(', ')})`),
+ elements.map((e) => elementType),
+ matrixType,
+ t.params,
+ [
+ {
+ input: elements.map((e) => elementType.create(e)),
+ expected: matrixType.create(elements)
+ }]
+
+ );
+});
+
+g.test('abstract_matrix_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a matrix constructed from concrete element values produces the expected value`).
+params((u) =>
+u.
+combine('concrete_type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.concrete_type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const concreteElementType = Type[t.params.concrete_type];
+ const concreteMatrixType = Type.mat(t.params.columns, t.params.rows, concreteElementType);
+ const elements = [];
+ for (let column = 0; column < t.params.columns; column++) {
+ for (let row = 0; row < t.params.rows; row++) {
+ elements.push((column + 1) * 10 + (row + 1));
+ }
+ }
+ const fn = `mat${t.params.columns}x${t.params.rows}`;
+ await run(
+ t,
+ basicExpressionBuilder(
+ (_) => `${fn}(${elements.map((v) => `${v * 0x100000000}.0`).join(', ')}) * (1.0 / 0x100000000)`
+ ),
+ [],
+ concreteMatrixType,
+ { inputSource: 'const' },
+ [
+ {
+ input: [],
+ expected: concreteMatrixType.create(elements)
+ }]
+
+ );
+});
+
+g.test('concrete_matrix_column_vectors').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a matrix constructed from concrete column vectors produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const columnType = Type.vec(t.params.rows, elementType);
+ const matrixType = Type.mat(t.params.columns, t.params.rows, elementType);
+ const elements = [];
+ const columnVectors = [];
+ for (let column = 0; column < t.params.columns; column++) {
+ const columnElements = [];
+ for (let row = 0; row < t.params.rows; row++) {
+ const v = (column + 1) * 10 + (row + 1);
+ elements.push(v);
+ columnElements.push(v);
+ }
+ columnVectors.push(columnType.create(columnElements));
+ }
+ const fn = t.params.infer_type ? `mat${t.params.columns}x${t.params.rows}` : `${matrixType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops.join(', ')})`),
+ columnVectors.map((v) => v.type),
+ matrixType,
+ t.params,
+ [
+ {
+ input: columnVectors,
+ expected: matrixType.create(elements)
+ }]
+
+ );
+});
+
+g.test('abstract_matrix_column_vectors').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that a matrix constructed from abstract column vectors produces the expected value`).
+params((u) =>
+u.
+combine('concrete_type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.concrete_type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const concreteElementType = Type[t.params.concrete_type];
+ const concreteMatrixType = Type.mat(t.params.columns, t.params.rows, concreteElementType);
+ const elements = [];
+ const columnVectors = [];
+ for (let column = 0; column < t.params.columns; column++) {
+ const columnElements = [];
+ for (let row = 0; row < t.params.rows; row++) {
+ const v = (column + 1) * 10 + (row + 1);
+ elements.push(v);
+ columnElements.push(`${v * 0x100000000}`);
+ }
+ columnVectors.push(`vec${t.params.rows}(${columnElements.join(', ')})`);
+ }
+ const fn = `mat${t.params.columns}x${t.params.rows}`;
+ await run(
+ t,
+ basicExpressionBuilder((_) => `${fn}(${columnVectors.join(', ')}) * (1.0 / 0x100000000)`),
+ [],
+ concreteMatrixType,
+ { inputSource: 'const' },
+ [
+ {
+ input: [],
+ expected: concreteMatrixType.create(elements)
+ }]
+
+ );
+});
+
+g.test('concrete_array_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that an array constructed from concrete element values produces the expected value`).
+params((u) =>
+u.
+combine('inputSource', allInputSources).
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16', 'vec3f', 'vec4i']).
+combine('length', [1, 5, 10]).
+combine('infer_type', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const elementType = Type[t.params.type];
+ const arrayType = Type.array(t.params.length, elementType);
+ const elements = [];
+ for (let i = 0; i < t.params.length; i++) {
+ elements.push((i + 1) * 10);
+ }
+ const fn = t.params.infer_type ? `array` : `${arrayType}`;
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${fn}(${ops.join(', ')})`),
+ elements.map((e) => elementType),
+ arrayType,
+ t.params,
+ [
+ {
+ input: elements.map((e) => elementType.create(e)),
+ expected: arrayType.create(elements)
+ }]
+
+ );
+});
+
+g.test('abstract_array_elements').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that an array constructed from element values produces the expected value`).
+params((u) =>
+u.
+combine('abstract_type', [
+'abstract-int',
+'abstract-float',
+'vec3<abstract-int>',
+'vec4<abstract-float>',
+'mat2x3<abstract-float>']
+).
+expand('concrete_type', (t) => kConcreteTypesForAbstractType[t.abstract_type]).
+combine('length', [1, 5, 10])
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(Type[t.params.concrete_type]).kind === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const count = t.params.length;
+ const concreteElementType = Type[t.params.concrete_type];
+ const concreteArrayType = Type.array(count, concreteElementType);
+ const elements = [];
+ let i = 0;
+ const nextValue = () => ++i * 10;
+ for (let i = 0; i < count; i++) {
+ switch (t.params.abstract_type) {
+ case 'abstract-int':{
+ const value = nextValue();
+ elements.push({ args: `${value}`, value: concreteElementType.create(value) });
+ break;
+ }
+ case 'abstract-float':{
+ const value = nextValue();
+ elements.push({ args: `${value}.0`, value: concreteElementType.create(value) });
+ break;
+ }
+ case 'vec3<abstract-int>':{
+ const x = nextValue();
+ const y = nextValue();
+ const z = nextValue();
+ elements.push({
+ args: `vec3(${x}, ${y}, ${z})`,
+ value: concreteElementType.create([x, y, z])
+ });
+ break;
+ }
+ case 'vec4<abstract-float>':{
+ const x = nextValue();
+ const y = nextValue();
+ const z = nextValue();
+ const w = nextValue();
+ elements.push({
+ args: `vec4(${x}.0, ${y}.0, ${z}.0, ${w}.0)`,
+ value: concreteElementType.create([x, y, z, w])
+ });
+ break;
+ }
+ case 'mat2x3<abstract-float>':{
+ const e00 = nextValue();
+ const e01 = nextValue();
+ const e02 = nextValue();
+ const e10 = nextValue();
+ const e11 = nextValue();
+ const e12 = nextValue();
+ elements.push({
+ args: `mat2x3(vec3(${e00}.0, ${e01}.0, ${e02}.0), vec3(${e10}.0, ${e11}.0, ${e12}.0))`,
+ value: concreteElementType.create([e00, e01, e02, e10, e11, e12])
+ });
+ break;
+ }
+ }
+ }
+ const fn = `array`;
+ await run(
+ t,
+ basicExpressionBuilder((_) => `${fn}(${elements.map((e) => e.args).join(', ')})`),
+ [],
+ concreteArrayType,
+ { inputSource: 'const' },
+ [
+ {
+ input: [],
+ expected: new ArrayValue(elements.map((e) => e.value))
+ }]
+
+ );
+});
+
+g.test('structure').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(`Test that an structure constructed from element values produces the expected value`).
+params((u) =>
+u.
+combine('member_types', [
+['bool'],
+['u32'],
+['vec3f'],
+['i32', 'u32'],
+['i32', 'f16', 'vec4i', 'mat3x2f'],
+['bool', 'u32', 'f16', 'vec3f', 'vec2i'],
+['i32', 'u32', 'f32', 'f16', 'vec3f', 'vec4i']]
+).
+combine('nested', [false, true]).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const values = t.params.member_types.map((ty, i) => Type[ty].create(i));
+
+ const builder = basicExpressionBuilder((ops) =>
+ t.params.nested ?
+ `OuterStruct(10, MyStruct(${ops.join(', ')}), 20).inner.member_${t.params.member_index}` :
+ `MyStruct(${ops.join(', ')}).member_${t.params.member_index}`
+ );
+ await run(
+ t,
+ (parameterTypes, resultType, cases, inputSource) => {
+ return `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+${builder(parameterTypes, resultType, cases, inputSource)}
+
+struct MyStruct {
+${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+struct OuterStruct {
+ pre : i32,
+ inner : MyStruct,
+ post : i32,
+};
+`;
+ },
+ t.params.member_types.map((ty) => Type[ty]),
+ memberType,
+ { inputSource: 'const' },
+ [{ input: values, expected: values[t.params.member_index] }]
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/zero_value.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/zero_value.spec.js
new file mode 100644
index 0000000000..5879f4f29d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/constructor/zero_value.spec.js
@@ -0,0 +1,162 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for zero value constructors
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { basicExpressionBuilder, run } from '../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('scalar').
+specURL('https://www.w3.org/TR/WGSL/#zero-value-builtin-function').
+desc(`Test that a zero value scalar constructor produces the expected zero value`).
+params((u) => u.combine('type', ['bool', 'i32', 'u32', 'f32', 'f16'])).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const type = Type[t.params.type];
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${type}()`),
+ [],
+ type,
+ { inputSource: 'const' },
+ [{ input: [], expected: type.create(0) }]
+ );
+});
+
+g.test('vector').
+specURL('https://www.w3.org/TR/WGSL/#zero-value-builtin-function').
+desc(`Test that a zero value vector constructor produces the expected zero value`).
+params((u) =>
+u.
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16']).
+combine('width', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const type = Type.vec(t.params.width, Type[t.params.type]);
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${type}()`),
+ [],
+ type,
+ { inputSource: 'const' },
+ [{ input: [], expected: type.create(0) }]
+ );
+});
+
+g.test('matrix').
+specURL('https://www.w3.org/TR/WGSL/#zero-value-builtin-function').
+desc(`Test that a zero value matrix constructor produces the expected zero value`).
+params((u) =>
+u.
+combine('type', ['f32', 'f16']).
+combine('columns', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const type = Type.mat(t.params.columns, t.params.rows, Type[t.params.type]);
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${type}()`),
+ [],
+ type,
+ { inputSource: 'const' },
+ [{ input: [], expected: type.create(0) }]
+ );
+});
+
+g.test('array').
+specURL('https://www.w3.org/TR/WGSL/#zero-value-builtin-function').
+desc(`Test that a zero value matrix constructor produces the expected zero value`).
+params((u) =>
+u.
+combine('type', ['bool', 'i32', 'u32', 'f32', 'f16', 'vec3f', 'vec4i']).
+combine('length', [1, 5, 10])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const type = Type.array(t.params.length, Type[t.params.type]);
+ await run(
+ t,
+ basicExpressionBuilder((ops) => `${type}()`),
+ [],
+ type,
+ { inputSource: 'const' },
+ [{ input: [], expected: type.create(0) }]
+ );
+});
+
+g.test('structure').
+specURL('https://www.w3.org/TR/WGSL/#zero-value-builtin-function').
+desc(`Test that an structure constructed from element values produces the expected value`).
+params((u) =>
+u.
+combine('member_types', [
+['bool'],
+['u32'],
+['vec3f'],
+['i32', 'u32'],
+['i32', 'f16', 'vec4i', 'mat3x2f'],
+['bool', 'u32', 'f16', 'vec3f', 'vec2i'],
+['i32', 'u32', 'f32', 'f16', 'vec3f', 'vec4i']]
+).
+combine('nested', [false, true]).
+beginSubcases().
+expand('member_index', (t) => t.member_types.map((_, i) => i))
+).
+beforeAllSubcases((t) => {
+ if (t.params.member_types.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn(async (t) => {
+ const memberType = Type[t.params.member_types[t.params.member_index]];
+ const builder = basicExpressionBuilder((_) =>
+ t.params.nested ?
+ `OuterStruct().inner.member_${t.params.member_index}` :
+ `MyStruct().member_${t.params.member_index}`
+ );
+ await run(
+ t,
+ (parameterTypes, resultType, cases, inputSource) => {
+ return `
+${t.params.member_types.includes('f16') ? 'enable f16;' : ''}
+
+${builder(parameterTypes, resultType, cases, inputSource)}
+
+struct MyStruct {
+${t.params.member_types.map((ty, i) => ` member_${i} : ${ty},`).join('\n')}
+};
+struct OuterStruct {
+ pre : i32,
+ inner : MyStruct,
+ post : i32,
+};
+`;
+ },
+ [],
+ memberType,
+ { inputSource: 'const' },
+ [{ input: [], expected: memberType.create(0) }]
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expectation.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expectation.js
new file mode 100644
index 0000000000..d859117054
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expectation.js
@@ -0,0 +1,38 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { compare } from '../../../util/compare.js';import {
+ ArrayValue,
+ MatrixValue,
+
+ VectorValue,
+ isScalarValue } from
+'../../../util/conversion.js';
+import { FPInterval } from '../../../util/floating_point.js';
+
+
+
+
+
+
+
+
+/** @returns if this Expectation actually a Comparator */
+export function isComparator(e) {
+ return !(
+ e instanceof FPInterval ||
+ isScalarValue(e) ||
+ e instanceof VectorValue ||
+ e instanceof MatrixValue ||
+ e instanceof ArrayValue ||
+ e instanceof Array);
+
+}
+
+/** @returns the input if it is already a Comparator, otherwise wraps it in a 'value' comparator */
+export function toComparator(input) {
+ if (isComparator(input)) {
+ return input;
+ }
+
+ return { compare: (got) => compare(got, input), kind: 'value' };
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expression.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expression.js
index d3d2d96c52..0503a1765d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expression.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/expression.js
@@ -2,217 +2,205 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { globalTestConfig } from '../../../../common/framework/test_config.js';import { assert, objectEquals, unreachable } from '../../../../common/util/util.js';
-import { compare } from '../../../util/compare.js';
import { kValue } from '../../../util/constants.js';
import {
- ScalarType,
- Scalar,
-
- TypeVec,
- TypeU32,
+ MatrixType,
- Vector,
+ ScalarType,
+ Type,
VectorType,
- u32,
- i32,
- Matrix,
- MatrixType,
- scalarTypeOf } from
+ VectorValue,
+ isAbstractType,
+ scalarTypeOf,
+ ArrayType,
+ elementTypeOf } from
'../../../util/conversion.js';
-import { FPInterval } from '../../../util/floating_point.js';
-import {
- cartesianProduct,
-
- quantizeToI32,
- quantizeToU32 } from
-'../../../util/math.js';
-
+import { align } from '../../../util/math.js';
+import { toComparator } from './expectation.js';
+/** The input value source */
-/** @returns if this Expectation actually a Comparator */
-export function isComparator(e) {
- return !(
- e instanceof FPInterval ||
- e instanceof Scalar ||
- e instanceof Vector ||
- e instanceof Matrix ||
- e instanceof Array);
-
-}
-
-/** @returns the input if it is already a Comparator, otherwise wraps it in a 'value' comparator */
-export function toComparator(input) {
- if (isComparator(input)) {
- return input;
- }
-
- return { compare: (got) => compare(got, input), kind: 'value' };
-}
-
-/** Case is a single expression test case. */
+// Read-write storage buffer
+/** All possible input sources */
+export const allInputSources = ['const', 'uniform', 'storage_r', 'storage_rw'];
+/** Just constant input source */
+export const onlyConstInputSource = ['const'];
+/** All input sources except const */
+export const allButConstInputSource = ['uniform', 'storage_r', 'storage_rw'];
+/** Configuration for running a expression test */
-/** CaseList is a list of Cases */
-/** The input value source */
-// Read-write storage buffer
-/** All possible input sources */
-export const allInputSources = ['const', 'uniform', 'storage_r', 'storage_rw'];
-/** Just constant input source */
-export const onlyConstInputSource = ['const'];
-/** Configuration for running a expression test */
+/**
+ * @returns the size and alignment in bytes of the type 'ty', taking into
+ * consideration storage alignment constraints and abstract numerics, which are
+ * encoded as a struct of holding two u32s.
+ */
+function sizeAndAlignmentOf(ty, source) {
+ if (ty instanceof ScalarType) {
+ if (ty.kind === 'abstract-float' || ty.kind === 'abstract-int') {
+ // AbstractFloats and AbstractInts are passed out of the shader via structs of
+ // 2x u32s and unpacking containers as arrays
+ return { size: 8, alignment: 8 };
+ }
+ return { size: ty.size, alignment: ty.alignment };
+ }
+ if (ty instanceof VectorType) {
+ const out = sizeAndAlignmentOf(ty.elementType, source);
+ const n = ty.width === 3 ? 4 : ty.width;
+ out.size *= n;
+ out.alignment *= n;
+ return out;
+ }
+ if (ty instanceof MatrixType) {
+ const out = sizeAndAlignmentOf(ty.elementType, source);
+ const n = ty.rows === 3 ? 4 : ty.rows;
+ out.size *= n * ty.cols;
+ out.alignment *= n;
+ return out;
+ }
+ if (ty instanceof ArrayType) {
+ const out = sizeAndAlignmentOf(ty.elementType, source);
+ if (source === 'uniform') {
+ out.alignment = align(out.alignment, 16);
+ }
+ out.size *= ty.count;
+ return out;
+ }
+ unreachable(`unhandled type: ${ty}`);
+}
+/**
+ * @returns the stride in bytes of the type 'ty', taking into consideration abstract numerics,
+ * which are encoded as a struct of 2 x u32.
+ */
+function strideOf(ty, source) {
+ const sizeAndAlign = sizeAndAlignmentOf(ty, source);
+ return align(sizeAndAlign.size, sizeAndAlign.alignment);
+}
+/**
+ * Calls 'callback' with the layout information of each structure member with the types 'members'.
+ * @returns the byte size, stride and alignment of the structure.
+ */
+export function structLayout(
+members,
+source,
+callback)
-// Helper for returning the stride for a given Type
-function valueStride(ty) {
- // AbstractFloats are passed out of the shader via a struct of 2x u32s and
- // unpacking containers as arrays
- if (scalarTypeOf(ty).kind === 'abstract-float') {
- if (ty instanceof ScalarType) {
- return 16;
- }
- if (ty instanceof VectorType) {
- if (ty.width === 2) {
- return 16;
- }
- // vec3s have padding to make them the same size as vec4s
- return 32;
- }
- if (ty instanceof MatrixType) {
- switch (ty.cols) {
- case 2:
- switch (ty.rows) {
- case 2:
- return 32;
- case 3:
- return 64;
- case 4:
- return 64;
- }
- break;
- case 3:
- switch (ty.rows) {
- case 2:
- return 48;
- case 3:
- return 96;
- case 4:
- return 96;
- }
- break;
- case 4:
- switch (ty.rows) {
- case 2:
- return 64;
- case 3:
- return 128;
- case 4:
- return 128;
- }
- break;
- }
+{
+ let offset = 0;
+ let alignment = 1;
+ for (let i = 0; i < members.length; i++) {
+ const member = members[i];
+ const sizeAndAlign = sizeAndAlignmentOf(member, source);
+ offset = align(offset, sizeAndAlign.alignment);
+ if (callback) {
+ callback({
+ index: i,
+ type: member,
+ size: sizeAndAlign.size,
+ alignment: sizeAndAlign.alignment,
+ offset
+ });
}
- unreachable(`AbstractFloats have not yet been implemented for ${ty.toString()}`);
+ offset += sizeAndAlign.size;
+ alignment = Math.max(alignment, sizeAndAlign.alignment);
}
- if (ty instanceof MatrixType) {
- switch (ty.cols) {
- case 2:
- switch (ty.rows) {
- case 2:
- return 16;
- case 3:
- return 32;
- case 4:
- return 32;
- }
- break;
- case 3:
- switch (ty.rows) {
- case 2:
- return 32;
- case 3:
- return 64;
- case 4:
- return 64;
- }
- break;
- case 4:
- switch (ty.rows) {
- case 2:
- return 32;
- case 3:
- return 64;
- case 4:
- return 64;
- }
- break;
- }
- unreachable(
- `Attempted to get stride length for a matrix with dimensions (${ty.cols}x${ty.rows}), which isn't currently handled`
- );
+ if (source === 'uniform') {
+ alignment = align(alignment, 16);
}
- // Handles scalars and vectors
- return 16;
+ const size = offset;
+ const stride = align(size, alignment);
+ return { size, stride, alignment };
}
-// Helper for summing up all of the stride values for an array of Types
-function valueStrides(tys) {
- return tys.map(valueStride).reduce((sum, c) => sum + c);
+/** @returns the stride in bytes between two consecutive structures with the given members */
+export function structStride(members, source) {
+ return structLayout(members, source).stride;
+}
+
+/** @returns the WGSL to describe the structure members in 'members' */
+function wgslMembers(members, source, memberName) {
+ const lines = [];
+ const layout = structLayout(members, source, (m) => {
+ lines.push(` @size(${m.size}) ${memberName(lines.length)} : ${m.type},`);
+ });
+ const padding = layout.stride - layout.size;
+ if (padding > 0) {
+ // Pad with a 'f16' if the padding requires an odd multiple of 2 bytes.
+ // This is required as 'i32' has an alignment and size of 4 bytes.
+ const ty = (padding & 2) !== 0 ? 'f16' : 'i32';
+ lines.push(` @size(${padding}) padding : ${ty},`);
+ }
+ return lines.join('\n');
}
// Helper for returning the WGSL storage type for the given Type.
function storageType(ty) {
if (ty instanceof ScalarType) {
assert(ty.kind !== 'f64', `No storage type defined for 'f64' values`);
+ assert(ty.kind !== 'abstract-int', `Custom handling is implemented for 'abstract-int' values`);
assert(
ty.kind !== 'abstract-float',
`Custom handling is implemented for 'abstract-float' values`
);
if (ty.kind === 'bool') {
- return TypeU32;
+ return Type.u32;
}
}
if (ty instanceof VectorType) {
- return TypeVec(ty.width, storageType(ty.elementType));
+ return Type.vec(ty.width, storageType(ty.elementType));
+ }
+ if (ty instanceof ArrayType) {
+ return Type.array(ty.count, storageType(ty.elementType));
}
return ty;
}
+/** Structure used to hold [from|to]Storage conversion helpers */
+
+
+
+
+
+
+
// Helper for converting a value of the type 'ty' from the storage type.
-function fromStorage(ty, expr) {
+function fromStorage(ty, expr, helpers) {
if (ty instanceof ScalarType) {
- assert(ty.kind !== 'abstract-float', `AbstractFloat values should not be in input storage`);
+ assert(ty.kind !== 'abstract-int', `'abstract-int' values should not be in input storage`);
+ assert(ty.kind !== 'abstract-float', `'abstract-float' values should not be in input storage`);
assert(ty.kind !== 'f64', `'No storage type defined for 'f64' values`);
if (ty.kind === 'bool') {
return `${expr} != 0u`;
@@ -220,23 +208,46 @@ function fromStorage(ty, expr) {
}
if (ty instanceof VectorType) {
assert(
+ ty.elementType.kind !== 'abstract-int',
+ `'abstract-int' values cannot appear in input storage`
+ );
+ assert(
ty.elementType.kind !== 'abstract-float',
- `AbstractFloat values cannot appear in input storage`
+ `'abstract-float' values cannot appear in input storage`
);
assert(ty.elementType.kind !== 'f64', `'No storage type defined for 'f64' values`);
if (ty.elementType.kind === 'bool') {
- return `${expr} != vec${ty.width}<u32>(0u)`;
+ return `(${expr} != vec${ty.width}<u32>(0u))`;
}
}
+ if (ty instanceof ArrayType && elementTypeOf(ty) === Type.bool) {
+ // array<u32, N> -> array<bool, N>
+ const conv = helpers.uniqueID();
+ const inTy = Type.array(ty.count, Type.u32);
+ helpers.wgsl += `
+fn ${conv}(in : ${inTy}) -> ${ty} {
+ var out : ${ty};
+ for (var i = 0; i < ${ty.count}; i++) {
+ out[i] = in[i] != 0;
+ }
+ return out;
+}
+`;
+ return `${conv}(${expr})`;
+ }
return expr;
}
// Helper for converting a value of the type 'ty' to the storage type.
-function toStorage(ty, expr) {
+function toStorage(ty, expr, helpers) {
if (ty instanceof ScalarType) {
assert(
+ ty.kind !== 'abstract-int',
+ `'abstract-int' values have custom code for writing to storage`
+ );
+ assert(
ty.kind !== 'abstract-float',
- `AbstractFloat values have custom code for writing to storage`
+ `'abstract-float' values have custom code for writing to storage`
);
assert(ty.kind !== 'f64', `No storage type defined for 'f64' values`);
if (ty.kind === 'bool') {
@@ -245,14 +256,33 @@ function toStorage(ty, expr) {
}
if (ty instanceof VectorType) {
assert(
+ ty.elementType.kind !== 'abstract-int',
+ `'abstract-int' values have custom code for writing to storage`
+ );
+ assert(
ty.elementType.kind !== 'abstract-float',
- `AbstractFloat values have custom code for writing to storage`
+ `'abstract-float' values have custom code for writing to storage`
);
assert(ty.elementType.kind !== 'f64', `'No storage type defined for 'f64' values`);
if (ty.elementType.kind === 'bool') {
return `select(vec${ty.width}<u32>(0u), vec${ty.width}<u32>(1u), ${expr})`;
}
}
+ if (ty instanceof ArrayType && elementTypeOf(ty) === Type.bool) {
+ // array<bool, N> -> array<u32, N>
+ const conv = helpers.uniqueID();
+ const outTy = Type.array(ty.count, Type.u32);
+ helpers.wgsl += `
+fn ${conv}(in : ${ty}) -> ${outTy} {
+ var out : ${outTy};
+ for (var i = 0; i < ${ty.count}; i++) {
+ out[i] = select(0u, 1u, in[i]);
+ }
+ return out;
+}
+`;
+ return `${conv}(${expr})`;
+ }
return expr;
}
@@ -325,12 +355,13 @@ batch_size)
// 2k appears to be a sweet-spot when benchmarking.
return Math.floor(
Math.min(1024 * 2, t.device.limits.maxUniformBufferBindingSize) /
- valueStrides(parameterTypes)
+ structStride(parameterTypes, cfg.inputSource)
);
case 'storage_r':
case 'storage_rw':
return Math.floor(
- t.device.limits.maxStorageBufferBindingSize / valueStrides(parameterTypes)
+ t.device.limits.maxStorageBufferBindingSize /
+ structStride(parameterTypes, cfg.inputSource)
);
}
}();
@@ -409,7 +440,8 @@ inputSource,
pipelineCache)
{
// Construct a buffer to hold the results of the expression tests
- const outputBufferSize = cases.length * valueStride(resultType);
+ const outputStride = structStride([resultType], 'storage_rw');
+ const outputBufferSize = align(cases.length * outputStride, 4);
const outputBuffer = t.device.createBuffer({
size: outputBufferSize,
usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
@@ -444,7 +476,7 @@ pipelineCache)
// Read the outputs from the output buffer
const outputs = new Array(cases.length);
for (let i = 0; i < cases.length; i++) {
- outputs[i] = resultType.read(outputData, i * valueStride(resultType));
+ outputs[i] = resultType.read(outputData, i * outputStride);
}
// The list of expectation failures
@@ -507,10 +539,13 @@ function map(v, fn) {
*/
function wgslOutputs(resultType, count) {
let output_struct = undefined;
- if (scalarTypeOf(resultType).kind !== 'abstract-float') {
+ if (
+ scalarTypeOf(resultType).kind !== 'abstract-float' &&
+ scalarTypeOf(resultType).kind !== 'abstract-int')
+ {
output_struct = `
struct Output {
- @size(${valueStride(resultType)}) value : ${storageType(resultType)}
+ @size(${strideOf(resultType, 'storage_rw')}) value : ${storageType(resultType)}
};`;
} else {
if (resultType instanceof ScalarType) {
@@ -520,7 +555,7 @@ struct Output {
};
struct Output {
- @size(${valueStride(resultType)}) value: AF,
+ @size(${strideOf(resultType, 'storage_rw')}) value: AF,
};`;
}
if (resultType instanceof VectorType) {
@@ -531,7 +566,7 @@ struct Output {
};
struct Output {
- @size(${valueStride(resultType)}) value: array<AF, ${dim}>,
+ @size(${strideOf(resultType, 'storage_rw')}) value: array<AF, ${dim}>,
};`;
}
@@ -544,7 +579,7 @@ struct Output {
};
struct Output {
- @size(${valueStride(resultType)}) value: array<array<AF, ${rows}>, ${cols}>,
+ @size(${strideOf(resultType, 'storage_rw')}) value: array<array<AF, ${rows}>, ${cols}>,
};`;
}
@@ -616,15 +651,24 @@ cases,
inputSource)
{
assert(
+ scalarTypeOf(resultType).kind !== 'abstract-int',
+ `abstractIntShaderBuilder should be used when result type is 'abstract-int'`
+ );
+ assert(
scalarTypeOf(resultType).kind !== 'abstract-float',
- `abstractFloatShaderBuilder should be used when result type is 'abstract-float`
+ `abstractFloatShaderBuilder should be used when result type is 'abstract-float'`
);
+ let nextUniqueIDSuffix = 0;
+ const convHelpers = {
+ wgsl: '',
+ uniqueID: () => `cts_symbol_${nextUniqueIDSuffix++}`
+ };
if (inputSource === 'const') {
//////////////////////////////////////////////////////////////////////////
// Constant eval
//////////////////////////////////////////////////////////////////////////
let body = '';
- if (parameterTypes.some((ty) => scalarTypeOf(ty).kind === 'abstract-float')) {
+ if (parameterTypes.some((ty) => isAbstractType(elementTypeOf(ty)))) {
// Directly assign the expression to the output, to avoid an
// intermediate store, which will concretize the value early
body = cases.
@@ -632,7 +676,8 @@ inputSource)
(c, i) =>
` outputs[${i}].value = ${toStorage(
resultType,
- expressionBuilder(map(c.input, (v) => v.wgsl()))
+ expressionBuilder(map(c.input, (v) => v.wgsl())),
+ convHelpers
)};`
).
join('\n ');
@@ -640,47 +685,60 @@ inputSource)
body = cases.
map((_, i) => {
const value = `values[${i}]`;
- return ` outputs[${i}].value = ${toStorage(resultType, value)};`;
+ return ` outputs[${i}].value = ${toStorage(resultType, value, convHelpers)};`;
}).
join('\n ');
} else {
body = `
for (var i = 0u; i < ${cases.length}; i++) {
- outputs[i].value = ${toStorage(resultType, `values[i]`)};
+ outputs[i].value = ${toStorage(resultType, `values[i]`, convHelpers)};
}`;
}
+ // If params are abstract, we will assign them directly to the storage array, so skip the values array.
+ let valuesArray = '';
+ if (!parameterTypes.some(isAbstractType)) {
+ valuesArray = wgslValuesArray(parameterTypes, resultType, cases, expressionBuilder);
+ }
+
return `
${wgslOutputs(resultType, cases.length)}
-${wgslValuesArray(parameterTypes, resultType, cases, expressionBuilder)}
+${valuesArray}
+
+${convHelpers.wgsl}
@compute @workgroup_size(1)
fn main() {
${body}
-}`;
+}
+`;
} else {
//////////////////////////////////////////////////////////////////////////
// Runtime eval
//////////////////////////////////////////////////////////////////////////
// returns the WGSL expression to load the ith parameter of the given type from the input buffer
- const paramExpr = (ty, i) => fromStorage(ty, `inputs[i].param${i}`);
+ const paramExpr = (ty, i) => fromStorage(ty, `inputs[i].param${i}`, convHelpers);
// resolves to the expression that calls the builtin
- const expr = toStorage(resultType, expressionBuilder(parameterTypes.map(paramExpr)));
+ const expr = toStorage(
+ resultType,
+ expressionBuilder(parameterTypes.map(paramExpr)),
+ convHelpers
+ );
return `
struct Input {
-${parameterTypes.
- map((ty, i) => ` @size(${valueStride(ty)}) param${i} : ${storageType(ty)},`).
- join('\n')}
-};
+${wgslMembers(parameterTypes.map(storageType), inputSource, (i) => `param${i}`)}
+}
${wgslOutputs(resultType, cases.length)}
${wgslInputVar(inputSource, cases.length)}
+${convHelpers.wgsl}
+
@compute @workgroup_size(1)
fn main() {
for (var i = 0; i < ${cases.length}; i++) {
@@ -807,8 +865,7 @@ ${wgslHeader(parameterTypes, resultType)}
${wgslOutputs(resultType, cases.length)}
struct Input {
- @size(${valueStride(lhsType)}) lhs : ${storageType(lhsType)},
- @size(${valueStride(rhsType)}) rhs : ${storageType(rhsType)},
+${wgslMembers([lhsType, rhsType].map(storageType), inputSource, (i) => ['lhs', 'rhs'][i])}
}
${wgslInputVar(inputSource, cases.length)}
@@ -972,7 +1029,7 @@ export function abstractFloatShaderBuilder(expressionBuilder) {
cases,
inputSource) =>
{
- assert(inputSource === 'const', 'AbstractFloat results are only defined for const-eval');
+ assert(inputSource === 'const', `'abstract-float' results are only defined for const-eval`);
assert(
scalarTypeOf(resultType).kind === 'abstract-float',
`Expected resultType of 'abstract-float', received '${scalarTypeOf(resultType).kind}' instead`
@@ -998,6 +1055,90 @@ ${body}
}
/**
+ * @returns a string that extracts the value of an AbstractInt into an output
+ * destination
+ * @param expr expression for an AbstractInt value, if working with vectors,
+ * this string needs to include indexing into the container.
+ * @param case_idx index in the case output array to assign the result
+ * @param accessor string representing how access to the AbstractInt that needs
+ * to be operated on.
+ * For scalars this should be left as ''.
+ * For vectors this will be an indexing operation,
+ * i.e. '[i]'
+ */
+function abstractIntSnippet(expr, case_idx, accessor = '') {
+ // AbstractInts are i64s under the hood. WebGPU does not support
+ // putting i64s in buffers, or any 64-bit simple types, so the result needs to
+ // be split up into u32 bitfields
+ //
+ // Since there is no 64-bit data type that can be used as an element for a
+ // vector or a matrix in WGSL, the testing framework needs to pass the u32s
+ // via a struct with two u32s, and deconstruct vectors into arrays.
+ //
+ // This is complicated by the fact that user defined functions cannot
+ // take/return AbstractInts, and AbstractInts cannot be stored in
+ // variables, so the code cannot just inject a simple utility function
+ // at the top of the shader, instead this snippet needs to be inlined
+ // everywhere the test needs to return an AbstractInt.
+ return ` {
+ outputs[${case_idx}].value${accessor}.high = bitcast<u32>(i32(${expr}${accessor} >> 32)) & 0xFFFFFFFF;
+ const low_sign = (${expr}${accessor} & (1 << 31));
+ outputs[${case_idx}].value${accessor}.low = bitcast<u32>((${expr}${accessor} & 0x7FFFFFFF)) | low_sign;
+ }`;
+}
+
+/** @returns a string for a specific case that has a AbstractInt result */
+function abstractIntCaseBody(expr, resultType, i) {
+ if (resultType instanceof ScalarType) {
+ return abstractIntSnippet(expr, i);
+ }
+
+ if (resultType instanceof VectorType) {
+ return [...Array(resultType.width).keys()].
+ map((idx) => abstractIntSnippet(expr, i, `[${idx}]`)).
+ join(' \n');
+ }
+
+ unreachable(`Results of type '${resultType}' not yet implemented`);
+}
+
+/**
+ * @returns a ShaderBuilder that builds a test shader hands AbstractInt results.
+ * @param expressionBuilder an expression builder that will return AbstractInts
+ */
+export function abstractIntShaderBuilder(expressionBuilder) {
+ return (
+ parameterTypes,
+ resultType,
+ cases,
+ inputSource) =>
+ {
+ assert(inputSource === 'const', `'abstract-int' results are only defined for const-eval`);
+ assert(
+ scalarTypeOf(resultType).kind === 'abstract-int',
+ `Expected resultType of 'abstract-int', received '${scalarTypeOf(resultType).kind}' instead`
+ );
+
+ const body = cases.
+ map((c, i) => {
+ const expr = `${expressionBuilder(map(c.input, (v) => v.wgsl()))}`;
+ return abstractIntCaseBody(expr, resultType, i);
+ }).
+ join('\n ');
+
+ return `
+${wgslHeader(parameterTypes, resultType)}
+
+${wgslOutputs(resultType, cases.length)}
+
+@compute @workgroup_size(1)
+fn main() {
+${body}
+}`;
+ };
+}
+
+/**
* Constructs and returns a GPUComputePipeline and GPUBindGroup for running a
* batch of test cases. If a pre-created pipeline can be found in
* `pipelineCache`, then this may be returned instead of creating a new
@@ -1060,27 +1201,23 @@ pipelineCache)
// Input values come from a uniform or storage buffer
// size in bytes of the input buffer
- const inputSize = cases.length * valueStrides(parameterTypes);
+ const caseStride = structStride(parameterTypes, inputSource);
+ const inputSize = align(cases.length * caseStride, 4);
// Holds all the parameter values for all cases
const inputData = new Uint8Array(inputSize);
// Pack all the input parameter values into the inputData buffer
- {
- const caseStride = valueStrides(parameterTypes);
- for (let caseIdx = 0; caseIdx < cases.length; caseIdx++) {
- const caseBase = caseIdx * caseStride;
- let offset = caseBase;
- for (let paramIdx = 0; paramIdx < parameterTypes.length; paramIdx++) {
- const params = cases[caseIdx].input;
- if (params instanceof Array) {
- params[paramIdx].copyTo(inputData, offset);
- } else {
- params.copyTo(inputData, offset);
- }
- offset += valueStride(parameterTypes[paramIdx]);
+ for (let caseIdx = 0; caseIdx < cases.length; caseIdx++) {
+ const offset = caseIdx * caseStride;
+ structLayout(parameterTypes, inputSource, (m) => {
+ const arg = cases[caseIdx].input;
+ if (arg instanceof Array) {
+ arg[m.index].copyTo(inputData, offset + m.offset);
+ } else {
+ arg.copyTo(inputData, offset + m.offset);
}
- }
+ });
}
// build the compute pipeline, if the shader hasn't been compiled already.
@@ -1123,7 +1260,7 @@ pipelineCache)
* If `cases.length` is not a multiple of `vectorWidth`, then the last scalar
* test case value is repeated to fill the vector value.
*/
-function packScalarsToVector(
+export function packScalarsToVector(
parameterTypes,
resultType,
cases,
@@ -1145,8 +1282,8 @@ vectorWidth)
}
const packedCases = [];
- const packedParameterTypes = parameterTypes.map((p) => TypeVec(vectorWidth, p));
- const packedResultType = new VectorType(vectorWidth, resultType);
+ const packedParameterTypes = parameterTypes.map((p) => Type.vec(vectorWidth, p));
+ const packedResultType = Type.vec(vectorWidth, resultType);
const clampCaseIdx = (idx) => Math.min(idx, cases.length - 1);
@@ -1160,7 +1297,7 @@ vectorWidth)
const input = cases[clampCaseIdx(caseIdx + i)].input;
inputElements[i] = input instanceof Array ? input[paramIdx] : input;
}
- packedInputs[paramIdx] = new Vector(inputElements);
+ packedInputs[paramIdx] = new VectorValue(inputElements);
}
// Gather the comparators for the packed cases
@@ -1198,239 +1335,4 @@ vectorWidth)
parameterTypes: packedParameterTypes,
resultType: packedResultType
};
-}
-
-/**
- * Indicates bounds that acceptance intervals need to be within to avoid inputs
- * being filtered out. This is used for const-eval tests, since going OOB will
- * cause a validation error not an execution error.
- */
-
-
-// No expectations
-
-/**
- * A function that performs a binary operation on x and y, and returns the expected
- * result.
- */
-
-
-
-
-/**
- * @returns array of Case for the input params with op applied
- * @param param0s array of inputs to try for the first param
- * @param param1s array of inputs to try for the second param
- * @param op callback called on each pair of inputs to produce each case
- * @param quantize function to quantize all values
- * @param scalarize function to convert numbers to Scalars
- */
-function generateScalarBinaryToScalarCases(
-param0s,
-param1s,
-op,
-quantize,
-scalarize)
-{
- param0s = param0s.map(quantize);
- param1s = param1s.map(quantize);
- return cartesianProduct(param0s, param1s).reduce((cases, e) => {
- const expected = op(e[0], e[1]);
- if (expected !== undefined) {
- cases.push({ input: [scalarize(e[0]), scalarize(e[1])], expected: scalarize(expected) });
- }
- return cases;
- }, new Array());
-}
-
-/**
- * @returns an array of Cases for operations over a range of inputs
- * @param param0s array of inputs to try for the first param
- * @param param1s array of inputs to try for the second param
- * @param op callback called on each pair of inputs to produce each case
- */
-export function generateBinaryToI32Cases(
-param0s,
-param1s,
-op)
-{
- return generateScalarBinaryToScalarCases(param0s, param1s, op, quantizeToI32, i32);
-}
-
-/**
- * @returns an array of Cases for operations over a range of inputs
- * @param param0s array of inputs to try for the first param
- * @param param1s array of inputs to try for the second param
- * @param op callback called on each pair of inputs to produce each case
- */
-export function generateBinaryToU32Cases(
-param0s,
-param1s,
-op)
-{
- return generateScalarBinaryToScalarCases(param0s, param1s, op, quantizeToU32, u32);
-}
-
-/**
- * @returns a Case for the input params with op applied
- * @param scalar scalar param
- * @param vector vector param (2, 3, or 4 elements)
- * @param op the op to apply to scalar and vector
- * @param quantize function to quantize all values in vectors and scalars
- * @param scalarize function to convert numbers to Scalars
- */
-function makeScalarVectorBinaryToVectorCase(
-scalar,
-vector,
-op,
-quantize,
-scalarize)
-{
- scalar = quantize(scalar);
- vector = vector.map(quantize);
- const result = vector.map((v) => op(scalar, v));
- if (result.includes(undefined)) {
- return undefined;
- }
- return {
- input: [scalarize(scalar), new Vector(vector.map(scalarize))],
- expected: new Vector(result.map(scalarize))
- };
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param scalars array of scalar params
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param op the op to apply to each pair of scalar and vector
- * @param quantize function to quantize all values in vectors and scalars
- * @param scalarize function to convert numbers to Scalars
- */
-function generateScalarVectorBinaryToVectorCases(
-scalars,
-vectors,
-op,
-quantize,
-scalarize)
-{
- const cases = new Array();
- scalars.forEach((s) => {
- vectors.forEach((v) => {
- const c = makeScalarVectorBinaryToVectorCase(s, v, op, quantize, scalarize);
- if (c !== undefined) {
- cases.push(c);
- }
- });
- });
- return cases;
-}
-
-/**
- * @returns a Case for the input params with op applied
- * @param vector vector param (2, 3, or 4 elements)
- * @param scalar scalar param
- * @param op the op to apply to vector and scalar
- * @param quantize function to quantize all values in vectors and scalars
- * @param scalarize function to convert numbers to Scalars
- */
-function makeVectorScalarBinaryToVectorCase(
-vector,
-scalar,
-op,
-quantize,
-scalarize)
-{
- vector = vector.map(quantize);
- scalar = quantize(scalar);
- const result = vector.map((v) => op(v, scalar));
- if (result.includes(undefined)) {
- return undefined;
- }
- return {
- input: [new Vector(vector.map(scalarize)), scalarize(scalar)],
- expected: new Vector(result.map(scalarize))
- };
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param scalars array of scalar params
- * @param op the op to apply to each pair of vector and scalar
- * @param quantize function to quantize all values in vectors and scalars
- * @param scalarize function to convert numbers to Scalars
- */
-function generateVectorScalarBinaryToVectorCases(
-vectors,
-scalars,
-op,
-quantize,
-scalarize)
-{
- const cases = new Array();
- scalars.forEach((s) => {
- vectors.forEach((v) => {
- const c = makeVectorScalarBinaryToVectorCase(v, s, op, quantize, scalarize);
- if (c !== undefined) {
- cases.push(c);
- }
- });
- });
- return cases;
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param scalars array of scalar params
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param op he op to apply to each pair of scalar and vector
- */
-export function generateU32VectorBinaryToVectorCases(
-scalars,
-vectors,
-op)
-{
- return generateScalarVectorBinaryToVectorCases(scalars, vectors, op, quantizeToU32, u32);
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param scalars array of scalar params
- * @param op he op to apply to each pair of vector and scalar
- */
-export function generateVectorU32BinaryToVectorCases(
-vectors,
-scalars,
-op)
-{
- return generateVectorScalarBinaryToVectorCases(vectors, scalars, op, quantizeToU32, u32);
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param scalars array of scalar params
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param op he op to apply to each pair of scalar and vector
- */
-export function generateI32VectorBinaryToVectorCases(
-scalars,
-vectors,
-op)
-{
- return generateScalarVectorBinaryToVectorCases(scalars, vectors, op, quantizeToI32, i32);
-}
-
-/**
- * @returns array of Case for the input params with op applied
- * @param vectors array of vector params (2, 3, or 4 elements)
- * @param scalars array of scalar params
- * @param op he op to apply to each pair of vector and scalar
- */
-export function generateVectorI32BinaryToVectorCases(
-vectors,
-scalars,
-op)
-{
- return generateVectorScalarBinaryToVectorCases(vectors, scalars, op, quantizeToI32, i32);
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/interval_filter.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/interval_filter.js
new file mode 100644
index 0000000000..d70e087a74
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/interval_filter.js
@@ -0,0 +1,9 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/ /**
+ * Indicates bounds that acceptance intervals need to be within to avoid inputs
+ * being filtered out. This is used for const-eval tests, since going OOB will
+ * cause a validation error not an execution error.
+ */
+// No expectations
+export {}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/precedence.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/precedence.spec.js
new file mode 100644
index 0000000000..6bdea30e43
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/precedence.spec.js
@@ -0,0 +1,113 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for operator precedence.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { GPUTest } from '../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+// The list of test cases and their expected results.
+
+
+
+
+const kExpressions = {
+ add_mul: { expr: 'kThree + kSeven * kEleven', result: 80 },
+ mul_add: { expr: 'kThree * kSeven + kEleven', result: 32 },
+ sub_neg: { expr: 'kThree - - kSeven', result: 10 },
+ neg_shl: { expr: '- kThree << u32(kSeven)', result: -384 },
+ neg_shr: { expr: '- kThree >> u32(kSeven)', result: -1 },
+ neg_add: { expr: '- kThree + kSeven', result: 4 },
+ neg_mul: { expr: '- kThree * kSeven', result: -21 },
+ neg_and: { expr: '- kThree & kSeven', result: 5 },
+ neg_or: { expr: '- kThree | kSeven', result: -1 },
+ neg_xor: { expr: '- kThree ^ kSeven', result: -6 },
+ comp_add: { expr: '~ kThree + kSeven', result: 3 },
+ mul_deref: { expr: 'kThree * * ptr_five', result: 15 },
+ not_and: { expr: 'i32(! kFalse && kFalse)', result: 0 },
+ not_or: { expr: 'i32(! kTrue || kTrue)', result: 1 },
+ eq_and: { expr: 'i32(kFalse == kTrue && kFalse)', result: 0 },
+ and_eq: { expr: 'i32(kFalse && kTrue == kFalse)', result: 0 },
+ eq_or: { expr: 'i32(kFalse == kFalse || kTrue)', result: 1 },
+ or_eq: { expr: 'i32(kTrue || kFalse == kFalse)', result: 1 },
+ add_swizzle: { expr: '(vec + vec . y) . z', result: 8 }
+};
+
+g.test('precedence').
+desc(
+ `
+ Test that operator precedence rules are correctly implemented.
+ `
+).
+params((u) =>
+u.
+combine('expr', keysOf(kExpressions)).
+combine('decl', ['literal', 'const', 'override', 'var<private>']).
+combine('strip_spaces', [false, true])
+).
+fn((t) => {
+ const expr = kExpressions[t.params.expr];
+
+ let decl = t.params.decl;
+ let expr_wgsl = expr.expr;
+ if (t.params.decl === 'literal') {
+ decl = 'const';
+ expr_wgsl = expr_wgsl.replace(/kThree/g, '3');
+ expr_wgsl = expr_wgsl.replace(/kSeven/g, '7');
+ expr_wgsl = expr_wgsl.replace(/kEleven/g, '11');
+ expr_wgsl = expr_wgsl.replace(/kFalse/g, 'false');
+ expr_wgsl = expr_wgsl.replace(/kTrue/g, 'true');
+ }
+ if (t.params.strip_spaces) {
+ expr_wgsl = expr_wgsl.replace(/ /g, '');
+ }
+ const wgsl = `
+ @group(0) @binding(0) var<storage, read_write> buffer : i32;
+
+ ${decl} kFalse = false;
+ ${decl} kTrue = true;
+
+ ${decl} kThree = 3;
+ ${decl} kSeven = 7;
+ ${decl} kEleven = 11;
+
+ @compute @workgroup_size(1)
+ fn main() {
+ var five = 5;
+ var vec = vec4(1, kThree, 5, kSeven);
+ let ptr_five = &five;
+
+ buffer = ${expr_wgsl};
+ }
+ `;
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({ code: wgsl })
+ }
+ });
+
+ // Allocate a buffer and fill it with 0xdeadbeef.
+ const outputBuffer = t.makeBufferWithContents(
+ new Uint32Array([0xdeadbeef]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ );
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [{ binding: 0, resource: { buffer: outputBuffer } }]
+ });
+
+ // Run the shader.
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ // Check that the result is as expected.
+ t.expectGPUBufferValuesEqual(outputBuffer, new Int32Array([expr.result]));
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/address_of_and_indirection.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/address_of_and_indirection.spec.js
new file mode 100644
index 0000000000..f68dc18822
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/address_of_and_indirection.spec.js
@@ -0,0 +1,171 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for unary address-of and indirection (dereference)
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../common/util/data_tables.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { scalarType } from '../../../../util/conversion.js';
+import { sparseScalarF32Range } from '../../../../util/math.js';
+import {
+ allButConstInputSource,
+ basicExpressionWithPredeclarationBuilder,
+ run } from
+'../expression.js';
+
+export const g = makeTestGroup(GPUTest);
+
+// All the ways to deref an expression
+const kDerefCases = {
+ deref_address_of_identifier: {
+ wgsl: '(*(&a))',
+ requires_pointer_composite_access: false
+ },
+ deref_pointer: {
+ wgsl: '(*p)',
+ requires_pointer_composite_access: false
+ },
+ address_of_identifier: {
+ wgsl: '(&a)',
+ requires_pointer_composite_access: true
+ },
+ pointer: {
+ wgsl: 'p',
+ requires_pointer_composite_access: true
+ }
+};
+
+g.test('deref').
+specURL('https://www.w3.org/TR/WGSL/#indirection').
+desc(
+ `
+Expression: *e
+
+Pointer expression dereference.
+`
+).
+params((u) =>
+u.
+combine('inputSource', allButConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('scalarType', ['bool', 'u32', 'i32', 'f32', 'f16']).
+combine('derefType', keysOf(kDerefCases)).
+filter((p) => !kDerefCases[p.derefType].requires_pointer_composite_access)
+).
+beforeAllSubcases((t) => {
+ if (t.params.scalarType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+}).
+fn(async (t) => {
+ const ty = scalarType(t.params.scalarType);
+ const cases = sparseScalarF32Range().map((e) => {
+ return { input: ty.create(e), expected: ty.create(e) };
+ });
+ const elemType = ty.kind;
+ const type = t.params.vectorize ? `vec${t.params.vectorize}<${elemType}>` : elemType;
+ const shaderBuilder = basicExpressionWithPredeclarationBuilder(
+ (value) => `get_dereferenced_value(${value})`,
+ `fn get_dereferenced_value(value: ${type}) -> ${type} {
+ var a = value;
+ let p = &a;
+ return ${kDerefCases[t.params.derefType].wgsl};
+ }`
+ );
+ await run(t, shaderBuilder, [ty], ty, t.params, cases);
+});
+
+g.test('deref_index').
+specURL('https://www.w3.org/TR/WGSL/#logical-expr').
+desc(
+ `
+Expression: (*e)[index]
+
+Pointer expression dereference as lhs of index accessor expression
+`
+).
+params((u) =>
+u.
+combine('inputSource', allButConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('scalarType', ['bool', 'u32', 'i32', 'f32', 'f16']).
+combine('derefType', keysOf(kDerefCases))
+).
+beforeAllSubcases((t) => {
+ if (t.params.scalarType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+}).
+fn(async (t) => {
+ if (
+ kDerefCases[t.params.derefType].requires_pointer_composite_access &&
+ !t.hasLanguageFeature('pointer_composite_access'))
+ {
+ return;
+ }
+
+ const ty = scalarType(t.params.scalarType);
+ const cases = sparseScalarF32Range().map((e) => {
+ return { input: ty.create(e), expected: ty.create(e) };
+ });
+ const elemType = ty.kind;
+ const type = t.params.vectorize ? `vec${t.params.vectorize}<${elemType}>` : elemType;
+ const shaderBuilder = basicExpressionWithPredeclarationBuilder(
+ (value) => `get_dereferenced_value(${value})`,
+ `fn get_dereferenced_value(value: ${type}) -> ${type} {
+ var a = array<${type}, 1>(value);
+ let p = &a;
+ return ${kDerefCases[t.params.derefType].wgsl}[0];
+ }`
+ );
+ await run(t, shaderBuilder, [ty], ty, t.params, cases);
+});
+
+g.test('deref_member').
+specURL('https://www.w3.org/TR/WGSL/#logical-expr').
+desc(
+ `
+Expression: (*e).member
+
+Pointer expression dereference as lhs of member accessor expression
+`
+).
+params((u) =>
+u.
+combine('inputSource', allButConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4]).
+combine('scalarType', ['bool', 'u32', 'i32', 'f32', 'f16']).
+combine('derefType', keysOf(kDerefCases))
+).
+beforeAllSubcases((t) => {
+ if (t.params.scalarType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+}).
+fn(async (t) => {
+ if (
+ kDerefCases[t.params.derefType].requires_pointer_composite_access &&
+ !t.hasLanguageFeature('pointer_composite_access'))
+ {
+ return;
+ }
+
+ const ty = scalarType(t.params.scalarType);
+ const cases = sparseScalarF32Range().map((e) => {
+ return { input: ty.create(e), expected: ty.create(e) };
+ });
+ const elemType = ty.kind;
+ const type = t.params.vectorize ? `vec${t.params.vectorize}<${elemType}>` : elemType;
+ const shaderBuilder = basicExpressionWithPredeclarationBuilder(
+ (value) => `get_dereferenced_value(${value})`,
+ `struct S {
+ m : ${type}
+ }
+ fn get_dereferenced_value(value: ${type}) -> ${type} {
+ var a = S(value);
+ let p = &a;
+ return ${kDerefCases[t.params.derefType].wgsl}.m;
+ }`
+ );
+ await run(t, shaderBuilder, [ty], ty, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.cache.js
new file mode 100644
index 0000000000..97917cb2a3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.cache.js
@@ -0,0 +1,13 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { scalarF64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/af_arithmetic', {
+ negation: () => {
+ return FP.abstract.generateScalarToIntervalCases(
+ scalarF64Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
+ 'unfiltered',
+ FP.abstract.negationInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.spec.js
index 25571a970b..55457e59d1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_arithmetic.spec.js
@@ -1,29 +1,17 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Execution Tests for AbstractFloat arithmetic unary expression operations
+Execution Tests for Type.abstractFloat arithmetic unary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeAbstractFloat } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { fullF64Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { onlyConstInputSource, run } from '../expression.js';
-import { abstractUnary } from './unary.js';
+import { d } from './af_arithmetic.cache.js';
+import { abstractFloatUnary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/af_arithmetic', {
- negation: () => {
- return FP.abstract.generateScalarToIntervalCases(
- fullF64Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
- 'unfiltered',
- FP.abstract.negationInterval
- );
- }
-});
-
g.test('negation').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -39,5 +27,13 @@ combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
const cases = await d.get('negation');
- await run(t, abstractUnary('-'), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases, 1);
+ await run(
+ t,
+ abstractFloatUnary('-'),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases,
+ 1
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.cache.js
new file mode 100644
index 0000000000..70d50ca609
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.cache.js
@@ -0,0 +1,51 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../util/constants.js';import { abstractFloat } from '../../../../util/conversion.js';import { FP } from '../../../../util/floating_point.js';
+import {
+ isSubnormalNumberF64,
+ limitedScalarF64Range,
+ scalarF64Range } from
+'../../../../util/math.js';
+import { reinterpretU64AsF64 } from '../../../../util/reinterpret.js';
+import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/af_assignment', {
+ abstract: () => {
+ const inputs = [
+ // Values that are useful for debugging the underlying framework/shader code, since it cannot be directly unit tested.
+ 0,
+ 0.5,
+ 0.5,
+ 1,
+ -1,
+ reinterpretU64AsF64(0x7000_0000_0000_0001n), // smallest magnitude negative subnormal with non-zero mantissa
+ reinterpretU64AsF64(0x0000_0000_0000_0001n), // smallest magnitude positive subnormal with non-zero mantissa
+ reinterpretU64AsF64(0x600a_aaaa_5555_5555n), // negative subnormal with obvious pattern
+ reinterpretU64AsF64(0x000a_aaaa_5555_5555n), // positive subnormal with obvious pattern
+ reinterpretU64AsF64(0x0010_0000_0000_0001n), // smallest magnitude negative normal with non-zero mantissa
+ reinterpretU64AsF64(0x0010_0000_0000_0001n), // smallest magnitude positive normal with non-zero mantissa
+ reinterpretU64AsF64(0xf555_5555_aaaa_aaaan), // negative normal with obvious pattern
+ reinterpretU64AsF64(0x5555_5555_aaaa_aaaan), // positive normal with obvious pattern
+ reinterpretU64AsF64(0xffef_ffff_ffff_ffffn), // largest magnitude negative normal
+ reinterpretU64AsF64(0x7fef_ffff_ffff_ffffn), // largest magnitude positive normal
+ // WebGPU implementation stressing values
+ ...scalarF64Range()];
+
+ return inputs.map((f) => {
+ return {
+ input: abstractFloat(f),
+ expected: isSubnormalNumberF64(f) ? abstractFloat(0) : abstractFloat(f)
+ };
+ });
+ },
+ f32: () => {
+ return limitedScalarF64Range(kValue.f32.negative.min, kValue.f32.positive.max).map((f) => {
+ return { input: abstractFloat(f), expected: FP.f32.correctlyRoundedInterval(f) };
+ });
+ },
+ f16: () => {
+ return limitedScalarF64Range(kValue.f16.negative.min, kValue.f16.positive.max).map((f) => {
+ return { input: abstractFloat(f), expected: FP.f16.correctlyRoundedInterval(f) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.spec.js
index 777262a364..2288245f36 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/af_assignment.spec.js
@@ -4,20 +4,17 @@
Execution Tests for assignment of AbstractFloats
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { kValue } from '../../../../util/constants.js';
-import { abstractFloat, TypeAbstractFloat, TypeF16, TypeF32 } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { filteredF64Range, fullF64Range, isSubnormalNumberF64 } from '../../../../util/math.js';
-import { reinterpretU64AsF64 } from '../../../../util/reinterpret.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import {
+
abstractFloatShaderBuilder,
basicExpressionBuilder,
onlyConstInputSource,
run } from
-
'../expression.js';
+import { d } from './af_assignment.cache.js';
+
function concrete_assignment() {
return basicExpressionBuilder((value) => `${value}`);
}
@@ -28,47 +25,6 @@ function abstract_assignment() {
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/af_assignment', {
- abstract: () => {
- const inputs = [
- // Values that are useful for debugging the underlying framework/shader code, since it cannot be directly unit tested.
- 0,
- 0.5,
- 0.5,
- 1,
- -1,
- reinterpretU64AsF64(0x7000_0000_0000_0001n), // smallest magnitude negative subnormal with non-zero mantissa
- reinterpretU64AsF64(0x0000_0000_0000_0001n), // smallest magnitude positive subnormal with non-zero mantissa
- reinterpretU64AsF64(0x600a_aaaa_5555_5555n), // negative subnormal with obvious pattern
- reinterpretU64AsF64(0x000a_aaaa_5555_5555n), // positive subnormal with obvious pattern
- reinterpretU64AsF64(0x0010_0000_0000_0001n), // smallest magnitude negative normal with non-zero mantissa
- reinterpretU64AsF64(0x0010_0000_0000_0001n), // smallest magnitude positive normal with non-zero mantissa
- reinterpretU64AsF64(0xf555_5555_aaaa_aaaan), // negative normal with obvious pattern
- reinterpretU64AsF64(0x5555_5555_aaaa_aaaan), // positive normal with obvious pattern
- reinterpretU64AsF64(0xffef_ffff_ffff_ffffn), // largest magnitude negative normal
- reinterpretU64AsF64(0x7fef_ffff_ffff_ffffn), // largest magnitude positive normal
- // WebGPU implementation stressing values
- ...fullF64Range()];
-
- return inputs.map((f) => {
- return {
- input: abstractFloat(f),
- expected: isSubnormalNumberF64(f) ? abstractFloat(0) : abstractFloat(f)
- };
- });
- },
- f32: () => {
- return filteredF64Range(kValue.f32.negative.min, kValue.f32.positive.max).map((f) => {
- return { input: abstractFloat(f), expected: FP.f32.correctlyRoundedInterval(f) };
- });
- },
- f16: () => {
- return filteredF64Range(kValue.f16.negative.min, kValue.f16.positive.max).map((f) => {
- return { input: abstractFloat(f), expected: FP.f16.correctlyRoundedInterval(f) };
- });
- }
-});
-
g.test('abstract').
specURL('https://www.w3.org/TR/WGSL/#floating-point-conversion').
desc(
@@ -79,7 +35,15 @@ testing that extracting abstract floats works
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
const cases = await d.get('abstract');
- await run(t, abstract_assignment(), [TypeAbstractFloat], TypeAbstractFloat, t.params, cases, 1);
+ await run(
+ t,
+ abstract_assignment(),
+ [Type.abstractFloat],
+ Type.abstractFloat,
+ t.params,
+ cases,
+ 1
+ );
});
g.test('f32').
@@ -92,7 +56,7 @@ concretizing to f32
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, concrete_assignment(), [TypeAbstractFloat], TypeF32, t.params, cases);
+ await run(t, concrete_assignment(), [Type.abstractFloat], Type.f32, t.params, cases);
});
g.test('f16').
@@ -108,5 +72,5 @@ beforeAllSubcases((t) => {
params((u) => u.combine('inputSource', onlyConstInputSource)).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, concrete_assignment(), [TypeAbstractFloat], TypeF16, t.params, cases);
+ await run(t, concrete_assignment(), [Type.abstractFloat], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.cache.js
new file mode 100644
index 0000000000..3ed097dc50
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.cache.js
@@ -0,0 +1,11 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { abstractInt } from '../../../../util/conversion.js';import { fullI64Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/ai_arithmetic', {
+ negation: () => {
+ return fullI64Range().map((e) => {
+ return { input: abstractInt(e), expected: abstractInt(-e) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.spec.js
new file mode 100644
index 0000000000..6060edd7d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_arithmetic.spec.js
@@ -0,0 +1,30 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for the abstract integer arithmetic unary expression operations
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { d } from './ai_arithmetic.cache.js';
+import { abstractIntUnary } from './unary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('negation').
+specURL('https://www.w3.org/TR/WGSL/#arithmetic-expr').
+desc(
+ `
+Expression: -x
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('negation');
+ await run(t, abstractIntUnary('-'), [Type.abstractInt], Type.abstractInt, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.cache.js
new file mode 100644
index 0000000000..dfe479bad7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.cache.js
@@ -0,0 +1,21 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { abstractInt, i32, u32 } from '../../../../util/conversion.js';import { fullI32Range, fullI64Range, fullU32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/ai_assignment', {
+ abstract: () => {
+ return fullI64Range().map((n) => {
+ return { input: abstractInt(n), expected: abstractInt(n) };
+ });
+ },
+ i32: () => {
+ return fullI32Range().map((n) => {
+ return { input: abstractInt(BigInt(n)), expected: i32(n) };
+ });
+ },
+ u32: () => {
+ return fullU32Range().map((n) => {
+ return { input: abstractInt(BigInt(n)), expected: u32(n) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.spec.js
new file mode 100644
index 0000000000..be05705c54
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_assignment.spec.js
@@ -0,0 +1,65 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for assignment of AbstractInts
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { Type } from '../../../../util/conversion.js';
+import {
+
+ abstractIntShaderBuilder,
+ basicExpressionBuilder,
+ onlyConstInputSource,
+ run } from
+'../expression.js';
+
+import { d } from './ai_assignment.cache.js';
+
+function concrete_assignment() {
+ return basicExpressionBuilder((value) => `${value}`);
+}
+
+function abstract_assignment() {
+ return abstractIntShaderBuilder((value) => `${value}`);
+}
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('abstract').
+specURL('https://www.w3.org/TR/WGSL/#abstract-types').
+desc(
+ `
+testing that extracting abstract ints works
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('abstract');
+ await run(t, abstract_assignment(), [Type.abstractInt], Type.abstractInt, t.params, cases, 1);
+});
+
+g.test('i32').
+specURL('https://www.w3.org/TR/WGSL/#i32-builtin').
+desc(
+ `
+concretizing to i32
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('i32');
+ await run(t, concrete_assignment(), [Type.abstractInt], Type.i32, t.params, cases);
+});
+
+g.test('u32').
+specURL('https://www.w3.org/TR/WGSL/#u32-builtin').
+desc(
+ `
+concretizing to u32
+`
+).
+params((u) => u.combine('inputSource', onlyConstInputSource)).
+fn(async (t) => {
+ const cases = await d.get('u32');
+ await run(t, concrete_assignment(), [Type.abstractInt], Type.u32, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_complement.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_complement.spec.js
new file mode 100644
index 0000000000..c8d4209608
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/ai_complement.spec.js
@@ -0,0 +1,32 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution Tests for the Type.abstractInt bitwise complement operation
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { GPUTest } from '../../../../gpu_test.js';
+import { abstractInt, Type } from '../../../../util/conversion.js';
+import { fullI64Range } from '../../../../util/math.js';
+import { onlyConstInputSource, run } from '../expression.js';
+
+import { abstractIntUnary } from './unary.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('complement').
+specURL('https://www.w3.org/TR/WGSL/#bit-expr').
+desc(
+ `
+Expression: ~x
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = fullI64Range().map((e) => {
+ return { input: abstractInt(e), expected: abstractInt(~e) };
+ });
+ await run(t, abstractIntUnary('~'), [Type.abstractInt], Type.abstractInt, t.params, cases);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.cache.js
new file mode 100644
index 0000000000..f0ca905774
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.cache.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { anyOf } from '../../../../util/compare.js';import { bool, f16, f32, i32, u32 } from '../../../../util/conversion.js';import {
+ fullI32Range,
+ fullU32Range,
+ isSubnormalNumberF16,
+ isSubnormalNumberF32,
+ scalarF16Range,
+ scalarF32Range } from
+'../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/bool_conversion', {
+ bool: () => {
+ return [
+ { input: bool(true), expected: bool(true) },
+ { input: bool(false), expected: bool(false) }];
+
+ },
+ u32: () => {
+ return fullU32Range().map((u) => {
+ return { input: u32(u), expected: u === 0 ? bool(false) : bool(true) };
+ });
+ },
+ i32: () => {
+ return fullI32Range().map((i) => {
+ return { input: i32(i), expected: i === 0 ? bool(false) : bool(true) };
+ });
+ },
+ f32: () => {
+ return scalarF32Range().map((f) => {
+ const expected = [];
+ if (f !== 0) {
+ expected.push(bool(true));
+ }
+ if (isSubnormalNumberF32(f)) {
+ expected.push(bool(false));
+ }
+ return { input: f32(f), expected: anyOf(...expected) };
+ });
+ },
+ f16: () => {
+ return scalarF16Range().map((f) => {
+ const expected = [];
+ if (f !== 0) {
+ expected.push(bool(true));
+ }
+ if (isSubnormalNumberF16(f)) {
+ expected.push(bool(false));
+ }
+ return { input: f16(f), expected: anyOf(...expected) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.spec.js
index d4bbbddce4..8da4619fe7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_conversion.spec.js
@@ -4,78 +4,14 @@
Execution Tests for the boolean conversion operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { anyOf } from '../../../../util/compare.js';
-import {
- bool,
- f32,
- f16,
- i32,
-
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32 } from
-'../../../../util/conversion.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullU32Range,
- isSubnormalNumberF32,
- isSubnormalNumberF16 } from
-'../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './bool_conversion.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/bool_conversion', {
- bool: () => {
- return [
- { input: bool(true), expected: bool(true) },
- { input: bool(false), expected: bool(false) }];
-
- },
- u32: () => {
- return fullU32Range().map((u) => {
- return { input: u32(u), expected: u === 0 ? bool(false) : bool(true) };
- });
- },
- i32: () => {
- return fullI32Range().map((i) => {
- return { input: i32(i), expected: i === 0 ? bool(false) : bool(true) };
- });
- },
- f32: () => {
- return fullF32Range().map((f) => {
- const expected = [];
- if (f !== 0) {
- expected.push(bool(true));
- }
- if (isSubnormalNumberF32(f)) {
- expected.push(bool(false));
- }
- return { input: f32(f), expected: anyOf(...expected) };
- });
- },
- f16: () => {
- return fullF16Range().map((f) => {
- const expected = [];
- if (f !== 0) {
- expected.push(bool(true));
- }
- if (isSubnormalNumberF16(f)) {
- expected.push(bool(false));
- }
- return { input: f16(f), expected: anyOf(...expected) };
- });
- }
-});
-
/** Generate expression builder based on how the test case is to be vectorized */
function vectorizeToExpression(vectorize) {
return vectorize === undefined ? unary('bool') : unary(`vec${vectorize}<bool>`);
@@ -95,7 +31,14 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('bool');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeBool], TypeBool, t.params, cases);
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.bool],
+ Type.bool,
+ t.params,
+ cases
+ );
});
g.test('u32').
@@ -113,7 +56,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('u32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeU32], TypeBool, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.u32], Type.bool, t.params, cases);
});
g.test('i32').
@@ -131,7 +74,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('i32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeI32], TypeBool, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.i32], Type.bool, t.params, cases);
});
g.test('f32').
@@ -149,7 +92,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF32], TypeBool, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f32], Type.bool, t.params, cases);
});
g.test('f16').
@@ -170,5 +113,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF16], TypeBool, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f16], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_logical.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_logical.spec.js
index ac8da84846..e09cb35d3f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_logical.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/bool_logical.spec.js
@@ -4,7 +4,7 @@
Execution Tests for the boolean unary logical expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { bool, TypeBool } from '../../../../util/conversion.js';
+import { bool, Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
import { unary } from './unary.js';
@@ -29,5 +29,5 @@ fn(async (t) => {
{ input: bool(false), expected: bool(true) }];
- await run(t, unary('!'), [TypeBool], TypeBool, t.params, cases);
+ await run(t, unary('!'), [Type.bool], Type.bool, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.cache.js
new file mode 100644
index 0000000000..5c68b275cb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.cache.js
@@ -0,0 +1,13 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { scalarF16Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/f16_arithmetic', {
+ negation: () => {
+ return FP.f16.generateScalarToIntervalCases(
+ scalarF16Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
+ 'unfiltered',
+ FP.f16.negationInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.spec.js
index e82895ffbc..1dbeffd696 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_arithmetic.spec.js
@@ -4,26 +4,14 @@
Execution Tests for the f16 arithmetic unary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF16 } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { fullF16Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './f16_arithmetic.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/f16_arithmetic', {
- negation: () => {
- return FP.f16.generateScalarToIntervalCases(
- fullF16Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
- 'unfiltered',
- FP.f16.negationInterval
- );
- }
-});
-
g.test('negation').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -40,5 +28,5 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('negation');
- await run(t, unary('-'), [TypeF16], TypeF16, t.params, cases);
+ await run(t, unary('-'), [Type.f16], Type.f16, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.cache.js
new file mode 100644
index 0000000000..19af40984a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.cache.js
@@ -0,0 +1,135 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { abstractInt, bool, f16, i32, u32 } from '../../../../util/conversion.js';import { FP, FPInterval } from '../../../../util/floating_point.js';import { fullI32Range, fullI64Range, fullU32Range } from '../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+const f16FiniteRangeInterval = new FPInterval(
+ 'f16',
+ FP.f16.constants().negative.min,
+ FP.f16.constants().positive.max
+);
+
+// Cases: f32_matCxR_[non_]const
+// Note that f32 values may be not exactly representable in f16 and/or out of range.
+const f32_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`f32_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixToMatrixCases(
+ FP.f32.sparseMatrixRange(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.correctlyRoundedMatrix
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: f16_matCxR_[non_]const
+const f16_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`f16_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ // Input matrix is of f16 types, use f16.generateMatrixToMatrixCases.
+ return FP.f16.generateMatrixToMatrixCases(
+ FP.f16.sparseMatrixRange(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f16.correctlyRoundedMatrix
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: abstract_float_matCxR
+// Note that abstract float values may be not exactly representable in f16
+// and/or out of range.
+const abstract_float_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].map((rows) => ({
+ [`abstract_float_mat${cols}x${rows}`]: () => {
+ return FP.abstract.generateMatrixToMatrixCases(
+ FP.abstract.sparseMatrixRange(cols, rows),
+ 'finite',
+ FP.f16.correctlyRoundedMatrix
+ );
+ }
+}))
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('unary/f16_conversion', {
+ bool: () => {
+ return [
+ { input: bool(true), expected: f16(1.0) },
+ { input: bool(false), expected: f16(0.0) }];
+
+ },
+ u32_non_const: () => {
+ return [...fullU32Range(), 65504].map((u) => {
+ return { input: u32(u), expected: FP.f16.correctlyRoundedInterval(u) };
+ });
+ },
+ u32_const: () => {
+ return [...fullU32Range(), 65504].
+ filter((v) => f16FiniteRangeInterval.contains(v)).
+ map((u) => {
+ return { input: u32(u), expected: FP.f16.correctlyRoundedInterval(u) };
+ });
+ },
+ i32_non_const: () => {
+ return [...fullI32Range(), 65504, -65504].map((i) => {
+ return { input: i32(i), expected: FP.f16.correctlyRoundedInterval(i) };
+ });
+ },
+ i32_const: () => {
+ return [...fullI32Range(), 65504, -65504].
+ filter((v) => f16FiniteRangeInterval.contains(v)).
+ map((i) => {
+ return { input: i32(i), expected: FP.f16.correctlyRoundedInterval(i) };
+ });
+ },
+ abstract_int: () => {
+ return [...fullI64Range(), 65504n, -65504n].
+ filter((v) => f16FiniteRangeInterval.contains(Number(v))).
+ map((i) => {
+ return { input: abstractInt(i), expected: FP.f16.correctlyRoundedInterval(Number(i)) };
+ });
+ },
+ // Note that f32 values may be not exactly representable in f16 and/or out of range.
+ f32_non_const: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ [...FP.f32.scalarRange(), 65535.996, -65535.996],
+ 'unfiltered',
+ FP.f16.correctlyRoundedInterval
+ );
+ },
+ f32_const: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ [...FP.f32.scalarRange(), 65535.996, -65535.996],
+ 'finite',
+ FP.f16.correctlyRoundedInterval
+ );
+ },
+ // Note that abstract float values may be not exactly representable in f16.
+ abstract_float: () => {
+ return FP.abstract.generateScalarToIntervalCases(
+ [...FP.abstract.scalarRange(), 65535.996, -65535.996],
+ 'finite',
+ FP.f16.correctlyRoundedInterval
+ );
+ },
+ // All f16 values are exactly representable in f16.
+ f16: () => {
+ return FP.f16.scalarRange().map((f) => {
+ return { input: f16(f), expected: FP.f16.correctlyRoundedInterval(f) };
+ });
+ },
+ ...f32_mat_cases,
+ ...f16_mat_cases,
+ ...abstract_float_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.spec.js
index a37c816062..53e11c44ec 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f16_conversion.spec.js
@@ -4,132 +4,14 @@
Execution Tests for the f32 conversion operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import {
- bool,
- f16,
- i32,
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeMat,
- TypeU32,
- u32 } from
-'../../../../util/conversion.js';
-import { FP, FPInterval } from '../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullU32Range,
- sparseMatrixF32Range,
- sparseMatrixF16Range } from
-'../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
-import { allInputSources, run } from '../expression.js';
+import { Type } from '../../../../util/conversion.js';
+import { allInputSources, run, onlyConstInputSource } from '../expression.js';
+import { d } from './f16_conversion.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-const f16FiniteRangeInterval = new FPInterval(
- 'f32',
- FP.f16.constants().negative.min,
- FP.f16.constants().positive.max
-);
-
-// Cases: f32_matCxR_[non_]const
-// Note that f32 values may be not exactly representable in f16 and/or out of range.
-const f32_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f32_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.correctlyRoundedMatrix
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_matCxR_[non_]const
-const f16_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f16_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- // Input matrix is of f16 types, use f16.generateMatrixToMatrixCases.
- return FP.f16.generateMatrixToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f16.correctlyRoundedMatrix
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('unary/f16_conversion', {
- bool: () => {
- return [
- { input: bool(true), expected: f16(1.0) },
- { input: bool(false), expected: f16(0.0) }];
-
- },
- u32_non_const: () => {
- return [...fullU32Range(), 65504].map((u) => {
- return { input: u32(u), expected: FP.f16.correctlyRoundedInterval(u) };
- });
- },
- u32_const: () => {
- return [...fullU32Range(), 65504].
- filter((v) => f16FiniteRangeInterval.contains(v)).
- map((u) => {
- return { input: u32(u), expected: FP.f16.correctlyRoundedInterval(u) };
- });
- },
- i32_non_const: () => {
- return [...fullI32Range(), 65504, -65504].map((i) => {
- return { input: i32(i), expected: FP.f16.correctlyRoundedInterval(i) };
- });
- },
- i32_const: () => {
- return [...fullI32Range(), 65504, -65504].
- filter((v) => f16FiniteRangeInterval.contains(v)).
- map((i) => {
- return { input: i32(i), expected: FP.f16.correctlyRoundedInterval(i) };
- });
- },
- // Note that f32 values may be not exactly representable in f16 and/or out of range.
- f32_non_const: () => {
- return FP.f32.generateScalarToIntervalCases(
- [...fullF32Range(), 65535.996, -65535.996],
- 'unfiltered',
- FP.f16.correctlyRoundedInterval
- );
- },
- f32_const: () => {
- return FP.f32.generateScalarToIntervalCases(
- [...fullF32Range(), 65535.996, -65535.996],
- 'finite',
- FP.f16.correctlyRoundedInterval
- );
- },
- // All f16 values are exactly representable in f16.
- f16: () => {
- return fullF16Range().map((f) => {
- return { input: f16(f), expected: FP.f16.correctlyRoundedInterval(f) };
- });
- },
- ...f32_mat_cases,
- ...f16_mat_cases
-});
-
/** Generate a ShaderBuilder based on how the test case is to be vectorized */
function vectorizeToExpression(vectorize) {
return vectorize === undefined ? unary('f16') : unary(`vec${vectorize}<f16>`);
@@ -157,7 +39,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('bool');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeBool], TypeF16, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.bool], Type.f16, t.params, cases);
});
g.test('u32').
@@ -177,7 +59,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'u32_const' : 'u32_non_const');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeU32], TypeF16, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.u32], Type.f16, t.params, cases);
});
g.test('i32').
@@ -197,7 +79,36 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'i32_const' : 'i32_non_const');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeI32], TypeF16, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.i32], Type.f16, t.params, cases);
+});
+
+g.test('abstract_int').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `
+f16(e), where e is an AbstractInt
+
+Converted to f16, +/-Inf if out of range
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+}).
+fn(async (t) => {
+ const cases = await d.get('abstract_int');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractInt],
+ Type.f16,
+ t.params,
+ cases
+ );
});
g.test('f32').
@@ -217,7 +128,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get(t.params.inputSource === 'const' ? 'f32_const' : 'f32_non_const');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF32], TypeF16, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f32], Type.f16, t.params, cases);
});
g.test('f32_mat').
@@ -243,8 +154,8 @@ fn(async (t) => {
await run(
t,
matrixExperession(cols, rows),
- [TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
@@ -267,7 +178,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF16], TypeF16, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f16], Type.f16, t.params, cases);
});
g.test('f16_mat').
@@ -293,8 +204,63 @@ fn(async (t) => {
await run(
t,
matrixExperession(cols, rows),
- [TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF16),
+ [Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f16),
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `
+f16(e), where e is an AbstractFloat
+
+Correctly rounded to f16
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+}).
+fn(async (t) => {
+ const cases = await d.get('abstract_float');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractFloat],
+ Type.f16,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float_mat').
+specURL('https://www.w3.org/TR/WGSL/#matrix-builtin-functions').
+desc(`AbstractFloat matrix to f16 matrix tests`).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4])
+).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+}).
+fn(async (t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const cases = await d.get(`abstract_float_mat${cols}x${rows}`);
+ await run(
+ t,
+ matrixExperession(cols, rows),
+ [Type.mat(cols, rows, Type.abstractFloat)],
+ Type.mat(cols, rows, Type.f16),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.cache.js
new file mode 100644
index 0000000000..cdd991a4f9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.cache.js
@@ -0,0 +1,13 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { FP } from '../../../../util/floating_point.js';import { scalarF32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/f32_arithmetic', {
+ negation: () => {
+ return FP.f32.generateScalarToIntervalCases(
+ scalarF32Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
+ 'unfiltered',
+ FP.f32.negationInterval
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.spec.js
index a91bab73d2..785f8f9aa1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_arithmetic.spec.js
@@ -4,26 +4,14 @@
Execution Tests for the f32 arithmetic unary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { TypeF32 } from '../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import { fullF32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './f32_arithmetic.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/f32_arithmetic', {
- negation: () => {
- return FP.f32.generateScalarToIntervalCases(
- fullF32Range({ neg_norm: 250, neg_sub: 20, pos_sub: 20, pos_norm: 250 }),
- 'unfiltered',
- FP.f32.negationInterval
- );
- }
-});
-
g.test('negation').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -37,5 +25,5 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('negation');
- await run(t, unary('-'), [TypeF32], TypeF32, t.params, cases);
+ await run(t, unary('-'), [Type.f32], Type.f32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.cache.js
new file mode 100644
index 0000000000..eb8fbe2c79
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.cache.js
@@ -0,0 +1,79 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { bool, f16, f32, i32, u32 } from '../../../../util/conversion.js';import { FP } from '../../../../util/floating_point.js';import {
+ fullI32Range,
+ fullU32Range,
+ scalarF16Range,
+ scalarF32Range,
+ sparseMatrixF16Range,
+ sparseMatrixF32Range } from
+'../../../../util/math.js';
+import { makeCaseCache } from '../case_cache.js';
+
+// Cases: f32_matCxR_[non_]const
+const f32_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`f32_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ return FP.f32.generateMatrixToMatrixCases(
+ sparseMatrixF32Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.correctlyRoundedMatrix
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+// Cases: f16_matCxR_[non_]const
+// Note that all f16 values are exactly representable in f32.
+const f16_mat_cases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+[true, false].map((nonConst) => ({
+ [`f16_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
+ // Input matrix is of f16 types, use f16.generateMatrixToMatrixCases.
+ return FP.f16.generateMatrixToMatrixCases(
+ sparseMatrixF16Range(cols, rows),
+ nonConst ? 'unfiltered' : 'finite',
+ FP.f32.correctlyRoundedMatrix
+ );
+ }
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+export const d = makeCaseCache('unary/f32_conversion', {
+ bool: () => {
+ return [
+ { input: bool(true), expected: f32(1.0) },
+ { input: bool(false), expected: f32(0.0) }];
+
+ },
+ u32: () => {
+ return fullU32Range().map((u) => {
+ return { input: u32(u), expected: FP.f32.correctlyRoundedInterval(u) };
+ });
+ },
+ i32: () => {
+ return fullI32Range().map((i) => {
+ return { input: i32(i), expected: FP.f32.correctlyRoundedInterval(i) };
+ });
+ },
+ f32: () => {
+ return scalarF32Range().map((f) => {
+ return { input: f32(f), expected: FP.f32.correctlyRoundedInterval(f) };
+ });
+ },
+ // All f16 values are exactly representable in f32.
+ f16: () => {
+ return scalarF16Range().map((f) => {
+ return { input: f16(f), expected: FP.f32.correctlyRoundedInterval(f) };
+ });
+ },
+ ...f32_mat_cases,
+ ...f16_mat_cases
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.spec.js
index d9aa209365..08e42b8598 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/f32_conversion.spec.js
@@ -4,103 +4,14 @@
Execution Tests for the f32 conversion operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import {
- bool,
- f32,
- f16,
- i32,
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeMat,
- TypeU32,
- u32 } from
-'../../../../util/conversion.js';
-import { FP } from '../../../../util/floating_point.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullU32Range,
- sparseMatrixF32Range,
- sparseMatrixF16Range } from
-'../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './f32_conversion.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-// Cases: f32_matCxR_[non_]const
-const f32_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f32_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- return FP.f32.generateMatrixToMatrixCases(
- sparseMatrixF32Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.correctlyRoundedMatrix
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-// Cases: f16_matCxR_[non_]const
-// Note that all f16 values are exactly representable in f32.
-const f16_mat_cases = [2, 3, 4].
-flatMap((cols) =>
-[2, 3, 4].flatMap((rows) =>
-[true, false].map((nonConst) => ({
- [`f16_mat${cols}x${rows}_${nonConst ? 'non_const' : 'const'}`]: () => {
- // Input matrix is of f16 types, use f16.generateMatrixToMatrixCases.
- return FP.f16.generateMatrixToMatrixCases(
- sparseMatrixF16Range(cols, rows),
- nonConst ? 'unfiltered' : 'finite',
- FP.f32.correctlyRoundedMatrix
- );
- }
-}))
-)
-).
-reduce((a, b) => ({ ...a, ...b }), {});
-
-export const d = makeCaseCache('unary/f32_conversion', {
- bool: () => {
- return [
- { input: bool(true), expected: f32(1.0) },
- { input: bool(false), expected: f32(0.0) }];
-
- },
- u32: () => {
- return fullU32Range().map((u) => {
- return { input: u32(u), expected: FP.f32.correctlyRoundedInterval(u) };
- });
- },
- i32: () => {
- return fullI32Range().map((i) => {
- return { input: i32(i), expected: FP.f32.correctlyRoundedInterval(i) };
- });
- },
- f32: () => {
- return fullF32Range().map((f) => {
- return { input: f32(f), expected: FP.f32.correctlyRoundedInterval(f) };
- });
- },
- // All f16 values are exactly representable in f32.
- f16: () => {
- return fullF16Range().map((f) => {
- return { input: f16(f), expected: FP.f32.correctlyRoundedInterval(f) };
- });
- },
- ...f32_mat_cases,
- ...f16_mat_cases
-});
-
/** Generate a ShaderBuilder based on how the test case is to be vectorized */
function vectorizeToExpression(vectorize) {
return vectorize === undefined ? unary('f32') : unary(`vec${vectorize}<f32>`);
@@ -125,7 +36,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('bool');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeBool], TypeF32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.bool], Type.f32, t.params, cases);
});
g.test('u32').
@@ -142,7 +53,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('u32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeU32], TypeF32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.u32], Type.f32, t.params, cases);
});
g.test('i32').
@@ -159,7 +70,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('i32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeI32], TypeF32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.i32], Type.f32, t.params, cases);
});
g.test('f32').
@@ -176,7 +87,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF32], TypeF32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f32], Type.f32, t.params, cases);
});
g.test('f32_mat').
@@ -199,8 +110,8 @@ fn(async (t) => {
await run(
t,
matrixExperession(cols, rows),
- [TypeMat(cols, rows, TypeF32)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f32)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
@@ -223,7 +134,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF16], TypeF32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f16], Type.f32, t.params, cases);
});
g.test('f16_mat').
@@ -249,8 +160,8 @@ fn(async (t) => {
await run(
t,
matrixExperession(cols, rows),
- [TypeMat(cols, rows, TypeF16)],
- TypeMat(cols, rows, TypeF32),
+ [Type.mat(cols, rows, Type.f16)],
+ Type.mat(cols, rows, Type.f32),
t.params,
cases
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.cache.js
new file mode 100644
index 0000000000..84708efa74
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.cache.js
@@ -0,0 +1,11 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { i32 } from '../../../../util/conversion.js';import { fullI32Range } from '../../../../util/math.js';import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/i32_arithmetic', {
+ negation: () => {
+ return fullI32Range().map((e) => {
+ return { input: i32(e), expected: i32(-e) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.spec.js
index 9a46879c6c..c30b3d5aa3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_arithmetic.spec.js
@@ -4,23 +4,14 @@
Execution Tests for the i32 arithmetic unary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { i32, TypeI32 } from '../../../../util/conversion.js';
-import { fullI32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
+import { Type } from '../../../../util/conversion.js';
import { allInputSources, run } from '../expression.js';
+import { d } from './i32_arithmetic.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/i32_arithmetic', {
- negation: () => {
- return fullI32Range().map((e) => {
- return { input: i32(e), expected: i32(-e) };
- });
- }
-});
-
g.test('negation').
specURL('https://www.w3.org/TR/WGSL/#floating-point-evaluation').
desc(
@@ -33,5 +24,5 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('negation');
- await run(t, unary('-'), [TypeI32], TypeI32, t.params, cases);
+ await run(t, unary('-'), [Type.i32], Type.i32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_complement.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_complement.spec.js
index e5870b2256..0648c9ee3c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_complement.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_complement.spec.js
@@ -4,23 +4,14 @@
Execution Tests for the i32 bitwise complement operation
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { i32, TypeI32 } from '../../../../util/conversion.js';
+import { i32, Type } from '../../../../util/conversion.js';
import { fullI32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
import { allInputSources, run } from '../expression.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/i32_complement', {
- complement: () => {
- return fullI32Range().map((e) => {
- return { input: i32(e), expected: i32(~e) };
- });
- }
-});
-
g.test('i32_complement').
specURL('https://www.w3.org/TR/WGSL/#bit-expr').
desc(
@@ -32,6 +23,8 @@ params((u) =>
u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('complement');
- await run(t, unary('~'), [TypeI32], TypeI32, t.params, cases);
+ const cases = fullI32Range().map((e) => {
+ return { input: i32(e), expected: i32(~e) };
+ });
+ await run(t, unary('~'), [Type.i32], Type.i32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.cache.js
new file mode 100644
index 0000000000..ab5cac3b28
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.cache.js
@@ -0,0 +1,116 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../util/constants.js';import { abstractFloat,
+abstractInt,
+bool,
+f16,
+f32,
+i32,
+u32 } from
+'../../../../util/conversion.js';
+import {
+ fullI32Range,
+ fullU32Range,
+ quantizeToF16,
+ quantizeToF32,
+ scalarF16Range,
+ scalarF32Range,
+ scalarF64Range } from
+'../../../../util/math.js';
+import { reinterpretU32AsI32 } from '../../../../util/reinterpret.js';
+import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/i32_conversion', {
+ bool: () => {
+ return [
+ { input: bool(true), expected: i32(1) },
+ { input: bool(false), expected: i32(0) }];
+
+ },
+ abstractInt: () => {
+ return fullI32Range().map((i) => {
+ return { input: abstractInt(BigInt(i)), expected: i32(i) };
+ });
+ },
+ u32: () => {
+ return fullU32Range().map((u) => {
+ return { input: u32(u), expected: i32(reinterpretU32AsI32(u)) };
+ });
+ },
+ i32: () => {
+ return fullI32Range().map((i) => {
+ return { input: i32(i), expected: i32(i) };
+ });
+ },
+ abstractFloat: () => {
+ return scalarF64Range().map((f) => {
+ // Handles zeros and subnormals
+ if (Math.abs(f) < 1.0) {
+ return { input: abstractFloat(f), expected: i32(0) };
+ }
+
+ if (f <= kValue.i32.negative.min) {
+ return { input: abstractFloat(f), expected: i32(kValue.i32.negative.min) };
+ }
+
+ if (f >= kValue.i32.positive.max) {
+ return { input: abstractFloat(f), expected: i32(kValue.i32.positive.max) };
+ }
+
+ // All i32s are representable as f64, and both AbstractFloat and number
+ // are f64 internally, so there is no need for special casing like f32 and
+ // f16 below.
+ return { input: abstractFloat(f), expected: i32(Math.trunc(f)) };
+ });
+ },
+ f32: () => {
+ return scalarF32Range().map((f) => {
+ // Handles zeros and subnormals
+ if (Math.abs(f) < 1.0) {
+ return { input: f32(f), expected: i32(0) };
+ }
+
+ if (f <= kValue.i32.negative.min) {
+ return { input: f32(f), expected: i32(kValue.i32.negative.min) };
+ }
+
+ if (f >= kValue.i32.positive.max) {
+ return { input: f32(f), expected: i32(kValue.i32.positive.max) };
+ }
+
+ // All f32 no larger than 2^24 has a precise interger part and a fractional part, just need
+ // to trunc towards 0 for the result integer.
+ if (Math.abs(f) <= 2 ** 24) {
+ return { input: f32(f), expected: i32(Math.trunc(f)) };
+ }
+
+ // All f32s between 2 ** 24 and kValue.i32.negative.min/.positive.max are
+ // integers, so in theory one could use them directly, expect that number
+ // is actually f64 internally, so they need to be quantized to f32 first.
+ // Cannot just use trunc here, since that might produce a i32 value that
+ // is precise in f64, but not in f32.
+ return { input: f32(f), expected: i32(quantizeToF32(f)) };
+ });
+ },
+ f16: () => {
+ // Note that finite f16 values are always in range of i32.
+ return scalarF16Range().map((f) => {
+ // Handles zeros and subnormals
+ if (Math.abs(f) < 1.0) {
+ return { input: f16(f), expected: i32(0) };
+ }
+
+ // All f16 no larger than <= 2^12 has a precise interger part and a fractional part, just need
+ // to trunc towards 0 for the result integer.
+ if (Math.abs(f) <= 2 ** 12) {
+ return { input: f16(f), expected: i32(Math.trunc(f)) };
+ }
+
+ // All f16s larger than 2 ** 12 are integers, so in theory one could use them directly, expect
+ // that number is actually f64 internally, so they need to be quantized to f16 first.
+ // Cannot just use trunc here, since that might produce a i32 value that is precise in f64,
+ // but not in f16.
+ return { input: f16(f), expected: i32(quantizeToF16(f)) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.spec.js
index a4b8247f56..57768e7abc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/i32_conversion.spec.js
@@ -4,104 +4,14 @@
Execution Tests for the i32 conversion operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { kValue } from '../../../../util/constants.js';
-import {
- bool,
- f32,
- f16,
- i32,
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32 } from
-'../../../../util/conversion.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullU32Range,
- quantizeToF32,
- quantizeToF16 } from
-'../../../../util/math.js';
-import { reinterpretU32AsI32 } from '../../../../util/reinterpret.js';
-import { makeCaseCache } from '../case_cache.js';
-import { allInputSources, run } from '../expression.js';
+import { Type } from '../../../../util/conversion.js';
+import { allInputSources, run, onlyConstInputSource } from '../expression.js';
+import { d } from './i32_conversion.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/i32_conversion', {
- bool: () => {
- return [
- { input: bool(true), expected: i32(1) },
- { input: bool(false), expected: i32(0) }];
-
- },
- u32: () => {
- return fullU32Range().map((u) => {
- return { input: u32(u), expected: i32(reinterpretU32AsI32(u)) };
- });
- },
- i32: () => {
- return fullI32Range().map((i) => {
- return { input: i32(i), expected: i32(i) };
- });
- },
- f32: () => {
- return fullF32Range().map((f) => {
- // Handles zeros and subnormals
- if (Math.abs(f) < 1.0) {
- return { input: f32(f), expected: i32(0) };
- }
-
- if (f <= kValue.i32.negative.min) {
- return { input: f32(f), expected: i32(kValue.i32.negative.min) };
- }
-
- if (f >= kValue.i32.positive.max) {
- return { input: f32(f), expected: i32(kValue.i32.positive.max) };
- }
-
- // All f32 no larger than 2^24 has a precise interger part and a fractional part, just need
- // to trunc towards 0 for the result integer.
- if (Math.abs(f) <= 2 ** 24) {
- return { input: f32(f), expected: i32(Math.trunc(f)) };
- }
-
- // All f32s between 2 ** 24 and kValue.i32.negative.min/.positive.max are
- // integers, so in theory one could use them directly, expect that number
- // is actually f64 internally, so they need to be quantized to f32 first.
- // Cannot just use trunc here, since that might produce a i32 value that
- // is precise in f64, but not in f32.
- return { input: f32(f), expected: i32(quantizeToF32(f)) };
- });
- },
- f16: () => {
- // Note that finite f16 values are always in range of i32.
- return fullF16Range().map((f) => {
- // Handles zeros and subnormals
- if (Math.abs(f) < 1.0) {
- return { input: f16(f), expected: i32(0) };
- }
-
- // All f16 no larger than <= 2^12 has a precise interger part and a fractional part, just need
- // to trunc towards 0 for the result integer.
- if (Math.abs(f) <= 2 ** 12) {
- return { input: f16(f), expected: i32(Math.trunc(f)) };
- }
-
- // All f16s larger than 2 ** 12 are integers, so in theory one could use them directly, expect
- // that number is actually f64 internally, so they need to be quantized to f16 first.
- // Cannot just use trunc here, since that might produce a i32 value that is precise in f64,
- // but not in f16.
- return { input: f16(f), expected: i32(quantizeToF16(f)) };
- });
- }
-});
-
/** Generate a ShaderBuilder based on how the test case is to be vectorized */
function vectorizeToExpression(vectorize) {
return vectorize === undefined ? unary('i32') : unary(`vec${vectorize}<i32>`);
@@ -121,7 +31,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('bool');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeBool], TypeI32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.bool], Type.i32, t.params, cases);
});
g.test('u32').
@@ -138,7 +48,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('u32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeU32], TypeI32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.u32], Type.i32, t.params, cases);
});
g.test('i32').
@@ -155,7 +65,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('i32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeI32], TypeI32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.i32], Type.i32, t.params, cases);
});
g.test('f32').
@@ -172,7 +82,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF32], TypeI32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f32], Type.i32, t.params, cases);
});
g.test('f16').
@@ -192,5 +102,57 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF16], TypeI32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f16], Type.i32, t.params, cases);
+});
+
+g.test('abstract_int').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `
+i32(e), where e is an AbstractInt
+
+Identity operation if e is in bounds for i32, otherwise shader creation error
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('abstractInt');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractInt],
+ Type.i32,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `
+i32(e), where e is an AbstractFloat
+
+e is converted to i32, rounding towards zero
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('abstractFloat');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractFloat],
+ Type.i32,
+ t.params,
+ cases
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_complement.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_complement.spec.js
index 36a664652c..a15742738c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_complement.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_complement.spec.js
@@ -4,23 +4,14 @@
Execution Tests for the u32 bitwise complement operation
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { u32, TypeU32 } from '../../../../util/conversion.js';
+import { Type, u32 } from '../../../../util/conversion.js';
import { fullU32Range } from '../../../../util/math.js';
-import { makeCaseCache } from '../case_cache.js';
import { allInputSources, run } from '../expression.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/u32_complement', {
- complement: () => {
- return fullU32Range().map((e) => {
- return { input: u32(e), expected: u32(~e) };
- });
- }
-});
-
g.test('u32_complement').
specURL('https://www.w3.org/TR/WGSL/#bit-expr').
desc(
@@ -32,6 +23,8 @@ params((u) =>
u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
).
fn(async (t) => {
- const cases = await d.get('complement');
- await run(t, unary('~'), [TypeU32], TypeU32, t.params, cases);
+ const cases = fullU32Range().map((e) => {
+ return { input: u32(e), expected: u32(~e) };
+ });
+ await run(t, unary('~'), [Type.u32], Type.u32, t.params, cases);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.cache.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.cache.js
new file mode 100644
index 0000000000..d43133a5f6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.cache.js
@@ -0,0 +1,107 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { kValue } from '../../../../util/constants.js';import { abstractFloat,
+abstractInt,
+bool,
+f16,
+f32,
+i32,
+u32 } from
+'../../../../util/conversion.js';
+import {
+ fullI32Range,
+ fullU32Range,
+ quantizeToF16,
+ quantizeToF32,
+ scalarF16Range,
+ scalarF32Range,
+ scalarF64Range } from
+'../../../../util/math.js';
+import { reinterpretI32AsU32 } from '../../../../util/reinterpret.js';
+import { makeCaseCache } from '../case_cache.js';
+
+export const d = makeCaseCache('unary/u32_conversion', {
+ bool: () => {
+ return [
+ { input: bool(true), expected: u32(1) },
+ { input: bool(false), expected: u32(0) }];
+
+ },
+ abstractInt: () => {
+ return fullU32Range().map((u) => {
+ return { input: abstractInt(BigInt(u)), expected: u32(u) };
+ });
+ },
+ u32: () => {
+ return fullU32Range().map((u) => {
+ return { input: u32(u), expected: u32(u) };
+ });
+ },
+ i32: () => {
+ return fullI32Range().map((i) => {
+ return { input: i32(i), expected: u32(reinterpretI32AsU32(i)) };
+ });
+ },
+ abstractFloat: () => {
+ return [...scalarF64Range(), -1].map((f) => {
+ // Handles zeros, subnormals, and negatives
+ if (f < 1.0) {
+ return { input: abstractFloat(f), expected: u32(0) };
+ }
+
+ if (f >= kValue.u32.max) {
+ return { input: abstractFloat(f), expected: u32(kValue.u32.max) };
+ }
+
+ // All u32s are representable as f64s and number is a f64 internally, so
+ // no need for special handling like is done for f32 and f16 below.
+ return { input: abstractFloat(f), expected: u32(Math.floor(f)) };
+ });
+ },
+ f32: () => {
+ return scalarF32Range().map((f) => {
+ // Handles zeros, subnormals, and negatives
+ if (f < 1.0) {
+ return { input: f32(f), expected: u32(0) };
+ }
+
+ if (f >= kValue.u32.max) {
+ return { input: f32(f), expected: u32(kValue.u32.max) };
+ }
+
+ // All f32 no larger than 2^24 has a precise integer part and a fractional
+ // part, just need to trunc towards 0 for the result integer.
+ if (f <= 2 ** 24) {
+ return { input: f32(f), expected: u32(Math.floor(f)) };
+ }
+
+ // All f32s between 2 ** 24 and kValue.u32.max are integers, so in theory
+ // one could use them directly, expect that number is actually f64
+ // internally, so they need to be quantized to f32 first.
+ // Cannot just use floor here, since that might produce a u32 value that
+ // is precise in f64, but not in f32.
+ return { input: f32(f), expected: u32(quantizeToF32(f)) };
+ });
+ },
+ f16: () => {
+ // Note that all positive finite f16 values are in range of u32.
+ return scalarF16Range().map((f) => {
+ // Handles zeros, subnormals, and negatives
+ if (f < 1.0) {
+ return { input: f16(f), expected: u32(0) };
+ }
+
+ // All f16 no larger than <= 2^12 has a precise integer part and a
+ // fractional part, just need to trunc towards 0 for the result integer.
+ if (f <= 2 ** 12) {
+ return { input: f16(f), expected: u32(Math.trunc(f)) };
+ }
+
+ // All f16s larger than 2 ** 12 are integers, so in theory one could use
+ // them directly, expect that number is actually f64 internally, so they
+ // need to be quantized to f16 first.Cannot just use trunc here, since
+ // that might produce a u32 value that is precise in f64, but not in f16.
+ return { input: f16(f), expected: u32(quantizeToF16(f)) };
+ });
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.spec.js
index adec5bcc65..528e01f4cc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/u32_conversion.spec.js
@@ -4,100 +4,14 @@
Execution Tests for the u32 conversion operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
import { GPUTest } from '../../../../gpu_test.js';
-import { kValue } from '../../../../util/constants.js';
-import {
- bool,
- f32,
- f16,
- i32,
- TypeBool,
- TypeF32,
- TypeF16,
- TypeI32,
- TypeU32,
- u32 } from
-'../../../../util/conversion.js';
-import {
- fullF32Range,
- fullF16Range,
- fullI32Range,
- fullU32Range,
- quantizeToF32,
- quantizeToF16 } from
-'../../../../util/math.js';
-import { reinterpretI32AsU32 } from '../../../../util/reinterpret.js';
-import { makeCaseCache } from '../case_cache.js';
-import { allInputSources, run } from '../expression.js';
+import { Type } from '../../../../util/conversion.js';
+import { allInputSources, run, onlyConstInputSource } from '../expression.js';
+import { d } from './u32_conversion.cache.js';
import { unary } from './unary.js';
export const g = makeTestGroup(GPUTest);
-export const d = makeCaseCache('unary/u32_conversion', {
- bool: () => {
- return [
- { input: bool(true), expected: u32(1) },
- { input: bool(false), expected: u32(0) }];
-
- },
- u32: () => {
- return fullU32Range().map((u) => {
- return { input: u32(u), expected: u32(u) };
- });
- },
- i32: () => {
- return fullI32Range().map((i) => {
- return { input: i32(i), expected: u32(reinterpretI32AsU32(i)) };
- });
- },
- f32: () => {
- return fullF32Range().map((f) => {
- // Handles zeros, subnormals, and negatives
- if (f < 1.0) {
- return { input: f32(f), expected: u32(0) };
- }
-
- if (f >= kValue.u32.max) {
- return { input: f32(f), expected: u32(kValue.u32.max) };
- }
-
- // All f32 no larger than 2^24 has a precise interger part and a fractional part, just need
- // to trunc towards 0 for the result integer.
- if (f <= 2 ** 24) {
- return { input: f32(f), expected: u32(Math.floor(f)) };
- }
-
- // All f32s between 2 ** 24 and kValue.u32.max are integers, so in theory
- // one could use them directly, expect that number is actually f64
- // internally, so they need to be quantized to f32 first.
- // Cannot just use floor here, since that might produce a u32 value that
- // is precise in f64, but not in f32.
- return { input: f32(f), expected: u32(quantizeToF32(f)) };
- });
- },
- f16: () => {
- // Note that all positive finite f16 values are in range of u32.
- return fullF16Range().map((f) => {
- // Handles zeros, subnormals, and negatives
- if (f < 1.0) {
- return { input: f16(f), expected: u32(0) };
- }
-
- // All f16 no larger than <= 2^12 has a precise interger part and a fractional part, just need
- // to trunc towards 0 for the result integer.
- if (f <= 2 ** 12) {
- return { input: f16(f), expected: u32(Math.trunc(f)) };
- }
-
- // All f16s larger than 2 ** 12 are integers, so in theory one could use them directly, expect
- // that number is actually f64 internally, so they need to be quantized to f16 first.
- // Cannot just use trunc here, since that might produce a u32 value that is precise in f64,
- // but not in f16.
- return { input: f16(f), expected: u32(quantizeToF16(f)) };
- });
- }
-});
-
/** Generate a ShaderBuilder based on how the test case is to be vectorized */
function vectorizeToExpression(vectorize) {
return vectorize === undefined ? unary('u32') : unary(`vec${vectorize}<u32>`);
@@ -117,7 +31,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('bool');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeBool], TypeU32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.bool], Type.u32, t.params, cases);
});
g.test('u32').
@@ -134,7 +48,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('u32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeU32], TypeU32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.u32], Type.u32, t.params, cases);
});
g.test('i32').
@@ -151,7 +65,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('i32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeI32], TypeU32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.i32], Type.u32, t.params, cases);
});
g.test('f32').
@@ -168,7 +82,7 @@ u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3,
).
fn(async (t) => {
const cases = await d.get('f32');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF32], TypeU32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f32], Type.u32, t.params, cases);
});
g.test('f16').
@@ -188,7 +102,7 @@ beforeAllSubcases((t) => {
}).
fn(async (t) => {
const cases = await d.get('f16');
- await run(t, vectorizeToExpression(t.params.vectorize), [TypeF16], TypeU32, t.params, cases);
+ await run(t, vectorizeToExpression(t.params.vectorize), [Type.f16], Type.u32, t.params, cases);
});
g.test('abstract_int').
@@ -201,6 +115,44 @@ Identity operation if the e can be represented in u32, otherwise it produces a s
`
).
params((u) =>
-u.combine('inputSource', allInputSources).combine('vectorize', [undefined, 2, 3, 4])
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
+).
+fn(async (t) => {
+ const cases = await d.get('abstractInt');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractInt],
+ Type.u32,
+ t.params,
+ cases
+ );
+});
+
+g.test('abstract_float').
+specURL('https://www.w3.org/TR/WGSL/#value-constructor-builtin-function').
+desc(
+ `
+u32(e), where e is an AbstractFloat
+
+e is converted to u32, rounding towards zero
+`
+).
+params((u) =>
+u.
+combine('inputSource', onlyConstInputSource).
+combine('vectorize', [undefined, 2, 3, 4])
).
-unimplemented(); \ No newline at end of file
+fn(async (t) => {
+ const cases = await d.get('abstractFloat');
+ await run(
+ t,
+ vectorizeToExpression(t.params.vectorize),
+ [Type.abstractFloat],
+ Type.u32,
+ t.params,
+ cases
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/unary.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/unary.js
index 914d9fed4c..1b46f37795 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/unary.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/expression/unary/unary.js
@@ -1,6 +1,7 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { abstractFloatShaderBuilder, basicExpressionBuilder } from
+**/import { abstractFloatShaderBuilder, abstractIntShaderBuilder,
+ basicExpressionBuilder } from
'../expression.js';
@@ -10,6 +11,11 @@ export function unary(op) {
}
/* @returns a ShaderBuilder that evaluates a prefix unary operation that returns AbstractFloats */
-export function abstractUnary(op) {
+export function abstractFloatUnary(op) {
return abstractFloatShaderBuilder((value) => `${op}(${value})`);
+}
+
+/* @returns a ShaderBuilder that evaluates a prefix unary operation that returns AbstractInts */
+export function abstractIntUnary(op) {
+ return abstractIntShaderBuilder((value) => `${op}(${value})`);
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/call.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/call.spec.js
index 43897ca432..00d2451eca 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/call.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/call.spec.js
@@ -80,4 +80,117 @@ fn c() {
${f.expect_order(3, 7)}
}`
}));
+});
+
+g.test('arg_eval').
+desc('Test that arguments are evaluated left to right').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ a(b(), c(), d());
+ ${f.expect_order(5)}
+`,
+ extra: `
+fn a(p1 : u32, p2 : u32, p3 : u32) {
+ ${f.expect_order(4)}
+}
+fn b() -> u32 {
+ ${f.expect_order(1)}
+ return 0;
+}
+fn c() -> u32 {
+ ${f.expect_order(2)}
+ return 0;
+}
+fn d() -> u32 {
+ ${f.expect_order(3)}
+ return 0;
+}`
+ }));
+});
+
+g.test('arg_eval_logical_and').
+desc('Test that arguments are evaluated left to right').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ a(b(${f.value(1)}) && c());
+ a(b(${f.value(0)}) && c());
+ ${f.expect_order(6)}
+`,
+ extra: `
+fn a(p : bool) {
+ ${f.expect_order(3, 5)}
+}
+fn b(x : i32) -> bool {
+ ${f.expect_order(1, 4)}
+ return x == 1;
+}
+fn c() -> bool {
+ ${f.expect_order(2)}
+ return true;
+}`
+ }));
+});
+
+g.test('arg_eval_logical_or').
+desc('Test that arguments are evaluated left to right').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ a(b(${f.value(1)}) || c());
+ a(b(${f.value(0)}) || c());
+ ${f.expect_order(6)}
+`,
+ extra: `
+fn a(p : bool) {
+ ${f.expect_order(3, 5)}
+}
+fn b(x : i32) -> bool {
+ ${f.expect_order(1, 4)}
+ return x == 0;
+}
+fn c() -> bool {
+ ${f.expect_order(2)}
+ return true;
+}`
+ }));
+});
+
+g.test('arg_eval_pointers').
+desc('Test that arguments are evaluated left to right').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ var x : i32 = ${f.value(0)};
+ ${f.expect_order(0)}
+ _ = c(&x);
+ a(b(&x), c(&x));
+ ${f.expect_order(5)}
+`,
+ extra: `
+fn a(p1 : i32, p2 : i32) {
+ ${f.expect_order(4)}
+}
+fn b(p : ptr<function, i32>) -> i32 {
+ (*p)++;
+ ${f.expect_order(2)}
+ return 0;
+}
+fn c(p : ptr<function, i32>) -> i32 {
+ if (*p == 1) {
+ ${f.expect_order(3)}
+ } else {
+ ${f.expect_order(1)}
+ }
+ return 0;
+}`
+ }));
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/for.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/for.spec.js
index 182f1e999a..4f7714cf42 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/for.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/for.spec.js
@@ -268,4 +268,54 @@ fn((t) => {
${f.expect_order(9)}
`
);
+});
+
+g.test('for_logical_and_condition').
+desc('Test flow control for a for-loop with a logical and condition').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ for (var i = ${f.value(0)}; a(i) && b(i); i++) {
+ ${f.expect_order(3, 6)}
+ }
+ ${f.expect_order(8)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(1, 4, 7)}
+ return i < ${f.value(2)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(2, 5)}
+ return i < ${f.value(5)};
+}
+ `
+ }));
+});
+
+g.test('for_logical_or_condition').
+desc('Test flow control for a for-loop with a logical or condition').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ for (var i = ${f.value(0)}; a(i) || b(i); i++) {
+ ${f.expect_order(2, 4, 7, 10)}
+ }
+ ${f.expect_order(13)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(1, 3, 5, 8, 11)}
+ return i < ${f.value(2)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(6, 9, 12)}
+ return i < ${f.value(4)};
+}
+ `
+ }));
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/loop.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/loop.spec.js
index adb5e0916d..829c5b4997 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/loop.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/loop.spec.js
@@ -122,4 +122,64 @@ fn((t) => {
${f.expect_order(23)}
`
);
+});
+
+g.test('loop_break_if_logical_and_condition').
+desc('Test flow control for a loop with a logical and break if').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ var i = ${f.value(0)};
+ loop {
+ ${f.expect_order(1, 4, 7)}
+ continuing {
+ i++;
+ break if !(a(i) && b(i));
+ }
+ }
+ ${f.expect_order(9)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(2, 5, 8)}
+ return i < ${f.value(3)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(3, 6)}
+ return i < ${f.value(5)};
+}
+ `
+ }));
+});
+
+g.test('loop_break_if_logical_or_condition').
+desc('Test flow control for a loop with a logical or break if').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ var i = ${f.value(0)};
+ loop {
+ ${f.expect_order(1, 3, 6, 9)}
+ continuing {
+ i++;
+ break if !(a(i) || b(i));
+ }
+ }
+ ${f.expect_order(12)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(2, 4, 7, 10)}
+ return i < ${f.value(2)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(5, 8, 11)}
+ return i < ${f.value(4)};
+}
+ `
+ }));
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/switch.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/switch.spec.js
index 09664a067e..597ef20c78 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/switch.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/switch.spec.js
@@ -153,4 +153,37 @@ default: {
${f.expect_order(2)}
`
);
+});
+
+g.test('switch_inside_loop_with_continue').
+desc('Test that flow control executes correct for a switch calling continue inside a loop').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(
+ t,
+ (f) => `
+${f.expect_order(0)}
+var i = ${f.value(0)};
+loop {
+ switch (i) {
+ case 1: {
+ ${f.expect_order(4)}
+ continue;
+ }
+ default: {
+ ${f.expect_order(1)}
+ break;
+ }
+ }
+ ${f.expect_order(2)}
+
+ continuing {
+ ${f.expect_order(3, 5)}
+ i++;
+ break if i >= 2;
+ }
+}
+${f.expect_order(6)}
+`
+ );
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/while.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/while.spec.js
index f4bbc942ef..b77e09bf48 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/while.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/flow_control/while.spec.js
@@ -137,4 +137,58 @@ fn((t) => {
${f.expect_order(19)}
`
);
+});
+
+g.test('while_logical_and_condition').
+desc('Test flow control for a while-loop with a logical and condition').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ var i = ${f.value(0)};
+ while (a(i) && b(i)) {
+ ${f.expect_order(3, 6)}
+ i++;
+ }
+ ${f.expect_order(8)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(1, 4, 7)}
+ return i < ${f.value(2)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(2, 5)}
+ return i < ${f.value(5)};
+}
+ `
+ }));
+});
+
+g.test('while_logical_or_condition').
+desc('Test flow control for a while-loop with a logical or condition').
+params((u) => u.combine('preventValueOptimizations', [true, false])).
+fn((t) => {
+ runFlowControlTest(t, (f) => ({
+ entrypoint: `
+ ${f.expect_order(0)}
+ var i = ${f.value(0)};
+ while (a(i) || b(i)) {
+ ${f.expect_order(2, 4, 7, 10)}
+ i++;
+ }
+ ${f.expect_order(13)}
+ `,
+ extra: `
+fn a(i : i32) -> bool {
+ ${f.expect_order(1, 3, 5, 8, 11)}
+ return i < ${f.value(2)};
+}
+fn b(i : i32) -> bool {
+ ${f.expect_order(6, 9, 12)}
+ return i < ${f.value(4)};
+}
+ `
+ }));
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_layout.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_layout.spec.js
new file mode 100644
index 0000000000..53a797b7c8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_layout.spec.js
@@ -0,0 +1,1059 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Test memory layout requirements`;import { makeTestGroup } from '../../../common/framework/test_group.js';
+import { keysOf } from '../../../common/util/data_tables.js';
+import { iterRange } from '../../../common/util/util.js';
+import { GPUTest } from '../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+
+
+
+
+
+
+
+
+
+
+
+const kLayoutCases = {
+ vec2u_align8: {
+ type: `S_vec2u_align`,
+ decl: `struct S_vec2u_align {
+ x : u32,
+ y : vec2u,
+ }`,
+ read_assign: `out = in.y[1]`,
+ write_assign: `out.y[1] = in`,
+ offset: 12
+ },
+ vec3u_align16: {
+ type: `S_vec3u_align`,
+ decl: `struct S_vec3u_align {
+ x : u32,
+ y : vec3u,
+ }`,
+ read_assign: `out = in.y[2]`,
+ write_assign: `out.y[2] = in`,
+ offset: 24
+ },
+ vec4u_align16: {
+ type: `S_vec4u_align`,
+ decl: `struct S_vec4u_align {
+ x : u32,
+ y : vec4u,
+ }`,
+ read_assign: `out = in.y[0]`,
+ write_assign: `out.y[0] = in`,
+ offset: 16
+ },
+ struct_align32: {
+ type: `S_align32`,
+ decl: `struct S_align32 {
+ x : u32,
+ @align(32) y : u32,
+ }`,
+ read_assign: `out = in.y;`,
+ write_assign: `out.y = in`,
+ offset: 32
+ },
+ vec2h_align4: {
+ type: `S_vec2h_align`,
+ decl: `struct S_vec2h_align {
+ x : f16,
+ y : vec2h,
+ }`,
+ read_assign: `out = u32(in.y[0])`,
+ write_assign: `out.y[0] = f16(in)`,
+ offset: 4,
+ f16: true
+ },
+ vec3h_align8: {
+ type: `S_vec3h_align`,
+ decl: `struct S_vec3h_align {
+ x : f16,
+ y : vec3h,
+ }`,
+ read_assign: `out = u32(in.y[2])`,
+ write_assign: `out.y[2] = f16(in)`,
+ offset: 12,
+ f16: true
+ },
+ vec4h_align8: {
+ type: `S_vec4h_align`,
+ decl: `struct S_vec4h_align {
+ x : f16,
+ y : vec4h,
+ }`,
+ read_assign: `out = u32(in.y[2])`,
+ write_assign: `out.y[2] = f16(in)`,
+ offset: 12,
+ f16: true
+ },
+ vec2f_align8: {
+ type: `S_vec2f_align`,
+ decl: `struct S_vec2f_align {
+ x : u32,
+ y : vec2f,
+ }`,
+ read_assign: `out = u32(in.y[1])`,
+ write_assign: `out.y[1] = f32(in)`,
+ offset: 12,
+ f32: true
+ },
+ vec3f_align16: {
+ type: `S_vec3f_align`,
+ decl: `struct S_vec3f_align {
+ x : u32,
+ y : vec3f,
+ }`,
+ read_assign: `out = u32(in.y[2])`,
+ write_assign: `out.y[2] = f32(in)`,
+ offset: 24,
+ f32: true
+ },
+ vec4f_align16: {
+ type: `S_vec4f_align`,
+ decl: `struct S_vec4f_align {
+ x : u32,
+ y : vec4f,
+ }`,
+ read_assign: `out = u32(in.y[0])`,
+ write_assign: `out.y[0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ vec3i_size12: {
+ type: `S_vec3i_size`,
+ decl: `struct S_vec3i_size {
+ x : vec3i,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 12
+ },
+ vec3h_size6: {
+ type: `S_vec3h_size`,
+ decl: `struct S_vec3h_size {
+ x : vec3h,
+ y : f16,
+ z : f16,
+ }`,
+ read_assign: `out = u32(in.z)`,
+ write_assign: `out.z = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ size80: {
+ type: `S_size80`,
+ decl: `struct S_size80 {
+ @size(80) x : u32,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 80
+ },
+ atomic_align4: {
+ type: `S_atomic_align`,
+ decl: `struct S_atomic_align {
+ x : u32,
+ y : atomic<u32>,
+ }`,
+ read_assign: `out = atomicLoad(&in.y)`,
+ write_assign: `atomicStore(&out.y, in)`,
+ offset: 4
+ },
+ atomic_size4: {
+ type: `S_atomic_size`,
+ decl: `struct S_atomic_size {
+ x : atomic<u32>,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 4
+ },
+ mat2x2f_align8: {
+ type: `S_mat2x2f_align`,
+ decl: `struct S_mat2x2f_align {
+ x : u32,
+ y : mat2x2f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 8,
+ f32: true
+ },
+ mat3x2f_align8: {
+ type: `S_mat3x2f_align`,
+ decl: `struct S_mat3x2f_align {
+ x : u32,
+ y : mat3x2f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 8,
+ f32: true
+ },
+ mat4x2f_align8: {
+ type: `S_mat4x2f_align`,
+ decl: `struct S_mat4x2f_align {
+ x : u32,
+ y : mat4x2f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 8,
+ f32: true
+ },
+ mat2x3f_align16: {
+ type: `S_mat2x3f_align`,
+ decl: `struct S_mat2x3f_align {
+ x : u32,
+ y : mat2x3f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat3x3f_align16: {
+ type: `S_mat3x3f_align`,
+ decl: `struct S_mat3x3f_align {
+ x : u32,
+ y : mat3x3f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat4x3f_align16: {
+ type: `S_mat4x3f_align`,
+ decl: `struct S_mat4x3f_align {
+ x : u32,
+ y : mat4x3f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat2x4f_align16: {
+ type: `S_mat2x4f_align`,
+ decl: `struct S_mat2x4f_align {
+ x : u32,
+ y : mat2x4f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat3x4f_align16: {
+ type: `S_mat3x4f_align`,
+ decl: `struct S_mat3x4f_align {
+ x : u32,
+ y : mat3x4f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat4x4f_align16: {
+ type: `S_mat4x4f_align`,
+ decl: `struct S_mat4x4f_align {
+ x : u32,
+ y : mat4x4f,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f32(in)`,
+ offset: 16,
+ f32: true
+ },
+ mat2x2h_align4: {
+ type: `S_mat2x2h_align`,
+ decl: `struct S_mat2x2h_align {
+ x : u32,
+ y : mat2x2h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 4,
+ f16: true
+ },
+ mat3x2h_align4: {
+ type: `S_mat3x2h_align`,
+ decl: `struct S_mat3x2h_align {
+ x : u32,
+ y : mat3x2h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 4,
+ f16: true
+ },
+ mat4x2h_align4: {
+ type: `S_mat4x2h_align`,
+ decl: `struct S_mat4x2h_align {
+ x : u32,
+ y : mat4x2h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 4,
+ f16: true
+ },
+ mat2x3h_align8: {
+ type: `S_mat2x3h_align`,
+ decl: `struct S_mat2x3h_align {
+ x : u32,
+ y : mat2x3h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat3x3h_align8: {
+ type: `S_mat3x3h_align`,
+ decl: `struct S_mat3x3h_align {
+ x : u32,
+ y : mat2x3h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat4x3h_align8: {
+ type: `S_mat4x3h_align`,
+ decl: `struct S_mat4x3h_align {
+ x : u32,
+ y : mat4x3h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat2x4h_align8: {
+ type: `S_mat2x4h_align`,
+ decl: `struct S_mat2x4h_align {
+ x : u32,
+ y : mat2x4h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat3x4h_align8: {
+ type: `S_mat3x4h_align`,
+ decl: `struct S_mat3x4h_align {
+ x : u32,
+ y : mat3x4h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat4x4h_align8: {
+ type: `S_mat4x4h_align`,
+ decl: `struct S_mat4x4h_align {
+ x : u32,
+ y : mat4x4h,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat2x2f_size: {
+ type: `S_mat2x2f_size`,
+ decl: `struct S_mat2x2f_size {
+ x : mat2x2f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 16
+ },
+ mat3x2f_size: {
+ type: `S_mat3x2f_size`,
+ decl: `struct S_mat3x2f_size {
+ x : mat3x2f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 24
+ },
+ mat4x2f_size: {
+ type: `S_mat4x2f_size`,
+ decl: `struct S_mat4x2f_size {
+ x : mat4x2f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 32
+ },
+ mat2x3f_size: {
+ type: `S_mat2x3f_size`,
+ decl: `struct S_mat2x3f_size {
+ x : mat2x3f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 32
+ },
+ mat3x3f_size: {
+ type: `S_mat3x3f_size`,
+ decl: `struct S_mat3x3f_size {
+ x : mat3x3f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 48
+ },
+ mat4x3f_size: {
+ type: `S_mat4x3f_size`,
+ decl: `struct S_mat4x3f_size {
+ x : mat4x3f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 64
+ },
+ mat2x4f_size: {
+ type: `S_mat2x4f_size`,
+ decl: `struct S_mat2x4f_size {
+ x : mat2x4f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 32
+ },
+ mat3x4f_size: {
+ type: `S_mat3x4f_size`,
+ decl: `struct S_mat3x4f_size {
+ x : mat3x4f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 48
+ },
+ mat4x4f_size: {
+ type: `S_mat4x4f_size`,
+ decl: `struct S_mat4x4f_size {
+ x : mat4x4f,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 64
+ },
+ mat2x2h_size: {
+ type: `S_mat2x2h_size`,
+ decl: `struct S_mat2x2h_size {
+ x : mat2x2h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 8,
+ f16: true
+ },
+ mat3x2h_size: {
+ type: `S_mat3x2h_size`,
+ decl: `struct S_mat3x2h_size {
+ x : mat3x2h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 12,
+ f16: true
+ },
+ mat4x2h_size: {
+ type: `S_mat4x2h_size`,
+ decl: `struct S_mat4x2h_size {
+ x : mat4x2h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 16,
+ f16: true
+ },
+ mat2x3h_size: {
+ type: `S_mat2x3h_size`,
+ decl: `struct S_mat2x3h_size {
+ x : mat2x3h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 16,
+ f16: true
+ },
+ mat3x3h_size: {
+ type: `S_mat3x3h_size`,
+ decl: `struct S_mat3x3h_size {
+ x : mat3x3h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 24,
+ f16: true
+ },
+ mat4x3h_size: {
+ type: `S_mat4x3h_size`,
+ decl: `struct S_mat4x3h_size {
+ x : mat4x3h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 32,
+ f16: true
+ },
+ mat2x4h_size: {
+ type: `S_mat2x4h_size`,
+ decl: `struct S_mat2x4h_size {
+ x : mat2x4h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 16,
+ f16: true
+ },
+ mat3x4h_size: {
+ type: `S_mat3x4h_size`,
+ decl: `struct S_mat3x4h_size {
+ x : mat3x4h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 24,
+ f16: true
+ },
+ mat4x4h_size: {
+ type: `S_mat4x4h_size`,
+ decl: `struct S_mat4x4h_size {
+ x : mat4x4h,
+ y : f16,
+ }`,
+ read_assign: `out = u32(in.y)`,
+ write_assign: `out.y = f16(in)`,
+ offset: 32,
+ f16: true
+ },
+ struct_align_vec2i: {
+ type: `S_struct_align_vec2i`,
+ decl: `struct Inner {
+ x : u32,
+ y : vec2i,
+ }
+ struct S_struct_align_vec2i {
+ x : u32,
+ y : Inner,
+ }`,
+ read_assign: `out = in.y.x`,
+ write_assign: `out.y.x = in`,
+ offset: 8,
+ skip_uniform: true
+ },
+ struct_align_vec3i: {
+ type: `S_struct_align_vec3i`,
+ decl: `struct Inner {
+ x : u32,
+ y : vec3i,
+ }
+ struct S_struct_align_vec3i {
+ x : u32,
+ y : Inner,
+ }`,
+ read_assign: `out = in.y.x`,
+ write_assign: `out.y.x = in`,
+ offset: 16
+ },
+ struct_align_vec4i: {
+ type: `S_struct_align_vec4i`,
+ decl: `struct Inner {
+ x : u32,
+ y : vec4i,
+ }
+ struct S_struct_align_vec4i {
+ x : u32,
+ y : Inner,
+ }`,
+ read_assign: `out = in.y.x`,
+ write_assign: `out.y.x = in`,
+ offset: 16
+ },
+ struct_align_vec2h: {
+ type: `S_struct_align_vec2h`,
+ decl: `struct Inner {
+ x : f16,
+ y : vec2h,
+ }
+ struct S_struct_align_vec2h {
+ x : f16,
+ y : Inner,
+ }`,
+ read_assign: `out = u32(in.y.x)`,
+ write_assign: `out.y.x = f16(in)`,
+ offset: 4,
+ f16: true,
+ skip_uniform: true
+ },
+ struct_align_vec3h: {
+ type: `S_struct_align_vec3h`,
+ decl: `struct Inner {
+ x : f16,
+ y : vec3h,
+ }
+ struct S_struct_align_vec3h {
+ x : f16,
+ y : Inner,
+ }`,
+ read_assign: `out = u32(in.y.x)`,
+ write_assign: `out.y.x = f16(in)`,
+ offset: 8,
+ f16: true,
+ skip_uniform: true
+ },
+ struct_align_vec4h: {
+ type: `S_struct_align_vec4h`,
+ decl: `struct Inner {
+ x : f16,
+ y : vec4h,
+ }
+ struct S_struct_align_vec4h {
+ x : f16,
+ y : Inner,
+ }`,
+ read_assign: `out = u32(in.y.x)`,
+ write_assign: `out.y.x = f16(in)`,
+ offset: 8,
+ f16: true,
+ skip_uniform: true
+ },
+ struct_size_roundup: {
+ type: `S_struct_size_roundup`,
+ decl: `struct Inner {
+ x : vec3u,
+ }
+ struct S_struct_size_roundup {
+ x : Inner,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 16
+ },
+ struct_inner_size: {
+ type: `S_struct_inner_size`,
+ decl: `struct Inner {
+ @size(112) x : u32,
+ }
+ struct S_struct_inner_size {
+ x : Inner,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 112
+ },
+ struct_inner_align: {
+ type: `S_struct_inner_align`,
+ decl: `struct Inner {
+ @align(64) x : u32,
+ }
+ struct S_struct_inner_align {
+ x : u32,
+ y : Inner,
+ }`,
+ read_assign: `out = in.y.x`,
+ write_assign: `out.y.x = in`,
+ offset: 64
+ },
+ struct_inner_size_and_align: {
+ type: `S_struct_inner_size_and_align`,
+ decl: `struct Inner {
+ @align(32) @size(33) x : u32,
+ }
+ struct S_struct_inner_size_and_align {
+ x : Inner,
+ y : Inner,
+ }`,
+ read_assign: `out = in.y.x`,
+ write_assign: `out.y.x = in`,
+ offset: 64
+ },
+ struct_override_size: {
+ type: `S_struct_override_size`,
+ decl: `struct Inner {
+ @size(32) x : u32,
+ }
+ struct S_struct_override_size {
+ @size(64) x : Inner,
+ y : u32,
+ }`,
+ read_assign: `out = in.y`,
+ write_assign: `out.y = in`,
+ offset: 64
+ },
+ struct_double_align: {
+ type: `S_struct_double_align`,
+ decl: `struct Inner {
+ x : u32,
+ @align(32) y : u32,
+ }
+ struct S_struct_double_align {
+ x : u32,
+ @align(64) y : Inner,
+ }`,
+ read_assign: `out = in.y.y`,
+ write_assign: `out.y.y = in`,
+ offset: 96
+ },
+ array_vec3u_align: {
+ type: `S_array_vec3u_align`,
+ decl: `struct S_array_vec3u_align {
+ x : u32,
+ y : array<vec3u, 2>,
+ }`,
+ read_assign: `out = in.y[0][0]`,
+ write_assign: `out.y[0][0] = in`,
+ offset: 16
+ },
+ array_vec3h_align: {
+ type: `S_array_vec3h_align`,
+ decl: `struct S_array_vec3h_align {
+ x : f16,
+ y : array<vec3h, 2>,
+ }`,
+ read_assign: `out = u32(in.y[0][0])`,
+ write_assign: `out.y[0][0] = f16(in)`,
+ offset: 8,
+ f16: true,
+ skip_uniform: true
+ },
+ array_vec3u_stride: {
+ type: `S_array_vec3u_stride`,
+ decl: `struct S_array_vec3u_stride {
+ x : array<vec3u, 4>,
+ }`,
+ read_assign: `out = in.x[1][0]`,
+ write_assign: `out.x[1][0] = in`,
+ offset: 16
+ },
+ array_vec3h_stride: {
+ type: `S_array_vec3h_stride`,
+ decl: `struct S_array_vec3h_stride {
+ x : array<vec3h, 4>,
+ }`,
+ read_assign: `out = u32(in.x[1][0])`,
+ write_assign: `out.x[1][0] = f16(in)`,
+ offset: 8,
+ f16: true,
+ skip_uniform: true
+ },
+ array_stride_size: {
+ type: `array<S_stride, 4>`,
+ decl: `struct S_stride {
+ @size(16) x : u32,
+ }`,
+ read_assign: `out = in[2].x`,
+ write_assign: `out[2].x = in`,
+ offset: 32
+ }
+};
+
+g.test('read_layout').
+desc('Test reading memory layouts').
+params((u) =>
+u.
+combine('case', keysOf(kLayoutCases)).
+combine('aspace', ['storage', 'uniform', 'workgroup', 'function', 'private']).
+beginSubcases()
+).
+beforeAllSubcases((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ if (testcase.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+ // Don't test atomics in workgroup due to initialization boilerplate.
+ t.skipIf(
+ testcase.type.includes('atomic') && t.params.aspace !== 'storage',
+ `Skipping atomic test for non-storage address space`
+ );
+
+ t.skipIf(
+ testcase.skip_uniform === true && t.params.aspace === 'uniform',
+ `Uniform requires 16 byte alignment`
+ );
+}).
+fn((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ let code = `
+${testcase.f16 ? 'enable f16;' : ''}
+${testcase.decl}
+
+@group(0) @binding(1)
+var<storage, read_write> out : u32;
+`;
+
+ if (t.params.aspace === 'uniform') {
+ code += `@group(0) @binding(0)
+ var<${t.params.aspace}> in : ${testcase.type};`;
+ } else if (t.params.aspace === 'storage') {
+ // Use read_write for input data to support atomics.
+ code += `@group(0) @binding(0)
+ var<${t.params.aspace}, read_write> in : ${testcase.type};`;
+ } else {
+ code += `@group(0) @binding(0)
+ var<storage> pre_in : ${testcase.type};`;
+ if (t.params.aspace === 'workgroup') {
+ code += `
+ var<workgroup> in : ${testcase.type};`;
+ } else if (t.params.aspace === 'private') {
+ code += `
+ var<private> in : ${testcase.type};`;
+ }
+ }
+
+ code += `
+@compute @workgroup_size(1,1,1)
+fn main() {
+`;
+
+ if (
+ t.params.aspace === 'workgroup' ||
+ t.params.aspace === 'function' ||
+ t.params.aspace === 'private')
+ {
+ if (t.params.aspace === 'function') {
+ code += `var in : ${testcase.type};\n`;
+ }
+ code += `in = pre_in;`;
+ if (t.params.aspace === 'workgroup') {
+ code += `workgroupBarrier();\n`;
+ }
+ }
+
+ code += `\n${testcase.read_assign};\n}`;
+
+ let usage = GPUBufferUsage.COPY_SRC;
+ if (t.params.aspace === 'uniform') {
+ usage |= GPUBufferUsage.UNIFORM;
+ } else {
+ usage |= GPUBufferUsage.STORAGE;
+ }
+
+ // Magic number is 42 in various representations.
+ const inMagicNumber = testcase.f16 ? 0x5140 : testcase.f32 ? 0x42280000 : 42;
+ const in_buffer = t.makeBufferWithContents(
+ new Uint32Array([
+ ...iterRange(128, (x) => {
+ if (x * 4 === testcase.offset) {
+ return inMagicNumber;
+ } else {
+ return 0;
+ }
+ })]
+ ),
+ usage
+ );
+ t.trackForCleanup(in_buffer);
+
+ const out_buffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(1, (x) => 0)]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ );
+ t.trackForCleanup(out_buffer);
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: 'main'
+ }
+ });
+
+ const bg = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer: in_buffer
+ }
+ },
+ {
+ binding: 1,
+ resource: {
+ buffer: out_buffer
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg);
+ pass.dispatchWorkgroups(1, 1, 1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesEqual(out_buffer, new Uint32Array([42]));
+});
+
+g.test('write_layout').
+desc('Test writing memory layouts').
+params((u) =>
+u.
+combine('case', keysOf(kLayoutCases)).
+combine('aspace', ['storage', 'workgroup', 'function', 'private']).
+beginSubcases()
+).
+beforeAllSubcases((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ if (testcase.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+ // Don't test atomics in workgroup due to initialization boilerplate.
+ t.skipIf(
+ testcase.type.includes('atomic') && t.params.aspace !== 'storage',
+ `Skipping atomic test for non-storage address space`
+ );
+}).
+fn((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ let code = `
+${testcase.f16 ? 'enable f16;' : ''}
+${testcase.decl}
+
+@group(0) @binding(0)
+var<storage> in : u32;
+`;
+
+ if (t.params.aspace === 'storage') {
+ code += `@group(0) @binding(1)
+ var<storage, read_write> out : ${testcase.type};\n`;
+ } else {
+ code += `@group(0) @binding(1)
+ var<storage, read_write> post_out : ${testcase.type};\n`;
+
+ if (t.params.aspace === 'workgroup') {
+ code += `var<workgroup> out : ${testcase.type};\n`;
+ } else if (t.params.aspace === 'private') {
+ code += `var<private> out : ${testcase.type};\n`;
+ }
+ }
+
+ code += `
+@compute @workgroup_size(1,1,1)
+fn main() {
+`;
+
+ if (t.params.aspace === 'function') {
+ code += `var out : ${testcase.type};\n`;
+ }
+
+ code += `${testcase.write_assign};\n`;
+ if (
+ t.params.aspace === 'workgroup' ||
+ t.params.aspace === 'function' ||
+ t.params.aspace === 'private')
+ {
+ if (t.params.aspace === 'workgroup') {
+ code += `workgroupBarrier();\n`;
+ }
+ code += `post_out = out;`;
+ }
+
+ code += `\n}`;
+
+ const in_buffer = t.makeBufferWithContents(
+ new Uint32Array([42]),
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ );
+ t.trackForCleanup(in_buffer);
+
+ const out_buffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(128, (x) => 0)]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ );
+ t.trackForCleanup(out_buffer);
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: 'main'
+ }
+ });
+
+ const bg = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer: in_buffer
+ }
+ },
+ {
+ binding: 1,
+ resource: {
+ buffer: out_buffer
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg);
+ pass.dispatchWorkgroups(1, 1, 1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ // Magic number is 42 in various representations.
+ const outMagicNumber = testcase.f16 ? 0x5140 : testcase.f32 ? 0x42280000 : 42;
+ const expect = new Uint32Array([
+ ...iterRange(128, (x) => {
+ if (x * 4 === testcase.offset) {
+ return outMagicNumber;
+ } else {
+ return 0;
+ }
+ })]
+ );
+
+ t.expectGPUBufferValuesEqual(out_buffer, expect);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/barrier.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/barrier.spec.js
index f5e41440bb..9ccd04c61d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/barrier.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/barrier.spec.js
@@ -43,22 +43,33 @@ const memoryModelTestParams = {
numBehaviors: 2
};
-// The two kinds of non-atomic accesses tested.
+// The three kinds of non-atomic accesses tested.
// rw: read -> barrier -> write
// wr: write -> barrier -> read
// ww: write -> barrier -> write
// Test the non-atomic memory types.
-const kMemTypes = [MemoryType.NonAtomicStorageClass, MemoryType.NonAtomicWorkgroupClass];
+const kMemTypes = [
+MemoryType.NonAtomicStorageClass,
+MemoryType.NonAtomicWorkgroupClass,
+MemoryType.NonAtomicTextureClass];
+
const storageMemoryBarrierStoreLoadTestCode = `
test_locations.value[x_0] = 1;
- workgroupBarrier();
+ storageBarrier();
let r0 = u32(test_locations.value[x_1]);
atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_1].r0, r0);
`;
+const textureMemoryBarrierStoreLoadTestCode = `
+ textureStore(texture_locations, indexToCoord(x_0), vec4u(1));
+ textureBarrier();
+ let r0 = textureLoad(texture_locations, indexToCoord(x_1)).x;
+ atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_1].r0, r0);
+`;
+
const workgroupMemoryBarrierStoreLoadTestCode = `
wg_test_locations[x_0] = 1;
workgroupBarrier();
@@ -66,13 +77,27 @@ const workgroupMemoryBarrierStoreLoadTestCode = `
atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_1].r0, r0);
`;
+const workgroupUniformLoadMemoryBarrierStoreLoadTestCode = `
+ wg_test_locations[x_0] = 1;
+ _ = workgroupUniformLoad(&placeholder_wg_var);
+ let r0 = u32(wg_test_locations[x_1]);
+ atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_1].r0, r0);
+`;
+
const storageMemoryBarrierLoadStoreTestCode = `
let r0 = u32(test_locations.value[x_0]);
- workgroupBarrier();
+ storageBarrier();
test_locations.value[x_1] = 1;
atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_0].r0, r0);
`;
+const textureMemoryBarrierLoadStoreTestCode = `
+ let r0 = textureLoad(texture_locations, indexToCoord(x_0)).x;
+ textureBarrier();
+ textureStore(texture_locations, indexToCoord(x_1), vec4u(1));
+ atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_0].r0, r0);
+`;
+
const workgroupMemoryBarrierLoadStoreTestCode = `
let r0 = u32(wg_test_locations[x_0]);
workgroupBarrier();
@@ -80,12 +105,27 @@ const workgroupMemoryBarrierLoadStoreTestCode = `
atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_0].r0, r0);
`;
+const workgroupUniformLoadMemoryBarrierLoadStoreTestCode = `
+ let r0 = u32(wg_test_locations[x_0]);
+ _ = workgroupUniformLoad(&placeholder_wg_var);
+ wg_test_locations[x_1] = 1;
+ atomicStore(&results.value[shuffled_workgroup * workgroupXSize + id_0].r0, r0);
+`;
+
const storageMemoryBarrierStoreStoreTestCode = `
test_locations.value[x_0] = 1;
storageBarrier();
test_locations.value[x_1] = 2;
`;
+const textureMemoryBarrierStoreStoreTestCode = `
+ textureStore(texture_locations, indexToCoord(x_0), vec4u(1));
+ textureBarrier();
+ textureStore(texture_locations, indexToCoord(x_1), vec4u(2));
+ textureBarrier();
+ test_locations.value[x_1] = textureLoad(texture_locations, indexToCoord(x_1)).x;
+`;
+
const workgroupMemoryBarrierStoreStoreTestCode = `
wg_test_locations[x_0] = 1;
workgroupBarrier();
@@ -94,20 +134,56 @@ const workgroupMemoryBarrierStoreStoreTestCode = `
test_locations.value[shuffled_workgroup * workgroupXSize * stress_params.mem_stride * 2u + x_1] = wg_test_locations[x_1];
`;
-function getTestCode(p) {
+const workgroupUniformLoadMemoryBarrierStoreStoreTestCode = `
+ wg_test_locations[x_0] = 1;
+ _ = workgroupUniformLoad(&placeholder_wg_var);
+ wg_test_locations[x_1] = 2;
+ _ = workgroupUniformLoad(&placeholder_wg_var);
+ test_locations.value[shuffled_workgroup * workgroupXSize * stress_params.mem_stride * 2u + x_1] = wg_test_locations[x_1];
+`;
+
+function getTestCode(p)
+
+
+
+{
switch (p.accessPair) {
- case 'rw':
- return p.memType === MemoryType.NonAtomicStorageClass ?
- storageMemoryBarrierLoadStoreTestCode :
- workgroupMemoryBarrierLoadStoreTestCode;
- case 'wr':
- return p.memType === MemoryType.NonAtomicStorageClass ?
- storageMemoryBarrierStoreLoadTestCode :
- workgroupMemoryBarrierStoreLoadTestCode;
- case 'ww':
- return p.memType === MemoryType.NonAtomicStorageClass ?
- storageMemoryBarrierStoreStoreTestCode :
- workgroupMemoryBarrierStoreStoreTestCode;
+ case 'rw':{
+ switch (p.memType) {
+ case MemoryType.NonAtomicStorageClass:
+ return storageMemoryBarrierLoadStoreTestCode;
+ case MemoryType.NonAtomicTextureClass:
+ return textureMemoryBarrierLoadStoreTestCode;
+ default:
+ return p.normalBarrier ?
+ workgroupMemoryBarrierLoadStoreTestCode :
+ workgroupUniformLoadMemoryBarrierLoadStoreTestCode;
+ }
+ }
+ case 'wr':{
+ switch (p.memType) {
+ case MemoryType.NonAtomicStorageClass:
+ return storageMemoryBarrierStoreLoadTestCode;
+ case MemoryType.NonAtomicTextureClass:
+ return textureMemoryBarrierStoreLoadTestCode;
+ default:
+ return p.normalBarrier ?
+ workgroupMemoryBarrierStoreLoadTestCode :
+ workgroupUniformLoadMemoryBarrierStoreLoadTestCode;
+ }
+ }
+ case 'ww':{
+ switch (p.memType) {
+ case MemoryType.NonAtomicStorageClass:
+ return storageMemoryBarrierStoreStoreTestCode;
+ case MemoryType.NonAtomicTextureClass:
+ return textureMemoryBarrierStoreStoreTestCode;
+ default:
+ return p.normalBarrier ?
+ workgroupMemoryBarrierStoreStoreTestCode :
+ workgroupUniformLoadMemoryBarrierStoreStoreTestCode;
+ }
+ }
}
}
@@ -122,14 +198,29 @@ params((u) =>
u.
combine('accessValueType', kAccessValueTypes).
combine('memType', kMemTypes).
-combine('accessPair', ['wr'])
+combine('accessPair', ['wr']).
+combine('normalBarrier', [true, false])
).
beforeAllSubcases((t) => {
if (t.params.accessValueType === 'f16') {
t.selectDeviceOrSkipTestCase('shader-f16');
}
+ t.skipIf(
+ !t.params.normalBarrier && t.params.memType !== MemoryType.NonAtomicWorkgroupClass,
+ 'workgroupUniformLoad does not have storage memory semantics'
+ );
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass && t.params.accessValueType === 'f16',
+ 'textures do not support f16 access'
+ );
}).
fn(async (t) => {
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'requires RW storage textures feature'
+ );
+
const resultCode = `
if (r0 == 1u) {
atomicAdd(&test_results.seq, 1u);
@@ -137,11 +228,14 @@ fn(async (t) => {
atomicAdd(&test_results.weak, 1u);
}
`;
- const testShader = buildTestShader(
+ let testShader = buildTestShader(
getTestCode(t.params),
t.params.memType,
TestType.IntraWorkgroup
);
+ if (!t.params.normalBarrier) {
+ testShader += '\nvar<workgroup> placeholder_wg_var : u32;\n';
+ }
const resultShader = buildResultShader(
resultCode,
TestType.IntraWorkgroup,
@@ -152,7 +246,8 @@ fn(async (t) => {
memoryModelTestParams,
testShader,
resultShader,
- t.params.accessValueType
+ t.params.accessValueType,
+ t.params.memType === MemoryType.NonAtomicTextureClass
);
await memModelTester.run(15, 1);
});
@@ -168,14 +263,29 @@ params((u) =>
u.
combine('accessValueType', kAccessValueTypes).
combine('memType', kMemTypes).
-combine('accessPair', ['rw'])
+combine('accessPair', ['rw']).
+combine('normalBarrier', [true, false])
).
beforeAllSubcases((t) => {
if (t.params.accessValueType === 'f16') {
t.selectDeviceOrSkipTestCase('shader-f16');
}
+ t.skipIf(
+ !t.params.normalBarrier && t.params.memType !== MemoryType.NonAtomicWorkgroupClass,
+ 'workgroupUniformLoad does not have storage memory semantics'
+ );
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass && t.params.accessValueType === 'f16',
+ 'textures do not support f16 access'
+ );
}).
fn(async (t) => {
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'requires RW storage textures feature'
+ );
+
const resultCode = `
if (r0 == 0u) {
atomicAdd(&test_results.seq, 1u);
@@ -183,11 +293,14 @@ fn(async (t) => {
atomicAdd(&test_results.weak, 1u);
}
`;
- const testShader = buildTestShader(
+ let testShader = buildTestShader(
getTestCode(t.params),
t.params.memType,
TestType.IntraWorkgroup
);
+ if (!t.params.normalBarrier) {
+ testShader += '\nvar<workgroup> placeholder_wg_var : u32;\n';
+ }
const resultShader = buildResultShader(
resultCode,
TestType.IntraWorkgroup,
@@ -198,7 +311,8 @@ fn(async (t) => {
memoryModelTestParams,
testShader,
resultShader,
- t.params.accessValueType
+ t.params.accessValueType,
+ t.params.memType === MemoryType.NonAtomicTextureClass
);
await memModelTester.run(12, 1);
});
@@ -214,14 +328,29 @@ params((u) =>
u.
combine('accessValueType', kAccessValueTypes).
combine('memType', kMemTypes).
-combine('accessPair', ['ww'])
+combine('accessPair', ['ww']).
+combine('normalBarrier', [true, false])
).
beforeAllSubcases((t) => {
if (t.params.accessValueType === 'f16') {
t.selectDeviceOrSkipTestCase('shader-f16');
}
+ t.skipIf(
+ !t.params.normalBarrier && t.params.memType !== MemoryType.NonAtomicWorkgroupClass,
+ 'workgroupUniformLoad does not have storage memory semantics'
+ );
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass && t.params.accessValueType === 'f16',
+ 'textures do not support f16 access'
+ );
}).
fn(async (t) => {
+ t.skipIf(
+ t.params.memType === MemoryType.NonAtomicTextureClass &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'requires RW storage textures feature'
+ );
+
const resultCode = `
if (mem_x_0 == 2u) {
atomicAdd(&test_results.seq, 1u);
@@ -229,11 +358,14 @@ fn(async (t) => {
atomicAdd(&test_results.weak, 1u);
}
`;
- const testShader = buildTestShader(
+ let testShader = buildTestShader(
getTestCode(t.params),
t.params.memType,
TestType.IntraWorkgroup
);
+ if (!t.params.normalBarrier) {
+ testShader += '\nvar<workgroup> placeholder_wg_var : u32;\n';
+ }
const resultShader = buildResultShader(
resultCode,
TestType.IntraWorkgroup,
@@ -244,7 +376,8 @@ fn(async (t) => {
memoryModelTestParams,
testShader,
resultShader,
- t.params.accessValueType
+ t.params.accessValueType,
+ t.params.memType === MemoryType.NonAtomicTextureClass
);
await memModelTester.run(10, 1);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/memory_model_setup.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/memory_model_setup.js
index 8d107ae597..b10243e610 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/memory_model_setup.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/memory_model_setup.js
@@ -1,6 +1,8 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { checkElementsPassPredicate } from '../../../util/check_contents.js';
+**/import { checkElementsPassPredicate } from '../../../util/check_contents.js';import { align } from '../../../util/math.js';
+import { PRNG } from '../../../util/prng.js';
+
/* All buffer sizes are counted in units of 4-byte words. */
/**
@@ -15,6 +17,9 @@
export const kAccessValueTypes = ['f16', 'u32'];
+/** The width used for textures (default compat limit in WebGPU). */
+const kWidth = 4096;
+
/* Parameter values are set heuristically, typically by a time-intensive search. */
@@ -82,6 +87,27 @@ const numReadOutputs = 2;
+/** Represents a device texture and a utility buffer for resetting memory and copying parameters. */
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
/** Specifies the buffers used during a memory model test. */
@@ -102,6 +128,10 @@ const numReadOutputs = 2;
+
+
+
+
/** The number of stress params to add to the stress params buffer. */
const numStressParams = 12;
const barrierParamIndex = 0;
@@ -128,11 +158,11 @@ const bytesPerWord = 4;
* - enable directives, if necessary
* - the type alias for AccessValueType
*/
-function shaderPreamble(accessValueType) {
+function shaderPreamble(accessValueType, constants) {
if (accessValueType === 'f16') {
- return 'enable f16;\nalias AccessValueTy = f16;\n';
+ return `enable f16;\nalias AccessValueTy = f16;\n${constants}\n`;
}
- return `alias AccessValueTy = ${accessValueType};\n`;
+ return `alias AccessValueTy = ${accessValueType};\n${constants}\n`;
}
/**
@@ -180,30 +210,46 @@ export class MemoryModelTester {
+
+
+
+
/** Sets up a memory model test by initializing buffers and pipeline layouts. */
constructor(
t,
params,
testShader,
resultShader,
- accessValueType = 'u32')
+ accessValueType = 'u32',
+ useTexture = false)
{
+ this.prng = new PRNG(1);
this.test = t;
this.params = params;
-
- testShader = shaderPreamble(accessValueType) + testShader;
- resultShader = shaderPreamble(accessValueType) + resultShader;
+ this.useTexture = useTexture;
+
+ const workgroupXSize = Math.min(params.workgroupSize, t.device.limits.maxComputeWorkgroupSizeX);
+ const constants = `
+ const kNumBarriers = 1u; // MAINTENANCE_TODO: make barrier not an array
+ const kMaxWorkgroups = ${params.maxWorkgroups}u;
+ const kScratchMemorySize = ${params.scratchMemorySize}u;
+ const kWorkgroupXSize = ${workgroupXSize}u;
+ `;
+ testShader = shaderPreamble(accessValueType, constants) + testShader;
+ resultShader = shaderPreamble(accessValueType, constants) + resultShader;
// set up buffers
- const testingThreads = this.params.workgroupSize * this.params.testingWorkgroups;
+ const testingThreads = workgroupXSize * this.params.testingWorkgroups;
const testLocationsSize =
testingThreads * numMemLocations * this.params.memStride * bytesPerWord;
const testLocationsBuffer = {
deviceBuf: this.test.device.createBuffer({
+ label: 'testLocationsBuffer',
size: testLocationsSize,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
}),
srcBuf: this.test.device.createBuffer({
+ label: 'testLocationsSrcBuf',
size: testLocationsSize,
usage: GPUBufferUsage.COPY_SRC
}),
@@ -213,10 +259,12 @@ export class MemoryModelTester {
const readResultsSize = testingThreads * numReadOutputs * bytesPerWord;
const readResultsBuffer = {
deviceBuf: this.test.device.createBuffer({
+ label: 'readResultsBuffer',
size: readResultsSize,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
}),
srcBuf: this.test.device.createBuffer({
+ label: 'readResultsSrcBuf',
size: readResultsSize,
usage: GPUBufferUsage.COPY_SRC
}),
@@ -226,10 +274,12 @@ export class MemoryModelTester {
const testResultsSize = this.params.numBehaviors * bytesPerWord;
const testResultsBuffer = {
deviceBuf: this.test.device.createBuffer({
+ label: 'testResultsBuffer',
size: testResultsSize,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
}),
srcBuf: this.test.device.createBuffer({
+ label: 'testResultsSrcBuffer',
size: testResultsSize,
usage: GPUBufferUsage.COPY_SRC
}),
@@ -249,52 +299,87 @@ export class MemoryModelTester {
size: shuffledWorkgroupsSize
};
- const barrierSize = bytesPerWord;
+ if (this.useTexture) {
+ const numTexels = testLocationsSize / bytesPerWord;
+ const width = kWidth;
+ const height = numTexels / width;
+ const textureSize = { width, height };
+ const textureLocations = {
+ deviceTex: this.test.device.createTexture({
+ format: 'r32uint',
+ dimension: '2d',
+ size: textureSize,
+ usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.STORAGE_BINDING
+ }),
+ srcBuf: testLocationsBuffer.srcBuf,
+ size: testLocationsSize
+ };
+ this.textures = {
+ testLocations: textureLocations
+ };
+ }
+
+ // Combine 3 arrays into 1 buffer as we need to keep the number of storage buffers to 4 for compat.
+ const falseSharingAvoidanceQuantum = 4096;
+ const barrierSize = align(bytesPerWord, falseSharingAvoidanceQuantum);
+ const scratchpadSize = align(
+ this.params.scratchMemorySize * bytesPerWord,
+ falseSharingAvoidanceQuantum
+ );
+ const scratchMemoryLocationsSize = align(
+ this.params.maxWorkgroups * bytesPerWord,
+ falseSharingAvoidanceQuantum
+ );
+ const comboSize = barrierSize + scratchpadSize + scratchMemoryLocationsSize;
+
+ const comboBuffer = this.test.device.createBuffer({
+ label: 'comboBuffer',
+ size: comboSize,
+ usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ });
+
const barrierBuffer = {
- deviceBuf: this.test.device.createBuffer({
- size: barrierSize,
- usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
- }),
+ deviceBuf: comboBuffer,
srcBuf: this.test.device.createBuffer({
+ label: 'barrierSrcBuf',
size: barrierSize,
usage: GPUBufferUsage.COPY_SRC
}),
- size: barrierSize
+ size: barrierSize,
+ offset: 0
};
- const scratchpadSize = this.params.scratchMemorySize * bytesPerWord;
const scratchpadBuffer = {
- deviceBuf: this.test.device.createBuffer({
- size: scratchpadSize,
- usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
- }),
+ deviceBuf: comboBuffer,
srcBuf: this.test.device.createBuffer({
+ label: 'scratchpadSrcBuf',
size: scratchpadSize,
usage: GPUBufferUsage.COPY_SRC
}),
- size: scratchpadSize
+ size: scratchpadSize,
+ offset: barrierSize
};
- const scratchMemoryLocationsSize = this.params.maxWorkgroups * bytesPerWord;
const scratchMemoryLocationsBuffer = {
- deviceBuf: this.test.device.createBuffer({
- size: scratchMemoryLocationsSize,
- usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
- }),
+ deviceBuf: comboBuffer,
srcBuf: this.test.device.createBuffer({
+ label: 'scratchMemoryLocationsSrcBuf',
size: scratchMemoryLocationsSize,
usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE
}),
- size: scratchMemoryLocationsSize
+ size: scratchMemoryLocationsSize,
+ offset: barrierSize + scratchpadSize
};
const stressParamsSize = numStressParams * bytesPerWord;
const stressParamsBuffer = {
deviceBuf: this.test.device.createBuffer({
+ label: 'stressParamsBuffer',
size: stressParamsSize,
usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.UNIFORM
}),
srcBuf: this.test.device.createBuffer({
+ label: 'stressParamsSrcBuf',
size: stressParamsSize,
usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE
}),
@@ -314,19 +399,50 @@ export class MemoryModelTester {
// set up pipeline layouts
const testLayout = this.test.device.createBindGroupLayout({
+ label: 'testLayout',
entries: [
{ binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
{ binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
{ binding: 2, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'read-only-storage' } },
{ binding: 3, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
- { binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
- { binding: 5, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
- { binding: 6, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' } }]
+ { binding: 4, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'uniform' } }]
});
+
+ let layouts = [testLayout];
+ if (this.useTexture) {
+ const textureLayout = this.test.device.createBindGroupLayout({
+ label: 'textureLayout',
+ entries: [
+ {
+ binding: 0,
+ visibility: GPUShaderStage.COMPUTE,
+ storageTexture: {
+ access: 'read-write',
+ format: 'r32uint',
+ viewDimension: '2d'
+ }
+ }]
+
+ });
+ layouts = [testLayout, textureLayout];
+
+ const texLocations = this.textures.testLocations.deviceTex;
+ this.textureBindGroup = this.test.device.createBindGroup({
+ label: 'textureBindGroup',
+ entries: [
+ {
+ binding: 0,
+ resource: texLocations.createView()
+ }],
+
+ layout: textureLayout
+ });
+ }
this.testPipeline = this.test.device.createComputePipeline({
+ label: 'testPipeline',
layout: this.test.device.createPipelineLayout({
- bindGroupLayouts: [testLayout]
+ bindGroupLayouts: layouts
}),
compute: {
module: this.test.device.createShaderModule({
@@ -336,19 +452,19 @@ export class MemoryModelTester {
}
});
this.testBindGroup = this.test.device.createBindGroup({
+ label: 'testBindGroup',
entries: [
{ binding: 0, resource: { buffer: this.buffers.testLocations.deviceBuf } },
{ binding: 1, resource: { buffer: this.buffers.readResults.deviceBuf } },
{ binding: 2, resource: { buffer: this.buffers.shuffledWorkgroups.deviceBuf } },
- { binding: 3, resource: { buffer: this.buffers.barrier.deviceBuf } },
- { binding: 4, resource: { buffer: this.buffers.scratchpad.deviceBuf } },
- { binding: 5, resource: { buffer: this.buffers.scratchMemoryLocations.deviceBuf } },
- { binding: 6, resource: { buffer: this.buffers.stressParams.deviceBuf } }],
+ { binding: 3, resource: { buffer: comboBuffer } },
+ { binding: 4, resource: { buffer: this.buffers.stressParams.deviceBuf } }],
layout: testLayout
});
const resultLayout = this.test.device.createBindGroupLayout({
+ label: 'resultLayout',
entries: [
{ binding: 0, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
{ binding: 1, visibility: GPUShaderStage.COMPUTE, buffer: { type: 'storage' } },
@@ -357,6 +473,7 @@ export class MemoryModelTester {
});
this.resultPipeline = this.test.device.createComputePipeline({
+ label: 'resultPipeline',
layout: this.test.device.createPipelineLayout({
bindGroupLayouts: [resultLayout]
}),
@@ -368,6 +485,7 @@ export class MemoryModelTester {
}
});
this.resultBindGroup = this.test.device.createBindGroup({
+ label: 'resultBindGroup',
entries: [
{ binding: 0, resource: { buffer: this.buffers.testLocations.deviceBuf } },
{ binding: 1, resource: { buffer: this.buffers.readResults.deviceBuf } },
@@ -402,10 +520,16 @@ export class MemoryModelTester {
this.copyBufferToBuffer(encoder, this.buffers.scratchpad);
this.copyBufferToBuffer(encoder, this.buffers.scratchMemoryLocations);
this.copyBufferToBuffer(encoder, this.buffers.stressParams);
+ if (this.useTexture) {
+ this.copyBufferToTexture(encoder, this.textures.testLocations);
+ }
const testPass = encoder.beginComputePass();
testPass.setPipeline(this.testPipeline);
testPass.setBindGroup(0, this.testBindGroup);
+ if (this.useTexture) {
+ testPass.setBindGroup(1, this.textureBindGroup);
+ }
testPass.dispatchWorkgroups(numWorkgroups);
testPass.end();
@@ -464,16 +588,42 @@ export class MemoryModelTester {
}
/** Utility method that simplifies copying source buffers to device buffers. */
- copyBufferToBuffer(encoder, buffer) {
- encoder.copyBufferToBuffer(buffer.srcBuf, 0, buffer.deviceBuf, 0, buffer.size);
+ copyBufferToBuffer(
+ encoder,
+ buffer)
+ {
+ encoder.copyBufferToBuffer(
+ buffer.srcBuf,
+ 0,
+ buffer.deviceBuf,
+ buffer.offset || 0,
+ buffer.size
+ );
+ }
+
+ /** Utility method that simplifies copying source buffers to device textures. */
+ copyBufferToTexture(encoder, texture) {
+ const bytesPerWord = 4; // always uses r32uint format.
+ const numTexels = texture.size / bytesPerWord;
+ const size = { width: kWidth, height: numTexels / kWidth };
+ encoder.copyBufferToTexture(
+ {
+ buffer: texture.srcBuf,
+ offset: 0,
+ bytesPerRow: kWidth * bytesPerWord,
+ rowsPerImage: size.height
+ },
+ { texture: texture.deviceTex },
+ size
+ );
}
- /** Returns a random integer between 0 and the max. */
+ /** Returns a random integer in the range [0, max). */
getRandomInt(max) {
- return Math.floor(Math.random() * max);
+ return this.prng.randomU32() % max;
}
- /** Returns a random number in between the min and max values. */
+ /** Returns a random number in the range [min, max). */
getRandomInRange(min, max) {
if (min === max) {
return min;
@@ -626,7 +776,19 @@ const shaderMemStructures = `
};
struct IndexMemory {
- value: array<u32>
+ value: array<u32>,
+ };
+
+ struct AtomicMemoryBarrier {
+ value: array<atomic<u32>, kNumBarriers>
+ };
+
+ struct IndexMemoryScratchpad {
+ value: array<u32, kMaxWorkgroups>,
+ };
+
+ struct IndexMemoryScratchLocations {
+ value: array<u32, kScratchMemorySize>,
};
struct ReadResult {
@@ -635,7 +797,14 @@ const shaderMemStructures = `
};
struct ReadResults {
- value: array<ReadResult>
+ value: array<ReadResult>,
+ };
+
+ // These arrays are combine into 1 buffer because compat mode only supports 4 storage buffers by default.
+ struct CombinedData {
+ barrier: AtomicMemoryBarrier,
+ scratchpad: IndexMemoryScratchpad,
+ scratch_locations: IndexMemoryScratchLocations,
};
struct StressParamsMemory {
@@ -687,10 +856,8 @@ const twoBehaviorTestResultStructure = `
const commonTestShaderBindings = `
@group(0) @binding(1) var<storage, read_write> results : ReadResults;
@group(0) @binding(2) var<storage, read> shuffled_workgroups : IndexMemory;
- @group(0) @binding(3) var<storage, read_write> barrier : AtomicMemory;
- @group(0) @binding(4) var<storage, read_write> scratchpad : IndexMemory;
- @group(0) @binding(5) var<storage, read_write> scratch_locations : IndexMemory;
- @group(0) @binding(6) var<uniform> stress_params : StressParamsMemory;
+ @group(0) @binding(3) var<storage, read_write> combo : CombinedData;
+ @group(0) @binding(4) var<uniform> stress_params : StressParamsMemory;
`;
/** The combined bindings for a test on atomic memory. */
@@ -709,6 +876,11 @@ const nonAtomicTestShaderBindings = [
commonTestShaderBindings].
join('\n');
+/** The extra binding for texture non-atomic texture tests. */
+const textureBindings = `
+@group(1) @binding(0) var texture_locations : texture_storage_2d<r32uint, read_write>;
+`;
+
/** Bindings used in the result aggregation phase of the test. */
const resultShaderBindings = `
@group(0) @binding(0) var<storage, read_write> test_locations : Memory;
@@ -750,6 +922,16 @@ const memoryLocationFunctions = `
}
`;
+/**
+ * Function to convert an index into an equivalent 2D coordinate for the texture.
+ */
+const textureFunctions = `
+ const kWidth = ${kWidth};
+ fn indexToCoord(idx : u32) -> vec2u {
+ return vec2u(idx % kWidth, idx / kWidth);
+ }
+`;
+
/** Functions that help add stress to the test. */
const testShaderFunctions = `
//Force the invocations in the workgroup to wait for each other, but without the general memory ordering
@@ -758,12 +940,12 @@ const testShaderFunctions = `
// the barrier but does not overly reduce testing throughput.
fn spin(limit: u32) {
var i : u32 = 0u;
- var bar_val : u32 = atomicAdd(&barrier.value[0], 1u);
+ var bar_val : u32 = atomicAdd(&combo.barrier.value[0], 1u);
loop {
if (i == 1024u || bar_val >= limit) {
break;
}
- bar_val = atomicAdd(&barrier.value[0], 0u);
+ bar_val = atomicAdd(&combo.barrier.value[0], 0u);
i = i + 1u;
}
}
@@ -773,44 +955,44 @@ const testShaderFunctions = `
// the compiler optimizing out unused loads, where 100,000 is larger than the maximum number of stress iterations used
// in any test.
fn do_stress(iterations: u32, pattern: u32, workgroup_id: u32) {
- let addr = scratch_locations.value[workgroup_id];
+ let addr = combo.scratch_locations.value[workgroup_id];
switch(pattern) {
case 0u: {
for(var i: u32 = 0u; i < iterations; i = i + 1u) {
- scratchpad.value[addr] = i;
- scratchpad.value[addr] = i + 1u;
+ combo.scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i + 1u;
}
}
case 1u: {
for(var i: u32 = 0u; i < iterations; i = i + 1u) {
- scratchpad.value[addr] = i;
- let tmp1: u32 = scratchpad.value[addr];
+ combo.scratchpad.value[addr] = i;
+ let tmp1: u32 = combo.scratchpad.value[addr];
if (tmp1 > 100000u) {
- scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i;
break;
}
}
}
case 2u: {
for(var i: u32 = 0u; i < iterations; i = i + 1u) {
- let tmp1: u32 = scratchpad.value[addr];
+ let tmp1: u32 = combo.scratchpad.value[addr];
if (tmp1 > 100000u) {
- scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i;
break;
}
- scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i;
}
}
case 3u: {
for(var i: u32 = 0u; i < iterations; i = i + 1u) {
- let tmp1: u32 = scratchpad.value[addr];
+ let tmp1: u32 = combo.scratchpad.value[addr];
if (tmp1 > 100000u) {
- scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i;
break;
}
- let tmp2: u32 = scratchpad.value[addr];
+ let tmp2: u32 = combo.scratchpad.value[addr];
if (tmp2 > 100000u) {
- scratchpad.value[addr] = i;
+ combo.scratchpad.value[addr] = i;
break;
}
}
@@ -827,7 +1009,7 @@ const testShaderFunctions = `
*/
const shaderEntryPoint = `
// Change to pipeline overridable constant when possible.
- const workgroupXSize = 256u;
+ const workgroupXSize = kWorkgroupXSize;
@compute @workgroup_size(workgroupXSize) fn main(
@builtin(local_invocation_id) local_invocation_id : vec3<u32>,
@builtin(workgroup_id) workgroup_id : vec3<u32>) {
@@ -980,6 +1162,18 @@ shaderEntryPoint,
testShaderCommonHeader].
join('\n');
+/** The common shader code for the test shaders that perform non-atomic texture memory litmus tests. */
+const textureMemoryNonAtomicTestShaderCode = [
+shaderMemStructures,
+nonAtomicTestShaderBindings,
+textureBindings,
+memoryLocationFunctions,
+textureFunctions,
+testShaderFunctions,
+shaderEntryPoint,
+testShaderCommonHeader].
+join('\n');
+
/** The common shader code for test shaders that perform atomic workgroup class memory litmus tests. */
const workgroupMemoryAtomicTestShaderCode = [
shaderMemStructures,
@@ -1014,7 +1208,9 @@ join('\n');
* Defines the types of possible memory a test is operating on. Used as part of the process of building shader code from
* its composite parts.
*/
-export let MemoryType = /*#__PURE__*/function (MemoryType) {MemoryType["AtomicStorageClass"] = "atomic_storage";MemoryType["NonAtomicStorageClass"] = "non_atomic_storage";MemoryType["AtomicWorkgroupClass"] = "atomic_workgroup";MemoryType["NonAtomicWorkgroupClass"] = "non_atomic_workgroup";return MemoryType;}({});
+export let MemoryType = /*#__PURE__*/function (MemoryType) {MemoryType["AtomicStorageClass"] = "atomic_storage";MemoryType["NonAtomicStorageClass"] = "non_atomic_storage";MemoryType["AtomicWorkgroupClass"] = "atomic_workgroup";MemoryType["NonAtomicWorkgroupClass"] = "non_atomic_workgroup";MemoryType["NonAtomicTextureClass"] = "non_atomic_texture";return MemoryType;}({});
+
+
@@ -1052,21 +1248,26 @@ memoryType,
testType)
{
let memoryTypeCode;
- let isStorageAS = false;
+ let isGlobalSpace = false;
switch (memoryType) {
case MemoryType.AtomicStorageClass:
memoryTypeCode = storageMemoryAtomicTestShaderCode;
- isStorageAS = true;
+ isGlobalSpace = true;
break;
case MemoryType.NonAtomicStorageClass:
memoryTypeCode = storageMemoryNonAtomicTestShaderCode;
- isStorageAS = true;
+ isGlobalSpace = true;
break;
case MemoryType.AtomicWorkgroupClass:
memoryTypeCode = workgroupMemoryAtomicTestShaderCode;
break;
case MemoryType.NonAtomicWorkgroupClass:
memoryTypeCode = workgroupMemoryNonAtomicTestShaderCode;
+ break;
+ case MemoryType.NonAtomicTextureClass:
+ memoryTypeCode = textureMemoryNonAtomicTestShaderCode;
+ isGlobalSpace = true;
+ break;
}
let testTypeCode;
switch (testType) {
@@ -1074,7 +1275,7 @@ testType)
testTypeCode = interWorkgroupTestShaderCode;
break;
case TestType.IntraWorkgroup:
- if (isStorageAS) {
+ if (isGlobalSpace) {
testTypeCode = storageIntraWorkgroupTestShaderCode;
} else {
testTypeCode = intraWorkgroupTestShaderCode;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence.spec.js
new file mode 100644
index 0000000000..a528737e78
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/memory_model/texture_intra_invocation_coherence.spec.js
@@ -0,0 +1,333 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Test that read/write storage textures are coherent within an invocation.
+
+Each invocation is assigned several random writing indices and a single
+read index from among those. Writes are randomly predicated (except the
+one corresponding to the read). Checks that an invocation can read data
+it has written to the texture previously.
+Does not test coherence between invocations
+
+Some platform (e.g. Metal) require a fence call to make writes visible
+to reads performed by the same invocation. These tests attempt to ensure
+WebGPU implementations emit correct fence calls.`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { unreachable, iterRange } from '../../../../common/util/util.js';
+import { GPUTest } from '../../../gpu_test.js';
+import { PRNG } from '../../../util/prng.js';
+
+const kRWStorageFormats = ['r32uint', 'r32sint', 'r32float'];
+const kDimensions = ['1d', '2d', '2d-array', '3d'];
+
+export const g = makeTestGroup(GPUTest);
+
+function indexToCoord(dim) {
+ switch (dim) {
+ case '1d':{
+ return `
+fn indexToCoord(idx : u32) -> u32 {
+ return idx;
+}`;
+ }
+ case '2d':
+ case '2d-array':{
+ return `
+fn indexToCoord(idx : u32) -> vec2u {
+ return vec2u(idx % (wgx * num_wgs_x), idx / (wgx * num_wgs_x));
+}`;
+ }
+ case '3d':{
+ return `
+fn indexToCoord(idx : u32) -> vec3u {
+ return vec3u(idx % (wgx * num_wgs_x), idx / (wgx * num_wgs_x), 0);
+}`;
+ }
+ default:{
+ unreachable(`unhandled dimension: ${dim}`);
+ }
+ }
+ return ``;
+}
+
+function textureType(format, dim) {
+ let t = `texture_storage_`;
+ switch (dim) {
+ case '1d':{
+ t += '1d';
+ break;
+ }
+ case '2d':{
+ t += '2d';
+ break;
+ }
+ case '2d-array':{
+ t += '2d_array';
+ break;
+ }
+ case '3d':{
+ t += '3d';
+ break;
+ }
+ default:{
+ unreachable(`unhandled dim: ${dim}`);
+ }
+ }
+ t += `<${format}, read_write>`;
+ return t;
+}
+
+function textureStore(dim, index) {
+ let code = `textureStore(t, indexToCoord(${index}), `;
+ if (dim === '2d-array') {
+ code += `0, `;
+ }
+ code += `texel)`;
+ return code;
+}
+
+function textureLoad(dim, format) {
+ let code = `textureLoad(t, indexToCoord(read_index[global_index])`;
+ if (dim === '2d-array') {
+ code += `, 0`;
+ }
+ code += `).x`;
+ if (format !== 'r32uint') {
+ code = `u32(${code})`;
+ }
+ return code;
+}
+
+function texel(format) {
+ switch (format) {
+ case 'r32uint':{
+ return 'vec4u(global_index,0,0,0)';
+ }
+ case 'r32sint':{
+ return 'vec4i(i32(global_index),0,0,0)';
+ }
+ case 'r32float':{
+ return 'vec4f(f32(global_index),0,0,0)';
+ }
+ default:{
+ unreachable('unhandled format: ${format}');
+ }
+ }
+ return '';
+}
+
+function getTextureSize(numTexels, dim) {
+ const size = { width: 1, height: 1, depthOrArrayLayers: 1 };
+ switch (dim) {
+ case '1d':{
+ size.width = numTexels;
+ break;
+ }
+ case '2d':
+ case '2d-array':
+ case '3d':{
+ size.width = numTexels / 2;
+ size.height = numTexels / 2;
+ // depthOrArrayLayers defaults to 1
+ break;
+ }
+ default:{
+ unreachable(`unhandled dim: ${dim}`);
+ }
+ }
+ return size;
+}
+
+g.test('texture_intra_invocation_coherence').
+desc(`Tests writes from an invocation are visible to reads from the same invocation`).
+params((u) => u.combine('format', kRWStorageFormats).combine('dim', kDimensions)).
+beforeAllSubcases((t) => {
+ t.selectDeviceForTextureFormatOrSkipTestCase(t.params.format);
+}).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+
+ const wgx = 16;
+ const wgy = t.device.limits.maxComputeInvocationsPerWorkgroup / wgx;
+ const num_wgs_x = 2;
+ const num_wgs_y = 2;
+ const invocations = wgx * wgy * num_wgs_x * num_wgs_y;
+ const num_writes_per_invocation = 4;
+
+ const code = `
+requires readonly_and_readwrite_storage_textures;
+
+@group(0) @binding(0)
+var t : ${textureType(t.params.format, t.params.dim)};
+
+@group(1) @binding(0)
+var<storage> write_indices : array<vec4u>;
+
+@group(1) @binding(1)
+var<storage> read_index : array<u32>;
+
+@group(1) @binding(2)
+var<storage> write_mask : array<vec4u>;
+
+@group(1) @binding(3)
+var<storage, read_write> output : array<u32>;
+
+const wgx = ${wgx}u;
+const wgy = ${wgy}u;
+const num_wgs_x = ${num_wgs_x}u;
+const num_wgs_y = ${num_wgs_y}u;
+
+${indexToCoord(t.params.dim)}
+
+@compute @workgroup_size(wgx, wgy, 1)
+fn main(@builtin(global_invocation_id) gid : vec3u) {
+ let global_index = gid.x + gid.y * num_wgs_x * wgx;
+
+ let write_index = write_indices[global_index];
+ let mask = write_mask[global_index];
+ let texel = ${texel(t.params.format)};
+
+ if mask.x != 0 {
+ ${textureStore(t.params.dim, 'write_index.x')};
+ }
+ if mask.y != 0 {
+ ${textureStore(t.params.dim, 'write_index.y')};
+ }
+ if mask.z != 0 {
+ ${textureStore(t.params.dim, 'write_index.z')};
+ }
+ if mask.w != 0 {
+ ${textureStore(t.params.dim, 'write_index.w')};
+ }
+ output[global_index] = ${textureLoad(t.params.dim, t.params.format)};
+}`;
+
+ // To get a variety of testing, seed the random number generator based on which case this is.
+ // This means subcases will not execute the same code.
+ const seed =
+ kRWStorageFormats.indexOf(t.params.format) * kRWStorageFormats.length +
+ kDimensions.indexOf(t.params.dim);
+ const prng = new PRNG(seed);
+
+ const num_write_indices = invocations * num_writes_per_invocation;
+ const write_indices = new Uint32Array([...iterRange(num_write_indices, (x) => x)]);
+ const write_masks = new Uint32Array([...iterRange(num_write_indices, (x) => 0)]);
+ // Shuffle the indices.
+ for (let i = 0; i < num_write_indices; i++) {
+ const remaining = num_write_indices - i;
+ const swapIdx = prng.randomU32() % remaining + i;
+ const tmp = write_indices[swapIdx];
+ write_indices[swapIdx] = write_indices[i];
+ write_indices[i] = tmp;
+
+ // Assign random write masks
+ const mask = prng.randomU32() % 2;
+ write_masks[i] = mask;
+ }
+ const num_read_indices = invocations;
+ const read_indices = new Uint32Array(num_read_indices);
+ for (let i = 0; i < num_read_indices; i++) {
+ // Pick a random index from index from this invocation's writes to read from.
+ // Ensure that write is not masked out.
+ const readIdx = prng.randomU32() % num_writes_per_invocation;
+ read_indices[i] = write_indices[num_writes_per_invocation * i + readIdx];
+ write_masks[num_writes_per_invocation * i + readIdx] = 1;
+ }
+
+ // Buffers
+ const write_index_buffer = t.makeBufferWithContents(
+ write_indices,
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ );
+ t.trackForCleanup(write_index_buffer);
+ const read_index_buffer = t.makeBufferWithContents(
+ read_indices,
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ );
+ t.trackForCleanup(read_index_buffer);
+ const write_mask_buffer = t.makeBufferWithContents(
+ write_masks,
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
+ );
+ t.trackForCleanup(write_mask_buffer);
+ const output_buffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(invocations, (x) => 0)]),
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ );
+ t.trackForCleanup(output_buffer);
+
+ // Texture
+ const texture_size = getTextureSize(invocations * num_writes_per_invocation, t.params.dim);
+ const texture = t.device.createTexture({
+ format: t.params.format,
+ dimension: t.params.dim === '2d-array' ? '2d' : t.params.dim,
+ size: texture_size,
+ usage: GPUTextureUsage.STORAGE_BINDING
+ });
+ t.trackForCleanup(texture);
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: 'main'
+ }
+ });
+
+ const bg0 = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: texture.createView({
+ format: t.params.format,
+ dimension: t.params.dim,
+ mipLevelCount: 1,
+ arrayLayerCount: 1
+ })
+ }]
+
+ });
+ const bg1 = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(1),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer: write_index_buffer
+ }
+ },
+ {
+ binding: 1,
+ resource: {
+ buffer: read_index_buffer
+ }
+ },
+ {
+ binding: 2,
+ resource: {
+ buffer: write_mask_buffer
+ }
+ },
+ {
+ binding: 3,
+ resource: {
+ buffer: output_buffer
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg0);
+ pass.setBindGroup(1, bg1);
+ pass.dispatchWorkgroups(num_wgs_x, num_wgs_y, 1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ const expectedOutput = new Uint32Array([...iterRange(num_read_indices, (x) => x)]);
+ t.expectGPUBufferValuesEqual(output_buffer, expectedOutput);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access.spec.js
index 8e6cd5c80b..561bde4fce 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access.spec.js
@@ -7,6 +7,7 @@ Tests to check datatype clamping in shaders is correctly implemented for all ind
TODO: add tests to check that textureLoad operations stay in-bounds.
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
import { assert } from '../../../common/util/util.js';
+import { Float16Array } from '../../../external/petamoriken/float16/float16.js';
import { GPUTest } from '../../gpu_test.js';
import { align } from '../../util/math.js';
import { generateTypes, supportedScalarTypes, supportsAtomics } from '../types.js';
@@ -25,6 +26,7 @@ const kMinI32 = -0x8000_0000;
*/
async function runShaderTest(
t,
+enables,
stage,
testSource,
layout,
@@ -41,7 +43,7 @@ dynamicOffsets)
usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.STORAGE
});
- const source = `
+ const source = `${enables}
struct Constants {
zero: u32
};
@@ -99,7 +101,9 @@ array,
type,
{ zeroByteStart, zeroByteCount })
{
- const constructor = { u32: Uint32Array, i32: Int32Array, f32: Float32Array }[type];
+ const constructor = { u32: Uint32Array, i32: Int32Array, f16: Float16Array, f32: Float32Array }[
+ type];
+
assert(zeroByteCount % constructor.BYTES_PER_ELEMENT === 0);
new constructor(array).fill(42);
new constructor(array, zeroByteStart, zeroByteCount / constructor.BYTES_PER_ELEMENT).fill(0);
@@ -122,6 +126,7 @@ desc(
TODO: Test types like vec2<atomic<i32>>, if that's allowed.
TODO: Test exprIndexAddon as constexpr.
TODO: Test exprIndexAddon as pipeline-overridable constant expression.
+ TODO: Adjust test logic to support array of f16 in the uniform address space
`
).
params((u) =>
@@ -168,10 +173,15 @@ combineWithParams([
{ shadowingMode: 'function-scope' }]
).
expand('isAtomic', (p) => supportsAtomics(p) ? [false, true] : [false]).
-beginSubcases().
expand('baseType', supportedScalarTypes).
+beginSubcases().
expandWithParams(generateTypes)
).
+beforeAllSubcases((t) => {
+ if (t.params.baseType === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
fn(async (t) => {
const {
addressSpace,
@@ -189,6 +199,13 @@ fn(async (t) => {
assert(_kTypeInfo !== undefined, 'not an indexable type');
assert('arrayLength' in _kTypeInfo);
+ if (baseType === 'f16' && addressSpace === 'uniform' && containerType === 'array') {
+ // Array elements must be aligned to 16 bytes, but the logic in generateTypes
+ // creates an array of vec4 of the baseType. But for f16 that's only 8 bytes.
+ // We would need to write more complex logic for that.
+ t.skip('Test logic does not handle array of f16 in the uniform address space');
+ }
+
let usesCanary = false;
let globalSource = '';
let testFunctionSource = '';
@@ -429,6 +446,8 @@ fn runTest() -> u32 {
});
+ const enables = t.params.baseType === 'f16' ? 'enable f16;' : '';
+
// Run it.
if (bufferBindingSize !== undefined && baseType !== 'bool') {
const expectedData = new ArrayBuffer(testBufferSize);
@@ -450,6 +469,7 @@ fn runTest() -> u32 {
// Run the shader, accessing the buffer.
await runShaderTest(
t,
+ enables,
GPUShaderStage.COMPUTE,
testSource,
layout,
@@ -475,6 +495,6 @@ fn runTest() -> u32 {
bufferBindingEnd
);
} else {
- await runShaderTest(t, GPUShaderStage.COMPUTE, testSource, layout, []);
+ await runShaderTest(t, enables, GPUShaderStage.COMPUTE, testSource, layout, []);
}
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access_vertex.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access_vertex.spec.js
index d632179008..f964d330c3 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access_vertex.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/robust_access_vertex.spec.js
@@ -545,6 +545,7 @@ params(
combine('additionalBuffers', [0, 4]).
combine('partialLastNumber', [false, true]).
combine('offsetVertexBuffer', [false, true]).
+ beginSubcases().
combine('errorScale', [0, 1, 4, 10 ** 2, 10 ** 4, 10 ** 6]).
unless((p) => p.drawCallTestParameter === 'instanceCount' && p.errorScale > 10 ** 4) // To avoid timeout
).
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/compute_builtins.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/compute_builtins.spec.js
index 68eebacc05..90de84fb44 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/compute_builtins.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/compute_builtins.spec.js
@@ -1,7 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `Test compute shader builtin variables`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
-import { iterRange } from '../../../../common/util/util.js';
import { GPUTest } from '../../../gpu_test.js';
export const g = makeTestGroup(GPUTest);
@@ -98,17 +97,14 @@ fn((t) => {
// WGSL shader that stores every builtin value to a buffer, for every invocation in the grid.
const wgsl = `
- struct S {
- data : array<u32>
+ struct Outputs {
+ local_id: vec3u,
+ local_index: u32,
+ global_id: vec3u,
+ group_id: vec3u,
+ num_groups: vec3u,
};
- struct V {
- data : array<vec3<u32>>
- };
- @group(0) @binding(0) var<storage, read_write> local_id_out : V;
- @group(0) @binding(1) var<storage, read_write> local_index_out : S;
- @group(0) @binding(2) var<storage, read_write> global_id_out : V;
- @group(0) @binding(3) var<storage, read_write> group_id_out : V;
- @group(0) @binding(4) var<storage, read_write> num_groups_out : V;
+ @group(0) @binding(0) var<storage, read_write> outputs : array<Outputs>;
${structures}
@@ -122,11 +118,13 @@ fn((t) => {
) {
let group_index = ((${group_id}.z * ${num_groups}.y) + ${group_id}.y) * ${num_groups}.x + ${group_id}.x;
let global_index = group_index * ${invocationsPerGroup}u + ${local_index};
- local_id_out.data[global_index] = ${local_id};
- local_index_out.data[global_index] = ${local_index};
- global_id_out.data[global_index] = ${global_id};
- group_id_out.data[global_index] = ${group_id};
- num_groups_out.data[global_index] = ${num_groups};
+ var o: Outputs;
+ o.local_id = ${local_id};
+ o.local_index = ${local_index};
+ o.global_id = ${global_id};
+ o.group_id = ${group_id};
+ o.num_groups = ${num_groups};
+ outputs[global_index] = o;
}
`;
@@ -140,35 +138,24 @@ fn((t) => {
}
});
- // Helper to create a `size`-byte buffer with binding number `binding`.
- function createBuffer(size, binding) {
- const buffer = t.device.createBuffer({
- size,
- usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
- });
- t.trackForCleanup(buffer);
-
- bindGroupEntries.push({
- binding,
- resource: {
- buffer
- }
- });
-
- return buffer;
- }
+ // Offsets are in u32 size units
+ const kLocalIdOffset = 0;
+ const kLocalIndexOffset = 3;
+ const kGlobalIdOffset = 4;
+ const kGroupIdOffset = 8;
+ const kNumGroupsOffset = 12;
+ const kOutputElementSize = 16;
// Create the output buffers.
- const bindGroupEntries = [];
- const localIdBuffer = createBuffer(totalInvocations * 16, 0);
- const localIndexBuffer = createBuffer(totalInvocations * 4, 1);
- const globalIdBuffer = createBuffer(totalInvocations * 16, 2);
- const groupIdBuffer = createBuffer(totalInvocations * 16, 3);
- const numGroupsBuffer = createBuffer(totalInvocations * 16, 4);
+ const outputBuffer = t.device.createBuffer({
+ size: totalInvocations * kOutputElementSize * 4,
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+ t.trackForCleanup(outputBuffer);
const bindGroup = t.device.createBindGroup({
layout: pipeline.getBindGroupLayout(0),
- entries: bindGroupEntries
+ entries: [{ binding: 0, resource: { buffer: outputBuffer } }]
});
// Run the shader.
@@ -204,11 +191,7 @@ fn((t) => {
// Helper to check that the vec3<u32> value at each index of the provided `output` buffer
// matches the expected value for that invocation, as generated by the `getBuiltinValue`
// function. The `name` parameter is the builtin name, used for error messages.
- const checkEachIndex = (
- output,
- name,
- getBuiltinValue) =>
- {
+ const checkEachIndex = (output) => {
// Loop over workgroups.
for (let gz = 0; gz < t.params.numGroups.z; gz++) {
for (let gy = 0; gy < t.params.numGroups.y; gy++) {
@@ -220,30 +203,44 @@ fn((t) => {
const groupIndex = (gz * t.params.numGroups.y + gy) * t.params.numGroups.x + gx;
const localIndex = (lz * t.params.groupSize.y + ly) * t.params.groupSize.x + lx;
const globalIndex = groupIndex * invocationsPerGroup + localIndex;
- const expected = getBuiltinValue(
- { x: gx, y: gy, z: gz },
- { x: lx, y: ly, z: lz }
+ const globalOffset = globalIndex * kOutputElementSize;
+
+ const expectEqual = (name, expected, actual) => {
+ if (actual !== expected) {
+ return new Error(
+ `${name} failed at group(${gx},${gy},${gz}) local(${lx},${ly},${lz}))\n` +
+ ` expected: ${expected}\n` +
+ ` got: ${actual}`
+ );
+ }
+ return undefined;
+ };
+
+ const checkVec3Value = (name, fieldOffset, expected) => {
+ const offset = globalOffset + fieldOffset;
+ return (
+ expectEqual(`${name}.x`, expected.x, output[offset + 0]) ||
+ expectEqual(`${name}.y`, expected.y, output[offset + 1]) ||
+ expectEqual(`${name}.z`, expected.z, output[offset + 2]));
+
+ };
+
+ const error =
+ checkVec3Value('local_id', kLocalIdOffset, { x: lx, y: ly, z: lz }) ||
+ checkVec3Value('global_id', kGlobalIdOffset, {
+ x: gx * t.params.groupSize.x + lx,
+ y: gy * t.params.groupSize.y + ly,
+ z: gz * t.params.groupSize.z + lz
+ }) ||
+ checkVec3Value('group_id', kGroupIdOffset, { x: gx, y: gy, z: gz }) ||
+ checkVec3Value('num_groups', kNumGroupsOffset, t.params.numGroups) ||
+ expectEqual(
+ 'local_index',
+ localIndex,
+ output[globalOffset + kLocalIndexOffset]
);
- if (output[globalIndex * 4 + 0] !== expected.x) {
- return new Error(
- `${name}.x failed at group(${gx},${gy},${gz}) local(${lx},${ly},${lz}))\n` +
- ` expected: ${expected.x}\n` +
- ` got: ${output[globalIndex * 4 + 0]}`
- );
- }
- if (output[globalIndex * 4 + 1] !== expected.y) {
- return new Error(
- `${name}.y failed at group(${gx},${gy},${gz}) local(${lx},${ly},${lz}))\n` +
- ` expected: ${expected.y}\n` +
- ` got: ${output[globalIndex * 4 + 1]}`
- );
- }
- if (output[globalIndex * 4 + 2] !== expected.z) {
- return new Error(
- `${name}.z failed at group(${gx},${gy},${gz}) local(${lx},${ly},${lz}))\n` +
- ` expected: ${expected.z}\n` +
- ` got: ${output[globalIndex * 4 + 2]}`
- );
+ if (error) {
+ return error;
}
}
}
@@ -254,44 +251,8 @@ fn((t) => {
return undefined;
};
- // Check @builtin(local_invocation_index) values.
- t.expectGPUBufferValuesEqual(
- localIndexBuffer,
- new Uint32Array([...iterRange(totalInvocations, (x) => x % invocationsPerGroup)])
- );
-
- // Check @builtin(local_invocation_id) values.
- t.expectGPUBufferValuesPassCheck(
- localIdBuffer,
- (outputData) => checkEachIndex(outputData, 'local_invocation_id', (_, localId) => localId),
- { type: Uint32Array, typedLength: totalInvocations * 4 }
- );
-
- // Check @builtin(global_invocation_id) values.
- const getGlobalId = (groupId, localId) => {
- return {
- x: groupId.x * t.params.groupSize.x + localId.x,
- y: groupId.y * t.params.groupSize.y + localId.y,
- z: groupId.z * t.params.groupSize.z + localId.z
- };
- };
- t.expectGPUBufferValuesPassCheck(
- globalIdBuffer,
- (outputData) => checkEachIndex(outputData, 'global_invocation_id', getGlobalId),
- { type: Uint32Array, typedLength: totalInvocations * 4 }
- );
-
- // Check @builtin(workgroup_id) values.
- t.expectGPUBufferValuesPassCheck(
- groupIdBuffer,
- (outputData) => checkEachIndex(outputData, 'workgroup_id', (groupId, _) => groupId),
- { type: Uint32Array, typedLength: totalInvocations * 4 }
- );
-
- // Check @builtin(num_workgroups) values.
- t.expectGPUBufferValuesPassCheck(
- numGroupsBuffer,
- (outputData) => checkEachIndex(outputData, 'num_workgroups', () => t.params.numGroups),
- { type: Uint32Array, typedLength: totalInvocations * 4 }
- );
+ t.expectGPUBufferValuesPassCheck(outputBuffer, (outputData) => checkEachIndex(outputData), {
+ type: Uint32Array,
+ typedLength: outputBuffer.size / 4
+ });
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/fragment_builtins.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/fragment_builtins.spec.js
new file mode 100644
index 0000000000..c02a1c8cda
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/fragment_builtins.spec.js
@@ -0,0 +1,1410 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Test fragment shader builtin variables and inter-stage variables
+
+* test builtin(position)
+* test @interpolate
+* test builtin(sample_index)
+* test builtin(front_facing)
+* test builtin(sample_mask)
+
+Note: @interpolate settings and sample_index affect whether or not the fragment shader
+is evaluated per-fragment or per-sample. With @interpolate(, sample) or usage of
+@builtin(sample_index) the fragment shader should be executed per-sample.
+
+* sample_mask output is tested in
+ src/webgpu/api/operation/render_pipeline/sample_mask.spec.ts
+
+* frag_depth output is tested in
+ src/webgpu/api/operation/rendering/depth_clip_clamp.spec.ts
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { ErrorWithExtra, assert, range, unreachable } from '../../../../common/util/util.js';
+
+import { GPUTest } from '../../../gpu_test.js';
+import { getMultisampleFragmentOffsets } from '../../../multisample_info.js';
+import { dotProduct, subtractVectors } from '../../../util/math.js';
+import { TexelView } from '../../../util/texture/texel_view.js';
+import { findFailedPixels } from '../../../util/texture/texture_ok.js';
+
+export const g = makeTestGroup(GPUTest);
+
+const s_deviceToPipelineMap = new WeakMap(
+
+
+
+
+
+);
+
+/**
+ * Returns an object of pipelines associated
+ * by weakmap to a device so we can cache pipelines.
+ */
+function getPipelinesForDevice(device) {
+ let pipelines = s_deviceToPipelineMap.get(device);
+ if (!pipelines) {
+ pipelines = {};
+ s_deviceToPipelineMap.set(device, pipelines);
+ }
+ return pipelines;
+}
+
+/**
+ * Gets a compute pipeline that will copy the given texture if passed
+ * a dispatch size of texture.width, texture.height
+ * @param device a device
+ * @param texture texture the pipeline is needed for.
+ * @returns A GPUComputePipeline
+ */
+function getCopyMultisamplePipelineForDevice(device, textures) {
+ assert(textures.length === 4);
+ assert(textures[0].sampleCount === textures[1].sampleCount);
+ assert(textures[0].sampleCount === textures[2].sampleCount);
+ assert(textures[0].sampleCount === textures[3].sampleCount);
+
+ const pipelineType = textures[0].sampleCount > 1 ? 'texture_multisampled_2d' : 'texture_2d';
+ const pipelines = getPipelinesForDevice(device);
+ let pipeline = pipelines[pipelineType];
+ if (!pipeline) {
+ const isMultisampled = pipelineType === 'texture_multisampled_2d';
+ const numSamples = isMultisampled ? 'textureNumSamples(texture0)' : '1u';
+ const sampleIndex = isMultisampled ? 'sampleIndex' : '0';
+ const module = device.createShaderModule({
+ code: `
+ @group(0) @binding(0) var texture0: ${pipelineType}<f32>;
+ @group(0) @binding(1) var texture1: ${pipelineType}<f32>;
+ @group(0) @binding(2) var texture2: ${pipelineType}<f32>;
+ @group(0) @binding(3) var texture3: ${pipelineType}<f32>;
+ @group(0) @binding(4) var<storage, read_write> buffer: array<f32>;
+
+ @compute @workgroup_size(1) fn cs(@builtin(global_invocation_id) id: vec3u) {
+ let numSamples = ${numSamples};
+ let dimensions = textureDimensions(texture0);
+ let sampleIndex = id.x % numSamples;
+ let tx = id.x / numSamples;
+ let offset = ((id.y * dimensions.x + tx) * numSamples + sampleIndex) * 4;
+ let r = vec4u(textureLoad(texture0, vec2u(tx, id.y), ${sampleIndex}) * 255.0);
+ let g = vec4u(textureLoad(texture1, vec2u(tx, id.y), ${sampleIndex}) * 255.0);
+ let b = vec4u(textureLoad(texture2, vec2u(tx, id.y), ${sampleIndex}) * 255.0);
+ let a = vec4u(textureLoad(texture3, vec2u(tx, id.y), ${sampleIndex}) * 255.0);
+
+ // expand rgba8unorm values back to their byte form, add them together
+ // and cast them to an f32 so we can recover the f32 values we encoded
+ // in the rgba8unorm texture.
+ buffer[offset + 0] = bitcast<f32>(dot(r, vec4u(0x1000000, 0x10000, 0x100, 0x1)));
+ buffer[offset + 1] = bitcast<f32>(dot(g, vec4u(0x1000000, 0x10000, 0x100, 0x1)));
+ buffer[offset + 2] = bitcast<f32>(dot(b, vec4u(0x1000000, 0x10000, 0x100, 0x1)));
+ buffer[offset + 3] = bitcast<f32>(dot(a, vec4u(0x1000000, 0x10000, 0x100, 0x1)));
+ }
+ `
+ });
+
+ pipeline = device.createComputePipeline({
+ label: 'copy multisampled texture pipeline',
+ layout: 'auto',
+ compute: {
+ module,
+ entryPoint: 'cs'
+ }
+ });
+
+ pipelines[pipelineType] = pipeline;
+ }
+ return pipeline;
+}
+
+function isTextureSameDimensions(a, b) {
+ return (
+ a.sampleCount === b.sampleCount &&
+ a.width === b.width &&
+ a.height === b.height &&
+ a.depthOrArrayLayers === b.depthOrArrayLayers);
+
+}
+
+/**
+ * Copies a texture (even if multisampled) to a buffer
+ * @param t a gpu test
+ * @param texture texture to copy
+ * @returns buffer with copy of texture, mip level 0, array layer 0.
+ */
+function copyRGBA8EncodedFloatTexturesToBufferIncludingMultisampledTextures(
+t,
+textures)
+{
+ assert(textures.length === 4);
+ assert(isTextureSameDimensions(textures[0], textures[1]));
+ assert(isTextureSameDimensions(textures[0], textures[2]));
+ assert(isTextureSameDimensions(textures[0], textures[3]));
+ const { width, height, sampleCount } = textures[0];
+
+ const copyBuffer = t.device.createBuffer({
+ size: width * height * sampleCount * 4 * 4,
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+ t.trackForCleanup(copyBuffer);
+
+ const buffer = t.device.createBuffer({
+ size: copyBuffer.size,
+ usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST
+ });
+ t.trackForCleanup(buffer);
+
+ const pipeline = getCopyMultisamplePipelineForDevice(t.device, textures);
+ const encoder = t.device.createCommandEncoder();
+
+ const textureEntries = textures.map(
+ (texture, i) => ({ binding: i, resource: texture.createView() })
+ );
+
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [...textureEntries, { binding: 4, resource: { buffer: copyBuffer } }]
+ });
+
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(width * sampleCount, height);
+ pass.end();
+
+ encoder.copyBufferToBuffer(copyBuffer, 0, buffer, 0, buffer.size);
+
+ t.device.queue.submit([encoder.finish()]);
+
+ return buffer;
+}
+
+/* column constants */
+const kX = 0;
+const kY = 1;
+const kZ = 2;
+const kW = 3;
+
+/**
+ * Gets a column of values from an array of arrays.
+ */
+function getColumn(values, colNum) {
+ return values.map((v) => v[colNum]);
+}
+
+/**
+ * Computes the linear interpolation of 3 values from 3 vertices of a triangle
+ * based on barycentric coordinates
+ */
+function linearInterpolation(baryCoords, interCoords) {
+ return dotProduct(baryCoords, interCoords);
+}
+
+/**
+ * Computes the perspective interpolation of 3 values from 3 vertices of a
+ * triangle based on barycentric coordinates and their corresponding clip space
+ * W coordinates.
+ */
+function perspectiveInterpolation(
+barycentricCoords,
+clipSpaceTriangleCoords,
+interCoords)
+{
+ const [a, b, c] = barycentricCoords;
+ const [fa, fb, fc] = interCoords;
+ const wa = clipSpaceTriangleCoords[0][kW];
+ const wb = clipSpaceTriangleCoords[1][kW];
+ const wc = clipSpaceTriangleCoords[2][kW];
+
+ return (a * fa / wa + b * fb / wb + c * fc / wc) / (a / wa + b / wb + c / wc);
+}
+
+/**
+ * Converts clip space coords to NDC coords
+ */
+function clipSpaceToNDC(point) {
+ return point.map((v) => v / point[kW]);
+}
+
+/**
+ * Converts NDC coords to window coords.
+ */
+function ndcToWindow(ndcPoint, viewport) {
+ const [xd, yd, zd] = ndcPoint;
+ const px = viewport[2];
+ const py = viewport[3];
+ const ox = viewport[0] + px / 2;
+ const oy = viewport[1] + py / 2;
+ const zNear = viewport[4];
+ const zFar = viewport[5];
+
+ return [
+ px / 2 * xd + ox,
+ -py / 2 * yd + oy,
+ zd * (zFar - zNear) + zNear];
+
+}
+
+/**
+ * Computes barycentric coordinates of triangle for point p.
+ * @param trianglePoints points for triangle
+ * @param p point in triangle (or relative to it)
+ * @returns barycentric coords of p
+ */
+function calcBarycentricCoordinates(trianglePoints, p) {
+ const [a, b, c] = trianglePoints;
+
+ const v0 = subtractVectors(b, a);
+ const v1 = subtractVectors(c, a);
+ const v2 = subtractVectors(p, a);
+
+ const dot00 = dotProduct(v0, v0);
+ const dot01 = dotProduct(v0, v1);
+ const dot11 = dotProduct(v1, v1);
+ const dot20 = dotProduct(v2, v0);
+ const dot21 = dotProduct(v2, v1);
+
+ const denom = 1 / (dot00 * dot11 - dot01 * dot01);
+ const v = (dot11 * dot20 - dot01 * dot21) * denom;
+ const w = (dot00 * dot21 - dot01 * dot20) * denom;
+ const u = 1 - v - w;
+
+ return [u, v, w];
+}
+
+/**
+ * Returns true if point is inside triangle
+ */
+function isInsideTriangle(barycentricCoords) {
+ for (const v of barycentricCoords) {
+ if (v < 0 || v > 1) {
+ return false;
+ }
+ }
+ return true;
+}
+
+/**
+ * Returns true if windowPoints define a clockwise triangle
+ */
+function isTriangleClockwise(windowPoints) {
+ let sum = 0;
+ for (let i = 0; i < 3; ++i) {
+ const p0 = windowPoints[i];
+ const p1 = windowPoints[(i + 1) % 3];
+ sum += p0[kX] * p1[kY] - p1[kX] * p0[kY];
+ }
+ return sum >= 0;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/**
+ * For each sample in texture, computes the values that would be provided
+ * to the shader as `@builtin(position)` if the texture was a render target
+ * and every point in the texture was inside the triangle.
+ * @param texture The texture
+ * @param clipSpacePoints triangle points in clip space
+ * @returns the expected values for each sample
+ */
+function generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ frontFace,
+ clipSpacePoints,
+ interpolateFn
+
+
+
+
+
+
+
+
+}) {
+ const expected = new Float32Array(width * height * sampleCount * 4);
+
+ const viewport = [0, 0, width, height, ...nearFar];
+
+ // For each triangle
+ for (let vertexIndex = 0; vertexIndex < clipSpacePoints.length; vertexIndex += 3) {
+ const ndcPoints = clipSpacePoints.slice(vertexIndex, vertexIndex + 3).map(clipSpaceToNDC);
+ const windowPoints = ndcPoints.map((p) => ndcToWindow(p, viewport));
+ const windowPoints2D = windowPoints.map((p) => p.slice(0, 2));
+
+ const cw = isTriangleClockwise(windowPoints2D);
+ const frontFacing = frontFace === 'cw' ? cw : !cw;
+ const fragmentOffsets = getMultisampleFragmentOffsets(sampleCount);
+
+ for (let y = 0; y < height; ++y) {
+ for (let x = 0; x < width; ++x) {
+ let sampleMask = 0;
+ for (let sampleIndex = 0; sampleIndex < sampleCount; ++sampleIndex) {
+ const localSampleMask = 1 << sampleIndex;
+ const multisampleOffset = fragmentOffsets[sampleIndex];
+ const sampleFragmentPoint = [x + multisampleOffset[0], y + multisampleOffset[1]];
+ const sampleBarycentricCoords = calcBarycentricCoordinates(
+ windowPoints2D,
+ sampleFragmentPoint
+ );
+
+ const inside = isInsideTriangle(sampleBarycentricCoords);
+ if (inside) {
+ sampleMask |= localSampleMask;
+ }
+ }
+
+ for (let sampleIndex = 0; sampleIndex < sampleCount; ++sampleIndex) {
+ const fragmentPoint = [x + 0.5, y + 0.5];
+ const multisampleOffset = fragmentOffsets[sampleIndex];
+ const sampleFragmentPoint = [x + multisampleOffset[0], y + multisampleOffset[1]];
+ const fragmentBarycentricCoords = calcBarycentricCoordinates(
+ windowPoints2D,
+ fragmentPoint
+ );
+ const sampleBarycentricCoords = calcBarycentricCoordinates(
+ windowPoints2D,
+ sampleFragmentPoint
+ );
+
+ const inside = isInsideTriangle(sampleBarycentricCoords);
+ if (inside) {
+ const output = interpolateFn({
+ baseVertexIndex: vertexIndex,
+ fragmentPoint,
+ fragmentBarycentricCoords,
+ sampleBarycentricCoords,
+ clipSpacePoints,
+ ndcPoints,
+ windowPoints,
+ sampleIndex,
+ sampleMask,
+ frontFacing
+ });
+
+ const offset = ((y * width + x) * sampleCount + sampleIndex) * 4;
+ expected.set(output, offset);
+ }
+ }
+ }
+ }
+ }
+ return expected;
+}
+
+/**
+ * Computes 'builtin(position)`
+ */
+function computeFragmentPosition({
+ fragmentPoint,
+ fragmentBarycentricCoords,
+ clipSpacePoints,
+ windowPoints
+}) {
+ return [
+ fragmentPoint[0],
+ fragmentPoint[1],
+ linearInterpolation(fragmentBarycentricCoords, getColumn(windowPoints, kZ)),
+ 1 /
+ perspectiveInterpolation(
+ fragmentBarycentricCoords,
+ clipSpacePoints,
+ getColumn(clipSpacePoints, kW)
+ )];
+
+}
+
+/**
+ * Creates a function that will compute the interpolation of an inter-stage variable.
+ */
+function createInterStageInterpolationFn(
+interStagePoints,
+type,
+sampling)
+{
+ return function ({
+ baseVertexIndex,
+ fragmentBarycentricCoords,
+ sampleBarycentricCoords,
+ clipSpacePoints
+ }) {
+ const triangleInterStagePoints = interStagePoints.slice(baseVertexIndex, baseVertexIndex + 3);
+ const barycentricCoords =
+ sampling === 'center' ? fragmentBarycentricCoords : sampleBarycentricCoords;
+ switch (type) {
+ case 'perspective':
+ return triangleInterStagePoints[0].map((_, colNum) =>
+ perspectiveInterpolation(
+ barycentricCoords,
+ clipSpacePoints,
+ getColumn(triangleInterStagePoints, colNum)
+ )
+ );
+ break;
+ case 'linear':
+ return triangleInterStagePoints[0].map((_, colNum) =>
+ linearInterpolation(barycentricCoords, getColumn(triangleInterStagePoints, colNum))
+ );
+ break;
+ case 'flat':
+ return triangleInterStagePoints[0];
+ break;
+ default:
+ unreachable();
+ }
+ };
+}
+
+/**
+ * Creates a function that will compute the interpolation of an inter-stage variable
+ * and then return [1, 0, 0, 0] if all interpolated values are between 0.0 and 1.0 inclusive
+ * or [-1, 0, 0, 0] otherwise.
+ */
+function createInterStageInterpolationBetween0And1TestFn(
+interStagePoints,
+type,
+sampling)
+{
+ const interpolateFn = createInterStageInterpolationFn(interStagePoints, type, sampling);
+ return function (fragData) {
+ const interpolatedValues = interpolateFn(fragData);
+ const allTrue = interpolatedValues.reduce((all, v) => all && v >= 0 && v <= 1, true);
+ return [allTrue ? 1 : -1, 0, 0, 0];
+ };
+}
+
+/**
+ * Computes 'builtin(sample_index)'
+ */
+function computeFragmentSampleIndex({ sampleIndex }) {
+ return [sampleIndex, 0, 0, 0];
+}
+
+/**
+ * Computes 'builtin(front_facing)'
+ */
+function computeFragmentFrontFacing({ frontFacing }) {
+ return [frontFacing ? 1 : 0, 0, 0, 0];
+}
+
+/**
+ * Computes 'builtin(sample_mask)'
+ */
+function computeSampleMask({ sampleMask }) {
+ return [sampleMask, 0, 0, 0];
+}
+
+/**
+ * Renders float32 fragment shader inputs values to 4 rgba8unorm textures that
+ * can be multisampled textures. It stores each of the channels, r, g, b, a of
+ * the shader input to a separate texture, doing the math required to store the
+ * float32 value into an rgba8unorm texel.
+ *
+ * Note: We could try to store the output to an vec4f storage buffer.
+ * Unfortunately, using a storage buffer has the issue that we need to compute
+ * an index with the very thing we're trying to test. Similarly, if we used a
+ * storage texture we would need to compute texture locations with the things
+ * we're trying to test. Also, using a storage buffer seems to affect certain
+ * backends like M1 Mac so it seems better to stick to rgba8unorm here and test
+ * using a storage buffer in a fragment shader separately.
+ *
+ * We can't use rgba32float because it's optional. We can't use rgba16float
+ * because it's optional in compat. We can't we use rgba32uint as that can't be
+ * multisampled.
+ */
+async function renderFragmentShaderInputsTo4TexturesAndReadbackValues(
+t,
+{
+ interpolationType,
+ interpolationSampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ frontFace,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode,
+ outputCode
+
+
+
+
+
+
+
+
+
+
+
+
+})
+{
+ const interpolate = `${interpolationType}${
+ interpolationSampling ? `, ${interpolationSampling}` : ''
+ }`;
+ const module = t.device.createShaderModule({
+ code: `
+ struct Uniforms {
+ resolution: vec2f,
+ };
+
+ @group(0) @binding(0) var<uniform> uni: Uniforms;
+
+ struct VertexOut {
+ @builtin(position) position: vec4f,
+ @location(0) @interpolate(${interpolate}) interpolatedValue: vec4f,
+ };
+
+ @vertex fn vs(@builtin(vertex_index) vNdx: u32) -> VertexOut {
+ let pos = array(
+ ${clipSpacePoints.map((p) => `vec4f(${p.join(', ')})`).join(', ')}
+ );
+ let interStage = array(
+ ${interStagePoints.map((p) => `vec4f(${p.join(', ')})`).join(', ')}
+ );
+ var v: VertexOut;
+ v.position = pos[vNdx];
+ v.interpolatedValue = interStage[vNdx];
+ _ = uni;
+ return v;
+ }
+
+ struct FragmentIn {
+ @builtin(position) position: vec4f,
+ @location(0) @interpolate(${interpolate}) interpolatedValue: vec4f,
+ ${fragInCode}
+ };
+
+ struct FragOut {
+ @location(0) out0: vec4f,
+ @location(1) out1: vec4f,
+ @location(2) out2: vec4f,
+ @location(3) out3: vec4f,
+ };
+
+ fn u32ToRGBAUnorm(u: u32) -> vec4f {
+ return vec4f(
+ f32((u >> 24) & 0xFF) / 255.0,
+ f32((u >> 16) & 0xFF) / 255.0,
+ f32((u >> 8) & 0xFF) / 255.0,
+ f32((u >> 0) & 0xFF) / 255.0,
+ );
+ }
+
+ @fragment fn fs(fin: FragmentIn) -> FragOut {
+ var f: FragOut;
+ let v = ${outputCode};
+ let u = bitcast<vec4u>(v);
+ f.out0 = u32ToRGBAUnorm(u[0]);
+ f.out1 = u32ToRGBAUnorm(u[1]);
+ f.out2 = u32ToRGBAUnorm(u[2]);
+ f.out3 = u32ToRGBAUnorm(u[3]);
+ _ = fin.interpolatedValue;
+ return f;
+ }
+ `
+ });
+
+ const textures = range(4, () => {
+ const texture = t.device.createTexture({
+ size: [width, height],
+ usage:
+ GPUTextureUsage.RENDER_ATTACHMENT |
+ GPUTextureUsage.TEXTURE_BINDING |
+ GPUTextureUsage.COPY_SRC,
+ format: 'rgba8unorm',
+ sampleCount
+ });
+ t.trackForCleanup(texture);
+ return texture;
+ });
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module,
+ entryPoint: 'vs'
+ },
+ fragment: {
+ module,
+ entryPoint: 'fs',
+ targets: textures.map(() => ({ format: 'rgba8unorm' }))
+ },
+ ...(frontFace && {
+ primitive: {
+ frontFace
+ }
+ }),
+ multisample: {
+ count: sampleCount
+ }
+ });
+
+ const uniformBuffer = t.device.createBuffer({
+ size: 8,
+ usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST
+ });
+ t.trackForCleanup(uniformBuffer);
+ t.device.queue.writeBuffer(uniformBuffer, 0, new Float32Array([width, height]));
+
+ const viewport = [0, 0, width, height, ...nearFar];
+
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [{ binding: 0, resource: { buffer: uniformBuffer } }]
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: textures.map((texture) => ({
+ view: texture.createView(),
+ loadOp: 'clear',
+ storeOp: 'store'
+ }))
+ });
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.setViewport(viewport[0], viewport[1], viewport[2], viewport[3], viewport[4], viewport[5]);
+ pass.draw(clipSpacePoints.length);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ const buffer = copyRGBA8EncodedFloatTexturesToBufferIncludingMultisampledTextures(t, textures);
+ await buffer.mapAsync(GPUMapMode.READ);
+ return new Float32Array(buffer.getMappedRange());
+}
+
+function checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat
+
+
+
+
+
+
+
+}) {
+ const subrectOrigin = [0, 0, 0];
+ const subrectSize = [width * sampleCount, height, 1];
+ const areaDesc = {
+ bytesPerRow: width * sampleCount * 4 * 4,
+ rowsPerImage: height,
+ subrectOrigin,
+ subrectSize
+ };
+
+ const format = 'rgba32float';
+ const actTexelView = TexelView.fromTextureDataByReference(
+ format,
+ new Uint8Array(actual.buffer),
+ areaDesc
+ );
+ const expTexelView = TexelView.fromTextureDataByReference(
+ format,
+ new Uint8Array(expected.buffer),
+ areaDesc
+ );
+
+ const failedPixelsMessage = findFailedPixels(
+ format,
+ { x: 0, y: 0, z: 0 },
+ { width: width * sampleCount, height, depthOrArrayLayers: 1 },
+ { actTexelView, expTexelView },
+ { maxDiffULPsForFloatFormat }
+ );
+
+ if (failedPixelsMessage !== undefined) {
+ const msg = 'Texture level had unexpected contents:\n' + failedPixelsMessage;
+ return new ErrorWithExtra(msg, () => ({
+ expTexelView,
+ actTexelView
+ }));
+ }
+
+ return undefined;
+}
+
+g.test('inputs,position').
+desc(
+ `
+ Test fragment shader builtin(position) values.
+
+ Note: @builtin(position) is always a fragment position, never a sample position.
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('interpolation', [
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'centroid' },
+{ type: 'perspective', sampling: 'sample' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'centroid' },
+{ type: 'linear', sampling: 'sample' },
+{ type: 'flat' }]
+)
+).
+beforeAllSubcases((t) => {
+ const {
+ interpolation: { type, sampling }
+ } = t.params;
+ t.skipIfInterpolationTypeOrSamplingNotSupported({ type, sampling });
+}).
+fn(async (t) => {
+ const {
+ nearFar,
+ sampleCount,
+ interpolation: { type, sampling }
+ } = t.params;
+
+ const clipSpacePoints = [// ndc values
+ [0.333, 0.333, 0.333, 0.333], // 1, 1, 1
+ [1.0, -3.0, 0.25, 1.0], // 1, -3, 0.25
+ [-1.5, 0.5, 0.25, 0.5] // -3, 1, 0.5
+ ];
+
+ const interStagePoints = [
+ [1, 2, 3, 4],
+ [5, 6, 7, 8],
+ [9, 10, 11, 12]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: '',
+ outputCode: 'fin.position'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ interpolateFn: computeFragmentPosition
+ });
+
+ // Since @builtin(position) is always a fragment position, never a sample position, check
+ // the first coordinate. It should be 0.5, 0.5 always. This is just to double check
+ // that computeFragmentPosition is generating the correct values.
+ assert(expected[0] === 0.5);
+ assert(expected[1] === 0.5);
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 4
+ })
+ );
+});
+
+g.test('inputs,interStage').
+desc(
+ `
+ Test fragment shader inter-stage variable values except for centroid interpolation.
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('interpolation', [
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'sample' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'sample' },
+{ type: 'flat' }]
+)
+).
+beforeAllSubcases((t) => {
+ const {
+ interpolation: { type, sampling }
+ } = t.params;
+ t.skipIfInterpolationTypeOrSamplingNotSupported({ type, sampling });
+}).
+fn(async (t) => {
+ const {
+ nearFar,
+ sampleCount,
+ interpolation: { type, sampling }
+ } = t.params;
+
+ const clipSpacePoints = [// ndc values
+ [0.333, 0.333, 0.333, 0.333], // 1, 1, 1
+ [1.0, -3.0, 0.25, 1.0], // 1, -3, 0.25
+ [-1.5, 0.5, 0.25, 0.5] // -3, 1, 0.5
+ ];
+
+ const interStagePoints = [
+ [1, 2, 3, 4],
+ [5, 6, 7, 8],
+ [9, 10, 11, 12]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: '',
+ outputCode: 'fin.interpolatedValue'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ interpolateFn: createInterStageInterpolationFn(interStagePoints, type, sampling)
+ });
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 4
+ })
+ );
+});
+
+g.test('inputs,interStage,centroid').
+desc(
+ `
+ Test fragment shader inter-stage variable values in centroid sampling mode.
+
+ Centroid sampling mode is trying to solve the following issue
+
+ +-------------+
+ |....s1|/ |
+ |......| |
+ |...../| s2 |
+ +------C------+
+ |s3./ | |
+ |../ | |
+ |./ |s4 |
+ +-------------+
+
+ Above is a diagram of a texel where s1, s2, s3, s4 are sample points,
+ C is the center of the texel and the diagonal line is some edge of
+ a triangle. s1 and s3 are inside the triangle. In sampling = 'center'
+ modes, the interpolated value will be relative to C. The problem is,
+ C is outside of the triangle. In sample = 'centroid' mode, the
+ interpolated value will be computed relative to some point inside the
+ portion of the triangle inside the texel. While ideally it would be
+ the actual centroid, the specs from the various APIs suggest the only
+ guarantee is it's inside the triangle.
+
+ So, we set the interStage values to barycentric coords. We expect
+ that when sampling mode is 'center', some interpolated values
+ will be outside of the triangle (ie, one or more of their values will
+ be outside the 0 to 1 range). In sampling mode = 'centroid' mode, none
+ of the values will be outside of the 0 to 1 range.
+
+ Note: generateFragmentInputs below generates "expected". Values not
+ rendered to will be 0. Values rendered to outside the triangle will
+ be -1. Values rendered to inside the triangle will be 1. Manually
+ checking, "expected" for sampling = 'center' should have a couple of
+ -1 values where as "expected" for sampling = 'centroid' should not.
+ This was verified with manual testing.
+
+ Since we only care about inside vs outside of the triangle, having
+ createInterStageInterpolationFn use the interpolated value relative
+ to the sample point when sampling = 'centroid' will give us a value
+ inside the triangle, which is good enough for our test.
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('interpolation', [
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'centroid' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'centroid' }]
+)
+).
+beforeAllSubcases((t) => {
+ const {
+ interpolation: { type, sampling }
+ } = t.params;
+ t.skipIfInterpolationTypeOrSamplingNotSupported({ type, sampling });
+}).
+fn(async (t) => {
+ const {
+ nearFar,
+ sampleCount,
+ interpolation: { type, sampling }
+ } = t.params;
+ //
+ // We're drawing 1 triangle that cut the viewport
+ //
+ // -1 0 1
+ // +===+===+ 2
+ // |\..|...|
+ // +---+---+ 1 <---
+ // | \|...| |
+ // +---+---+ 0 | viewport
+ // | |\..| |
+ // +---+---+ -1 <---
+ // | | \|
+ // +===+===+ -2
+
+
+ const clipSpacePoints = [// ndc values
+ [1, -2, 0, 1],
+ [-1, 2, 0, 1],
+ [1, 2, 0, 1]];
+
+
+
+ const interStagePoints = [
+ [1, 0, 0, 0],
+ [0, 1, 0, 0],
+ [0, 0, 1, 0]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: '',
+ outputCode:
+ 'vec4f(select(-1.0, 1.0, all(fin.interpolatedValue >= vec4f(0)) && all(fin.interpolatedValue <= vec4f(1))), 0, 0, 0)'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ interpolateFn: createInterStageInterpolationBetween0And1TestFn(
+ interStagePoints,
+ type,
+ sampling
+ )
+ });
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 3
+ })
+ );
+});
+
+g.test('inputs,sample_index').
+desc(
+ `
+ Test fragment shader builtin(sample_index) values.
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('interpolation', [
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'centroid' },
+{ type: 'perspective', sampling: 'sample' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'centroid' },
+{ type: 'linear', sampling: 'sample' },
+{ type: 'flat' }]
+)
+).
+beforeAllSubcases((t) => {
+ t.skipIf(t.isCompatibility, 'sample_index is not supported in compatibility mode');
+}).
+fn(async (t) => {
+ const {
+ nearFar,
+ sampleCount,
+ interpolation: { type, sampling }
+ } = t.params;
+
+ const clipSpacePoints = [// ndc values
+ [0.333, 0.333, 0.333, 0.333], // 1, 1, 1
+ [1.0, -3.0, 0.25, 1.0], // 1, -3, 0.25
+ [-1.5, 0.5, 0.25, 0.5] // -3, 1, 0.5
+ ];
+
+ const interStagePoints = [
+ [1, 2, 3, 4],
+ [5, 6, 7, 8],
+ [9, 10, 11, 12]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: `@builtin(sample_index) sampleIndex: u32,`,
+ outputCode: 'vec4f(f32(fin.sampleIndex), 0, 0, 0)'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ interpolateFn: computeFragmentSampleIndex
+ });
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 1
+ })
+ );
+});
+
+g.test('inputs,front_facing').
+desc(
+ `
+ Test fragment shader builtin(front_facing) values.
+
+ Draws a quad from 2 triangles that entirely cover clip space. (see diagram below in code)
+ One triangle is clockwise, the other is counter clockwise. The triangles
+ bisect pixels so that different samples are covered by each triangle so that some
+ samples should get different values for front_facing for the same fragment.
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('frontFace', ['cw', 'ccw']).
+combine('interpolation', [
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'centroid' },
+{ type: 'perspective', sampling: 'sample' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'centroid' },
+{ type: 'linear', sampling: 'sample' },
+{ type: 'flat' }]
+)
+).
+beforeAllSubcases((t) => {
+ const {
+ interpolation: { type, sampling }
+ } = t.params;
+ t.skipIfInterpolationTypeOrSamplingNotSupported({ type, sampling });
+}).
+fn(async (t) => {
+ const {
+ nearFar,
+ sampleCount,
+ frontFace,
+ interpolation: { type, sampling }
+ } = t.params;
+ //
+ // We're drawing 2 triangles starting at y = -2 to y = +2
+ //
+ // -1 0 1
+ // +===+===+ 2
+ // |\ | |
+ // +---+---+ 1 <---
+ // | \| | |
+ // +---+---+ 0 | viewport
+ // | |\ | |
+ // +---+---+ -1 <---
+ // | | \|
+ // +===+===+ -2
+
+
+ const clipSpacePoints = [
+ // ccw
+ [-1, -2, 0, 1],
+ [1, -2, 0, 1],
+ [-1, 2, 0, 1],
+
+ // cw
+ [1, -2, 0, 1],
+ [-1, 2, 0, 1],
+ [1, 2, 0, 1]];
+
+
+ const interStagePoints = [
+ [1, 2, 3, 4],
+ [5, 6, 7, 8],
+ [9, 10, 11, 12],
+
+ [13, 14, 15, 16],
+ [17, 18, 19, 20],
+ [21, 22, 23, 24]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ frontFace,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: '@builtin(front_facing) frontFacing: bool,',
+ outputCode: 'vec4f(select(0.0, 1.0, fin.frontFacing), 0, 0, 0)'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ frontFace,
+ interpolateFn: computeFragmentFrontFacing
+ });
+
+ assert(expected.indexOf(0) >= 0, 'expect some values to be 0');
+ assert(expected.findIndex((v) => v !== 0) >= 0, 'expect some values to be non 0');
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 0
+ })
+ );
+});
+
+g.test('inputs,sample_mask').
+desc(
+ `
+ Test fragment shader builtin(sample_mask) values.
+
+ Draws various triangles that should trigger different sample_mask values.
+ Checks that sample_mask matches what's expected. Note: the triangles
+ are selected so they do not intersect sample points as we don't want
+ to test precision issues on whether or not a sample point is inside
+ or outside the triangle when right on the edge.
+
+ Example: x=-1, y=2, it draws the following triangle
+
+ [ -0.8, -2 ]
+ [ 1.2, 2 ]
+ [ -0.8, 2 ]
+
+ On to a 4x4 pixel texture
+
+ -0.8, 2
+ .----------------------. 1.2 2
+ |...................../
+ |..................../
+ |.................../
+ |................../
+ |................./
+ +-|---+-----+-----+/----+ ---
+ | |...|.....|...../ | ^
+ | |...|.....|..../| | |
+ +-|---+-----+---/-+-----+ |
+ | |...|.....|../ | | |
+ | |...|.....|./ | | |
+ +-|---+-----+/----+-----+ texture / clip space
+ | |...|...../ | | |
+ | |...|..../| | | |
+ +-|---+---/-+-----+-----+ |
+ | |...|../ | | | |
+ | |...|./ | | | V
+ +-|---+/----+-----+-----+ ---
+ |.../
+ |../
+ |./
+ |/
+ /
+ .
+ -0.8, -2
+
+ Inside an individual pixel you might see this situation
+
+ +-------------+
+ |....s1|/ |
+ |......| |
+ |...../| s2 |
+ +------C------+
+ |s3./ | |
+ |../ | |
+ |./ |s4 |
+ +-------------+
+
+ where s1, s2, s3, s4, are sample points and C is the center. For a sampleCount = 4 texture
+ the sample_mask is expected to emit sample_mask = 0b0101
+
+ ref: https://learn.microsoft.com/en-us/windows/win32/api/d3d11/ne-d3d11-d3d11_standard_multisample_quality_levels
+ `
+).
+params((u) =>
+u //
+.combine('nearFar', [[0, 1], [0.25, 0.75]]).
+combine('sampleCount', [1, 4]).
+combine('interpolation', [
+// given that 'sample' effects whether things are run per-sample or per-fragment
+// we test all of these to make sure they don't affect the result differently than expected.
+{ type: 'perspective', sampling: 'center' },
+{ type: 'perspective', sampling: 'centroid' },
+{ type: 'perspective', sampling: 'sample' },
+{ type: 'linear', sampling: 'center' },
+{ type: 'linear', sampling: 'centroid' },
+{ type: 'linear', sampling: 'sample' },
+{ type: 'flat' }]
+).
+beginSubcases().
+combineWithParams([
+{ x: -1, y: -1 },
+{ x: -1, y: -2 },
+{ x: -1, y: 1 },
+{ x: -1, y: 3 },
+{ x: -2, y: -1 },
+{ x: -2, y: 3 },
+{ x: -3, y: -1 },
+{ x: -3, y: -2 },
+{ x: -3, y: 1 },
+{ x: 1, y: -1 },
+{ x: 1, y: -3 },
+{ x: 1, y: 1 },
+{ x: 1, y: 2 },
+{ x: 2, y: -2 },
+{ x: 2, y: -3 },
+{ x: 2, y: 1 },
+{ x: 2, y: 2 },
+{ x: 3, y: -1 },
+{ x: 3, y: -3 },
+{ x: 3, y: 1 },
+{ x: 3, y: 2 },
+{ x: 3, y: 3 }]
+)
+).
+beforeAllSubcases((t) => {
+ const {
+ interpolation: { type, sampling }
+ } = t.params;
+ t.skipIfInterpolationTypeOrSamplingNotSupported({ type, sampling });
+}).
+fn(async (t) => {
+ const {
+ x,
+ y,
+ nearFar,
+ sampleCount,
+ interpolation: { type, sampling }
+ } = t.params;
+
+ const clipSpacePoints = [
+ [x + 0.2, -y, 0, 1],
+ [-x + 0.2, y, 0, 1],
+ [x + 0.2, y, 0, 1]];
+
+
+ const interStagePoints = [
+ [13, 14, 15, 16],
+ [17, 18, 19, 20],
+ [21, 22, 23, 24]];
+
+
+ const width = 4;
+ const height = 4;
+ const actual = await renderFragmentShaderInputsTo4TexturesAndReadbackValues(t, {
+ interpolationType: type,
+ interpolationSampling: sampling,
+ sampleCount,
+ width,
+ height,
+ nearFar,
+ clipSpacePoints,
+ interStagePoints,
+ fragInCode: '@builtin(sample_mask) sample_mask: u32,',
+ outputCode: 'vec4f(f32(fin.sample_mask), 0, 0, 0)'
+ });
+
+ const expected = generateFragmentInputs({
+ width,
+ height,
+ nearFar,
+ sampleCount,
+ clipSpacePoints,
+ interpolateFn: computeSampleMask
+ });
+
+ t.expectOK(
+ checkSampleRectsApproximatelyEqual({
+ width,
+ height,
+ sampleCount,
+ actual,
+ expected,
+ maxDiffULPsForFloatFormat: 0
+ })
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/user_io.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/user_io.spec.js
new file mode 100644
index 0000000000..3651507e4e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/user_io.spec.js
@@ -0,0 +1,213 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Test for user-defined shader I/O.
+
+passthrough:
+ * Data passed into vertex shader as uints and converted to test type
+ * Passed from vertex to fragment as test type
+ * Output from fragment shader as uint
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { range } from '../../../../common/util/util.js';
+import { GPUTest } from '../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+function generateInterstagePassthroughCode(type) {
+ return `
+${type === 'f16' ? 'enable f16;' : ''}
+struct IOData {
+ @builtin(position) pos : vec4f,
+ @location(0) @interpolate(flat) user0 : ${type},
+ @location(1) @interpolate(flat) user1 : vec2<${type}>,
+ @location(2) @interpolate(flat) user2 : vec4<${type}>,
+}
+
+struct VertexInput {
+ @builtin(vertex_index) idx : u32,
+ @location(0) in0 : u32,
+ @location(1) in1 : vec2u,
+ @location(2) in2 : vec4u,
+}
+
+@vertex
+fn vsMain(input : VertexInput) -> IOData {
+ const vertices = array(
+ vec4f(-1, -1, 0, 1),
+ vec4f(-1, 1, 0, 1),
+ vec4f( 1, -1, 0, 1),
+ );
+ var data : IOData;
+ data.pos = vertices[input.idx];
+ data.user0 = ${type}(input.in0);
+ data.user1 = vec2<${type}>(input.in1);
+ data.user2 = vec4<${type}>(input.in2);
+ return data;
+}
+
+struct FragOutput {
+ @location(0) out0 : u32,
+ @location(1) out1 : vec2u,
+ @location(2) out2 : vec4u,
+}
+
+@fragment
+fn fsMain(input : IOData) -> FragOutput {
+ var out : FragOutput;
+ out.out0 = u32(input.user0);
+ out.out1 = vec2u(input.user1);
+ out.out2 = vec4u(input.user2);
+ return out;
+}
+`;
+}
+
+function drawPassthrough(t, code) {
+ // Default limit is 32 bytes of color attachments.
+ // These attachments use 28 bytes (which is why vec3 is skipped).
+ const formats = ['r32uint', 'rg32uint', 'rgba32uint'];
+ const components = [1, 2, 4];
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({ code }),
+ entryPoint: 'vsMain',
+ buffers: [
+ {
+ arrayStride: 4,
+ attributes: [
+ {
+ format: 'uint32',
+ offset: 0,
+ shaderLocation: 0
+ }]
+
+ },
+ {
+ arrayStride: 8,
+ attributes: [
+ {
+ format: 'uint32x2',
+ offset: 0,
+ shaderLocation: 1
+ }]
+
+ },
+ {
+ arrayStride: 16,
+ attributes: [
+ {
+ format: 'uint32x4',
+ offset: 0,
+ shaderLocation: 2
+ }]
+
+ }]
+
+ },
+ fragment: {
+ module: t.device.createShaderModule({ code }),
+ entryPoint: 'fsMain',
+ targets: formats.map((x) => {
+ return { format: x };
+ })
+ },
+ primitive: {
+ topology: 'triangle-list'
+ }
+ });
+
+ const vertexBuffer = t.makeBufferWithContents(
+ new Uint32Array([
+ // scalar: offset 0
+ 1, 1, 1, 0,
+ // vec2: offset 16
+ 2, 2, 2, 2, 2, 2, 0, 0,
+ // vec4: offset 48
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
+ ),
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.VERTEX
+ );
+
+ const bytesPerComponent = 4;
+ // 256 is the minimum bytes per row for texture to buffer copies.
+ const width = 256 / bytesPerComponent;
+ const height = 2;
+ const copyWidth = 4;
+ const outputTextures = range(3, (i) => {
+ const texture = t.device.createTexture({
+ size: [width, height],
+ usage:
+ GPUTextureUsage.COPY_SRC |
+ GPUTextureUsage.RENDER_ATTACHMENT |
+ GPUTextureUsage.TEXTURE_BINDING,
+ format: formats[i]
+ });
+ t.trackForCleanup(texture);
+ return texture;
+ });
+
+ let bufferSize = 1;
+ for (const comp of components) {
+ bufferSize *= comp;
+ }
+ bufferSize *= outputTextures.length * bytesPerComponent * copyWidth;
+ const outputBuffer = t.device.createBuffer({
+ size: bufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+ t.trackForCleanup(outputBuffer);
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: outputTextures.map((t) => ({
+ view: t.createView(),
+ loadOp: 'clear',
+ storeOp: 'store'
+ }))
+ });
+ pass.setPipeline(pipeline);
+ pass.setVertexBuffer(0, vertexBuffer, 0, 12);
+ pass.setVertexBuffer(1, vertexBuffer, 16, 24);
+ pass.setVertexBuffer(2, vertexBuffer, 48, 48);
+ pass.draw(3);
+ pass.end();
+
+ // Copy 'copyWidth' samples from each attachment into a buffer to check the results.
+ let offset = 0;
+ let expectArray = [];
+ for (let i = 0; i < outputTextures.length; i++) {
+ encoder.copyTextureToBuffer(
+ { texture: outputTextures[i] },
+ {
+ buffer: outputBuffer,
+ offset,
+ bytesPerRow: bytesPerComponent * components[i] * width,
+ rowsPerImage: height
+ },
+ { width: copyWidth, height: 1 }
+ );
+ offset += components[i] * bytesPerComponent * copyWidth;
+ for (let j = 0; j < components[i]; j++) {
+ const value = i + 1;
+ expectArray = expectArray.concat([value, value, value, value]);
+ }
+ }
+ t.queue.submit([encoder.finish()]);
+
+ const expect = new Uint32Array(expectArray);
+ t.expectGPUBufferValuesEqual(outputBuffer, expect);
+}
+
+g.test('passthrough').
+desc('Tests passing user-defined data from vertex input through fragment output').
+params((u) => u.combine('type', ['f32', 'f16', 'i32', 'u32'])).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = generateInterstagePassthroughCode(t.params.type);
+ drawPassthrough(t, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/workgroup_size.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/workgroup_size.spec.js
new file mode 100644
index 0000000000..a683d35272
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/shader_io/workgroup_size.spec.js
@@ -0,0 +1,150 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Test that workgroup size is set correctly`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { iterRange } from '../../../../common/util/util.js';
+import { GPUTest } from '../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+function checkResults(
+sizeX,
+sizeY,
+sizeZ,
+numWGs,
+data)
+{
+ const totalInvocations = sizeX * sizeY * sizeZ;
+ for (let i = 0; i < numWGs; i++) {
+ const wgx_data = data[4 * i + 0];
+ const wgy_data = data[4 * i + 1];
+ const wgz_data = data[4 * i + 2];
+ const total_data = data[4 * i + 3];
+ if (wgx_data !== sizeX) {
+ let msg = `Incorrect workgroup size x dimension for wg ${i}:\n`;
+ msg += `- expected: ${wgx_data}\n`;
+ msg += `- got: ${sizeX}`;
+ return Error(msg);
+ }
+ if (wgy_data !== sizeY) {
+ let msg = `Incorrect workgroup size y dimension for wg ${i}:\n`;
+ msg += `- expected: ${wgy_data}\n`;
+ msg += `- got: ${sizeY}`;
+ return Error(msg);
+ }
+ if (wgz_data !== sizeZ) {
+ let msg = `Incorrect workgroup size y dimension for wg ${i}:\n`;
+ msg += `- expected: ${wgz_data}\n`;
+ msg += `- got: ${sizeZ}`;
+ return Error(msg);
+ }
+ if (total_data !== totalInvocations) {
+ let msg = `Incorrect workgroup total invocations for wg ${i}:\n`;
+ msg += `- expected: ${total_data}\n`;
+ msg += `- got: ${totalInvocations}`;
+ return Error(msg);
+ }
+ }
+ return undefined;
+}
+
+g.test('workgroup_size').
+desc(`Test workgroup size is set correctly`).
+params((u) =>
+u.
+combine('wgx', [1, 3, 4, 8, 11, 16, 51, 64, 128, 256]).
+combine('wgy', [1, 3, 4, 8, 16, 51, 64, 256]).
+combine('wgz', [1, 3, 11, 16, 128, 256]).
+beginSubcases()
+).
+fn(async (t) => {
+ const {
+ maxComputeWorkgroupSizeX,
+ maxComputeWorkgroupSizeY,
+ maxComputeWorkgroupSizeZ,
+ maxComputeInvocationsPerWorkgroup
+ } = t.device.limits;
+ t.skipIf(
+ t.params.wgx > maxComputeWorkgroupSizeX,
+ `workgroup size x: ${t.params.wgx} > limit: ${maxComputeWorkgroupSizeX}`
+ );
+ t.skipIf(
+ t.params.wgy > maxComputeWorkgroupSizeY,
+ `workgroup size x: ${t.params.wgy} > limit: ${maxComputeWorkgroupSizeY}`
+ );
+ t.skipIf(
+ t.params.wgz > maxComputeWorkgroupSizeZ,
+ `workgroup size x: ${t.params.wgz} > limit: ${maxComputeWorkgroupSizeZ}`
+ );
+ const totalInvocations = t.params.wgx * t.params.wgy * t.params.wgz;
+ t.skipIf(
+ totalInvocations > maxComputeInvocationsPerWorkgroup,
+ `workgroup size: ${totalInvocations} > limit: ${maxComputeInvocationsPerWorkgroup}`
+ );
+
+ const code = `
+struct Values {
+ x : atomic<u32>,
+ y : atomic<u32>,
+ z : atomic<u32>,
+ total : atomic<u32>,
+}
+
+@group(0) @binding(0)
+var<storage, read_write> v : array<Values>;
+
+@compute @workgroup_size(${t.params.wgx}, ${t.params.wgy}, ${t.params.wgz})
+fn main(@builtin(local_invocation_id) lid : vec3u,
+ @builtin(workgroup_id) wgid : vec3u) {
+ atomicMax(&v[wgid.x].x, lid.x + 1);
+ atomicMax(&v[wgid.x].y, lid.y + 1);
+ atomicMax(&v[wgid.x].z, lid.z + 1);
+ atomicAdd(&v[wgid.x].total, 1);
+}`;
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: 'main'
+ }
+ });
+
+ const numWorkgroups = totalInvocations < 256 ? 5 : 3;
+ const buffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(numWorkgroups * 4, (_i) => 0)]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ );
+ t.trackForCleanup(buffer);
+
+ const bg = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg);
+ pass.dispatchWorkgroups(numWorkgroups, 1, 1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ const bufferReadback = await t.readGPUBufferRangeTyped(buffer, {
+ srcByteOffset: 0,
+ type: Uint32Array,
+ typedLength: 4 * numWorkgroups,
+ method: 'copy'
+ });
+ const data = bufferReadback.data;
+
+ t.expectOK(checkResults(t.params.wgx, t.params.wgy, t.params.wgz, numWorkgroups, data));
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/stage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/stage.spec.js
new file mode 100644
index 0000000000..df09954c3f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/stage.spec.js
@@ -0,0 +1,133 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Test trivial shaders for each shader stage kind`; // There are many many more shaders executed in other tests.
+
+import { makeTestGroup } from '../../../common/framework/test_group.js';
+import { GPUTest } from '../../gpu_test.js';
+import { checkElementsEqual } from '../../util/check_contents.js';
+
+export const g = makeTestGroup(GPUTest);
+
+g.test('basic_compute').
+desc(`Test a trivial compute shader`).
+fn(async (t) => {
+ const code = `
+
+@group(0) @binding(0)
+var<storage, read_write> v : vec4u;
+
+@compute @workgroup_size(1)
+fn main() {
+ v = vec4u(1,2,3,42);
+}`;
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({
+ code
+ }),
+ entryPoint: 'main'
+ }
+ });
+
+ const buffer = t.makeBufferWithContents(
+ new Uint32Array([0, 0, 0, 0]),
+ GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ );
+ t.trackForCleanup(buffer);
+
+ const bg = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg);
+ pass.dispatchWorkgroups(1, 1, 1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ const bufferReadback = await t.readGPUBufferRangeTyped(buffer, {
+ srcByteOffset: 0,
+ type: Uint32Array,
+ typedLength: 4,
+ method: 'copy'
+ });
+ const got = bufferReadback.data;
+ const expected = new Uint32Array([1, 2, 3, 42]);
+
+ t.expectOK(checkElementsEqual(got, expected));
+});
+
+g.test('basic_render').
+desc(`Test trivial vertex and fragment shaders`).
+fn((t) => {
+ const code = `
+@vertex
+fn vert_main(@builtin(vertex_index) idx: u32) -> @builtin(position) vec4f {
+ // A right triangle covering the whole framebuffer.
+ const pos = array(
+ vec2f(-1,-3),
+ vec2f(3,1),
+ vec2f(-1,1));
+ return vec4f(pos[idx], 0, 1);
+}
+
+@fragment
+fn frag_main() -> @location(0) vec4f {
+ return vec4(0, 1, 0, 1); // green
+}
+`;
+ const module = t.device.createShaderModule({ code });
+
+ const [width, height] = [8, 8];
+ const format = 'rgba8unorm';
+ const texture = t.device.createTexture({
+ size: { width, height },
+ usage:
+ GPUTextureUsage.RENDER_ATTACHMENT |
+ GPUTextureUsage.TEXTURE_BINDING |
+ GPUTextureUsage.COPY_SRC,
+ format
+ });
+
+ // We'll copy one pixel only.
+ const dst = t.device.createBuffer({
+ size: 4,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ });
+
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: { module, entryPoint: 'vert_main' },
+ fragment: { module, entryPoint: 'frag_main', targets: [{ format }] }
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [{ view: texture.createView(), loadOp: 'clear', storeOp: 'store' }]
+ });
+ pass.setPipeline(pipeline);
+ pass.draw(3);
+ pass.end();
+
+ encoder.copyTextureToBuffer(
+ { texture, mipLevel: 0, origin: { x: 0, y: 0, z: 0 } },
+ { buffer: dst, bytesPerRow: 256 },
+ { width: 1, height: 1, depthOrArrayLayers: 1 }
+ );
+ t.queue.submit([encoder.finish()]);
+
+ // Expect one green pixel.
+ t.expectGPUBufferValuesEqual(dst, new Uint8Array([0x00, 0xff, 0x00, 0xff]));
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/compound.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/compound.spec.js
new file mode 100644
index 0000000000..0c7f0edcae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/compound.spec.js
@@ -0,0 +1,137 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Compound statement execution.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+
+import { GPUTest } from '../../../gpu_test.js';
+
+export const g = makeTestGroup(GPUTest);
+
+/**
+ * Builds, runs then checks the output of a statement shader test.
+ *
+ * @param t The test object
+ * @param ty The WGSL scalar type to be written
+ * @param values The expected output values of type ty
+ * @param wgsl_main The body of the WGSL entry point.
+ */
+export function runStatementTest(
+t,
+ty,
+values,
+wgsl_main)
+{
+ const wgsl = `
+struct Outputs {
+ data : array<${ty}>,
+};
+var<private> count: u32 = 0;
+
+@group(0) @binding(1) var<storage, read_write> outputs : Outputs;
+
+fn put(value : ${ty}) {
+ outputs.data[count] = value;
+ count += 1;
+}
+
+@compute @workgroup_size(1)
+fn main() {
+ _ = &outputs;
+ ${wgsl_main}
+}
+`;
+
+ const pipeline = t.device.createComputePipeline({
+ layout: 'auto',
+ compute: {
+ module: t.device.createShaderModule({ code: wgsl }),
+ entryPoint: 'main'
+ }
+ });
+
+ const maxOutputValues = 1000;
+ const outputBuffer = t.device.createBuffer({
+ size: 4 * (1 + maxOutputValues),
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC
+ });
+
+ const bindGroup = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [{ binding: 1, resource: { buffer: outputBuffer } }]
+ });
+
+ // Run the shader.
+ const encoder = t.device.createCommandEncoder();
+ const pass = encoder.beginComputePass();
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bindGroup);
+ pass.dispatchWorkgroups(1);
+ pass.end();
+ t.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesEqual(outputBuffer, values);
+}
+
+// Consider a declaration X of identifier 'x' inside a compound statement.
+// Check the value of 'x' at various places relative to X:
+// a { b; X=c; d; { e; } } f;
+
+const kTests = {
+ uses: {
+ // Observe values without conflicting declarations.
+ src: `let x = 1;
+ put(x);
+ {
+ put(x);
+ let x = x+1; // The declaration in question
+ put(x);
+ {
+ put(x);
+ }
+ put(x);
+ }
+ put(x);`,
+ values: [1, 1, 2, 2, 2, 1]
+ },
+ shadowed: {
+ // Observe values when shadowed
+ src: `let x = 1;
+ put(x);
+ {
+ put(x);
+ let x = x+1; // The declaration in question
+ put(x);
+ {
+ let x = x+1; // A shadow
+ put(x);
+ }
+ put(x);
+ }
+ put(x);`,
+ values: [1, 1, 2, 3, 2, 1]
+ },
+ gone: {
+ // The declaration goes out of scope.
+ src: `{
+ let x = 2; // The declaration in question
+ put(x);
+ }
+ let x = 1;
+ put(x);`,
+ values: [2, 1]
+ }
+};
+
+g.test('decl').
+desc('Tests the value of a declared value in a compound statment.').
+params((u) => u.combine('case', keysOf(kTests))).
+fn((t) => {
+ runStatementTest(
+ t,
+ 'i32',
+ new Int32Array(kTests[t.params.case].values),
+ kTests[t.params.case].src
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/discard.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/discard.spec.js
new file mode 100644
index 0000000000..bcd4fd9e52
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/statement/discard.spec.js
@@ -0,0 +1,645 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Execution tests for discard.
+
+The discard statement converts invocations into helpers.
+This results in the following conditions:
+ * No outputs are written
+ * No resources are written
+ * Atomics are undefined
+
+Conditions that still occur:
+ * Derivative calculations are correct
+ * Reads
+ * Writes to non-external memory
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { iterRange } from '../../../../common/util/util.js';
+import { GPUTest } from '../../../gpu_test.js';
+import { checkElementsPassPredicate } from '../../../util/check_contents.js';
+
+export const g = makeTestGroup(GPUTest);
+
+// Framebuffer dimensions
+const kWidth = 64;
+const kHeight = 64;
+
+const kSharedCode = `
+@group(0) @binding(0) var<storage, read_write> output: array<vec2f>;
+@group(0) @binding(1) var<storage, read_write> atomicIndex : atomic<u32>;
+@group(0) @binding(2) var<storage> uniformValues : array<u32, 5>;
+
+@vertex
+fn vsMain(@builtin(vertex_index) index : u32) -> @builtin(position) vec4f {
+ const vertices = array(
+ vec2(-1, -1), vec2(-1, 0), vec2( 0, -1),
+ vec2(-1, 0), vec2( 0, 0), vec2( 0, -1),
+
+ vec2( 0, -1), vec2( 0, 0), vec2( 1, -1),
+ vec2( 0, 0), vec2( 1, 0), vec2( 1, -1),
+
+ vec2(-1, 0), vec2(-1, 1), vec2( 0, 0),
+ vec2(-1, 1), vec2( 0, 1), vec2( 0, 0),
+
+ vec2( 0, 0), vec2( 0, 1), vec2( 1, 0),
+ vec2( 0, 1), vec2( 1, 1), vec2( 1, 0),
+ );
+ return vec4f(vec2f(vertices[index]), 0, 1);
+}
+`;
+
+function drawFullScreen(
+t,
+code,
+dataChecker,
+framebufferChecker)
+{
+ const pipeline = t.device.createRenderPipeline({
+ layout: 'auto',
+ vertex: {
+ module: t.device.createShaderModule({ code }),
+ entryPoint: 'vsMain'
+ },
+ fragment: {
+ module: t.device.createShaderModule({ code }),
+ entryPoint: 'fsMain',
+ targets: [{ format: 'r32uint' }]
+ },
+ primitive: {
+ topology: 'triangle-list'
+ }
+ });
+
+ const bytesPerWord = 4;
+ const framebuffer = t.device.createTexture({
+ size: [kWidth, kHeight],
+ usage:
+ GPUTextureUsage.COPY_SRC |
+ GPUTextureUsage.COPY_DST |
+ GPUTextureUsage.RENDER_ATTACHMENT |
+ GPUTextureUsage.TEXTURE_BINDING,
+ format: 'r32uint'
+ });
+ t.trackForCleanup(framebuffer);
+
+ // Create a buffer to copy the framebuffer contents into.
+ // Initialize with a sentinel value and load this buffer to detect unintended writes.
+ const fbBuffer = t.makeBufferWithContents(
+ new Uint32Array([...iterRange(kWidth * kHeight, (x) => kWidth * kHeight)]),
+ GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST
+ );
+
+ // Create a buffer to hold the storage shader resources.
+ // (0,0) = vec2u width * height
+ // (0,1) = u32
+ const dataSize = 2 * kWidth * kHeight * bytesPerWord;
+ const dataBufferSize = dataSize + bytesPerWord;
+ const dataBuffer = t.device.createBuffer({
+ size: dataBufferSize,
+ usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ });
+
+ const uniformSize = bytesPerWord * 5;
+ const uniformBuffer = t.makeBufferWithContents(
+ // Loop bound, [derivative constants].
+ new Uint32Array([4, 1, 4, 4, 7]),
+ GPUBufferUsage.COPY_DST | GPUBufferUsage.STORAGE
+ );
+
+ // 'atomicIndex' packed at the end of the buffer.
+ const bg = t.device.createBindGroup({
+ layout: pipeline.getBindGroupLayout(0),
+ entries: [
+ {
+ binding: 0,
+ resource: {
+ buffer: dataBuffer,
+ offset: 0,
+ size: dataSize
+ }
+ },
+ {
+ binding: 1,
+ resource: {
+ buffer: dataBuffer,
+ offset: dataSize,
+ size: bytesPerWord
+ }
+ },
+ {
+ binding: 2,
+ resource: {
+ buffer: uniformBuffer,
+ offset: 0,
+ size: uniformSize
+ }
+ }]
+
+ });
+
+ const encoder = t.device.createCommandEncoder();
+ encoder.copyBufferToTexture(
+ {
+ buffer: fbBuffer,
+ offset: 0,
+ bytesPerRow: kWidth * bytesPerWord,
+ rowsPerImage: kHeight
+ },
+ { texture: framebuffer },
+ { width: kWidth, height: kHeight }
+ );
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: framebuffer.createView(),
+ loadOp: 'load',
+ storeOp: 'store'
+ }]
+
+ });
+ pass.setPipeline(pipeline);
+ pass.setBindGroup(0, bg);
+ pass.draw(24);
+ pass.end();
+ encoder.copyTextureToBuffer(
+ { texture: framebuffer },
+ {
+ buffer: fbBuffer,
+ offset: 0,
+ bytesPerRow: kWidth * bytesPerWord,
+ rowsPerImage: kHeight
+ },
+ { width: kWidth, height: kHeight }
+ );
+ t.queue.submit([encoder.finish()]);
+
+ t.expectGPUBufferValuesPassCheck(dataBuffer, dataChecker, {
+ type: Float32Array,
+ typedLength: dataSize / bytesPerWord
+ });
+
+ t.expectGPUBufferValuesPassCheck(fbBuffer, framebufferChecker, {
+ type: Uint32Array,
+ typedLength: kWidth * kHeight
+ });
+}
+
+g.test('all').
+desc('Test a shader that discards all fragments').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ _ = uniformValues[0];
+ discard;
+ let idx = atomicAdd(&atomicIndex, 1);
+ output[idx] = pos.xy;
+ return 1;
+}
+`;
+
+ // No storage writes occur.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === 0;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ return 0;
+ }
+ }]
+
+ }
+ );
+ };
+
+ // No fragment outputs occur.
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === kWidth * kHeight;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ return 0;
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+});
+
+g.test('three_quarters').
+desc('Test a shader that discards all but the upper-left quadrant fragments').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ _ = uniformValues[0];
+ if (pos.x >= 0.5 * ${kWidth} || pos.y >= 0.5 * ${kHeight}) {
+ discard;
+ }
+ let idx = atomicAdd(&atomicIndex, 1);
+ output[idx] = pos.xy;
+ return idx;
+}
+`;
+
+ // Only the the upper left quadrant is kept.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ const is_x = idx % 2 === 0;
+ if (is_x) {
+ return value < 0.5 * kWidth;
+ } else {
+ return value < 0.5 * kHeight;
+ }
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ const is_x = idx % 2 === 0;
+ if (is_x) {
+ const x = Math.floor(idx / 2) % kWidth;
+ if (x >= kWidth / 2) {
+ return 0;
+ }
+ } else {
+ const y = Math.floor((idx - 1) / kWidth);
+ if (y >= kHeight / 2) {
+ return 0;
+ }
+ }
+ if (is_x) {
+ return `< ${0.5 * kWidth}`;
+ } else {
+ return `< ${0.5 * kHeight}`;
+ }
+ }
+ }]
+
+ }
+ );
+ };
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (x < kWidth / 2 && y < kHeight / 2) {
+ return value < kWidth * kHeight / 4;
+ } else {
+ return value === kWidth * kHeight;
+ }
+ return value < kWidth * kHeight / 4;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (x < kWidth / 2 && y < kHeight / 2) {
+ return 'any';
+ } else {
+ return 0;
+ }
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+});
+
+g.test('function_call').
+desc('Test discards happening in a function call').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+fn foo(pos : vec2f) {
+ let p = vec2i(pos);
+ if p.x <= ${kWidth} / 2 && p.y <= ${kHeight} / 2 {
+ discard;
+ }
+ if p.x >= ${kWidth} / 2 && p.y >= ${kHeight} / 2 {
+ discard;
+ }
+}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ _ = uniformValues[0];
+ foo(pos.xy);
+ let idx = atomicAdd(&atomicIndex, 1);
+ output[idx] = pos.xy;
+ return idx;
+}
+`;
+
+ // Only the upper right and bottom left quadrants are kept.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ const is_x = idx % 2 === 0;
+ if (value === 0.0) {
+ return is_x ? a[idx + 1] === 0 : a[idx - 1] === 0;
+ }
+
+ let expect = is_x ? kWidth : kHeight;
+ expect = 0.5 * expect;
+ if (value < expect) {
+ return is_x ? a[idx + 1] > 0.5 * kWidth : a[idx - 1] > 0.5 * kHeight;
+ } else {
+ return is_x ? a[idx + 1] < 0.5 * kWidth : a[idx - 1] < 0.5 * kHeight;
+ }
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ if (idx < kWidth * kHeight / 2) {
+ return 'any';
+ } else {
+ return 0;
+ }
+ }
+ }]
+
+ }
+ );
+ };
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (x >= kWidth / 2 && y >= kHeight / 2 || x <= kWidth / 2 && y <= kHeight / 2) {
+ return value === kWidth * kHeight;
+ } else {
+ return value < kWidth * kHeight / 2;
+ }
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (
+ x <= kWidth / 2 && y <= kHeight / 2 ||
+ x >= kWidth / 2 && y >= kHeight / 2)
+ {
+ return kWidth * kHeight;
+ }
+ return 'any';
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+});
+
+g.test('loop').
+desc('Test discards in a loop').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ _ = uniformValues[0];
+ for (var i = 0; i < 2; i++) {
+ if i > 0 {
+ discard;
+ }
+ }
+ let idx = atomicAdd(&atomicIndex, 1);
+ output[idx] = pos.xy;
+ return 1;
+}
+`;
+
+ // No storage writes occur.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === 0;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ return 0;
+ }
+ }]
+
+ }
+ );
+ };
+
+ // No fragment outputs occur.
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === kWidth * kHeight;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ return kWidth * kHeight;
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+});
+
+g.test('uniform_read_loop').
+desc('Test that helpers read a uniform value in a loop').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ discard;
+ for (var i = 0u; i < uniformValues[0]; i++) {
+ }
+ let idx = atomicAdd(&atomicIndex, 1);
+ output[idx] = pos.xy;
+ return 1;
+}
+`;
+
+ // No storage writes occur.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === 0;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ return 0;
+ }
+ }]
+
+ }
+ );
+ };
+
+ // No fragment outputs occur.
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ return value === kWidth * kHeight;
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ return kWidth * kHeight;
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+});
+
+g.test('derivatives').
+desc('Test that derivatives are correct in the presence of discard').
+fn((t) => {
+ const code = `
+${kSharedCode}
+
+@fragment
+fn fsMain(@builtin(position) pos : vec4f) -> @location(0) u32 {
+ let ipos = vec2i(pos.xy);
+ let lsb = ipos & vec2(0x1);
+ let left_sel = select(2, 4, lsb.y == 1);
+ let right_sel = select(1, 3, lsb.y == 1);
+ let uidx = select(left_sel, right_sel, lsb.x == 1);
+ if ((lsb.x | lsb.y) & 0x1) == 0 {
+ discard;
+ }
+
+ let v = uniformValues[uidx];
+ let idx = atomicAdd(&atomicIndex, 1);
+ let dx = dpdx(f32(v));
+ let dy = dpdy(f32(v));
+ output[idx] = vec2(dx, dy);
+ return idx;
+}
+`;
+
+ // One pixel per quad is discarded. The derivatives values are always the same +/- 3.
+ const dataChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ if (idx < 3 * (2 * kWidth * kHeight) / 4) {
+ return value === -3 || value === 3;
+ } else {
+ return value === 0;
+ }
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'data exp ==',
+ getValueForCell: (idx) => {
+ if (idx < 3 * (2 * kWidth * kHeight) / 4) {
+ return '+/- 3';
+ } else {
+ return 0;
+ }
+ }
+ }]
+
+ }
+ );
+ };
+
+ // 3/4 of the fragments are written.
+ const fbChecker = (a) => {
+ return checkElementsPassPredicate(
+ a,
+ (idx, value) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (((x | y) & 0x1) === 0) {
+ return value === kWidth * kHeight;
+ } else {
+ return value < 3 * (kWidth * kHeight) / 4;
+ }
+ },
+ {
+ predicatePrinter: [
+ {
+ leftHeader: 'fb exp ==',
+ getValueForCell: (idx) => {
+ const x = idx % kWidth;
+ const y = Math.floor(idx / kWidth);
+ if (((x | y) & 0x1) === 0) {
+ return kWidth * kHeight;
+ } else {
+ return 'any';
+ }
+ }
+ }]
+
+ }
+ );
+ };
+
+ drawFullScreen(t, code, dataChecker, fbChecker);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/zero_init.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/zero_init.spec.js
index c7b21d5699..fe0c3cbe29 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/zero_init.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/execution/zero_init.spec.js
@@ -107,6 +107,10 @@ expandWithParams(function* (p) {
[true, false] :
[false]) {
for (const scalarType of supportedScalarTypes({ isAtomic, ...p })) {
+ // Fewer subcases: supportedScalarTypes was expanded to include f16
+ // but that may take too much time. It would require more complex code.
+ if (scalarType === 'f16') continue;
+
// Fewer subcases: For nested types, skip atomic u32 and non-atomic i32.
if (p._containerDepth > 0) {
if (scalarType === 'u32' && isAtomic) continue;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/types.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/types.js
index 5810b8e9f1..ef84746565 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/types.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/types.js
@@ -2,19 +2,32 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { keysOf } from '../../common/util/data_tables.js';import { assert } from '../../common/util/util.js';import { align } from '../util/math.js';
-const kArrayLength = 3;
+const kDefaultArrayLength = 3;
// never is the same as "must not"
-export const HostSharableTypes = ['i32', 'u32', 'f32'];
+export const HostSharableTypes = ['i32', 'u32', 'f16', 'f32'];
+
+// The alignment and size of a host shareable type.
+// See "Alignment and Size" in the WGSL spec. https://w3.org/TR/WGSL/#alignment-and-size
+// Note this is independent of the address space that values of this type might appear in.
+// See RequiredAlignOf(...) for the 16-byte granularity requirement when
+// values of a type are placed in the uniform address space.
+
+
+
+
+
+
/** Info for each plain scalar type. */
export const kScalarTypeInfo =
{
'i32': { layout: { alignment: 4, size: 4 }, supportsAtomics: true, arrayLength: 1, innerLength: 0 },
'u32': { layout: { alignment: 4, size: 4 }, supportsAtomics: true, arrayLength: 1, innerLength: 0 },
+ 'f16': { layout: { alignment: 2, size: 2 }, supportsAtomics: false, arrayLength: 1, innerLength: 0, feature: 'shader-f16' },
'f32': { layout: { alignment: 4, size: 4 }, supportsAtomics: false, arrayLength: 1, innerLength: 0 },
'bool': { layout: undefined, supportsAtomics: false, arrayLength: 1, innerLength: 0 }
};
@@ -24,29 +37,71 @@ export const kScalarTypes = keysOf(kScalarTypeInfo);
/** Info for each vecN<> container type. */
export const kVectorContainerTypeInfo =
{
- 'vec2': { layout: { alignment: 8, size: 8 }, arrayLength: 2, innerLength: 0 },
- 'vec3': { layout: { alignment: 16, size: 12 }, arrayLength: 3, innerLength: 0 },
- 'vec4': { layout: { alignment: 16, size: 16 }, arrayLength: 4, innerLength: 0 }
+ 'vec2': { arrayLength: 2, innerLength: 0 },
+ 'vec3': { arrayLength: 3, innerLength: 0 },
+ 'vec4': { arrayLength: 4, innerLength: 0 }
};
/** List of all vecN<> container types. */
export const kVectorContainerTypes = keysOf(kVectorContainerTypeInfo);
+/** Returns the vector layout for a given vector container and base type, or undefined if that base type has no layout */
+function vectorLayout(
+vectorContainer,
+baseType)
+{
+ const n = kVectorContainerTypeInfo[vectorContainer].arrayLength;
+ const scalarLayout = kScalarTypeInfo[baseType].layout;
+ if (scalarLayout === undefined) {
+ return undefined;
+ }
+ if (n === 3) {
+ return { alignment: scalarLayout.alignment * 4, size: scalarLayout.size * 3 };
+ }
+ return { alignment: scalarLayout.alignment * n, size: scalarLayout.size * n };
+}
+
/** Info for each matNxN<> container type. */
export const kMatrixContainerTypeInfo =
{
- 'mat2x2': { layout: { alignment: 8, size: 16 }, arrayLength: 2, innerLength: 2 },
- 'mat3x2': { layout: { alignment: 8, size: 24 }, arrayLength: 3, innerLength: 2 },
- 'mat4x2': { layout: { alignment: 8, size: 32 }, arrayLength: 4, innerLength: 2 },
- 'mat2x3': { layout: { alignment: 16, size: 32 }, arrayLength: 2, innerLength: 3 },
- 'mat3x3': { layout: { alignment: 16, size: 48 }, arrayLength: 3, innerLength: 3 },
- 'mat4x3': { layout: { alignment: 16, size: 64 }, arrayLength: 4, innerLength: 3 },
- 'mat2x4': { layout: { alignment: 16, size: 32 }, arrayLength: 2, innerLength: 4 },
- 'mat3x4': { layout: { alignment: 16, size: 48 }, arrayLength: 3, innerLength: 4 },
- 'mat4x4': { layout: { alignment: 16, size: 64 }, arrayLength: 4, innerLength: 4 }
+ 'mat2x2': { arrayLength: 2, innerLength: 2 },
+ 'mat3x2': { arrayLength: 3, innerLength: 2 },
+ 'mat4x2': { arrayLength: 4, innerLength: 2 },
+ 'mat2x3': { arrayLength: 2, innerLength: 3 },
+ 'mat3x3': { arrayLength: 3, innerLength: 3 },
+ 'mat4x3': { arrayLength: 4, innerLength: 3 },
+ 'mat2x4': { arrayLength: 2, innerLength: 4 },
+ 'mat3x4': { arrayLength: 3, innerLength: 4 },
+ 'mat4x4': { arrayLength: 4, innerLength: 4 }
};
/** List of all matNxN<> container types. */
export const kMatrixContainerTypes = keysOf(kMatrixContainerTypeInfo);
+export const kMatrixContainerTypeLayoutInfo =
+{
+ 'f16': {
+ 'mat2x2': { layout: { alignment: 4, size: 8 } },
+ 'mat3x2': { layout: { alignment: 4, size: 12 } },
+ 'mat4x2': { layout: { alignment: 4, size: 16 } },
+ 'mat2x3': { layout: { alignment: 8, size: 16 } },
+ 'mat3x3': { layout: { alignment: 8, size: 24 } },
+ 'mat4x3': { layout: { alignment: 8, size: 32 } },
+ 'mat2x4': { layout: { alignment: 8, size: 16 } },
+ 'mat3x4': { layout: { alignment: 8, size: 24 } },
+ 'mat4x4': { layout: { alignment: 8, size: 32 } }
+ },
+ 'f32': {
+ 'mat2x2': { layout: { alignment: 8, size: 16 } },
+ 'mat3x2': { layout: { alignment: 8, size: 24 } },
+ 'mat4x2': { layout: { alignment: 8, size: 32 } },
+ 'mat2x3': { layout: { alignment: 16, size: 32 } },
+ 'mat3x3': { layout: { alignment: 16, size: 48 } },
+ 'mat4x3': { layout: { alignment: 16, size: 64 } },
+ 'mat2x4': { layout: { alignment: 16, size: 32 } },
+ 'mat3x4': { layout: { alignment: 16, size: 48 } },
+ 'mat4x4': { layout: { alignment: 16, size: 64 } }
+ }
+};
+
@@ -161,10 +216,39 @@ export function* generateTypes({
-}) {
+})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+{
const scalarInfo = kScalarTypeInfo[baseType];
if (isAtomic) {
assert(scalarInfo.supportsAtomics, 'type does not support atomics');
+ assert(
+ containerType === 'scalar' || containerType === 'array',
+ "can only generate atomic inner types with containerType 'scalar' or 'array'"
+ );
}
const scalarType = isAtomic ? `atomic<${baseType}>` : baseType;
@@ -189,21 +273,29 @@ export function* generateTypes({
for (const vectorType of kVectorContainerTypes) {
yield {
type: `${vectorType}<${scalarType}>`,
- _kTypeInfo: { elementBaseType: baseType, ...kVectorContainerTypeInfo[vectorType] }
+ _kTypeInfo: {
+ elementBaseType: baseType,
+ ...kVectorContainerTypeInfo[vectorType],
+ layout: vectorLayout(vectorType, scalarType),
+ supportsAtomics: false
+ }
};
}
}
if (containerType === 'matrix') {
- // Matrices can only be f32.
- if (baseType === 'f32') {
+ // Matrices can only be f16 or f32.
+ if (baseType === 'f16' || baseType === 'f32') {
for (const matrixType of kMatrixContainerTypes) {
- const matrixInfo = kMatrixContainerTypeInfo[matrixType];
+ const matrixDimInfo = kMatrixContainerTypeInfo[matrixType];
+ const matrixLayoutInfo = kMatrixContainerTypeLayoutInfo[baseType][matrixType];
yield {
type: `${matrixType}<${scalarType}>`,
_kTypeInfo: {
- elementBaseType: `vec${matrixInfo.innerLength}<${scalarType}>`,
- ...matrixInfo
+ elementBaseType: `vec${matrixDimInfo.innerLength}<${scalarType}>`,
+ ...matrixDimInfo,
+ ...matrixLayoutInfo,
+ supportsAtomics: false
}
};
}
@@ -212,37 +304,53 @@ export function* generateTypes({
// Array types
if (containerType === 'array') {
+ let arrayElemType = scalarType;
+ let arrayElementCount = kDefaultArrayLength;
+ let supportsAtomics = scalarInfo.supportsAtomics;
+ let layout = undefined;
+ if (scalarInfo.layout) {
+ // Compute the layout of the array type.
+ // Adjust the array element count or element type as needed.
+ if (addressSpace === 'uniform') {
+ // Use a vec4 of the scalar type, to achieve a 16 byte alignment without internal padding.
+ // This works for 4-byte scalar types, and does not work for f16.
+ // It is the caller's responsibility to filter out the f16 case.
+ assert(!isAtomic, 'the uniform case is making vec4 of scalar, which cannot handle atomics');
+ arrayElemType = `vec4<${baseType}>`;
+ supportsAtomics = false;
+ const arrayElemLayout = vectorLayout('vec4', baseType);
+ // assert(arrayElemLayout.alignment % 16 === 0); // Callers responsibility to avoid
+ arrayElementCount = align(arrayElementCount, 4) / 4;
+ const arrayByteSize = arrayElementCount * arrayElemLayout.size;
+ layout = { alignment: arrayElemLayout.alignment, size: arrayByteSize };
+ } else {
+ // The ordinary case. Use scalarType as the element type.
+ const stride = arrayStride(scalarInfo.layout);
+ let arrayByteSize = arrayElementCount * stride;
+ if (addressSpace === 'storage') {
+ // The buffer effective binding size must be a multiple of 4.
+ // Adjust the array element count as needed.
+ while (arrayByteSize % 4 > 0) {
+ arrayElementCount++;
+ arrayByteSize = arrayElementCount * stride;
+ }
+ }
+ layout = { alignment: scalarInfo.layout.alignment, size: arrayByteSize };
+ }
+ }
+
const arrayTypeInfo = {
elementBaseType: `${baseType}`,
- arrayLength: kArrayLength,
- layout: scalarInfo.layout ?
- {
- alignment: scalarInfo.layout.alignment,
- size:
- addressSpace === 'uniform' ?
- // Uniform storage class must have array elements aligned to 16.
- kArrayLength *
- arrayStride({
- ...scalarInfo.layout,
- alignment: 16
- }) :
- kArrayLength * arrayStride(scalarInfo.layout)
- } :
- undefined
+ arrayLength: arrayElementCount,
+ layout,
+ supportsAtomics
};
// Sized
- if (addressSpace === 'uniform') {
- yield {
- type: `array<vec4<${scalarType}>,${kArrayLength}>`,
- _kTypeInfo: arrayTypeInfo
- };
- } else {
- yield { type: `array<${scalarType},${kArrayLength}>`, _kTypeInfo: arrayTypeInfo };
- }
+ yield { type: `array<${arrayElemType},${arrayElementCount}>`, _kTypeInfo: arrayTypeInfo };
// Unsized
if (addressSpace === 'storage') {
- yield { type: `array<${scalarType}>`, _kTypeInfo: arrayTypeInfo };
+ yield { type: `array<${arrayElemType}>`, _kTypeInfo: arrayTypeInfo };
}
}
@@ -272,7 +380,7 @@ export function supportsAtomics(p)
}
-/** Generates an iterator of supported base types (i32/u32/f32/bool) */
+/** Generates an iterator of supported base types (i32/u32/f16/f32/bool) */
export function* supportedScalarTypes(p) {
for (const scalarType of kScalarTypes) {
const info = kScalarTypeInfo[scalarType];
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/const_assert/const_assert.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/const_assert/const_assert.spec.js
index 13e7e687f8..4a32098f6c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/const_assert/const_assert.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/const_assert/const_assert.spec.js
@@ -59,9 +59,9 @@ g.test('constant_expression_no_assert').
desc(`Test that const_assert does not assert on a true conditional expression`).
params((u) =>
u.
-combine('case', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('case', keysOf(kConditionCases))
).
fn((t) => {
const expr = kConditionCases[t.params.case].expr;
@@ -76,9 +76,9 @@ g.test('constant_expression_assert').
desc(`Test that const_assert does assert on a false conditional expression`).
params((u) =>
u.
-combine('case', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('case', keysOf(kConditionCases))
).
fn((t) => {
const expr = kConditionCases[t.params.case].expr;
@@ -95,10 +95,10 @@ desc(
).
params((u) =>
u.
-combine('lhs', keysOf(kConditionCases)).
-combine('rhs', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('lhs', keysOf(kConditionCases)).
+combine('rhs', keysOf(kConditionCases))
).
fn((t) => {
const expr = `(${kConditionCases[t.params.lhs].expr}) || (${
@@ -117,10 +117,10 @@ desc(
).
params((u) =>
u.
-combine('lhs', keysOf(kConditionCases)).
-combine('rhs', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('lhs', keysOf(kConditionCases)).
+combine('rhs', keysOf(kConditionCases))
).
fn((t) => {
const expr = `(${kConditionCases[t.params.lhs].expr}) || (${
@@ -139,10 +139,10 @@ desc(
).
params((u) =>
u.
-combine('lhs', keysOf(kConditionCases)).
-combine('rhs', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('lhs', keysOf(kConditionCases)).
+combine('rhs', keysOf(kConditionCases))
).
fn((t) => {
const expr = `(${kConditionCases[t.params.lhs].expr}) && (${
@@ -161,10 +161,10 @@ desc(
).
params((u) =>
u.
-combine('lhs', keysOf(kConditionCases)).
-combine('rhs', keysOf(kConditionCases)).
combine('scope', ['module', 'function']).
-beginSubcases()
+beginSubcases().
+combine('lhs', keysOf(kConditionCases)).
+combine('rhs', keysOf(kConditionCases))
).
fn((t) => {
const expr = `(${kConditionCases[t.params.lhs].expr}) && (${
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/compound_statement.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/compound_statement.spec.js
new file mode 100644
index 0000000000..f7bcf6d9d6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/compound_statement.spec.js
@@ -0,0 +1,98 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for declarations in compound statements.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// 9.1 Compound Statements
+// When a declaration is one of those statements, its identifier is in scope from
+// the start of the next statement until the end of the compound statement.
+//
+// Enumerating cases: Consider a declaration X inside a compound statement.
+// The X declaration should be tested with potential uses and potentially
+// conflicting declarations in positions [a, b, c, d, e], in the following:
+// a { b; X; c; { d; } } e;
+
+const kConflictTests = {
+ a: {
+ src: 'let x = 1; { let x = 1; }',
+ pass: true
+ },
+ bc: {
+ src: '{let x = 1; let x = 1; }',
+ pass: false
+ },
+ d: {
+ src: '{let x = 1; { let x = 1; }}',
+ pass: true
+ },
+ e: {
+ src: '{let x = 1; } let x = 1;',
+ pass: true
+ }
+};
+
+g.test('decl_conflict').
+desc(
+ 'Test a potentially conflicting declaration relative to a declaration in a compound statement'
+).
+params((u) => u.combine('case', keysOf(kConflictTests))).
+fn((t) => {
+ const wgsl = `
+@vertex fn vtx() -> @builtin(position) vec4f {
+ ${kConflictTests[t.params.case].src}
+ return vec4f(1);
+}`;
+ t.expectCompileResult(kConflictTests[t.params.case].pass, wgsl);
+});
+
+const kUseTests = {
+ a: {
+ src: 'let y = x; { let x = 1; }',
+ pass: false // not visible
+ },
+ b: {
+ src: '{ let y = x; let x = 1; }',
+ pass: false // not visible
+ },
+ self: {
+ src: '{ let x = (x);}',
+ pass: false // not visible
+ },
+ c_yes: {
+ src: '{ const x = 1; const_assert x == 1; }',
+ pass: true
+ },
+ c_no: {
+ src: '{ const x = 1; const_assert x == 2; }',
+ pass: false
+ },
+ d_yes: {
+ src: '{ const x = 1; { const_assert x == 1; }}',
+ pass: true
+ },
+ d_no: {
+ src: '{ const x = 1; { const_assert x == 2; }}',
+ pass: false
+ },
+ e: {
+ src: '{ const x = 1; } let y = x;',
+ pass: false // not visible
+ }
+};
+
+g.test('decl_use').
+desc('Test a use of a declaration in a compound statement').
+params((u) => u.combine('case', keysOf(kUseTests))).
+fn((t) => {
+ const wgsl = `
+@vertex fn vtx() -> @builtin(position) vec4f {
+ ${kUseTests[t.params.case].src}
+ return vec4f(1);
+}`;
+ t.expectCompileResult(kUseTests[t.params.case].pass, wgsl);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/const.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/const.spec.js
index 2ab34e65bf..0ba21b64eb 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/const.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/const.spec.js
@@ -3,6 +3,7 @@
**/export const description = `
Validation tests for const declarations
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
import { ShaderValidationTest } from '../shader_validation_test.js';
export const g = makeTestGroup(ShaderValidationTest);
@@ -58,4 +59,161 @@ const a = 4;
const b = S(4).a;
`;
t.expectCompileResult(t.params.target === 'a', wgsl);
+});
+
+const kTypeCases = {
+ bool: {
+ code: `const x : bool = true;`,
+ valid: true
+ },
+ i32: {
+ code: `const x : i32 = 1i;`,
+ valid: true
+ },
+ u32: {
+ code: `const x : u32 = 1u;`,
+ valid: true
+ },
+ f32: {
+ code: `const x : f32 = 1f;`,
+ valid: true
+ },
+ f16: {
+ code: `enable f16;\nconst x : f16 = 1h;`,
+ valid: true
+ },
+ abstract_int: {
+ code: `
+ const x = 0xffffffffff;
+ const_assert x == 0xffffffffff;`,
+ valid: true
+ },
+ abstract_float: {
+ code: `
+ const x = 3937509.87755102;
+ const_assert x != 3937510.0;
+ const_assert x != 3937509.75;`,
+ valid: true
+ },
+ vec2i: {
+ code: `const x : vec2i = vec2i();`,
+ valid: true
+ },
+ vec3u: {
+ code: `const x : vec3u = vec3u();`,
+ valid: true
+ },
+ vec4f: {
+ code: `const x : vec4f = vec4f();`,
+ valid: true
+ },
+ mat2x2: {
+ code: `const x : mat2x2f = mat2x2f();`,
+ valid: true
+ },
+ mat4x3f: {
+ code: `const x : mat4x3<f32> = mat4x3<f32>();`,
+ valid: true
+ },
+ array_sized: {
+ code: `const x : array<u32, 4> = array(1,2,3,4);`,
+ valid: true
+ },
+ array_runtime: {
+ code: `const x : array<u32> = array(1,2,3);`,
+ valid: false
+ },
+ struct: {
+ code: `struct S { x : u32 }\nconst x : S = S(0);`,
+ valid: true
+ },
+ atomic: {
+ code: `const x : atomic<u32> = 0;`,
+ valid: false
+ },
+ vec_abstract_int: {
+ code: `
+ const x = vec2(0xffffffffff,0xfffffffff0);
+ const_assert x.x == 0xffffffffff;
+ const_assert x.y == 0xfffffffff0;`,
+ valid: true
+ },
+ array_abstract_int: {
+ code: `
+ const x = array(0xffffffffff,0xfffffffff0);
+ const_assert x[0] == 0xffffffffff;
+ const_assert x[1] == 0xfffffffff0;`,
+ valid: true
+ }
+};
+
+g.test('type').
+desc('Test const types').
+params((u) => u.combine('case', keysOf(kTypeCases))).
+beforeAllSubcases((t) => {
+ if (t.params.case === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const testcase = kTypeCases[t.params.case];
+ const code = testcase.code;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+const kInitCases = {
+ no_init: {
+ code: `const x : u32;`,
+ valid: false
+ },
+ no_type: {
+ code: `const x = 0;`,
+ valid: true
+ },
+ init_matching_type: {
+ code: `const x : i32 = 1i;`,
+ valid: true
+ },
+ init_mismatch_type: {
+ code: `const x : u32 = 1i;`,
+ valid: false
+ },
+ abs_int_init_convert: {
+ code: `const x : u32 = 1;`,
+ valid: true
+ },
+ abs_float_init_convert: {
+ code: `const x : f32 = 1.0;`,
+ valid: true
+ },
+ init_const_expr: {
+ code: `const x = 0;\nconst y = x + 2;`,
+ valid: true
+ },
+ init_override_expr: {
+ code: `override x : u32;\nconst y = x * 2;`,
+ valid: false
+ },
+ init_runtime_expr: {
+ code: `var<private> x = 1i;\nconst y = x - 1;`,
+ valid: false
+ }
+};
+
+g.test('initializer').
+desc('Test const initializers').
+params((u) => u.combine('case', keysOf(kInitCases))).
+fn((t) => {
+ const testcase = kInitCases[t.params.case];
+ const code = testcase.code;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+g.test('function_scope').
+desc('Test that const declarations are allowed in functions').
+fn((t) => {
+ const code = `fn foo() { const x = 0; }`;
+ t.expectCompileResult(true, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/context_dependent_resolution.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/context_dependent_resolution.spec.js
new file mode 100644
index 0000000000..b821f03957
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/context_dependent_resolution.spec.js
@@ -0,0 +1,338 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Tests that context dependent names do not participate in name resolution.
+That is, a declaration named the same as a context dependent name will not interfere.
+
+Context-dependent names:
+ * Attribute names
+ * Built-in value names
+ * Diagnostic severity control
+ * Diagnostic triggering rules
+ * Enable extensions
+ * Language extensions
+ * Swizzles
+ * Interpolation type
+ * Interpolation sampling
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kAttributeCases = {
+ align: `struct S { @align(16) x : u32 }`,
+ binding: `@group(0) @binding(0) var s : sampler;`,
+ builtin: `@vertex fn main() -> @builtin(position) vec4f { return vec4f(); }`,
+ // const is not writable
+ // diagnostic is a keyword
+ group: `@group(0) @binding(0) var s : sampler;`,
+ id: `@id(1) override x : i32;`,
+ interpolate: `@fragment fn main(@location(0) @interpolate(flat) x : i32) { }`,
+ invariant: `@fragment fn main(@builtin(position) @invariant pos : vec4f) { }`,
+ location: `@fragment fn main(@location(0) x : f32) { }`,
+ must_use: `@must_use fn foo() -> u32 { return 0; }`,
+ size: `struct S { @size(4) x : u32 }`,
+ workgroup_size: `@compute @workgroup_size(1) fn main() { }`,
+ compute: `@compute @workgroup_size(1) fn main() { }`,
+ fragment: `@fragment fn main() { }`,
+ vertex: `@vertex fn main() -> @builtin(position) vec4f { return vec4f(); }`
+};
+
+g.test('attribute_names').
+desc('Tests attribute names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kAttributeCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ ${kAttributeCases[t.params.case]}
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kBuiltinCases = {
+ vertex_index: `
+ @vertex
+ fn main(@builtin(vertex_index) idx : u32) -> @builtin(position) vec4f
+ { return vec4f(); }`,
+ instance_index: `
+ @vertex
+ fn main(@builtin(instance_index) idx : u32) -> @builtin(position) vec4f
+ { return vec4f(); }`,
+ position_vertex: `
+ @vertex fn main() -> @builtin(position) vec4f
+ { return vec4f(); }`,
+ position_fragment: `@fragment fn main(@builtin(position) pos : vec4f) { }`,
+ front_facing: `@fragment fn main(@builtin(front_facing) x : bool) { }`,
+ frag_depth: `@fragment fn main() -> @builtin(frag_depth) f32 { return 0; }`,
+ sample_index: `@fragment fn main(@builtin(sample_index) x : u32) { }`,
+ sample_mask_input: `@fragment fn main(@builtin(sample_mask) x : u32) { }`,
+ sample_mask_output: `@fragment fn main() -> @builtin(sample_mask) u32 { return 0; }`,
+ local_invocation_id: `
+ @compute @workgroup_size(1)
+ fn main(@builtin(local_invocation_id) id : vec3u) { }`,
+ local_invocation_index: `
+ @compute @workgroup_size(1)
+ fn main(@builtin(local_invocation_index) id : u32) { }`,
+ global_invocation_id: `
+ @compute @workgroup_size(1)
+ fn main(@builtin(global_invocation_id) id : vec3u) { }`,
+ workgroup_id: `
+ @compute @workgroup_size(1)
+ fn main(@builtin(workgroup_id) id : vec3u) { }`,
+ num_workgroups: `
+ @compute @workgroup_size(1)
+ fn main(@builtin(num_workgroups) id : vec3u) { }`
+};
+
+g.test('builtin_value_names').
+desc('Tests builtin value names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kBuiltinCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ ${kBuiltinCases[t.params.case]}
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kDiagnosticSeverityCases = {
+ error: `
+ diagnostic(error, derivative_uniformity);
+ @diagnostic(error, derivative_uniformity) fn foo() { }
+ `,
+ warning: `
+ diagnostic(warning, derivative_uniformity);
+ @diagnostic(warning, derivative_uniformity) fn foo() { }
+ `,
+ off: `
+ diagnostic(off, derivative_uniformity);
+ @diagnostic(off, derivative_uniformity) fn foo() { }
+ `,
+ info: `
+ diagnostic(info, derivative_uniformity);
+ @diagnostic(info, derivative_uniformity) fn foo() { }
+ `
+};
+
+g.test('diagnostic_severity_names').
+desc('Tests diagnostic severity names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kDiagnosticSeverityCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${kDiagnosticSeverityCases[t.params.case]}
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kDiagnosticRuleCases = {
+ derivative_uniformity: `
+ diagnostic(off, derivative_uniformity);
+ @diagnostic(warning, derivative_uniformity) fn foo() { }`,
+ unknown_rule: `
+ diagnostic(off, unknown_rule);
+ @diagnostic(warning, unknown_rule) fn foo() { }`,
+ unknown: `
+ diagnostic(off, unknown.rule);
+ @diagnostic(warning, unknown.rule) fn foo() { }`,
+ rule: `
+ diagnostic(off, unknown.rule);
+ @diagnostic(warning, unknown.rule) fn foo() { }`
+};
+
+g.test('diagnostic_rule_names').
+desc('Tests diagnostic rule names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kDiagnosticRuleCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${kDiagnosticRuleCases[t.params.case]}
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kEnableCases = {
+ f16: `enable f16;`
+};
+
+g.test('enable_names').
+desc('Tests enable extension names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kEnableCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+}).
+fn((t) => {
+ const code = `
+ ${kEnableCases[t.params.case]}
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kLanguageCases = {
+ readonly_and_readwrite_storage_textures: `requires readonly_and_readwrite_storage_textures;`,
+ packed_4x8_integer_dot_product: `requires packed_4x8_integer_dot_product;`,
+ unrestricted_pointer_parameters: `requires unrestricted_pointer_parameters;`,
+ pointer_composite_access: `requires pointer_composite_access;`
+};
+
+g.test('language_names').
+desc('Tests language extension names do not use name resolution').
+params((u) =>
+u.
+combine('case', keysOf(kLanguageCases)).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ t.skipIf(!t.hasLanguageFeature(t.params.case), 'Missing language feature');
+ const code = `
+ ${kLanguageCases[t.params.case]}
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kSwizzleCases = [
+'x',
+'y',
+'z',
+'w',
+'xy',
+'yxz',
+'wxyz',
+'xyxy',
+'r',
+'g',
+'b',
+'a',
+'rgb',
+'arr',
+'bgra',
+'agra'];
+
+
+g.test('swizzle_names').
+desc('Tests swizzle names do not use name resolution').
+params((u) =>
+u.
+combine('case', kSwizzleCases).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ let code = `${t.params.decl} ${t.params.case} : u32 = 0;\n`;
+ if (t.params.case.length === 1) {
+ for (let i = 2; i <= 4; i++) {
+ code += `${t.params.decl} ${t.params.case.padEnd(i, t.params.case[0])} : u32 = 0;\n`;
+ }
+ }
+ code += `fn foo() {
+ var x : vec4f;
+ _ = x.${t.params.case};
+ `;
+ if (t.params.case.length === 1) {
+ for (let i = 2; i <= 4; i++) {
+ code += `_ = x.${t.params.case.padEnd(i, t.params.case[0])};\n`;
+ }
+ }
+ code += `}
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }`;
+ t.expectCompileResult(true, code);
+});
+
+const kInterpolationTypeCases = ['perspective', 'linear', 'flat'];
+
+g.test('interpolation_type_names').
+desc('Tests interpolation type names do not use name resolution').
+params((u) =>
+u.
+combine('case', kInterpolationTypeCases).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ @fragment fn main(@location(0) @interpolate(${t.params.case}) x : f32) { }
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+});
+
+const kInterpolationSamplingCases = ['center', 'centroid', 'sample'];
+
+g.test('interpolation_sampling_names').
+desc('Tests interpolation type names do not use name resolution').
+params((u) =>
+u.
+combine('case', kInterpolationSamplingCases).
+beginSubcases().
+combine('decl', ['override', 'const', 'var<private>'])
+).
+fn((t) => {
+ const code = `
+ ${t.params.decl} ${t.params.case} : u32 = 0;
+ @fragment fn main(@location(0) @interpolate(perspective, ${t.params.case}) x : f32) { }
+ fn use_var() -> u32 {
+ return ${t.params.case};
+ }
+ `;
+
+ t.expectCompileResult(true, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/let.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/let.spec.js
new file mode 100644
index 0000000000..2c6d1937b6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/let.spec.js
@@ -0,0 +1,180 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for let declarations
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+
+
+
+
+
+
+const kTypeCases = {
+ bool: {
+ code: `let x : bool = true;`,
+ valid: true
+ },
+ i32: {
+ code: `let x : i32 = 1i;`,
+ valid: true
+ },
+ u32: {
+ code: `let x : u32 = 1u;`,
+ valid: true
+ },
+ f32: {
+ code: `let x : f32 = 1f;`,
+ valid: true
+ },
+ f16: {
+ code: `let x : f16 = 1h;`,
+ valid: true
+ },
+ vec2i: {
+ code: `let x : vec2i = vec2i();`,
+ valid: true
+ },
+ vec3u: {
+ code: `let x : vec3u = vec3u();`,
+ valid: true
+ },
+ vec4f: {
+ code: `let x : vec4f = vec4f();`,
+ valid: true
+ },
+ mat2x2: {
+ code: `let x : mat2x2f = mat2x2f();`,
+ valid: true
+ },
+ mat4x3f: {
+ code: `let x : mat4x3<f32> = mat4x3<f32>();`,
+ valid: true
+ },
+ array_sized: {
+ code: `let x : array<u32, 4> = array(1,2,3,4);`,
+ valid: true
+ },
+ array_runtime: {
+ code: `let x : array<u32> = array(1,2,3);`,
+ valid: false
+ },
+ struct: {
+ code: `let x : S = S(0);`,
+ valid: true,
+ decls: `struct S { x : u32 }`
+ },
+ atomic: {
+ code: `let x : atomic<u32> = 0;`,
+ valid: false
+ },
+ ptr_function: {
+ code: `
+ var x : i32;
+ let y : ptr<function, i32> = &x;`,
+ valid: true
+ },
+ ptr_storage: {
+ code: `let y : ptr<storage, i32> = &x[0];`,
+ valid: true,
+ decls: `@group(0) @binding(0) var<storage> x : array<i32, 4>;`
+ },
+ load_rule: {
+ code: `
+ var x : i32 = 1;
+ let y : i32 = x;`,
+ valid: true
+ }
+};
+
+g.test('type').
+desc('Test let types').
+params((u) => u.combine('case', keysOf(kTypeCases))).
+beforeAllSubcases((t) => {
+ if (t.params.case === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const testcase = kTypeCases[t.params.case];
+ const code = `
+${t.params.case === 'f16' ? 'enable f16;' : ''}
+${testcase.decls ?? ''}
+fn foo() {
+ ${testcase.code}
+}`;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+const kInitCases = {
+ no_init: {
+ code: `let x : u32;`,
+ valid: false
+ },
+ no_type: {
+ code: `let x = 1;`,
+ valid: true
+ },
+ init_matching_type: {
+ code: `let x : u32 = 1u;`,
+ valid: true
+ },
+ init_mismatch_type: {
+ code: `let x : u32 = 1i;`,
+ valid: false
+ },
+ ptr_type_mismatch: {
+ code: `var x : i32;\nlet y : ptr<function, u32> = &x;`,
+ valid: false
+ },
+ ptr_access_mismatch: {
+ code: `let y : ptr<storage, u32, read> = &x;`,
+ valid: false,
+ decls: `@group(0) @binding(0) var<storage, read_write> x : u32;`
+ },
+ ptr_addrspace_mismatch: {
+ code: `let y = ptr<storage, u32> = &x;`,
+ valid: false,
+ decls: `@group(0) @binding(0) var<uniform> x : u32;`
+ },
+ init_const_expr: {
+ code: `let y = x * 2;`,
+ valid: true,
+ decls: `const x = 1;`
+ },
+ init_override_expr: {
+ code: `let y = x + 1;`,
+ valid: true,
+ decls: `override x = 1;`
+ },
+ init_runtime_expr: {
+ code: `var x = 1;\nlet y = x << 1;`,
+ valid: true
+ }
+};
+
+g.test('initializer').
+desc('Test let initializers').
+params((u) => u.combine('case', keysOf(kInitCases))).
+fn((t) => {
+ const testcase = kInitCases[t.params.case];
+ const code = `
+${testcase.decls ?? ''}
+fn foo() {
+ ${testcase.code}
+}`;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+g.test('module_scope').
+desc('Test that let declarations are disallowed module scope').
+fn((t) => {
+ const code = `let x = 0;`;
+ t.expectCompileResult(false, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/override.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/override.spec.js
index 561527a622..ec31582ae5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/override.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/override.spec.js
@@ -3,6 +3,7 @@
**/export const description = `
Validation tests for override declarations
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
import { ShaderValidationTest } from '../shader_validation_test.js';
export const g = makeTestGroup(ShaderValidationTest);
@@ -28,4 +29,181 @@ override b : i32 = c;
override c : i32 = ${t.params.target};
`;
t.expectCompileResult(t.params.target === 'a', wgsl);
+});
+
+const kIdCases = {
+ min: {
+ code: `@id(0) override x = 1;`,
+ valid: true
+ },
+ max: {
+ code: `@id(65535) override x = 1;`,
+ valid: true
+ },
+ neg: {
+ code: `@id(-1) override x = 1;`,
+ valid: false
+ },
+ too_large: {
+ code: `@id(65536) override x = 1;`,
+ valid: false
+ },
+ duplicate: {
+ code: `
+ @id(1) override x = 1;
+ @id(1) override y = 1;`,
+ valid: false
+ }
+};
+
+g.test('id').
+desc('Test id attributes').
+params((u) => u.combine('case', keysOf(kIdCases))).
+fn((t) => {
+ const testcase = kIdCases[t.params.case];
+ const code = testcase.code;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+const kTypeCases = {
+ bool: {
+ code: `override x : bool;`,
+ valid: true
+ },
+ i32: {
+ code: `override x : i32;`,
+ valid: true
+ },
+ u32: {
+ code: `override x : u32;`,
+ valid: true
+ },
+ f32: {
+ code: `override x : f32;`,
+ valid: true
+ },
+ f16: {
+ code: `enable f16;\noverride x : f16;`,
+ valid: true
+ },
+ abs_int_conversion: {
+ code: `override x = 1;`,
+ valid: true
+ },
+ abs_float_conversion: {
+ code: `override x = 1.0;`,
+ valid: true
+ },
+ vec2_bool: {
+ code: `override x : vec2<bool>;`,
+ valid: false
+ },
+ vec2i: {
+ code: `override x : vec2i;`,
+ valid: false
+ },
+ vec3u: {
+ code: `override x : vec3u;`,
+ valid: false
+ },
+ vec4f: {
+ code: `override x : vec4f;`,
+ valid: false
+ },
+ mat2x2f: {
+ code: `override x : mat2x2f;`,
+ valid: false
+ },
+ matrix: {
+ code: `override x : mat4x3<f32>;`,
+ valid: false
+ },
+ array: {
+ code: `override x : array<u32, 4>;`,
+ valid: false
+ },
+ struct: {
+ code: `struct S { x : u32 }\noverride x : S;`,
+ valid: false
+ },
+ atomic: {
+ code: `override x : atomic<u32>;`,
+ valid: false
+ }
+};
+
+g.test('type').
+desc('Test override types').
+params((u) => u.combine('case', keysOf(kTypeCases))).
+beforeAllSubcases((t) => {
+ if (t.params.case === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const testcase = kTypeCases[t.params.case];
+ const code = testcase.code;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+const kInitCases = {
+ no_init_no_type: {
+ code: `override x;`,
+ valid: false
+ },
+ no_init: {
+ code: `override x : u32;`,
+ valid: true
+ },
+ no_type: {
+ code: `override x = 1;`,
+ valid: true
+ },
+ init_matching_type: {
+ code: `override x : u32 = 1u;`,
+ valid: true
+ },
+ init_mismatch_type: {
+ code: `override x : u32 = 1i;`,
+ valid: false
+ },
+ abs_int_init_convert: {
+ code: `override x : f32 = 1;`,
+ valid: true
+ },
+ abs_float_init_convert: {
+ code: `override x : f32 = 1.0;`,
+ valid: true
+ },
+ init_const_expr: {
+ code: `const x = 1;\noverride y = 2 * x;`,
+ valid: true
+ },
+ init_override_expr: {
+ code: `override x = 1;\noverride y = x + 2;`,
+ valid: true
+ },
+ init_runtime_expr: {
+ code: `var<private> x = 2;\noverride y = x;`,
+ valid: false
+ }
+};
+
+g.test('initializer').
+desc('Test override initializers').
+params((u) => u.combine('case', keysOf(kInitCases))).
+fn((t) => {
+ const testcase = kInitCases[t.params.case];
+ const code = testcase.code;
+ const expect = testcase.valid;
+ t.expectCompileResult(expect, code);
+});
+
+g.test('function_scope').
+desc('Test that override declarations are disallowed in functions').
+fn((t) => {
+ const code = `fn foo() { override x : u32; }`;
+ t.expectCompileResult(false, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/var.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/var.spec.js
new file mode 100644
index 0000000000..ff4f705d87
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/decl/var.spec.js
@@ -0,0 +1,529 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for host-shareable types.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// The set of types and their properties.
+const kTypes = {
+ // Scalars.
+ bool: {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ i32: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ u32: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ f32: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ f16: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: true
+ },
+
+ // Vectors.
+ 'vec2<bool>': {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ vec3i: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ vec4u: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ vec2f: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ vec3h: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: true
+ },
+
+ // Matrices.
+ mat2x2f: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ mat3x4h: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: true
+ },
+
+ // Atomics.
+ 'atomic<i32>': {
+ isHostShareable: true,
+ isConstructible: false,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ 'atomic<u32>': {
+ isHostShareable: true,
+ isConstructible: false,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+
+ // Arrays.
+ 'array<vec4<bool>>': {
+ isHostShareable: false,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ },
+ 'array<vec4<bool>, 4>': {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ 'array<vec4u>': {
+ isHostShareable: true,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ },
+ 'array<vec4u, 4>': {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ 'array<vec4u, array_size_const>': {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ 'array<vec4u, array_size_override>': {
+ isHostShareable: false,
+ isConstructible: false,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+
+ // Structures.
+ S_u32: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ S_bool: {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ S_S_bool: {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ S_array_vec4u: {
+ isHostShareable: true,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ },
+ S_array_vec4u_4: {
+ isHostShareable: true,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+ S_array_bool_4: {
+ isHostShareable: false,
+ isConstructible: true,
+ isFixedFootprint: true,
+ requiresF16: false
+ },
+
+ // Misc.
+ 'ptr<function, u32>': {
+ isHostShareable: false,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ },
+ sampler: {
+ isHostShareable: false,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ },
+ 'texture_2d<f32>': {
+ isHostShareable: false,
+ isConstructible: false,
+ isFixedFootprint: false,
+ requiresF16: false
+ }
+};
+
+g.test('module_scope_types').
+desc('Test that only types that are allowed for a given address space are accepted.').
+params((u) =>
+u.
+combine('type', keysOf(kTypes)).
+combine('kind', [
+'comment',
+'handle',
+'private',
+'storage_ro',
+'storage_rw',
+'uniform',
+'workgroup']
+).
+combine('via_alias', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (kTypes[t.params.type].requiresF16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kTypes[t.params.type];
+ const isAtomic = t.params.type.indexOf('atomic') > -1;
+
+ let decl = '<>';
+ let shouldPass = false;
+ switch (t.params.kind) {
+ case 'comment':
+ // Control case to make sure all types are spelled correctly.
+ // We always emit an alias to the target type.
+ decl = '// ';
+ shouldPass = true;
+ break;
+ case 'handle':
+ decl = '@group(0) @binding(0) var foo : ';
+ shouldPass = t.params.type.indexOf('texture') > -1 || t.params.type.indexOf('sampler') > -1;
+ break;
+ case 'private':
+ decl = 'var<private> foo : ';
+ shouldPass = type.isConstructible;
+ break;
+ case 'storage_ro':
+ decl = '@group(0) @binding(0) var<storage, read> foo : ';
+ shouldPass = type.isHostShareable && !isAtomic;
+ break;
+ case 'storage_rw':
+ decl = '@group(0) @binding(0) var<storage, read_write> foo : ';
+ shouldPass = type.isHostShareable;
+ break;
+ case 'uniform':
+ decl = '@group(0) @binding(0) var<uniform> foo : ';
+ shouldPass = type.isHostShareable && type.isConstructible;
+ break;
+ case 'workgroup':
+ decl = 'var<workgroup> foo : ';
+ shouldPass = type.isFixedFootprint;
+ break;
+ }
+
+ const wgsl = `${type.requiresF16 ? 'enable f16;' : ''}
+ const array_size_const = 4;
+ override array_size_override = 4;
+
+ struct S_u32 { a : u32 }
+ struct S_bool { a : bool }
+ struct S_S_bool { a : S_bool }
+ struct S_array_vec4u { a : array<u32> }
+ struct S_array_vec4u_4 { a : array<vec4u, 4> }
+ struct S_array_bool_4 { a : array<bool, 4> }
+
+ alias MyType = ${t.params.type};
+
+ ${decl} ${t.params.via_alias ? 'MyType' : t.params.type};
+ `;
+
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+g.test('function_scope_types').
+desc('Test that only types that are allowed for a given address space are accepted.').
+params((u) =>
+u.
+combine('type', keysOf(kTypes)).
+combine('kind', ['comment', 'var']).
+combine('via_alias', [false, true])
+).
+beforeAllSubcases((t) => {
+ if (kTypes[t.params.type].requiresF16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kTypes[t.params.type];
+
+ let decl = '<>';
+ let shouldPass = false;
+ switch (t.params.kind) {
+ case 'comment':
+ // Control case to make sure all types are spelled correctly.
+ // We always emit an alias to the target type.
+ decl = '// ';
+ shouldPass = true;
+ break;
+ case 'var':
+ decl = 'var foo : ';
+ shouldPass = type.isConstructible;
+ break;
+ }
+
+ const wgsl = `${type.requiresF16 ? 'enable f16;' : ''}
+ const array_size_const = 4;
+ override array_size_override = 4;
+
+ struct S_u32 { a : u32 }
+ struct S_bool { a : bool }
+ struct S_S_bool { a : S_bool }
+ struct S_array_vec4u { a : array<u32> }
+ struct S_array_vec4u_4 { a : array<vec4u, 4> }
+ struct S_array_bool_4 { a : array<bool, 4> }
+
+ alias MyType = ${t.params.type};
+
+ fn foo() {
+ ${decl} ${t.params.via_alias ? 'MyType' : t.params.type};
+ }`;
+
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+g.test('module_scope_initializers').
+desc('Test that initializers are only supported on address spaces that allow them.').
+params((u) =>
+u.
+combine('initializer', [false, true]).
+combine('kind', ['private', 'storage_ro', 'storage_rw', 'uniform', 'workgroup'])
+).
+fn((t) => {
+ let decl = '<>';
+ switch (t.params.kind) {
+ case 'private':
+ decl = 'var<private> foo : ';
+ break;
+ case 'storage_ro':
+ decl = '@group(0) @binding(0) var<storage, read> foo : ';
+ break;
+ case 'storage_rw':
+ decl = '@group(0) @binding(0) var<storage, read_write> foo : ';
+ break;
+ case 'uniform':
+ decl = '@group(0) @binding(0) var<uniform> foo : ';
+ break;
+ case 'workgroup':
+ decl = 'var<workgroup> foo : ';
+ break;
+ }
+
+ const wgsl = `${decl} u32${t.params.initializer ? ' = 42u' : ''};`;
+ t.expectCompileResult(t.params.kind === 'private' || !t.params.initializer, wgsl);
+});
+
+g.test('handle_initializer').
+desc('Test that initializers are not allowed for handle types').
+params((u) =>
+u.combine('initializer', [false, true]).combine('type', ['sampler', 'texture_2d<f32>'])
+).
+fn((t) => {
+ const wgsl = `
+ @group(0) @binding(0) var foo : ${t.params.type};
+ @group(0) @binding(1) var bar : ${t.params.type}${t.params.initializer ? ' = foo' : ''};`;
+ t.expectCompileResult(!t.params.initializer, wgsl);
+});
+
+// A list of u32 initializers and their validity for the private address space.
+const kInitializers = {
+ 'u32()': true,
+ '42u': true,
+ 'u32(sqrt(42.0))': true,
+ 'user_func()': false,
+ my_const_42u: true,
+ my_override_42u: true,
+ another_private_var: false,
+ 'vec4u(1, 2, 3, 4)[my_const_42u / 20]': true,
+ 'vec4u(1, 2, 3, 4)[my_override_42u / 20]': true,
+ 'vec4u(1, 2, 3, 4)[another_private_var / 20]': false
+};
+
+g.test('initializer_kind').
+desc(
+ 'Test that initializers must be const-expression or override-expression for the private address space.'
+).
+params((u) =>
+u.combine('initializer', keysOf(kInitializers)).combine('addrspace', ['private', 'function'])
+).
+fn((t) => {
+ let wgsl = `
+ const my_const_42u = 42u;
+ override my_override_42u : u32;
+ var<private> another_private_var = 42u;
+
+ fn user_func() -> u32 {
+ return 42u;
+ }
+ `;
+
+ if (t.params.addrspace === 'private') {
+ wgsl += `
+ var<private> foo : u32 = ${t.params.initializer};`;
+ } else {
+ wgsl += `
+ fn foo() {
+ var bar : u32 = ${t.params.initializer};
+ }`;
+ }
+ t.expectCompileResult(
+ t.params.addrspace === 'function' || kInitializers[t.params.initializer],
+ wgsl
+ );
+});
+
+g.test('function_addrspace_at_module_scope').
+desc('Test that the function address space is not allowed at module scope.').
+params((u) => u.combine('addrspace', ['private', 'function'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.addrspace === 'private',
+ `var<${t.params.addrspace}> foo : i32;`
+ );
+});
+
+// A list of resource variable declarations.
+const kResourceDecls = {
+ uniform: 'var<uniform> buffer : vec4f;',
+ storage: 'var<storage> buffer : vec4f;',
+ texture: 'var t : texture_2d<f32>;',
+ sampler: 'var s : sampler;'
+};
+
+g.test('binding_point_on_resources').
+desc('Test that resource variables must have both @group and @binding attributes.').
+params((u) =>
+u.
+combine('decl', keysOf(kResourceDecls)).
+combine('group', ['', '@group(0)']).
+combine('binding', ['', '@binding(0)'])
+).
+fn((t) => {
+ const shouldPass = t.params.group !== '' && t.params.binding !== '';
+ const wgsl = `${t.params.group} ${t.params.binding} ${kResourceDecls[t.params.decl]}`;
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+g.test('binding_point_on_non_resources').
+desc('Test that non-resource variables cannot have either @group or @binding attributes.').
+params((u) =>
+u.
+combine('addrspace', ['private', 'workgroup']).
+combine('group', ['', '@group(0)']).
+combine('binding', ['', '@binding(0)'])
+).
+fn((t) => {
+ const shouldPass = t.params.group === '' && t.params.binding === '';
+ const wgsl = `${t.params.group} ${t.params.binding} var<${t.params.addrspace}> foo : i32;`;
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+g.test('binding_point_on_function_var').
+desc('Test that function variables cannot have either @group or @binding attributes.').
+params((u) => u.combine('group', ['', '@group(0)']).combine('binding', ['', '@binding(0)'])).
+fn((t) => {
+ const shouldPass = t.params.group === '' && t.params.binding === '';
+ const wgsl = `
+ fn foo() {
+ ${t.params.group} ${t.params.binding} var bar : i32;
+ }`;
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+g.test('binding_collisions').
+desc('Test that binding points can collide iff they are not used by the same entry point.').
+params((u) =>
+u.
+combine('a_group', [0, 1]).
+combine('b_group', [0, 1]).
+combine('a_binding', [0, 1]).
+combine('b_binding', [0, 1]).
+combine('b_use', ['same', 'different'])
+).
+fn((t) => {
+ const wgsl = `
+ @group(${t.params.a_group}) @binding(${t.params.a_binding}) var<uniform> a : vec4f;
+ @group(${t.params.b_group}) @binding(${t.params.b_binding}) var<uniform> b : vec4f;
+
+ @fragment
+ fn main1() {
+ _ = a;
+ ${
+ t.params.b_use === 'same' ?
+ '' :
+ `
+ }
+
+ @fragment
+ fn main2() {`
+ }
+ _ = b;
+ }`;
+
+ const collision =
+ t.params.a_group === t.params.b_group && t.params.a_binding === t.params.b_binding;
+ const shouldFail = collision && t.params.b_use === 'same';
+ t.expectCompileResult(!shouldFail, wgsl);
+});
+
+g.test('binding_collision_unused_helper').
+desc('Test that binding points can collide in an unused helper function.').
+fn((t) => {
+ const wgsl = `
+ @group(0) @binding(0) var<uniform> a : vec4f;
+ @group(0) @binding(0) var<uniform> b : vec4f;
+
+ fn foo() {
+ _ = a;
+ _ = b;
+ }`;
+
+ t.expectCompileResult(true, wgsl);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/access/vector.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/access/vector.spec.js
index 7408ea2b04..b881b8ccf5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/access/vector.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/access/vector.spec.js
@@ -178,10 +178,11 @@ g.test('vector').
desc('Tests validation of vector indexed and swizzles').
params((u) =>
u.
-combine('case', keysOf(kCases)) //
-.combine('vector_decl', ['const', 'let', 'var', 'param']).
+combine('vector_decl', ['const', 'let', 'var', 'param']).
combine('vector_width', [2, 3, 4]).
-combine('element_type', ['i32', 'u32', 'f32', 'f16', 'bool'])
+combine('element_type', ['i32', 'u32', 'f32', 'f16', 'bool']).
+beginSubcases().
+combine('case', keysOf(kCases))
).
beforeAllSubcases((t) => {
if (t.params.element_type === 'f16') {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/add_sub_mul.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/add_sub_mul.spec.js
new file mode 100644
index 0000000000..d49a029830
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/add_sub_mul.spec.js
@@ -0,0 +1,320 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for add/sub/mul expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import { assert } from '../../../../../common/util/util.js';
+import { kBit } from '../../../../util/constants.js';
+import {
+ kAllScalarsAndVectors,
+ kConcreteNumericScalarsAndVectors,
+ kConvertableToFloatScalar,
+ ScalarType,
+ scalarTypeOf,
+ Type,
+
+ VectorType } from
+'../../../../util/conversion.js';
+import { nextAfterF16, nextAfterF32 } from '../../../../util/math.js';
+import { reinterpretU16AsF16, reinterpretU32AsF32 } from '../../../../util/reinterpret.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+import {
+ kConstantAndOverrideStages,
+ validateConstOrOverrideBinaryOpEval } from
+'../call/builtin/const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of operators tested in this file.
+const kOperators = {
+ add: { op: '+' },
+ sub: { op: '-' },
+ mul: { op: '*' }
+};
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+const kConcreteNumericScalarAndVectorTypes = objectsToRecord(kConcreteNumericScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector expressions are only accepted for compatible numeric types.
+ `
+).
+params((u) =>
+u.
+combine('lhs', keysOf(kScalarAndVectorTypes)).
+combine(
+ 'rhs',
+ // Skip vec3 and vec4 on the RHS to keep the number of subcases down.
+ // vec3 + vec3 and vec4 + vec4 is tested in execution tests.
+ keysOf(kScalarAndVectorTypes).filter(
+ (value) => !(value.startsWith('vec3') || value.startsWith('vec4'))
+ )
+).
+beginSubcases().
+combine('op', keysOf(kOperators))
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const lhs = kScalarAndVectorTypes[t.params.lhs];
+ const rhs = kScalarAndVectorTypes[t.params.rhs];
+ const lhsElement = scalarTypeOf(lhs);
+ const rhsElement = scalarTypeOf(rhs);
+ const hasF16 = lhsElement === Type.f16 || rhsElement === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const lhs = ${lhs.create(0).wgsl()};
+const rhs = ${rhs.create(0).wgsl()};
+const foo = lhs ${op.op} rhs;
+`;
+
+ let elementsCompatible = lhsElement === rhsElement;
+ const elementTypes = [lhsElement, rhsElement];
+
+ // Booleans are not allowed for arithmetic expressions.
+ if (elementTypes.includes(Type.bool)) {
+ elementsCompatible = false;
+
+ // AbstractInt is allowed with everything but booleans which are already checked above.
+ } else if (elementTypes.includes(Type.abstractInt)) {
+ elementsCompatible = true;
+
+ // AbstractFloat is allowed with AbstractInt (checked above) or float types
+ } else if (elementTypes.includes(Type.abstractFloat)) {
+ elementsCompatible = elementTypes.every((e) => kConvertableToFloatScalar.includes(e));
+ }
+
+ // Determine if the full type is compatible. The only invalid case is mixed vector sizes.
+ let valid = elementsCompatible;
+ if (lhs instanceof VectorType && rhs instanceof VectorType) {
+ valid = valid && lhs.width === rhs.width;
+ }
+
+ t.expectCompileResult(valid, code);
+});
+
+g.test('scalar_vector_out_of_range').
+desc(
+ `
+ Checks that constant or override evaluation of add/sub/mul operations on scalar/vectors that produce out of range values cause validation errors.
+ - Checks for all concrete numeric scalar and vector types, including scalar * vector and vector * scalar.
+ - Checks for all vector elements that could cause the out of range to happen.
+ - Checks for pairs of values at one ULP difference at the boundary of the out of range.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kOperators)).
+combine('lhs', keysOf(kConcreteNumericScalarAndVectorTypes)).
+expand('rhs', (p) => {
+ if (kScalarAndVectorTypes[p.lhs] instanceof VectorType) {
+ return [p.lhs, scalarTypeOf(kScalarAndVectorTypes[p.lhs]).toString()];
+ }
+ return [p.lhs];
+}).
+beginSubcases().
+expand('swap', (p) => {
+ if (p.lhs === p.rhs) {
+ return [false];
+ }
+ return [false, true];
+}).
+combine('nonZeroIndex', [0, 1, 2, 3]).
+filter((p) => {
+ const lType = kScalarAndVectorTypes[p.lhs];
+ if (lType instanceof VectorType) {
+ return lType.width > p.nonZeroIndex;
+ }
+ return p.nonZeroIndex === 0;
+}).
+combine('valueCase', ['halfmax', 'halfmax+ulp', 'sqrtmax', 'sqrtmax+ulp']).
+combine('stage', kConstantAndOverrideStages)
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const { op, valueCase, nonZeroIndex, swap } = t.params;
+ let { lhs, rhs } = t.params;
+
+ const elementType = scalarTypeOf(kScalarAndVectorTypes[lhs]);
+
+ // Handle the swapping of LHS and RHS to test all cases of scalar * vector.
+ if (swap) {
+ [rhs, lhs] = [lhs, rhs];
+ }
+
+ // What is the maximum representable value for the type? Also how do we add a ULP?
+ let maxValue = 0;
+ let nextAfter = (v) => v + 1;
+ let outOfRangeIsError = false;
+ switch (elementType) {
+ case Type.f16:
+ maxValue = reinterpretU16AsF16(kBit.f16.positive.max);
+ nextAfter = (v) => nextAfterF16(v, 'positive', 'no-flush');
+ outOfRangeIsError = true;
+ break;
+ case Type.f32:
+ maxValue = reinterpretU32AsF32(kBit.f32.positive.max);
+ nextAfter = (v) => nextAfterF32(v, 'positive', 'no-flush');
+ outOfRangeIsError = true;
+ break;
+ case Type.u32:
+ maxValue = kBit.u32.max;
+ break;
+ case Type.i32:
+ maxValue = kBit.i32.positive.max;
+ break;
+ }
+
+ // Decide on the test value that may or may not do an out of range computation.
+ let value;
+ switch (valueCase) {
+ case 'halfmax':
+ value = Math.floor(maxValue / 2);
+ break;
+ case 'halfmax+ulp':
+ value = nextAfter(Math.ceil(maxValue / 2));
+ break;
+ case 'sqrtmax':
+ value = Math.floor(Math.sqrt(maxValue));
+ break;
+ case 'sqrtmax+ulp':
+ value = nextAfter(Math.ceil(Math.sqrt(maxValue)));
+ break;
+ }
+
+ // What value will be computed by the test?
+ let computedValue;
+ let leftValue = value;
+ const rightValue = value;
+ switch (op) {
+ case 'add':
+ computedValue = value + value;
+ break;
+ case 'sub':
+ computedValue = -value - value;
+ leftValue = -value;
+ break;
+ case 'mul':
+ computedValue = value * value;
+ break;
+ }
+
+ // Creates either a scalar with the value, or a vector with the value only at a specific index.
+ const create = (type, index, value) => {
+ if (type instanceof ScalarType) {
+ return type.create(value);
+ } else {
+ assert(type instanceof VectorType);
+ const values = new Array(type.width);
+ values.fill(0);
+ values[index] = value;
+ return type.create(values);
+ }
+ };
+
+ // Check if there is overflow
+ const success = Math.abs(computedValue) <= maxValue || !outOfRangeIsError;
+ validateConstOrOverrideBinaryOpEval(
+ t,
+ kOperators[op].op,
+ success,
+ t.params.stage,
+ create(kScalarAndVectorTypes[lhs], nonZeroIndex, leftValue),
+ t.params.stage,
+ create(kScalarAndVectorTypes[rhs], nonZeroIndex, rightValue)
+ );
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `i32(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `i32(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_type_with_itself').
+desc(
+ `
+ Validates that expressions are never accepted for non-scalar, non-vector, and non-matrix types.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kOperators)).
+combine('type', keysOf(kInvalidTypes)).
+combine('control', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<i32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ${expr} ${op.op} ${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/and_or_xor.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/and_or_xor.spec.js
new file mode 100644
index 0000000000..9acede3030
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/and_or_xor.spec.js
@@ -0,0 +1,182 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for logical and bitwise and/or/xor expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import {
+ kAllScalarsAndVectors,
+ ScalarType,
+ scalarTypeOf,
+ Type,
+ VectorType } from
+'../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of operators and a flag for whether they support boolean values or not.
+const kOperators = {
+ and: { op: '&', supportsBool: true },
+ or: { op: '|', supportsBool: true },
+ xor: { op: '^', supportsBool: false }
+};
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector expressions are only accepted for bool or compatible integer types.
+ `
+).
+params((u) =>
+u.
+combine('lhs', keysOf(kScalarAndVectorTypes)).
+combine(
+ 'rhs',
+ // Skip vec3 and vec4 on the RHS to keep the number of subcases down.
+ // vec3 + vec3 and vec4 + vec4 is tested in execution tests.
+ keysOf(kScalarAndVectorTypes).filter(
+ (value) => !(value.startsWith('vec3') || value.startsWith('vec4'))
+ )
+).
+beginSubcases().
+combine('op', keysOf(kOperators))
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const lhs = kScalarAndVectorTypes[t.params.lhs];
+ const rhs = kScalarAndVectorTypes[t.params.rhs];
+ const lhsElement = scalarTypeOf(lhs);
+ const rhsElement = scalarTypeOf(rhs);
+ const hasF16 = lhsElement === Type.f16 || rhsElement === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const lhs = ${lhs.create(0).wgsl()};
+const rhs = ${rhs.create(0).wgsl()};
+const foo = lhs ${op.op} rhs;
+`;
+
+ // Determine if the element types are compatible.
+ const kIntegerTypes = [Type.abstractInt, Type.i32, Type.u32];
+ let elementIsCompatible = false;
+ if (lhsElement === Type.abstractInt) {
+ // Abstract integers are compatible with any other integer type.
+ elementIsCompatible = kIntegerTypes.includes(rhsElement);
+ } else if (rhsElement === Type.abstractInt) {
+ // Abstract integers are compatible with any other numeric type.
+ elementIsCompatible = kIntegerTypes.includes(lhsElement);
+ } else if (kIntegerTypes.includes(lhsElement)) {
+ // Concrete integers are only compatible with values with the exact same type.
+ elementIsCompatible = lhsElement === rhsElement;
+ } else if (lhsElement === Type.bool) {
+ // Booleans are only compatible with other booleans.
+ elementIsCompatible = rhsElement === Type.bool;
+ }
+
+ // Determine if the full type is compatible.
+ let valid = false;
+ if (lhs instanceof ScalarType && rhs instanceof ScalarType) {
+ valid = elementIsCompatible;
+ } else if (lhs instanceof VectorType && rhs instanceof VectorType) {
+ // Vectors are only compatible with if the vector widths match.
+ valid = lhs.width === rhs.width && elementIsCompatible;
+ }
+
+ if (lhsElement === Type.bool) {
+ valid &&= op.supportsBool;
+ }
+
+ t.expectCompileResult(valid, code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `i32(${e}[0][0])`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `i32(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `i32(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kOperators)).
+combine('type', keysOf(kInvalidTypes)).
+combine('control', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<i32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ${expr} ${op.op} ${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/bitwise_shift.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/bitwise_shift.spec.js
index ff3e1ae525..0ad5ae30b9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/bitwise_shift.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/bitwise_shift.spec.js
@@ -3,6 +3,13 @@
**/export const description = `
Validation tests for the bitwise shift binary expression operations
`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ numElementsOf,
+ scalarTypeOf } from
+'../../../../util/conversion.js';
import { ShaderValidationTest } from '../../shader_validation_test.js';
export const g = makeTestGroup(ShaderValidationTest);
@@ -21,6 +28,137 @@ function vectorize(v, size) {
return v;
}
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector expressions are only accepted when the LHS is an integer and the RHS is abstract or unsigned.
+ `
+).
+params((u) =>
+u.
+combine('lhs', keysOf(kScalarAndVectorTypes)).
+combine(
+ 'rhs',
+ // Skip vec3 and vec4 on the RHS to keep the number of subcases down.
+ keysOf(kScalarAndVectorTypes).filter(
+ (value) => !(value.startsWith('vec3') || value.startsWith('vec4'))
+ )
+).
+beginSubcases().
+combine('op', ['<<', '>>'])
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const lhs = kScalarAndVectorTypes[t.params.lhs];
+ const rhs = kScalarAndVectorTypes[t.params.rhs];
+ const lhsElement = scalarTypeOf(lhs);
+ const rhsElement = scalarTypeOf(rhs);
+ const hasF16 = lhsElement === Type.f16 || rhsElement === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const lhs = ${lhs.create(0).wgsl()};
+const rhs = ${rhs.create(0).wgsl()};
+const foo = lhs ${t.params.op} rhs;
+`;
+
+ // The LHS must be an integer, and the RHS must be an abstract/unsigned integer.
+ // The vector widths must also match.
+ const lhs_valid = [Type.abstractInt, Type.i32, Type.u32].includes(lhsElement);
+ const rhs_valid = [Type.abstractInt, Type.u32].includes(rhsElement);
+ const valid = lhs_valid && rhs_valid && numElementsOf(lhs) === numElementsOf(rhs);
+ t.expectCompileResult(valid, code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `u32(${e}[0][0])`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `u32(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `u32(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.
+combine('op', ['<<', '>>']).
+combine('type', keysOf(kInvalidTypes)).
+combine('control', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<u32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<u32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ${expr} ${t.params.op} ${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+});
+
const kLeftShiftCases = [
// rhs >= bitwidth fails
{ lhs: `0u`, rhs: `31u`, pass: true },
@@ -80,28 +218,6 @@ fn main() {
t.expectCompileResult(t.params.case.pass, code);
});
-g.test('shift_left_vec_size_mismatch').
-desc('Tests validation of binary left shift of vectors with mismatched sizes').
-params((u) =>
-u.
-combine('vectorize_lhs', [2, 3, 4]) //
-.combine('vectorize_rhs', [2, 3, 4])
-).
-fn((t) => {
- const lhs = `1`;
- const rhs = `1`;
- const lhs_vec_size = t.params.vectorize_lhs;
- const rhs_vec_size = t.params.vectorize_rhs;
- const code = `
-@compute @workgroup_size(1)
-fn main() {
- const r = ${vectorize(lhs, lhs_vec_size)} << ${vectorize(rhs, rhs_vec_size)};
-}
- `;
- const pass = lhs_vec_size === rhs_vec_size;
- t.expectCompileResult(pass, code);
-});
-
const kRightShiftCases = [
// rhs >= bitwidth fails
{ lhs: `0u`, rhs: `31u`, pass: true },
@@ -141,26 +257,4 @@ fn main() {
}
`;
t.expectCompileResult(t.params.case.pass, code);
-});
-
-g.test('shift_right_vec_size_mismatch').
-desc('Tests validation of binary right shift of vectors with mismatched sizes').
-params((u) =>
-u.
-combine('vectorize_lhs', [2, 3, 4]) //
-.combine('vectorize_rhs', [2, 3, 4])
-).
-fn((t) => {
- const lhs = `1`;
- const rhs = `1`;
- const lhs_vec_size = t.params.vectorize_lhs;
- const rhs_vec_size = t.params.vectorize_rhs;
- const code = `
-@compute @workgroup_size(1)
-fn main() {
- const r = ${vectorize(lhs, lhs_vec_size)} >> ${vectorize(rhs, rhs_vec_size)};
-}
- `;
- const pass = lhs_vec_size === rhs_vec_size;
- t.expectCompileResult(pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/comparison.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/comparison.spec.js
new file mode 100644
index 0000000000..75ab1b6daa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/comparison.spec.js
@@ -0,0 +1,186 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for comparison expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import {
+ isFloatType,
+ kAllScalarsAndVectors,
+ ScalarType,
+ scalarTypeOf,
+ Type,
+ VectorType } from
+'../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+// A list of comparison operators and a flag for whether they support boolean values or not.
+const kComparisonOperators = {
+ eq: { op: '==', supportsBool: true },
+ ne: { op: '!=', supportsBool: true },
+ gt: { op: '>', supportsBool: false },
+ ge: { op: '>=', supportsBool: false },
+ lt: { op: '<', supportsBool: false },
+ le: { op: '<=', supportsBool: false }
+};
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector comparison expressions are only accepted for compatible types.
+ `
+).
+params((u) =>
+u.
+combine('lhs', keysOf(kScalarAndVectorTypes)).
+combine(
+ 'rhs',
+ // Skip vec3 and vec4 on the RHS to keep the number of subcases down.
+ keysOf(kScalarAndVectorTypes).filter(
+ (value) => !(value.startsWith('vec3') || value.startsWith('vec4'))
+ )
+).
+beginSubcases().
+combine('op', keysOf(kComparisonOperators))
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const lhs = kScalarAndVectorTypes[t.params.lhs];
+ const rhs = kScalarAndVectorTypes[t.params.rhs];
+ const lhsElement = scalarTypeOf(lhs);
+ const rhsElement = scalarTypeOf(rhs);
+ const hasF16 = lhsElement === Type.f16 || rhsElement === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const lhs = ${lhs.create(0).wgsl()};
+const rhs = ${rhs.create(0).wgsl()};
+const foo = lhs ${kComparisonOperators[t.params.op].op} rhs;
+`;
+
+ let valid = false;
+
+ // Determine if the element types are comparable.
+ let elementIsCompatible = false;
+ if (lhsElement === Type.abstractInt) {
+ // Abstract integers are comparable to any other numeric type.
+ elementIsCompatible = rhsElement !== Type.bool;
+ } else if (rhsElement === Type.abstractInt) {
+ // Abstract integers are comparable to any other numeric type.
+ elementIsCompatible = lhsElement !== Type.bool;
+ } else if (lhsElement === Type.abstractFloat) {
+ // Abstract floats are comparable to any other float type.
+ elementIsCompatible = isFloatType(rhsElement);
+ } else if (rhsElement === Type.abstractFloat) {
+ // Abstract floats are comparable to any other float type.
+ elementIsCompatible = isFloatType(lhsElement);
+ } else {
+ // Non-abstract types are only comparable to values with the exact same type.
+ elementIsCompatible = lhsElement === rhsElement;
+ }
+
+ // Determine if the full type is comparable.
+ if (lhs instanceof ScalarType && rhs instanceof ScalarType) {
+ valid = elementIsCompatible;
+ } else if (lhs instanceof VectorType && rhs instanceof VectorType) {
+ // Vectors are only comparable if the vector widths match.
+ valid = lhs.width === rhs.width && elementIsCompatible;
+ }
+
+ if (lhsElement === Type.bool) {
+ valid &&= kComparisonOperators[t.params.op].supportsBool;
+ }
+
+ t.expectCompileResult(valid, code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `${e}[0]`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `textureLoad(${e}, vec2(), 0)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `textureSampleLevel(t, ${e}, vec2(), 0)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that comparison expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kComparisonOperators)).
+combine('type', keysOf(kInvalidTypes)).
+combine('control', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<i32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ${expr} ${kComparisonOperators[t.params.op].op} ${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/div_rem.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/div_rem.spec.js
new file mode 100644
index 0000000000..75d26c4132
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/binary/div_rem.spec.js
@@ -0,0 +1,279 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for division and remainder expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import { assert } from '../../../../../common/util/util.js';
+import { kBit } from '../../../../util/constants.js';
+import {
+ ScalarType,
+ Type,
+
+ VectorType,
+ kAllScalarsAndVectors,
+ kConcreteNumericScalarsAndVectors,
+ kConvertableToFloatScalar,
+ scalarTypeOf } from
+'../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+import {
+ kConstantAndOverrideStages,
+ validateConstOrOverrideBinaryOpEval } from
+'../call/builtin/const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of operators tested in this file.
+const kOperators = {
+ div: { op: '/' },
+ rem: { op: '%' }
+};
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+const kConcreteNumericScalarAndVectorTypes = objectsToRecord(kConcreteNumericScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector expressions are only accepted for compatible numeric types.
+ `
+).
+params((u) =>
+u.
+combine('lhs', keysOf(kScalarAndVectorTypes)).
+combine(
+ 'rhs',
+ // Skip vec3 and vec4 on the RHS to keep the number of subcases down.
+ // vec3 + vec3 and vec4 + vec4 is tested in execution tests.
+ keysOf(kScalarAndVectorTypes).filter(
+ (value) => !(value.startsWith('vec3') || value.startsWith('vec4'))
+ )
+).
+beginSubcases().
+combine('op', keysOf(kOperators))
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const lhs = kScalarAndVectorTypes[t.params.lhs];
+ const rhs = kScalarAndVectorTypes[t.params.rhs];
+ const lhsElement = scalarTypeOf(lhs);
+ const rhsElement = scalarTypeOf(rhs);
+ const hasF16 = lhsElement === Type.f16 || rhsElement === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const lhs = ${lhs.create(1).wgsl()};
+const rhs = ${rhs.create(1).wgsl()};
+const foo = lhs ${op.op} rhs;
+`;
+
+ let elementsCompatible = lhsElement === rhsElement;
+ const elementTypes = [lhsElement, rhsElement];
+
+ // Booleans are not allowed for arithmetic expressions.
+ if (elementTypes.includes(Type.bool)) {
+ elementsCompatible = false;
+
+ // AbstractInt is allowed with everything but booleans which are already checked above.
+ } else if (elementTypes.includes(Type.abstractInt)) {
+ elementsCompatible = true;
+
+ // AbstractFloat is allowed with AbstractInt (checked above) or float types
+ } else if (elementTypes.includes(Type.abstractFloat)) {
+ elementsCompatible = elementTypes.every((e) => kConvertableToFloatScalar.includes(e));
+ }
+
+ // Determine if the full type is compatible. The only invalid case is mixed vector sizes.
+ let valid = elementsCompatible;
+ if (lhs instanceof VectorType && rhs instanceof VectorType) {
+ valid = valid && lhs.width === rhs.width;
+ }
+
+ t.expectCompileResult(valid, code);
+});
+
+g.test('scalar_vector_out_of_range').
+desc(
+ `
+ Checks that constant or override evaluation of div/rem operations on scalar/vectors that produce out of division by 0 or out of range values cause validation errors.
+ - Checks for all concrete numeric scalar and vector types, including scalar * vector and vector * scalar.
+ - Checks for all vector elements that could cause the out of range to happen.
+ - Checks for valid small cases and 0, also the minimum i32.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kOperators)).
+combine('lhs', keysOf(kConcreteNumericScalarAndVectorTypes)).
+expand('rhs', (p) => {
+ if (kScalarAndVectorTypes[p.lhs] instanceof VectorType) {
+ return [p.lhs, scalarTypeOf(kScalarAndVectorTypes[p.lhs]).toString()];
+ }
+ return [p.lhs];
+}).
+beginSubcases().
+expand('swap', (p) => {
+ if (p.lhs === p.rhs) {
+ return [false];
+ }
+ return [false, true];
+}).
+combine('nonOneIndex', [0, 1, 2, 3]).
+filter((p) => {
+ const lType = kScalarAndVectorTypes[p.lhs];
+ if (lType instanceof VectorType) {
+ return lType.width > p.nonOneIndex;
+ }
+ return p.nonOneIndex === 0;
+}).
+expandWithParams((p) => {
+ const cases = [
+ { leftValue: 42, rightValue: 0, error: true, leftRuntime: false },
+ { leftValue: 42, rightValue: 0, error: true, leftRuntime: true },
+ { leftValue: 0, rightValue: 0, error: true, leftRuntime: true },
+ { leftValue: 0, rightValue: 42, error: false, leftRuntime: false }];
+
+ if (p.lhs === 'i32') {
+ cases.push({
+ leftValue: -kBit.i32.negative.min,
+ rightValue: -1,
+ error: true,
+ leftRuntime: false
+ });
+ cases.push({
+ leftValue: -kBit.i32.negative.min + 1,
+ rightValue: -1,
+ error: false,
+ leftRuntime: false
+ });
+ }
+ return cases;
+}).
+combine('stage', kConstantAndOverrideStages)
+).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kScalarAndVectorTypes[t.params.lhs]) === Type.f16 ||
+ scalarTypeOf(kScalarAndVectorTypes[t.params.rhs]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const { op, leftValue, rightValue, error, leftRuntime, nonOneIndex, swap } = t.params;
+ let { lhs, rhs } = t.params;
+
+ // Handle the swapping of LHS and RHS to test all cases of scalar * vector.
+ if (swap) {
+ [rhs, lhs] = [lhs, rhs];
+ }
+
+ // Creates either a scalar with the value, or a vector with the value only at a specific index.
+ const create = (type, index, value) => {
+ if (type instanceof ScalarType) {
+ return type.create(value);
+ } else {
+ assert(type instanceof VectorType);
+ const values = new Array(type.width);
+ values.fill(1);
+ values[index] = value;
+ return type.create(values);
+ }
+ };
+
+ // Check if there is overflow
+ validateConstOrOverrideBinaryOpEval(
+ t,
+ kOperators[op].op,
+ !error,
+ leftRuntime ? 'runtime' : t.params.stage,
+ create(kScalarAndVectorTypes[lhs], nonOneIndex, leftValue),
+ t.params.stage,
+ create(kScalarAndVectorTypes[rhs], nonOneIndex, rightValue)
+ );
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `i32(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `i32(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_type_with_itself').
+desc(
+ `
+ Validates that expressions are never accepted for non-scalar, non-vector, and non-matrix types.
+ `
+).
+params((u) =>
+u.
+combine('op', keysOf(kOperators)).
+combine('type', keysOf(kInvalidTypes)).
+combine('control', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ const op = kOperators[t.params.op];
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<i32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ${expr} ${op.op} ${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/abs.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/abs.spec.js
index 255c8ab2e2..5492d8cd1a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/abs.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/abs.spec.js
@@ -6,9 +6,9 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- elementType,
- kAllFloatAndIntegerScalarsAndVectors } from
+ Type,
+ kAllNumericScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -21,7 +21,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatAndIntegerScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kAllNumericScalarsAndVectors);
g.test('values').
desc(
@@ -38,7 +38,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -51,4 +51,108 @@ fn((t) => {
[kValuesTypes[t.params.type].create(t.params.value)],
t.params.stage
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = abs(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = abs(i32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = abs(false);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = abs(vec2<bool>(false, true));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = abs(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = abs(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = abs(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = abs(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = abs(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = abs(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1u;
+ let p: ptr<function, u32> = &a;
+ _ = abs(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1u;
+ let p: ptr<function, u32> = &a;
+ _ = abs(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = abs(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = abs(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = abs();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = abs(1, 2);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias i32_alias = i32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acos.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acos.spec.js
index d7caeca828..fdc7c9e0aa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acos.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acos.spec.js
@@ -6,18 +6,18 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
+import { absBigInt } from '../../../../../util/math.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +25,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,15 +39,23 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinusTwoToTwo, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
- const expectedResult = Math.abs(t.params.value) <= 1;
+ const expectedResult =
+ typeof t.params.value === 'bigint' ?
+ absBigInt(t.params.value) <= 1n :
+ Math.abs(t.params.value) <= 1;
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,7 +65,8 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+// f32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -71,8 +80,137 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = acos(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = acos(f32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = acos(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = acos(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = acos(1u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = acos(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = acos(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = acos(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = acos(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = acos(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = acos(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = acos(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = acos(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = acos(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = acos(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = acos(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = acos(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = acos(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = acos();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = acos(1, 2);`,
+ pass: false
+ },
+
+ greater_then_one: {
+ src: `_ = acos(1.1f);`,
+ pass: false
+ },
+ less_then_negative_one: {
+ src: `_ = acos(-1.1f);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acosh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acosh.spec.js
index 037d058fb6..5db033436f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acosh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/acosh.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -18,7 +17,7 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -26,7 +25,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,16 +39,25 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(fullRangeForType(kValuesTypes[u.type]), kMinusTwoToTwo))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.acosh(t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.acosh(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -59,7 +67,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
g.test('integer_argument').
desc(
@@ -73,8 +81,132 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
- [type.create(1)],
+ /* expectedResult */type === Type.f32,
+ [type.create(type === Type.abstractInt ? 1n : 1)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = acosh(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = acosh(f32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = acosh(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = acosh(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = acosh(1u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = acosh(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = acosh(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = acosh(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = acosh(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = acosh(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = acosh(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = acosh(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = acosh(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = acosh(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = acosh(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = acosh(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = acosh(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = acosh(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = acosh();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = acosh(1, 2);`,
+ pass: false
+ },
+
+ less_then_one: {
+ src: `_ = acosh(.9f);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/all.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/all.spec.js
new file mode 100644
index 0000000000..83d2cfaf82
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/all.spec.js
@@ -0,0 +1,191 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'all';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import { Type, elementTypeOf, kAllScalarsAndVectors } from '../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { validateConstOrOverrideBuiltinEval } from './const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kArgumentTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('argument_types').
+desc(
+ `
+Validates that scalar and vector arguments are rejected by ${builtin}() if not bool or vecN<bool>
+`
+).
+params((u) => u.combine('type', keysOf(kArgumentTypes))).
+fn((t) => {
+ const type = kArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */elementTypeOf(type) === Type.bool,
+ [type.create(0)],
+ 'constant',
+ /* returnType */Type.bool
+ );
+});
+
+const kTests = {
+ valid: {
+ src: `_ = ${builtin}(true);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = ${builtin}(bool_alias(true));`,
+ pass: true
+ },
+ bool: {
+ src: `_ = ${builtin}(false);`,
+ pass: true
+ },
+ i32: {
+ src: `_ = ${builtin}(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = ${builtin}(1u);`,
+ pass: false
+ },
+ f32: {
+ src: `_ = ${builtin}(1.0f);`,
+ pass: false
+ },
+ f16: {
+ src: `_ = ${builtin}(1.0h);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = ${builtin}(vec2<bool>(false, true));`,
+ pass: true
+ },
+ vec2_bool_implicit: {
+ src: `_ = ${builtin}(vec2(false, true));`,
+ pass: true
+ },
+ vec3_bool_implicit: {
+ src: `_ = ${builtin}(vec3(true));`,
+ pass: true
+ },
+ vec_i32: {
+ src: `_ = ${builtin}(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = ${builtin}(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ vec_f32: {
+ src: `_ = ${builtin}(vec2<f32>(1, 1));`,
+ pass: false
+ },
+ vec_f16: {
+ src: `_ = ${builtin}(vec2<f16>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = ${builtin}(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = ${builtin}(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<bool, 5>;
+ _ = ${builtin}(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = ${builtin}(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = ${builtin}(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = ${builtin}(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = ${builtin}(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = ${builtin}(t);`,
+ pass: false
+ },
+ no_args: {
+ src: `_ = ${builtin}();`,
+ pass: false
+ },
+ too_many_args: {
+ src: `_ = ${builtin}(true, true);`,
+ pass: false
+ }
+};
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(true); }`);
+});
+
+g.test('arguments').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+beforeAllSubcases((t) => {
+ if (t.params.test.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const enables = t.params.test.includes('f16') ? 'enable f16;' : '';
+ const code = `
+ ${enables}
+ alias bool_alias = bool;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: bool,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+ }`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/any.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/any.spec.js
new file mode 100644
index 0000000000..7298c94130
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/any.spec.js
@@ -0,0 +1,191 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'any';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import { Type, elementTypeOf, kAllScalarsAndVectors } from '../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { validateConstOrOverrideBuiltinEval } from './const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kArgumentTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('argument_types').
+desc(
+ `
+Validates that scalar and vector arguments are rejected by ${builtin}() if not bool or vecN<bool>
+`
+).
+params((u) => u.combine('type', keysOf(kArgumentTypes))).
+fn((t) => {
+ const type = kArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */elementTypeOf(type) === Type.bool,
+ [type.create(0)],
+ 'constant',
+ /* returnType */Type.bool
+ );
+});
+
+const kTests = {
+ valid: {
+ src: `_ = ${builtin}(true);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = ${builtin}(bool_alias(true));`,
+ pass: true
+ },
+ bool: {
+ src: `_ = ${builtin}(false);`,
+ pass: true
+ },
+ i32: {
+ src: `_ = ${builtin}(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = ${builtin}(1u);`,
+ pass: false
+ },
+ f32: {
+ src: `_ = ${builtin}(1.0f);`,
+ pass: false
+ },
+ f16: {
+ src: `_ = ${builtin}(1.0h);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = ${builtin}(vec2<bool>(false, true));`,
+ pass: true
+ },
+ vec2_bool_implicit: {
+ src: `_ = ${builtin}(vec2(false, true));`,
+ pass: true
+ },
+ vec3_bool_implicit: {
+ src: `_ = ${builtin}(vec3(true));`,
+ pass: true
+ },
+ vec_i32: {
+ src: `_ = ${builtin}(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = ${builtin}(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ vec_f32: {
+ src: `_ = ${builtin}(vec2<f32>(1, 1));`,
+ pass: false
+ },
+ vec_f16: {
+ src: `_ = ${builtin}(vec2<f16>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = ${builtin}(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = ${builtin}(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<bool, 5>;
+ _ = ${builtin}(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = ${builtin}(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = ${builtin}(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = ${builtin}(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = ${builtin}(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = ${builtin}(t);`,
+ pass: false
+ },
+ no_args: {
+ src: `_ = ${builtin}();`,
+ pass: false
+ },
+ too_many_args: {
+ src: `_ = ${builtin}(true, true);`,
+ pass: false
+ }
+};
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(true); }`);
+});
+
+g.test('arguments').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+beforeAllSubcases((t) => {
+ if (t.params.test.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const enables = t.params.test.includes('f16') ? 'enable f16;' : '';
+ const code = `
+ ${enables}
+ alias bool_alias = bool;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: bool,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+ }`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/arrayLength.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/arrayLength.spec.js
new file mode 100644
index 0000000000..9a18b77e36
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/arrayLength.spec.js
@@ -0,0 +1,109 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for arrayLength builtins.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('bool_type').
+specURL('https://www.w3.org/TR/WGSL/#arrayLength-builtin').
+desc(
+ `
+arrayLength accepts only runtime-sized arrays
+`
+).
+fn((t) => {
+ const code = `
+@compute @workgroup_size(1)
+fn main() {
+ var b = true;
+ _ = arrayLength(&b);
+}`;
+
+ t.expectCompileResult(false, code);
+});
+
+const atomic_types = ['u32', 'i32'].map((j) => `atomic<${j}>`);
+const vec_types = [2, 3, 4].
+map((i) => ['i32', 'u32', 'f32', 'f16'].map((j) => `vec${i}<${j}>`)).
+reduce((a, c) => a.concat(c), []);
+const f32_matrix_types = [2, 3, 4].
+map((i) => [2, 3, 4].map((j) => `mat${i}x${j}f`)).
+reduce((a, c) => a.concat(c), []);
+const f16_matrix_types = [2, 3, 4].
+map((i) => [2, 3, 4].map((j) => `mat${i}x${j}<f16>`)).
+reduce((a, c) => a.concat(c), []);
+
+g.test('type').
+specURL('https://www.w3.org/TR/WGSL/#arrayLength-builtin').
+desc(
+ `
+arrayLength accepts only runtime-sized arrays
+`
+).
+params((u) =>
+u.combine('type', [
+'i32',
+'u32',
+'f32',
+'f16',
+...f32_matrix_types,
+...f16_matrix_types,
+...vec_types,
+...atomic_types,
+'T',
+'array<i32, 2>',
+'array<i32>']
+)
+).
+beforeAllSubcases((t) => {
+ if (t.params.type.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = `
+struct T {
+ b: i32,
+}
+struct S {
+ ary: ${t.params.type}
+}
+
+@group(0) @binding(0) var<storage, read_write> items: S;
+
+@compute @workgroup_size(1)
+fn main() {
+ _ = arrayLength(&items.ary);
+}`;
+
+ t.expectCompileResult(t.params.type === 'array<i32>', code);
+});
+
+// Note, the `write` case actually fails because you can't declare a storage buffer of
+// access_mode `write`.
+g.test('access_mode').
+specURL('https://www.w3.org/TR/WGSL/#arrayLength-builtin').
+desc(
+ `
+arrayLength runtime-sized array must have an access_mode of read or read_write
+`
+).
+params((u) => u.combine('mode', ['read', 'read_write', 'write'])).
+fn((t) => {
+ const code = `
+struct S {
+ ary: array<i32>,
+}
+
+@group(0) @binding(0) var<storage, ${t.params.mode}> items: S;
+
+@compute @workgroup_size(1)
+fn main() {
+ _ = arrayLength(&items.ary);
+}`;
+
+ t.expectCompileResult(t.params.mode !== 'write', code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asin.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asin.spec.js
index ec5c51fe15..957d829ce0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asin.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asin.spec.js
@@ -6,18 +6,18 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
+import { absBigInt } from '../../../../../util/math.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +25,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,15 +39,23 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinusTwoToTwo, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
- const expectedResult = Math.abs(t.params.value) <= 1;
+ const expectedResult =
+ typeof t.params.value === 'bigint' ?
+ absBigInt(t.params.value) <= 1n :
+ Math.abs(t.params.value) <= 1;
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,7 +65,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -71,8 +79,137 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = asin(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = asin(f32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = asin(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = asin(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = asin(1u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = asin(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = asin(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = asin(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = asin(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = asin(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = asin(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = asin(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = asin(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = asin(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = asin(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = asin(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = asin(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = asin(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = asin();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = asin(1, 2);`,
+ pass: false
+ },
+
+ greater_then_one: {
+ src: `_ = asin(1.1f);`,
+ pass: false
+ },
+ less_then_negative_one: {
+ src: `_ = asin(-1.1f);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asinh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asinh.spec.js
index ccc73de0fc..e357a0760d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asinh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/asinh.spec.js
@@ -6,19 +6,19 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf,
+ Type } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
-import { linearRange } from '../../../../../util/math.js';
+import { linearRange, linearRangeBigInt } from '../../../../../util/math.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
+ rangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -26,7 +26,12 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+const additionalRangeForType = rangeForType(
+ linearRange(-2000, 2000, 10),
+ linearRangeBigInt(-2000n, 2000n, 10)
+);
g.test('values').
desc(
@@ -41,17 +46,21 @@ combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
expand('value', (u) =>
-unique(fullRangeForType(kValuesTypes[u.type]), linearRange(-2000, 2000, 10))
+unique(fullRangeForType(kValuesTypes[u.type]), additionalRangeForType(kValuesTypes[u.type]))
)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.asinh(t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.asinh(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -61,7 +70,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -75,8 +84,128 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = asinh(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = asinh(f32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = asinh(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = asinh(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = asinh(1u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = asinh(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = asinh(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = asinh(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = asinh(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = asinh(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = asinh(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = asinh(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = asinh(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = asinh(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = asinh(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = asinh(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = asinh(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = asinh(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = asinh();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = asinh(1, 2);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan.spec.js
index 2cd971e678..19ff8902cb 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan.spec.js
@@ -6,18 +6,17 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinus3PiTo3Pi,
+ minusThreePiToThreePiRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,10 +38,15 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -58,7 +62,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -72,8 +76,128 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = atan(1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = atan(f32_alias(1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = atan(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = atan(1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = atan(1u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = atan(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = atan(vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = atan(vec2<u32>(1, 1));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = atan(mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = atan(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = atan(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = atan(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = atan(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = atan(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = atan(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = atan(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = atan(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = atan(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = atan();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = atan(1, 2);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan2.spec.js
index e0fded50b1..999e07298d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atan2.spec.js
@@ -6,13 +6,13 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- Vector,
- VectorType,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ VectorValue,
+ kFloatScalarsAndVectors,
+ kConcreteIntegerScalarsAndVectors,
+ kAllMatrices,
+ kAllBoolScalarsAndVectors,
+ scalarTypeOf,
+ Type } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -20,7 +20,7 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kSparseMinus3PiTo3Pi,
+ sparseMinusThreePiToThreePiRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -28,7 +28,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kFloatScalarsAndVectors);
g.test('values').
desc(
@@ -42,19 +42,29 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('y', (u) => unique(kSparseMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type], 4))).
-expand('x', (u) => unique(kSparseMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type], 4)))
+expand('y', (u) =>
+unique(
+ sparseMinusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type], 4)
+)
+).
+expand('x', (u) =>
+unique(
+ sparseMinusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type], 4)
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
const expectedResult = isRepresentable(
- Math.abs(Math.atan2(t.params.y, t.params.x)),
- elementType(type)
+ Math.abs(Math.atan2(Number(t.params.x), Number(t.params.y))),
+ scalarTypeOf(type)
);
validateConstOrOverrideBuiltinEval(
t,
@@ -65,42 +75,275 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kInvalidArgumentTypes = objectsToRecord([
+Type.f32,
+...kConcreteIntegerScalarsAndVectors,
+...kAllBoolScalarsAndVectors,
+...kAllMatrices]
+);
-g.test('integer_argument_y').
+g.test('invalid_argument_y').
desc(
`
Validates that scalar and vector integer arguments are rejected by ${builtin}()
`
).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+params((u) => u.combine('type', keysOf(kInvalidArgumentTypes))).
fn((t) => {
- const yTy = kIntegerArgumentTypes[t.params.type];
- const xTy = yTy instanceof Vector ? new VectorType(yTy.size, TypeF32) : TypeF32;
+ const yTy = kInvalidArgumentTypes[t.params.type];
+ const xTy = yTy instanceof VectorValue ? Type.vec(yTy.size, Type.f32) : Type.f32;
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */yTy === TypeF32,
+ /* expectedResult */yTy === Type.f32,
[yTy.create(1), xTy.create(1)],
'constant'
);
});
-g.test('integer_argument_x').
+g.test('invalid_argument_x').
desc(
`
Validates that scalar and vector integer arguments are rejected by ${builtin}()
`
).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+params((u) => u.combine('type', keysOf(kInvalidArgumentTypes))).
fn((t) => {
- const xTy = kIntegerArgumentTypes[t.params.type];
- const yTy = xTy instanceof Vector ? new VectorType(xTy.size, TypeF32) : TypeF32;
+ const xTy = kInvalidArgumentTypes[t.params.type];
+ const yTy = xTy instanceof VectorValue ? Type.vec(xTy.size, Type.f32) : Type.f32;
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */xTy === TypeF32,
+ /* expectedResult */xTy === Type.f32,
[yTy.create(1), xTy.create(1)],
'constant'
);
+});
+
+const kTests = {
+ af: {
+ src: `_ = atan2(1.2, 2.2);`,
+ pass: true,
+ is_f16: false
+ },
+ ai: {
+ src: `_ = atan2(1, 2);`,
+ pass: true,
+ is_f16: false
+ },
+ ai_af: {
+ src: `_ = atan2(1, 2.1);`,
+ pass: true,
+ is_f16: false
+ },
+ af_ai: {
+ src: `_ = atan2(1.2, 2);`,
+ pass: true,
+ is_f16: false
+ },
+ ai_f32: {
+ src: `_ = atan2(1, 1.2f);`,
+ pass: true,
+ is_f16: false
+ },
+ f32_ai: {
+ src: `_ = atan2(1.2f, 1);`,
+ pass: true,
+ is_f16: false
+ },
+ af_f32: {
+ src: `_ = atan2(1.2, 2.2f);`,
+ pass: true,
+ is_f16: false
+ },
+ f32_af: {
+ src: `_ = atan2(2.2f, 1.2);`,
+ pass: true,
+ is_f16: false
+ },
+ f16_ai: {
+ src: `_ = atan2(1.2h, 1);`,
+ pass: true,
+ is_f16: true
+ },
+ ai_f16: {
+ src: `_ = atan2(1, 1.2h);`,
+ pass: true,
+ is_f16: true
+ },
+ af_f16: {
+ src: `_ = atan2(1.2, 1.2h);`,
+ pass: true,
+ is_f16: true
+ },
+ f16_af: {
+ src: `_ = atan2(1.2h, 1.2);`,
+ pass: true,
+ is_f16: true
+ },
+
+ mixed_types: {
+ src: `_ = atan2(1.2f, vec2(1.2f));`,
+ pass: false,
+ is_f16: false
+ },
+ mixed_types_2: {
+ src: `_ = atan2(vec2(1.2f), 1.2f);`,
+ pass: false,
+ is_f16: false
+ },
+ f16_f32: {
+ src: `_ = atan2(1.2h, 1.2f);`,
+ pass: false,
+ is_f16: true
+ },
+ u32_f32: {
+ src: `_ = atan2(1u, 1.2f);`,
+ pass: false,
+ is_f16: false
+ },
+ f32_u32: {
+ src: `_ = atan2(1.2f, 1u);`,
+ pass: false,
+ is_f16: false
+ },
+ f32_i32: {
+ src: `_ = atan2(1.2f, 1i);`,
+ pass: false,
+ is_f16: false
+ },
+ i32_f32: {
+ src: `_ = atan2(1i, 1.2f);`,
+ pass: false,
+ is_f16: false
+ },
+ f32_bool: {
+ src: `_ = atan2(1.2f, true);`,
+ pass: false,
+ is_f16: false
+ },
+ bool_f32: {
+ src: `_ = atan2(false, 1.2f);`,
+ pass: false,
+ is_f16: false
+ },
+ vec_f32: {
+ src: `_ = atan2(vec2(1i), vec2(1.2f));`,
+ pass: false,
+ is_f16: false
+ },
+ f32_vec: {
+ src: `_ = atan2(vec2(1.2f), vec2(1i));`,
+ pass: false,
+ is_f16: false
+ },
+ matrix: {
+ src: `_ = atan2(mat2x2(1, 1, 1, 1), mat2x2(1, 1, 1, 1));`,
+ pass: false,
+ is_f16: false
+ },
+ atomic: {
+ src: ` _ = atan2(a, a);`,
+ pass: false,
+ is_f16: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = atan2(a, a);`,
+ pass: false,
+ is_f16: false
+ },
+ array_runtime: {
+ src: `_ = atan2(k.arry, k.arry);`,
+ pass: false,
+ is_f16: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = atan2(a, a);`,
+ pass: false,
+ is_f16: false
+ },
+ enumerant: {
+ src: `_ = atan2(read_write, read_write);`,
+ pass: false,
+ is_f16: false
+ },
+ ptr: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = atan2(p, p);`,
+ pass: false,
+ is_f16: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1f;
+ let p: ptr<function, f32> = &a;
+ _ = atan2(*p, *p);`,
+ pass: true,
+ is_f16: false
+ },
+ sampler: {
+ src: `_ = atan2(s, s);`,
+ pass: false,
+ is_f16: false
+ },
+ texture: {
+ src: `_ = atan2(t, t);`,
+ pass: false,
+ is_f16: false
+ },
+ no_params: {
+ src: `_ = atan2();`,
+ pass: false,
+ is_f16: false
+ },
+ too_many_params: {
+ src: `_ = atan2(1, 2, 3);`,
+ pass: false,
+ is_f16: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+beforeAllSubcases((t) => {
+ if (kTests[t.params.test].is_f16 === true) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1, 2); }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atanh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atanh.spec.js
index e252551219..32fc3ec87b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atanh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atanh.spec.js
@@ -6,18 +6,18 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
+import { absBigInt } from '../../../../../util/math.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +25,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,15 +39,23 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinusTwoToTwo, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
- const expectedResult = Math.abs(t.params.value) < 1;
+ const expectedResult =
+ typeof t.params.value === 'bigint' ?
+ absBigInt(t.params.value) < 1n :
+ Math.abs(t.params.value) < 1;
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,7 +65,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -71,8 +79,145 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
+});
+
+const kTests = {
+ valid: {
+ src: `_ = atanh(.1);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = atanh(f32_alias(.1));`,
+ pass: true
+ },
+
+ bool: {
+ src: `_ = atanh(false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = atanh(0i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = atanh(0u);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = atanh(vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = atanh(vec2<i32>(0, 0));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = atanh(vec2<u32>(0, 0));`,
+ pass: false
+ },
+ matrix: {
+ src: `_ = atanh(mat2x2(0, 0, 0, 0));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = atanh(a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<u32, 5>;
+ _ = atanh(a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = atanh(k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = atanh(a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = atanh(read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 0f;
+ let p: ptr<function, f32> = &a;
+ _ = atanh(p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 0f;
+ let p: ptr<function, f32> = &a;
+ _ = atanh(*p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = atanh(s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = atanh(t);`,
+ pass: false
+ },
+ no_params: {
+ src: `_ = atanh();`,
+ pass: false
+ },
+ too_many_params: {
+ src: `_ = atanh(0, .2);`,
+ pass: false
+ },
+
+ one: {
+ src: `_ = atanh(1f);`,
+ pass: false
+ },
+ greater_then_one: {
+ src: `_ = atanh(1.1f);`,
+ pass: false
+ },
+ negative_one: {
+ src: `_ = atanh(-1f);`,
+ pass: false
+ },
+ less_then_negative_one: {
+ src: `_ = atanh(-1.1f);`,
+ pass: false
+ }
+};
+
+g.test('parameters').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const code = `
+alias f32_alias = f32;
+
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: texture_2d<f32>;
+
+var<workgroup> a: atomic<u32>;
+
+struct A {
+ i: u32,
+}
+struct B {
+ arry: array<u32>,
+}
+@group(0) @binding(3) var<storage> k: B;
+
+
+@vertex
+fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+}`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atomics.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atomics.spec.js
index 3d51650c95..8756d61b3a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atomics.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/atomics.spec.js
@@ -8,18 +8,44 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
export const g = makeTestGroup(ShaderValidationTest);
+
+
+
+
const kAtomicOps = {
- add: { src: 'atomicAdd(&a,1)' },
- sub: { src: 'atomicSub(&a,1)' },
- max: { src: 'atomicMax(&a,1)' },
- min: { src: 'atomicMin(&a,1)' },
- and: { src: 'atomicAnd(&a,1)' },
- or: { src: 'atomicOr(&a,1)' },
- xor: { src: 'atomicXor(&a,1)' },
- load: { src: 'atomicLoad(&a)' },
- store: { src: 'atomicStore(&a,1)' },
- exchange: { src: 'atomicExchange(&a,1)' },
- compareexchangeweak: { src: 'atomicCompareExchangeWeak(&a,1,1)' }
+ add: (a) => {
+ return `atomicAdd(${a},1)`;
+ },
+ sub: (a) => {
+ return `atomicSub(${a},1)`;
+ },
+ max: (a) => {
+ return `atomicMax(${a},1)`;
+ },
+ min: (a) => {
+ return `atomicMin(${a},1)`;
+ },
+ and: (a) => {
+ return `atomicAnd(${a},1)`;
+ },
+ or: (a) => {
+ return `atomicOr(${a},1)`;
+ },
+ xor: (a) => {
+ return `atomicXor(${a},1)`;
+ },
+ load: (a) => {
+ return `atomicLoad(${a})`;
+ },
+ store: (a) => {
+ return `atomicStore(${a},1)`;
+ },
+ exchange: (a) => {
+ return `atomicExchange(${a},1)`;
+ },
+ compareexchangeweak: (a) => {
+ return `atomicCompareExchangeWeak(${a},1,1)`;
+ }
};
g.test('stage').
@@ -35,7 +61,7 @@ combine('stage', ['fragment', 'vertex', 'compute']) //
.combine('atomicOp', keysOf(kAtomicOps))
).
fn((t) => {
- const atomicOp = kAtomicOps[t.params.atomicOp].src;
+ const atomicOp = kAtomicOps[t.params.atomicOp](`&a`);
let code = `
@group(0) @binding(0) var<storage, read_write> a: atomic<i32>;
`;
@@ -67,4 +93,187 @@ fn((t) => {
const pass = t.params.stage !== 'vertex';
t.expectCompileResult(pass, code);
+});
+
+function generateAtomicCode(
+type,
+access,
+aspace,
+style,
+op)
+{
+ let moduleVar = ``;
+ let functionVar = ``;
+ let param = ``;
+ let aParam = ``;
+ if (style === 'var') {
+ aParam = `&a`;
+ switch (aspace) {
+ case 'storage':
+ moduleVar = `@group(0) @binding(0) var<storage, ${access}> a : atomic<${type}>;\n`;
+ break;
+ case 'workgroup':
+ moduleVar = `var<workgroup> a : atomic<${type}>;\n`;
+ break;
+ case 'uniform':
+ moduleVar = `@group(0) @binding(0) var<uniform> a : atomic<${type}>;\n`;
+ break;
+ case 'private':
+ moduleVar = `var<private> a : atomic<${type}>;\n`;
+ break;
+ case 'function':
+ functionVar = `var a : atomic<${type}>;\n`;
+ break;
+ default:
+ break;
+ }
+ } else {
+ const aspaceParam = aspace === 'storage' ? `, ${access}` : ``;
+ param = `p : ptr<${aspace}, atomic<${type}>${aspaceParam}>`;
+ aParam = `p`;
+ }
+
+ return `
+${moduleVar}
+fn foo(${param}) {
+ ${functionVar}
+ ${kAtomicOps[op](aParam)};
+}
+`;
+}
+
+g.test('atomic_parameterization').
+desc('Tests the valid atomic parameters').
+params((u) =>
+u.
+combine('op', keysOf(kAtomicOps)).
+beginSubcases().
+combine('aspace', ['storage', 'workgroup', 'private', 'uniform', 'function']).
+combine('access', ['read', 'read_write']).
+combine('type', ['i32', 'u32']).
+combine('style', ['param', 'var']).
+filter((t) => {
+ switch (t.aspace) {
+ case 'uniform':
+ return t.style === 'param' && t.access === 'read';
+ case 'workgroup':
+ return t.access === 'read_write';
+ case 'function':
+ case 'private':
+ return t.style === 'param' && t.access === 'read_write';
+ default:
+ return true;
+ }
+})
+).
+fn((t) => {
+ if (
+ t.params.style === 'param' &&
+ !(t.params.aspace === 'function' || t.params.aspace === 'private'))
+ {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
+ const aspaceOK = t.params.aspace === 'storage' || t.params.aspace === 'workgroup';
+ const accessOK = t.params.access === 'read_write';
+ t.expectCompileResult(
+ aspaceOK && accessOK,
+ generateAtomicCode(
+ t.params.type,
+ t.params.access,
+ t.params.aspace,
+ t.params.style,
+ t.params.op
+ )
+ );
+});
+
+g.test('data_parameters').
+desc('Validates that data parameters must match atomic type (or be implicitly convertible)').
+params((u) =>
+u.
+combine('op', [
+'atomicStore',
+'atomicAdd',
+'atomicSub',
+'atomicMax',
+'atomicMin',
+'atomicAnd',
+'atomicOr',
+'atomicXor',
+'atomicExchange',
+'atomicCompareExchangeWeak1',
+'atomicCompareExchangeWeak2']
+).
+beginSubcases().
+combine('atomicType', ['i32', 'u32']).
+combine('dataType', ['i32', 'u32', 'f32', 'AbstractInt'])
+).
+fn((t) => {
+ let dataValue = '';
+ switch (t.params.dataType) {
+ case 'i32':
+ dataValue = '1i';
+ break;
+ case 'u32':
+ dataValue = '1u';
+ break;
+ case 'f32':
+ dataValue = '1f';
+ break;
+ case 'AbstractInt':
+ dataValue = '1';
+ break;
+ }
+ let op = '';
+ switch (t.params.op) {
+ case 'atomicCompareExchangeWeak1':
+ op = `atomicCompareExchangeWeak(&a, ${dataValue}, 1)`;
+ break;
+ case 'atomicCompareExchangeWeak2':
+ op = `atomicCompareExchangeWeak(&a, 1, ${dataValue})`;
+ break;
+ default:
+ op = `${t.params.op}(&a, ${dataValue})`;
+ break;
+ }
+ const code = `
+var<workgroup> a : atomic<${t.params.atomicType}>;
+fn foo() {
+ ${op};
+}
+`;
+
+ const expect = t.params.atomicType === t.params.dataType || t.params.dataType === 'AbstractInt';
+ t.expectCompileResult(expect, code);
+});
+
+g.test('return_types').
+desc('Validates return types of atomics').
+params((u) =>
+u.
+combine('op', keysOf(kAtomicOps)).
+beginSubcases().
+combine('atomicType', ['i32', 'u32']).
+combine('returnType', ['i32', 'u32', 'f32'])
+).
+fn((t) => {
+ let op = `${kAtomicOps[t.params.op]('&a')}`;
+ switch (t.params.op) {
+ case 'compareexchangeweak':
+ op = `let tmp : ${t.params.returnType} = ${op}.old_value`;
+ break;
+ default:
+ op = `let tmp : ${t.params.returnType} = ${op}`;
+ break;
+ }
+ const code = `
+var<workgroup> a : atomic<${t.params.atomicType}>;
+fn foo() {
+ ${op};
+}
+`;
+
+ const expect = t.params.atomicType === t.params.returnType && t.params.op !== 'store';
+ t.expectCompileResult(expect, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/barriers.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/barriers.spec.js
new file mode 100644
index 0000000000..f3bcf33f78
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/barriers.spec.js
@@ -0,0 +1,109 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for {storage,texture,workgroup}Barrier() builtins.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kEntryPoints = {
+ none: { supportsBarrier: true, code: `` },
+ compute: {
+ supportsBarrier: true,
+ code: `@compute @workgroup_size(1)
+fn main() {
+ foo();
+}`
+ },
+ vertex: {
+ supportsBarrier: false,
+ code: `@vertex
+fn main() -> @builtin(position) vec4f {
+ foo();
+ return vec4f();
+}`
+ },
+ fragment: {
+ supportsBarrier: false,
+ code: `@fragment
+fn main() {
+ foo();
+}`
+ },
+ compute_and_fragment: {
+ supportsBarrier: false,
+ code: `@compute @workgroup_size(1)
+fn main1() {
+ foo();
+}
+
+@fragment
+fn main2() {
+ foo();
+}
+`
+ },
+ fragment_without_call: {
+ supportsBarrier: true,
+ code: `@fragment
+fn main() {
+}
+`
+ }
+};
+
+g.test('only_in_compute').
+specURL('https://www.w3.org/TR/WGSL/#sync-builtin-functions').
+desc(
+ `
+Synchronization functions must only be used in the compute shader stage.
+`
+).
+params((u) =>
+u.
+combine('entry_point', keysOf(kEntryPoints)).
+combine('call', ['bar', 'storageBarrier', 'textureBarrier', 'workgroupBarrier'])
+).
+fn((t) => {
+ if (t.params.call.startsWith('textureBarrier')) {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
+ const config = kEntryPoints[t.params.entry_point];
+ const code = `
+${config.code}
+fn bar() {}
+
+fn foo() {
+ ${t.params.call}();
+}`;
+ t.expectCompileResult(t.params.call === 'bar' || config.supportsBarrier, code);
+});
+
+g.test('no_return_value').
+specURL('https://www.w3.org/TR/WGSL/#sync-builtin-functions').
+desc(
+ `
+Barrier functions do not return a value.
+`
+).
+params((u) =>
+u.
+combine('assign', [false, true]).
+combine('rhs', ['bar', 'storageBarrier', 'textureBarrier', 'workgroupBarrier'])
+).
+fn((t) => {
+ if (t.params.rhs.startsWith('textureBarrier')) {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
+ const code = `
+fn bar() {}
+
+fn foo() {
+ ${t.params.assign ? '_ = ' : ''} ${t.params.rhs}();
+}`;
+ t.expectCompileResult(!t.params.assign || t.params.rhs === 'bar()', code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/ceil.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/ceil.spec.js
index 9d6fb1e30c..6bceb41298 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/ceil.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/ceil.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -36,10 +35,11 @@ u.
combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -54,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -68,7 +68,7 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/clamp.spec.js
index ae83f29898..4490d363d5 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/clamp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/clamp.spec.js
@@ -6,9 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- elementType,
- kAllFloatAndIntegerScalarsAndVectors } from
+ Type,
+ kFloatScalarsAndVectors,
+ kConcreteIntegerScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -21,7 +22,10 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatAndIntegerScalarsAndVectors);
+const kValuesTypes = objectsToRecord([
+...kFloatScalarsAndVectors,
+...kConcreteIntegerScalarsAndVectors]
+);
g.test('values').
desc(
@@ -40,7 +44,7 @@ expand('low', (u) => fullRangeForType(kValuesTypes[u.type], 4)).
expand('high', (u) => fullRangeForType(kValuesTypes[u.type], 4))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/const_override_validation.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/const_override_validation.js
index 47431b3a02..d9404ee05f 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/const_override_validation.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/const_override_validation.js
@@ -1,101 +1,139 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { assert, unreachable } from '../../../../../../common/util/util.js';import { kValue } from '../../../../../util/constants.js';import {
+ Type,
- TypeF16,
-
- elementType,
- elementsOf,
- isAbstractType } from
+ elementTypeOf,
+ isAbstractType,
+ scalarElementsOf,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
-import { fullF16Range, fullF32Range, fullF64Range, linearRange } from '../../../../../util/math.js';
+import {
+ scalarF16Range,
+ scalarF32Range,
+ scalarF64Range,
+ linearRange,
+ linearRangeBigInt } from
+'../../../../../util/math.js';
+
+
+/** @returns a function that can select between ranges depending on type */
+export function rangeForType(
+number_range,
+bigint_range)
+{
+ return (type) => {
+ switch (scalarTypeOf(type).kind) {
+ case 'abstract-float':
+ case 'f32':
+ case 'f16':
+ return number_range;
+ case 'abstract-int':
+ return bigint_range;
+ }
+ unreachable(`Received unexpected type '${type}'`);
+ };
+}
+/* @returns a linear sweep between -2 to 2 for type */
-/// A linear sweep between -2 to 2
-export const kMinusTwoToTwo = linearRange(-2, 2, 10);
+export const minusTwoToTwoRangeForType = rangeForType(
+ linearRange(-2, 2, 10),
+ [-2n, -1n, 0n, 1n, 2n]
+);
-/// An array of values ranging from -3π to 3π, with a focus on multiples of π
-export const kMinus3PiTo3Pi = [
--3 * Math.PI,
--2.999 * Math.PI,
+/* @returns array of values ranging from -3π to 3π, with a focus on multiples of π */
+export const minusThreePiToThreePiRangeForType = rangeForType(
+ [
+ -3 * Math.PI,
+ -2.999 * Math.PI,
--2.501 * Math.PI,
--2.5 * Math.PI,
--2.499 * Math.PI,
+ -2.501 * Math.PI,
+ -2.5 * Math.PI,
+ -2.499 * Math.PI,
--2.001 * Math.PI,
--2.0 * Math.PI,
--1.999 * Math.PI,
+ -2.001 * Math.PI,
+ -2.0 * Math.PI,
+ -1.999 * Math.PI,
--1.501 * Math.PI,
--1.5 * Math.PI,
--1.499 * Math.PI,
+ -1.501 * Math.PI,
+ -1.5 * Math.PI,
+ -1.499 * Math.PI,
--1.001 * Math.PI,
--1.0 * Math.PI,
--0.999 * Math.PI,
+ -1.001 * Math.PI,
+ -1.0 * Math.PI,
+ -0.999 * Math.PI,
--0.501 * Math.PI,
--0.5 * Math.PI,
--0.499 * Math.PI,
+ -0.501 * Math.PI,
+ -0.5 * Math.PI,
+ -0.499 * Math.PI,
--0.001,
-0,
-0.001,
+ -0.001,
+ 0,
+ 0.001,
-0.499 * Math.PI,
-0.5 * Math.PI,
-0.501 * Math.PI,
+ 0.499 * Math.PI,
+ 0.5 * Math.PI,
+ 0.501 * Math.PI,
-0.999 * Math.PI,
-1.0 * Math.PI,
-1.001 * Math.PI,
+ 0.999 * Math.PI,
+ 1.0 * Math.PI,
+ 1.001 * Math.PI,
-1.499 * Math.PI,
-1.5 * Math.PI,
-1.501 * Math.PI,
+ 1.499 * Math.PI,
+ 1.5 * Math.PI,
+ 1.501 * Math.PI,
-1.999 * Math.PI,
-2.0 * Math.PI,
-2.001 * Math.PI,
+ 1.999 * Math.PI,
+ 2.0 * Math.PI,
+ 2.001 * Math.PI,
-2.499 * Math.PI,
-2.5 * Math.PI,
-2.501 * Math.PI,
+ 2.499 * Math.PI,
+ 2.5 * Math.PI,
+ 2.501 * Math.PI,
-2.999 * Math.PI,
-3 * Math.PI];
+ 2.999 * Math.PI,
+ 3 * Math.PI],
+ [-2n, -1n, 0n, 1n, 2n]
+);
-/// A minimal array of values ranging from -3π to 3π, with a focus on multiples
-/// of π. Used when multiple parameters are being passed in, so the number of
-/// cases becomes the square or more of this list.
-export const kSparseMinus3PiTo3Pi = [
--3 * Math.PI,
--2.5 * Math.PI,
--2.0 * Math.PI,
--1.5 * Math.PI,
--1.0 * Math.PI,
--0.5 * Math.PI,
-0,
-0.5 * Math.PI,
-Math.PI,
-1.5 * Math.PI,
-2.0 * Math.PI,
-2.5 * Math.PI,
-3 * Math.PI];
+/**
+ * @returns a minimal array of values ranging from -3π to 3π, with a focus on
+ * multiples of π.
+ *
+ * Used when multiple parameters are being passed in, so the number of cases
+ * becomes the square or more of this list. */
+export const sparseMinusThreePiToThreePiRangeForType = rangeForType(
+ [
+ -3 * Math.PI,
+ -2.5 * Math.PI,
+ -2.0 * Math.PI,
+ -1.5 * Math.PI,
+ -1.0 * Math.PI,
+ -0.5 * Math.PI,
+ 0,
+ 0.5 * Math.PI,
+ Math.PI,
+ 1.5 * Math.PI,
+ 2.0 * Math.PI,
+ 2.5 * Math.PI,
+ 3 * Math.PI],
+ [-2n, -1n, 0n, 1n, 2n]
+);
/// The evaluation stages to test
export const kConstantAndOverrideStages = ['constant', 'override'];
+
/**
* @returns true if evaluation stage `stage` supports expressions of type @p.
*/
export function stageSupportsType(stage, type) {
- if (stage === 'override' && isAbstractType(elementType(type))) {
+ if (stage === 'override' && isAbstractType(elementTypeOf(type))) {
// Abstract numerics are concretized before being used in an override expression.
return false;
}
@@ -110,23 +148,26 @@ export function stageSupportsType(stage, type) {
* @param expectedResult false if an error is expected, true if no error is expected
* @param args the arguments to pass to the builtin
* @param stage the evaluation stage
+ * @param returnType the explicit return type of the result variable, if provided (implicit otherwise)
*/
export function validateConstOrOverrideBuiltinEval(
t,
builtin,
expectedResult,
args,
-stage)
+stage,
+returnType)
{
- const elTys = args.map((arg) => elementType(arg.type));
- const enables = elTys.some((ty) => ty === TypeF16) ? 'enable f16;' : '';
+ const elTys = args.map((arg) => elementTypeOf(arg.type));
+ const enables = elTys.some((ty) => ty === Type.f16) ? 'enable f16;' : '';
+ const optionalVarType = returnType ? `: ${returnType.toString()}` : '';
switch (stage) {
case 'constant':{
t.expectCompileResult(
expectedResult,
`${enables}
-const v = ${builtin}(${args.map((arg) => arg.wgsl()).join(', ')});`
+const v ${optionalVarType} = ${builtin}(${args.map((arg) => arg.wgsl()).join(', ')});`
);
break;
}
@@ -138,7 +179,7 @@ const v = ${builtin}(${args.map((arg) => arg.wgsl()).join(', ')});`
let numOverrides = 0;
for (const arg of args) {
const argOverrides = [];
- for (const el of elementsOf(arg)) {
+ for (const el of scalarElementsOf(arg)) {
const name = `o${numOverrides++}`;
overrideDecls.push(`override ${name} : ${el.type};`);
argOverrides.push(name);
@@ -150,7 +191,7 @@ const v = ${builtin}(${args.map((arg) => arg.wgsl()).join(', ')});`
expectedResult,
code: `${enables}
${overrideDecls.join('\n')}
-var<private> v = ${builtin}(${callArgs.join(', ')});`,
+var<private> v ${optionalVarType} = ${builtin}(${callArgs.join(', ')});`,
constants,
reference: ['v']
});
@@ -159,24 +200,92 @@ var<private> v = ${builtin}(${callArgs.join(', ')});`,
}
}
+/**
+ * Runs a validation test to check that evaluation of `binaryOp` either evaluates with or without
+ * error at shader creation time or pipeline creation time.
+ * @param t the ShaderValidationTest
+ * @param binaryOp the symbol of the binary operator
+ * @param expectedResult false if an error is expected, true if no error is expected
+ * @param leftStage the evaluation stage for the left argument
+ * @param left the left-hand side of the binary operation
+ * @param rightStage the evaluation stage for the right argument
+ * @param right the right-hand side of the binary operation
+ */
+export function validateConstOrOverrideBinaryOpEval(
+t,
+binaryOp,
+expectedResult,
+leftStage,
+left,
+rightStage,
+right)
+{
+ const allArgs = [left, right];
+ const elTys = allArgs.map((arg) => elementTypeOf(arg.type));
+ const enables = elTys.some((ty) => ty === Type.f16) ? 'enable f16;' : '';
+
+ const codeLines = [enables];
+ const constants = {};
+ let numOverrides = 0;
+
+ function addOperand(name, stage, value) {
+ switch (stage) {
+ case 'runtime':
+ assert(!isAbstractType(value.type));
+ codeLines.push(`var<private> ${name} = ${value.wgsl()};`);
+ return name;
+
+ case 'constant':
+ codeLines.push(`const ${name} = ${value.wgsl()};`);
+ return name;
+
+ case 'override':{
+ assert(!isAbstractType(value.type));
+ const argOverrides = [];
+ for (const el of scalarElementsOf(value)) {
+ const elName = `o${numOverrides++}`;
+ codeLines.push(`override ${elName} : ${el.type};`);
+ constants[elName] = Number(el.value);
+ argOverrides.push(elName);
+ }
+ return `${value.type}(${argOverrides.join(', ')})`;
+ }
+ }
+ }
+
+ const leftOperand = addOperand('left', leftStage, left);
+ const rightOperand = addOperand('right', rightStage, right);
+
+ if (leftStage === 'override' || rightStage === 'override') {
+ t.expectPipelineResult({
+ expectedResult,
+ code: codeLines.join('\n'),
+ constants,
+ reference: [`${leftOperand} ${binaryOp} ${rightOperand}`]
+ });
+ } else {
+ codeLines.push(`fn f() { _ = ${leftOperand} ${binaryOp} ${rightOperand}; }`);
+ t.expectCompileResult(expectedResult, codeLines.join('\n'));
+ }
+}
/** @returns a sweep of the representable values for element type of `type` */
export function fullRangeForType(type, count) {
if (count === undefined) {
count = 25;
}
- switch (elementType(type)?.kind) {
+ switch (scalarTypeOf(type)?.kind) {
case 'abstract-float':
- return fullF64Range({
+ return scalarF64Range({
pos_sub: Math.ceil(count * 1 / 5),
pos_norm: Math.ceil(count * 4 / 5)
});
case 'f32':
- return fullF32Range({
+ return scalarF32Range({
pos_sub: Math.ceil(count * 1 / 5),
pos_norm: Math.ceil(count * 4 / 5)
});
case 'f16':
- return fullF16Range({
+ return scalarF16Range({
pos_sub: Math.ceil(count * 1 / 5),
pos_norm: Math.ceil(count * 4 / 5)
});
@@ -186,6 +295,9 @@ export function fullRangeForType(type, count) {
);
case 'u32':
return linearRange(0, kValue.u32.max, count).map((f) => Math.floor(f));
+ case 'abstract-int':
+ // Returned values are already ints, so don't need to be floored.
+ return linearRangeBigInt(kValue.i64.negative.min, kValue.i64.positive.max, count);
}
unreachable();
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cos.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cos.spec.js
index 4f3a485b5f..5d5cde71c7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cos.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cos.spec.js
@@ -6,18 +6,17 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinus3PiTo3Pi,
+ minusThreePiToThreePiRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,10 +38,15 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -56,7 +60,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -70,8 +74,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cosh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cosh.spec.js
index 27f975252c..a496f0184e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cosh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cosh.spec.js
@@ -6,11 +6,9 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -24,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -41,13 +39,17 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.cosh(t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.cosh(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,22 +59,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(0)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countLeadingZeros.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countLeadingZeros.spec.js
new file mode 100644
index 0000000000..549ff06a7d
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countLeadingZeros.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'countLeadingZeros';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // countLeadingZeros() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countOneBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countOneBits.spec.js
new file mode 100644
index 0000000000..24ff7f79a5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countOneBits.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'countOneBits';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // countOneBits() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countTrailingZeros.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countTrailingZeros.spec.js
new file mode 100644
index 0000000000..82af773fd3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/countTrailingZeros.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'countTrailingZeros';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // countTrailingZeros() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cross.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cross.spec.js
new file mode 100644
index 0000000000..50f50e44fb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/cross.spec.js
@@ -0,0 +1,122 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'cross';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatVec3,
+ scalarTypeOf } from
+
+'../../../../../util/conversion.js';
+import { quantizeToF16, quantizeToF32 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatVec3);
+
+function quantizeFunctionForScalarType(type) {
+ switch (type) {
+ case Type.f32:
+ return quantizeToF32;
+ case Type.f16:
+ return quantizeToF16;
+ default:
+ return (v) => v;
+ }
+}
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let expectedResult = true;
+
+ const scalarType = scalarTypeOf(kValidArgumentTypes[t.params.type]);
+ const quantizeFn = quantizeFunctionForScalarType(scalarType);
+
+ // Should be invalid if the cross product calculations result in intermediate
+ // values that exceed the maximum representable float value for the given type.
+ const a = Number(t.params.a);
+ const b = Number(t.params.b);
+ const ab = quantizeFn(a * b);
+ if (ab === Infinity || ab === -Infinity) {
+ expectedResult = false;
+ }
+
+ const type = kValidArgumentTypes[t.params.type];
+
+ // Validates cross(vec3(a, a, a), vec3(b, b, b));
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(vec3(0), vec3(1))',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(1.0)',
+ bad_3arg: '(1.0, 2.0, 3.0)',
+ // Wrong vector size
+ bad_vec2: '(vec2(0), vec2(1))',
+ bad_vec4: '(vec4(0), vec4(1))',
+ // Bad value for arg 0
+ bad_0bool: '(false, vec3(1))',
+ bad_0array: '(array(1.1,2.2), vec3(1))',
+ bad_0struct: '(modf(2.2), vec3(1))',
+ // Bad value type for arg 1
+ bad_1bool: '(vec3(0), true)',
+ bad_1array: '(vec3(0), array(1.1,2.2))',
+ bad_1struct: '(vec3(0), modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/degrees.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/degrees.spec.js
index 10aac98de2..2262cf9ab8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/degrees.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/degrees.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -24,7 +23,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -41,13 +40,17 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(t.params.value * 180 / Math.PI, elementType(type));
+ const expectedResult = isRepresentable(
+ Number(t.params.value) * 180 / Math.PI,
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,7 +60,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -71,8 +74,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_too_few: '()',
+ bad_too_many: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/derivatives.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/derivatives.spec.js
new file mode 100644
index 0000000000..e1b479a8c6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/derivatives.spec.js
@@ -0,0 +1,129 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for derivative builtins.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConcreteF16ScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kDerivativeBuiltins = [
+'dpdx',
+'dpdxCoarse',
+'dpdxFine',
+'dpdy',
+'dpdyCoarse',
+'dpdyFine',
+'fwidth',
+'fwidthCoarse',
+'fwidthFine'];
+
+
+const kEntryPoints = {
+ none: { supportsDerivative: true, code: `` },
+ fragment: {
+ supportsDerivative: true,
+ code: `@fragment
+fn main() {
+ foo();
+}`
+ },
+ vertex: {
+ supportsDerivative: false,
+ code: `@vertex
+fn main() -> @builtin(position) vec4f {
+ foo();
+ return vec4f();
+}`
+ },
+ compute: {
+ supportsDerivative: false,
+ code: `@compute @workgroup_size(1)
+fn main() {
+ foo();
+}`
+ },
+ fragment_and_compute: {
+ supportsDerivative: false,
+ code: `@fragment
+fn main1() {
+ foo();
+}
+
+@compute @workgroup_size(1)
+fn main2() {
+ foo();
+}
+`
+ },
+ compute_without_call: {
+ supportsDerivative: true,
+ code: `@compute @workgroup_size(1)
+fn main() {
+}
+`
+ }
+};
+
+g.test('only_in_fragment').
+specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
+desc(
+ `
+Derivative functions must only be used in the fragment shader stage.
+`
+).
+params((u) =>
+u.combine('entry_point', keysOf(kEntryPoints)).combine('call', ['bar', ...kDerivativeBuiltins])
+).
+fn((t) => {
+ const config = kEntryPoints[t.params.entry_point];
+ const code = `
+${config.code}
+fn bar(f : f32) -> f32 { return f; }
+
+fn foo() {
+ _ = ${t.params.call}(1.0);
+}`;
+ t.expectCompileResult(t.params.call === 'bar' || config.supportsDerivative, code);
+});
+
+// The list of invalid argument types to test, with an f32 control case.
+const kArgumentTypes = objectsToRecord([
+Type.f32,
+...kConcreteIntegerScalarsAndVectors,
+...kConcreteF16ScalarsAndVectors,
+Type.mat2x2f]
+);
+
+g.test('invalid_argument_types').
+specURL('https://www.w3.org/TR/WGSL/#derivative-builtin-functions').
+desc(
+ `
+Derivative builtins only accept f32 scalar and vector types.
+`
+).
+params((u) =>
+u.combine('type', keysOf(kArgumentTypes)).combine('call', ['', ...kDerivativeBuiltins])
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kArgumentTypes[t.params.type];
+ const code = `
+${scalarTypeOf(kArgumentTypes[t.params.type]) === Type.f16 ? 'enable f16;' : ''}
+
+fn foo() {
+ let x: ${type.toString()} = ${t.params.call}(${type.create(1).wgsl()});
+}`;
+ t.expectCompileResult(kArgumentTypes[t.params.type] === Type.f32 || t.params.call === '', code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/determinant.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/determinant.spec.js
new file mode 100644
index 0000000000..8bade808a2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/determinant.spec.js
@@ -0,0 +1,95 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'determinant';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// Generate a dictionary mapping each matrix type variation (columns,rows,
+// floating point type) to a nontrivial matrix value of that type.
+const kMatrixCases = [2, 3, 4].
+flatMap((cols) =>
+[2, 3, 4].flatMap((rows) =>
+['abstract-int', 'abstract-float', 'f32', 'f16'].map((type) => ({
+ [`mat${cols}x${rows}_${type}`]: (() => {
+ const suffix = (() => {
+ switch (type) {
+ case 'abstract-int':
+ return '';
+ case 'abstract-float':
+ return '.0';
+ case 'f32':
+ return 'f';
+ case 'f16':
+ return 'h';
+ }
+ })();
+ return `(mat${cols}x${rows}(${[...Array(cols * rows).keys()].
+ map((e) => `${e}${suffix}`).
+ join(', ')}))`;
+ })()
+}))
+)
+).
+reduce((a, b) => ({ ...a, ...b }), {});
+
+g.test('matrix_args').
+desc(`Test compilation failure of ${builtin} with variously shaped matrices`).
+params((u) =>
+u.
+combine('cols', [2, 3, 4]).
+combine('rows', [2, 3, 4]).
+combine('type', ['abstract-int', 'abstract-float', 'f32', 'f16'])
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const cols = t.params.cols;
+ const rows = t.params.rows;
+ const type = t.params.type;
+ const arg = kMatrixCases[`mat${cols}x${rows}_${type}`];
+ t.expectCompileResult(
+ cols === rows,
+ t.wrapInEntryPoint(`const c = ${builtin}${arg};`, type === 'f16' ? ['f16'] : [])
+ );
+});
+
+const kArgCases = {
+ good: '(mat2x2(0.0, 2.0, 3.0, 4.0))', // Included to check test implementation
+ bad_no_parens: '',
+ // Bad number of args
+ bad_too_few: '()',
+ bad_too_many: '(mat2x2(0.0, 2.0, 3.0, 4.0), mat2x2(0.0, 2.0, 3.0, 4.0))',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/distance.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/distance.spec.js
new file mode 100644
index 0000000000..b08c12faf5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/distance.spec.js
@@ -0,0 +1,149 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'distance';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+
+'../../../../../util/conversion.js';
+import { quantizeToF16, quantizeToF32 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+function quantizeFunctionForScalarType(type) {
+ switch (type) {
+ case Type.f32:
+ return quantizeToF32;
+ case Type.f16:
+ return quantizeToF16;
+ default:
+ return (v) => v;
+ }
+}
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let expectedResult = true;
+
+ const scalarType = scalarTypeOf(kValidArgumentTypes[t.params.type]);
+ const quantizeFn = quantizeFunctionForScalarType(scalarType);
+
+ // Distance equation: length(a - b)
+ // Should be invalid if the calculations result in intermediate values that
+ // exceed the maximum representable float value for the given type.
+ const a = Number(t.params.a);
+ const b = Number(t.params.b);
+ const ab = quantizeFn(a - b);
+
+ if (!Number.isFinite(ab)) {
+ expectedResult = false;
+ }
+
+ // Only calculates the full length if the type is a vector. Otherwise abs(a-b) is used.
+ if (kValidArgumentTypes[t.params.type].width > 1) {
+ const ab2 = quantizeFn(ab * ab);
+ const sqrLen = quantizeFn(ab2 * kValidArgumentTypes[t.params.type].width);
+ // Square root does not need to be calculated because it can never fail if
+ // the previous results are finite.
+
+ if (!Number.isFinite(ab2) || !Number.isFinite(sqrLen)) {
+ expectedResult = false;
+ }
+ }
+
+ const type = kValidArgumentTypes[t.params.type];
+
+ // Validates distance(vecN(a), vecN(b)) or distance(a, b);
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(vec3(0), vec3(1))',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(vec3(0))',
+ bad_3arg: '(vec3(0), vec3(1), vec3(2))',
+ // Bad value for arg 0
+ bad_0bool: '(false, vec3(1))',
+ bad_0array: '(array(1.1,2.2), vec3(1))',
+ bad_0struct: '(modf(2.2), vec3(1))',
+ bad_0int: '(0i, vec3(1))',
+ bad_0vec2i: '(vec2i(), vec3(1))',
+ bad_0vec3i: '(vec3i(), vec3(1))',
+ bad_0vec4i: '(vec4i(), vec3(1))',
+ bad_0uint: '(0u, vec3(1))',
+ bad_0vec2u: '(vec2u(), vec3(1))',
+ bad_0vec3u: '(vec3u(), vec3(1))',
+ bad_0vec4u: '(vec4u(), vec3(1))',
+ // Bad value type for arg 1
+ bad_1bool: '(vec3(0), true)',
+ bad_1array: '(vec3(0), array(1.1,2.2))',
+ bad_1struct: '(vec3(0), modf(2.2))',
+ bad_1int: '(vec3(0), 0i)',
+ bad_1vec2i: '(vec3(0), vec2i())',
+ bad_1vec3i: '(vec3(0), vec3i())',
+ bad_1vec4i: '(vec3(0), vec4i())',
+ bad_1uint: '(vec3(0), 0u)',
+ bad_1vec2u: '(vec3(0), vec2u())',
+ bad_1vec3u: '(vec3(0), vec3u())',
+ bad_1vec4u: '(vec3(0), vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4I8Packed.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4I8Packed.spec.js
new file mode 100644
index 0000000000..f72eb87f97
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4I8Packed.spec.js
@@ -0,0 +1,66 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate dot4I8Packed`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'dot4I8Packed';
+const kArgCases = {
+ good: '(1u,2u)',
+ bad_0args: '()',
+ bad_1args: '(1u)',
+ bad_3args: '(1u,2u,3u)',
+ bad_0i32: '(1i,2u)',
+ bad_0f32: '(1f,2u)',
+ bad_0bool: '(false,2u)',
+ bad_0vec2u: '(vec2u(),2u)',
+ bad_1i32: '(1u,2i)',
+ bad_1f32: '(1u,2f)',
+ bad_1bool: '(1u,true)',
+ bad_1vec2u: '(1u,vec2u())',
+ bad_bool_bool: '(false,true)',
+ bad_bool2_bool2: '(vec2<bool>(),vec2(false,true))',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4U8Packed.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4U8Packed.spec.js
new file mode 100644
index 0000000000..315e69bfb9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/dot4U8Packed.spec.js
@@ -0,0 +1,66 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate dot4U8Packed`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'dot4U8Packed';
+const kArgCases = {
+ good: '(1u,2u)',
+ bad_0args: '()',
+ bad_1args: '(1u)',
+ bad_3args: '(1u,2u,3u)',
+ bad_0i32: '(1i,2u)',
+ bad_0f32: '(1f,2u)',
+ bad_0bool: '(false,2u)',
+ bad_0vec2u: '(vec2u(),2u)',
+ bad_1i32: '(1u,2i)',
+ bad_1f32: '(1u,2f)',
+ bad_1bool: '(1u,true)',
+ bad_1vec2u: '(1u,vec2u())',
+ bad_bool_bool: '(false,true)',
+ bad_bool2_bool2: '(vec2<bool>(),vec2(false,true))',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp.spec.js
index 74a8816114..e677442d4a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp.spec.js
@@ -7,24 +7,52 @@ import { makeTestGroup } from '../../../../../../common/framework/test_group.js'
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import { kValue } from '../../../../../util/constants.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
kConstantAndOverrideStages,
+ rangeForType,
stageSupportsType,
validateConstOrOverrideBuiltinEval } from
'./const_override_validation.js';
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+const valueForType = rangeForType(
+ [
+ -1e2,
+ -1e3,
+ -4,
+ -3,
+ -2,
+ -1,
+ -1e-1,
+ -1e-2,
+ -1e-3,
+ 0,
+ 1e-3,
+ 1e-2,
+ 1e-1,
+ 1,
+ 2,
+ 3,
+ 4,
+ 1e2,
+ 1e3,
+ Math.log2(kValue.f16.positive.max) - 0.1,
+ Math.log2(kValue.f16.positive.max) + 0.1,
+ Math.log2(kValue.f32.positive.max) - 0.1,
+ Math.log2(kValue.f32.positive.max) + 0.1],
+
+ [-100n, -1000n, -4n, -3n, -2n, -1n, 0n, 1n, 2n, 3n, 4n, 100n, 1000n]
+);
g.test('values').
desc(
@@ -38,40 +66,20 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-combine('value', [
--1e2,
--1e3,
--4,
--3,
--2,
--1,
--1e-1,
--1e-2,
--1e-3,
-0,
-1e-3,
-1e-2,
-1e-1,
-1,
-2,
-3,
-4,
-1e2,
-1e3,
-Math.log2(kValue.f16.positive.max) - 0.1,
-Math.log2(kValue.f16.positive.max) + 0.1,
-Math.log2(kValue.f32.positive.max) - 0.1,
-Math.log2(kValue.f32.positive.max) + 0.1]
-)
+expand('value', (u) => valueForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.exp(t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.exp(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -81,22 +89,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(0)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp2.spec.js
index c38d5f90ef..5455216d75 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/exp2.spec.js
@@ -7,24 +7,52 @@ import { makeTestGroup } from '../../../../../../common/framework/test_group.js'
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import { kValue } from '../../../../../util/constants.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
kConstantAndOverrideStages,
+ rangeForType,
stageSupportsType,
validateConstOrOverrideBuiltinEval } from
'./const_override_validation.js';
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+const valueForType = rangeForType(
+ [
+ -1e2,
+ -1e3,
+ -4,
+ -3,
+ -2,
+ -1,
+ -1e-1,
+ -1e-2,
+ -1e-3,
+ 0,
+ 1e-3,
+ 1e-2,
+ 1e-1,
+ 1,
+ 2,
+ 3,
+ 4,
+ 1e2,
+ 1e3,
+ Math.log2(kValue.f16.positive.max) - 0.1,
+ Math.log2(kValue.f16.positive.max) + 0.1,
+ Math.log2(kValue.f32.positive.max) - 0.1,
+ Math.log2(kValue.f32.positive.max) + 0.1],
+
+ [-100n, -1000n, -4n, -3n, -2n, -1n, 0n, 1n, 2n, 3n, 4n, 100n, 1000n]
+);
g.test('values').
desc(
@@ -38,40 +66,20 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-combine('value', [
--1e2,
--1e3,
--4,
--3,
--2,
--1,
--1e-1,
--1e-2,
--1e-3,
-0,
-1e-3,
-1e-2,
-1e-1,
-1,
-2,
-3,
-4,
-1e2,
-1e3,
-Math.log2(kValue.f16.positive.max) - 0.1,
-Math.log2(kValue.f16.positive.max) + 0.1,
-Math.log2(kValue.f32.positive.max) - 0.1,
-Math.log2(kValue.f32.positive.max) + 0.1]
-)
+expand('value', (u) => valueForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.pow(2, t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.pow(2, Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -81,22 +89,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(0)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/extractBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/extractBits.spec.js
new file mode 100644
index 0000000000..e38cb53905
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/extractBits.spec.js
@@ -0,0 +1,218 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'extractBits';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors,
+ u32 } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors on valid inputs
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type])).
+combineWithParams([
+{ offset: 0, count: 0 },
+{ offset: 0, count: 31 },
+{ offset: 0, count: 32 },
+{ offset: 4, count: 0 },
+{ offset: 4, count: 27 },
+{ offset: 4, count: 28 },
+{ offset: 16, count: 0 },
+{ offset: 16, count: 15 },
+{ offset: 16, count: 16 },
+{ offset: 32, count: 0 }]
+)
+).
+fn((t) => {
+ const expectedResult = true; // extractBits() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [
+ kValuesTypes[t.params.type].create(t.params.value),
+ u32(t.params.offset),
+ u32(t.params.count)],
+
+ t.params.stage
+ );
+});
+
+g.test('count_offset').
+desc(
+ `
+Validates that count and offset must be smaller than the size of the primitive.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+beginSubcases().
+combineWithParams([
+// offset + count < 32
+{ offset: 0, count: 31 },
+{ offset: 1, count: 30 },
+{ offset: 31, count: 0 },
+{ offset: 30, count: 1 },
+// offset + count == 32
+{ offset: 0, count: 32 },
+{ offset: 1, count: 31 },
+{ offset: 16, count: 16 },
+{ offset: 31, count: 1 },
+{ offset: 32, count: 0 },
+// offset + count > 32
+{ offset: 2, count: 31 },
+{ offset: 31, count: 2 },
+// offset > 32
+{ offset: 33, count: 0 },
+{ offset: 33, count: 1 },
+// count > 32
+{ offset: 0, count: 33 },
+{ offset: 1, count: 33 }]
+)
+).
+fn((t) => {
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */t.params.offset + t.params.count <= 32,
+ [u32(1), u32(t.params.offset), u32(t.params.count)],
+ t.params.stage
+ );
+});
+
+
+
+
+
+
+
+
+
+
+function typesToArguments(types, pass) {
+ return types.reduce(
+ (res, type) => ({
+ ...res,
+ [type.toString()]: { arg: type.create(0).wgsl(), pass }
+ }),
+ {}
+ );
+}
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kInputArgTypes = {
+ ...typesToArguments([Type.u32], true),
+ ...typesToArguments([...kFloatScalarsAndVectors, Type.bool, Type.mat2x2f], false),
+ alias: { arg: 'u32_alias(1)', pass: true },
+ vec_bool: { arg: 'vec2<bool>(false,true)', pass: false },
+ atomic: { arg: 'a', pass: false },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ arg: 'arry',
+ pass: false
+ },
+ array_runtime: { arg: 'k.arry', pass: false },
+ struct: {
+ preamble: 'var x: A;',
+ arg: 'x',
+ pass: false
+ },
+ enumerant: { arg: 'read_write', pass: false },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ arg: 'p',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ arg: '*p',
+ pass: true
+ },
+ sampler: { arg: 's', pass: false },
+ texture: { arg: 't', pass: false }
+};
+
+g.test('typed_arguments').
+desc(
+ `
+Test compilation validation of ${builtin} with variously typed arguments
+ - For failing input types, just use the same type for offset and count to reduce combinations.
+`
+).
+params((u) =>
+u.
+combine('input', keysOf(kInputArgTypes)).
+beginSubcases().
+combine('offset', keysOf(kInputArgTypes)).
+expand('count', (u) => kInputArgTypes[u.input].pass ? keysOf(kInputArgTypes) : [u.offset])
+).
+fn((t) => {
+ const input = kInputArgTypes[t.params.input];
+ const offset = kInputArgTypes[t.params.offset];
+ const count = kInputArgTypes[t.params.count];
+ t.expectCompileResult(
+ input.pass && offset.pass && count.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${input.preamble ? input.preamble : ''}
+ ${offset.preamble && offset !== input ? offset.preamble : ''}
+ ${count.preamble && count !== input && count !== offset ? count.preamble : ''}
+ _ = ${builtin}(${input.arg},${offset.arg},${count.arg});
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u,0u,1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/faceForward.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/faceForward.spec.js
new file mode 100644
index 0000000000..77946e3e9e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/faceForward.spec.js
@@ -0,0 +1,152 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'faceForward';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatVectors,
+ scalarTypeOf } from
+
+'../../../../../util/conversion.js';
+import { quantizeToF16, quantizeToF32 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatVectors);
+
+function quantizeFunctionForScalarType(type) {
+ switch (type) {
+ case Type.f32:
+ return quantizeToF32;
+ case Type.f16:
+ return quantizeToF16;
+ default:
+ return (v) => v;
+ }
+}
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('c', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let expectedResult = true;
+
+ const scalarType = scalarTypeOf(kValidArgumentTypes[t.params.type]);
+ const quantizeFn = quantizeFunctionForScalarType(scalarType);
+
+ // Face Forward equation: dot(b, c) < 0 ? -a : a
+ // Should be invalid if the calculations result in intermediate values that
+ // exceed the maximum representable float value for the given type.
+ const b = Number(t.params.b);
+ const c = Number(t.params.c);
+ const bc = quantizeFn(b * c);
+ const dp = quantizeFn(bc * kValidArgumentTypes[t.params.type].width);
+
+ if (!Number.isFinite(dp)) {
+ expectedResult = false;
+ }
+
+ const type = kValidArgumentTypes[t.params.type];
+
+ // Validates faceForward(vecN(a), vecN(b), vecN(c));
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b), type.create(t.params.c)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(vec3(0), vec3(1), vec3(0.5))',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(vec3(0))',
+ bad_2arg: '(vec3(0), vec3(1))',
+ bad_4arg: '(vec3(0), vec3(1), vec3(0.5), vec3(3))',
+ // Bad value for arg 0
+ bad_0bool: '(false, vec3(1), vec3(0.5))',
+ bad_0array: '(array(1.1,2.2), vec3(1), vec3(0.5))',
+ bad_0struct: '(modf(2.2), vec3(1), vec3(0.5))',
+ bad_0int: '(1i, vec3(1), vec3(0.5))',
+ bad_0uint: '(1u, vec3(1), vec3(0.5))',
+ bad_0vec2i: '(vec2i(0), vec2(1), vec2(0.5))',
+ bad_0vec3i: '(vec3i(0), vec3(1), vec3(0.5))',
+ bad_0vec4i: '(vec4i(0), vec4(1), vec4(0.5))',
+ bad_0vec2u: '(vec2u(0), vec2(1), vec2(0.5))',
+ bad_0vec3u: '(vec3u(0), vec3(1), vec3(0.5))',
+ bad_0vec4u: '(vec4u(0), vec4(1), vec4(0.5))',
+ // Bad value type for arg 1
+ bad_1bool: '(vec3(0), true, vec3(0.5))',
+ bad_1array: '(vec3(0), array(1.1,2.2), vec3(0.5))',
+ bad_1struct: '(vec3(0), modf(2.2), vec3(0.5))',
+ bad_1int: '(vec3(0), 1i, vec3(0.5))',
+ bad_1uint: '(vec3(0), 1u, vec3(0.5))',
+ bad_1vec2i: '(vec2(1), vec2i(1), vec2(0.5))',
+ bad_1vec3i: '(vec3(1), vec3i(1), vec3(0.5))',
+ bad_1vec4i: '(vec4(1), vec4i(1), vec4(0.5))',
+ bad_1vec2u: '(vec2(1), vec2u(1), vec2(0.5))',
+ bad_1vec3u: '(vec3(1), vec3u(1), vec3(0.5))',
+ bad_1vec4u: '(vec4(1), vec4u(1), vec4(0.5))',
+ // Bad value type for arg 2
+ bad_2bool: '(vec3(0), vec3(1), true)',
+ bad_2array: '(vec3(0), vec3(1), array(1.1,2.2))',
+ bad_2struct: '(vec3(0), vec3(1), modf(2.2))',
+ bad_2int: '(vec3(0), vec3(1), 1i)',
+ bad_2uint: '(vec3(0), vec3(1), 1u)',
+ bad_2vec2i: '(vec2(1), vec2(1), vec2i(1))',
+ bad_2vec3i: '(vec3(1), vec3(1), vec3i(1))',
+ bad_2vec4i: '(vec4(1), vec4(1), vec4i(1))',
+ bad_2vec2u: '(vec2(1), vec2(1), vec2u(1))',
+ bad_2vec3u: '(vec3(1), vec3(1), vec3u(1))',
+ bad_2vec4u: '(vec4(1), vec4(1), vec4u(1))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstLeadingBit.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstLeadingBit.spec.js
new file mode 100644
index 0000000000..ab92243868
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstLeadingBit.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'firstLeadingBit';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // firstLeadingBit() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstTrailingBit.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstTrailingBit.spec.js
new file mode 100644
index 0000000000..9b0bc5f58f
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/firstTrailingBit.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'firstTrailingBit';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // firstTrailingBit() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/floor.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/floor.spec.js
new file mode 100644
index 0000000000..6aa6f75310
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/floor.spec.js
@@ -0,0 +1,108 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'floor';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = true; // floor() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
+
+g.test('integer_argument').
+desc(
+ `
+Validates that scalar and vector integer arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+fn((t) => {
+ const type = kIntegerArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.f32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/fract.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/fract.spec.js
new file mode 100644
index 0000000000..2eb0f5a7a3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/fract.spec.js
@@ -0,0 +1,94 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'fract';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() error on invalid inputs.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValidArgumentTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = true;
+
+ const type = kValidArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/frexp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/frexp.spec.js
new file mode 100644
index 0000000000..e4a87551bb
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/frexp.spec.js
@@ -0,0 +1,94 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'frexp';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() error on invalid inputs.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValidArgumentTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = true;
+
+ const type = kValidArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/insertBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/insertBits.spec.js
new file mode 100644
index 0000000000..e4645db0d9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/insertBits.spec.js
@@ -0,0 +1,241 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'insertBits';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors,
+ u32 } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors on valid inputs
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type], 5)).
+expand('newbits', (u) => fullRangeForType(kValuesTypes[u.type], 5)).
+combineWithParams([
+{ offset: 0, count: 0 },
+{ offset: 0, count: 31 },
+{ offset: 0, count: 32 },
+{ offset: 4, count: 0 },
+{ offset: 4, count: 27 },
+{ offset: 4, count: 28 },
+{ offset: 16, count: 0 },
+{ offset: 16, count: 15 },
+{ offset: 16, count: 16 },
+{ offset: 32, count: 0 }]
+)
+).
+fn((t) => {
+ const expectedResult = true; // insertBits() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [
+ kValuesTypes[t.params.type].create(t.params.value),
+ kValuesTypes[t.params.type].create(t.params.newbits),
+ u32(t.params.offset),
+ u32(t.params.count)],
+
+ t.params.stage
+ );
+});
+
+g.test('mismatched').
+desc(
+ `
+Validates that even with valid types, if arg0 and arg1 do not match types ${builtin}() errors
+`
+).
+params((u) => u.combine('arg0', keysOf(kValuesTypes)).combine('arg1', keysOf(kValuesTypes))).
+fn((t) => {
+ const arg0 = kValuesTypes[t.params.arg0];
+ const arg1 = kValuesTypes[t.params.arg1];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */t.params.arg0 === t.params.arg1,
+ [arg0.create(0), arg1.create(1), u32(0), u32(32)],
+ 'constant'
+ );
+});
+
+g.test('count_offset').
+desc(
+ `
+Validates that count and offset must be smaller than the size of the primitive.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+beginSubcases().
+combineWithParams([
+// offset + count < 32
+{ offset: 0, count: 31 },
+{ offset: 1, count: 30 },
+{ offset: 31, count: 0 },
+{ offset: 30, count: 1 },
+// offset + count == 32
+{ offset: 0, count: 32 },
+{ offset: 1, count: 31 },
+{ offset: 16, count: 16 },
+{ offset: 31, count: 1 },
+{ offset: 32, count: 0 },
+// offset + count > 32
+{ offset: 2, count: 31 },
+{ offset: 31, count: 2 },
+// offset > 32
+{ offset: 33, count: 0 },
+{ offset: 33, count: 1 },
+// count > 32
+{ offset: 0, count: 33 },
+{ offset: 1, count: 33 }]
+)
+).
+fn((t) => {
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */t.params.offset + t.params.count <= 32,
+ [u32(0), u32(1), u32(t.params.offset), u32(t.params.count)],
+ t.params.stage
+ );
+});
+
+
+
+
+
+
+
+
+
+
+function typesToArguments(types, pass) {
+ return types.reduce(
+ (res, type) => ({
+ ...res,
+ [type.toString()]: { arg: type.create(0).wgsl(), pass }
+ }),
+ {}
+ );
+}
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kInputArgTypes = {
+ ...typesToArguments([Type.u32], true),
+ ...typesToArguments([...kFloatScalarsAndVectors, Type.bool, Type.mat2x2f], false),
+ alias: { arg: 'u32_alias(1)', pass: true },
+ vec_bool: { arg: 'vec2<bool>(false,true)', pass: false },
+ atomic: { arg: 'a', pass: false },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ arg: 'arry',
+ pass: false
+ },
+ array_runtime: { arg: 'k.arry', pass: false },
+ struct: {
+ preamble: 'var x: A;',
+ arg: 'x',
+ pass: false
+ },
+ enumerant: { arg: 'read_write', pass: false },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ arg: 'p',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ arg: '*p',
+ pass: true
+ },
+ sampler: { arg: 's', pass: false },
+ texture: { arg: 't', pass: false }
+};
+
+g.test('typed_arguments').
+desc(
+ `
+Test compilation validation of ${builtin} with variously typed arguments
+ - The input types are matching to reduce testing permutations. Mismatching input types are
+ validated in 'mismatched' test above.
+ - For failing input types, just use the same type for offset and count to reduce combinations.
+`
+).
+params((u) =>
+u.
+combine('input', keysOf(kInputArgTypes)).
+beginSubcases().
+combine('offset', keysOf(kInputArgTypes)).
+expand('count', (u) => kInputArgTypes[u.input].pass ? keysOf(kInputArgTypes) : [u.offset])
+).
+fn((t) => {
+ const input = kInputArgTypes[t.params.input];
+ const offset = kInputArgTypes[t.params.offset];
+ const count = kInputArgTypes[t.params.count];
+ t.expectCompileResult(
+ input.pass && offset.pass && count.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${input.preamble ? input.preamble : ''}
+ ${offset.preamble && offset !== input ? offset.preamble : ''}
+ ${count.preamble && count !== input && count !== offset ? count.preamble : ''}
+ _ = ${builtin}(${input.arg},${input.arg},${offset.arg},${count.arg});
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(0u,1u,0u,1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/inverseSqrt.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/inverseSqrt.spec.js
index bb6c089450..128a9d390c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/inverseSqrt.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/inverseSqrt.spec.js
@@ -6,11 +6,9 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -18,7 +16,7 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -26,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,17 +38,27 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinusTwoToTwo, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
const expectedResult =
- t.params.value > 0 && isRepresentable(1 / Math.sqrt(t.params.value), elementType(type));
+ t.params.value > 0 &&
+ isRepresentable(
+ 1 / Math.sqrt(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -60,22 +68,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(1)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/length.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/length.spec.js
index 12a28233e5..20ae5621a8 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/length.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/length.spec.js
@@ -7,14 +7,13 @@ import { makeTestGroup } from '../../../../../../common/framework/test_group.js'
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalars,
- kAllFloatVector2,
- kAllFloatVector3,
- kAllFloatVector4,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalar,
+ kConvertableToFloatVec2,
+ kConvertableToFloatVec3,
+ kConvertableToFloatVec4,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -49,16 +48,25 @@ type)
{
- const squareSum = vec.reduce((prev, curr) => prev + curr * curr, 0);
+ const vec_number = vec.map((e) => Number(e));
+ const squareSum = vec_number.reduce((prev, curr) => prev + Number(curr) * Number(curr), 0);
const result = Math.sqrt(squareSum);
return {
- isIntermediateRepresentable: isRepresentable(squareSum, type),
- isResultRepresentable: isRepresentable(result, type),
+ isIntermediateRepresentable: isRepresentable(
+ squareSum,
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ ),
+ isResultRepresentable: isRepresentable(
+ result,
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ ),
result
};
}
-const kScalarTypes = objectsToRecord(kAllFloatScalars);
+const kScalarTypes = objectsToRecord(kConvertableToFloatScalar);
g.test('scalar').
desc(
@@ -76,7 +84,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kScalarTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kScalarTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kScalarTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -92,7 +100,7 @@ fn((t) => {
);
});
-const kVec2Types = objectsToRecord(kAllFloatVector2);
+const kVec2Types = objectsToRecord(kConvertableToFloatVec2);
g.test('vec2').
desc(
@@ -108,11 +116,11 @@ filter((u) => stageSupportsType(u.stage, kVec2Types[u.type])).
beginSubcases().
expand('x', (u) => fullRangeForType(kVec2Types[u.type], 5)).
expand('y', (u) => fullRangeForType(kVec2Types[u.type], 5)).
-expand('_result', (u) => [calculate([u.x, u.y], elementType(kVec2Types[u.type]))]).
+expand('_result', (u) => [calculate([u.x, u.y], scalarTypeOf(kVec2Types[u.type]))]).
filter((u) => u._result.isResultRepresentable === u._result.isIntermediateRepresentable)
).
beforeAllSubcases((t) => {
- if (elementType(kVec2Types[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kVec2Types[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -127,7 +135,7 @@ fn((t) => {
);
});
-const kVec3Types = objectsToRecord(kAllFloatVector3);
+const kVec3Types = objectsToRecord(kConvertableToFloatVec3);
g.test('vec3').
desc(
@@ -144,11 +152,11 @@ beginSubcases().
expand('x', (u) => fullRangeForType(kVec3Types[u.type], 4)).
expand('y', (u) => fullRangeForType(kVec3Types[u.type], 4)).
expand('z', (u) => fullRangeForType(kVec3Types[u.type], 4)).
-expand('_result', (u) => [calculate([u.x, u.y, u.z], elementType(kVec3Types[u.type]))]).
+expand('_result', (u) => [calculate([u.x, u.y, u.z], scalarTypeOf(kVec3Types[u.type]))]).
filter((u) => u._result.isResultRepresentable === u._result.isIntermediateRepresentable)
).
beforeAllSubcases((t) => {
- if (elementType(kVec3Types[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kVec3Types[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -163,7 +171,7 @@ fn((t) => {
);
});
-const kVec4Types = objectsToRecord(kAllFloatVector4);
+const kVec4Types = objectsToRecord(kConvertableToFloatVec4);
g.test('vec4').
desc(
@@ -181,11 +189,11 @@ expand('x', (u) => fullRangeForType(kVec4Types[u.type], 3)).
expand('y', (u) => fullRangeForType(kVec4Types[u.type], 3)).
expand('z', (u) => fullRangeForType(kVec4Types[u.type], 3)).
expand('w', (u) => fullRangeForType(kVec4Types[u.type], 3)).
-expand('_result', (u) => [calculate([u.x, u.y, u.z, u.w], elementType(kVec4Types[u.type]))]).
+expand('_result', (u) => [calculate([u.x, u.y, u.z, u.w], scalarTypeOf(kVec4Types[u.type]))]).
filter((u) => u._result.isResultRepresentable === u._result.isIntermediateRepresentable)
).
beforeAllSubcases((t) => {
- if (elementType(kVec4Types[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kVec4Types[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -200,7 +208,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -214,7 +222,7 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log.spec.js
index fb911b4188..5b73577235 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,7 +39,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -69,8 +68,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log2.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log2.spec.js
index 4e538fbb77..60403807a6 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log2.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/log2.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,7 +39,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -69,8 +68,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/max.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/max.spec.js
new file mode 100644
index 0000000000..6a550cfbc4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/max.spec.js
@@ -0,0 +1,91 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'max';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllNumericScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kAllNumericScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValuesTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValuesTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kValuesTypes[t.params.type];
+ const expectedResult = true; // should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.1, 2.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(1.0)',
+ bad_3arg: '(1.0, 2.0, 3.0)',
+ // Bad value for arg 0
+ bad_0bool: '(false, 1.0)',
+ bad_0array: '(array(1.1,2.2), 1.0)',
+ bad_0struct: '(modf(2.2), 1.0)',
+ // Bad value type for arg 1
+ bad_1bool: '(1.0, true)',
+ bad_1array: '(1.0, array(1.1,2.2))',
+ bad_1struct: '(1.0, modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/min.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/min.spec.js
new file mode 100644
index 0000000000..377480a029
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/min.spec.js
@@ -0,0 +1,91 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'min';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllNumericScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kAllNumericScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValuesTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValuesTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kValuesTypes[t.params.type];
+ const expectedResult = true; // should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.1, 2.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(1.0)',
+ bad_3arg: '(1.0, 2.0, 3.0)',
+ // Bad value for arg 0
+ bad_0bool: '(false, 1.0)',
+ bad_0array: '(array(1.1,2.2), 1.0)',
+ bad_0struct: '(modf(2.2), 1.0)',
+ // Bad value type for arg 1
+ bad_1bool: '(1.0, true)',
+ bad_1array: '(1.0, array(1.1,2.2))',
+ bad_1struct: '(1.0, modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/modf.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/modf.spec.js
index d3937bc4f3..a2edc6dd4d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/modf.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/modf.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,7 +39,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -69,7 +68,7 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(0)],
'constant'
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/normalize.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/normalize.spec.js
new file mode 100644
index 0000000000..b696401dba
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/normalize.spec.js
@@ -0,0 +1,146 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'normalize';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatVectors,
+ scalarTypeOf } from
+
+'../../../../../util/conversion.js';
+import { quantizeToF16, quantizeToF32 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatVectors);
+
+function quantizeFunctionForScalarType(type) {
+ switch (type) {
+ case Type.f32:
+ return quantizeToF32;
+ case Type.f16:
+ return quantizeToF16;
+ default:
+ return (v) => v;
+ }
+}
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() rejects invalid values
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValidArgumentTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let expectedResult = true;
+
+ const scalarType = scalarTypeOf(kValidArgumentTypes[t.params.type]);
+ const quantizeFn = quantizeFunctionForScalarType(scalarType);
+
+ // Should be invalid if the normalization calculations result in intermediate
+ // values that exceed the maximum representable float value for the given type,
+ // or if the length is smaller than the smallest representable float value.
+ const v = Number(t.params.value);
+ const vv = quantizeFn(v * v);
+ const dp = quantizeFn(vv * kValidArgumentTypes[t.params.type].width);
+ const len = quantizeFn(Math.sqrt(dp));
+ if (vv === Infinity || dp === Infinity || len === 0) {
+ expectedResult = false;
+ }
+
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValidArgumentTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kInvalidArgumentTypes = objectsToRecord([
+Type.f32,
+Type.f16,
+Type.abstractInt,
+Type.bool,
+Type.vec(2, Type.bool),
+Type.vec(3, Type.bool),
+Type.vec(4, Type.bool),
+...kConcreteIntegerScalarsAndVectors]
+);
+
+g.test('invalid_argument').
+desc(
+ `
+Validates that all scalar arguments and vector integer or boolean arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kInvalidArgumentTypes))).
+beforeAllSubcases((t) => {
+ if (kInvalidArgumentTypes[t.params.type] === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = false; // should always error with invalid argument types
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kInvalidArgumentTypes[t.params.type].create(0)],
+ 'constant'
+ );
+});
+
+const kArgCases = {
+ good: '(vec3f(1, 0, 0))',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(vec3f(),vec3f())',
+ // Bad value for arg 0
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16snorm.spec.js
new file mode 100644
index 0000000000..1059208d45
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16snorm.spec.js
@@ -0,0 +1,58 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'pack2x16snorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good: '(vec2f())',
+ good_vec2_abstract_float: '(vec2(0.1))',
+ bad_0args: '()',
+ bad_2args: '(vec2f(),vec2f())',
+ bad_abstract_int: '(1)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_u32: '(1u)',
+ bad_abstract_float: '(0.1)',
+ bad_bool: '(false)',
+ bad_vec4f: '(vec4f())',
+ bad_vec4u: '(vec4u())',
+ bad_vec4i: '(vec4i())',
+ bad_vec4b: '(vec4<bool>())',
+ bad_vec3f: '(vec3f())',
+ bad_array: '(array(1.0, 2.0, 3.0, 4.0))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+const kReturnType = 'u32';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good' || t.params.arg === 'good_vec2_abstract_float',
+ `const c = ${kFn}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type`).
+params((u) => u.combine('type', ['u32', 'i32', 'f32', 'bool', 'vec2u'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16unorm.spec.js
new file mode 100644
index 0000000000..eb29dd5b41
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack2x16unorm.spec.js
@@ -0,0 +1,58 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'pack2x16unorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good: '(vec2f())',
+ good_vec2_abstract_float: '(vec2(0.1))',
+ bad_0args: '()',
+ bad_2args: '(vec2f(),vec2f())',
+ bad_abstract_int: '(1)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_u32: '(1u)',
+ bad_abstract_float: '(0.1)',
+ bad_bool: '(false)',
+ bad_vec4f: '(vec4f())',
+ bad_vec4u: '(vec4u())',
+ bad_vec4i: '(vec4i())',
+ bad_vec4b: '(vec4<bool>())',
+ bad_vec3f: '(vec3f())',
+ bad_array: '(array(1.0, 2.0, 3.0, 4.0))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+const kReturnType = 'u32';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good' || t.params.arg === 'good_vec2_abstract_float',
+ `const c = ${kFn}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type`).
+params((u) => u.combine('type', ['u32', 'i32', 'f32', 'bool', 'vec2u'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8snorm.spec.js
new file mode 100644
index 0000000000..09c9008d61
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8snorm.spec.js
@@ -0,0 +1,58 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'pack4x8snorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good: '(vec4f())',
+ good_vec4_abstract_float: '(vec4(0.1))',
+ bad_0args: '()',
+ bad_2args: '(vec4f(),vec4f())',
+ bad_abstract_int: '(1)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_u32: '(1u)',
+ bad_abstract_float: '(0.1)',
+ bad_bool: '(false)',
+ bad_vec4u: '(vec4u())',
+ bad_vec4i: '(vec4i())',
+ bad_vec4b: '(vec4<bool>())',
+ bad_vec2f: '(vec2f())',
+ bad_vec3f: '(vec3f())',
+ bad_array: '(array(1.0, 2.0, 3.0, 4.0))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+const kReturnType = 'u32';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good' || t.params.arg === 'good_vec4_abstract_float',
+ `const c = ${kFn}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type`).
+params((u) => u.combine('type', ['u32', 'i32', 'f32', 'bool', 'vec2u'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8unorm.spec.js
new file mode 100644
index 0000000000..a0ff836f44
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4x8unorm.spec.js
@@ -0,0 +1,58 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'pack4x8unorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good: '(vec4f())',
+ good_vec4_abstract_float: '(vec4(0.1))',
+ bad_0args: '()',
+ bad_2args: '(vec4f(),vec4f())',
+ bad_abstract_int: '(1)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_u32: '(1u)',
+ bad_abstract_float: '(0.1)',
+ bad_bool: '(false)',
+ bad_vec4u: '(vec4u())',
+ bad_vec4i: '(vec4i())',
+ bad_vec4b: '(vec4<bool>())',
+ bad_vec2f: '(vec2f())',
+ bad_vec3f: '(vec3f())',
+ bad_array: '(array(1.0, 2.0, 3.0, 4.0))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+const kReturnType = 'u32';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good' || t.params.arg === 'good_vec4_abstract_float',
+ `const c = ${kFn}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type`).
+params((u) => u.combine('type', ['u32', 'i32', 'f32', 'bool', 'vec2u'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8.spec.js
new file mode 100644
index 0000000000..4d9caa575c
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate pack4xI8`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'pack4xI8';
+const kArgCases = {
+ good: '(vec4i())',
+ bad_0args: '()',
+ bad_2args: '(vec4i(),vec4i())',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec4u: '(vec4u())',
+ bad_0vec4f: '(vec4f())',
+ bad_0vec4b: '(vec4<bool>())',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec3i: '(vec3i())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp.spec.js
new file mode 100644
index 0000000000..dcd3af2633
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xI8Clamp.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate pack4xI8Clamp`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'pack4xI8Clamp';
+const kArgCases = {
+ good: '(vec4i())',
+ bad_0args: '()',
+ bad_2args: '(vec4i(),vec4i())',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec4u: '(vec4u())',
+ bad_0vec4f: '(vec4f())',
+ bad_0vec4b: '(vec4<bool>())',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec3i: '(vec3i())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8.spec.js
new file mode 100644
index 0000000000..ef5483c2ae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate pack4xU8`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'pack4xU8';
+const kArgCases = {
+ good: '(vec4u())',
+ bad_0args: '()',
+ bad_2args: '(vec4u(),vec4u())',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4f: '(vec4f())',
+ bad_0vec4b: '(vec4<bool>())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3u: '(vec3u())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp.spec.js
new file mode 100644
index 0000000000..46505239aa
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/pack4xU8Clamp.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate pack4xU8Clamp`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'pack4xU8Clamp';
+const kArgCases = {
+ good: '(vec4u())',
+ bad_0args: '()',
+ bad_2args: '(vec4u(),vec4u())',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4f: '(vec4f())',
+ bad_0vec4b: '(vec4<bool>())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3u: '(vec3u())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/quantizeToF16.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/quantizeToF16.spec.js
new file mode 100644
index 0000000000..cbea6ffa40
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/quantizeToF16.spec.js
@@ -0,0 +1,113 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'quantizeToF16';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import { Type, kConcreteF32ScalarsAndVectors } from '../../../../../util/conversion.js';
+import { quantizeToF16 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord([
+Type.abstractFloat,
+Type.vec(2, Type.abstractFloat),
+Type.vec(3, Type.abstractFloat),
+Type.vec(4, Type.abstractFloat),
+...kConcreteF32ScalarsAndVectors]
+);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() error on invalid inputs.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValidArgumentTypes[u.type]))
+).
+fn((t) => {
+ let expectedResult = true;
+
+ // Should be invalid if the quantized value exceeds the maximum representable
+ // 16-bit float value.
+ const f16Value = quantizeToF16(Number(t.params.value));
+ if (f16Value === Infinity || f16Value === -Infinity) {
+ expectedResult = false;
+ }
+
+ const type = kValidArgumentTypes[t.params.type];
+
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kArgCasesF16 = {
+ bad_0f16: '(1h)',
+ bad_0vec2h: '(vec2h())',
+ bad_0vec3h: '(vec3h())',
+ bad_0vec4h: '(vec4h())'
+};
+
+const kArgCases = {
+ good: '(vec3f())',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.0, 2.0)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())',
+ ...kArgCasesF16
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg in kArgCasesF16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/radians.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/radians.spec.js
index 51e1c451a3..6d8a5511de 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/radians.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/radians.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,7 +39,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -69,8 +68,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_too_few: '()',
+ bad_too_many: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reflect.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reflect.spec.js
new file mode 100644
index 0000000000..f90cfc116a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reflect.spec.js
@@ -0,0 +1,131 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'reflect';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatVectors,
+ scalarTypeOf } from
+
+'../../../../../util/conversion.js';
+import { quantizeToF16, quantizeToF32 } from '../../../../../util/math.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatVectors);
+
+function quantizeFunctionForScalarType(type) {
+ switch (type) {
+ case Type.f32:
+ return quantizeToF32;
+ case Type.f16:
+ return quantizeToF16;
+ default:
+ return (v) => v;
+ }
+}
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let expectedResult = true;
+
+ const scalarType = scalarTypeOf(kValidArgumentTypes[t.params.type]);
+ const quantizeFn = quantizeFunctionForScalarType(scalarType);
+
+ // Reflect equation: a - 2 * dot(b, a) * b
+ // Should be invalid if the reflect calculations result in intermediate
+ // values that exceed the maximum representable float value for the given type.
+ const a = Number(t.params.a);
+ const b = Number(t.params.b);
+ const ab = quantizeFn(a * b);
+ const dp = quantizeFn(ab * kValidArgumentTypes[t.params.type].width);
+ const dp2 = quantizeFn(dp * 2);
+ const dp2b = quantizeFn(dp2 * b);
+ const a_dp2b = quantizeFn(a - dp2b);
+
+ if (
+ !Number.isFinite(ab) ||
+ !Number.isFinite(dp) ||
+ !Number.isFinite(dp2) ||
+ !Number.isFinite(dp2b) ||
+ !Number.isFinite(a_dp2b))
+ {
+ expectedResult = false;
+ }
+
+ const type = kValidArgumentTypes[t.params.type];
+
+ // Validates reflect(vecN(a, a, a), vecN(b, b, b));
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(vec3(0), vec3(1))',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(vec3(0))',
+ bad_3arg: '(vec3(0), vec3(1), vec3(2))',
+ // Bad value for arg 0
+ bad_0bool: '(false, vec3(1))',
+ bad_0array: '(array(1.1,2.2), vec3(1))',
+ bad_0struct: '(modf(2.2), vec3(1))',
+ // Bad value type for arg 1
+ bad_1bool: '(vec3(0), true)',
+ bad_1array: '(vec3(0), array(1.1,2.2))',
+ bad_1struct: '(vec3(0), modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reverseBits.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reverseBits.spec.js
new file mode 100644
index 0000000000..f1560d6d06
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/reverseBits.spec.js
@@ -0,0 +1,198 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'reverseBits';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kFloatScalarsAndVectors } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConcreteIntegerScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() never errors
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+fn((t) => {
+ const expectedResult = true; // reverseBits() should never error
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [kValuesTypes[t.params.type].create(t.params.value)],
+ t.params.stage
+ );
+});
+
+// u32 is included here to confirm that validation is failing due to a type issue and not something else.
+const kFloatTypes = objectsToRecord([Type.u32, ...kFloatScalarsAndVectors]);
+
+g.test('float_argument').
+desc(
+ `
+Validates that float arguments are rejected by ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kFloatTypes))).
+fn((t) => {
+ const type = kFloatTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.u32,
+ [type.create(0)],
+ 'constant'
+ );
+});
+
+const kTests =
+
+
+
+
+
+
+
+
+{
+ valid: {
+ args: '(1u)',
+ pass: true
+ },
+ // Number of arguments.
+ no_parens: {
+ args: '',
+ pass: false
+ },
+ too_few_args: {
+ args: '()',
+ pass: false
+ },
+ too_many_args: {
+ args: '(1u,2u)',
+ pass: false
+ },
+ // Arguments types (only 1 argument for this builtin).
+ alias: {
+ args: '(u32_alias(1))',
+ pass: true
+ },
+ bool: {
+ args: '(false)',
+ pass: false
+ },
+ vec_bool: {
+ args: '(vec2<bool>(false,true))',
+ pass: false
+ },
+ matrix: {
+ args: '(mat2x2(1,1,1,1))',
+ pass: false
+ },
+ atomic: {
+ args: '(a)',
+ pass: false
+ },
+ array: {
+ preamble: 'var arry: array<u32, 5>;',
+ args: '(arry)',
+ pass: false
+ },
+ array_runtime: {
+ args: '(k.arry)',
+ pass: false
+ },
+ struct: {
+ preamble: 'var x: A;',
+ args: '(x)',
+ pass: false
+ },
+ enumerant: {
+ args: '(read_write)',
+ pass: false
+ },
+ ptr: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(p)',
+ pass: false
+ },
+ ptr_deref: {
+ preamble: `var<function> f = 1u;
+ let p: ptr<function, u32> = &f;`,
+ args: '(*p)',
+ pass: true
+ },
+ sampler: {
+ args: '(s)',
+ pass: false
+ },
+ texture: {
+ args: '(t)',
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test compilation validation of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('test', keysOf(kTests))).
+fn((t) => {
+ const test = kTests[t.params.test];
+ t.expectCompileResult(
+ test.pass,
+ `alias u32_alias = u32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: u32,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${test.preamble ? test.preamble : ''}
+ _ = ${builtin}${test.args};
+ return vec4<f32>(.4, .2, .3, .1);
+ }`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1u); }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/round.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/round.spec.js
index a90c17e10c..63ca9abc08 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/round.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/round.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { fpTraitsFor } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -25,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,15 +39,19 @@ combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
expand('value', (u) => {
- const constants = fpTraitsFor(elementType(kValuesTypes[u.type])).constants();
- return unique(fullRangeForType(kValuesTypes[u.type]), [
- constants.negative.min + 0.1,
- constants.positive.max - 0.1]
- );
+ if (scalarTypeOf(kValuesTypes[u.type]).kind === 'abstract-int') {
+ return fullRangeForType(kValuesTypes[u.type]);
+ } else {
+ const constants = fpTraitsFor(scalarTypeOf(kValuesTypes[u.type])).constants();
+ return unique(fullRangeForType(kValuesTypes[u.type]), [
+ constants.negative.min + 0.1,
+ constants.positive.max - 0.1]
+ );
+ }
})
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -63,7 +66,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -77,7 +80,7 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/saturate.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/saturate.spec.js
index acf8bb059f..b6154f4a89 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/saturate.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/saturate.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,7 +39,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,7 +54,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -69,7 +68,7 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/select.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/select.spec.js
new file mode 100644
index 0000000000..7d3d56c2d5
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/select.spec.js
@@ -0,0 +1,250 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'select';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ concreteTypeOf,
+ isConvertible,
+ kAllScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { validateConstOrOverrideBuiltinEval } from './const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kArgumentTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('argument_types_1_and_2').
+desc(
+ `
+Validates that scalar and vector arguments are not rejected by ${builtin}() for args 1 and 2
+`
+).
+params((u) => u.combine('type1', keysOf(kArgumentTypes)).combine('type2', keysOf(kArgumentTypes))).
+beforeAllSubcases((t) => {
+ if (
+ scalarTypeOf(kArgumentTypes[t.params.type1]) === Type.f16 ||
+ scalarTypeOf(kArgumentTypes[t.params.type2]) === Type.f16)
+ {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type1 = kArgumentTypes[t.params.type1];
+ const type2 = kArgumentTypes[t.params.type2];
+ // First and second arg must be the same or one convertible to the other.
+ // Note that we specify a concrete return type even if both args are abstract.
+ const returnType = isConvertible(type1, type2) ?
+ concreteTypeOf(type2) :
+ isConvertible(type2, type1) ?
+ concreteTypeOf(type1) :
+ undefined;
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */returnType !== undefined,
+ [type1.create(0), type2.create(0), Type.bool.create(0)],
+ 'constant',
+ returnType
+ );
+});
+
+g.test('argument_types_3').
+desc(
+ `
+Validates that third argument must be bool for ${builtin}()
+`
+).
+params((u) => u.combine('type', keysOf(kArgumentTypes))).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */type === Type.bool,
+ [Type.i32.create(0), Type.i32.create(0), type.create(0)],
+ 'constant',
+ /*return_type*/Type.i32
+ );
+});
+
+const kTests = {
+ valid: {
+ src: `_ = ${builtin}(1, 2, true);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = ${builtin}(i32_alias(1), i32_alias(2), bool_alias(true));`,
+ pass: true
+ },
+ bool: {
+ src: `_ = ${builtin}(false, false, true);`,
+ pass: true
+ },
+ i32: {
+ src: `_ = ${builtin}(1i, 1i, true);`,
+ pass: true
+ },
+ u32: {
+ src: `_ = ${builtin}(1u, 1u, true);`,
+ pass: true
+ },
+ f32: {
+ src: `_ = ${builtin}(1.0f, 1.0f, true);`,
+ pass: true
+ },
+ f16: {
+ src: `_ = ${builtin}(1.0h, 1.0h, true);`,
+ pass: true
+ },
+ mixed_aint_afloat: {
+ src: `_ = ${builtin}(1, 1.0, true);`,
+ pass: true
+ },
+ mixed_i32_u32: {
+ src: `_ = ${builtin}(1i, 1u, true);`,
+ pass: false
+ },
+ vec_bool: {
+ src: `_ = ${builtin}(vec2<bool>(false, true), vec2<bool>(false, true), true);`,
+ pass: true
+ },
+ vec2_bool_implicit: {
+ src: `_ = ${builtin}(vec2(false, true), vec2(false, true), true);`,
+ pass: true
+ },
+ vec3_bool_implicit: {
+ src: `_ = ${builtin}(vec3(false), vec3(true), true);`,
+ pass: true
+ },
+ vec_i32: {
+ src: `_ = ${builtin}(vec2<i32>(1, 1), vec2<i32>(1, 1), true);`,
+ pass: true
+ },
+ vec_u32: {
+ src: `_ = ${builtin}(vec2<u32>(1, 1), vec2<u32>(1, 1), true);`,
+ pass: true
+ },
+ vec_f32: {
+ src: `_ = ${builtin}(vec2<f32>(1, 1), vec2<f32>(1, 1), true);`,
+ pass: true
+ },
+ vec_f16: {
+ src: `_ = ${builtin}(vec2<f16>(1, 1), vec2<f16>(1, 1), true);`,
+ pass: true
+ },
+ matrix: {
+ src: `_ = ${builtin}(mat2x2(1, 1, 1, 1), mat2x2(1, 1, 1, 1), true);`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = ${builtin}(a, a, true);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<bool, 5>;
+ _ = ${builtin}(a, a, true);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = ${builtin}(k.arry, k.arry, true);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = ${builtin}(a, a, true);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = ${builtin}(read_write, read_write, true);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(p, p, true);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = true;
+ let p: ptr<function, bool> = &a;
+ _ = ${builtin}(*p, *p, true);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = ${builtin}(s, s, true);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = ${builtin}(t, t, true);`,
+ pass: false
+ },
+ no_args: {
+ src: `_ = ${builtin}();`,
+ pass: false
+ },
+ too_few_args: {
+ src: `_ = ${builtin}(1, true);`,
+ pass: false
+ },
+ too_many_args: {
+ src: `_ = ${builtin}(1, 1, 1, true);`,
+ pass: false
+ }
+};
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}(1, 2, true); }`);
+});
+
+g.test('arguments').
+desc(`Test that ${builtin} is validated correctly.`).
+params((u) => u.combine('test', keysOf(kTests))).
+beforeAllSubcases((t) => {
+ if (t.params.test.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const enables = t.params.test.includes('f16') ? 'enable f16;' : '';
+ const code = `
+ ${enables}
+ alias bool_alias = bool;
+ alias i32_alias = i32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: bool,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+ }`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/shader_stage_utils.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/shader_stage_utils.js
new file mode 100644
index 0000000000..8a563e7c78
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/shader_stage_utils.js
@@ -0,0 +1,64 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/ /**
+ * Use to test that certain WGSL builtins are only available in the fragment stage.
+ * Create WGSL that defines a function "foo" and its required variables that uses
+ * the builtin being tested. Append it to these code strings then compile. It should
+ * succeed or fail based on the value `expectSuccess`.
+ *
+ * See ./textureSample.spec.ts was one example
+ */export const kEntryPointsToValidateFragmentOnlyBuiltins = { none: {
+ expectSuccess: true,
+ code: ``
+ },
+ fragment: {
+ expectSuccess: true,
+ code: `
+ @fragment
+ fn main() {
+ foo();
+ }
+ `
+ },
+ vertex: {
+ expectSuccess: false,
+ code: `
+ @vertex
+ fn main() -> @builtin(position) vec4f {
+ foo();
+ return vec4f();
+ }
+ `
+ },
+ compute: {
+ expectSuccess: false,
+ code: `
+ @compute @workgroup_size(1)
+ fn main() {
+ foo();
+ }
+ `
+ },
+ fragment_and_compute: {
+ expectSuccess: false,
+ code: `
+ @fragment
+ fn main1() {
+ foo();
+ }
+
+ @compute @workgroup_size(1)
+ fn main2() {
+ foo();
+ }
+ `
+ },
+ compute_without_call: {
+ expectSuccess: true,
+ code: `
+ @compute @workgroup_size(1)
+ fn main() {
+ }
+ `
+ }
+}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sign.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sign.spec.js
index 7a08bac5f9..1e458aa9d0 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sign.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sign.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatAndSignedIntegerScalarsAndVectors,
- kAllUnsignedIntegerScalarsAndVectors } from
+ Type,
+ kFloatScalarsAndVectors,
+ kConcreteSignedIntegerScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -23,7 +22,10 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatAndSignedIntegerScalarsAndVectors);
+const kValuesTypes = objectsToRecord([
+...kFloatScalarsAndVectors,
+...kConcreteSignedIntegerScalarsAndVectors]
+);
g.test('values').
desc(
@@ -40,7 +42,7 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -55,25 +57,36 @@ fn((t) => {
);
});
-const kUnsignedIntegerArgumentTypes = objectsToRecord([
-TypeF32,
-...kAllUnsignedIntegerScalarsAndVectors]
-);
+const kArgCases = {
+ good: '(1.0)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.0, 1.0)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0vec2u: '(vec2u(1))',
+ bad_0vec3u: '(vec3u(1))',
+ bad_0vec4u: '(vec4u(1))'
+};
-g.test('unsigned_integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kUnsignedIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kUnsignedIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(1)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sin.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sin.spec.js
index 716311f20c..fd629bf7ed 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sin.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sin.spec.js
@@ -6,18 +6,17 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinus3PiTo3Pi,
+ minusThreePiToThreePiRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -25,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -39,10 +38,15 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
@@ -56,7 +60,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -70,8 +74,42 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
+
[type.create(0)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2args: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sinh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sinh.spec.js
index c654132960..e35fb84e72 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sinh.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sinh.spec.js
@@ -6,11 +6,9 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -24,7 +22,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -41,13 +39,17 @@ beginSubcases().
expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const expectedResult = isRepresentable(Math.sinh(t.params.value), elementType(type));
+ const expectedResult = isRepresentable(
+ Math.sinh(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -57,22 +59,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(0)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/smoothstep.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/smoothstep.spec.js
new file mode 100644
index 0000000000..1e1855a828
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/smoothstep.spec.js
@@ -0,0 +1,241 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'smoothstep';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ concreteTypeOf,
+ elementTypeOf,
+ isConvertibleToFloatType,
+ kAllScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+const kArgumentTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() rejects invalid values
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value1', (u) => [-1000, -10, 0, 10, 1000]).
+expand('value2', (u) => [-1000, -10, 0, 10, 1000])
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kValuesTypes[t.params.type];
+
+ // We expect to fail if low == high as it results in a DBZ
+ const expectedResult = t.params.value1 !== t.params.value2;
+
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value1), type.create(t.params.value2), type.create(0)],
+ t.params.stage,
+ /* returnType */concreteTypeOf(type, [Type.f32])
+ );
+});
+
+g.test('argument_types').
+desc(
+ `
+Validates that scalar and vector arguments are rejected by ${builtin}() if not float type or vecN<float type>
+`
+).
+params((u) => u.combine('type', keysOf(kArgumentTypes))).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ /* expectedResult */isConvertibleToFloatType(elementTypeOf(type)),
+ [type.create(0), type.create(1), type.create(2)],
+ 'constant',
+ /* returnType */concreteTypeOf(type, [Type.f32])
+ );
+});
+
+const kTests = {
+ valid: {
+ src: `_ = ${builtin}(0.0, 42.0, 0.5);`,
+ pass: true
+ },
+ alias: {
+ src: `_ = ${builtin}(f32_alias(0), f32_alias(42), f32_alias(0.5));`,
+ pass: true
+ },
+ bool: {
+ src: `_ = ${builtin}(false, false, false);`,
+ pass: false
+ },
+ i32: {
+ src: `_ = ${builtin}(1i, 2i, 1i);`,
+ pass: false
+ },
+ u32: {
+ src: `_ = ${builtin}(1u, 2u, 1u);`,
+ pass: false
+ },
+ f32: {
+ src: `_ = ${builtin}(1.0f, 2.0f, 1.0f);`,
+ pass: true
+ },
+ f16: {
+ src: `_ = ${builtin}(1h, 2h, 1h);`,
+ pass: true
+ },
+ mixed_aint_afloat: {
+ src: `_ = ${builtin}(1.0, 2, 1);`,
+ pass: true
+ },
+ mixed_f32_afloat: {
+ src: `_ = ${builtin}(1.0f, 2.0, 1.0);`,
+ pass: true
+ },
+ mixed_f16_afloat: {
+ src: `_ = ${builtin}(1.0h, 2.0, 1.0);`,
+ pass: true
+ },
+ vec_bool: {
+ src: `_ = ${builtin}(vec2<bool>(false, true), vec2<bool>(false, true), vec2<bool>(false, true));`,
+ pass: false
+ },
+ vec_i32: {
+ src: `_ = ${builtin}(vec2<i32>(1, 1), vec2<i32>(1, 1), vec2<i32>(1, 1));`,
+ pass: false
+ },
+ vec_u32: {
+ src: `_ = ${builtin}(vec2<u32>(1, 1), vec2<u32>(1, 1), vec2<u32>(1, 1));`,
+ pass: false
+ },
+ vec_f32: {
+ src: `_ = ${builtin}(vec2<f32>(0, 0), vec2<f32>(1, 1), vec2<f32>(1, 1));`,
+ pass: true
+ },
+ matrix: {
+ src: `_ = ${builtin}(mat2x2(1, 1, 1, 1), mat2x2(1, 1, 1, 1), mat2x2(1, 1, 1, 1));`,
+ pass: false
+ },
+ atomic: {
+ src: ` _ = ${builtin}(a, a, a);`,
+ pass: false
+ },
+ array: {
+ src: `var a: array<bool, 5>;
+ _ = ${builtin}(a, a, a);`,
+ pass: false
+ },
+ array_runtime: {
+ src: `_ = ${builtin}(k.arry, k.arry, k.arry);`,
+ pass: false
+ },
+ struct: {
+ src: `var a: A;
+ _ = ${builtin}(a, a, a);`,
+ pass: false
+ },
+ enumerant: {
+ src: `_ = ${builtin}(read_write, read_write, read_write);`,
+ pass: false
+ },
+ ptr: {
+ src: `var<function> a = 1.0;
+ let p: ptr<function, f32> = &a;
+ _ = ${builtin}(p, p, p);`,
+ pass: false
+ },
+ ptr_deref: {
+ src: `var<function> a = 1.0;
+ let p: ptr<function, f32> = &a;
+ _ = ${builtin}(*p, *p, *p);`,
+ pass: true
+ },
+ sampler: {
+ src: `_ = ${builtin}(s, s, s);`,
+ pass: false
+ },
+ texture: {
+ src: `_ = ${builtin}(t, t, t);`,
+ pass: false
+ },
+ no_args: {
+ src: `_ = ${builtin}();`,
+ pass: false
+ },
+ too_few_args: {
+ src: `_ = ${builtin}(1.0, 2.0);`,
+ pass: false
+ },
+ too_many_args: {
+ src: `_ = ${builtin}(1.0, 2.0, 3.0, 4.0);`,
+ pass: false
+ }
+};
+
+g.test('arguments').
+desc(`Test that ${builtin} is validated correctly when called with different arguments.`).
+params((u) => u.combine('test', keysOf(kTests))).
+beforeAllSubcases((t) => {
+ if (t.params.test.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const src = kTests[t.params.test].src;
+ const enables = t.params.test.includes('f16') ? 'enable f16;' : '';
+ const code = `
+ ${enables}
+ alias f32_alias = f32;
+
+ @group(0) @binding(0) var s: sampler;
+ @group(0) @binding(1) var t: texture_2d<f32>;
+
+ var<workgroup> a: atomic<u32>;
+
+ struct A {
+ i: bool,
+ }
+ struct B {
+ arry: array<u32>,
+ }
+ @group(0) @binding(3) var<storage> k: B;
+
+ @vertex
+ fn main() -> @builtin(position) vec4<f32> {
+ ${src}
+ return vec4<f32>(.4, .2, .3, .1);
+ }`;
+ t.expectCompileResult(kTests[t.params.test].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sqrt.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sqrt.spec.js
index 4a2f254fef..acb432a539 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sqrt.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/sqrt.spec.js
@@ -6,11 +6,10 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConcreteIntegerScalarsAndVectors,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { isRepresentable } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -18,7 +17,7 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinusTwoToTwo,
+ minusTwoToTwoRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -26,7 +25,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,17 +39,27 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinusTwoToTwo, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusTwoToTwoRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
const expectedResult =
- t.params.value >= 0 && isRepresentable(Math.sqrt(t.params.value), elementType(type));
+ t.params.value >= 0 &&
+ isRepresentable(
+ Math.sqrt(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
validateConstOrOverrideBuiltinEval(
t,
builtin,
@@ -60,7 +69,7 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kIntegerArgumentTypes = objectsToRecord([Type.f32, ...kConcreteIntegerScalarsAndVectors]);
g.test('integer_argument').
desc(
@@ -74,8 +83,41 @@ fn((t) => {
validateConstOrOverrideBuiltinEval(
t,
builtin,
- /* expectedResult */type === TypeF32,
+ /* expectedResult */type === Type.f32,
[type.create(1)],
'constant'
);
+});
+
+const kArgCases = {
+ good: '(1.1)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_too_few: '()',
+ bad_too_many: '(1.0,2.0)',
+ // Bad value type for arg 0
+ bad_0i32: '(1i)',
+ bad_0u32: '(1u)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/step.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/step.spec.js
new file mode 100644
index 0000000000..6266a3628b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/step.spec.js
@@ -0,0 +1,108 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'step';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() error on invalid inputs.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('a', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5)).
+expand('b', (u) => fullRangeForType(kValidArgumentTypes[u.type], 5))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = true;
+
+ const type = kValidArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.a), type.create(t.params.b)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.2, 2.3)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_1arg: '(1.2)',
+ bad_3arg: '(1.2, 2.3, 4.5)',
+ // Bad value for arg 0
+ bad_0bool: '(false, 2.3)',
+ bad_0array: '(array(1.1,2.2), 2.3)',
+ bad_0struct: '(modf(2.2), 2.3)',
+ bad_0uint: '(1u, 2.3)',
+ bad_0int: '(1i, 2.3)',
+ bad_0vec2i: '(vec2i(), 2.3)',
+ bad_0vec2u: '(vec2u(), 2.3)',
+ bad_0vec3i: '(vec3i(), 2.3)',
+ bad_0vec3u: '(vec3u(), 2.3)',
+ bad_0vec4i: '(vec4i(), 2.3)',
+ bad_0vec4u: '(vec4u(), 2.3)',
+ // Bad value for arg 1
+ bad_1bool: '(1.2, false)',
+ bad_1array: '(1.2, array(1.1,2.2))',
+ bad_1struct: '(1.2, modf(2.2))',
+ bad_1uint: '(1.2, 1u)',
+ bad_1int: '(1.2, 1i)',
+ bad_1vec2i: '(1.2, vec2i())',
+ bad_1vec2u: '(1.2, vec2u())',
+ bad_1vec3i: '(1.2, vec3i())',
+ bad_1vec3u: '(1.2, vec3u())',
+ bad_1vec4i: '(1.2, vec4i())',
+ bad_1vec4u: '(1.2, vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tan.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tan.spec.js
index 91cee003ed..a7504ccb18 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tan.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tan.spec.js
@@ -6,11 +6,9 @@ Validation tests for the ${builtin}() builtin.
import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
import {
- TypeF16,
- TypeF32,
- elementType,
- kAllFloatScalarsAndVectors,
- kAllIntegerScalarsAndVectors } from
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
'../../../../../util/conversion.js';
import { fpTraitsFor } from '../../../../../util/floating_point.js';
import { ShaderValidationTest } from '../../../shader_validation_test.js';
@@ -18,7 +16,7 @@ import { ShaderValidationTest } from '../../../shader_validation_test.js';
import {
fullRangeForType,
kConstantAndOverrideStages,
- kMinus3PiTo3Pi,
+ minusThreePiToThreePiRangeForType,
stageSupportsType,
unique,
validateConstOrOverrideBuiltinEval } from
@@ -26,7 +24,7 @@ import {
export const g = makeTestGroup(ShaderValidationTest);
-const kValuesTypes = objectsToRecord(kAllFloatScalarsAndVectors);
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
g.test('values').
desc(
@@ -40,18 +38,26 @@ combine('stage', kConstantAndOverrideStages).
combine('type', keysOf(kValuesTypes)).
filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
beginSubcases().
-expand('value', (u) => unique(kMinus3PiTo3Pi, fullRangeForType(kValuesTypes[u.type])))
+expand('value', (u) =>
+unique(
+ minusThreePiToThreePiRangeForType(kValuesTypes[u.type]),
+ fullRangeForType(kValuesTypes[u.type])
+)
+)
).
beforeAllSubcases((t) => {
- if (elementType(kValuesTypes[t.params.type]) === TypeF16) {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
t.selectDeviceOrSkipTestCase('shader-f16');
}
}).
fn((t) => {
const type = kValuesTypes[t.params.type];
- const fp = fpTraitsFor(elementType(type));
+ const fp = fpTraitsFor(
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
const smallestPositive = fp.constants().positive.min;
- const v = fp.quantize(t.params.value);
+ const v = fp.quantize(Number(t.params.value));
const expectedResult = Math.abs(Math.cos(v)) > smallestPositive;
validateConstOrOverrideBuiltinEval(
t,
@@ -62,22 +68,40 @@ fn((t) => {
);
});
-const kIntegerArgumentTypes = objectsToRecord([TypeF32, ...kAllIntegerScalarsAndVectors]);
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
-g.test('integer_argument').
-desc(
- `
-Validates that scalar and vector integer arguments are rejected by ${builtin}()
-`
-).
-params((u) => u.combine('type', keysOf(kIntegerArgumentTypes))).
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
fn((t) => {
- const type = kIntegerArgumentTypes[t.params.type];
- validateConstOrOverrideBuiltinEval(
- t,
- builtin,
- /* expectedResult */type === TypeF32,
- [type.create(0)],
- 'constant'
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
);
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tanh.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tanh.spec.js
new file mode 100644
index 0000000000..653f92663e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/tanh.spec.js
@@ -0,0 +1,98 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'tanh';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { isRepresentable } from '../../../../../util/floating_point.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValuesTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() rejects invalid values
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValuesTypes)).
+filter((u) => stageSupportsType(u.stage, kValuesTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValuesTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValuesTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kValuesTypes[t.params.type];
+ const expectedResult = isRepresentable(
+ Math.tanh(Number(t.params.value)),
+ // AbstractInt is converted to AbstractFloat before calling into the builtin
+ scalarTypeOf(type).kind === 'abstract-int' ? Type.abstractFloat : scalarTypeOf(type)
+ );
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGather.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGather.spec.js
new file mode 100644
index 0000000000..6cd7061016
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGather.spec.js
@@ -0,0 +1,335 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureGather';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureGather component parameter must be correct type
+* test textureGather component parameter must be between 0 and 3 inclusive
+* test textureGather component parameter must be a const expression
+* test textureGather coords parameter must be correct type
+* test textureGather array_index parameter must be correct type
+* test textureGather offset parameter must be correct type
+* test textureGather offset parameter must be a const-expression
+* test textureGather offset parameter must be between -8 and +7 inclusive
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+
+
+
+
+
+
+
+const kValidTextureGatherParameterTypes = {
+ 'texture_2d<f32>': {
+ hasComponentArg: true,
+ coordsArgType: Type.vec2f,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_2d_array<f32>': {
+ hasComponentArg: true,
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_cube<f32>': { hasComponentArg: true, coordsArgType: Type.vec3f },
+ 'texture_cube_array<f32>': {
+ hasComponentArg: true,
+ coordsArgType: Type.vec3f,
+ hasArrayIndexArg: true
+ },
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureGatherParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('component_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only incorrect components arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureGatherParameterTypes))
+// filter out types with no component argument
+.filter((t) => !!kValidTextureGatherParameterTypes[t.textureType].hasComponentArg).
+combine('componentType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1, 2, 3, 4])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.componentType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, componentType, offset, value } = t.params;
+ const componentArgType = kValuesTypes[componentType];
+ const { offsetArgType, coordsArgType, hasArrayIndexArg } =
+ kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = componentArgType.create(value).wgsl();
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGather(${componentWGSL}, t, s, ${coordWGSL}${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ (isConvertible(componentArgType, Type.i32) || isConvertible(componentArgType, Type.u32)) &&
+ value >= 0 &&
+ value <= 3;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('component_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only non-const components arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureGatherParameterTypes))
+// filter out types with no component argument
+.filter((t) => !!kValidTextureGatherParameterTypes[t.textureType].hasComponentArg).
+combine('varType', ['c', 'u', 'l']).
+beginSubcases().
+expand('offset', (t) =>
+kValidTextureGatherParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, varType, offset } = t.params;
+ const componentArgType = Type.u32;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = `${componentArgType}(${varType})`;
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${componentArgType};
+
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = 1;
+ let v = textureGather(${componentWGSL}, t, s, ${coordWGSL}${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureGatherParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ hasComponentArg,
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = hasComponentArg ? '0, ' : '';
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGather(${componentWGSL}t, s, ${coordWGSL}${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureGatherParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { hasComponentArg, coordsArgType, offsetArgType } =
+ kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = hasComponentArg ? '0, ' : '';
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGather(${componentWGSL}t, s, ${coordWGSL}, ${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureGatherParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ hasComponentArg,
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = hasComponentArg ? '0, ' : '';
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGather(${componentWGSL}t, s, ${coordWGSL}${arrayWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegather').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureGatherParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { hasComponentArg, coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureGatherParameterTypes[textureType];
+
+ const componentWGSL = hasComponentArg ? '0, ' : '';
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureGather(${componentWGSL}t, s, ${coordWGSL}${arrayWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGatherCompare.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGatherCompare.spec.js
new file mode 100644
index 0000000000..4b41350ac7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureGatherCompare.spec.js
@@ -0,0 +1,264 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureGatherCompare';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureGatherCompare coords parameter must be correct type
+* test textureGatherCompare array_index parameter must be correct type
+* test textureGatherCompare depth_ref parameter must be correct type
+* test textureGatherCompare offset parameter must be correct type
+* test textureGatherCompare offset parameter must be a const-expression
+* test textureGatherCompare offset parameter must be between -8 and +7 inclusive
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+
+
+
+
+
+
+const kValidTextureGatherCompareParameterTypes = {
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureGatherCompareParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegathercompare').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureGatherCompareParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureGatherCompareParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGatherCompare(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegathercompare').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureGatherCompareParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureGatherCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGatherCompare(t, s, ${coordWGSL}, ${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('depth_ref_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegathercompare').
+desc(
+ `
+Validates that only incorrect depth_ref arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureGatherCompareParameterTypes)).
+combine('depthRefType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.depthRefType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureGatherCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, depthRefType, offset, value } = t.params;
+ const depthRefArgType = kValuesTypes[depthRefType];
+ const { offsetArgType, coordsArgType, hasArrayIndexArg } =
+ kValidTextureGatherCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const depthRefWGSL = depthRefArgType.create(value).wgsl();
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGatherCompare(t, s, ${coordWGSL}${arrayWGSL}, ${depthRefWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(depthRefArgType, Type.f32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegathercompare').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureGatherCompareParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureGatherCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureGatherCompare(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturegathercompare').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureGatherCompareParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureGatherCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureGatherCompare(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureLoad.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureLoad.spec.js
new file mode 100644
index 0000000000..62038bb2f9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureLoad.spec.js
@@ -0,0 +1,370 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureLoad';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureLoad coords parameter must be correct type
+* test textureLoad array_index parameter must be correct type
+* test textureLoad level parameter must be correct type
+* test textureLoad sample_index parameter must be correct type
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import { assert } from '../../../../../../common/util/util.js';
+import { kAllTextureFormats, kTextureFormatInfo } from '../../../../../format_info.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+
+
+
+
+
+
+
+
+const kCoords1DTypes = [Type.i32, Type.u32];
+const kCoords2DTypes = [Type.vec2i, Type.vec2u];
+const kCoords3DTypes = [Type.vec3i, Type.vec3u];
+
+const kValidTextureLoadParameterTypesForNonStorageTextures =
+{
+ texture_1d: { usesMultipleTypes: true, coordsArgTypes: kCoords1DTypes, hasLevelArg: true },
+ texture_2d: { usesMultipleTypes: true, coordsArgTypes: kCoords2DTypes, hasLevelArg: true },
+ texture_2d_array: {
+ usesMultipleTypes: true,
+ coordsArgTypes: kCoords2DTypes,
+ hasArrayIndexArg: true,
+ hasLevelArg: true
+ },
+ texture_3d: { usesMultipleTypes: true, coordsArgTypes: kCoords3DTypes, hasLevelArg: true },
+ texture_multisampled_2d: {
+ usesMultipleTypes: true,
+ coordsArgTypes: kCoords2DTypes,
+ hasSampleIndexArg: true
+ },
+ texture_depth_2d: { coordsArgTypes: kCoords2DTypes, hasLevelArg: true },
+ texture_depth_2d_array: {
+ coordsArgTypes: kCoords2DTypes,
+ hasArrayIndexArg: true,
+ hasLevelArg: true
+ },
+ texture_depth_multisampled_2d: { coordsArgTypes: kCoords2DTypes, hasSampleIndexArg: true },
+ texture_external: { coordsArgTypes: kCoords2DTypes }
+};
+
+const kValidTextureLoadParameterTypesForStorageTextures = {
+ texture_storage_1d: { coordsArgTypes: [Type.i32, Type.u32] },
+ texture_storage_2d: { coordsArgTypes: [Type.vec2i, Type.vec2u] },
+ texture_storage_2d_array: {
+ coordsArgTypes: [Type.vec2i, Type.vec2u],
+ hasArrayIndexArg: true
+ },
+ texture_storage_3d: { coordsArgTypes: [Type.vec3i, Type.vec3u] }
+};
+
+const kNonStorageTextureTypes = keysOf(kValidTextureLoadParameterTypesForNonStorageTextures);
+const kStorageTextureTypes = keysOf(kValidTextureLoadParameterTypesForStorageTextures);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+const kTexelType = {
+ f32: Type.vec4f,
+ i32: Type.vec4i,
+ u32: Type.vec4u
+};
+
+const kTexelTypes = keysOf(kTexelType);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument,non_storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kNonStorageTextureTypes).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+expand('texelType', (t) =>
+kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].usesMultipleTypes ?
+kTexelTypes :
+['']
+).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, coordType, texelType, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const { coordsArgTypes, hasArrayIndexArg, hasLevelArg, hasSampleIndexArg } =
+ kValidTextureLoadParameterTypesForNonStorageTextures[textureType];
+
+ const texelTypeWGSL = texelType ? `<${texelType}>` : '';
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const levelWGSL = hasLevelArg ? ', 0' : '';
+ const sampleIndexWGSL = hasSampleIndexArg ? ', 0' : '';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}${texelTypeWGSL};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}${arrayWGSL}${levelWGSL}${sampleIndexWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(coordArgType, coordsArgTypes[0]) ||
+ isConvertible(coordArgType, coordsArgTypes[1]);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('coords_argument,storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kStorageTextureTypes).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('format', kAllTextureFormats)
+// filter to only storage texture formats.
+.filter((t) => !!kTextureFormatInfo[t.format].color?.storage).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0)
+).
+beforeAllSubcases((t) =>
+t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures')
+).
+fn((t) => {
+ const { textureType, coordType, format, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const { coordsArgTypes, hasArrayIndexArg } =
+ kValidTextureLoadParameterTypesForStorageTextures[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}<${format}, read>;
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}${arrayWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(coordArgType, coordsArgTypes[0]) ||
+ isConvertible(coordArgType, coordsArgTypes[1]);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument,non_storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kNonStorageTextureTypes)
+// filter out types with no array_index
+.filter(
+ (t) => !!kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].hasArrayIndexArg
+).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+expand('texelType', (t) =>
+kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].usesMultipleTypes ?
+kTexelTypes :
+['']
+).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, texelType, value } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgTypes, hasLevelArg } =
+ kValidTextureLoadParameterTypesForNonStorageTextures[textureType];
+
+ const texelTypeWGSL = texelType ? `<${texelType}>` : '';
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const levelWGSL = hasLevelArg ? ', 0' : '';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}${texelTypeWGSL};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}, ${arrayWGSL}${levelWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument,storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kStorageTextureTypes)
+// filter out types with no array_index
+.filter(
+ (t) => !!kValidTextureLoadParameterTypesForStorageTextures[t.textureType].hasArrayIndexArg
+).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('format', kAllTextureFormats)
+// filter to only storage texture formats.
+.filter((t) => !!kTextureFormatInfo[t.format].color?.storage).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0)
+).
+beforeAllSubcases((t) =>
+t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures')
+).
+fn((t) => {
+ const { textureType, arrayIndexType, format, value } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgTypes, hasLevelArg } =
+ kValidTextureLoadParameterTypesForStorageTextures[textureType];
+
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const levelWGSL = hasLevelArg ? ', 0' : '';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}<${format}, read>;
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}, ${arrayWGSL}${levelWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('level_argument,non_storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect level arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kNonStorageTextureTypes)
+// filter out types with no level
+.filter(
+ (t) => !!kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].hasLevelArg
+).
+combine('levelType', keysOf(kValuesTypes)).
+beginSubcases().
+expand('texelType', (t) =>
+kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].usesMultipleTypes ?
+kTexelTypes :
+['']
+).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.levelType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, levelType, texelType, value } = t.params;
+ const levelArgType = kValuesTypes[levelType];
+ const { coordsArgTypes, hasArrayIndexArg } =
+ kValidTextureLoadParameterTypesForNonStorageTextures[textureType];
+
+ const texelTypeWGSL = texelType ? `<${texelType}>` : '';
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const levelWGSL = levelArgType.create(value).wgsl();
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}${texelTypeWGSL};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}${arrayWGSL}, ${levelWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(levelArgType, Type.i32) || isConvertible(levelArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('sample_index_argument,non_storage').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#textureload').
+desc(
+ `
+Validates that only incorrect sample_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kNonStorageTextureTypes)
+// filter out types with no sample_index
+.filter(
+ (t) => !!kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].hasSampleIndexArg
+).
+combine('sampleIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+expand('texelType', (t) =>
+kValidTextureLoadParameterTypesForNonStorageTextures[t.textureType].usesMultipleTypes ?
+kTexelTypes :
+['']
+).
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.sampleIndexType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, sampleIndexType, texelType, value } = t.params;
+ const sampleIndexArgType = kValuesTypes[sampleIndexType];
+ const { coordsArgTypes, hasArrayIndexArg, hasLevelArg } =
+ kValidTextureLoadParameterTypesForNonStorageTextures[textureType];
+ assert(!hasLevelArg);
+
+ const texelTypeWGSL = texelType ? `<${texelType}>` : '';
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const sampleIndexWGSL = sampleIndexArgType.create(value).wgsl();
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}${texelTypeWGSL};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureLoad(t, ${coordWGSL}${arrayWGSL}, ${sampleIndexWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(sampleIndexArgType, Type.i32) || isConvertible(sampleIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSample.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSample.spec.js
new file mode 100644
index 0000000000..322e3a7a70
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSample.spec.js
@@ -0,0 +1,267 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSample';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSample coords parameter must be correct type
+* test textureSample array_index parameter must be correct type
+* test textureSample coords parameter must be correct type
+* test textureSample offset parameter must be correct type
+* test textureSample offset parameter must be a const-expression
+* test textureSample offset parameter must be between -8 and +7 inclusive
+* test textureSample not usable in a compute or vertex shader
+
+note: uniformity validation is covered in src/webgpu/shader/validation/uniformity/uniformity.spec.ts
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { kEntryPointsToValidateFragmentOnlyBuiltins } from './shader_stage_utils.js';
+
+
+
+
+
+
+
+const kValidTextureSampleParameterTypes = {
+ 'texture_1d<f32>': { coordsArgType: Type.f32 },
+ 'texture_2d<f32>': { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ 'texture_2d_array<f32>': {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_3d<f32>': { coordsArgType: Type.vec3f, offsetArgType: Type.vec3i },
+ 'texture_cube<f32>': { coordsArgType: Type.vec3f },
+ 'texture_cube_array<f32>': { coordsArgType: Type.vec3f, hasArrayIndexArg: true },
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSample(t, s, ${coordWGSL}${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureSampleParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSample(t, s, ${coordWGSL}, ${arrayWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSample(t, s, ${coordWGSL}${arrayWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureSample(t, s, ${coordWGSL}${arrayWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('only_in_fragment').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that ${builtin} must not be used in a compute or vertex shader.
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('entryPoint', keysOf(kEntryPointsToValidateFragmentOnlyBuiltins)).
+expand('offset', (t) =>
+kValidTextureSampleParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, entryPoint, offset } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const config = kEntryPointsToValidateFragmentOnlyBuiltins[entryPoint];
+ const code = `
+${config.code}
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+
+fn foo() {
+ _ = textureSample(t, s, ${coordWGSL}${arrayWGSL}${offsetWGSL});
+}`;
+ t.expectCompileResult(config.expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.spec.js
new file mode 100644
index 0000000000..0e9df6aeb4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBaseClampToEdge.spec.js
@@ -0,0 +1,54 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleBaseClampToEdge';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleBaseClampToEdge coords parameter must be correct type
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kTextureSampleBaseClampToEdgeTextureTypes = ['texture_2d<f32>', 'texture_external'];
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebaseclamptoedge').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureSampleBaseClampToEdgeTextureTypes).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, coordType, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const coordWGSL = coordArgType.create(value).wgsl();
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleBaseClampToEdge(t, s, ${coordWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, Type.vec2f);
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBias.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBias.spec.js
new file mode 100644
index 0000000000..712e405b93
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleBias.spec.js
@@ -0,0 +1,309 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleBias';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleBias coords parameter must be correct type
+* test textureSampleBias array_index parameter must be correct type
+* test textureSampleBias bias parameter must be correct type
+* test textureSampleBias bias parameter must be between -16.0 and 15.99 inclusive if it's a constant
+* test textureSampleBias offset parameter must be correct type
+* test textureSampleBias offset parameter must be a const-expression
+* test textureSampleBias offset parameter must be between -8 and +7 inclusive
+
+note: uniformity validation is covered in src/webgpu/shader/validation/uniformity/uniformity.spec.ts
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType,
+ scalarTypeOf,
+ isFloatType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { kEntryPointsToValidateFragmentOnlyBuiltins } from './shader_stage_utils.js';
+
+
+
+
+
+
+
+const kValidTextureSampleBiasParameterTypes = {
+ 'texture_2d<f32>': { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ 'texture_2d_array<f32>': {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_3d<f32>': { coordsArgType: Type.vec3f, offsetArgType: Type.vec3i },
+ 'texture_cube<f32>': { coordsArgType: Type.vec3f },
+ 'texture_cube_array<f32>': { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleBiasParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebias').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleBiasParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleBias(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebias').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleBiasParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleBias(t, s, ${coordWGSL}, ${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('bias_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebias').
+desc(
+ `
+Validates that only incorrect bias arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType).
+combine('biasType', keysOf(kValuesTypes)).
+beginSubcases()
+// The spec mentions limits of > -16 and < 15.99 so pass some values around there
+// No error is mentioned for out of range values so make sure no error is generated.
+.combine('value', [-17, -16, -8, 0, 7, 15.99, 16])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.biasType]) || t.value >= 0)
+// filter out non-integer values passed to integer types.
+.filter((t) => Number.isInteger(t.value) || isFloatType(scalarTypeOf(kValuesTypes[t.biasType]))).
+expand('offset', (t) =>
+kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, biasType, value, offset } = t.params;
+ const biasArgType = kValuesTypes[biasType];
+ const args = [biasArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const biasWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleBias(t, s, ${coordWGSL}${arrayWGSL}, ${biasWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(biasArgType, Type.f32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebias').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleBias(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplebias').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureSampleBias(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('only_in_fragment').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that ${builtin} must not be used in a compute or vertex shader.
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('entryPoint', keysOf(kEntryPointsToValidateFragmentOnlyBuiltins)).
+expand('offset', (t) =>
+kValidTextureSampleBiasParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, entryPoint, offset } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleBiasParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const config = kEntryPointsToValidateFragmentOnlyBuiltins[entryPoint];
+ const code = `
+${config.code}
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+
+fn foo() {
+ _ = textureSampleBias(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+}`;
+ t.expectCompileResult(config.expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompare.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompare.spec.js
new file mode 100644
index 0000000000..a1d06bb341
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompare.spec.js
@@ -0,0 +1,308 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleCompare';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleCompare coords parameter must be correct type
+* test textureSampleCompare array_index parameter must be correct type
+* test textureSampleCompare depth_ref parameter must be correct type
+* test textureSampleCompare offset parameter must be correct type
+* test textureSampleCompare offset parameter must be a const-expression
+* test textureSampleCompare offset parameter must be between -8 and +7 inclusive
+* test textureSample not usable in a compute or vertex shader
+
+note: uniformity validation is covered in src/webgpu/shader/validation/uniformity/uniformity.spec.ts
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import { kEntryPointsToValidateFragmentOnlyBuiltins } from './shader_stage_utils.js';
+
+
+
+
+
+
+
+const kValidTextureSampleCompareParameterTypes = {
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleCompareParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecompare').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleCompareParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureSampleCompare(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecompare').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleCompareParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureSampleCompare(t, s, ${coordWGSL}, ${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('depth_ref_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecompare').
+desc(
+ `
+Validates that only incorrect depth_ref arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('depthRefType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.depthRefType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, depthRefType, value, offset } = t.params;
+ const depthRefArgType = kValuesTypes[depthRefType];
+ const args = [depthRefArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const depthRefWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureSampleCompare(t, s, ${coordWGSL}${arrayWGSL}, ${depthRefWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(depthRefArgType, Type.f32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecompare').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ _ = textureSampleCompare(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecompare').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType?.create(0).wgsl()};
+ _ = textureSampleCompare(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('only_in_fragment').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesample').
+desc(
+ `
+Validates that ${builtin} must not be used in a compute or vertex shader.
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('entryPoint', keysOf(kEntryPointsToValidateFragmentOnlyBuiltins)).
+expand('offset', (t) =>
+kValidTextureSampleCompareParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, entryPoint, offset } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleCompareParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const config = kEntryPointsToValidateFragmentOnlyBuiltins[entryPoint];
+ const code = `
+${config.code}
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+
+fn foo() {
+ _ = textureSampleCompare(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+}`;
+ t.expectCompileResult(config.expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel.spec.js
new file mode 100644
index 0000000000..baa741204b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel.spec.js
@@ -0,0 +1,268 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleCompareLevel';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleCompareLevel coords parameter must be correct type
+* test textureSampleCompareLevel array_index parameter must be correct type
+* test textureSampleCompareLevel depth_ref parameter must be correct type
+* test textureSampleCompareLevel offset parameter must be correct type
+* test textureSampleCompareLevel offset parameter must be a const-expression
+* test textureSampleCompareLevel offset parameter must be between -8 and +7 inclusive
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+
+
+
+
+
+
+const kValidTextureSampleCompareLevelParameterTypes =
+
+{
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleCompareLevelParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecomparelevel').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleCompareLevelParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleCompareLevelParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleCompareLevel(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecomparelevel').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleCompareLevelParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } =
+ kValidTextureSampleCompareLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleCompareLevel(t, s, ${coordWGSL}, ${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('depth_ref_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecomparelevel').
+desc(
+ `
+Validates that only incorrect depth_ref arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('depthRefType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.depthRefType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleCompareLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, depthRefType, value, offset } = t.params;
+ const depthRefArgType = kValuesTypes[depthRefType];
+ const args = [depthRefArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleCompareLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const depthRefWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleCompareLevel(t, s, ${coordWGSL}${arrayWGSL}, ${depthRefWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(depthRefArgType, Type.f32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecomparelevel').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleCompareLevelParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleCompareLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleCompareLevel(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplecomparelevel').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleCompareLevelParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleCompareLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler_comparison;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType?.create(0).wgsl()};
+ let v = textureSampleCompareLevel(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleGrad.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleGrad.spec.js
new file mode 100644
index 0000000000..c7b3843f9b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleGrad.spec.js
@@ -0,0 +1,317 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleGrad';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleGrad coords parameter must be correct type
+* test textureSampleGrad array_index parameter must be correct type
+* test textureSampleGrad ddX parameter must be correct type
+* test textureSampleGrad ddY parameter must be correct type
+* test textureSampleGrad coords parameter must be correct type
+* test textureSampleGrad offset parameter must be correct type
+* test textureSampleGrad offset parameter must be a const-expression
+* test textureSampleGrad offset parameter must be between -8 and +7 inclusive
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+// Note: ddX and ddy parameter types match coords so we'll use coordsArgType for ddX and ddY.
+
+
+
+
+
+
+const kValidTextureSampleGradParameterTypes = {
+ 'texture_2d<f32>': {
+ coordsArgType: Type.vec2f,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_2d_array<f32>': {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_3d<f32>': { coordsArgType: Type.vec3f, offsetArgType: Type.vec3i },
+ 'texture_cube<f32>': { coordsArgType: Type.vec3f },
+ 'texture_cube_array<f32>': { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleGradParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleGradParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleGradParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const ddWGSL = coordsRequiredType.create(0).wgsl();
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleGrad(t, s, ${coordWGSL}${arrayWGSL}, ${ddWGSL}, ${ddWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleGradParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureSampleGradParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const ddWGSL = coordsArgType.create(0).wgsl();
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleGrad(t, s, ${coordWGSL}, ${arrayWGSL}, ${ddWGSL}, ${ddWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('ddX_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only incorrect ddX arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('ddxType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.ddxType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, ddxType, value, offset } = t.params;
+ const ddxArgType = kValuesTypes[ddxType];
+ const args = [ddxArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleGradParameterTypes[textureType];
+
+ const ddxRequiredType = coordsArgType;
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const ddXWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const ddYWGSL = coordsArgType.create(0).wgsl();
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleGrad(t, s, ${coordWGSL}${arrayWGSL}, ${ddXWGSL}, ${ddYWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(ddxArgType, ddxRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('ddY_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only incorrect ddY arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('ddyType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.ddyType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType ? [false, true] : [false]
+)
+).
+fn((t) => {
+ const { textureType, ddyType, value, offset } = t.params;
+ const ddyArgType = kValuesTypes[ddyType];
+ const args = [ddyArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleGradParameterTypes[textureType];
+
+ const ddyRequiredType = coordsArgType;
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const ddXWGSL = coordsArgType.create(0).wgsl();
+ const ddYWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleGrad(t, s, ${coordWGSL}${arrayWGSL}, ${ddXWGSL}, ${ddYWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(ddyArgType, ddyRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleGradParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const ddWGSL = coordsArgType.create(0).wgsl();
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleGrad(t, s, ${coordWGSL}${arrayWGSL}, ${ddWGSL}, ${ddWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplegrad').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleGradParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleGradParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const ddWGSL = coordsArgType.create(0).wgsl();
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureSampleGrad(t, s, ${coordWGSL}${arrayWGSL}, ${ddWGSL}, ${ddWGSL}, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleLevel.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleLevel.spec.js
new file mode 100644
index 0000000000..cf18cf2f7b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureSampleLevel.spec.js
@@ -0,0 +1,282 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureSampleLevel';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureSampleLevel coords parameter must be correct type
+* test textureSampleLevel array_index parameter must be correct type
+* test textureSampleLevel level parameter must be correct type
+* test textureSampleLevel offset parameter must be correct type
+* test textureSampleLevel offset parameter must be a const-expression
+* test textureSampleLevel offset parameter must be between -8 and +7 inclusive
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+
+
+
+
+
+
+
+const kValidTextureSampleLevelParameterTypes = {
+ 'texture_2d<f32>': { coordsArgType: Type.vec2f, levelIsF32: true, offsetArgType: Type.vec2i },
+ 'texture_2d_array<f32>': {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ levelIsF32: true,
+ offsetArgType: Type.vec2i
+ },
+ 'texture_3d<f32>': { coordsArgType: Type.vec3f, levelIsF32: true, offsetArgType: Type.vec3i },
+ 'texture_cube<f32>': { coordsArgType: Type.vec3f, levelIsF32: true },
+ 'texture_cube_array<f32>': {
+ coordsArgType: Type.vec3f,
+ hasArrayIndexArg: true,
+ levelIsF32: true
+ },
+ texture_depth_2d: { coordsArgType: Type.vec2f, offsetArgType: Type.vec2i },
+ texture_depth_2d_array: {
+ coordsArgType: Type.vec2f,
+ hasArrayIndexArg: true,
+ offsetArgType: Type.vec2i
+ },
+ texture_depth_cube: { coordsArgType: Type.vec3f },
+ texture_depth_cube_array: { coordsArgType: Type.vec3f, hasArrayIndexArg: true }
+};
+
+const kTextureTypes = keysOf(kValidTextureSampleLevelParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplelevel').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureSampleLevelParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, coordType, offset, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const {
+ offsetArgType,
+ coordsArgType: coordsRequiredType,
+ hasArrayIndexArg
+ } = kValidTextureSampleLevelParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = offset ? `, ${offsetArgType?.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleLevel(t, s, ${coordWGSL}${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = isConvertible(coordArgType, coordsRequiredType);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplelevel').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureSampleLevelParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value, offset } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgType, offsetArgType } = kValidTextureSampleLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleLevel(t, s, ${coordWGSL}, ${arrayWGSL}, 0${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('level_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplelevel').
+desc(
+ `
+Validates that only incorrect level arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('levelType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.levelType]) || t.value >= 0).
+expand('offset', (t) =>
+kValidTextureSampleLevelParameterTypes[t.textureType].offsetArgType ?
+[false, true] :
+[false]
+)
+).
+fn((t) => {
+ const { textureType, levelType, value, offset } = t.params;
+ const levelArgType = kValuesTypes[levelType];
+ const args = [levelArgType.create(value)];
+ const { coordsArgType, hasArrayIndexArg, offsetArgType, levelIsF32 } =
+ kValidTextureSampleLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const levelWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const offsetWGSL = offset ? `, ${offsetArgType.create(0).wgsl()}` : '';
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleLevel(t, s, ${coordWGSL}${arrayWGSL}, ${levelWGSL}${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = levelIsF32 ?
+ isConvertible(levelArgType, Type.f32) :
+ isConvertible(levelArgType, Type.i32) || isConvertible(levelArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplelevel').
+desc(
+ `
+Validates that only incorrect offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleLevelParameterTypes[t.textureType].offsetArgType).
+combine('offsetType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.offsetType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, offsetType, value } = t.params;
+ const offsetArgType = kValuesTypes[offsetType];
+ const args = [offsetArgType.create(value)];
+ const {
+ coordsArgType,
+ hasArrayIndexArg,
+ offsetArgType: offsetRequiredType
+ } = kValidTextureSampleLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@fragment fn fs() -> @location(0) vec4f {
+ let v = textureSampleLevel(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(offsetArgType, offsetRequiredType) && value >= -8 && value <= 7;
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('offset_argument,non_const').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturesamplelevel').
+desc(
+ `
+Validates that only non-const offset arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('varType', ['c', 'u', 'l'])
+// filter out types with no offset
+.filter((t) => !!kValidTextureSampleLevelParameterTypes[t.textureType].offsetArgType)
+).
+fn((t) => {
+ const { textureType, varType } = t.params;
+ const { coordsArgType, hasArrayIndexArg, offsetArgType } =
+ kValidTextureSampleLevelParameterTypes[textureType];
+
+ const coordWGSL = coordsArgType.create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const offsetWGSL = `${offsetArgType}(${varType})`;
+
+ const code = `
+@group(0) @binding(0) var s: sampler;
+@group(0) @binding(1) var t: ${textureType};
+@group(0) @binding(2) var<uniform> u: ${offsetArgType};
+@fragment fn fs() -> @location(0) vec4f {
+ const c = 1;
+ let l = ${offsetArgType.create(0).wgsl()};
+ let v = textureSampleLevel(t, s, ${coordWGSL}${arrayWGSL}, 0, ${offsetWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess = varType === 'c';
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureStore.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureStore.spec.js
new file mode 100644
index 0000000000..fdc18f5ee6
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/textureStore.spec.js
@@ -0,0 +1,168 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'textureStore';export const description = `
+Validation tests for the ${builtin}() builtin.
+
+* test textureStore coords parameter must be correct type
+* test textureStore array_index parameter must be correct type
+* test textureStore value parameter must be correct type
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import { kAllTextureFormats, kTextureFormatInfo } from '../../../../../format_info.js';
+import {
+ Type,
+ kAllScalarsAndVectors,
+ isConvertible,
+
+
+ isUnsignedType } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kTextureColorTypeToType = {
+ sint: Type.vec4i,
+ uint: Type.vec4u,
+ float: Type.vec4f,
+ 'unfilterable-float': Type.vec4f
+};
+
+
+
+
+
+
+const kValidTextureStoreParameterTypes = {
+ texture_storage_1d: { coordsArgTypes: [Type.i32, Type.u32] },
+ texture_storage_2d: { coordsArgTypes: [Type.vec2i, Type.vec2u] },
+ texture_storage_2d_array: {
+ coordsArgTypes: [Type.vec2i, Type.vec2u],
+ hasArrayIndexArg: true
+ },
+ texture_storage_3d: { coordsArgTypes: [Type.vec3i, Type.vec3u] }
+};
+
+const kTextureTypes = keysOf(kValidTextureStoreParameterTypes);
+const kValuesTypes = objectsToRecord(kAllScalarsAndVectors);
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('coords_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturestore').
+desc(
+ `
+Validates that only incorrect coords arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', keysOf(kValidTextureStoreParameterTypes)).
+combine('coordType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-1, 0, 1])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.coordType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, coordType, value } = t.params;
+ const coordArgType = kValuesTypes[coordType];
+ const { coordsArgTypes, hasArrayIndexArg } = kValidTextureStoreParameterTypes[textureType];
+
+ const coordWGSL = coordArgType.create(value).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const format = 'rgba8unorm';
+ const valueWGSL = 'vec4f(0)';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}<${format},write>;
+@fragment fn fs() -> @location(0) vec4f {
+ textureStore(t, ${coordWGSL}${arrayWGSL}, ${valueWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(coordArgType, coordsArgTypes[0]) ||
+ isConvertible(coordArgType, coordsArgTypes[1]);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('array_index_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturestore').
+desc(
+ `
+Validates that only incorrect array_index arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes)
+// filter out types with no array_index
+.filter((t) => !!kValidTextureStoreParameterTypes[t.textureType].hasArrayIndexArg).
+combine('arrayIndexType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('value', [-9, -8, 0, 7, 8])
+// filter out unsigned types with negative values
+.filter((t) => !isUnsignedType(kValuesTypes[t.arrayIndexType]) || t.value >= 0)
+).
+fn((t) => {
+ const { textureType, arrayIndexType, value } = t.params;
+ const arrayIndexArgType = kValuesTypes[arrayIndexType];
+ const args = [arrayIndexArgType.create(value)];
+ const { coordsArgTypes } = kValidTextureStoreParameterTypes[textureType];
+
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = args.map((arg) => arg.wgsl()).join(', ');
+ const format = 'rgba8unorm';
+ const valueWGSL = 'vec4f(0)';
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}<${format}, write>;
+@fragment fn fs() -> @location(0) vec4f {
+ textureStore(t, ${coordWGSL}, ${arrayWGSL}, ${valueWGSL});
+ return vec4f(0);
+}
+`;
+ const expectSuccess =
+ isConvertible(arrayIndexArgType, Type.i32) || isConvertible(arrayIndexArgType, Type.u32);
+ t.expectCompileResult(expectSuccess, code);
+});
+
+g.test('value_argument').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#texturestore').
+desc(
+ `
+Validates that only incorrect value arguments are rejected by ${builtin}
+`
+).
+params((u) =>
+u.
+combine('textureType', kTextureTypes).
+combine('valueType', keysOf(kValuesTypes)).
+beginSubcases().
+combine('format', kAllTextureFormats)
+// filter to only storage texture formats.
+.filter((t) => !!kTextureFormatInfo[t.format].color?.storage).
+combine('value', [0, 1, 2])
+).
+fn((t) => {
+ const { textureType, valueType, format, value } = t.params;
+ const valueArgType = kValuesTypes[valueType];
+ const args = [valueArgType.create(value)];
+ const { coordsArgTypes, hasArrayIndexArg } = kValidTextureStoreParameterTypes[textureType];
+
+ const coordWGSL = coordsArgTypes[0].create(0).wgsl();
+ const arrayWGSL = hasArrayIndexArg ? ', 0' : '';
+ const valueWGSL = args.map((arg) => arg.wgsl()).join(', ');
+
+ const code = `
+@group(0) @binding(0) var t: ${textureType}<${format}, write>;
+@fragment fn fs() -> @location(0) vec4f {
+ textureStore(t, ${coordWGSL}${arrayWGSL}, ${valueWGSL});
+ return vec4f(0);
+}
+`;
+ const colorType = kTextureFormatInfo[format].color?.type;
+ const requiredValueType = kTextureColorTypeToType[colorType];
+ const expectSuccess = isConvertible(valueArgType, requiredValueType);
+ t.expectCompileResult(expectSuccess, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/trunc.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/trunc.spec.js
new file mode 100644
index 0000000000..a4ce758a7e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/trunc.spec.js
@@ -0,0 +1,94 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const builtin = 'trunc';export const description = `
+Validation tests for the ${builtin}() builtin.
+`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../../common/util/data_tables.js';
+import {
+ Type,
+ kConvertableToFloatScalarsAndVectors,
+ scalarTypeOf } from
+'../../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+import {
+ fullRangeForType,
+ kConstantAndOverrideStages,
+ stageSupportsType,
+ validateConstOrOverrideBuiltinEval } from
+'./const_override_validation.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidArgumentTypes = objectsToRecord(kConvertableToFloatScalarsAndVectors);
+
+g.test('values').
+desc(
+ `
+Validates that constant evaluation and override evaluation of ${builtin}() error on invalid inputs.
+`
+).
+params((u) =>
+u.
+combine('stage', kConstantAndOverrideStages).
+combine('type', keysOf(kValidArgumentTypes)).
+filter((u) => stageSupportsType(u.stage, kValidArgumentTypes[u.type])).
+beginSubcases().
+expand('value', (u) => fullRangeForType(kValidArgumentTypes[u.type]))
+).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kValidArgumentTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const expectedResult = true;
+
+ const type = kValidArgumentTypes[t.params.type];
+ validateConstOrOverrideBuiltinEval(
+ t,
+ builtin,
+ expectedResult,
+ [type.create(t.params.value)],
+ t.params.stage
+ );
+});
+
+const kArgCases = {
+ good: '(1.2)',
+ bad_no_parens: '',
+ // Bad number of args
+ bad_0args: '()',
+ bad_2arg: '(1.2, 2.3)',
+ // Bad value for arg 0
+ bad_0bool: '(false)',
+ bad_0array: '(array(1.1,2.2))',
+ bad_0struct: '(modf(2.2))',
+ bad_0uint: '(1u)',
+ bad_0int: '(1i)',
+ bad_0vec2i: '(vec2i())',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3i: '(vec3i())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4i: '(vec4i())',
+ bad_0vec4u: '(vec4u())'
+};
+
+g.test('args').
+desc(`Test compilation failure of ${builtin} with variously shaped and typed arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.arg === 'good',
+ `const c = ${builtin}${kArgCases[t.params.arg]};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${builtin} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${builtin}${kArgCases['good']}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16float.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16float.spec.js
new file mode 100644
index 0000000000..e72ce1d047
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16float.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'unpack2x16float';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good_u32: '(1u)',
+ good_aint: '(1)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_f16: '(1h)',
+ bad_bool: '(false)',
+ bad_vec2u: '(vec2u())',
+ bad_vec3u: '(vec3u())',
+ bad_vec4u: '(vec4u())',
+ bad_array: '(array(1))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good_u32'];
+const kReturnType = 'vec2f';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg === 'bad_f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let code = '';
+ if (t.params.arg === 'bad_f16') {
+ code += 'enable f16;\n';
+ }
+ code += `const c = ${kFn}${kArgCases[t.params.arg]};`;
+
+ t.expectCompileResult(t.params.arg.startsWith('good'), code);
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type ${kReturnType}`).
+params((u) => u.combine('type', ['vec2u', 'vec2i', 'vec2f', 'vec2h', 'vec4f', 'vec3f', 'f32'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm.spec.js
new file mode 100644
index 0000000000..270dde01e3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16snorm.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'unpack2x16snorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good_u32: '(1u)',
+ good_aint: '(1)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_f16: '(1h)',
+ bad_bool: '(false)',
+ bad_vec2u: '(vec2u())',
+ bad_vec3u: '(vec3u())',
+ bad_vec4u: '(vec4u())',
+ bad_array: '(array(1))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good_u32'];
+const kReturnType = 'vec2f';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg === 'bad_f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let code = '';
+ if (t.params.arg === 'bad_f16') {
+ code += 'enable f16;\n';
+ }
+ code += `const c = ${kFn}${kArgCases[t.params.arg]};`;
+
+ t.expectCompileResult(t.params.arg.startsWith('good'), code);
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type ${kReturnType}`).
+params((u) => u.combine('type', ['vec2u', 'vec2i', 'vec2f', 'vec2h', 'vec4f', 'vec3f', 'f32'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm.spec.js
new file mode 100644
index 0000000000..1f9d08f914
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack2x16unorm.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'unpack2x16unorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good_u32: '(1u)',
+ good_aint: '(1)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_f16: '(1h)',
+ bad_bool: '(false)',
+ bad_vec2u: '(vec2u())',
+ bad_vec3u: '(vec3u())',
+ bad_vec4u: '(vec4u())',
+ bad_array: '(array(1))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good_u32'];
+const kReturnType = 'vec2f';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg === 'bad_f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let code = '';
+ if (t.params.arg === 'bad_f16') {
+ code += 'enable f16;\n';
+ }
+ code += `const c = ${kFn}${kArgCases[t.params.arg]};`;
+
+ t.expectCompileResult(t.params.arg.startsWith('good'), code);
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type ${kReturnType}`).
+params((u) => u.combine('type', ['vec2u', 'vec2i', 'vec2f', 'vec2h', 'vec4f', 'vec3f', 'f32'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm.spec.js
new file mode 100644
index 0000000000..c2e9ccb216
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8snorm.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'unpack4x8snorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good_u32: '(1u)',
+ good_aint: '(1)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_f16: '(1h)',
+ bad_bool: '(false)',
+ bad_vec2u: '(vec2u())',
+ bad_vec3u: '(vec3u())',
+ bad_vec4u: '(vec4u())',
+ bad_array: '(array(1))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good_u32'];
+const kReturnType = 'vec4f';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg === 'bad_f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let code = '';
+ if (t.params.arg === 'bad_f16') {
+ code += 'enable f16;\n';
+ }
+ code += `const c = ${kFn}${kArgCases[t.params.arg]};`;
+
+ t.expectCompileResult(t.params.arg.startsWith('good'), code);
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type ${kReturnType}`).
+params((u) => u.combine('type', ['vec4u', 'vec4i', 'vec4f', 'vec4h', 'vec3f', 'vec2f', 'f32'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm.spec.js
new file mode 100644
index 0000000000..fa8773bfa7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4x8unorm.spec.js
@@ -0,0 +1,62 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/const kFn = 'unpack4x8unorm';export const description = `Validate ${kFn}`;
+import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kArgCases = {
+ good_u32: '(1u)',
+ good_aint: '(1)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_i32: '(1i)',
+ bad_f32: '(1f)',
+ bad_f16: '(1h)',
+ bad_bool: '(false)',
+ bad_vec2u: '(vec2u())',
+ bad_vec3u: '(vec3u())',
+ bad_vec4u: '(vec4u())',
+ bad_array: '(array(1))',
+ bad_struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good_u32'];
+const kReturnType = 'vec4f';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+beforeAllSubcases((t) => {
+ if (t.params.arg === 'bad_f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ let code = '';
+ if (t.params.arg === 'bad_f16') {
+ code += 'enable f16;\n';
+ }
+ code += `const c = ${kFn}${kArgCases[t.params.arg]};`;
+
+ t.expectCompileResult(t.params.arg.startsWith('good'), code);
+});
+
+g.test('return').
+desc(`Test ${kFn} return value type ${kReturnType}`).
+params((u) => u.combine('type', ['vec4u', 'vec4i', 'vec4f', 'vec4h', 'vec3f', 'vec2f', 'f32'])).
+fn((t) => {
+ t.expectCompileResult(
+ t.params.type === kReturnType,
+ `const c: ${t.params.type} = ${kFn}${kGoodArgs};`
+ );
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xI8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xI8.spec.js
new file mode 100644
index 0000000000..5d7b58cdea
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xI8.spec.js
@@ -0,0 +1,61 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate unpack4xI8`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'unpack4xI8';
+const kArgCases = {
+ good: '(1u)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4u: '(vec4u())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xU8.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xU8.spec.js
new file mode 100644
index 0000000000..c7c50cc660
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/unpack4xU8.spec.js
@@ -0,0 +1,61 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validate unpack4xU8`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+const kFeature = 'packed_4x8_integer_dot_product';
+const kFn = 'unpack4xU8';
+const kArgCases = {
+ good: '(1u)',
+ bad_0args: '()',
+ bad_2args: '(1u,2u)',
+ bad_0i32: '(1i)',
+ bad_0f32: '(1f)',
+ bad_0bool: '(false)',
+ bad_0vec2u: '(vec2u())',
+ bad_0vec3u: '(vec3u())',
+ bad_0vec4u: '(vec4u())',
+ bad_0array: '(array(1))',
+ bad_0struct: '(modf(1.1))'
+};
+const kGoodArgs = kArgCases['good'];
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('unsupported').
+desc(`Test absence of ${kFn} when ${kFeature} is not supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(false, code);
+});
+
+g.test('supported').
+desc(`Test presence of ${kFn} when ${kFeature} is supported.`).
+params((u) => u.combine('requires', [false, true])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const preamble = t.params.requires ? `requires ${kFeature}; ` : '';
+ const code = `${preamble}const c = ${kFn}${kGoodArgs};`;
+ t.expectCompileResult(true, code);
+});
+
+g.test('args').
+desc(`Test compilation failure of ${kFn} with various numbers of and types of arguments`).
+params((u) => u.combine('arg', keysOf(kArgCases))).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ t.expectCompileResult(t.params.arg === 'good', `const c = ${kFn}${kArgCases[t.params.arg]};`);
+});
+
+g.test('must_use').
+desc(`Result of ${kFn} must be used`).
+params((u) => u.combine('use', [true, false])).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported(kFeature);
+ const use_it = t.params.use ? '_ = ' : '';
+ t.expectCompileResult(t.params.use, `fn f() { ${use_it}${kFn}${kGoodArgs}; }`);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad.spec.js
new file mode 100644
index 0000000000..a061fd1603
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/call/builtin/workgroupUniformLoad.spec.js
@@ -0,0 +1,122 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for the workgroupUniformLoad() builtin.
+`;import { makeTestGroup } from '../../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kEntryPoints = {
+ none: { supportsBarrier: true, code: `` },
+ compute: {
+ supportsBarrier: true,
+ code: `@compute @workgroup_size(1)
+fn main() {
+ foo();
+}`
+ },
+ vertex: {
+ supportsBarrier: false,
+ code: `@vertex
+fn main() -> @builtin(position) vec4f {
+ foo();
+ return vec4f();
+}`
+ },
+ fragment: {
+ supportsBarrier: false,
+ code: `@fragment
+fn main() {
+ foo();
+}`
+ },
+ compute_and_fragment: {
+ supportsBarrier: false,
+ code: `@compute @workgroup_size(1)
+fn main1() {
+ foo();
+}
+
+@fragment
+fn main2() {
+ foo();
+}
+`
+ },
+ fragment_without_call: {
+ supportsBarrier: true,
+ code: `@fragment
+fn main() {
+}
+`
+ }
+};
+
+g.test('only_in_compute').
+specURL('https://www.w3.org/TR/WGSL/#sync-builtin-functions').
+desc(
+ `
+Synchronization functions must only be used in the compute shader stage.
+`
+).
+params((u) =>
+u.
+combine('entry_point', keysOf(kEntryPoints)).
+combine('call', ['bar()', 'workgroupUniformLoad(&wgvar)'])
+).
+fn((t) => {
+ const config = kEntryPoints[t.params.entry_point];
+ const code = `
+${config.code}
+
+var<workgroup> wgvar : u32;
+
+fn bar() -> u32 {
+ return 0;
+}
+
+fn foo() {
+ _ = ${t.params.call};
+}`;
+ t.expectCompileResult(t.params.call === 'bar()' || config.supportsBarrier, code);
+});
+
+// A list of types that contains atomics, with a single control case.
+const kAtomicTypes = [
+'bool', // control case
+'atomic<i32>',
+'atomic<u32>',
+'array<atomic<i32>, 4>',
+'AtomicStruct'];
+
+
+g.test('no_atomics').
+desc(
+ `
+The argument passed to workgroupUniformLoad cannot contain any atomic types.
+
+NOTE: Various other valid types are tested via execution tests, so we only check for invalid types here.
+`
+).
+params((u) =>
+u.combine('type', kAtomicTypes).combine('call', ['bar()', 'workgroupUniformLoad(&wgvar)'])
+).
+fn((t) => {
+ const code = `
+struct AtomicStruct {
+ a : atomic<u32>
+}
+
+var<workgroup> wgvar : ${t.params.type};
+
+fn bar() -> bool {
+ return true;
+}
+
+fn foo() {
+ _ = ${t.params.call};
+}`;
+ t.expectCompileResult(t.params.type === 'bool' || t.params.call === 'bar()', code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/overload_resolution.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/overload_resolution.spec.js
new file mode 100644
index 0000000000..9520d2b251
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/overload_resolution.spec.js
@@ -0,0 +1,268 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation tests for implicit conversions and overload resolution`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../common/util/data_tables.js';
+import {
+ kAllNumericScalarsAndVectors,
+ isConvertible,
+ VectorType } from
+'../../../util/conversion.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+
+
+
+
+
+
+const kImplicitConversionCases = {
+ absint_to_bool: {
+ expr: `any(1)`,
+ valid: false
+ },
+ absint_to_u32: {
+ expr: `1 == 1u`,
+ valid: true
+ },
+ absint_to_i32: {
+ expr: `1 == 1i`,
+ valid: true
+ },
+ absint_to_f32: {
+ expr: `1 == 1f`,
+ valid: true
+ },
+ absint_to_f16: {
+ expr: `1 == 1h`,
+ valid: true,
+ f16: true
+ },
+ absfloat_to_bool: {
+ expr: `any(1.0)`,
+ valid: false
+ },
+ absfloat_to_u32: {
+ expr: `1.0 == 1u`,
+ valid: false
+ },
+ absfloat_to_i32: {
+ expr: `1.0 == 1i`,
+ valid: false
+ },
+ absfloat_to_f32: {
+ expr: `1.0 == 1f`,
+ valid: true
+ },
+ absfloat_to_f16: {
+ expr: `1.0 == 1h`,
+ valid: true,
+ f16: true
+ },
+ vector_absint_to_bool: {
+ expr: `any(vec2(1))`,
+ valid: false
+ },
+ vector_absint_to_u32: {
+ expr: `all(vec2(1) == vec2u(1u))`,
+ valid: true
+ },
+ vector_absint_to_i32: {
+ expr: `all(vec3(1) == vec3i(1i))`,
+ valid: true
+ },
+ vector_absint_to_f32: {
+ expr: `all(vec4(1) == vec4f(1f))`,
+ valid: true
+ },
+ vector_absint_to_f16: {
+ expr: `all(vec2(1) == vec2h(1h))`,
+ valid: true,
+ f16: true
+ },
+ vector_absfloat_to_bool: {
+ expr: `any(vec2(1.0))`,
+ valid: false
+ },
+ vector_absfloat_to_u32: {
+ expr: `all(vec2(1.0) == vec2u(1u))`,
+ valid: false
+ },
+ vector_absfloat_to_i32: {
+ expr: `all(vec3(1.0) == vec2i(1i))`,
+ valid: false
+ },
+ vector_absfloat_to_f32: {
+ expr: `all(vec4(1.0) == vec4f(1f))`,
+ valid: true
+ },
+ vector_absfloat_to_f16: {
+ expr: `all(vec2(1.0) == vec2h(1h))`,
+ valid: true,
+ f16: true
+ },
+ vector_swizzle_integer: {
+ expr: `vec2(1).x == 1i`,
+ valid: true
+ },
+ vector_swizzle_float: {
+ expr: `vec2(1).y == 1f`,
+ valid: true
+ },
+ vector_default_ctor_integer: {
+ expr: `all(vec3().xy == vec2i())`,
+ valid: true
+ },
+ vector_default_ctor_abstract: {
+ expr: `all(vec3().xy == vec2())`,
+ valid: true
+ },
+ vector_swizzle_abstract: {
+ expr: `vec4(1f).x == 1`,
+ valid: true
+ },
+ vector_abstract_to_integer: {
+ expr: `all(vec4(1) == vec4i(1))`,
+ valid: true
+ },
+ vector_wrong_result_i32: {
+ expr: `vec2(1,2f).x == 1i`,
+ valid: false
+ },
+ vector_wrong_result_f32: {
+ expr: `vec2(1,2i).y == 2f`,
+ valid: false
+ },
+ vector_wrong_result_splat: {
+ expr: `vec2(1.0).x == 1i`,
+ valid: false
+ },
+ array_absint_to_bool: {
+ expr: `any(array(1)[0])`,
+ valid: false
+ },
+ array_absint_to_u32: {
+ expr: `array(1)[0] == array<u32,1>(1u)[0]`,
+ valid: true
+ },
+ array_absint_to_i32: {
+ expr: `array(1)[0] == array<i32,1>(1i)[0]`,
+ valid: true
+ },
+ array_absint_to_f32: {
+ expr: `array(1)[0] == array<f32,1>(1f)[0]`,
+ valid: true
+ },
+ array_absint_to_f16: {
+ expr: `array(1)[0] == array<f16,1>(1h)[0]`,
+ valid: true,
+ f16: true
+ },
+ array_absfloat_to_bool: {
+ expr: `any(array(1.0)[0])`,
+ valid: false
+ },
+ array_absfloat_to_u32: {
+ expr: `array(1.0)[0] == array<u32,1>(1u)[0]`,
+ valid: false
+ },
+ array_absfloat_to_i32: {
+ expr: `array(1.0)[0] == array<i32,1>(1i)[0]`,
+ valid: false
+ },
+ array_absfloat_to_f32: {
+ expr: `array(1.0)[0] == array<f32,1>(1f)[0]`,
+ valid: true
+ },
+ array_absfloat_to_f16: {
+ expr: `array(1.0)[0] == array<f16,1>(1h)[0]`,
+ valid: true,
+ f16: true
+ },
+ mat2x2_index_absint: {
+ expr: `all(mat2x2(1,2,3,4)[0] == vec2(1,2))`,
+ valid: true
+ },
+ mat2x2_index_absfloat: {
+ expr: `all(mat2x2(1,2,3,4)[1] == vec2(3.0,4.0))`,
+ valid: true
+ },
+ mat2x2_index_float: {
+ expr: `all(mat2x2(0,0,0,0)[1] == vec2f())`,
+ valid: true
+ },
+ mat2x2_wrong_result: {
+ expr: `all(mat2x2(0f,0,0,0)[0] == vec2h())`,
+ valid: false,
+ f16: true
+ }
+};
+
+g.test('implicit_conversions').
+desc('Test implicit conversions').
+params((u) => u.combine('case', keysOf(kImplicitConversionCases))).
+beforeAllSubcases((t) => {
+ if (kImplicitConversionCases[t.params.case].f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const testcase = kImplicitConversionCases[t.params.case];
+ const code = `${testcase.f16 ? 'enable f16;' : ''}
+ const_assert ${testcase.expr};`;
+ t.expectCompileResult(testcase.valid, code);
+});
+
+const kTypes = objectsToRecord(kAllNumericScalarsAndVectors);
+const kTypeKeys = keysOf(kTypes);
+
+g.test('overload_resolution').
+desc('Test overload resolution').
+params((u) =>
+u.
+combine('arg1', kTypeKeys).
+combine('arg2', kTypeKeys).
+beginSubcases().
+combine('op', ['min', 'max']).
+filter((t) => {
+ if (t.arg1 === t.arg2) {
+ return false;
+ }
+ const t1 = kTypes[t.arg1];
+ const t2 = kTypes[t.arg2];
+ const t1IsVector = t1 instanceof VectorType;
+ const t2IsVector = t2 instanceof VectorType;
+ if (t1IsVector !== t2IsVector) {
+ return false;
+ }
+ if (t1IsVector && t2IsVector && t1.size !== t2.size) {
+ return false;
+ }
+ return true;
+})
+).
+beforeAllSubcases((t) => {
+ const t1 = kTypes[t.params.arg1];
+ const t2 = kTypes[t.params.arg2];
+ if (t1.requiresF16() || t2.requiresF16()) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const t1 = kTypes[t.params.arg1];
+ const t2 = kTypes[t.params.arg2];
+ const resTy = isConvertible(t1, t2) ? t2 : t1;
+ const enable = `${t1.requiresF16() || t2.requiresF16() ? 'enable f16;' : ''}`;
+ const min = 50;
+ const max = 100;
+ const res = t.params.op === 'min' ? min : max;
+ const v1 = t1.create(min).wgsl();
+ const v2 = t2.create(max).wgsl();
+ const resV = resTy.create(res).wgsl();
+ const expr = `${t.params.op}(${v1}, ${v2}) == ${resV}`;
+ const assertExpr = t1 instanceof VectorType ? `all(${expr})` : expr;
+ const code = `${enable}
+ const_assert ${assertExpr};`;
+ t.expectCompileResult(isConvertible(t1, t2) || isConvertible(t2, t1), code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/precedence.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/precedence.spec.js
new file mode 100644
index 0000000000..36903dded4
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/precedence.spec.js
@@ -0,0 +1,188 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for operator precedence.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// Bit set for the binary operator groups.
+const kMultiplicative = 1 << 0;
+const kAdditive = 1 << 1;
+const kShift = 1 << 2;
+const kRelational = 1 << 3;
+const kBinaryAnd = 1 << 4;
+const kBinaryXor = 1 << 5;
+const kBinaryOr = 1 << 6;
+const kLogical = 1 << 7;
+
+// Set of other operators that each operator can precede without any parentheses.
+const kCanPrecedeWithoutParens = {};
+kCanPrecedeWithoutParens[kMultiplicative] = kMultiplicative | kAdditive | kRelational;
+kCanPrecedeWithoutParens[kAdditive] = kMultiplicative | kAdditive | kRelational;
+kCanPrecedeWithoutParens[kShift] = kRelational | kLogical;
+kCanPrecedeWithoutParens[kRelational] = kMultiplicative | kAdditive | kShift | kLogical;
+kCanPrecedeWithoutParens[kBinaryAnd] = kBinaryAnd;
+kCanPrecedeWithoutParens[kBinaryXor] = kBinaryXor;
+kCanPrecedeWithoutParens[kBinaryOr] = kBinaryOr;
+kCanPrecedeWithoutParens[kLogical] = kRelational;
+
+// The list of binary operators.
+
+
+
+
+const kBinaryOperators = {
+ mul: { op: '*', group: kMultiplicative },
+ div: { op: '/', group: kMultiplicative },
+ mod: { op: '%', group: kMultiplicative },
+
+ add: { op: '+', group: kAdditive },
+ sub: { op: '-', group: kAdditive },
+
+ shl: { op: '<<', group: kShift },
+ shr: { op: '>>', group: kShift },
+
+ lt: { op: '<', group: kRelational },
+ gt: { op: '>', group: kRelational },
+ le: { op: '<=', group: kRelational },
+ ge: { op: '>=', group: kRelational },
+ eq: { op: '==', group: kRelational },
+ ne: { op: '!=', group: kRelational },
+
+ bin_and: { op: '&', group: kBinaryAnd },
+ bin_xor: { op: '^', group: kBinaryXor },
+ bin_or: { op: '|', group: kBinaryOr },
+
+ log_and: { op: '&&', group: kLogical },
+ log_or: { op: '||', group: kLogical }
+};
+
+g.test('binary_requires_parentheses').
+desc(
+ `
+ Validates that certain binary operators require parentheses to bind correctly.
+ `
+).
+params((u) =>
+u.
+combine('op1', keysOf(kBinaryOperators)).
+combine('op2', keysOf(kBinaryOperators)).
+filter((p) => {
+ // Skip expressions that would parse as template lists.
+ if (p.op1 === 'lt' && ['gt', 'ge', 'shr'].includes(p.op2)) {
+ return false;
+ }
+ // Only combine logical operators with relational operators.
+ if (kBinaryOperators[p.op1].group === kLogical) {
+ return kBinaryOperators[p.op2].group === kRelational;
+ }
+ if (kBinaryOperators[p.op2].group === kLogical) {
+ return kBinaryOperators[p.op1].group === kRelational;
+ }
+ return true;
+})
+).
+fn((t) => {
+ const op1 = kBinaryOperators[t.params.op1];
+ const op2 = kBinaryOperators[t.params.op2];
+ const code = `
+var<private> a : ${op1.group === kLogical ? 'bool' : 'u32'};
+var<private> b : u32;
+var<private> c : ${op2.group === kLogical ? 'bool' : 'u32'};
+fn foo() {
+ let foo = a ${op1.op} b ${op2.op} c;
+}
+`;
+
+ const valid = (kCanPrecedeWithoutParens[op1.group] & op2.group) !== 0;
+ t.expectCompileResult(valid, code);
+});
+
+g.test('mixed_logical_requires_parentheses').
+desc(
+ `
+ Validates that mixed logical operators require parentheses to bind correctly.
+ `
+).
+params((u) =>
+u.
+combine('op1', keysOf(kBinaryOperators)).
+combine('op2', keysOf(kBinaryOperators)).
+combine('parens', ['none', 'left', 'right']).
+filter((p) => {
+ const group1 = kBinaryOperators[p.op1].group;
+ const group2 = kBinaryOperators[p.op2].group;
+ return group1 === kLogical && group2 === kLogical;
+})
+).
+fn((t) => {
+ const op1 = kBinaryOperators[t.params.op1];
+ const op2 = kBinaryOperators[t.params.op2];
+ let expr = `a ${op1.op} b ${op2.op} c;`;
+ if (t.params.parens === 'left') {
+ expr = `(a ${op1.op} b) ${op2.op} c;`;
+ } else if (t.params.parens === 'right') {
+ expr = `a ${op1.op} (b ${op2.op} c);`;
+ }
+ const code = `
+var<private> a : bool;
+var<private> b : bool;
+var<private> c : bool;
+fn foo() {
+ let bar = ${expr};
+}
+`;
+ const valid = t.params.parens !== 'none' || t.params.op1 === t.params.op2;
+ t.expectCompileResult(valid, code);
+});
+
+// The list of miscellaneous other test cases.
+
+
+
+
+const kExpressions = {
+ neg_member: { expr: '- str . a', result: true },
+ comp_member: { expr: '~ str . a', result: true },
+ addr_member: { expr: '& str . a', result: true },
+ log_and_member: { expr: 'false && str . b', result: true },
+ log_or_member: { expr: 'false || str . b', result: true },
+ and_addr: { expr: ' v & &str .a', result: false },
+ and_addr_paren: { expr: 'v & (&str).a', result: true },
+ deref_member: { expr: ' * ptr_str . a', result: false },
+ deref_member_paren: { expr: '(* ptr_str) . a', result: true },
+ deref_idx: { expr: ' * ptr_vec [0]', result: false },
+ deref_idx_paren: { expr: '(* ptr_vec) [1]', result: true }
+};
+
+g.test('other').
+desc(
+ `
+ Test that other operator precedence rules are correctly implemented.
+ `
+).
+params((u) => u.combine('expr', keysOf(kExpressions))).
+fn((t) => {
+ const expr = kExpressions[t.params.expr];
+ const wgsl = `
+ struct S {
+ a: i32,
+ b: bool,
+ }
+
+ fn main() {
+ var v = 42;
+ var vec = vec4();
+ var str = S(42, false);
+ let ptr_vec = &vec;
+ let ptr_str = &str;
+
+ let foo = ${expr.expr};
+ }
+ `;
+
+ t.expectCompileResult(expr.result, wgsl);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/address_of_and_indirection.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/address_of_and_indirection.spec.js
new file mode 100644
index 0000000000..b783220b30
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/address_of_and_indirection.spec.js
@@ -0,0 +1,243 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for unary address-of and indirection (dereference)
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kAddressSpaces = ['function', 'private', 'workgroup', 'uniform', 'storage'];
+const kAccessModes = ['read', 'read_write'];
+const kStorageTypes = ['bool', 'u32', 'i32', 'f32', 'f16'];
+const kCompositeTypes = ['array', 'struct', 'vec', 'mat'];
+const kDerefTypes = {
+ deref_address_of_identifier: {
+ wgsl: `(*(&a))`,
+ requires_pointer_composite_access: false
+ },
+ deref_pointer: {
+ wgsl: `(*p)`,
+ requires_pointer_composite_access: false
+ },
+ address_of_identifier: {
+ wgsl: `(&a)`,
+ requires_pointer_composite_access: true
+ },
+ pointer: {
+ wgsl: `p`,
+ requires_pointer_composite_access: true
+ }
+};
+
+g.test('basic').
+desc(
+ `Validates address-of (&) every supported variable type, ensuring the type is correct by
+ assigning to an explicitly typed pointer. Also validates dereferencing the reference,
+ ensuring the type is correct by assigning to an explicitly typed variable.`
+).
+params((u) =>
+u.
+combine('addressSpace', kAddressSpaces).
+combine('accessMode', kAccessModes).
+combine('storageType', kStorageTypes).
+combine('derefType', keysOf(kDerefTypes)).
+filter((t) => {
+ if (t.storageType === 'bool') {
+ return t.addressSpace === 'function' || t.addressSpace === 'private';
+ }
+ return true;
+}).
+filter((t) => {
+ // This test does not test composite access
+ return !kDerefTypes[t.derefType].requires_pointer_composite_access;
+})
+).
+beforeAllSubcases((t) => {
+ if (t.params.storageType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+}).
+fn((t) => {
+ const isLocal = t.params.addressSpace === 'function';
+ const deref = kDerefTypes[t.params.derefType];
+ // Only specify access mode for storage buffers
+ const commaAccessMode = t.params.addressSpace === 'storage' ? `, ${t.params.accessMode}` : '';
+
+ let varDecl = '';
+ if (t.params.addressSpace === 'uniform' || t.params.addressSpace === 'storage') {
+ varDecl += '@group(0) @binding(0) ';
+ }
+ varDecl += `var<${t.params.addressSpace}${commaAccessMode}> a : VarType;`;
+
+ const wgsl = `
+ ${t.params.storageType === 'f16' ? 'enable f16;' : ''}
+
+ alias VarType = ${t.params.storageType};
+ alias PtrType = ptr<${t.params.addressSpace}, VarType ${commaAccessMode}>;
+
+ ${isLocal ? '' : varDecl}
+
+ fn foo() {
+ ${isLocal ? varDecl : ''}
+ let p : PtrType = &a;
+ var deref : VarType = ${deref.wgsl};
+ }
+ `;
+
+ t.expectCompileResult(true, wgsl);
+});
+
+g.test('composite').
+desc(
+ `Validates address-of (&) every supported variable type for composite types, ensuring the type
+ is correct by assigning to an explicitly typed pointer. Also validates dereferencing the
+ reference followed by member/index access, ensuring the type is correct by assigning to an
+ explicitly typed variable.`
+).
+params((u) =>
+u.
+combine('addressSpace', kAddressSpaces).
+combine('compositeType', kCompositeTypes).
+combine('storageType', kStorageTypes).
+beginSubcases().
+combine('derefType', keysOf(kDerefTypes)).
+combine('accessMode', kAccessModes).
+filter((t) => {
+ if (t.storageType === 'bool') {
+ return t.addressSpace === 'function' || t.addressSpace === 'private';
+ }
+ return true;
+}).
+filter((t) => {
+ if (t.compositeType === 'mat') {
+ return t.storageType === 'f32' || t.storageType === 'f16';
+ }
+ return true;
+})
+).
+beforeAllSubcases((t) => {
+ if (t.params.storageType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+}).
+fn((t) => {
+ const isLocal = t.params.addressSpace === 'function';
+ const deref = kDerefTypes[t.params.derefType];
+ // Only specify access mode for storage buffers
+ const commaAccessMode = t.params.addressSpace === 'storage' ? `, ${t.params.accessMode}` : '';
+
+ let varDecl = '';
+ if (t.params.addressSpace === 'uniform' || t.params.addressSpace === 'storage') {
+ varDecl += '@group(0) @binding(0) ';
+ }
+ varDecl += `var<${t.params.addressSpace}${commaAccessMode}> a : VarType;`;
+
+ let wgsl = `
+ ${t.params.storageType === 'f16' ? 'enable f16;' : ''}`;
+
+ switch (t.params.compositeType) {
+ case 'array':
+ wgsl += `
+ struct S { @align(16) member : ${t.params.storageType} }
+ alias VarType = array<S, 10>;
+ alias PtrType = ptr<${t.params.addressSpace}, VarType ${commaAccessMode}>;
+ ${isLocal ? '' : varDecl}
+
+ fn foo() {
+ ${isLocal ? varDecl : ''}
+ let p : PtrType = &a;
+ var deref : ${t.params.storageType} = ${deref.wgsl}[0].member;
+ }`;
+ break;
+ case 'struct':
+ wgsl += `
+ struct S { member : ${t.params.storageType} }
+ alias VarType = S;
+ alias PtrType = ptr<${t.params.addressSpace}, VarType ${commaAccessMode}>;
+ ${isLocal ? '' : varDecl}
+
+ fn foo() {
+ ${isLocal ? varDecl : ''}
+ let p : PtrType = &a;
+ var deref : ${t.params.storageType} = ${deref.wgsl}.member;
+ }`;
+ break;
+ case 'vec':
+ wgsl += `
+ alias VarType = vec3<${t.params.storageType}>;
+ alias PtrType = ptr<${t.params.addressSpace}, VarType ${commaAccessMode}>;
+ ${isLocal ? '' : varDecl}
+
+ fn foo() {
+ ${isLocal ? varDecl : ''}
+ let p : PtrType = &a;
+ var deref_member : ${t.params.storageType} = ${deref.wgsl}.x;
+ var deref_index : ${t.params.storageType} = ${deref.wgsl}[0];
+ }`;
+ break;
+ case 'mat':
+ wgsl += `
+ alias VarType = mat2x3<${t.params.storageType}>;
+ alias PtrType = ptr<${t.params.addressSpace}, VarType ${commaAccessMode}>;
+ ${isLocal ? '' : varDecl}
+
+ fn foo() {
+ ${isLocal ? varDecl : ''}
+ let p : PtrType = &a;
+ var deref_vec : vec3<${t.params.storageType}> = ${deref.wgsl}[0];
+ var deref_elem : ${t.params.storageType} = ${deref.wgsl}[0][0];
+ }`;
+ break;
+ }
+
+ let shouldPass = true;
+ if (
+ kDerefTypes[t.params.derefType].requires_pointer_composite_access &&
+ !t.hasLanguageFeature('pointer_composite_access'))
+ {
+ shouldPass = false;
+ }
+
+ t.expectCompileResult(shouldPass, wgsl);
+});
+
+const kInvalidCases = {
+ address_of_let: `
+ let a = 1;
+ let p = &a;`,
+ address_of_texture: `
+ let p = &t;`,
+ address_of_sampler: `
+ let p = &s;`,
+ address_of_function: `
+ let p = &func;`,
+ address_of_vector_elem_via_member: `
+ var a : vec3<f32>();
+ let p = &a.x;`,
+ address_of_vector_elem_via_index: `
+ var a : vec3<f32>();
+ let p = &a[0];`,
+ address_of_matrix_elem: `
+ var a : mat2x3<f32>();
+ let p = &a[0][0];`,
+ deref_non_pointer: `
+ var a = 1;
+ let p = *a;
+ `
+};
+g.test('invalid').
+desc('Test invalid cases of unary address-of and dereference').
+params((u) => u.combine('case', keysOf(kInvalidCases))).
+fn((t) => {
+ const wgsl = `
+ @group(0) @binding(0) var s : sampler;
+ @group(0) @binding(1) var t : texture_2d<f32>;
+ fn func() {}
+ fn main() {
+ ${kInvalidCases[t.params.case]}
+ }
+ `;
+ t.expectCompileResult(false, wgsl);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/arithmetic_negation.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/arithmetic_negation.spec.js
new file mode 100644
index 0000000000..7d323f7bae
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/arithmetic_negation.spec.js
@@ -0,0 +1,114 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for arithmetic negation expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import { kAllScalarsAndVectors, scalarTypeOf, Type } from '../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector numeric negation expressions are accepted for numerical types that are signed.
+ `
+).
+params((u) => u.combine('type', keysOf(kScalarAndVectorTypes)).beginSubcases()).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kScalarAndVectorTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kScalarAndVectorTypes[t.params.type];
+ const elementTy = scalarTypeOf(type);
+ const hasF16 = elementTy === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const rhs = ${type.create(0).wgsl()};
+const foo = -rhs;
+`;
+
+ t.expectCompileResult(elementTy.signed, code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `${e}[0][0]`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&b)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `textureLoad(${e}, vec2(), 0).x`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `textureSampleLevel(t, ${e}, vec2(), 0).x`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.b`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that arithmetic negation expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.combine('type', keysOf(kInvalidTypes)).combine('control', [true, false]).beginSubcases()
+).
+fn((t) => {
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { b : i32 }
+
+var<private> b : i32;
+var<private> m : mat2x2f;
+var<private> arr : array<i32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = -${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/bitwise_complement.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/bitwise_complement.spec.js
new file mode 100644
index 0000000000..5dcc9a42f2
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/bitwise_complement.spec.js
@@ -0,0 +1,114 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for bitwise complement expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import { kAllScalarsAndVectors, scalarTypeOf, Type } from '../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector bitwise complement expressions are only accepted for integers.
+ `
+).
+params((u) => u.combine('type', keysOf(kScalarAndVectorTypes)).beginSubcases()).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kScalarAndVectorTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kScalarAndVectorTypes[t.params.type];
+ const elementTy = scalarTypeOf(type);
+ const hasF16 = elementTy === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const rhs = ${type.create(0).wgsl()};
+const foo = ~rhs;
+`;
+
+ t.expectCompileResult([Type.abstractInt, Type.i32, Type.u32].includes(elementTy), code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `i32(${e}[0][0])`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&u)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `atomicLoad(&${e})`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `i32(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `i32(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.u`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that bitwise complement expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.combine('type', keysOf(kInvalidTypes)).combine('control', [true, false]).beginSubcases()
+).
+fn((t) => {
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { u : u32 }
+
+var<private> u : u32;
+var<private> m : mat2x2f;
+var<private> arr : array<u32, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = ~${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/logical_negation.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/logical_negation.spec.js
new file mode 100644
index 0000000000..acfa6715e7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/expression/unary/logical_negation.spec.js
@@ -0,0 +1,114 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for logical negation expressions.
+`;import { makeTestGroup } from '../../../../../common/framework/test_group.js';
+import { keysOf, objectsToRecord } from '../../../../../common/util/data_tables.js';
+import { kAllScalarsAndVectors, scalarTypeOf, Type } from '../../../../util/conversion.js';
+import { ShaderValidationTest } from '../../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+// A list of scalar and vector types.
+const kScalarAndVectorTypes = objectsToRecord(kAllScalarsAndVectors);
+
+g.test('scalar_vector').
+desc(
+ `
+ Validates that scalar and vector logical negation expressions are only accepted for bool types.
+ `
+).
+params((u) => u.combine('type', keysOf(kScalarAndVectorTypes)).beginSubcases()).
+beforeAllSubcases((t) => {
+ if (scalarTypeOf(kScalarAndVectorTypes[t.params.type]) === Type.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const type = kScalarAndVectorTypes[t.params.type];
+ const elementTy = scalarTypeOf(type);
+ const hasF16 = elementTy === Type.f16;
+ const code = `
+${hasF16 ? 'enable f16;' : ''}
+const rhs = ${type.create(0).wgsl()};
+const foo = !rhs;
+`;
+
+ t.expectCompileResult(elementTy === Type.bool, code);
+});
+
+
+
+
+
+
+
+const kInvalidTypes = {
+ mat2x2f: {
+ expr: 'm',
+ control: (e) => `bool(${e}[0][0])`
+ },
+
+ array: {
+ expr: 'arr',
+ control: (e) => `${e}[0]`
+ },
+
+ ptr: {
+ expr: '(&b)',
+ control: (e) => `*${e}`
+ },
+
+ atomic: {
+ expr: 'a',
+ control: (e) => `bool(atomicLoad(&${e}))`
+ },
+
+ texture: {
+ expr: 't',
+ control: (e) => `bool(textureLoad(${e}, vec2(), 0).x)`
+ },
+
+ sampler: {
+ expr: 's',
+ control: (e) => `bool(textureSampleLevel(t, ${e}, vec2(), 0).x)`
+ },
+
+ struct: {
+ expr: 'str',
+ control: (e) => `${e}.b`
+ }
+};
+
+g.test('invalid_types').
+desc(
+ `
+ Validates that logical negation expressions are never accepted for non-scalar and non-vector types.
+ `
+).
+params((u) =>
+u.combine('type', keysOf(kInvalidTypes)).combine('control', [true, false]).beginSubcases()
+).
+fn((t) => {
+ const type = kInvalidTypes[t.params.type];
+ const expr = t.params.control ? type.control(type.expr) : type.expr;
+ const code = `
+@group(0) @binding(0) var t : texture_2d<f32>;
+@group(0) @binding(1) var s : sampler;
+@group(0) @binding(2) var<storage, read_write> a : atomic<i32>;
+
+struct S { b : bool }
+
+var<private> b : bool;
+var<private> m : mat2x2f;
+var<private> arr : array<bool, 4>;
+var<private> str : S;
+
+@compute @workgroup_size(1)
+fn main() {
+ let foo = !${expr};
+}
+`;
+
+ t.expectCompileResult(t.params.control, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/pointer_composite_access.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/pointer_composite_access.spec.js
new file mode 100644
index 0000000000..50b0696a3a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/pointer_composite_access.spec.js
@@ -0,0 +1,130 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for pointer_composite_access extension
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+function makeSource(module, init_expr, pointer_read_expr) {
+ return `
+ ${module}
+ fn f() {
+ var a = ${init_expr};
+ let p = &a;
+ let r = ${pointer_read_expr};
+ }`;
+}
+
+const kCases = {
+ // Via identifier 'a'
+ array_index_access_via_identifier: {
+ module: '',
+ init_expr: 'array<i32, 3>()',
+ via_deref: '(*(&a))[0]',
+ via_pointer: '(&a)[0]'
+ },
+ vector_index_access_via_identifier: {
+ module: '',
+ init_expr: 'vec3<i32>()',
+ via_deref: '(*(&a))[0]',
+ via_pointer: '(&a)[0]'
+ },
+ vector_member_access_via_identifier: {
+ module: '',
+ init_expr: 'vec3<i32>()',
+ via_deref: '(*(&a)).x',
+ via_pointer: '(&a).x'
+ },
+ matrix_index_access_via_identifier: {
+ module: '',
+ init_expr: 'mat2x3<f32>()',
+ via_deref: '(*(&a))[0]',
+ via_pointer: '(&a)[0]'
+ },
+ struct_member_access_via_identifier: {
+ module: 'struct S { a : i32, }',
+ init_expr: 'S()',
+ via_deref: '(*(&a)).a',
+ via_pointer: '(&a).a'
+ },
+ builtin_struct_modf_via_identifier: {
+ module: '',
+ init_expr: 'modf(1.5)',
+ via_deref: 'vec2((*(&a)).fract, (*(&a)).whole)',
+ via_pointer: 'vec2((&a).fract, (&a).whole)'
+ },
+ builtin_struct_frexp_via_identifier: {
+ module: '',
+ init_expr: 'frexp(1.5)',
+ via_deref: 'vec2((*(&a)).fract, f32((*(&a)).exp))',
+ via_pointer: 'vec2((&a).fract, f32((&a).exp))'
+ },
+
+ // Via pointer 'p'
+ array_index_access_via_pointer: {
+ module: '',
+ init_expr: 'array<i32, 3>()',
+ via_deref: '(*p)[0]',
+ via_pointer: 'p[0]'
+ },
+ vector_index_access_via_pointer: {
+ module: '',
+ init_expr: 'vec3<i32>()',
+ via_deref: '(*p)[0]',
+ via_pointer: 'p[0]'
+ },
+ vector_member_access_via_pointer: {
+ module: '',
+ init_expr: 'vec3<i32>()',
+ via_deref: '(*p).x',
+ via_pointer: 'p.x'
+ },
+ matrix_index_access_via_pointer: {
+ module: '',
+ init_expr: 'mat2x3<f32>()',
+ via_deref: '(*p)[0]',
+ via_pointer: 'p[0]'
+ },
+ struct_member_access_via_pointer: {
+ module: 'struct S { a : i32, }',
+ init_expr: 'S()',
+ via_deref: '(*p).a',
+ via_pointer: 'p.a'
+ },
+ builtin_struct_modf_via_pointer: {
+ module: '',
+ init_expr: 'modf(1.5)',
+ via_deref: 'vec2((*p).fract, (*p).whole)',
+ via_pointer: 'vec2(p.fract, p.whole)'
+ },
+ builtin_struct_frexp_via_pointer: {
+ module: '',
+ init_expr: 'frexp(1.5)',
+ via_deref: 'vec2((*p).fract, f32((*p).exp))',
+ via_pointer: 'vec2(p.fract, f32(p.exp))'
+ }
+};
+
+g.test('deref').
+desc('Baseline test: pointer deref is always valid').
+params((u) => u.combine('case', keysOf(kCases))).
+fn((t) => {
+ const curr = kCases[t.params.case];
+ const source = makeSource(curr.module, curr.init_expr, curr.via_deref);
+ t.expectCompileResult(true, source);
+});
+
+g.test('pointer').
+desc(
+ 'Tests that direct pointer access is valid if pointer_composite_access is supported, else it should fail'
+).
+params((u) => u.combine('case', keysOf(kCases))).
+fn((t) => {
+ const curr = kCases[t.params.case];
+ const source = makeSource(curr.module, curr.init_expr, curr.via_pointer);
+ const should_pass = t.hasLanguageFeature('pointer_composite_access');
+ t.expectCompileResult(should_pass, source);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures.spec.js
new file mode 100644
index 0000000000..62b689c20e
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/extension/readonly_and_readwrite_storage_textures.spec.js
@@ -0,0 +1,48 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for the readonly_and_readwrite_storage_textures language feature
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { TexelFormats } from '../../types.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kFeatureName = 'readonly_and_readwrite_storage_textures';
+
+g.test('var_decl').
+desc(
+ `Checks that the read and read_write access modes are only allowed with the language feature present`
+).
+paramsSubcasesOnly((u) =>
+u.
+combine('type', [
+'texture_storage_1d',
+'texture_storage_2d',
+'texture_storage_2d_array',
+'texture_storage_3d']
+).
+combine('format', TexelFormats).
+combine('access', ['read', 'write', 'read_write'])
+).
+fn((t) => {
+ const { type, format, access } = t.params;
+ const source = `@group(0) @binding(0) var t : ${type}<${format.format}, ${access}>;`;
+ const requiresFeature = access !== 'write';
+ t.expectCompileResult(t.hasLanguageFeature(kFeatureName) || !requiresFeature, source);
+});
+
+g.test('textureBarrier').
+desc(
+ `Checks that the textureBarrier() builtin is only allowed with the language feature present`
+).
+fn((t) => {
+ t.expectCompileResult(
+ t.hasLanguageFeature(kFeatureName),
+ `
+ @workgroup_size(1) @compute fn main() {
+ textureBarrier();
+ }
+ `
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/alias_analysis.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/alias_analysis.spec.js
index ab5d7c3327..0549dc9c90 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/alias_analysis.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/alias_analysis.spec.js
@@ -38,50 +38,284 @@ function shouldPass(aliased, ...uses) {
return !aliased || !uses.some((u) => kUses[u].is_write) || uses.includes('no_access');
}
+
+
+const kWritableAddressSpaces = ['private', 'function', 'storage', 'workgroup'];
+
+function ptr(addressSpace, type) {
+ switch (addressSpace) {
+ case 'function':
+ return `ptr<function, ${type}>`;
+ case 'private':
+ return `ptr<private, ${type}>`;
+ case 'storage':
+ return `ptr<storage, ${type}, read_write>`;
+ case 'uniform':
+ return `ptr<uniform, ${type}>`;
+ case 'workgroup':
+ return `ptr<workgroup, ${type}>`;
+ }
+}
+
+function declareModuleScopeVar(
+name,
+addressSpace,
+type)
+{
+ const binding = name === 'x' ? 0 : 1;
+ switch (addressSpace) {
+ case 'private':
+ return `var<private> ${name} : ${type};`;
+ case 'storage':
+ return `@binding(${binding}) @group(0) var<storage, read_write> ${name} : ${type};`;
+ case 'uniform':
+ return `@binding(${binding}) @group(0) var<uniform> ${name} : ${type};`;
+ case 'workgroup':
+ return `var<workgroup> ${name} : ${type};`;
+ }
+}
+
+function maybeDeclareModuleScopeVar(name, addressSpace, type) {
+ if (addressSpace === 'function') {
+ return '';
+ }
+ return declareModuleScopeVar(name, addressSpace, type);
+}
+
+function maybeDeclareFunctionScopeVar(name, addressSpace, type) {
+ switch (addressSpace) {
+ case 'function':
+ return `var ${name} : ${type};`;
+ default:
+ return ``;
+ }
+}
+
+/**
+ * @returns true if a pointer of the given address space requires the
+ * 'unrestricted_pointer_parameters' language feature.
+ */
+function requiresUnrestrictedPointerParameters(addressSpace) {
+ return addressSpace !== 'function' && addressSpace !== 'private';
+}
+
g.test('two_pointers').
desc(`Test aliasing of two pointers passed to a function.`).
params((u) =>
u.
-combine('address_space', ['private', 'function']).
-combine('a_use', keysOf(kUses)).
-combine('b_use', keysOf(kUses)).
+combine('address_space', kWritableAddressSpaces).
combine('aliased', [true, false]).
-beginSubcases()
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
).
fn((t) => {
+ if (requiresUnrestrictedPointerParameters(t.params.address_space)) {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
const code = `
-${t.params.address_space === 'private' ? `var<private> x : i32; var<private> y : i32;` : ``}
+${maybeDeclareModuleScopeVar('x', t.params.address_space, 'i32')}
+${maybeDeclareModuleScopeVar('y', t.params.address_space, 'i32')}
-fn callee(pa : ptr<${t.params.address_space}, i32>,
- pb : ptr<${t.params.address_space}, i32>) -> i32 {
+fn callee(pa : ${ptr(t.params.address_space, 'i32')},
+ pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
${kUses[t.params.a_use].gen(`*pa`)}
${kUses[t.params.b_use].gen(`*pb`)}
return 0;
}
fn caller() {
- ${t.params.address_space === 'function' ? `var x : i32; var y : i32;` : ``}
+ ${maybeDeclareFunctionScopeVar('x', t.params.address_space, 'i32')}
+ ${maybeDeclareFunctionScopeVar('y', t.params.address_space, 'i32')}
callee(&x, ${t.params.aliased ? `&x` : `&y`});
}
`;
t.expectCompileResult(shouldPass(t.params.aliased, t.params.a_use, t.params.b_use), code);
});
+g.test('two_pointers_to_array_elements').
+desc(`Test aliasing of two array element pointers passed to a function.`).
+params((u) =>
+u.
+combine('address_space', kWritableAddressSpaces).
+combine('index', [0, 1]).
+combine('aliased', [true, false]).
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const code = `
+${maybeDeclareModuleScopeVar('x', t.params.address_space, 'array<i32, 4>')}
+${maybeDeclareModuleScopeVar('y', t.params.address_space, 'array<i32, 4>')}
+
+fn callee(pa : ${ptr(t.params.address_space, 'i32')},
+ pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
+ ${kUses[t.params.a_use].gen(`*pa`)}
+ ${kUses[t.params.b_use].gen(`*pb`)}
+ return 0;
+}
+
+fn caller() {
+ ${maybeDeclareFunctionScopeVar('x', t.params.address_space, 'array<i32, 4>')}
+ ${maybeDeclareFunctionScopeVar('y', t.params.address_space, 'array<i32, 4>')}
+ callee(&x[${t.params.index}], ${t.params.aliased ? `&x[0]` : `&y[0]`});
+}
+`;
+ t.expectCompileResult(shouldPass(t.params.aliased, t.params.a_use, t.params.b_use), code);
+});
+
+g.test('two_pointers_to_array_elements_indirect').
+desc(
+ `Test aliasing of two array pointers passed to a function, which indexes those arrays and then
+passes the element pointers to another function.`
+).
+params((u) =>
+u.
+combine('address_space', kWritableAddressSpaces).
+combine('index', [0, 1]).
+combine('aliased', [true, false]).
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const code = `
+${maybeDeclareModuleScopeVar('x', t.params.address_space, 'array<i32, 4>')}
+${maybeDeclareModuleScopeVar('y', t.params.address_space, 'array<i32, 4>')}
+
+fn callee(pa : ${ptr(t.params.address_space, 'i32')},
+ pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
+ ${kUses[t.params.a_use].gen(`*pa`)}
+ ${kUses[t.params.b_use].gen(`*pb`)}
+ return 0;
+}
+
+fn index(pa : ${ptr(t.params.address_space, 'array<i32, 4>')},
+ pb : ${ptr(t.params.address_space, 'array<i32, 4>')}) -> i32 {
+ return callee(&(*pa)[${t.params.index}], &(*pb)[0]);
+}
+
+fn caller() {
+ ${maybeDeclareFunctionScopeVar('x', t.params.address_space, 'array<i32, 4>')}
+ ${maybeDeclareFunctionScopeVar('y', t.params.address_space, 'array<i32, 4>')}
+ index(&x, ${t.params.aliased ? `&x` : `&y`});
+}
+`;
+ t.expectCompileResult(shouldPass(t.params.aliased, t.params.a_use, t.params.b_use), code);
+});
+
+g.test('two_pointers_to_struct_members').
+desc(`Test aliasing of two struct member pointers passed to a function.`).
+params((u) =>
+u.
+combine('address_space', kWritableAddressSpaces).
+combine('member', ['a', 'b']).
+combine('aliased', [true, false]).
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const code = `
+struct S {
+ a : i32,
+ b : i32,
+}
+
+${maybeDeclareModuleScopeVar('x', t.params.address_space, 'S')}
+${maybeDeclareModuleScopeVar('y', t.params.address_space, 'S')}
+
+fn callee(pa : ${ptr(t.params.address_space, 'i32')},
+ pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
+ ${kUses[t.params.a_use].gen(`*pa`)}
+ ${kUses[t.params.b_use].gen(`*pb`)}
+ return 0;
+}
+
+fn caller() {
+ ${maybeDeclareFunctionScopeVar('x', t.params.address_space, 'S')}
+ ${maybeDeclareFunctionScopeVar('y', t.params.address_space, 'S')}
+ callee(&x.${t.params.member}, ${t.params.aliased ? `&x.a` : `&y.a`});
+}
+`;
+ t.expectCompileResult(shouldPass(t.params.aliased, t.params.a_use, t.params.b_use), code);
+});
+
+g.test('two_pointers_to_struct_members_indirect').
+desc(
+ `Test aliasing of two structure pointers passed to a function, which accesses members of those
+structures and then passes the member pointers to another function.`
+).
+params((u) =>
+u.
+combine('address_space', kWritableAddressSpaces).
+combine('member', ['a', 'b']).
+combine('aliased', [true, false]).
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const code = `
+struct S {
+ a : i32,
+ b : i32,
+}
+
+${maybeDeclareModuleScopeVar('x', t.params.address_space, 'S')}
+${maybeDeclareModuleScopeVar('y', t.params.address_space, 'S')}
+
+fn callee(pa : ${ptr(t.params.address_space, 'i32')},
+ pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
+ ${kUses[t.params.a_use].gen(`*pa`)}
+ ${kUses[t.params.b_use].gen(`*pb`)}
+ return 0;
+}
+
+fn access(pa : ${ptr(t.params.address_space, 'S')},
+ pb : ${ptr(t.params.address_space, 'S')}) -> i32 {
+ return callee(&(*pa).${t.params.member}, &(*pb).a);
+}
+
+fn caller() {
+ ${maybeDeclareFunctionScopeVar('x', t.params.address_space, 'S')}
+ ${maybeDeclareFunctionScopeVar('y', t.params.address_space, 'S')}
+ access(&x, ${t.params.aliased ? `&x` : `&y`});
+}
+`;
+ t.expectCompileResult(shouldPass(t.params.aliased, t.params.a_use, t.params.b_use), code);
+});
+
g.test('one_pointer_one_module_scope').
desc(`Test aliasing of a pointer with a direct access to a module-scope variable.`).
params((u) =>
u.
-combine('a_use', keysOf(kUses)).
-combine('b_use', keysOf(kUses)).
+combine('address_space', ['private', 'storage', 'workgroup']).
combine('aliased', [true, false]).
-beginSubcases()
+beginSubcases().
+combine('a_use', keysOf(kUses)).
+combine('b_use', keysOf(kUses))
).
fn((t) => {
+ if (requiresUnrestrictedPointerParameters(t.params.address_space)) {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
const code = `
-var<private> x : i32;
-var<private> y : i32;
+${declareModuleScopeVar('x', t.params.address_space, 'i32')}
+${declareModuleScopeVar('y', t.params.address_space, 'i32')}
-fn callee(pb : ptr<private, i32>) -> i32 {
+fn callee(pb : ${ptr(t.params.address_space, 'i32')}) -> i32 {
${kUses[t.params.a_use].gen(`x`)}
${kUses[t.params.b_use].gen(`*pb`)}
return 0;
@@ -98,29 +332,34 @@ g.test('subcalls').
desc(`Test aliasing of two pointers passed to a function, and then passed to other functions.`).
params((u) =>
u.
-combine('a_use', ['no_access', 'assign', 'binary_lhs']).
-combine('b_use', ['no_access', 'assign', 'binary_lhs']).
+combine('address_space', ['private', 'storage', 'workgroup']).
combine('aliased', [true, false]).
-beginSubcases()
+beginSubcases().
+combine('a_use', ['no_access', 'assign', 'binary_lhs']).
+combine('b_use', ['no_access', 'assign', 'binary_lhs'])
).
fn((t) => {
+ if (requiresUnrestrictedPointerParameters(t.params.address_space)) {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+ const ptr_i32 = ptr(t.params.address_space, 'i32');
const code = `
-var<private> x : i32;
-var<private> y : i32;
+${declareModuleScopeVar('x', t.params.address_space, 'i32')}
+${declareModuleScopeVar('y', t.params.address_space, 'i32')}
-fn subcall_no_access(p : ptr<private, i32>) {
+fn subcall_no_access(p : ${ptr_i32}) {
let pp = &*p;
}
-fn subcall_binary_lhs(p : ptr<private, i32>) -> i32 {
+fn subcall_binary_lhs(p : ${ptr_i32}) -> i32 {
return *p + 1;
}
-fn subcall_assign(p : ptr<private, i32>) {
+fn subcall_assign(p : ${ptr_i32}) {
*p = 42;
}
-fn callee(pa : ptr<private, i32>, pb : ptr<private, i32>) -> i32 {
+fn callee(pa : ${ptr_i32}, pb : ${ptr_i32}) -> i32 {
let new_pa = &*pa;
let new_pb = &*pb;
subcall_${t.params.a_use}(new_pa);
@@ -139,20 +378,25 @@ g.test('member_accessors').
desc(`Test aliasing of two pointers passed to a function and used with member accessors.`).
params((u) =>
u.
-combine('a_use', ['no_access', 'assign', 'binary_lhs']).
-combine('b_use', ['no_access', 'assign', 'binary_lhs']).
+combine('address_space', ['private', 'storage', 'workgroup']).
combine('aliased', [true, false]).
-beginSubcases()
+beginSubcases().
+combine('a_use', ['no_access', 'assign', 'binary_lhs']).
+combine('b_use', ['no_access', 'assign', 'binary_lhs'])
).
fn((t) => {
+ if (requiresUnrestrictedPointerParameters(t.params.address_space)) {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
+ const ptr_S = ptr(t.params.address_space, 'S');
const code = `
struct S { a : i32 }
-var<private> x : S;
-var<private> y : S;
+${declareModuleScopeVar('x', t.params.address_space, 'S')}
+${declareModuleScopeVar('y', t.params.address_space, 'S')}
-fn callee(pa : ptr<private, S>,
- pb : ptr<private, S>) -> i32 {
+fn callee(pa : ${ptr_S}, pb : ${ptr_S}) -> i32 {
${kUses[t.params.a_use].gen(`(*pa).a`)}
${kUses[t.params.b_use].gen(`(*pb).a`)}
return 0;
@@ -167,12 +411,18 @@ fn caller() {
g.test('same_pointer_read_and_write').
desc(`Test that we can read from and write to the same pointer.`).
-params((u) => u.beginSubcases()).
+params((u) =>
+u.combine('address_space', ['private', 'storage', 'workgroup']).beginSubcases()
+).
fn((t) => {
+ if (requiresUnrestrictedPointerParameters(t.params.address_space)) {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+ }
+
const code = `
-var<private> v : i32;
+${declareModuleScopeVar('v', t.params.address_space, 'i32')}
-fn callee(p : ptr<private, i32>) {
+fn callee(p : ${ptr(t.params.address_space, 'i32')}) {
*p = *p + 1;
}
@@ -185,10 +435,12 @@ fn caller() {
g.test('aliasing_inside_function').
desc(`Test that we can alias pointers inside a function.`).
-params((u) => u.beginSubcases()).
+params((u) =>
+u.combine('address_space', ['private', 'storage', 'workgroup']).beginSubcases()
+).
fn((t) => {
const code = `
-var<private> v : i32;
+${declareModuleScopeVar('v', t.params.address_space, 'i32')}
fn foo() {
var v : i32;
@@ -199,4 +451,237 @@ fn foo() {
}
`;
t.expectCompileResult(true, code);
+});
+
+const kAtomicBuiltins = [
+'atomicLoad',
+'atomicStore',
+'atomicAdd',
+'atomicSub',
+'atomicMax',
+'atomicMin',
+'atomicAnd',
+'atomicOr',
+'atomicXor',
+'atomicExchange',
+'atomicCompareExchangeWeak'];
+
+
+
+
+function isWrite(builtin) {
+ switch (builtin) {
+ case 'atomicLoad':
+ return false;
+ case 'atomicAdd':
+ case 'atomicSub':
+ case 'atomicMax':
+ case 'atomicMin':
+ case 'atomicAnd':
+ case 'atomicOr':
+ case 'atomicXor':
+ case 'atomicExchange':
+ case 'atomicCompareExchangeWeak':
+ case 'atomicStore':
+ return true;
+ }
+}
+
+function callAtomicBuiltin(builtin, ptr) {
+ switch (builtin) {
+ case 'atomicLoad':
+ return `i += ${builtin}(${ptr})`;
+ case 'atomicStore':
+ return `${builtin}(${ptr}, 42)`;
+ case 'atomicAdd':
+ case 'atomicSub':
+ case 'atomicMax':
+ case 'atomicMin':
+ case 'atomicAnd':
+ case 'atomicOr':
+ case 'atomicXor':
+ case 'atomicExchange':
+ return `i += ${builtin}(${ptr}, 42)`;
+ case 'atomicCompareExchangeWeak':
+ return `${builtin}(${ptr}, 10, 42)`;
+ }
+}
+
+g.test('two_atomic_pointers').
+desc(`Test aliasing of two atomic pointers passed to a function.`).
+params((u) =>
+u.
+combine('builtin_a', kAtomicBuiltins).
+combine('builtin_b', ['atomicLoad', 'atomicStore']).
+combine('address_space', ['storage', 'workgroup']).
+combine('aliased', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const ptr_atomic_i32 = ptr(t.params.address_space, 'atomic<i32>');
+ const code = `
+${declareModuleScopeVar('x', t.params.address_space, 'atomic<i32>')}
+${declareModuleScopeVar('y', t.params.address_space, 'atomic<i32>')}
+
+fn callee(pa : ${ptr_atomic_i32}, pb : ${ptr_atomic_i32}) {
+ var i : i32;
+ ${callAtomicBuiltin(t.params.builtin_a, 'pa')};
+ ${callAtomicBuiltin(t.params.builtin_b, 'pb')};
+}
+
+fn caller() {
+ callee(&x, &${t.params.aliased ? 'x' : 'y'});
+}
+`;
+ const shouldFail =
+ t.params.aliased && (isWrite(t.params.builtin_a) || isWrite(t.params.builtin_b));
+ t.expectCompileResult(!shouldFail, code);
+});
+
+g.test('two_atomic_pointers_to_array_elements').
+desc(`Test aliasing of two atomic array element pointers passed to a function.`).
+params((u) =>
+u.
+combine('builtin_a', kAtomicBuiltins).
+combine('builtin_b', ['atomicLoad', 'atomicStore']).
+combine('address_space', ['storage', 'workgroup']).
+combine('index', [0, 1]).
+combine('aliased', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const ptr_atomic_i32 = ptr(t.params.address_space, 'atomic<i32>');
+ const code = `
+${declareModuleScopeVar('x', t.params.address_space, 'array<atomic<i32>, 32>')}
+${declareModuleScopeVar('y', t.params.address_space, 'array<atomic<i32>, 32>')}
+
+fn callee(pa : ${ptr_atomic_i32}, pb : ${ptr_atomic_i32}) {
+ var i : i32;
+ ${callAtomicBuiltin(t.params.builtin_a, 'pa')};
+ ${callAtomicBuiltin(t.params.builtin_b, 'pb')};
+}
+
+fn caller() {
+ callee(&x[${t.params.index}], &${t.params.aliased ? 'x' : 'y'}[0]);
+}
+`;
+ const shouldFail =
+ t.params.aliased && (isWrite(t.params.builtin_a) || isWrite(t.params.builtin_b));
+ t.expectCompileResult(!shouldFail, code);
+});
+
+g.test('two_atomic_pointers_to_struct_members').
+desc(`Test aliasing of two struct member atomic pointers passed to a function.`).
+params((u) =>
+u.
+combine('builtin_a', kAtomicBuiltins).
+combine('builtin_b', ['atomicLoad', 'atomicStore']).
+combine('address_space', ['storage', 'workgroup']).
+combine('member', ['a', 'b']).
+combine('aliased', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const ptr_atomic_i32 = ptr(t.params.address_space, 'atomic<i32>');
+ const code = `
+struct S {
+ a : atomic<i32>,
+ b : atomic<i32>,
+}
+
+${declareModuleScopeVar('x', t.params.address_space, 'S')}
+${declareModuleScopeVar('y', t.params.address_space, 'S')}
+
+fn callee(pa : ${ptr_atomic_i32}, pb : ${ptr_atomic_i32}) {
+ var i : i32;
+ ${callAtomicBuiltin(t.params.builtin_a, 'pa')};
+ ${callAtomicBuiltin(t.params.builtin_b, 'pb')};
+}
+
+fn caller() {
+ callee(&x.${t.params.member}, &${t.params.aliased ? 'x' : 'y'}.a);
+}
+`;
+ const shouldFail =
+ t.params.aliased && (isWrite(t.params.builtin_a) || isWrite(t.params.builtin_b));
+ t.expectCompileResult(!shouldFail, code);
+});
+
+g.test('one_atomic_pointer_one_module_scope').
+desc(`Test aliasing of an atomic pointer with a direct access to a module-scope variable.`).
+params((u) =>
+u.
+combine('builtin_a', kAtomicBuiltins).
+combine('builtin_b', ['atomicLoad', 'atomicStore']).
+combine('address_space', ['storage', 'workgroup']).
+combine('aliased', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ const ptr_atomic_i32 = ptr(t.params.address_space, 'atomic<i32>');
+ const code = `
+${declareModuleScopeVar('x', t.params.address_space, 'atomic<i32>')}
+${declareModuleScopeVar('y', t.params.address_space, 'atomic<i32>')}
+
+fn callee(p : ${ptr_atomic_i32}) {
+ var i : i32;
+ ${callAtomicBuiltin(t.params.builtin_a, 'p')};
+ ${callAtomicBuiltin(t.params.builtin_b, t.params.aliased ? '&x' : '&y')};
+}
+
+fn caller() {
+ callee(&x);
+}
+`;
+ const shouldFail =
+ t.params.aliased && (isWrite(t.params.builtin_a) || isWrite(t.params.builtin_b));
+ t.expectCompileResult(!shouldFail, code);
+});
+
+g.test('workgroup_uniform_load').
+desc(`Test aliasing via workgroupUniformLoad.`).
+params((u) =>
+u.
+combine('use', ['load', 'store', 'workgroupUniformLoad']).
+combine('aliased', [true, false]).
+beginSubcases()
+).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('unrestricted_pointer_parameters');
+
+ function emitUse() {
+ switch (t.params.use) {
+ case 'load':
+ return `v = *pa`;
+ case 'store':
+ return `*pa = 1`;
+ case 'workgroupUniformLoad':
+ return `v = workgroupUniformLoad(pa)`;
+ }
+ }
+
+ const code = `
+var<workgroup> x : i32;
+var<workgroup> y : i32;
+
+fn callee(pa : ptr<workgroup, i32>, pb : ptr<workgroup, i32>) -> i32 {
+ var v : i32;
+ ${emitUse()};
+ return v + workgroupUniformLoad(pb);
+}
+
+fn caller() {
+ callee(&x, &${t.params.aliased ? 'x' : 'y'});
+}
+`;
+ const shouldFail = t.params.aliased && t.params.use === 'store';
+ t.expectCompileResult(!shouldFail, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/restrictions.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/restrictions.spec.js
index 94e38837d9..30bdeb54fe 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/restrictions.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/functions/restrictions.spec.js
@@ -12,6 +12,30 @@ export const g = makeTestGroup(ShaderValidationTest);
+const kCCommonTypeDecls = `
+struct runtime_array_struct {
+ arr : array<u32>
+}
+
+struct constructible {
+ a : i32,
+ b : u32,
+ c : f32,
+ d : bool,
+}
+
+struct host_shareable {
+ a : i32,
+ b : u32,
+ c : f32,
+}
+
+struct struct_with_array {
+ a : array<constructible, 4>
+}
+
+`;
+
const kVertexPosCases = {
bare_position: { name: `@builtin(position) vec4f`, value: `vec4f()`, valid: true },
nested_position: { name: `pos_struct`, value: `pos_struct()`, valid: true },
@@ -145,20 +169,7 @@ fn((t) => {
const code = `
${enable}
-struct runtime_array_struct {
- arr : array<u32>
-}
-
-struct constructible {
- a : i32,
- b : u32,
- c : f32,
- d : bool,
-}
-
-struct struct_with_array {
- a : array<constructible, 4>
-}
+${kCCommonTypeDecls}
struct atomic_struct {
a : atomic<u32>
@@ -246,21 +257,42 @@ const kFunctionParamTypeCases = {
ptr3: { name: `ptr<private, u32>`, valid: true },
ptr4: { name: `ptr<private, constructible>`, valid: true },
+ // Pointers only valid with unrestricted_pointer_parameters
+ ptr5: { name: `ptr<storage, u32>`, valid: 'with_unrestricted_pointer_parameters' },
+ ptr6: { name: `ptr<storage, u32, read>`, valid: 'with_unrestricted_pointer_parameters' },
+ ptr7: { name: `ptr<storage, u32, read_write>`, valid: 'with_unrestricted_pointer_parameters' },
+ ptr8: { name: `ptr<uniform, u32>`, valid: 'with_unrestricted_pointer_parameters' },
+ ptr9: { name: `ptr<workgroup, u32>`, valid: 'with_unrestricted_pointer_parameters' },
+ ptr10: {
+ name: `ptr<storage, host_shareable, read_write>`,
+ valid: 'with_unrestricted_pointer_parameters'
+ },
+ ptr11: {
+ name: `ptr<storage, host_shareable, read>`,
+ valid: 'with_unrestricted_pointer_parameters'
+ },
+ ptr12: {
+ name: `ptr<uniform, host_shareable>`,
+ valid: 'with_unrestricted_pointer_parameters'
+ },
+ ptrWorkgroupAtomic: {
+ name: `ptr<workgroup, atomic<u32>>`,
+ valid: 'with_unrestricted_pointer_parameters'
+ },
+ ptrWorkgroupNestedAtomic: {
+ name: `ptr<workgroup, array<atomic<u32>,1>>`,
+ valid: 'with_unrestricted_pointer_parameters'
+ },
+
// Invalid pointers.
- ptr5: { name: `ptr<storage, u32>`, valid: false },
- ptr6: { name: `ptr<storage, u32, read>`, valid: false },
- ptr7: { name: `ptr<storage, u32, read_write>`, valid: false },
- ptr8: { name: `ptr<uniform, u32>`, valid: false },
- ptr9: { name: `ptr<workgroup, u32>`, valid: false },
- ptr10: { name: `ptr<handle, u32>`, valid: false }, // Can't spell handle address space
- ptr12: { name: `ptr<not_an_address_space, u32>`, valid: false },
- ptr13: { name: `ptr<storage>`, valid: false }, // No store type
- ptr14: { name: `ptr<private,clamp>`, valid: false }, // Invalid store type
- ptr15: { name: `ptr<private,u32,read>`, valid: false }, // Can't specify access mode
- ptr16: { name: `ptr<private,u32,write>`, valid: false }, // Can't specify access mode
- ptr17: { name: `ptr<private,u32,read_write>`, valid: false }, // Can't specify access mode
- ptrWorkgroupAtomic: { name: `ptr<workgroup, atomic<u32>>`, valid: false },
- ptrWorkgroupNestedAtomic: { name: `ptr<workgroup, array<atomic<u32>,1>>`, valid: false }
+ invalid_ptr1: { name: `ptr<handle, u32>`, valid: false }, // Can't spell handle address space
+ invalid_ptr2: { name: `ptr<not_an_address_space, u32>`, valid: false },
+ invalid_ptr3: { name: `ptr<storage>`, valid: false }, // No store type
+ invalid_ptr4: { name: `ptr<private,u32,read>`, valid: false }, // Can't specify access mode
+ invalid_ptr5: { name: `ptr<private,u32,write>`, valid: false }, // Can't specify access mode
+ invalid_ptr6: { name: `ptr<private,u32,read_write>`, valid: false }, // Can't specify access mode
+ invalid_ptr7: { name: `ptr<private,clamp>`, valid: false }, // Invalid store type
+ invalid_ptr8: { name: `ptr<function, texture_external>`, valid: false } // non-constructable pointer type
};
g.test('function_parameter_types').
@@ -278,25 +310,17 @@ fn((t) => {
const code = `
${enable}
-struct runtime_array_struct {
- arr : array<u32>
-}
-
-struct constructible {
- a : i32,
- b : u32,
- c : f32,
- d : bool,
-}
-
-struct struct_with_array {
- a : array<constructible, 4>
-}
+${kCCommonTypeDecls}
fn foo(param : ${testcase.name}) {
}`;
- t.expectCompileResult(testcase.valid, code);
+ let isValid = testcase.valid;
+ if (isValid === 'with_unrestricted_pointer_parameters') {
+ isValid = t.hasLanguageFeature('unrestricted_pointer_parameters');
+ }
+
+ t.expectCompileResult(isValid, code);
});
@@ -304,6 +328,7 @@ fn foo(param : ${testcase.name}) {
+
const kFunctionParamValueCases = {
// Values
u32_literal: { value: `0u`, matches: ['u32'] },
@@ -426,15 +451,47 @@ const kFunctionParamValueCases = {
ptr3: { value: `&g_u32`, matches: ['ptr3'] },
ptr4: { value: `&g_constructible`, matches: ['ptr4'] },
- // Invalid pointers
- ptr5: { value: `&f_constructible.b`, matches: [] },
- ptr6: { value: `&g_constructible.b`, matches: [] },
- ptr7: { value: `&f_struct_with_array.a[1].b`, matches: [] },
- ptr8: { value: `&g_struct_with_array.a[2]`, matches: [] },
- ptr9: { value: `&ro_constructible.b`, matches: [] },
- ptr10: { value: `&rw_constructible`, matches: [] },
- ptr11: { value: `&uniform_constructible`, matches: [] },
- ptr12: { value: `&ro_constructible`, matches: [] }
+ // Requires 'unrestricted_pointer_parameters' WGSL feature
+ ptr5: {
+ value: `&f_constructible.b`,
+ matches: ['ptr1'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr6: {
+ value: `&g_constructible.b`,
+ matches: ['ptr3'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr7: {
+ value: `&f_struct_with_array.a[1].b`,
+ matches: ['ptr1'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr8: {
+ value: `&g_struct_with_array.a[2]`,
+ matches: ['ptr4'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr9: {
+ value: `&ro_host_shareable.b`,
+ matches: ['ptr5', 'ptr6'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr10: {
+ value: `&rw_host_shareable`,
+ matches: ['ptr10'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr11: {
+ value: `&ro_host_shareable`,
+ matches: ['ptr11'],
+ needsUnrestrictedPointerParameters: true
+ },
+ ptr12: {
+ value: `&uniform_host_shareable`,
+ matches: ['ptr12'],
+ needsUnrestrictedPointerParameters: true
+ }
};
function parameterMatches(decl, matches) {
@@ -454,10 +511,11 @@ desc(
params((u) =>
u.
combine('decl', keysOf(kFunctionParamTypeCases)).
-combine('arg', keysOf(kFunctionParamValueCases)).
filter((u) => {
- return kFunctionParamTypeCases[u.decl].valid;
-})
+ return kFunctionParamTypeCases[u.decl].valid !== false;
+}).
+beginSubcases().
+combine('arg', keysOf(kFunctionParamValueCases))
).
beforeAllSubcases((t) => {
if (kFunctionParamTypeCases[t.params.decl].name === 'f16') {
@@ -471,26 +529,7 @@ fn((t) => {
const code = `
${enable}
-struct runtime_array_struct {
- arr : array<u32>
-}
-
-struct constructible {
- a : i32,
- b : u32,
- c : f32,
- d : bool,
-}
-
-struct host_shareable {
- a : i32,
- b : u32,
- c : f32,
-}
-
-struct struct_with_array {
- a : array<constructible, 4>
-}
+${kCCommonTypeDecls}
@group(0) @binding(0)
var t : texture_2d<f32>;
@group(0) @binding(1)
@@ -507,11 +546,11 @@ var t_multisampled : texture_multisampled_2d<f32>;
var t_external : texture_external;
@group(1) @binding(0)
-var<storage> ro_constructible : host_shareable;
+var<storage> ro_host_shareable : host_shareable;
@group(1) @binding(1)
-var<storage, read_write> rw_constructible : host_shareable;
+var<storage, read_write> rw_host_shareable : host_shareable;
@group(1) @binding(2)
-var<uniform> uniform_constructible : host_shareable;
+var<uniform> uniform_host_shareable : host_shareable;
fn bar(param : ${param.name}) { }
@@ -568,7 +607,17 @@ fn foo() {
}
`;
- t.expectCompileResult(parameterMatches(t.params.decl, arg.matches), code);
+ const needsUnrestrictedPointerParameters =
+ (kFunctionParamTypeCases[t.params.decl].valid === 'with_unrestricted_pointer_parameters' ||
+ arg.needsUnrestrictedPointerParameters) ??
+ false;
+
+ let isValid = parameterMatches(t.params.decl, arg.matches);
+ if (isValid && needsUnrestrictedPointerParameters) {
+ isValid = t.hasLanguageFeature('unrestricted_pointer_parameters');
+ }
+
+ t.expectCompileResult(isValid, code);
});
g.test('no_direct_recursion').
@@ -691,67 +740,75 @@ function checkArgTypeMatch(param_type, arg_matches) {
return false;
}
-g.test('call_arg_types_match_params').
+g.test('call_arg_types_match_1_param').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#function-calls').
+desc(`Test that the argument types match in order`).
+params((u) =>
+u.
+combine('p1_type', kParamsTypes) //
+.beginSubcases().
+combine('arg1_value', keysOf(kArgValues))
+).
+fn((t) => {
+ const code = `
+fn bar(p1 : ${t.params.p1_type}) { }
+fn foo() {
+ bar(${kArgValues[t.params.arg1_value].value});
+}`;
+
+ const res = checkArgTypeMatch(t.params.p1_type, kArgValues[t.params.arg1_value].matches);
+ t.expectCompileResult(res, code);
+});
+
+g.test('call_arg_types_match_2_params').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#function-calls').
+desc(`Test that the argument types match in order`).
+params((u) =>
+u.
+combine('p1_type', kParamsTypes).
+combine('p2_type', kParamsTypes).
+beginSubcases().
+combine('arg1_value', keysOf(kArgValues)).
+combine('arg2_value', keysOf(kArgValues))
+).
+fn((t) => {
+ const code = `
+fn bar(p1 : ${t.params.p1_type}, p2 : ${t.params.p2_type}) { }
+fn foo() {
+ bar(${kArgValues[t.params.arg1_value].value}, ${kArgValues[t.params.arg2_value].value});
+}`;
+
+ const res =
+ checkArgTypeMatch(t.params.p1_type, kArgValues[t.params.arg1_value].matches) &&
+ checkArgTypeMatch(t.params.p2_type, kArgValues[t.params.arg2_value].matches);
+ t.expectCompileResult(res, code);
+});
+
+g.test('call_arg_types_match_3_params').
specURL('https://gpuweb.github.io/gpuweb/wgsl/#function-calls').
desc(`Test that the argument types match in order`).
params((u) =>
u.
-combine('num_args', [1, 2, 3]).
combine('p1_type', kParamsTypes).
combine('p2_type', kParamsTypes).
combine('p3_type', kParamsTypes).
+beginSubcases().
combine('arg1_value', keysOf(kArgValues)).
combine('arg2_value', keysOf(kArgValues)).
combine('arg3_value', keysOf(kArgValues))
).
fn((t) => {
- let code = `
- fn bar(`;
- for (let i = 0; i < t.params.num_args; i++) {
- switch (i) {
- case 0:
- default:{
- code += `p${i} : ${t.params.p1_type},`;
- break;
- }
- case 1:{
- code += `p${i} : ${t.params.p2_type},`;
- break;
- }
- case 2:{
- code += `p${i} : ${t.params.p3_type},`;
- break;
- }
- }
- }
- code += `) { }
- fn foo() {
- bar(`;
- for (let i = 0; i < t.params.num_args; i++) {
- switch (i) {
- case 0:
- default:{
- code += `${kArgValues[t.params.arg1_value].value},`;
- break;
- }
- case 1:{
- code += `${kArgValues[t.params.arg2_value].value},`;
- break;
- }
- case 2:{
- code += `${kArgValues[t.params.arg3_value].value},`;
- break;
- }
- }
- }
- code += `);\n}`;
+ const code = `
+fn bar(p1 : ${t.params.p1_type}, p2 : ${t.params.p2_type}, p3 : ${t.params.p3_type}) { }
+fn foo() {
+ bar(${kArgValues[t.params.arg1_value].value},
+ ${kArgValues[t.params.arg2_value].value},
+ ${kArgValues[t.params.arg3_value].value});
+}`;
- let res = checkArgTypeMatch(t.params.p1_type, kArgValues[t.params.arg1_value].matches);
- if (res && t.params.num_args > 1) {
- res = checkArgTypeMatch(t.params.p2_type, kArgValues[t.params.arg2_value].matches);
- }
- if (res && t.params.num_args > 2) {
- res = checkArgTypeMatch(t.params.p3_type, kArgValues[t.params.arg3_value].matches);
- }
+ const res =
+ checkArgTypeMatch(t.params.p1_type, kArgValues[t.params.arg1_value].matches) &&
+ checkArgTypeMatch(t.params.p2_type, kArgValues[t.params.arg2_value].matches) &&
+ checkArgTypeMatch(t.params.p3_type, kArgValues[t.params.arg3_value].matches);
t.expectCompileResult(res, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break.spec.js
index bfdb0fc279..2a694f3cdc 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break.spec.js
@@ -15,10 +15,6 @@ const kTests = {
src: 'loop { if true { break; } }',
pass: true
},
- continuing_break_if: {
- src: 'loop { continuing { break if (true); } }',
- pass: true
- },
while_break: {
src: 'while true { break; }',
pass: true
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break_if.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break_if.spec.js
new file mode 100644
index 0000000000..a525d1514b
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/break_if.spec.js
@@ -0,0 +1,141 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation tests for break if`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kTests = {
+ compound_break: {
+ src: '{ break if true; }',
+ pass: false
+ },
+ loop_break: {
+ src: 'loop { break if true; }',
+ pass: false
+ },
+ loop_if_break: {
+ src: 'loop { if true { break if false; } }',
+ pass: false
+ },
+ continuing_break_if: {
+ src: 'loop { continuing { break if true; } }',
+ pass: true
+ },
+ continuing_break_if_parens: {
+ src: 'loop { continuing { break if (true); } }',
+ pass: true
+ },
+ continuing_break_if_not_last: {
+ src: 'loop { continuing { break if (true); let a = 4;} }',
+ pass: false
+ },
+ while_break: {
+ src: 'while true { break if true; }',
+ pass: false
+ },
+ while_if_break: {
+ src: 'while true { if true { break if true; } }',
+ pass: false
+ },
+ for_break: {
+ src: 'for (;;) { break if true; }',
+ pass: false
+ },
+ for_if_break: {
+ src: 'for (;;) { if true { break if true; } }',
+ pass: false
+ },
+ switch_case_break: {
+ src: 'switch(1) { default: { break if true; } }',
+ pass: false
+ },
+ switch_case_if_break: {
+ src: 'switch(1) { default: { if true { break if true; } } }',
+ pass: false
+ },
+ break: {
+ src: 'break if true;',
+ pass: false
+ },
+ return_break: {
+ src: 'return break if true;',
+ pass: false
+ },
+ if_break: {
+ src: 'if true { break if true; }',
+ pass: false
+ },
+ continuing_if_break: {
+ src: 'loop { continuing { if (true) { break if true; } } }',
+ pass: false
+ },
+ switch_break: {
+ src: 'switch(1) { break if true; }',
+ pass: false
+ }
+};
+
+g.test('placement').
+desc('Test that break if placement is validated correctly').
+params((u) => u.combine('stmt', keysOf(kTests))).
+fn((t) => {
+ const code = `
+@vertex
+fn vtx() -> @builtin(position) vec4f {
+ ${kTests[t.params.stmt].src}
+ return vec4f(1);
+}
+ `;
+ t.expectCompileResult(kTests[t.params.stmt].pass, code);
+});
+
+const vec_types = [2, 3, 4].
+map((i) => ['i32', 'u32', 'f32', 'f16'].map((j) => `vec${i}<${j}>`)).
+reduce((a, c) => a.concat(c), []);
+const f32_matrix_types = [2, 3, 4].
+map((i) => [2, 3, 4].map((j) => `mat${i}x${j}f`)).
+reduce((a, c) => a.concat(c), []);
+const f16_matrix_types = [2, 3, 4].
+map((i) => [2, 3, 4].map((j) => `mat${i}x${j}<f16>`)).
+reduce((a, c) => a.concat(c), []);
+
+g.test('non_bool_param').
+desc('Test that break if fails with a non-bool parameter').
+params((u) =>
+u.combine('type', [
+'f32',
+'f16',
+'i32',
+'u32',
+'S',
+...vec_types,
+...f32_matrix_types,
+...f16_matrix_types]
+)
+).
+beforeAllSubcases((t) => {
+ if (t.params.type.includes('f16')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = `
+struct S {
+ a: i32,
+}
+
+@vertex
+fn vtx() -> @builtin(position) vec4f {
+ var v: ${t.params.type};
+
+ loop {
+ continuing {
+ break if v;
+ }
+ }
+ return vec4f(1);
+}`;
+ t.expectCompileResult(t.params.type === 'bool', code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/compound.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/compound.spec.js
new file mode 100644
index 0000000000..12fc0724d8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/compound.spec.js
@@ -0,0 +1,52 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation tests for compound statements`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kTests = {
+ missing_start: {
+ src: '}',
+ pass: false
+ },
+ missing_end: {
+ src: '{',
+ pass: false
+ },
+ empty: {
+ src: '{}',
+ pass: true
+ },
+ semicolon: {
+ src: '{;}',
+ pass: true
+ },
+ semicolons: {
+ src: '{;;}',
+ pass: true
+ },
+ decl: {
+ src: '{const c = 1;}',
+ pass: true
+ },
+ nested: {
+ src: '{ {} }',
+ pass: true
+ }
+};
+
+g.test('parse').
+desc('Test that compound statments parse').
+params((u) => u.combine('stmt', keysOf(kTests))).
+fn((t) => {
+ const code = `
+@vertex
+fn vtx() -> @builtin(position) vec4f {
+ ${kTests[t.params.stmt].src}
+ return vec4f(1);
+}
+ `;
+ t.expectCompileResult(kTests[t.params.stmt].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/continuing.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/continuing.spec.js
new file mode 100644
index 0000000000..7f6825dcd3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/continuing.spec.js
@@ -0,0 +1,185 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation tests for continuing`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kTests = {
+ continuing_break_if: {
+ src: 'loop { continuing { break if true; } }',
+ pass: true
+ },
+ continuing_empty: {
+ src: 'loop { if a == 4 { break; } continuing { } }',
+ pass: true
+ },
+ continuing_break_if_parens: {
+ src: 'loop { continuing { break if (true); } }',
+ pass: true
+ },
+ continuing_discard: {
+ src: 'loop { if a == 4 { break; } continuing { discard; } }',
+ pass: true
+ },
+ continuing_continue_nested: {
+ src: 'loop { if a == 4 { break; } continuing { loop { if a == 4 { break; } continue; } } }',
+ pass: true
+ },
+ continuing_continue: {
+ src: 'loop { if a == 4 { break; } continuing { continue; } }',
+ pass: false
+ },
+ continuing_break: {
+ src: 'loop { continuing { break; } }',
+ pass: false
+ },
+ continuing_for: {
+ src: 'loop { if a == 4 { break; } continuing { for(;a < 4;) { } } }',
+ pass: true
+ },
+ continuing_for_break: {
+ src: 'loop { if a == 4 { break; } continuing { for(;;) { break; } } }',
+ pass: true
+ },
+ continuing_while: {
+ src: 'loop { if a == 4 { break; } continuing { while a < 4 { } } }',
+ pass: true
+ },
+ continuing_while_break: {
+ src: 'loop { if a == 4 { break; } continuing { while true { break; } } }',
+ pass: true
+ },
+ continuing_semicolon: {
+ src: 'loop { if a == 4 { break; } continuing { ; } }',
+ pass: true
+ },
+ continuing_functionn_call: {
+ src: 'loop { if a == 4 { break; } continuing { _ = b(); } }',
+ pass: true
+ },
+ continuing_let: {
+ src: 'loop { if a == 4 { break; } continuing { let c = b(); } }',
+ pass: true
+ },
+ continuing_var: {
+ src: 'loop { if a == 4 { break; } continuing { var a = b(); } }',
+ pass: true
+ },
+ continuing_const: {
+ src: 'loop { if a == 4 { break; } continuing { const a = 1; } }',
+ pass: true
+ },
+ continuing_block: {
+ src: 'loop { if a == 4 { break; } continuing { { } } }',
+ pass: true
+ },
+ continuing_const_assert: {
+ src: 'loop { if a == 4 { break; } continuing { const_assert(1 != 2); } }',
+ pass: true
+ },
+ continuing_loop: {
+ src: 'loop { if a == 4 { break; } continuing { loop { break; } } }',
+ pass: true
+ },
+ continuing_if: {
+ src: 'loop { if a == 4 { break; } continuing { if true { } else if false { } else { } } }',
+ pass: true
+ },
+ continuing_switch: {
+ src: 'loop { if a == 4 { break; } continuing { switch 2 { default: { } } } }',
+ pass: true
+ },
+ continuing_switch_break: {
+ src: 'loop { if a == 4 { break; } continuing { switch 2 { default: { break; } } } }',
+ pass: true
+ },
+ continuing_loop_nested_continuing: {
+ src: 'loop { if a == 4 { break; } continuing { loop { if a == 4 { break; } continuing { } } } }',
+ pass: true
+ },
+ continuing_inc: {
+ src: 'loop { if a == 4 { break; } continuing { a += 1; } }',
+ pass: true
+ },
+ continuing_dec: {
+ src: 'loop { if a == 4 { break; } continuing { a -= 1; } }',
+ pass: true
+ },
+ while: {
+ src: 'while a < 4 { continuing { break if true; } }',
+ pass: false
+ },
+ for: {
+ src: 'for (;a < 4;) { continuing { break if true; } }',
+ pass: false
+ },
+ switch_case: {
+ src: 'switch(1) { default: { continuing { break if true; } } }',
+ pass: false
+ },
+ switch: {
+ src: 'switch(1) { continuing { break if true; } }',
+ pass: false
+ },
+ continuing: {
+ src: 'continuing { break if true; }',
+ pass: false
+ },
+ return: {
+ src: 'return continuing { break if true; }',
+ pass: false
+ },
+ if_body: {
+ src: 'if true { continuing { break if true; } }',
+ pass: false
+ },
+ if: {
+ src: 'if true { } continuing { break if true; } }',
+ pass: false
+ },
+ if_else: {
+ src: 'if true { } else { } continuing { break if true; } }',
+ pass: false
+ },
+ continuing_continuing: {
+ src: 'loop { if a == 4 { break; } continuing { continuing { break if true; } } }',
+ pass: false
+ },
+ no_body: {
+ src: 'loop { if a == 4 { break; } continuing }',
+ pass: false
+ },
+ return_in_continue: {
+ src: 'loop { if a == 4 { break; } continuing { return vec4f(2); } }',
+ pass: false
+ },
+ return_if_nested_in_continue: {
+ src: 'loop { if a == 4 { break; } continuing { if true { return vec4f(2); } } }',
+ pass: false
+ },
+ return_for_nested_in_continue: {
+ src: 'loop { if a == 4 { break; } continuing { for(;a < 4;) { return vec4f(2); } } }',
+ pass: false
+ }
+};
+
+g.test('placement').
+desc('Test that continuing placement is validated correctly').
+params((u) => u.combine('stmt', keysOf(kTests))).
+fn((t) => {
+ const code = `
+fn b() -> i32 {
+ return 1;
+}
+
+@fragment
+fn frag() -> @location(0) vec4f {
+ var a = 0;
+ ${kTests[t.params.stmt].src}
+ return vec4f(1);
+}
+ `;
+ t.expectCompileResult(kTests[t.params.stmt].pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/diagnostic.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/diagnostic.spec.js
index 8c05c6607f..b7581c122c 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/diagnostic.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/diagnostic.spec.js
@@ -198,4 +198,264 @@ fn((t) => {
const d2 = generateDiagnostic('attribute', t.params.s2, 'derivative_uniformity');
const code = `${kNestedLocations[t.params.loc](d1, d2)}`;
t.expectCompileResult(true, code);
+});
+
+g.test('after_other_directives').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#diagnostics').
+desc(`Tests other global directives before a diagnostic directive.`).
+params((u) =>
+u.combine('directive', ['enable f16', 'requires readonly_and_readwrite_storage_textures'])
+).
+beforeAllSubcases((t) => {
+ if (t.params.directive.startsWith('enable')) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ if (t.params.directive.startsWith('requires')) {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
+ let code = `${t.params.directive};`;
+ code += generateDiagnostic('directive', 'info', 'derivative_uniformity') + ';';
+ t.expectCompileResult(true, code);
+});
+
+
+
+
+
+
+function scopeCode(body) {
+ return `
+@group(0) @binding(0) var t : texture_1d<f32>;
+@group(0) @binding(1) var s : sampler;
+var<private> non_uniform_cond : bool;
+var<private> non_uniform_coord : f32;
+var<private> non_uniform_val : u32;
+@fragment fn main() {
+ ${body}
+}
+`;
+}
+
+const kScopeCases = {
+ override_global_off: {
+ code: `
+ ${generateDiagnostic('directive', 'error', 'derivative_uniformity')};
+ ${scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }`)};
+ `,
+ result: true
+ },
+ override_global_on: {
+ code: `
+ ${generateDiagnostic('directive', 'off', 'derivative_uniformity')};
+ ${scopeCode(`
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }`)}
+ `,
+ result: false
+ },
+ override_global_warn: {
+ code: `
+ ${generateDiagnostic('directive', 'error', 'derivative_uniformity')};
+ ${scopeCode(`
+ ${generateDiagnostic('', 'warning', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }`)}
+ `,
+ result: 'warn'
+ },
+ global_if_nothing_else_warn: {
+ code: `
+ ${generateDiagnostic('directive', 'warning', 'derivative_uniformity')};
+ ${scopeCode(`
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }`)}
+ `,
+ result: 'warn'
+ },
+ deepest_nesting_warn: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'warning', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: 'warn'
+ },
+ deepest_nesting_off: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: true
+ },
+ deepest_nesting_error: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: false
+ },
+ other_nest_unaffected: {
+ code: `
+ ${generateDiagnostic('directive', 'warning', 'derivative_uniformity')};
+ ${scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }
+ if non_uniform_cond {
+ _ = textureSample(t,s,0.0);
+ }`)}
+ `,
+ result: 'warn'
+ },
+ deeper_nest_no_effect: {
+ code: `
+ ${generateDiagnostic('directive', 'error', 'derivative_uniformity')};
+ ${scopeCode(`
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ }
+ _ = textureSample(t,s,0.0);
+ }`)}
+ `,
+ result: false
+ },
+ call_unaffected_error: {
+ code: `
+ ${generateDiagnostic('directive', 'error', 'derivative_uniformity')};
+ fn foo() { _ = textureSample(t,s,0.0); }
+ ${scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ foo();
+ }`)}
+ `,
+ result: false
+ },
+ call_unaffected_warn: {
+ code: `
+ ${generateDiagnostic('directive', 'warning', 'derivative_uniformity')};
+ fn foo() { _ = textureSample(t,s,0.0); }
+ ${scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if non_uniform_cond {
+ foo();
+ }`)}
+ `,
+ result: 'warn'
+ },
+ call_unaffected_off: {
+ code: `
+ ${generateDiagnostic('directive', 'off', 'derivative_uniformity')};
+ fn foo() { _ = textureSample(t,s,0.0); }
+ ${scopeCode(`
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if non_uniform_cond {
+ foo();
+ }`)}
+ `,
+ result: true
+ },
+ if_condition_error: {
+ code: scopeCode(`
+ if (non_uniform_cond) {
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ if textureSample(t,s,non_uniform_coord).x > 0.0
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')} {
+ }
+ }`),
+ result: false
+ },
+ if_condition_warn: {
+ code: scopeCode(`
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'warning', 'derivative_uniformity')}
+ if textureSample(t,s,non_uniform_coord).x > 0.0
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')} {
+ }
+ }`),
+ result: 'warn'
+ },
+ if_condition_off: {
+ code: scopeCode(`
+ if non_uniform_cond {
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ if textureSample(t,s,non_uniform_coord).x > 0.0
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')} {
+ }
+ }`),
+ result: true
+ },
+ switch_error: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'error', 'derivative_uniformity')}
+ switch non_uniform_val {
+ case 0 ${generateDiagnostic('', 'off', 'derivative_uniformity')} {
+ }
+ default {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: false
+ },
+ switch_warn: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'warning', 'derivative_uniformity')}
+ switch non_uniform_val {
+ case 0 ${generateDiagnostic('', 'off', 'derivative_uniformity')} {
+ }
+ default {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: 'warn'
+ },
+ switch_off: {
+ code: scopeCode(`
+ ${generateDiagnostic('', 'off', 'derivative_uniformity')}
+ switch non_uniform_val {
+ case 0 ${generateDiagnostic('', 'error', 'derivative_uniformity')}{
+ }
+ default {
+ _ = textureSample(t,s,0.0);
+ }
+ }`),
+ result: true
+ }
+};
+
+g.test('diagnostic_scoping').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#diagnostics').
+desc('Tests that innermost scope controls the diagnostic').
+params((u) => u.combine('case', keysOf(kScopeCases))).
+fn((t) => {
+ const testcase = kScopeCases[t.params.case];
+ if (testcase.result === 'warn') {
+ t.expectCompileWarning(true, testcase.code);
+ } else {
+ t.expectCompileResult(testcase.result, testcase.code);
+ }
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/enable.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/enable.spec.js
index a95ea54acf..b0ce591dfa 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/enable.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/enable.spec.js
@@ -13,11 +13,21 @@ const kCases = {
enable f16;`,
pass: false
},
- after_decl: {
+ decl_after: {
code: `enable f16;
alias i = i32;`,
pass: true
},
+ requires_before: {
+ code: `requires readonly_and_readwrite_storage_textures;
+enable f16;`,
+ pass: true
+ },
+ diagnostic_before: {
+ code: `diagnostic(info, derivative_uniformity);
+enable f16;`,
+ pass: true
+ },
const_assert_before: {
code: `const_assert 1 == 1;
enable f16;`,
@@ -48,7 +58,7 @@ f16;`,
enable f16;`,
pass: true
},
- multipe_entries: {
+ multiple_entries: {
code: `enable f16, f16, f16;`,
pass: true
},
@@ -65,6 +75,10 @@ beforeAllSubcases((t) => {
}).
params((u) => u.combine('case', keysOf(kCases))).
fn((t) => {
+ if (t.params.case === 'requires_before') {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
const c = kCases[t.params.case];
t.expectCompileResult(c.pass, c.code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/must_use.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/must_use.spec.js
index 2bff48a4ab..5c96cba5b9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/must_use.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/must_use.spec.js
@@ -57,27 +57,74 @@ fn((t) => {
});
const kMustUseCalls = {
+ no_call: ``, // Never calling a @must_use function should pass
phony: `_ = bar();`,
let: `let tmp = bar();`,
- var: `var tmp = bar();`,
+ local_var: `var tmp = bar();`,
+ private_var: `private_var = bar();`,
+ storage_var: `storage_var = bar();`,
+ pointer: `
+ var a : f32;
+ let p = &a;
+ (*p) = bar();`,
+ vector_elem: `
+ var a : vec3<f32>;
+ a.x = bar();`,
+ matrix_elem: `
+ var a : mat3x2<f32>;
+ a[0][0] = bar();`,
condition: `if bar() == 0 { }`,
param: `baz(bar());`,
- statement: `bar();`
+ return: `return bar();`,
+ statement: `bar();` // should fail if bar is @must_use
};
g.test('call').
desc(`Validate that a call to must_use function cannot be the whole function call statement`).
-params((u) => u.combine('use', ['@must_use', '']).combine('call', keysOf(kMustUseCalls))).
+params((u) =>
+u //
+.combine('use', ['@must_use', '']).
+combine('call', keysOf(kMustUseCalls))
+).
fn((t) => {
const test = kMustUseCalls[t.params.call];
const code = `
- fn baz(param : u32) { }
- ${t.params.use} fn bar() -> u32 { return 0; }
- fn foo() {
+ @group(0) @binding(0) var<storage, read_write> storage_var : f32;
+ var<private> private_var : f32;
+
+ fn baz(param : f32) { }
+
+ ${t.params.use} fn bar() -> f32 { return 0; }
+
+ fn foo() ${t.params.call === 'return' ? '-> f32' : ''} {
${test}
}`;
- const res = t.params.call !== 'statement' || t.params.use === '';
- t.expectCompileResult(res, code);
+
+ const should_pass = t.params.call !== 'statement' || t.params.use === '';
+ t.expectCompileResult(should_pass, code);
+});
+
+g.test('ignore_result_of_non_must_use_that_returns_call_of_must_use').
+desc(
+ `Test that ignoring the result of a non-@must_use function that returns the result of a @must_use function succeeds`
+).
+fn((t) => {
+ const wgsl = `
+ @must_use
+ fn f() -> f32 {
+ return 0;
+ }
+
+ fn g() -> f32 {
+ return f();
+ }
+
+ fn main() {
+ g(); // Ignore result
+ }
+ `;
+
+ t.expectCompileResult(true, wgsl);
});
const kMustUseBuiltinCalls = {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/pipeline_stage.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/pipeline_stage.spec.js
index 4a94012262..018a6022d7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/pipeline_stage.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/pipeline_stage.spec.js
@@ -73,34 +73,46 @@ fn((t) => {
t.expectCompileResult(true, code);
});
-g.test('duplicate_compute_on_function').
-desc(`Test that duplcate @compute attributes are not allowed.`).
-params((u) => u.combine('dupe', ['', '@compute'])).
+g.test('extra_on_compute_function').
+desc(`Test that an extra stage attribute on @compute functions are not allowed.`).
+params((u) =>
+u.combine('extra', ['', '@compute', '@fragment', '@vertex']).combine('before', [false, true])
+).
fn((t) => {
+ const before = t.params.before ? t.params.extra : '';
+ const after = t.params.before ? '' : t.params.extra;
const code = `
-@compute ${t.params.dupe} @workgroup_size(1) fn compute_1() {}
+${before} @compute ${after} @workgroup_size(1) fn main() {}
`;
- t.expectCompileResult(t.params.dupe === '', code);
+ t.expectCompileResult(t.params.extra === '', code);
});
-g.test('duplicate_fragment_on_function').
-desc(`Test that duplcate @fragment attributes are not allowed.`).
-params((u) => u.combine('dupe', ['', '@fragment'])).
+g.test('extra_on_fragment_function').
+desc(`Test that an extra stage attribute on @fragment functions are not allowed.`).
+params((u) =>
+u.combine('extra', ['', '@compute', '@fragment', '@vertex']).combine('before', [false, true])
+).
fn((t) => {
+ const before = t.params.before ? t.params.extra : '';
+ const after = t.params.before ? '' : t.params.extra;
const code = `
-@fragment ${t.params.dupe} fn vtx() -> @location(0) vec4f { return vec4f(1); }
+${before} @fragment ${after} fn main() -> @location(0) vec4f { return vec4f(1); }
`;
- t.expectCompileResult(t.params.dupe === '', code);
+ t.expectCompileResult(t.params.extra === '', code);
});
-g.test('duplicate_vertex_on_function').
-desc(`Test that duplcate @vertex attributes are not allowed.`).
-params((u) => u.combine('dupe', ['', '@vertex'])).
+g.test('extra_on_vertex_function').
+desc(`Test that an extra stage attribute on @vertex functions are not allowed.`).
+params((u) =>
+u.combine('extra', ['', '@compute', '@fragment', '@vertex']).combine('before', [false, true])
+).
fn((t) => {
+ const before = t.params.before ? t.params.extra : '';
+ const after = t.params.before ? '' : t.params.extra;
const code = `
-@vertex ${t.params.dupe} fn vtx() -> @builtin(position) vec4f { return vec4f(1); }
+${before} @vertex ${after} fn main() -> @builtin(position) vec4f { return vec4f(1); }
`;
- t.expectCompileResult(t.params.dupe === '', code);
+ t.expectCompileResult(t.params.extra === '', code);
});
g.test('placement').
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/requires.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/requires.spec.js
new file mode 100644
index 0000000000..050feef2af
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/requires.spec.js
@@ -0,0 +1,103 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Parser validation tests for requires`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { kKnownWGSLLanguageFeatures } from '../../../capability_info.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kCases = {
+ valid: { code: `requires readonly_and_readwrite_storage_textures;`, pass: true },
+ decl_before: {
+ code: `alias i = i32;
+requires readonly_and_readwrite_storage_textures;`,
+ pass: false
+ },
+ decl_after: {
+ code: `requires readonly_and_readwrite_storage_textures;
+alias i = i32;`,
+ pass: true
+ },
+ enable_before: {
+ code: `enable f16;
+requires readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ diagnostic_before: {
+ code: `diagnostic(info, derivative_uniformity);
+requires readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ const_assert_before: {
+ code: `const_assert 1 == 1;
+requires readonly_and_readwrite_storage_textures;`,
+ pass: false
+ },
+ const_assert_after: {
+ code: `requires readonly_and_readwrite_storage_textures;
+const_assert 1 == 1;`,
+ pass: true
+ },
+ embedded_comment: {
+ code: `/* comment
+
+*/requires readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ parens: {
+ code: `requires(readonly_and_readwrite_storage_textures);`,
+ pass: false
+ },
+ multi_line: {
+ code: `requires
+readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ multiple_requires_duplicate: {
+ code: `requires readonly_and_readwrite_storage_textures;
+requires readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ multiple_requires_different: {
+ code: `requires readonly_and_readwrite_storage_textures;
+requires packed_4x8_integer_dot_product;`,
+ pass: true
+ },
+ multiple_entries_duplicate: {
+ code: `requires readonly_and_readwrite_storage_textures, readonly_and_readwrite_storage_textures, readonly_and_readwrite_storage_textures;`,
+ pass: true
+ },
+ multiple_entries_different: {
+ code: `requires readonly_and_readwrite_storage_textures, packed_4x8_integer_dot_product;`,
+ pass: true
+ },
+ unknown: {
+ code: `requires unknown;`,
+ pass: false
+ }
+};
+
+g.test('requires').
+desc(`Tests that requires are validated correctly.`).
+params((u) => u.combine('case', keysOf(kCases))).
+beforeAllSubcases((t) => {
+ if (t.params.case === 'enable_before') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ t.skipIfLanguageFeatureNotSupported('packed_4x8_integer_dot_product');
+
+ const c = kCases[t.params.case];
+ t.expectCompileResult(c.pass, c.code);
+});
+
+g.test('wgsl_matches_api').
+desc(`Tests that language features are accepted iff the API reports support for them.`).
+params((u) => u.combine('feature', kKnownWGSLLanguageFeatures)).
+fn((t) => {
+ const code = `requires ${t.params.feature};`;
+ t.expectCompileResult(t.hasLanguageFeature(t.params.feature), code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/semicolon.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/semicolon.spec.js
index f7af6a0b3e..d2feb676b1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/semicolon.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/semicolon.spec.js
@@ -27,6 +27,21 @@ fn((t) => {
t.expectCompileResult( /* pass */false, `enable f16`);
});
+g.test('after_requires').
+desc(`Test that a semicolon must be placed after a requires directive.`).
+fn((t) => {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ t.expectCompileResult( /* pass */true, `requires readonly_and_readwrite_storage_textures;`);
+ t.expectCompileResult( /* pass */false, `requires readonly_and_readwrite_storage_textures`);
+});
+
+g.test('after_diagnostic').
+desc(`Test that a semicolon must be placed after a requires directive.`).
+fn((t) => {
+ t.expectCompileResult( /* pass */true, `diagnostic(info, derivative_uniformity);`);
+ t.expectCompileResult( /* pass */false, `diagnostic(info, derivative_uniformity)`);
+});
+
g.test('after_struct_decl').
desc(`Test that a semicolon can be placed after an struct declaration.`).
fn((t) => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/shadow_builtins.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/shadow_builtins.spec.js
new file mode 100644
index 0000000000..a80ba712a3
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/shadow_builtins.spec.js
@@ -0,0 +1,995 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation tests for identifiers`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('function_param').
+desc(
+ `Test that a function param can shadow a builtin, but the builtin is available for other params.`
+).
+fn((t) => {
+ const code = `
+fn f(f: i32, i32: i32, t: i32) -> i32 { return i32; }
+ `;
+ t.expectCompileResult(true, code);
+});
+
+const kTests = {
+ abs: {
+ keyword: `abs`,
+ src: `_ = abs(1);`
+ },
+ acos: {
+ keyword: `acos`,
+ src: `_ = acos(.2);`
+ },
+ acosh: {
+ keyword: `acosh`,
+ src: `_ = acosh(1.2);`
+ },
+ all: {
+ keyword: `all`,
+ src: `_ = all(true);`
+ },
+ any: {
+ keyword: `any`,
+ src: `_ = any(true);`
+ },
+ array_templated: {
+ keyword: `array`,
+ src: `_ = array<i32, 2>(1, 2);`
+ },
+ array: {
+ keyword: `array`,
+ src: `_ = array(1, 2);`
+ },
+ array_length: {
+ keyword: `arrayLength`,
+ src: `_ = arrayLength(&placeholder.rt_arr);`
+ },
+ asin: {
+ keyword: `asin`,
+ src: `_ = asin(.2);`
+ },
+ asinh: {
+ keyword: `asinh`,
+ src: `_ = asinh(1.2);`
+ },
+ atan: {
+ keyword: `atan`,
+ src: `_ = atan(1.2);`
+ },
+ atanh: {
+ keyword: `atanh`,
+ src: `_ = atanh(.2);`
+ },
+ atan2: {
+ keyword: `atan2`,
+ src: `_ = atan2(1.2, 2.3);`
+ },
+ bool: {
+ keyword: `bool`,
+ src: `_ = bool(1);`
+ },
+ bitcast: {
+ keyword: `bitcast`,
+ src: `_ = bitcast<f32>(1i);`
+ },
+ ceil: {
+ keyword: `ceil`,
+ src: `_ = ceil(1.23);`
+ },
+ clamp: {
+ keyword: `clamp`,
+ src: `_ = clamp(1, 2, 3);`
+ },
+ cos: {
+ keyword: `cos`,
+ src: `_ = cos(2);`
+ },
+ cosh: {
+ keyword: `cosh`,
+ src: `_ = cosh(2.2);`
+ },
+ countLeadingZeros: {
+ keyword: `countLeadingZeros`,
+ src: `_ = countLeadingZeros(1);`
+ },
+ countOneBits: {
+ keyword: `countOneBits`,
+ src: `_ = countOneBits(1);`
+ },
+ countTrailingZeros: {
+ keyword: `countTrailingZeros`,
+ src: `_ = countTrailingZeros(1);`
+ },
+ cross: {
+ keyword: `cross`,
+ src: `_ = cross(vec3(1, 2, 3), vec3(4, 5, 6));`
+ },
+ degrees: {
+ keyword: `degrees`,
+ src: `_ = degrees(1);`
+ },
+ determinant: {
+ keyword: `determinant`,
+ src: `_ = determinant(mat2x2(1, 2, 3, 4));`
+ },
+ distance: {
+ keyword: `distance`,
+ src: `_ = distance(1, 2);`
+ },
+ dot: {
+ keyword: `dot`,
+ src: `_ = dot(vec2(1, 2,), vec2(2, 3));`
+ },
+ dot4U8Packed: {
+ keyword: `dot4U8Packed`,
+ src: `_ = dot4U8Packed(1, 2);`
+ },
+ dot4I8Packed: {
+ keyword: `dot4I8Packed`,
+ src: `_ = dot4I8Packed(1, 2);`
+ },
+ dpdx: {
+ keyword: `dpdx`,
+ src: `_ = dpdx(2);`
+ },
+ dpdxCoarse: {
+ keyword: `dpdxCoarse`,
+ src: `_ = dpdxCoarse(2);`
+ },
+ dpdxFine: {
+ keyword: `dpdxFine`,
+ src: `_ = dpdxFine(2);`
+ },
+ dpdy: {
+ keyword: `dpdy`,
+ src: `_ = dpdy(2);`
+ },
+ dpdyCoarse: {
+ keyword: `dpdyCoarse`,
+ src: `_ = dpdyCoarse(2);`
+ },
+ dpdyFine: {
+ keyword: `dpdyFine`,
+ src: `_ = dpdyFine(2);`
+ },
+ exp: {
+ keyword: `exp`,
+ src: `_ = exp(1);`
+ },
+ exp2: {
+ keyword: `exp2`,
+ src: `_ = exp2(2);`
+ },
+ extractBits: {
+ keyword: `extractBits`,
+ src: `_ = extractBits(1, 2, 3);`
+ },
+ f32: {
+ keyword: `f32`,
+ src: `_ = f32(1i);`
+ },
+ faceForward: {
+ keyword: `faceForward`,
+ src: `_ = faceForward(vec2(1, 2), vec2(3, 4), vec2(5, 6));`
+ },
+ firstLeadingBit: {
+ keyword: `firstLeadingBit`,
+ src: `_ = firstLeadingBit(1);`
+ },
+ firstTrailingBit: {
+ keyword: `firstTrailingBit`,
+ src: `_ = firstTrailingBit(1);`
+ },
+ floor: {
+ keyword: `floor`,
+ src: `_ = floor(1.2);`
+ },
+ fma: {
+ keyword: `fma`,
+ src: `_ = fma(1, 2, 3);`
+ },
+ fract: {
+ keyword: `fract`,
+ src: `_ = fract(1);`
+ },
+ frexp: {
+ keyword: `frexp`,
+ src: `_ = frexp(1);`
+ },
+ fwidth: {
+ keyword: `fwidth`,
+ src: `_ = fwidth(2);`
+ },
+ fwidthCoarse: {
+ keyword: `fwidthCoarse`,
+ src: `_ = fwidthCoarse(2);`
+ },
+ fwidthFine: {
+ keyword: `fwidthFine`,
+ src: `_ = fwidthFine(2);`
+ },
+ i32: {
+ keyword: `i32`,
+ src: `_ = i32(2u);`
+ },
+ insertBits: {
+ keyword: `insertBits`,
+ src: `_ = insertBits(1, 2, 3, 4);`
+ },
+ inverseSqrt: {
+ keyword: `inverseSqrt`,
+ src: `_ = inverseSqrt(1);`
+ },
+ ldexp: {
+ keyword: `ldexp`,
+ src: `_ = ldexp(1, 2);`
+ },
+ length: {
+ keyword: `length`,
+ src: `_ = length(1);`
+ },
+ log: {
+ keyword: `log`,
+ src: `_ = log(2);`
+ },
+ log2: {
+ keyword: `log2`,
+ src: `_ = log2(2);`
+ },
+ mat2x2_templated: {
+ keyword: `mat2x2`,
+ src: `_ = mat2x2<f32>(1, 2, 3, 4);`
+ },
+ mat2x2: {
+ keyword: `mat2x2`,
+ src: `_ = mat2x2(1, 2, 3, 4);`
+ },
+ mat2x3_templated: {
+ keyword: `mat2x3`,
+ src: `_ = mat2x3<f32>(1, 2, 3, 4, 5, 6);`
+ },
+ mat2x3: {
+ keyword: `mat2x3`,
+ src: `_ = mat2x3(1, 2, 3, 4, 5, 6);`
+ },
+ mat2x4_templated: {
+ keyword: `mat2x4`,
+ src: `_ = mat2x4<f32>(1, 2, 3, 4, 5, 6, 7, 8);`
+ },
+ mat2x4: {
+ keyword: `mat2x4`,
+ src: `_ = mat2x4(1, 2, 3, 4, 5, 6, 7, 8);`
+ },
+ mat3x2_templated: {
+ keyword: `mat3x2`,
+ src: `_ = mat3x2<f32>(1, 2, 3, 4, 5, 6);`
+ },
+ mat3x2: {
+ keyword: `mat3x2`,
+ src: `_ = mat3x2(1, 2, 3, 4, 5, 6);`
+ },
+ mat3x3_templated: {
+ keyword: `mat3x3`,
+ src: `_ = mat3x3<f32>(1, 2, 3, 4, 5, 6, 7, 8, 9);`
+ },
+ mat3x3: {
+ keyword: `mat3x3`,
+ src: `_ = mat3x3(1, 2, 3, 4, 5, 6, 7, 8, 9);`
+ },
+ mat3x4_templated: {
+ keyword: `mat3x4`,
+ src: `_ = mat3x4<f32>(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);`
+ },
+ mat3x4: {
+ keyword: `mat3x4`,
+ src: `_ = mat3x4(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);`
+ },
+ mat4x2_templated: {
+ keyword: `mat4x2`,
+ src: `_ = mat4x2<f32>(1, 2, 3, 4, 5, 6, 7, 8);`
+ },
+ mat4x2: {
+ keyword: `mat4x2`,
+ src: `_ = mat4x2(1, 2, 3, 4, 5, 6, 7, 8);`
+ },
+ mat4x3_templated: {
+ keyword: `mat4x3`,
+ src: `_ = mat4x3<f32>(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);`
+ },
+ mat4x3: {
+ keyword: `mat4x3`,
+ src: `_ = mat4x3(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);`
+ },
+ mat4x4_templated: {
+ keyword: `mat4x4`,
+ src: `_ = mat4x4<f32>(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16);`
+ },
+ mat4x4: {
+ keyword: `mat4x4`,
+ src: `_ = mat4x4(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16);`
+ },
+ max: {
+ keyword: `max`,
+ src: `_ = max(1, 2);`
+ },
+ min: {
+ keyword: `min`,
+ src: `_ = min(1, 2);`
+ },
+ mix: {
+ keyword: `mix`,
+ src: `_ = mix(1, 2, 3);`
+ },
+ modf: {
+ keyword: `modf`,
+ src: `_ = modf(1.2);`
+ },
+ normalize: {
+ keyword: `normalize`,
+ src: `_ = normalize(vec2(1, 2));`
+ },
+ pack2x16snorm: {
+ keyword: `pack2x16snorm`,
+ src: `_ = pack2x16snorm(vec2(1, 2));`
+ },
+ pack2x16unorm: {
+ keyword: `pack2x16unorm`,
+ src: `_ = pack2x16unorm(vec2(1, 2));`
+ },
+ pack2x16float: {
+ keyword: `pack2x16float`,
+ src: `_ = pack2x16float(vec2(1, 2));`
+ },
+ pack4x8snorm: {
+ keyword: `pack4x8snorm`,
+ src: `_ = pack4x8snorm(vec4(1, 2, 3, 4));`
+ },
+ pack4x8unorm: {
+ keyword: `pack4x8unorm`,
+ src: `_ = pack4x8unorm(vec4(1, 2, 3, 4));`
+ },
+ pack4xI8: {
+ keyword: `pack4xI8`,
+ src: `_ = pack4xI8(vec4(1, 2, 3, 4));`
+ },
+ pack4xU8: {
+ keyword: `pack4xU8`,
+ src: `_ = pack4xU8(vec4(1, 2, 3, 4));`
+ },
+ pack4xI8Clamp: {
+ keyword: `pack4xI8Clamp`,
+ src: `_ = pack4xI8Clamp(vec4(1, 2, 3, 4));`
+ },
+ pack4xU8Clamp: {
+ keyword: `pack4xU8Clamp`,
+ src: `_ = pack4xU8Clamp(vec4(1, 2, 3, 4));`
+ },
+ pow: {
+ keyword: `pow`,
+ src: `_ = pow(1, 2);`
+ },
+ quantizeToF16: {
+ keyword: `quantizeToF16`,
+ src: `_ = quantizeToF16(1.2);`
+ },
+ radians: {
+ keyword: `radians`,
+ src: `_ = radians(1.2);`
+ },
+ reflect: {
+ keyword: `reflect`,
+ src: `_ = reflect(vec2(1, 2), vec2(3, 4));`
+ },
+ refract: {
+ keyword: `refract`,
+ src: `_ = refract(vec2(1, 1), vec2(2, 2), 3);`
+ },
+ reverseBits: {
+ keyword: `reverseBits`,
+ src: `_ = reverseBits(1);`
+ },
+ round: {
+ keyword: `round`,
+ src: `_ = round(1.2);`
+ },
+ saturate: {
+ keyword: `saturate`,
+ src: `_ = saturate(1);`
+ },
+ select: {
+ keyword: `select`,
+ src: `_ = select(1, 2, false);`
+ },
+ sign: {
+ keyword: `sign`,
+ src: `_ = sign(1);`
+ },
+ sin: {
+ keyword: `sin`,
+ src: `_ = sin(2);`
+ },
+ sinh: {
+ keyword: `sinh`,
+ src: `_ = sinh(3);`
+ },
+ smoothstep: {
+ keyword: `smoothstep`,
+ src: `_ = smoothstep(1, 2, 3);`
+ },
+ sqrt: {
+ keyword: `sqrt`,
+ src: `_ = sqrt(24);`
+ },
+ step: {
+ keyword: `step`,
+ src: `_ = step(4, 5);`
+ },
+ tan: {
+ keyword: `tan`,
+ src: `_ = tan(2);`
+ },
+ tanh: {
+ keyword: `tanh`,
+ src: `_ = tanh(2);`
+ },
+ transpose: {
+ keyword: `transpose`,
+ src: `_ = transpose(mat2x2(1, 2, 3, 4));`
+ },
+ trunc: {
+ keyword: `trunc`,
+ src: `_ = trunc(2);`
+ },
+ u32: {
+ keyword: `u32`,
+ src: `_ = u32(1i);`
+ },
+ unpack2x16snorm: {
+ keyword: `unpack2x16snorm`,
+ src: `_ = unpack2x16snorm(2);`
+ },
+ unpack2x16unorm: {
+ keyword: `unpack2x16unorm`,
+ src: `_ = unpack2x16unorm(2);`
+ },
+ unpack2x16float: {
+ keyword: `unpack2x16float`,
+ src: `_ = unpack2x16float(2);`
+ },
+ unpack4x8snorm: {
+ keyword: `unpack4x8snorm`,
+ src: `_ = unpack4x8snorm(4);`
+ },
+ unpack4x8unorm: {
+ keyword: `unpack4x8unorm`,
+ src: `_ = unpack4x8unorm(4);`
+ },
+ unpack4xI8: {
+ keyword: `unpack4xI8`,
+ src: `_ = unpack4xI8(4);`
+ },
+ unpack4xU8: {
+ keyword: `unpack4xU8`,
+ src: `_ = unpack4xU8(4);`
+ },
+ vec2_templated: {
+ keyword: `vec2`,
+ src: `_ = vec2<f32>(1, 2);`
+ },
+ vec2: {
+ keyword: `vec2`,
+ src: `_ = vec2(1, 2);`
+ },
+ vec3_templated: {
+ keyword: `vec3`,
+ src: `_ = vec3<f32>(1, 2, 3);`
+ },
+ vec3: {
+ keyword: `vec3`,
+ src: `_ = vec3(1, 2, 3);`
+ },
+ vec4_templated: {
+ keyword: `vec4`,
+ src: `_ = vec4<f32>(1, 2, 3, 4);`
+ },
+ vec4: {
+ keyword: `vec4`,
+ src: `_ = vec4(1, 2, 3, 4);`
+ }
+};
+
+g.test('shadow_hides_builtin').
+desc(`Test that shadows hide builtins.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'sibling', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kTests))
+).
+fn((t) => {
+ const data = kTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : i32;` : ``;
+ const sibling_func = t.params.inject === 'sibling' ? local : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+struct Data {
+ rt_arr: array<i32>,
+}
+@group(0) @binding(0) var<storage> placeholder: Data;
+
+${module_shadow}
+
+fn sibling() {
+ ${sibling_func}
+}
+
+@fragment
+fn main() -> @location(0) vec4f {
+ ${func}
+ ${data.src}
+ return vec4f(1);
+}
+ `;
+
+ const pass = t.params.inject === 'none' || t.params.inject === 'sibling';
+ t.expectCompileResult(pass, code);
+});
+
+const kFloat16Tests = {
+ f16: {
+ keyword: `f16`,
+ src: `_ = f16(2);`
+ }
+};
+
+g.test('shadow_hides_builtin_f16').
+desc(`Test that shadows hide builtins when shader-f16 is enabled.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'sibling', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kFloat16Tests))
+).
+beforeAllSubcases((t) => {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+}).
+fn((t) => {
+ const data = kFloat16Tests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : f16;` : ``;
+ const sibling_func = t.params.inject === 'sibling' ? local : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+enable f16;
+
+${module_shadow}
+
+fn sibling() {
+ ${sibling_func}
+}
+
+@vertex
+fn vtx() -> @builtin(position) vec4f {
+ ${func}
+ ${data.src}
+ return vec4f(1);
+}
+ `;
+ const pass = t.params.inject === 'none' || t.params.inject === 'sibling';
+ t.expectCompileResult(pass, code);
+});
+
+const kTextureTypeTests = {
+ texture_1d: {
+ keyword: `texture_1d`,
+ src: `var t: texture_1d<f32>;`
+ },
+ texture_2d: {
+ keyword: `texture_2d`,
+ src: `var t: texture_2d<f32>;`
+ },
+ texture_2d_array: {
+ keyword: `texture_2d_array`,
+ src: `var t: texture_2d_array<f32>;`
+ },
+ texture_3d: {
+ keyword: `texture_3d`,
+ src: `var t: texture_3d<f32>;`
+ },
+ texture_cube: {
+ keyword: `texture_cube`,
+ src: `var t: texture_cube<f32>;`
+ },
+ texture_cube_array: {
+ keyword: `texture_cube_array`,
+ src: `var t: texture_cube_array<f32>;`
+ },
+ texture_multisampled_2d: {
+ keyword: `texture_multisampled_2d`,
+ src: `var t: texture_multisampled_2d<f32>;`
+ },
+ texture_depth_multisampled_2d: {
+ keyword: `texture_depth_multisampled_2d`,
+ src: `var t: texture_depth_multisampled_2d;`
+ },
+ texture_external: {
+ keyword: `texture_external`,
+ src: `var t: texture_external;`
+ },
+ texture_storage_1d: {
+ keyword: `texture_storage_1d`,
+ src: `var t: texture_storage_1d<rgba8unorm, read_write>;`
+ },
+ texture_storage_2d: {
+ keyword: `texture_storage_2d`,
+ src: `var t: texture_storage_2d<rgba8unorm, read_write>;`
+ },
+ texture_storage_2d_array: {
+ keyword: `texture_storage_2d_array`,
+ src: `var t: texture_storage_2d_array<rgba8unorm, read_write>;`
+ },
+ texture_storage_3d: {
+ keyword: `texture_storage_3d`,
+ src: `var t: texture_storage_3d<rgba8unorm, read_write>;`
+ },
+ texture_depth_2d: {
+ keyword: `texture_depth_2d`,
+ src: `var t: texture_depth_2d;`
+ },
+ texture_depth_2d_array: {
+ keyword: `texture_depth_2d_array`,
+ src: `var t: texture_depth_2d_array;`
+ },
+ texture_depth_cube: {
+ keyword: `texture_depth_cube`,
+ src: `var t: texture_depth_cube;`
+ },
+ texture_depth_cube_array: {
+ keyword: `texture_depth_cube_array`,
+ src: `var t: texture_depth_cube_array;`
+ },
+ sampler: {
+ keyword: `sampler`,
+ src: `var s: sampler;`
+ },
+ sampler_comparison: {
+ keyword: `sampler_comparison`,
+ src: `var s: sampler_comparison;`
+ }
+};
+
+g.test('shadow_hides_builtin_handle_type').
+desc(`Test that shadows hide builtins when handle address space types are used.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kTextureTypeTests))
+).
+fn((t) => {
+ const data = kTextureTypeTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : f32;` : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+${module_shadow}
+@group(0) @binding(0) ${data.src}
+
+fn func() {
+ ${func}
+}
+ `;
+ const pass = t.params.inject === 'none' || t.params.inject === 'function';
+ t.expectCompileResult(pass, code);
+});
+
+const kTextureTests = {
+ textureDimensions: {
+ keyword: `textureDimensions`,
+ src: `_ = textureDimensions(t_2d);`
+ },
+ textureGather: {
+ keyword: `textureGather`,
+ src: `_ = textureGather(1, t_2d, s, vec2(1, 2));`
+ },
+ textureGatherCompare: {
+ keyword: `textureGatherCompare`,
+ src: `_ = textureGatherCompare(t_2d_depth, sc, vec2(1, 2), 3);`
+ },
+ textureLoad: {
+ keyword: `textureLoad`,
+ src: `_ = textureLoad(t_2d, vec2(1, 2), 1);`
+ },
+ textureNumLayers: {
+ keyword: `textureNumLayers`,
+ src: `_ = textureNumLayers(t_2d_array);`
+ },
+ textureNumLevels: {
+ keyword: `textureNumLevels`,
+ src: `_ = textureNumLevels(t_2d);`
+ },
+ textureNumSamples: {
+ keyword: `textureNumSamples`,
+ src: `_ = textureNumSamples(t_2d_ms);`
+ },
+ textureSample: {
+ keyword: `textureSample`,
+ src: `_ = textureSample(t_2d, s, vec2(1, 2));`
+ },
+ textureSampleBias: {
+ keyword: `textureSampleBias`,
+ src: `_ = textureSampleBias(t_2d, s, vec2(1, 2), 2);`
+ },
+ textureSampleCompare: {
+ keyword: `textureSampleCompare`,
+ src: `_ = textureSampleCompare(t_2d_depth, sc, vec2(1, 2), 2);`
+ },
+ textureSampleCompareLevel: {
+ keyword: `textureSampleCompareLevel`,
+ src: `_ = textureSampleCompareLevel(t_2d_depth, sc, vec2(1, 2), 3, vec2(1, 2));`
+ },
+ textureSampleGrad: {
+ keyword: `textureSampleGrad`,
+ src: `_ = textureSampleGrad(t_2d, s, vec2(1, 2), vec2(1, 2), vec2(1, 2));`
+ },
+ textureSampleLevel: {
+ keyword: `textureSampleLevel`,
+ src: `_ = textureSampleLevel(t_2d, s, vec2(1, 2), 3);`
+ },
+ textureSampleBaseClampToEdge: {
+ keyword: `textureSampleBaseClampToEdge`,
+ src: `_ = textureSampleBaseClampToEdge(t_2d, s, vec2(1, 2));`
+ }
+};
+
+g.test('shadow_hides_builtin_texture').
+desc(`Test that shadows hide texture builtins.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'sibling', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kTextureTests))
+).
+fn((t) => {
+ const data = kTextureTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : i32;` : ``;
+ const sibling_func = t.params.inject === 'sibling' ? local : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+@group(0) @binding(0) var t_2d: texture_2d<f32>;
+@group(0) @binding(1) var t_2d_depth: texture_depth_2d;
+@group(0) @binding(2) var t_2d_array: texture_2d_array<f32>;
+@group(0) @binding(3) var t_2d_ms: texture_multisampled_2d<f32>;
+
+@group(1) @binding(0) var s: sampler;
+@group(1) @binding(1) var sc: sampler_comparison;
+
+${module_shadow}
+
+fn sibling() {
+ ${sibling_func}
+}
+
+@fragment
+fn main() -> @location(0) vec4f {
+ ${func}
+ ${data.src}
+ return vec4f(1);
+}
+ `;
+
+ const pass = t.params.inject === 'none' || t.params.inject === 'sibling';
+ t.expectCompileResult(pass, code);
+});
+
+g.test('shadow_hides_builtin_atomic_type').
+desc(`Test that shadows hide builtins when atomic types are used.`).
+params((u) => u.combine('inject', ['none', 'function', 'module']).beginSubcases()).
+fn((t) => {
+ const local = `let atomic = 4;`;
+ const module_shadow = t.params.inject === 'module' ? `var<private> atomic: i32;` : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+${module_shadow}
+
+var<workgroup> val: atomic<i32>;
+
+fn func() {
+ ${func}
+}
+ `;
+ const pass = t.params.inject === 'none' || t.params.inject === 'function';
+ t.expectCompileResult(pass, code);
+});
+
+const kAtomicTests = {
+ atomicLoad: {
+ keyword: `atomicLoad`,
+ src: `_ = atomicLoad(&a);`
+ },
+ atomicStore: {
+ keyword: `atomicStore`,
+ src: `atomicStore(&a, 1);`
+ },
+ atomicAdd: {
+ keyword: `atomicAdd`,
+ src: `_ = atomicAdd(&a, 1);`
+ },
+ atomicSub: {
+ keyword: `atomicSub`,
+ src: `_ = atomicSub(&a, 1);`
+ },
+ atomicMax: {
+ keyword: `atomicMax`,
+ src: `_ = atomicMax(&a, 1);`
+ },
+ atomicMin: {
+ keyword: `atomicMin`,
+ src: `_ = atomicMin(&a, 1);`
+ },
+ atomicAnd: {
+ keyword: `atomicAnd`,
+ src: `_ = atomicAnd(&a, 1);`
+ },
+ atomicOr: {
+ keyword: `atomicOr`,
+ src: `_ = atomicOr(&a, 1);`
+ },
+ atomicXor: {
+ keyword: `atomicXor`,
+ src: `_ = atomicXor(&a, 1);`
+ }
+};
+
+g.test('shadow_hides_builtin_atomic').
+desc(`Test that shadows hide builtin atomic methods.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'sibling', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kAtomicTests))
+).
+fn((t) => {
+ const data = kAtomicTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : i32;` : ``;
+ const sibling_func = t.params.inject === 'sibling' ? local : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+var<workgroup> a: atomic<i32>;
+
+${module_shadow}
+
+fn sibling() {
+ ${sibling_func}
+}
+
+@compute @workgroup_size(1)
+fn main() {
+ ${func}
+ ${data.src}
+}
+ `;
+
+ const pass = t.params.inject === 'none' || t.params.inject === 'sibling';
+ t.expectCompileResult(pass, code);
+});
+
+const kBarrierTests = {
+ storageBarrier: {
+ keyword: `storageBarrier`,
+ src: `storageBarrier();`
+ },
+ textureBarrier: {
+ keyword: `textureBarrier`,
+ src: `textureBarrier();`
+ },
+ workgroupBarrier: {
+ keyword: `workgroupBarrier`,
+ src: `workgroupBarrier();`
+ },
+ workgroupUniformLoad: {
+ keyword: `workgroupUniformLoad`,
+ src: `_ = workgroupUniformLoad(&u);`
+ }
+};
+
+g.test('shadow_hides_builtin_barriers').
+desc(`Test that shadows hide builtin barrier methods.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'sibling', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kBarrierTests))
+).
+fn((t) => {
+ const data = kBarrierTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : i32;` : ``;
+ const sibling_func = t.params.inject === 'sibling' ? local : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+var<workgroup> u: u32;
+
+${module_shadow}
+
+fn sibling() {
+ ${sibling_func}
+}
+
+@compute @workgroup_size(1)
+fn main() {
+ ${func}
+ ${data.src}
+}
+ `;
+
+ const pass = t.params.inject === 'none' || t.params.inject === 'sibling';
+ t.expectCompileResult(pass, code);
+});
+
+const kAccessModeTests = {
+ read: {
+ keyword: `read`,
+ src: `var<storage, read> a: i32;`
+ },
+ read_write: {
+ keyword: `read_write`,
+ src: `var<storage, read_write> a: i32;`
+ },
+ write: {
+ keyword: `write`,
+ src: `var t: texture_storage_1d<rgba8unorm, write>;`
+ }
+};
+
+g.test('shadow_hides_access_mode').
+desc(`Test that shadows hide access modes.`).
+params((u) =>
+u.
+combine('inject', ['none', 'function', 'module']).
+beginSubcases().
+combine('builtin', keysOf(kAccessModeTests))
+).
+fn((t) => {
+ const data = kAccessModeTests[t.params.builtin];
+ const local = `let ${data.keyword} = 4;`;
+
+ const module_shadow = t.params.inject === 'module' ? `var<private> ${data.keyword} : i32;` : ``;
+ const func = t.params.inject === 'function' ? local : ``;
+
+ const code = `
+${module_shadow}
+
+@group(0) @binding(0) ${data.src}
+
+@compute @workgroup_size(1)
+fn main() {
+ ${func}
+}
+ `;
+
+ const pass = t.params.inject === 'none' || t.params.inject === 'function';
+ t.expectCompileResult(pass, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/statement_behavior.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/statement_behavior.spec.js
new file mode 100644
index 0000000000..95407a7d68
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/parse/statement_behavior.spec.js
@@ -0,0 +1,143 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Test statement behavior analysis.
+
+Functions must have a behavior of {Return}, {Next}, or {Return, Next}.
+Functions with a return type must have a behavior of {Return}.
+
+Each statement in the function must be valid according to the table.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kInvalidStatements = {
+ break: `break`,
+ break_if: `break if true`,
+ continue: `continue`,
+ loop1: `loop { }`,
+ loop2: `loop { continuing { } }`,
+ loop3: `loop { continue; continuing { } }`,
+ loop4: `loop { continuing { break; } }`,
+ loop5: `loop { continuing { continue; } }`,
+ loop6: `loop { continuing { return; } }`,
+ loop7: `loop { continue; break; }`,
+ loop8: `loop { continuing { break if true; return; } }`,
+ for1: `for (;;) { }`,
+ for2: `for (var i = 0; ; i++) { }`,
+ for3: `for (;; break) { }`,
+ for4: `for (;; continue ) { }`,
+ for5: `for (;; return ) { }`,
+ for6: `for (;;) { continue; break; }`,
+ // while loops always have break in their behaviors.
+ switch1: `switch (1) { case 1 { } }`,
+ sequence1: `return; loop { }`,
+ compound1: `{ loop { } }`
+};
+
+g.test('invalid_statements').
+desc('Test statements with invalid behaviors').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#behaviors-rules').
+params((u) => u.combine('body', keysOf(kInvalidStatements))).
+fn((t) => {
+ const body = kInvalidStatements[t.params.body];
+ const code = `fn foo() {
+ ${body};
+ }`;
+ t.expectCompileResult(false, code);
+});
+
+const kValidStatements = {
+ empty: ``,
+ const_assert: `const_assert true`,
+ let: `let x = 1`,
+ var1: `var x = 1`,
+ var2: `var x : i32`,
+ assign: `v = 1`,
+ phony_assign: `_ = 1`,
+ compound_assign: `v += 1`,
+ return: `return`,
+ discard: `discard`,
+ function_call1: `bar()`,
+ function_call2: `workgroupBarrier()`,
+
+ if1: `if true { } else { }`,
+ if2: `if true { }`,
+
+ break1: `loop { break; }`,
+ break2: `loop { if false { break; } }`,
+ break_if: `loop { continuing { break if false; } }`,
+
+ continue1: `loop { continue; continuing { break if true; } }`,
+
+ loop1: `loop { break; }`,
+ loop2: `loop { break; continuing { } }`,
+ loop3: `loop { continue; continuing { break if true; } }`,
+ loop4: `loop { break; continue; }`,
+
+ for1: `for (; true; ) { }`,
+ for2: `for (;;) { break; }`,
+ for3: `for (;true;) { continue; }`,
+
+ while1: `while true { }`,
+ while2: `while true { continue; }`,
+ while3: `while true { continue; break; }`,
+
+ switch1: `switch 1 { default { } }`,
+ swtich2: `switch 1 { case 1 { } default { } }`,
+ switch3: `switch 1 { default { break; } }`,
+ switch4: `switch 1 { default { } case 1 { break; } }`,
+
+ sequence1: `return; let x = 1`,
+ sequence2: `if true { } let x = 1`,
+ sequence3: `switch 1 { default { break; return; } }`,
+
+ compound1: `{ }`,
+ compound2: `{ loop { break; } if true { return; } }`
+};
+
+g.test('valid_statements').
+desc('Test statements with valid behaviors').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#behaviors-rules').
+params((u) => u.combine('body', keysOf(kValidStatements))).
+fn((t) => {
+ const body = kValidStatements[t.params.body];
+ const code = `
+ var<private> v : i32;
+ fn bar() { }
+ fn foo() {
+ ${body};
+ }`;
+ t.expectCompileResult(true, code);
+});
+
+const kInvalidFunctions = {
+ next_for_type: `fn foo() -> bool { }`,
+ next_return_for_type: `fn foo() -> bool { if true { return true; } }`
+};
+
+g.test('invalid_functions').
+desc('Test functions with invalid behaviors').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#behaviors-rules').
+params((u) => u.combine('function', keysOf(kInvalidFunctions))).
+fn((t) => {
+ const func = kInvalidFunctions[t.params.function];
+ t.expectCompileResult(false, func);
+});
+
+const kValidFunctions = {
+ empty: `fn foo() { }`,
+ next_return: `fn foo() { if true { return; } }`,
+ no_final_return: `fn foo() -> bool { if true { return true; } else { return false; } }`
+};
+
+g.test('valid_functions').
+desc('Test functions with valid behaviors').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#behaviors-rules').
+params((u) => u.combine('function', keysOf(kValidFunctions))).
+fn((t) => {
+ const func = kValidFunctions[t.params.function];
+ t.expectCompileResult(true, func);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/binding.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/binding.spec.js
index d87af51d30..6e287bb6cd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/binding.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/binding.spec.js
@@ -123,18 +123,4 @@ var<storage> a: i32;
_ = a;
}`;
t.expectCompileResult(false, code);
-});
-
-g.test('binding_without_group').
-desc(`Test validation of binding without group`).
-fn((t) => {
- const code = `
-@binding(1)
-var<storage> a: i32;
-
-@workgroup_size(1, 1, 1)
-@compute fn main() {
- _ = a;
-}`;
- t.expectCompileResult(false, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/builtins.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/builtins.spec.js
index 07ea75828e..9aa013aa61 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/builtins.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/builtins.spec.js
@@ -103,9 +103,9 @@ desc(
params((u) =>
u.
combineWithParams(kBuiltins).
-combine('use_struct', [true, false]).
+beginSubcases().
combine('target_type', kTestTypes).
-beginSubcases()
+combine('use_struct', [true, false])
).
fn((t) => {
let code = '';
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group.spec.js
index 4c6a691e52..0477ef15f4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group.spec.js
@@ -123,18 +123,4 @@ var<storage> a: i32;
_ = a;
}`;
t.expectCompileResult(false, code);
-});
-
-g.test('group_without_binding').
-desc(`Test validation of group without binding`).
-fn((t) => {
- const code = `
-@group(1)
-var<storage> a: i32;
-
-@workgroup_size(1, 1, 1)
-@compute fn main() {
- _ = a;
-}`;
- t.expectCompileResult(false, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group_and_binding.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group_and_binding.spec.js
index d554700474..b63f33b4cf 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group_and_binding.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/group_and_binding.spec.js
@@ -95,12 +95,12 @@ u.
combine('stage', ['vertex', 'fragment', 'compute']).
combine('a_kind', kResourceKindsA).
combine('b_kind', kResourceKindsB).
+combine('usage', ['direct', 'transitive']).
+beginSubcases().
combine('a_group', [0, 3]).
combine('b_group', [0, 3]).
combine('a_binding', [0, 3]).
-combine('b_binding', [0, 3]).
-combine('usage', ['direct', 'transitive']).
-beginSubcases()
+combine('b_binding', [0, 3])
).
fn((t) => {
const resourceA = kResourceEmitters.get(t.params.a_kind);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/layout_constraints.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/layout_constraints.spec.js
new file mode 100644
index 0000000000..1f595f7d23
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/layout_constraints.spec.js
@@ -0,0 +1,543 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `Validation of address space layout constraints`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+
+
+
+
+
+
+
+const kLayoutCases = {
+ // Scalars
+ u32: {
+ type: 'u32',
+ validity: true
+ },
+ i32: {
+ type: 'i32',
+ validity: true
+ },
+ f32: {
+ type: 'f32',
+ validity: true
+ },
+ f16: {
+ type: 'f16',
+ validity: true,
+ f16: true
+ },
+ bool: {
+ type: 'bool',
+ validity: 'non-interface'
+ },
+
+ // Vectors
+ vec2u: {
+ type: 'vec2u',
+ validity: true
+ },
+ vec3u: {
+ type: 'vec3u',
+ validity: true
+ },
+ vec4u: {
+ type: 'vec4u',
+ validity: true
+ },
+ vec2i: {
+ type: 'vec2i',
+ validity: true
+ },
+ vec3i: {
+ type: 'vec3i',
+ validity: true
+ },
+ vec4i: {
+ type: 'vec4i',
+ validity: true
+ },
+ vec2f: {
+ type: 'vec2f',
+ validity: true
+ },
+ vec3f: {
+ type: 'vec3f',
+ validity: true
+ },
+ vec4f: {
+ type: 'vec4f',
+ validity: true
+ },
+ vec2h: {
+ type: 'vec2h',
+ validity: true,
+ f16: true
+ },
+ vec3h: {
+ type: 'vec3h',
+ validity: true,
+ f16: true
+ },
+ vec4h: {
+ type: 'vec4h',
+ validity: true,
+ f16: true
+ },
+ vec2b: {
+ type: 'vec2<bool>',
+ validity: 'non-interface'
+ },
+ vec3b: {
+ type: 'vec3<bool>',
+ validity: 'non-interface'
+ },
+ vec4b: {
+ type: 'vec4<bool>',
+ validity: 'non-interface'
+ },
+
+ // Matrices
+ mat2x2f: {
+ type: 'mat2x2f',
+ validity: true
+ },
+ mat2x3f: {
+ type: 'mat2x3f',
+ validity: true
+ },
+ mat2x4f: {
+ type: 'mat2x4f',
+ validity: true
+ },
+ mat3x2f: {
+ type: 'mat3x2f',
+ validity: true
+ },
+ mat3x3f: {
+ type: 'mat3x3f',
+ validity: true
+ },
+ mat3x4f: {
+ type: 'mat3x4f',
+ validity: true
+ },
+ mat4x2f: {
+ type: 'mat4x2f',
+ validity: true
+ },
+ mat4x3f: {
+ type: 'mat4x3f',
+ validity: true
+ },
+ mat4x4f: {
+ type: 'mat4x4f',
+ validity: true
+ },
+ mat2x2h: {
+ type: 'mat2x2h',
+ validity: true,
+ f16: true
+ },
+ mat2x3h: {
+ type: 'mat2x3h',
+ validity: true,
+ f16: true
+ },
+ mat2x4h: {
+ type: 'mat2x4h',
+ validity: true,
+ f16: true
+ },
+ mat3x2h: {
+ type: 'mat3x2h',
+ validity: true,
+ f16: true
+ },
+ mat3x3h: {
+ type: 'mat3x3h',
+ validity: true,
+ f16: true
+ },
+ mat3x4h: {
+ type: 'mat3x4h',
+ validity: true,
+ f16: true
+ },
+ mat4x2h: {
+ type: 'mat4x2h',
+ validity: true,
+ f16: true
+ },
+ mat4x3h: {
+ type: 'mat4x3h',
+ validity: true,
+ f16: true
+ },
+ mat4x4h: {
+ type: 'mat4x4h',
+ validity: true,
+ f16: true
+ },
+
+ // Atomics
+ atomic_u32: {
+ type: 'atomic<u32>',
+ validity: 'atomic'
+ },
+ atomic_i32: {
+ type: 'atomic<i32>',
+ validity: 'atomic'
+ },
+
+ // Sized arrays
+ array_u32: {
+ type: 'array<u32, 16>',
+ validity: 'non-uniform'
+ },
+ array_i32: {
+ type: 'array<i32, 16>',
+ validity: 'non-uniform'
+ },
+ array_f32: {
+ type: 'array<f32, 16>',
+ validity: 'non-uniform'
+ },
+ array_f16: {
+ type: 'array<f16, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_bool: {
+ type: 'array<bool, 16>',
+ validity: 'non-interface'
+ },
+ array_vec2f: {
+ type: 'array<vec2f, 16>',
+ validity: 'non-uniform'
+ },
+ array_vec3f: {
+ type: 'array<vec3f, 16>',
+ validity: true
+ },
+ array_vec4f: {
+ type: 'array<vec4f, 16>',
+ validity: true
+ },
+ array_vec2h: {
+ type: 'array<vec2h, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_vec3h: {
+ type: 'array<vec3h, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_vec4h: {
+ type: 'array<vec4h, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_vec2b: {
+ type: 'array<vec2<bool>, 16>',
+ validity: 'non-interface'
+ },
+ array_vec3b: {
+ type: 'array<vec3<bool>, 16>',
+ validity: 'non-interface'
+ },
+ array_vec4b: {
+ type: 'array<vec4<bool>, 16>',
+ validity: 'non-interface'
+ },
+ array_mat2x2f: {
+ type: 'array<mat2x2f, 16>',
+ validity: true
+ },
+ array_mat2x4f: {
+ type: 'array<mat2x4f, 16>',
+ validity: true
+ },
+ array_mat4x2f: {
+ type: 'array<mat4x2f, 16>',
+ validity: true
+ },
+ array_mat4x4f: {
+ type: 'array<mat4x4f, 16>',
+ validity: true
+ },
+ array_mat2x2h: {
+ type: 'array<mat2x2h, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_mat2x4h: {
+ type: 'array<mat2x4h, 16>',
+ validity: true,
+ f16: true
+ },
+ array_mat3x2h: {
+ type: 'array<mat3x2h, 16>',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_mat4x2h: {
+ type: 'array<mat4x2h, 16>',
+ validity: true,
+ f16: true
+ },
+ array_mat4x4h: {
+ type: 'array<mat4x4h, 16>',
+ validity: true,
+ f16: true
+ },
+ array_atomic: {
+ type: 'array<atomic<u32>, 16>',
+ validity: 'atomic'
+ },
+
+ // Runtime arrays
+ runtime_array_u32: {
+ type: 'array<u32>',
+ validity: 'storage'
+ },
+ runtime_array_i32: {
+ type: 'array<i32>',
+ validity: 'storage'
+ },
+ runtime_array_f32: {
+ type: 'array<f32>',
+ validity: 'storage'
+ },
+ runtime_array_f16: {
+ type: 'array<f16>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_bool: {
+ type: 'array<bool>',
+ validity: false
+ },
+ runtime_array_vec2f: {
+ type: 'array<vec2f>',
+ validity: 'storage'
+ },
+ runtime_array_vec3f: {
+ type: 'array<vec3f>',
+ validity: 'storage'
+ },
+ runtime_array_vec4f: {
+ type: 'array<vec4f>',
+ validity: 'storage'
+ },
+ runtime_array_vec2h: {
+ type: 'array<vec2h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_vec3h: {
+ type: 'array<vec3h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_vec4h: {
+ type: 'array<vec4h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_vec2b: {
+ type: 'array<vec2<bool>>',
+ validity: false
+ },
+ runtime_array_vec3b: {
+ type: 'array<vec3<bool>>',
+ validity: false
+ },
+ runtime_array_vec4b: {
+ type: 'array<vec4<bool>>',
+ validity: false
+ },
+ runtime_array_mat2x2f: {
+ type: 'array<mat2x2f>',
+ validity: 'storage'
+ },
+ runtime_array_mat2x4f: {
+ type: 'array<mat2x4f>',
+ validity: 'storage'
+ },
+ runtime_array_mat4x2f: {
+ type: 'array<mat4x2f>',
+ validity: 'storage'
+ },
+ runtime_array_mat4x4f: {
+ type: 'array<mat4x4f>',
+ validity: 'storage'
+ },
+ runtime_array_mat2x2h: {
+ type: 'array<mat2x2h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_mat2x4h: {
+ type: 'array<mat2x4h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_mat3x2h: {
+ type: 'array<mat3x2h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_mat4x2h: {
+ type: 'array<mat4x2h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_mat4x4h: {
+ type: 'array<mat4x4h>',
+ validity: 'storage',
+ f16: true
+ },
+ runtime_array_atomic: {
+ type: 'array<atomic<u32>>',
+ validity: 'storage'
+ },
+
+ // Structs (and arrays of structs)
+ array_struct_u32: {
+ type: 'array<S, 16>',
+ decls: 'struct S { x : u32 }',
+ validity: 'non-uniform'
+ },
+ array_struct_u32_size16: {
+ type: 'array<S, 16>',
+ decls: 'struct S { @size(16) x : u32 }',
+ validity: true
+ },
+ array_struct_vec2f: {
+ type: 'array<S, 16>',
+ decls: 'struct S { x : vec2f }',
+ validity: 'non-uniform'
+ },
+ array_struct_vec2h: {
+ type: 'array<S, 16>',
+ decls: 'struct S { x : vec2h }',
+ validity: 'non-uniform',
+ f16: true
+ },
+ array_struct_vec2h_align16: {
+ type: 'array<S, 16>',
+ decls: 'struct S { @align(16) x : vec2h }',
+ validity: true,
+ f16: true
+ },
+ size_too_small: {
+ type: 'S',
+ decls: 'struct S { @size(2) x : u32 }',
+ validity: false
+ },
+ struct_padding: {
+ type: 'S',
+ decls: `struct T { x : u32 }
+ struct S { t : T, x : u32 }`,
+ validity: 'non-uniform'
+ },
+ struct_array_u32: {
+ type: 'S',
+ decls: 'struct S { x : array<u32, 4> }',
+ validity: 'non-uniform'
+ },
+ struct_runtime_array_u32: {
+ type: 'S',
+ decls: 'struct S { x : array<u32> }',
+ validity: 'storage'
+ },
+ array_struct_size_5: {
+ type: 'array<S, 16>',
+ decls: 'struct S { @size(5) x : u32, y : u32 }',
+ validity: 'non-uniform'
+ },
+ array_struct_size_5x2: {
+ type: 'array<S, 16>',
+ decls: 'struct S { @size(5) x : u32, @size(5) y : u32 }',
+ validity: true
+ },
+ struct_size_5: {
+ type: 'S',
+ decls: `struct T { @size(5) x : u32 }
+ struct S { x : u32, y : T }`,
+ validity: 'non-uniform'
+ },
+ struct_size_5_align16: {
+ type: 'S',
+ decls: `struct T { @align(16) @size(5) x : u32 }
+ struct S { x : u32, y : T }`,
+ validity: true
+ }
+};
+
+g.test('layout_constraints').
+desc('Test address space layout constraints').
+params((u) =>
+u.
+combine('case', keysOf(kLayoutCases)).
+beginSubcases().
+combine('aspace', ['storage', 'uniform', 'function', 'private', 'workgroup'])
+).
+beforeAllSubcases((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ if (testcase.f16) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const testcase = kLayoutCases[t.params.case];
+ const decls = testcase.decls !== undefined ? testcase.decls : '';
+ let code = `
+${testcase.f16 ? 'enable f16;' : ''}
+${decls}
+
+`;
+
+ switch (t.params.aspace) {
+ case 'storage':
+ code += `@group(0) @binding(0) var<storage, read_write> v : ${testcase.type};\n`;
+ break;
+ case 'uniform':
+ code += `@group(0) @binding(0) var<uniform> v : ${testcase.type};\n`;
+ break;
+ case 'workgroup':
+ code += `var<workgroup> v : ${testcase.type};\n`;
+ break;
+ case 'private':
+ code += `var<private> v : ${testcase.type};\n`;
+ break;
+ default:
+ break;
+ }
+
+ code += `@compute @workgroup_size(1,1,1)
+ fn main() {
+ `;
+
+ if (t.params.aspace === 'function') {
+ code += `var v : ${testcase.type};\n`;
+ }
+ code += `}\n`;
+
+ const is_interface = t.params.aspace === 'uniform' || t.params.aspace === 'storage';
+ const supports_atomic = t.params.aspace === 'storage' || t.params.aspace === 'workgroup';
+ const expect =
+ testcase.validity === true ||
+ testcase.validity === 'non-uniform' && t.params.aspace !== 'uniform' ||
+ testcase.validity === 'non-interface' && !is_interface ||
+ testcase.validity === 'storage' && t.params.aspace === 'storage' ||
+ testcase.validity === 'atomic' && supports_atomic;
+ t.expectCompileResult(expect, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/locations.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/locations.spec.js
index 7dd5492283..2d2ae03b74 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/locations.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/locations.spec.js
@@ -379,4 +379,153 @@ fn((t) => {
return vec4f();
}`;
t.expectCompileResult(t.params.ext === '', code);
+});
+
+
+
+
+
+
+
+
+
+const kOutOfOrderCases = {
+ reverse_params: {
+ params: `@location(2) p1 : f32, @location(1) p2 : f32, @location(0) p3 : f32`,
+ valid: true
+ },
+ no_zero_params: {
+ params: `@location(2) p1 : f32, @location(1) p2 : f32`,
+ valid: true
+ },
+ reverse_overlap: {
+ params: `@location(2) p1 : f32, @location(1) p2 : f32, @location(1) p3 : f32`,
+ valid: false
+ },
+ struct: {
+ params: `p1 : S`,
+ decls: `struct S {
+ @location(1) x : f32,
+ @location(0) y : f32,
+ }`,
+ valid: true
+ },
+ struct_override: {
+ params: `@location(0) p1 : S`,
+ decls: `struct S {
+ @location(1) x : f32,
+ @location(0) y : f32,
+ }`,
+ valid: false
+ },
+ struct_random: {
+ params: `p1 : S, p2 : T`,
+ decls: `struct S {
+ @location(16) x : f32,
+ @location(4) y : f32,
+ }
+ struct T {
+ @location(13) x : f32,
+ @location(7) y : f32,
+ }`,
+ valid: true
+ },
+ struct_random_overlap: {
+ params: `p1 : S, p2 : T`,
+ decls: `struct S {
+ @location(16) x : f32,
+ @location(4) y : f32,
+ }
+ struct T {
+ @location(13) x : f32,
+ @location(4) y : f32,
+ }`,
+ valid: false
+ },
+ mixed_locations1: {
+ params: `@location(12) p1 : f32, p2 : S`,
+ decls: `struct S {
+ @location(2) x : f32,
+ }`,
+ valid: true
+ },
+ mixed_locations2: {
+ params: `p1 : S, @location(2) p2 : f32`,
+ decls: `struct S {
+ @location(12) x : f32,
+ }`,
+ valid: true
+ },
+ mixed_overlap: {
+ params: `p1 : S, @location(12) p2 : f32`,
+ decls: `struct S {
+ @location(12) x : f32,
+ }`,
+ valid: false
+ },
+ with_param_builtin: {
+ params: `p : S`,
+ decls: `struct S {
+ @location(12) x : f32,
+ @builtin(position) pos : vec4f,
+ @location(0) y : f32,
+ }`,
+ valid: true
+ },
+ non_zero_return: {
+ returnType: `@location(1) vec4f`,
+ returnValue: `vec4f()`,
+ valid: true
+ },
+ reverse_return: {
+ returnType: `S`,
+ returnValue: `S()`,
+ decls: `struct S {
+ @location(2) x : f32,
+ @location(1) y : f32,
+ @location(0) z : f32,
+ }`,
+ valid: true
+ },
+ gap_return: {
+ returnType: `S`,
+ returnValue: `S()`,
+ decls: `struct S {
+ @location(13) x : f32,
+ @location(7) y : f32,
+ @location(2) z : f32,
+ }`,
+ valid: true
+ },
+ with_return_builtin: {
+ returnType: `S`,
+ returnValue: `S()`,
+ decls: `struct S {
+ @location(11) x : f32,
+ @builtin(frag_depth) d : f32,
+ @location(10) y : f32,
+ }`,
+ valid: true
+ }
+};
+
+g.test('out_of_order').
+desc(`Test validation of out of order locations`).
+params((u) => u.combine('case', keysOf(kOutOfOrderCases))).
+fn((t) => {
+ const testcase = kOutOfOrderCases[t.params.case];
+ const decls = testcase.decls !== undefined ? testcase.decls : ``;
+ const params = testcase.params !== undefined ? testcase.params : ``;
+ const returnType = testcase.returnType !== undefined ? `-> ${testcase.returnType}` : ``;
+ const returnValue = testcase.returnValue !== undefined ? `return ${testcase.returnValue};` : ``;
+ const code = `
+${decls}
+
+@fragment
+fn main(${params}) ${returnType} {
+ ${returnValue}
+}
+`;
+
+ t.expectCompileResult(testcase.valid, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/size.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/size.spec.js
index 74caf19e6d..22eecfc399 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/size.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/shader_io/size.spec.js
@@ -103,7 +103,7 @@ const kSizeTests = {
};
g.test('size').
-desc(`Test validation of ize`).
+desc(`Test validation of size`).
params((u) => u.combine('attr', keysOf(kSizeTests))).
fn((t) => {
const code = `
@@ -209,4 +209,22 @@ fn((t) => {
code += '}';
t.expectCompileResult(data.pass, code);
+});
+
+g.test('size_creation_fixed_footprint').
+desc(`Test that @size is only valid on types that have creation-fixed footprint.`).
+params((u) => u.combine('array_size', [', 4', ''])).
+fn((t) => {
+ const code = `
+struct S {
+ @size(64) a: array<f32${t.params.array_size}>,
+};
+@group(0) @binding(0)
+var<storage> a: S;
+
+@workgroup_size(1)
+@compute fn main() {
+ _ = a.a[0];
+}`;
+ t.expectCompileResult(t.params.array_size !== '', code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/alias.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/alias.spec.js
index 012652df4b..7afdbbbb06 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/alias.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/alias.spec.js
@@ -3,6 +3,7 @@
**/export const description = `
Validation tests for type aliases
`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
import { ShaderValidationTest } from '../shader_validation_test.js';
export const g = makeTestGroup(ShaderValidationTest);
@@ -120,4 +121,125 @@ struct S {
alias T = ${t.params.target};
`;
t.expectCompileResult(t.params.target === 'i32', wgsl);
+});
+
+const kTypes = [
+'bool',
+'i32',
+'u32',
+'f32',
+'f16',
+'vec2<i32>',
+'vec3<u32>',
+'vec4<f32>',
+'mat2x2<f32>',
+'mat2x3<f32>',
+'mat2x4<f32>',
+'mat3x2<f32>',
+'mat3x3<f32>',
+'mat3x4<f32>',
+'mat4x2<f32>',
+'mat4x3<f32>',
+'mat4x4<f32>',
+'array<u32>',
+'array<i32, 4>',
+'array<vec2<u32>, 8>',
+'S',
+'T',
+'atomic<u32>',
+'atomic<i32>',
+'ptr<function, u32>',
+'ptr<private, i32>',
+'ptr<workgroup, f32>',
+'ptr<uniform, vec2f>',
+'ptr<storage, vec2u>',
+'ptr<storage, vec3i, read>',
+'ptr<storage, vec4f, read_write>',
+'sampler',
+'sampler_comparison',
+'texture_1d<f32>',
+'texture_2d<u32>',
+'texture_2d_array<i32>',
+'texture_3d<f32>',
+'texture_cube<i32>',
+'texture_cube_array<u32>',
+'texture_multisampled_2d<f32>',
+'texture_depth_multisampled_2d',
+'texture_external',
+'texture_storage_1d<rgba8snorm, write>',
+'texture_storage_1d<r32uint, write>',
+'texture_storage_1d<r32sint, read_write>',
+'texture_storage_1d<r32float, read>',
+'texture_storage_2d<rgba16uint, write>',
+'texture_storage_2d_array<rg32float, write>',
+'texture_storage_3d<bgra8unorm, write>',
+'texture_depth_2d',
+'texture_depth_2d_array',
+'texture_depth_cube',
+'texture_depth_cube_array',
+
+// Pre-declared aliases (spot check)
+'vec2f',
+'vec3u',
+'vec4i',
+'mat2x2f',
+
+// User-defined aliases
+'anotherAlias',
+'random_alias'];
+
+
+g.test('any_type').
+desc('Test that any type can be aliased').
+params((u) => u.combine('type', kTypes)).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const ty = t.params.type;
+ t.skipIf(
+ ty.includes('texture_storage') &&
+ ty.includes('read') &&
+ !t.hasLanguageFeature('readonly_and_readwrite_storage_textures'),
+ 'Missing language feature'
+ );
+ const enable = ty === 'f16' ? 'enable f16;' : '';
+ const code = `
+ ${enable}
+ struct S { x : u32 }
+ struct T { y : S }
+ alias anotherAlias = u32;
+ alias random_alias = i32;
+ alias myType = ${ty};`;
+ t.expectCompileResult(true, code);
+});
+
+const kMatchCases = {
+ function_param: `
+ fn foo(x : u32) { }
+ fn bar() {
+ var x : alias_alias_u32;
+ foo(x);
+ }`,
+ constructor: `var<private> v : u32 = alias_u32(1);`,
+ template_param: `var<private> v : vec2<alias_u32> = vec2<u32>();`,
+ predeclared_alias: `var<private> v : vec2<alias_alias_u32> = vec2u();`,
+ struct_element: `
+ struct S { x : alias_u32 }
+ const c_u32 = 0u;
+ const c = S(c_u32);`
+};
+
+g.test('match_non_alias').
+desc('Test that type checking succeeds using aliased and unaliased type').
+params((u) => u.combine('case', keysOf(kMatchCases))).
+fn((t) => {
+ const testcase = kMatchCases[t.params.case];
+ const code = `
+ alias alias_u32 = u32;
+ alias alias_alias_u32 = alias_u32;
+ ${testcase}`;
+ t.expectCompileResult(true, code);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/array.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/array.spec.js
new file mode 100644
index 0000000000..9fdf1c8d26
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/array.spec.js
@@ -0,0 +1,122 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for array types
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidCases = {
+ // Basic element types.
+ i32: `alias T = array<i32>;`,
+ u32: `alias T = array<u32>;`,
+ f32: `alias T = array<f32>;`,
+ f16: `enable f16;\nalias T = array<f16>;`,
+ bool: `alias T = array<bool>;`,
+
+ // Composite elements
+ vec2u: `alias T = array<vec2u>;`,
+ vec3i: `alias T = array<vec3i>;`,
+ vec4f: `alias T = array<vec4f>;`,
+ array: `alias T = array<array<u32, 4>>;`,
+ struct: `struct S { x : u32 }\nalias T = array<S>;`,
+ mat2x2f: `alias T = array<mat2x2f>;`,
+ mat4x4h: `enable f16;\nalias T = array<mat4x4h>;`,
+
+ // Atomic elements
+ atomicu: `alias T = array<atomic<u32>>;`,
+ atomici: `alias T = array<atomic<i32>>;`,
+
+ // Count expressions
+ literal_count: `alias T = array<u32, 4>;`,
+ literali_count: `alias T = array<u32, 4i>;`,
+ literalu_count: `alias T = array<u32, 4u>;`,
+ const_count: `const x = 8;\nalias T = array<u32, x>;`,
+ const_expr_count1: `alias T = array<u32, 1 + 3>;`,
+ const_expr_count2: `const x = 4;\nalias T = array<u32, x * 2>;`,
+ override_count: `override x : u32;\nalias T = array<u32, x>;`,
+ override_expr1: `override x = 2;\nalias T = array<u32, vec2(x,x).x>;`,
+ override_expr2: `override x = 1;\nalias T = array<u32, x + 1>;`,
+ override_zero: `override x = 0;\nalias T = array<u32, x>;`,
+ override_neg: `override x = -1;\nalias T = array<u32, x>;`,
+
+ // Same array types
+ same_const_value1: `
+ const x = 8;
+ const y = 8;
+ var<private> v : array<u32, x> = array<u32, y>();`,
+ same_const_value2: `
+ const x = 8;
+ var<private> v : array<u32, x> = array<u32, 8>();`,
+ same_const_value3: `
+ var<private> v : array<u32, 8i> = array<u32, 8u>();`,
+ same_override: `
+ requires unrestricted_pointer_parameters;
+ override x : u32;
+ var<workgroup> v : array<u32, x>;
+ fn bar(p : ptr<workgroup, array<u32, x>>) { }
+ fn foo() { bar(&v); }`,
+
+ // Shadow
+ shadow: `alias array = vec2f;`
+};
+
+g.test('valid').
+desc('Valid array type tests').
+params((u) => u.combine('case', keysOf(kValidCases))).
+beforeAllSubcases((t) => {
+ const code = kValidCases[t.params.case];
+ if (code.indexOf('f16') >= 0) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = kValidCases[t.params.case];
+ t.skipIf(
+ code.indexOf('unrestricted') >= 0 && !t.hasLanguageFeature('unrestricted_pointer_parameters'),
+ 'Test requires unrestricted_pointer_parameters'
+ );
+ t.expectCompileResult(true, code);
+});
+
+const kInvalidCases = {
+ f16_without_enable: `alias T = array<f16>;`,
+ runtime_nested: `alias T = array<array<u32>, 4>;`,
+ override_nested: `
+ override x : u32;
+ alias T = array<array<u32, x>, 4>;`,
+ override_nested_struct: `
+ override x : u32;
+ struct T { x : array<u32, x> }`,
+ zero_size: `alias T = array<u32, 0>;`,
+ negative_size: `alias T = array<u32, 1 - 2>;`,
+ const_zero: `const x = 0;\nalias T = array<u32, x>;`,
+ const_neg: `const x = 1;\nconst y = 2;\nalias T = array<u32, x - y>;`,
+ incompatible_overrides: `
+ requires unrestricted_pointer_parameters;
+ override x = 8;
+ override y = 8;
+ var<workgroup> v : array<u32, x>
+ fn bar(p : ptr<workgroup, array<u32 y>>) { }
+ fn foo() { bar(&v); }`
+};
+
+g.test('invalid').
+desc('Invalid array type tests').
+params((u) => u.combine('case', keysOf(kInvalidCases))).
+beforeAllSubcases((t) => {
+ const code = kInvalidCases[t.params.case];
+ if (code.indexOf('f16') >= 0) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = kInvalidCases[t.params.case];
+ t.skipIf(
+ code.indexOf('unrestricted') >= 0 && !t.hasLanguageFeature('unrestricted_pointer_parameters'),
+ 'Test requires unrestricted_pointer_parameters'
+ );
+ t.expectCompileResult(false, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/atomics.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/atomics.spec.js
new file mode 100644
index 0000000000..e16307baa9
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/atomics.spec.js
@@ -0,0 +1,145 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for atomic types
+
+Tests covered:
+* Base type
+* Address spaces
+* Invalid operations (non-exhaustive)
+
+Note: valid operations (e.g. atomic built-in functions) are tested in the builtin tests.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('type').
+desc('Test of the underlying atomic data type').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#atomic-types').
+params((u) =>
+u.combine('type', [
+'u32',
+'i32',
+'f32',
+'f16',
+'bool',
+'vec2u',
+'vec3i',
+'vec4f',
+'mat2x2f',
+'R',
+'S',
+'array<u32, 1>',
+'array<i32, 4>',
+'array<u32>',
+'array<i32>',
+'atomic<u32>',
+'atomic<i32>']
+)
+).
+beforeAllSubcases((t) => {
+ if (t.params.type === 'f16') {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = `
+struct S {
+ x : u32
+}
+struct T {
+ x : i32
+}
+struct R {
+ x : f32
+}
+
+struct Test {
+ x : atomic<${t.params.type}>
+}
+`;
+
+ const expect = t.params.type === 'u32' || t.params.type === 'i32';
+ t.expectCompileResult(expect, code);
+});
+
+g.test('address_space').
+desc('Test allowed address spaces for atomics').
+specURL('https://gpuweb.github.io/gpuweb/wgsl/#atomic-types').
+params((u) =>
+u.
+combine('aspace', [
+'storage',
+'workgroup',
+'storage-ro',
+'uniform',
+'private',
+'function',
+'function-let']
+).
+beginSubcases().
+combine('type', ['i32', 'u32'])
+).
+fn((t) => {
+ let moduleVar = ``;
+ let functionVar = '';
+ switch (t.params.aspace) {
+ case 'storage-ro':
+ moduleVar = `@group(0) @binding(0) var<storage> x : atomic<${t.params.type}>;\n`;
+ break;
+ case 'storage':
+ moduleVar = `@group(0) @binding(0) var<storage, read_write> x : atomic<${t.params.type}>;\n`;
+ break;
+ case 'uniform':
+ moduleVar = `@group(0) @binding(0) var<uniform> x : atomic<${t.params.type}>;\n`;
+ break;
+ case 'workgroup':
+ case 'private':
+ moduleVar = `var<${t.params.aspace}> x : atomic<${t.params.type}>;\n`;
+ break;
+ case 'function':
+ functionVar = `var x : atomic<${t.params.type}>;\n`;
+ break;
+ case 'function-let':
+ functionVar = `let x : atomic<${t.params.type}>;\n`;
+ break;
+ }
+ const code = `
+${moduleVar}
+
+fn foo() {
+ ${functionVar}
+}
+`;
+
+ const expect = t.params.aspace === 'storage' || t.params.aspace === 'workgroup';
+ t.expectCompileResult(expect, code);
+});
+
+const kInvalidOperations = {
+ add: `a1 + a2`,
+ load: `a1`,
+ store: `a1 = 1u`,
+ deref: `*a1 = 1u`,
+ equality: `a1 == a2`,
+ abs: `abs(a1)`,
+ address_abs: `abs(&a1)`
+};
+
+g.test('invalid_operations').
+desc('Tests that a selection of invalid operations are invalid').
+params((u) => u.combine('op', keysOf(kInvalidOperations))).
+fn((t) => {
+ const code = `
+var<workgroup> a1 : atomic<u32>;
+var<workgroup> a2 : atomic<u32>;
+
+fn foo() {
+ let x : u32 = ${kInvalidOperations[t.params.op]};
+}
+`;
+
+ t.expectCompileResult(false, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/matrix.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/matrix.spec.js
new file mode 100644
index 0000000000..1fde9bdac7
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/matrix.spec.js
@@ -0,0 +1,152 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for matrix types
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import { keysOf } from '../../../../common/util/data_tables.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+const kValidCases = {
+ // Basic matrices
+ mat2x2_f32: `alias T = mat2x2<f32>;`,
+ mat2x3_f32: `alias T = mat2x3<f32>;`,
+ mat2x4_f32: `alias T = mat2x4<f32>;`,
+ mat3x2_f32: `alias T = mat3x2<f32>;`,
+ mat3x3_f32: `alias T = mat3x3<f32>;`,
+ mat3x4_f32: `alias T = mat3x4<f32>;`,
+ mat4x2_f32: `alias T = mat4x2<f32>;`,
+ mat4x3_f32: `alias T = mat4x3<f32>;`,
+ mat4x4_f32: `alias T = mat4x4<f32>;`,
+ mat2x2_f16: `enable f16;\nalias T = mat2x2<f16>;`,
+ mat2x3_f16: `enable f16;\nalias T = mat2x3<f16>;`,
+ mat2x4_f16: `enable f16;\nalias T = mat2x4<f16>;`,
+ mat3x2_f16: `enable f16;\nalias T = mat3x2<f16>;`,
+ mat3x3_f16: `enable f16;\nalias T = mat3x3<f16>;`,
+ mat3x4_f16: `enable f16;\nalias T = mat3x4<f16>;`,
+ mat4x2_f16: `enable f16;\nalias T = mat4x2<f16>;`,
+ mat4x3_f16: `enable f16;\nalias T = mat4x3<f16>;`,
+ mat4x4_f16: `enable f16;\nalias T = mat4x4<f16>;`,
+
+ // Pre-declared aliases
+ mat2x2f: `alias T = mat2x2f;`,
+ mat2x3f: `alias T = mat2x3f;`,
+ mat2x4f: `alias T = mat2x4f;`,
+ mat3x2f: `alias T = mat3x2f;`,
+ mat3x3f: `alias T = mat3x3f;`,
+ mat3x4f: `alias T = mat3x4f;`,
+ mat4x2f: `alias T = mat4x2f;`,
+ mat4x3f: `alias T = mat4x3f;`,
+ mat4x4f: `alias T = mat4x4f;`,
+ mat2x2h: `enable f16;\nalias T = mat2x2h;`,
+ mat2x3h: `enable f16;\nalias T = mat2x3h;`,
+ mat2x4h: `enable f16;\nalias T = mat2x4h;`,
+ mat3x2h: `enable f16;\nalias T = mat3x2h;`,
+ mat3x3h: `enable f16;\nalias T = mat3x3h;`,
+ mat3x4h: `enable f16;\nalias T = mat3x4h;`,
+ mat4x2h: `enable f16;\nalias T = mat4x2h;`,
+ mat4x3h: `enable f16;\nalias T = mat4x3h;`,
+ mat4x4h: `enable f16;\nalias T = mat4x4h;`,
+
+ trailing_comman: `alias T = mat2x2<f32,>;`,
+
+ // Abstract matrices
+ abstract_2x2: `const m = mat2x2(1,1,1,1);`,
+ abstract_2x3: `const m = mat2x3(1,1,1,1,1,1);`,
+ abstract_2x4: `const m = mat2x4(1,1,1,1,1,1,1,1);`,
+
+ // Base roots shadowable
+ shadow_mat2x2: `alias mat2x2 = array<vec2f, 2>;`,
+ shadow_mat2x3: `alias mat2x3 = array<vec2f, 3>;`,
+ shadow_mat2x4: `alias mat2x4 = array<vec2f, 4>;`,
+ shadow_mat3x2: `alias mat3x2 = array<vec3f, 2>;`,
+ shadow_mat3x3: `alias mat3x3 = array<vec3f, 3>;`,
+ shadow_mat3x4: `alias mat3x4 = array<vec3f, 4>;`,
+ shadow_mat4x2: `alias mat4x2 = array<vec4f, 2>;`,
+ shadow_mat4x3: `alias mat4x3 = array<vec4f, 3>;`,
+ shadow_mat4x4: `alias mat4x4 = array<vec4f, 4>;`,
+
+ // Pre-declared aliases shadowable
+ shadow_mat2x2f: `alias mat2x2f = mat2x2<f32>;`,
+ shadow_mat2x3f: `alias mat2x3f = mat2x3<f32>;`,
+ shadow_mat2x4f: `alias mat2x4f = mat2x4<f32>;`,
+ shadow_mat3x2f: `alias mat3x2f = mat3x2<f32>;`,
+ shadow_mat3x3f: `alias mat3x3f = mat3x3<f32>;`,
+ shadow_mat3x4f: `alias mat3x4f = mat3x4<f32>;`,
+ shadow_mat4x2f: `alias mat4x2f = mat4x2<f32>;`,
+ shadow_mat4x3f: `alias mat4x3f = mat4x3<f32>;`,
+ shadow_mat4x4f: `alias mat4x4f = mat4x4<f32>;`,
+ shadow_mat2x2h: `enable f16;\nalias mat2x2h = mat2x2<f16>;`,
+ shadow_mat2x3h: `enable f16;\nalias mat2x3h = mat2x3<f16>;`,
+ shadow_mat2x4h: `enable f16;\nalias mat2x4h = mat2x4<f16>;`,
+ shadow_mat3x2h: `enable f16;\nalias mat3x2h = mat3x2<f16>;`,
+ shadow_mat3x3h: `enable f16;\nalias mat3x3h = mat3x3<f16>;`,
+ shadow_mat3x4h: `enable f16;\nalias mat3x4h = mat3x4<f16>;`,
+ shadow_mat4x2h: `enable f16;\nalias mat4x2h = mat4x2<f16>;`,
+ shadow_mat4x3h: `enable f16;\nalias mat4x3h = mat4x3<f16>;`,
+ shadow_mat4x4h: `enable f16;\nalias mat4x4h = mat4x4<f16>;`
+};
+
+g.test('valid').
+desc('Valid matrix type tests').
+params((u) => u.combine('case', keysOf(kValidCases))).
+beforeAllSubcases((t) => {
+ const code = kValidCases[t.params.case];
+ if (code.indexOf('f16') >= 0) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = kValidCases[t.params.case];
+ t.expectCompileResult(true, code);
+});
+
+const kInvalidCases = {
+ // Invalid component types
+ mat2x2_i32: `alias T = mat2x2<i32>;`,
+ mat3x3_u32: `alias T = mat3x3<u32>;`,
+ mat4x4_bool: `alias T = mat4x4<bool>;`,
+ mat2x2_vec4f: `alias T = mat2x2<vec2f>;`,
+ mat2x2_array: `alias T = mat2x2<array<f32, 2>>;`,
+ mat2x2_struct: `struct S { x : f32 }\nalias T = mat2x2<S>;`,
+
+ // Invalid dimensions
+ mat1x1: `alias T = mat1x1<f32>;`,
+ mat2x1: `alias T = mat2x1<f32>;`,
+ mat2x5: `alias T = mat2x5<f32>;`,
+ mat5x5: `alias T = mat5x5<f32>;`,
+
+ // Half-precision aliases require enable
+ no_enable_mat2x2h: `alias T = mat2x2h;`,
+ no_enable_mat2x3h: `alias T = mat2x3h;`,
+ no_enable_mat2x4h: `alias T = mat2x4h;`,
+ no_enable_mat3x2h: `alias T = mat3x2h;`,
+ no_enable_mat3x3h: `alias T = mat3x3h;`,
+ no_enable_mat3x4h: `alias T = mat3x4h;`,
+ no_enable_mat4x2h: `alias T = mat4x2h;`,
+ no_enable_mat4x3h: `alias T = mat4x3h;`,
+ no_enable_mat4x4h: `alias T = mat4x4h;`,
+
+ missing_template: `alias T = mat2x2;`,
+ missing_left_template: `alias T = mat2x2f32>;`,
+ missing_right_template: `alias T = mat2x2<f32;`,
+ missing_comp: `alias T = mat2x2<>;`,
+ mat2x2i: `alias T = mat2x2i;`,
+ mat2x2u: `alias T = mat2x2u;`,
+ mat2x2b: `alias T = mat2x2b;`
+};
+
+g.test('invalid').
+desc('Invalid matrix type tests').
+params((u) => u.combine('case', keysOf(kInvalidCases))).
+beforeAllSubcases((t) => {
+ const code = kInvalidCases[t.params.case];
+ if (code.indexOf('f16') >= 0) {
+ t.selectDeviceOrSkipTestCase('shader-f16');
+ }
+}).
+fn((t) => {
+ const code = kInvalidCases[t.params.case];
+ t.expectCompileResult(false, code);
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/textures.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/textures.spec.js
new file mode 100644
index 0000000000..64f197615a
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/types/textures.spec.js
@@ -0,0 +1,170 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = `
+Validation tests for various texture types in shaders.
+`;import { makeTestGroup } from '../../../../common/framework/test_group.js';
+import {
+ isTextureFormatUsableAsStorageFormat,
+ kAllTextureFormats,
+ kColorTextureFormats,
+ kTextureFormatInfo } from
+'../../../format_info.js';
+import { getPlainTypeInfo } from '../../../util/shader.js';
+import { ShaderValidationTest } from '../shader_validation_test.js';
+
+export const g = makeTestGroup(ShaderValidationTest);
+
+g.test('texel_formats').
+desc(
+ 'Test channels and channel format of various texel formats when using as the storage texture format'
+).
+params((u) =>
+u.
+combine('format', kColorTextureFormats).
+filter((p) => kTextureFormatInfo[p.format].color.storage).
+beginSubcases().
+combine('shaderScalarType', ['f32', 'u32', 'i32', 'bool', 'f16'])
+).
+beforeAllSubcases((t) => {
+ if (t.params.shaderScalarType === 'f16') {
+ t.selectDeviceOrSkipTestCase({ requiredFeatures: ['shader-f16'] });
+ }
+
+ if (!isTextureFormatUsableAsStorageFormat(t.params.format, t.isCompatibility)) {
+ t.skip('storage usage is unsupported');
+ }
+}).
+fn((t) => {
+ const { format, shaderScalarType } = t.params;
+ const info = kTextureFormatInfo[format];
+ const validShaderScalarType = getPlainTypeInfo(info.color.type);
+ const shaderValueType = `vec4<${shaderScalarType}>`;
+ const wgsl = `
+ @group(0) @binding(0) var tex: texture_storage_2d<${format}, read>;
+ @compute @workgroup_size(1) fn main() {
+ let v : ${shaderValueType} = textureLoad(tex, vec2u(0));
+ _ = v;
+ }
+`;
+ t.expectCompileResult(validShaderScalarType === shaderScalarType, wgsl);
+});
+
+g.test('texel_formats,as_value').
+desc('Test that texel format cannot be used as value').
+fn((t) => {
+ const wgsl = `
+ @compute @workgroup_size(1) fn main() {
+ var i = rgba8unorm;
+ }
+`;
+ t.expectCompileResult(false, wgsl);
+});
+
+const kValidTextureSampledTypes = ['f32', 'i32', 'u32'];
+
+g.test('sampled_texture_types').
+desc(
+ `Test that for texture_xx<T>
+- The sampled type T must be f32, i32, or u32
+`
+).
+params((u) =>
+u.
+combine('textureType', ['texture_2d', 'texture_multisampled_2d']).
+beginSubcases().
+combine('sampledType', [
+...kValidTextureSampledTypes,
+'bool',
+'vec2',
+'mat2x2',
+'1.0',
+'1',
+'1u']
+)
+).
+fn((t) => {
+ const { textureType, sampledType } = t.params;
+ const wgsl = `@group(0) @binding(0) var tex: ${textureType}<${sampledType}>;`;
+ t.expectCompileResult(kValidTextureSampledTypes.includes(sampledType), wgsl);
+});
+
+g.test('external_sampled_texture_types').
+desc(
+ `Test that texture_extenal compiles and cannot specify address space
+`
+).
+fn((t) => {
+ t.expectCompileResult(true, `@group(0) @binding(0) var tex: texture_external;`);
+ t.expectCompileResult(false, `@group(0) @binding(0) var<private> tex: texture_external;`);
+});
+
+const kAccessModes = ['read', 'write', 'read_write'];
+
+g.test('storage_texture_types').
+desc(
+ `Test that for texture_storage_xx<format, access>
+- format must be an enumerant for one of the texel formats for storage textures
+- access must be an enumerant for one of the access modes
+
+Besides, the shader compilation should always pass regardless of whether the format supports the usage indicated by the access or not.
+`
+).
+params((u) =>
+u.combine('access', [...kAccessModes, 'storage']).combine('format', kAllTextureFormats)
+).
+fn((t) => {
+ const { format, access } = t.params;
+ const info = kTextureFormatInfo[format];
+ // bgra8unorm is considered a valid storage format at shader compilation stage
+ const isFormatValid =
+ info.color?.storage ||
+ info.depth?.storage ||
+ info.stencil?.storage ||
+ format === 'bgra8unorm';
+ const isAccessValid = kAccessModes.includes(access);
+ const wgsl = `@group(0) @binding(0) var tex: texture_storage_2d<${format}, ${access}>;`;
+ t.expectCompileResult(isFormatValid && isAccessValid, wgsl);
+});
+
+g.test('depth_texture_types').
+desc(
+ `Test that for texture_depth_xx
+- must not specify an address space
+`
+).
+params((u) =>
+u.combine('textureType', [
+'texture_depth_2d',
+'texture_depth_2d_array',
+'texture_depth_cube',
+'texture_depth_cube_array']
+)
+).
+fn((t) => {
+ const { textureType } = t.params;
+ t.expectCompileResult(true, `@group(0) @binding(0) var t: ${textureType};`);
+ t.expectCompileResult(false, `@group(0) @binding(0) var<private> t: ${textureType};`);
+ t.expectCompileResult(false, `@group(0) @binding(0) var<storage, read> t: ${textureType};`);
+});
+
+g.test('sampler_types').
+desc(
+ `Test that for sampler and sampler_comparison
+- cannot specify address space
+- cannot be declared in WGSL function scope
+`
+).
+params((u) => u.combine('samplerType', ['sampler', 'sampler_comparison'])).
+fn((t) => {
+ const { samplerType } = t.params;
+ t.expectCompileResult(true, `@group(0) @binding(0) var s: ${samplerType};`);
+ t.expectCompileResult(false, `@group(0) @binding(0) var<private> s: ${samplerType};`);
+ t.expectCompileResult(
+ false,
+ `
+ @compute @workgroup_size(1) fn main() {
+ var s: ${samplerType};
+ }
+ `
+ );
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/uniformity/uniformity.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/uniformity/uniformity.spec.js
index a656f731f5..a808b17675 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/uniformity/uniformity.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/shader/validation/uniformity/uniformity.spec.js
@@ -21,6 +21,7 @@ const kCollectiveOps = [
{ op: 'fwidthCoarse', stage: 'fragment' },
{ op: 'fwidthFine', stage: 'fragment' },
{ op: 'storageBarrier', stage: 'compute' },
+{ op: 'textureBarrier', stage: 'compute' },
{ op: 'workgroupBarrier', stage: 'compute' },
{ op: 'workgroupUniformLoad', stage: 'compute' }];
@@ -42,7 +43,9 @@ const kConditions = [
{ cond: 'nonuniform_and1', expectation: false },
{ cond: 'nonuniform_and2', expectation: false },
{ cond: 'uniform_func_var', expectation: true },
-{ cond: 'nonuniform_func_var', expectation: false }];
+{ cond: 'nonuniform_func_var', expectation: false },
+{ cond: 'storage_texture_ro', expectation: true },
+{ cond: 'storage_texture_rw', expectation: false }];
function generateCondition(condition) {
@@ -98,6 +101,12 @@ function generateCondition(condition) {
case 'nonuniform_func_var':{
return `n_f == 0`;
}
+ case 'storage_texture_ro':{
+ return `textureLoad(ro_storage_texture, vec2()).x == 0`;
+ }
+ case 'storage_texture_rw':{
+ return `textureLoad(rw_storage_texture, vec2()).x == 0`;
+ }
default:{
unreachable(`Unhandled condition`);
}
@@ -116,6 +125,7 @@ function generateOp(op) {
return `let x = ${op}(tex_depth, s_comp, vec2(0,0), 0);\n`;
}
case 'storageBarrier':
+ case 'textureBarrier':
case 'workgroupBarrier':{
return `${op}();\n`;
}
@@ -181,12 +191,16 @@ g.test('basics').
desc(`Test collective operations in simple uniform or non-uniform control flow.`).
params((u) =>
u.
-combineWithParams(kCollectiveOps).
-combineWithParams(kConditions).
combine('statement', ['if', 'for', 'while', 'switch']).
-beginSubcases()
+beginSubcases().
+combineWithParams(kConditions).
+combineWithParams(kCollectiveOps)
).
fn((t) => {
+ if (t.params.op === 'textureBarrier' || t.params.cond.startsWith('storage_texture')) {
+ t.skipIfLanguageFeatureNotSupported('readonly_and_readwrite_storage_textures');
+ }
+
let code = `
@group(0) @binding(0) var s : sampler;
@group(0) @binding(1) var s_comp : sampler_comparison;
@@ -197,6 +211,9 @@ fn((t) => {
@group(1) @binding(1) var<storage, read_write> rw_buffer : array<f32, 4>;
@group(1) @binding(2) var<uniform> uniform_buffer : vec4<f32>;
+ @group(2) @binding(0) var ro_storage_texture : texture_storage_2d<rgba8unorm, read>;
+ @group(2) @binding(1) var rw_storage_texture : texture_storage_2d<rgba8unorm, read_write>;
+
var<private> priv_var : array<f32, 4> = array(0,0,0,0);
const c = false;
@@ -367,6 +384,13 @@ function generatePointerCheck(check) {
}
}
+
+
+
+
+
+
+
const kPointerCases = {
address_uniform_literal: {
code: `let ptr = &wg_array[0];`,
@@ -584,6 +608,168 @@ const kPointerCases = {
let test_val = *p6;`,
check: `contents`,
uniform: false
+ },
+ contents_lhs_ref_pointer_deref1: {
+ code: `*&func_scalar = uniform_value;
+ let test_val = func_scalar;`,
+ check: `contents`,
+ uniform: true
+ },
+ contents_lhs_ref_pointer_deref1a: {
+ code: `*&func_scalar = nonuniform_value;
+ let test_val = func_scalar;`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref2: {
+ code: `*&(func_array[nonuniform_value]) = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref2a: {
+ code: `(func_array[nonuniform_value]) = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref3: {
+ code: `*&(func_array[needs_uniform(uniform_value)]) = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: true
+ },
+ contents_lhs_ref_pointer_deref3a: {
+ code: `*&(func_array[needs_uniform(nonuniform_value)]) = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: 'never'
+ },
+ contents_lhs_ref_pointer_deref4: {
+ code: `*&((*&(func_struct.x[uniform_value])).x[uniform_value].x[uniform_value]) = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: true
+ },
+ contents_lhs_ref_pointer_deref4a: {
+ code: `*&((*&(func_struct.x[uniform_value])).x[uniform_value].x[uniform_value]) = nonuniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref4b: {
+ code: `*&((*&(func_struct.x[uniform_value])).x[uniform_value].x[nonuniform_value]) = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref4c: {
+ code: `*&((*&(func_struct.x[uniform_value])).x[nonuniform_value]).x[uniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref4d: {
+ code: `*&((*&(func_struct.x[nonuniform_value])).x[uniform_value].x)[uniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false
+ },
+ contents_lhs_ref_pointer_deref4e: {
+ code: `*&((*&(func_struct.x[uniform_value])).x[needs_uniform(nonuniform_value)].x[uniform_value]) = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: 'never'
+ },
+
+ // The following cases require the 'pointer_composite_access' language feature.
+ contents_lhs_pointer_deref2: {
+ code: `(&func_array)[uniform_value] = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: true,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref2a: {
+ code: `(&func_array)[nonuniform_value] = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref3: {
+ code: `(&func_array)[needs_uniform(uniform_value)] = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: true,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref3a: {
+ code: `(&func_array)[needs_uniform(nonuniform_value)] = uniform_value;
+ let test_val = func_array[0];`,
+ check: `contents`,
+ uniform: 'never',
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4: {
+ code: `(&((&(func_struct.x[uniform_value])).x[uniform_value]).x)[uniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: true,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4a: {
+ code: `(&((&(func_struct.x[uniform_value])).x[uniform_value]).x)[uniform_value] = nonuniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4b: {
+ code: `(&((&(func_struct.x[uniform_value])).x)[uniform_value]).x[nonuniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4c: {
+ code: `(&((&(func_struct.x[uniform_value])).x[nonuniform_value]).x)[uniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4d: {
+ code: `(&((&(func_struct.x[nonuniform_value])).x[uniform_value]).x)[uniform_value] = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_lhs_pointer_deref4e: {
+ code: `(&((&(func_struct.x[uniform_value])).x)[needs_uniform(nonuniform_value)].x[uniform_value]) = uniform_value;
+ let test_val = func_struct.x[0].x[0].x[0];`,
+ check: `contents`,
+ uniform: 'never',
+ needs_deref_sugar: true
+ },
+ contents_rhs_pointer_deref1: {
+ code: `let test_val = (&func_array)[uniform_value];`,
+ check: `contents`,
+ uniform: true,
+ needs_deref_sugar: true
+ },
+ contents_rhs_pointer_deref1a: {
+ code: `let test_val = (&func_array)[nonuniform_value];`,
+ check: `contents`,
+ uniform: false,
+ needs_deref_sugar: true
+ },
+ contents_rhs_pointer_deref2: {
+ code: `let test_val = (&func_array)[needs_uniform(nonuniform_value)];`,
+ check: `contents`,
+ uniform: `never`,
+ needs_deref_sugar: true
}
};
@@ -612,6 +798,13 @@ var<storage> uniform_value : u32;
@group(0) @binding(1)
var<storage, read_write> nonuniform_value : u32;
+fn needs_uniform(val : u32) -> u32{
+ if val == 0 {
+ workgroupBarrier();
+ }
+ return val;
+}
+
@compute @workgroup_size(16, 1, 1)
fn main(@builtin(local_invocation_id) lid : vec3<u32>,
@builtin(global_invocation_id) gid : vec3<u32>) {
@@ -627,11 +820,16 @@ fn main(@builtin(local_invocation_id) lid : vec3<u32>,
`
${generatePointerCheck(testcase.check)}
}`;
- if (!testcase.uniform) {
+
+ if (testcase.needs_deref_sugar === true) {
+ t.skipIfLanguageFeatureNotSupported('pointer_composite_access');
+ }
+ // Explicitly check false to distinguish from never.
+ if (testcase.uniform === false) {
const without_check = code + `}\n`;
t.expectCompileResult(true, without_check);
}
- t.expectCompileResult(testcase.uniform, with_check);
+ t.expectCompileResult(testcase.uniform === true, with_check);
});
function expectedUniformity(uniform, init) {
@@ -2019,6 +2217,7 @@ params((u) =>
u.
combine('e1', keysOf(kExpressionCases)).
combine('e2', keysOf(kExpressionCases)).
+beginSubcases().
combine('op', keysOf(kBinOps))
).
fn((t) => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/binary_stream.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/binary_stream.js
index cd90821ea4..5e5ff177ff 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/binary_stream.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/binary_stream.js
@@ -85,6 +85,16 @@ export default class BinaryStream {
return this.view.getInt16(this.alignedOffset(2), /* littleEndian */true);
}
+ /** writeI64() writes a bitint to the buffer at the next 64-bit aligned offset */
+ writeI64(value) {
+ this.view.setBigInt64(this.alignedOffset(8), value, /* littleEndian */true);
+ }
+
+ /** readI64() reads a bigint from the buffer at the next 64-bit aligned offset */
+ readI64() {
+ return this.view.getBigInt64(this.alignedOffset(8), /* littleEndian */true);
+ }
+
/** writeI32() writes a int32 to the buffer at the next 32-bit aligned offset */
writeI32(value) {
this.view.setInt32(this.alignedOffset(4), value, /* littleEndian */true);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/check_contents.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/check_contents.js
index 645d78de55..f9dfc95549 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/check_contents.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/check_contents.js
@@ -43,7 +43,10 @@ actual,
expected)
{
assert(actual.constructor === expected.constructor, 'TypedArray type mismatch');
- assert(actual.length === expected.length, 'size mismatch');
+ assert(
+ actual.length === expected.length,
+ `length mismatch: expected ${expected.length} got ${actual.length}`
+ );
let failedElementsFirstMaybe = undefined;
/** Sparse array with `true` for elements that failed. */
@@ -221,9 +224,13 @@ function failCheckElements({
const printElementsEnd = Math.min(size, failedElementsLast + 2);
const printElementsCount = printElementsEnd - printElementsStart;
- const numberToString = printAsFloat ?
- (n) => n.toPrecision(4) :
- (n) => intToPaddedHex(n, { byteLength: ctor.BYTES_PER_ELEMENT });
+ const numericToString = (val) => {
+ if (typeof val === 'number' && printAsFloat) {
+ return val.toPrecision(4);
+ }
+ return intToPaddedHex(val, { byteLength: ctor.BYTES_PER_ELEMENT });
+ };
+
const numberPrefix = printAsFloat ? '' : '0x:';
const printActual = actual.subarray(printElementsStart, printElementsEnd);
@@ -246,7 +253,7 @@ function failCheckElements({
const opts = {
fillToWidth: 120,
- numberToString
+ numericToString
};
const msg = `Array had unexpected contents at indices ${failedElementsFirst} through ${failedElementsLast}.
Starting at index ${printElementsStart}:
@@ -263,10 +270,11 @@ ${generatePrettyTable(opts, [
// Helper helpers
/** Convert an integral `number` into a hex string, padded to the specified `byteLength`. */
-function intToPaddedHex(number, { byteLength }) {
- assert(Number.isInteger(number), 'number must be integer');
- let s = Math.abs(number).toString(16);
- if (byteLength) s = s.padStart(byteLength * 2, '0');
- if (number < 0) s = '-' + s;
- return s;
+function intToPaddedHex(val, { byteLength }) {
+ assert(Number.isInteger(val), 'number must be integer');
+ const is_negative = typeof val === 'number' ? val < 0 : val < 0n;
+ let str = (is_negative ? -val : val).toString(16);
+ if (byteLength) str = str.padStart(byteLength * 2, '0');
+ if (is_negative) str = '-' + str;
+ return str;
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/color_space_conversion.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/color_space_conversion.js
index 7e85d4ed9b..2fdd642bfd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/color_space_conversion.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/color_space_conversion.js
@@ -143,12 +143,7 @@ function XYZ_to_lin_P3(XYZ) {
* https://drafts.csswg.org/css-color/#predefined-to-predefined
* display-p3 and sRGB share the same white points.
*/
-export function displayP3ToSrgb(pixel)
-
-
-
-
-{
+export function displayP3ToSrgb(pixel) {
assert(
pixel.R !== undefined && pixel.G !== undefined && pixel.B !== undefined,
'color space conversion requires all of R, G and B components'
@@ -161,11 +156,7 @@ export function displayP3ToSrgb(pixel)
rgbVec = [rgbMatrix[0][0], rgbMatrix[1][0], rgbMatrix[2][0]];
rgbVec = gam_sRGB(rgbVec);
- pixel.R = rgbVec[0];
- pixel.G = rgbVec[1];
- pixel.B = rgbVec[2];
-
- return pixel;
+ return { R: rgbVec[0], G: rgbVec[1], B: rgbVec[2], A: pixel.A };
}
/**
* @returns the converted pixels in `{R: number, G: number, B: number, A: number}`.
@@ -174,12 +165,7 @@ export function displayP3ToSrgb(pixel)
* https://drafts.csswg.org/css-color/#predefined-to-predefined
* display-p3 and sRGB share the same white points.
*/
-export function srgbToDisplayP3(pixel)
-
-
-
-
-{
+export function srgbToDisplayP3(pixel) {
assert(
pixel.R !== undefined && pixel.G !== undefined && pixel.B !== undefined,
'color space conversion requires all of R, G and B components'
@@ -192,11 +178,7 @@ export function srgbToDisplayP3(pixel)
rgbVec = [rgbMatrix[0][0], rgbMatrix[1][0], rgbMatrix[2][0]];
rgbVec = gam_P3(rgbVec);
- pixel.R = rgbVec[0];
- pixel.G = rgbVec[1];
- pixel.B = rgbVec[2];
-
- return pixel;
+ return { R: rgbVec[0], G: rgbVec[1], B: rgbVec[2], A: pixel.A };
}
@@ -206,6 +188,7 @@ export function srgbToDisplayP3(pixel)
+
/**
* Returns a function which applies the specified colorspace/premultiplication conversion.
* Does not clamp, so may return values outside of the `dstColorSpace` gamut, due to either
@@ -247,9 +230,10 @@ export function makeInPlaceColorConversion({
// This technically represents colors outside the src gamut, so no clamping yet.
if (requireColorSpaceConversion) {
- // WebGPU currently only supports dstColorSpace = 'srgb'.
if (srcColorSpace === 'display-p3' && dstColorSpace === 'srgb') {
- rgba = displayP3ToSrgb(rgba);
+ Object.assign(rgba, displayP3ToSrgb(rgba));
+ } else if (srcColorSpace === 'srgb' && dstColorSpace === 'display-p3') {
+ Object.assign(rgba, srgbToDisplayP3(rgba));
} else {
unreachable();
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/compare.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/compare.js
index af42e341c4..2b2cd9a751 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/compare.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/compare.js
@@ -5,10 +5,18 @@ import {
deserializeExpectation,
serializeExpectation } from
'../shader/execution/expression/case_cache.js';
-import { toComparator } from '../shader/execution/expression/expression.js';
+import { toComparator } from '../shader/execution/expression/expectation.js';
-import { isFloatValue, Matrix, Scalar, Vector } from './conversion.js';
+import {
+ ArrayValue,
+ isFloatValue,
+ isScalarValue,
+ MatrixValue,
+
+
+ VectorValue } from
+'./conversion.js';
import { FPInterval } from './floating_point.js';
/** Comparison describes the result of a Comparator function. */
@@ -98,7 +106,7 @@ function compareValue(got, expected) {
}
}
- if (got instanceof Scalar) {
+ if (isScalarValue(got)) {
const g = got;
const e = expected;
const isFloat = g.type.kind === 'f64' || g.type.kind === 'f32' || g.type.kind === 'f16';
@@ -111,7 +119,7 @@ function compareValue(got, expected) {
};
}
- if (got instanceof Vector) {
+ if (got instanceof VectorValue || got instanceof ArrayValue) {
const e = expected;
const gLen = got.elements.length;
const eLen = e.elements.length;
@@ -130,7 +138,7 @@ function compareValue(got, expected) {
};
}
- if (got instanceof Matrix) {
+ if (got instanceof MatrixValue) {
const e = expected;
const gCols = got.type.cols;
const eCols = e.type.cols;
@@ -153,7 +161,7 @@ function compareValue(got, expected) {
};
}
- throw new Error(`unhandled type '${typeof got}`);
+ throw new Error(`unhandled type '${typeof got}'`);
}
/**
@@ -175,7 +183,7 @@ function compareInterval(got, expected) {
}
}
- if (got instanceof Scalar) {
+ if (isScalarValue(got)) {
const g = got.value;
const matched = expected.contains(g);
return {
@@ -197,7 +205,7 @@ function compareInterval(got, expected) {
*/
function compareVector(got, expected) {
// Check got type
- if (!(got instanceof Vector)) {
+ if (!(got instanceof VectorValue)) {
return {
matched: false,
got: `${Colors.red((typeof got).toString())}(${got})`,
@@ -262,7 +270,7 @@ function convertArrayToString(m) {
*/
function compareMatrix(got, expected) {
// Check got type
- if (!(got instanceof Matrix)) {
+ if (!(got instanceof MatrixValue)) {
return {
matched: false,
got: `${Colors.red((typeof got).toString())}(${got})`,
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/constants.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/constants.js
index b46a2b178b..332958cb24 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/constants.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/constants.js
@@ -242,6 +242,21 @@ export const kBit = {
};
export const kValue = {
+ // Limits of i64
+ i64: {
+ positive: {
+ min: BigInt(0n),
+ max: BigInt(9223372036854775807n)
+ },
+ negative: {
+ min: BigInt(-9223372036854775808n),
+ max: BigInt(0n)
+ },
+ isOOB: (val) => {
+ return val > kValue.i64.positive.max || val < kValue.i64.negative.min;
+ }
+ },
+
// Limits of i32
i32: {
positive: {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/conversion.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/conversion.js
index a56c09b3b7..528730dc79 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/conversion.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/conversion.js
@@ -6,6 +6,7 @@ import { Float16Array } from '../../external/petamoriken/float16/float16.js';
import { kBit } from './constants.js';
import {
+ align,
cartesianProduct,
clamp,
correctlyRoundedF16,
@@ -84,6 +85,8 @@ const workingDataI16 = new Int16Array(workingData);
const workingDataI32 = new Int32Array(workingData);
const workingDataI8 = new Int8Array(workingData);
const workingDataF64 = new Float64Array(workingData);
+const workingDataI64 = new BigInt64Array(workingData);
+const workingDataU64 = new BigUint64Array(workingData);
const workingDataView = new DataView(workingData);
/**
@@ -107,7 +110,7 @@ bias)
assert(mantissaBits <= 23);
if (Number.isNaN(n)) {
- // NaN = all exponent bits true, 1 or more mantissia bits true
+ // NaN = all exponent bits true, 1 or more mantissa bits true
return (1 << exponentBits) - 1 << mantissaBits | (1 << mantissaBits) - 1;
}
@@ -589,15 +592,23 @@ export function float16ToInt16(f16) {
+
/** ScalarType describes the type of WGSL Scalar. */
export class ScalarType {
// The named type
// In bytes
+
// reads a scalar from a buffer
- constructor(kind, size, read) {
+ constructor(
+ kind,
+ size,
+ signed,
+ read)
+ {
this.kind = kind;
this._size = size;
+ this._signed = signed;
this.read = read;
}
@@ -609,32 +620,64 @@ export class ScalarType {
return this._size;
}
- /** Constructs a Scalar of this type with `value` */
+ get alignment() {
+ return this._size;
+ }
+
+ get signed() {
+ return this._signed;
+ }
+
+ // This allows width to be checked in cases where scalar and vector types are mixed.
+ get width() {
+ return 1;
+ }
+
+ requiresF16() {
+ return this.kind === 'f16';
+ }
+
+ /** Constructs a ScalarValue of this type with `value` */
create(value) {
- switch (this.kind) {
- case 'abstract-float':
- return abstractFloat(value);
- case 'f64':
- return f64(value);
- case 'f32':
- return f32(value);
- case 'f16':
- return f16(value);
- case 'u32':
- return u32(value);
- case 'u16':
- return u16(value);
- case 'u8':
- return u8(value);
- case 'i32':
- return i32(value);
- case 'i16':
- return i16(value);
- case 'i8':
- return i8(value);
- case 'bool':
- return bool(value !== 0);
+ switch (typeof value) {
+ case 'number':
+ switch (this.kind) {
+ case 'abstract-float':
+ return abstractFloat(value);
+ case 'abstract-int':
+ return abstractInt(BigInt(value));
+ case 'f64':
+ return f64(value);
+ case 'f32':
+ return f32(value);
+ case 'f16':
+ return f16(value);
+ case 'u32':
+ return u32(value);
+ case 'u16':
+ return u16(value);
+ case 'u8':
+ return u8(value);
+ case 'i32':
+ return i32(value);
+ case 'i16':
+ return i16(value);
+ case 'i8':
+ return i8(value);
+ case 'bool':
+ return bool(value !== 0);
+ }
+ break;
+ case 'bigint':
+ switch (this.kind) {
+ case 'abstract-int':
+ return abstractInt(value);
+ case 'bool':
+ return bool(value !== 0n);
+ }
+ break;
}
+ unreachable(`Scalar<${this.kind}>.create() does not support ${typeof value}`);
}
}
@@ -643,6 +686,20 @@ export class VectorType {
// Number of elements in the vector
// Element type
+ // Maps a string representation of a vector type to vector type.
+ static instances = new Map();
+
+ static create(width, elementType) {
+ const key = `${elementType.toString()} ${width}}`;
+ let ty = this.instances.get(key);
+ if (ty !== undefined) {
+ return ty;
+ }
+ ty = new VectorType(width, elementType);
+ this.instances.set(key, ty);
+ return ty;
+ }
+
constructor(width, elementType) {
this.width = width;
this.elementType = elementType;
@@ -658,7 +715,7 @@ export class VectorType {
elements[i] = this.elementType.read(buf, offset);
offset += this.elementType.size;
}
- return new Vector(elements);
+ return new VectorValue(elements);
}
toString() {
@@ -669,6 +726,14 @@ export class VectorType {
return this.elementType.size * this.width;
}
+ get alignment() {
+ return VectorType.alignmentOf(this.width, this.elementType);
+ }
+
+ static alignmentOf(width, elementType) {
+ return elementType.size * (width === 3 ? 4 : width);
+ }
+
/** Constructs a Vector of this type with the given values */
create(value) {
if (value instanceof Array) {
@@ -676,22 +741,12 @@ export class VectorType {
} else {
value = Array(this.width).fill(value);
}
- return new Vector(value.map((v) => this.elementType.create(v)));
+ return new VectorValue(value.map((v) => this.elementType.create(v)));
}
-}
-// Maps a string representation of a vector type to vector type.
-const vectorTypes = new Map();
-
-export function TypeVec(width, elementType) {
- const key = `${elementType.toString()} ${width}}`;
- let ty = vectorTypes.get(key);
- if (ty !== undefined) {
- return ty;
+ requiresF16() {
+ return this.elementType.requiresF16();
}
- ty = new VectorType(width, elementType);
- vectorTypes.set(key, ty);
- return ty;
}
/** MatrixType describes the type of WGSL Matrix. */
@@ -700,6 +755,20 @@ export class MatrixType {
// Number of elements per column in the Matrix
// Element type
+ // Maps a string representation of a Matrix type to Matrix type.
+ static instances = new Map();
+
+ static create(cols, rows, elementType) {
+ const key = `${elementType.toString()} ${cols} ${rows}`;
+ let ty = this.instances.get(key);
+ if (ty !== undefined) {
+ return ty;
+ }
+ ty = new MatrixType(cols, rows, elementType);
+ this.instances.set(key, ty);
+ return ty;
+ }
+
constructor(cols, rows, elementType) {
this.cols = cols;
this.rows = rows;
@@ -729,100 +798,265 @@ export class MatrixType {
offset += this.elementType.size;
}
}
- return new Matrix(elements);
+ return new MatrixValue(elements);
}
toString() {
return `mat${this.cols}x${this.rows}<${this.elementType}>`;
}
+
+ get size() {
+ return VectorType.alignmentOf(this.rows, this.elementType) * this.cols;
+ }
+
+ get alignment() {
+ return VectorType.alignmentOf(this.rows, this.elementType);
+ }
+
+ requiresF16() {
+ return this.elementType.requiresF16();
+ }
+
+ /** Constructs a Matrix of this type with the given values */
+ create(value) {
+ if (value instanceof Array) {
+ assert(value.length === this.cols * this.rows);
+ } else {
+ value = Array(this.cols * this.rows).fill(value);
+ }
+ const columns = [];
+ for (let i = 0; i < this.cols; i++) {
+ const start = i * this.rows;
+ columns.push(value.slice(start, start + this.rows));
+ }
+ return new MatrixValue(columns.map((c) => c.map((v) => this.elementType.create(v))));
+ }
}
-// Maps a string representation of a Matrix type to Matrix type.
-const matrixTypes = new Map();
+/** ArrayType describes the type of WGSL Array. */
+export class ArrayType {
+ // Number of elements in the array. Zero represents a runtime-sized array.
+ // Element type
+
+ // Maps a string representation of a array type to array type.
+ static instances = new Map();
-export function TypeMat(cols, rows, elementType) {
- const key = `${elementType.toString()} ${cols} ${rows}`;
- let ty = matrixTypes.get(key);
- if (ty !== undefined) {
+ static create(count, elementType) {
+ const key = `${elementType.toString()} ${count}`;
+ let ty = this.instances.get(key);
+ if (ty !== undefined) {
+ return ty;
+ }
+ ty = new ArrayType(count, elementType);
+ this.instances.set(key, ty);
return ty;
}
- ty = new MatrixType(cols, rows, elementType);
- matrixTypes.set(key, ty);
- return ty;
+
+ constructor(count, elementType) {
+ this.count = count;
+ this.elementType = elementType;
+ }
+
+ /**
+ * @returns a array constructed from the values read from the buffer at the
+ * given byte offset
+ */
+ read(buf, offset) {
+ const elements = [];
+
+ for (let i = 0; i < this.count; i++) {
+ elements[i] = this.elementType.read(buf, offset);
+ offset += this.stride;
+ }
+ return new ArrayValue(elements);
+ }
+
+ toString() {
+ return this.count !== 0 ?
+ `array<${this.elementType}, ${this.count}>` :
+ `array<${this.elementType}>`;
+ }
+
+ get stride() {
+ return align(this.elementType.size, this.elementType.alignment);
+ }
+
+ get size() {
+ return this.stride * this.count;
+ }
+
+ get alignment() {
+ return this.elementType.alignment;
+ }
+
+ requiresF16() {
+ return this.elementType.requiresF16();
+ }
+
+ /** Constructs an Array of this type with the given values */
+ create(value) {
+ if (value instanceof Array) {
+ assert(value.length === this.count);
+ } else {
+ value = Array(this.count).fill(value);
+ }
+ return new ArrayValue(value.map((v) => this.elementType.create(v)));
+ }
}
-/** Type is a ScalarType, VectorType, or MatrixType. */
+/** ArrayElementType infers the element type of the indexable type A */
/** Copy bytes from `buf` at `offset` into the working data, then read it out using `workingDataOut` */
-function valueFromBytes(workingDataOut, buf, offset) {
+function valueFromBytes(
+workingDataOut,
+buf,
+offset)
+{
for (let i = 0; i < workingDataOut.BYTES_PER_ELEMENT; ++i) {
workingDataU8[i] = buf[offset + i];
}
return workingDataOut[0];
}
-export const TypeI32 = new ScalarType('i32', 4, (buf, offset) =>
+const abstractIntType = new ScalarType('abstract-int', 8, true, (buf, offset) =>
+abstractInt(valueFromBytes(workingDataI64, buf, offset))
+);
+const i32Type = new ScalarType('i32', 4, true, (buf, offset) =>
i32(valueFromBytes(workingDataI32, buf, offset))
);
-export const TypeU32 = new ScalarType('u32', 4, (buf, offset) =>
+const u32Type = new ScalarType('u32', 4, false, (buf, offset) =>
u32(valueFromBytes(workingDataU32, buf, offset))
);
-export const TypeAbstractFloat = new ScalarType(
+const i16Type = new ScalarType('i16', 2, true, (buf, offset) =>
+i16(valueFromBytes(workingDataI16, buf, offset))
+);
+const u16Type = new ScalarType('u16', 2, false, (buf, offset) =>
+u16(valueFromBytes(workingDataU16, buf, offset))
+);
+const i8Type = new ScalarType('i8', 1, true, (buf, offset) =>
+i8(valueFromBytes(workingDataI8, buf, offset))
+);
+const u8Type = new ScalarType('u8', 1, false, (buf, offset) =>
+u8(valueFromBytes(workingDataU8, buf, offset))
+);
+const abstractFloatType = new ScalarType(
'abstract-float',
8,
+ true,
(buf, offset) => abstractFloat(valueFromBytes(workingDataF64, buf, offset))
);
-export const TypeF64 = new ScalarType('f64', 8, (buf, offset) =>
+const f64Type = new ScalarType('f64', 8, true, (buf, offset) =>
f64(valueFromBytes(workingDataF64, buf, offset))
);
-export const TypeF32 = new ScalarType('f32', 4, (buf, offset) =>
+const f32Type = new ScalarType('f32', 4, true, (buf, offset) =>
f32(valueFromBytes(workingDataF32, buf, offset))
);
-export const TypeI16 = new ScalarType('i16', 2, (buf, offset) =>
-i16(valueFromBytes(workingDataI16, buf, offset))
-);
-export const TypeU16 = new ScalarType('u16', 2, (buf, offset) =>
-u16(valueFromBytes(workingDataU16, buf, offset))
-);
-export const TypeF16 = new ScalarType('f16', 2, (buf, offset) =>
+const f16Type = new ScalarType('f16', 2, true, (buf, offset) =>
f16Bits(valueFromBytes(workingDataU16, buf, offset))
);
-export const TypeI8 = new ScalarType('i8', 1, (buf, offset) =>
-i8(valueFromBytes(workingDataI8, buf, offset))
-);
-export const TypeU8 = new ScalarType('u8', 1, (buf, offset) =>
-u8(valueFromBytes(workingDataU8, buf, offset))
-);
-export const TypeBool = new ScalarType('bool', 4, (buf, offset) =>
+const boolType = new ScalarType('bool', 4, false, (buf, offset) =>
bool(valueFromBytes(workingDataU32, buf, offset) !== 0)
);
+/** Type is a ScalarType, VectorType, MatrixType or ArrayType. */
+
+
+/** Type holds pre-declared Types along with helper constructor functions. */
+export const Type = {
+ abstractInt: abstractIntType,
+ 'abstract-int': abstractIntType,
+ i32: i32Type,
+ u32: u32Type,
+ i16: i16Type,
+ u16: u16Type,
+ i8: i8Type,
+ u8: u8Type,
+
+ abstractFloat: abstractFloatType,
+ 'abstract-float': abstractFloatType,
+ f64: f64Type,
+ f32: f32Type,
+ f16: f16Type,
+
+ bool: boolType,
+
+ vec: (width, elementType) => VectorType.create(width, elementType),
+
+ vec2ai: VectorType.create(2, abstractIntType),
+ vec2i: VectorType.create(2, i32Type),
+ vec2u: VectorType.create(2, u32Type),
+ vec2af: VectorType.create(2, abstractFloatType),
+ vec2f: VectorType.create(2, f32Type),
+ vec2h: VectorType.create(2, f16Type),
+ vec2b: VectorType.create(2, boolType),
+ vec3ai: VectorType.create(3, abstractIntType),
+ vec3i: VectorType.create(3, i32Type),
+ vec3u: VectorType.create(3, u32Type),
+ vec3af: VectorType.create(3, abstractFloatType),
+ vec3f: VectorType.create(3, f32Type),
+ vec3h: VectorType.create(3, f16Type),
+ vec3b: VectorType.create(3, boolType),
+ vec4ai: VectorType.create(4, abstractIntType),
+ vec4i: VectorType.create(4, i32Type),
+ vec4u: VectorType.create(4, u32Type),
+ vec4af: VectorType.create(4, abstractFloatType),
+ vec4f: VectorType.create(4, f32Type),
+ vec4h: VectorType.create(4, f16Type),
+ vec4b: VectorType.create(4, boolType),
+
+ mat: (cols, rows, elementType) =>
+ MatrixType.create(cols, rows, elementType),
+
+ mat2x2f: MatrixType.create(2, 2, f32Type),
+ mat2x2h: MatrixType.create(2, 2, f16Type),
+ mat3x2f: MatrixType.create(3, 2, f32Type),
+ mat3x2h: MatrixType.create(3, 2, f16Type),
+ mat4x2f: MatrixType.create(4, 2, f32Type),
+ mat4x2h: MatrixType.create(4, 2, f16Type),
+ mat2x3f: MatrixType.create(2, 3, f32Type),
+ mat2x3h: MatrixType.create(2, 3, f16Type),
+ mat3x3f: MatrixType.create(3, 3, f32Type),
+ mat3x3h: MatrixType.create(3, 3, f16Type),
+ mat4x3f: MatrixType.create(4, 3, f32Type),
+ mat4x3h: MatrixType.create(4, 3, f16Type),
+ mat2x4f: MatrixType.create(2, 4, f32Type),
+ mat2x4h: MatrixType.create(2, 4, f16Type),
+ mat3x4f: MatrixType.create(3, 4, f32Type),
+ mat3x4h: MatrixType.create(3, 4, f16Type),
+ mat4x4f: MatrixType.create(4, 4, f32Type),
+ mat4x4h: MatrixType.create(4, 4, f16Type),
+
+ array: (count, elementType) => ArrayType.create(count, elementType)
+};
+
/** @returns the ScalarType from the ScalarKind */
export function scalarType(kind) {
switch (kind) {
case 'abstract-float':
- return TypeAbstractFloat;
+ return Type.abstractFloat;
case 'f64':
- return TypeF64;
+ return Type.f64;
case 'f32':
- return TypeF32;
+ return Type.f32;
case 'f16':
- return TypeF16;
+ return Type.f16;
case 'u32':
- return TypeU32;
+ return Type.u32;
case 'u16':
- return TypeU16;
+ return Type.u16;
case 'u8':
- return TypeU8;
+ return Type.u8;
+ case 'abstract-int':
+ return Type.abstractInt;
case 'i32':
- return TypeI32;
+ return Type.i32;
case 'i16':
- return TypeI16;
+ return Type.i16;
case 'i8':
- return TypeI8;
+ return Type.i8;
case 'bool':
- return TypeBool;
+ return Type.bool;
}
}
@@ -837,23 +1071,54 @@ export function numElementsOf(ty) {
if (ty instanceof MatrixType) {
return ty.cols * ty.rows;
}
+ if (ty instanceof ArrayType) {
+ return ty.count;
+ }
throw new Error(`unhandled type ${ty}`);
}
/** @returns the scalar elements of the given Value */
export function elementsOf(value) {
- if (value instanceof Scalar) {
+ if (isScalarValue(value)) {
return [value];
}
- if (value instanceof Vector) {
+ if (value instanceof VectorValue) {
return value.elements;
}
- if (value instanceof Matrix) {
+ if (value instanceof MatrixValue) {
return value.elements.flat();
}
+ if (value instanceof ArrayValue) {
+ return value.elements;
+ }
+ throw new Error(`unhandled value ${value}`);
+}
+
+/** @returns the scalar elements of the given Value */
+export function scalarElementsOf(value) {
+ if (isScalarValue(value)) {
+ return [value];
+ }
+ if (value instanceof VectorValue) {
+ return value.elements;
+ }
+ if (value instanceof MatrixValue) {
+ return value.elements.flat();
+ }
+ if (value instanceof ArrayValue) {
+ return value.elements.map((els) => scalarElementsOf(els)).flat();
+ }
throw new Error(`unhandled value ${value}`);
}
+/** @returns the inner element type of the given type */
+export function elementTypeOf(t) {
+ if (t instanceof ScalarType) {
+ return t;
+ }
+ return t.elementType;
+}
+
/** @returns the scalar (element) type of the given Type */
export function scalarTypeOf(ty) {
if (ty instanceof ScalarType) {
@@ -865,27 +1130,135 @@ export function scalarTypeOf(ty) {
if (ty instanceof MatrixType) {
return ty.elementType;
}
+ if (ty instanceof ArrayType) {
+ return scalarTypeOf(ty.elementType);
+ }
throw new Error(`unhandled type ${ty}`);
}
-/** ScalarValue is the JS type that can be held by a Scalar */
+/**
+ * @returns the implicit concretized type of the given Type.
+ * @param abstractIntToF32 if true, returns f32 for abstractInt else i32
+ * Example: vec3<abstract-float> -> vec3<float>
+ */
+export function concreteTypeOf(ty, allowedScalarTypes) {
+ if (allowedScalarTypes && allowedScalarTypes.length > 0) {
+ // https://www.w3.org/TR/WGSL/#conversion-rank
+ switch (ty) {
+ case Type.abstractInt:
+ if (allowedScalarTypes.includes(Type.i32)) {
+ return Type.i32;
+ }
+ if (allowedScalarTypes.includes(Type.u32)) {
+ return Type.u32;
+ }
+ // fallthrough.
+ case Type.abstractFloat:
+ if (allowedScalarTypes.includes(Type.f32)) {
+ return Type.f32;
+ }
+ if (allowedScalarTypes.includes(Type.f16)) {
+ return Type.f32;
+ }
+ throw new Error(`no ${ty}`);
+ }
+ } else {
+ switch (ty) {
+ case Type.abstractInt:
+ return Type.i32;
+ case Type.abstractFloat:
+ return Type.f32;
+ }
+ }
+ if (ty instanceof ScalarType) {
+ return ty;
+ }
+ if (ty instanceof VectorType) {
+ return Type.vec(ty.width, concreteTypeOf(ty.elementType, allowedScalarTypes));
+ }
+ if (ty instanceof MatrixType) {
+ return Type.mat(
+ ty.cols,
+ ty.rows,
+ concreteTypeOf(ty.elementType, allowedScalarTypes)
+ );
+ }
+ if (ty instanceof ArrayType) {
+ return Type.array(ty.count, concreteTypeOf(ty.elementType, allowedScalarTypes));
+ }
+ throw new Error(`unhandled type ${ty}`);
+}
+function hex(sizeInBytes, bitsLow, bitsHigh) {
+ let hex = '';
+ workingDataU32[0] = bitsLow;
+ if (bitsHigh !== undefined) {
+ workingDataU32[1] = bitsHigh;
+ }
+ for (let i = 0; i < sizeInBytes; ++i) {
+ hex = workingDataU8[i].toString(16).padStart(2, '0') + hex;
+ }
+ return `0x${hex}`;
+}
-/** Class that encapsulates a single scalar value of various types. */
-export class Scalar {
- // The scalar value
- // The type of the scalar
+function withPoint(x) {
+ const str = `${x}`;
+ return str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
+}
- // The scalar value, packed in one or two 32-bit unsigned integers.
- // Whether or not the bits1 is used depends on `this.type.size`.
+/** Class that encapsulates a single abstract-int value. */
+export class AbstractIntValue {
+ // The abstract-integer value
+ // The low 32 bits of the abstract-integer value.
+ // The high 32 bits of the abstract-integer value.
+ type = Type.abstractInt; // The type of the value.
+ constructor(value, bitsLow, bitsHigh) {
+ this.value = value;
+ this.bitsLow = bitsLow;
+ this.bitsHigh = bitsHigh;
+ }
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU32[0] = this.bitsLow;
+ workingDataU32[1] = this.bitsHigh;
+ for (let i = 0; i < 8; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ // WGSL parses negative numbers as a negated positive.
+ // This means '-9223372036854775808' parses as `-' & '9223372036854775808', so must be written as
+ // '(-9223372036854775807 - 1)' in WGSL, because '9223372036854775808' is not a valid AbstractInt.
+ if (this.value === -9223372036854775808n) {
+ return `(-9223372036854775807 - 1)`;
+ }
+ return `${this.value}`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(8, this.bitsLow, this.bitsHigh)})`;
+ }
+}
- constructor(type, value, bits1, bits0) {
+/** Class that encapsulates a single abstract-float value. */
+export class AbstractFloatValue {
+ // The f32 value
+ // The low 32 bits of the abstract-float value.
+ // The high 32 bits of the abstract-float value.
+ type = Type.abstractFloat; // The type of the value.
+
+ constructor(value, bitsLow, bitsHigh) {
this.value = value;
- this.type = type;
- this.bits1 = bits1;
- this.bits0 = bits0;
+ this.bitsLow = bitsLow;
+ this.bitsHigh = bitsHigh;
}
/**
@@ -894,200 +1267,541 @@ export class Scalar {
* @param offset the offset in buffer, in units of `buffer`
*/
copyTo(buffer, offset) {
- assert(this.type.kind !== 'f64', `Copying f64 values to/from buffers is not defined`);
- workingDataU32[1] = this.bits1;
- workingDataU32[0] = this.bits0;
- for (let i = 0; i < this.type.size; i++) {
+ workingDataU32[0] = this.bitsLow;
+ workingDataU32[1] = this.bitsHigh;
+ for (let i = 0; i < 8; i++) {
buffer[offset + i] = workingDataU8[i];
}
}
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `${withPoint(this.value)}`;
+ }
+
+ toString() {
+ switch (this.value) {
+ case Infinity:
+ case -Infinity:
+ return Colors.bold(this.value.toString());
+ default:{
+ let str = this.value.toString();
+ str = str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
+ return isSubnormalNumberF64(this.value.valueOf()) ?
+ `${Colors.bold(str)} (${hex(8, this.bitsLow, this.bitsHigh)} subnormal)` :
+ `${Colors.bold(str)} (${hex(8, this.bitsLow, this.bitsHigh)})`;
+ }
+ }
+ }
+}
+
+/** Class that encapsulates a single i32 value. */
+export class I32Value {
+ // The i32 value
+ // The i32 value, bitcast to a 32-bit integer.
+ type = Type.i32; // The type of the value.
+
+ constructor(value, bits) {
+ this.value = value;
+ this.bits = bits;
+ }
+
/**
- * @returns the WGSL representation of this scalar value
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
*/
+ copyTo(buffer, offset) {
+ workingDataU32[0] = this.bits;
+ for (let i = 0; i < 4; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
wgsl() {
- const withPoint = (x) => {
- const str = `${x}`;
- return str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
- };
- if (isFinite(this.value)) {
- switch (this.type.kind) {
- case 'abstract-float':
- return `${withPoint(this.value)}`;
- case 'f64':
- return `${withPoint(this.value)}`;
- case 'f32':
- return `${withPoint(this.value)}f`;
- case 'f16':
- return `${withPoint(this.value)}h`;
- case 'u32':
- return `${this.value}u`;
- case 'i32':
- return `i32(${this.value})`;
- case 'bool':
- return `${this.value}`;
- }
+ return `i32(${this.value})`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(4, this.bits)})`;
+ }
+}
+
+/** Class that encapsulates a single u32 value. */
+export class U32Value {
+ // The u32 value
+ type = Type.u32; // The type of the value.
+
+ constructor(value) {
+ this.value = value;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU32[0] = this.value;
+ for (let i = 0; i < 4; i++) {
+ buffer[offset + i] = workingDataU8[i];
}
- throw new Error(
- `scalar of value ${this.value} and type ${this.type} has no WGSL representation`
- );
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `${this.value}u`;
}
toString() {
- if (this.type.kind === 'bool') {
- return Colors.bold(this.value.toString());
+ return `${Colors.bold(this.value.toString())} (${hex(4, this.value)})`;
+ }
+}
+
+/**
+ * Class that encapsulates a single i16 value.
+ * @note type does not exist in WGSL yet
+ */
+export class I16Value {
+ // The i16 value
+ // The i16 value, bitcast to a 16-bit integer.
+ type = Type.i16; // The type of the value.
+
+ constructor(value, bits) {
+ this.value = value;
+ this.bits = bits;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU16[0] = this.bits;
+ for (let i = 0; i < 4; i++) {
+ buffer[offset + i] = workingDataU8[i];
}
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `i16(${this.value})`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(2, this.bits)})`;
+ }
+}
+
+/**
+ * Class that encapsulates a single u16 value.
+ * @note type does not exist in WGSL yet
+ */
+export class U16Value {
+ // The u16 value
+ type = Type.u16; // The type of the value.
+
+ constructor(value) {
+ this.value = value;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU16[0] = this.value;
+ for (let i = 0; i < 2; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ assert(false, 'u16 is not a WGSL type');
+ return `u16(${this.value})`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(2, this.value)})`;
+ }
+}
+
+/**
+ * Class that encapsulates a single i8 value.
+ * @note type does not exist in WGSL yet
+ */
+export class I8Value {
+ // The i8 value
+ // The i8 value, bitcast to a 8-bit integer.
+ type = Type.i8; // The type of the value.
+
+ constructor(value, bits) {
+ this.value = value;
+ this.bits = bits;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU8[0] = this.bits;
+ for (let i = 0; i < 4; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `i8(${this.value})`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(2, this.bits)})`;
+ }
+}
+
+/**
+ * Class that encapsulates a single u8 value.
+ * @note type does not exist in WGSL yet
+ */
+export class U8Value {
+ // The u8 value
+ type = Type.u8; // The type of the value.
+
+ constructor(value) {
+ this.value = value;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU8[0] = this.value;
+ for (let i = 0; i < 2; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ assert(false, 'u8 is not a WGSL type');
+ return `u8(${this.value})`;
+ }
+
+ toString() {
+ return `${Colors.bold(this.value.toString())} (${hex(2, this.value)})`;
+ }
+}
+
+/**
+ * Class that encapsulates a single f64 value
+ * @note type does not exist in WGSL yet
+ */
+export class F64Value {
+ // The f32 value
+ // The low 32 bits of the abstract-float value.
+ // The high 32 bits of the abstract-float value.
+ type = Type.f64; // The type of the value.
+
+ constructor(value, bitsLow, bitsHigh) {
+ this.value = value;
+ this.bitsLow = bitsLow;
+ this.bitsHigh = bitsHigh;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU32[0] = this.bitsLow;
+ workingDataU32[1] = this.bitsHigh;
+ for (let i = 0; i < 8; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ assert(false, 'f64 is not a WGSL type');
+ return `${withPoint(this.value)}`;
+ }
+
+ toString() {
switch (this.value) {
case Infinity:
case -Infinity:
return Colors.bold(this.value.toString());
default:{
- workingDataU32[1] = this.bits1;
- workingDataU32[0] = this.bits0;
- let hex = '';
- for (let i = 0; i < this.type.size; ++i) {
- hex = workingDataU8[i].toString(16).padStart(2, '0') + hex;
- }
- const n = this.value;
- if (n !== null && isFloatValue(this)) {
- let str = this.value.toString();
- str = str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
- switch (this.type.kind) {
- case 'abstract-float':
- return isSubnormalNumberF64(n.valueOf()) ?
- `${Colors.bold(str)} (0x${hex} subnormal)` :
- `${Colors.bold(str)} (0x${hex})`;
- case 'f64':
- return isSubnormalNumberF64(n.valueOf()) ?
- `${Colors.bold(str)} (0x${hex} subnormal)` :
- `${Colors.bold(str)} (0x${hex})`;
- case 'f32':
- return isSubnormalNumberF32(n.valueOf()) ?
- `${Colors.bold(str)} (0x${hex} subnormal)` :
- `${Colors.bold(str)} (0x${hex})`;
- case 'f16':
- return isSubnormalNumberF16(n.valueOf()) ?
- `${Colors.bold(str)} (0x${hex} subnormal)` :
- `${Colors.bold(str)} (0x${hex})`;
- default:
- unreachable(
- `Printing of floating point kind ${this.type.kind} is not implemented...`
- );
- }
- }
- return `${Colors.bold(this.value.toString())} (0x${hex})`;
+ let str = this.value.toString();
+ str = str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
+ return isSubnormalNumberF64(this.value.valueOf()) ?
+ `${Colors.bold(str)} (${hex(8, this.bitsLow, this.bitsHigh)} subnormal)` :
+ `${Colors.bold(str)} (${hex(8, this.bitsLow, this.bitsHigh)})`;
}
}
}
}
+/** Class that encapsulates a single f32 value. */
+export class F32Value {
+ // The f32 value
+ // The f32 value, bitcast to a 32-bit integer.
+ type = Type.f32; // The type of the value.
+ constructor(value, bits) {
+ this.value = value;
+ this.bits = bits;
+ }
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU32[0] = this.bits;
+ for (let i = 0; i < 4; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `${withPoint(this.value)}f`;
+ }
-/** Create a Scalar of `type` by storing `value` as an element of `workingDataArray` and retrieving it.
- * The working data array *must* be an alias of `workingData`.
- */
-function scalarFromValue(
-type,
-workingDataArray,
-value)
-{
- // Clear all bits of the working data since `value` may be smaller; the upper bits should be 0.
- workingDataU32[1] = 0;
- workingDataU32[0] = 0;
- workingDataArray[0] = value;
- return new Scalar(type, workingDataArray[0], workingDataU32[1], workingDataU32[0]);
+ toString() {
+ switch (this.value) {
+ case Infinity:
+ case -Infinity:
+ return Colors.bold(this.value.toString());
+ default:{
+ let str = this.value.toString();
+ str = str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
+ return isSubnormalNumberF32(this.value.valueOf()) ?
+ `${Colors.bold(str)} (${hex(4, this.bits)} subnormal)` :
+ `${Colors.bold(str)} (${hex(4, this.bits)})`;
+ }
+ }
+ }
}
-/** Create a Scalar of `type` by storing `value` as an element of `workingDataStoreArray` and
- * reinterpreting it as an element of `workingDataLoadArray`.
- * Both working data arrays *must* be aliases of `workingData`.
- */
-function scalarFromBits(
-type,
-workingDataStoreArray,
-workingDataLoadArray,
-bits)
-{
- // Clear all bits of the working data since `value` may be smaller; the upper bits should be 0.
- workingDataU32[1] = 0;
- workingDataU32[0] = 0;
- workingDataStoreArray[0] = bits;
- return new Scalar(type, workingDataLoadArray[0], workingDataU32[1], workingDataU32[0]);
+/** Class that encapsulates a single f16 value. */
+export class F16Value {
+ // The f16 value
+ // The f16 value, bitcast to a 16-bit integer.
+ type = Type.f16; // The type of the value.
+
+ constructor(value, bits) {
+ this.value = value;
+ this.bits = bits;
+ }
+
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ workingDataU16[0] = this.bits;
+ for (let i = 0; i < 2; i++) {
+ buffer[offset + i] = workingDataU8[i];
+ }
+ }
+
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return `${withPoint(this.value)}h`;
+ }
+
+ toString() {
+ switch (this.value) {
+ case Infinity:
+ case -Infinity:
+ return Colors.bold(this.value.toString());
+ default:{
+ let str = this.value.toString();
+ str = str.indexOf('.') > 0 || str.indexOf('e') > 0 ? str : `${str}.0`;
+ return isSubnormalNumberF16(this.value.valueOf()) ?
+ `${Colors.bold(str)} (${hex(2, this.bits)} subnormal)` :
+ `${Colors.bold(str)} (${hex(2, this.bits)})`;
+ }
+ }
+ }
}
+/** Class that encapsulates a single bool value. */
+export class BoolValue {
+ // The bool value
+ type = Type.bool; // The type of the value.
-/** Create an AbstractFloat from a numeric value, a JS `number`. */
-export const abstractFloat = (value) =>
-scalarFromValue(TypeAbstractFloat, workingDataF64, value);
+ constructor(value) {
+ this.value = value;
+ }
-/** Create an f64 from a numeric value, a JS `number`. */
-export const f64 = (value) => scalarFromValue(TypeF64, workingDataF64, value);
+ /**
+ * Copies the scalar value to the buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the offset in buffer, in units of `buffer`
+ */
+ copyTo(buffer, offset) {
+ buffer[offset] = this.value ? 1 : 0;
+ }
-/** Create an f32 from a numeric value, a JS `number`. */
-export const f32 = (value) => scalarFromValue(TypeF32, workingDataF32, value);
+ /** @returns the WGSL representation of this scalar value */
+ wgsl() {
+ return this.value.toString();
+ }
-/** Create an f16 from a numeric value, a JS `number`. */
-export const f16 = (value) => scalarFromValue(TypeF16, workingDataF16, value);
+ toString() {
+ return Colors.bold(this.value.toString());
+ }
+}
-/** Create an f32 from a bit representation, a uint32 represented as a JS `number`. */
-export const f32Bits = (bits) =>
-scalarFromBits(TypeF32, workingDataU32, workingDataF32, bits);
+/** Scalar represents all the scalar value types */
-/** Create an f16 from a bit representation, a uint16 represented as a JS `number`. */
-export const f16Bits = (bits) =>
-scalarFromBits(TypeF16, workingDataU16, workingDataF16, bits);
-/** Create an i32 from a numeric value, a JS `number`. */
-export const i32 = (value) => scalarFromValue(TypeI32, workingDataI32, value);
-/** Create an i16 from a numeric value, a JS `number`. */
-export const i16 = (value) => scalarFromValue(TypeI16, workingDataI16, value);
-/** Create an i8 from a numeric value, a JS `number`. */
-export const i8 = (value) => scalarFromValue(TypeI8, workingDataI8, value);
-/** Create an i32 from a bit representation, a uint32 represented as a JS `number`. */
-export const i32Bits = (bits) =>
-scalarFromBits(TypeI32, workingDataU32, workingDataI32, bits);
-/** Create an i16 from a bit representation, a uint16 represented as a JS `number`. */
-export const i16Bits = (bits) =>
-scalarFromBits(TypeI16, workingDataU16, workingDataI16, bits);
-/** Create an i8 from a bit representation, a uint8 represented as a JS `number`. */
-export const i8Bits = (bits) =>
-scalarFromBits(TypeI8, workingDataU8, workingDataI8, bits);
+
+
+
+
+
+
+
+
+
+
+
+export function isScalarValue(value) {
+ return (
+ value instanceof AbstractIntValue ||
+ value instanceof AbstractFloatValue ||
+ value instanceof I32Value ||
+ value instanceof U32Value ||
+ value instanceof I16Value ||
+ value instanceof U16Value ||
+ value instanceof I8Value ||
+ value instanceof U8Value ||
+ value instanceof F64Value ||
+ value instanceof F32Value ||
+ value instanceof F16Value ||
+ value instanceof BoolValue);
+
+}
+
+/** Create an AbstractInt from a numeric value, a JS `bigint`. */
+export function abstractInt(value) {
+ workingDataI64[0] = value;
+ return new AbstractIntValue(workingDataI64[0], workingDataU32[0], workingDataU32[1]);
+}
+
+/** Create an AbstractInt from a bit representation, a uint64 represented as a JS `bigint`. */
+export function abstractIntBits(value) {
+ workingDataU64[0] = value;
+ return new AbstractIntValue(workingDataI64[0], workingDataU32[0], workingDataU32[1]);
+}
+
+/** Create an AbstractFloat from a numeric value, a JS `number`. */
+export function abstractFloat(value) {
+ workingDataF64[0] = value;
+ return new AbstractFloatValue(workingDataF64[0], workingDataU32[0], workingDataU32[1]);
+}
+
+/** Create an i32 from a numeric value, a JS `number`. */
+export function i32(value) {
+ workingDataI32[0] = value;
+ return new I32Value(workingDataI32[0], workingDataU32[0]);
+}
+
+/** Create an i32 from a bit representation, a uint32 represented as a JS `number`. */
+export function i32Bits(bits) {
+ workingDataU32[0] = bits;
+ return new I32Value(workingDataI32[0], workingDataU32[0]);
+}
/** Create a u32 from a numeric value, a JS `number`. */
-export const u32 = (value) => scalarFromValue(TypeU32, workingDataU32, value);
+export function u32(value) {
+ workingDataU32[0] = value;
+ return new U32Value(workingDataU32[0]);
+}
+
+/** Create a u32 from a bit representation, a uint32 represented as a JS `number`. */
+export function u32Bits(bits) {
+ workingDataU32[0] = bits;
+ return new U32Value(workingDataU32[0]);
+}
+
+/** Create an i16 from a numeric value, a JS `number`. */
+export function i16(value) {
+ workingDataI16[0] = value;
+ return new I16Value(workingDataI16[0], workingDataU16[0]);
+}
/** Create a u16 from a numeric value, a JS `number`. */
-export const u16 = (value) => scalarFromValue(TypeU16, workingDataU16, value);
+export function u16(value) {
+ workingDataU16[0] = value;
+ return new U16Value(workingDataU16[0]);
+}
+
+/** Create an i8 from a numeric value, a JS `number`. */
+export function i8(value) {
+ workingDataI8[0] = value;
+ return new I8Value(workingDataI8[0], workingDataU8[0]);
+}
/** Create a u8 from a numeric value, a JS `number`. */
-export const u8 = (value) => scalarFromValue(TypeU8, workingDataU8, value);
+export function u8(value) {
+ workingDataU8[0] = value;
+ return new U8Value(workingDataU8[0]);
+}
+
+/** Create an f64 from a numeric value, a JS `number`. */
+export function f64(value) {
+ workingDataF64[0] = value;
+ return new F64Value(workingDataF64[0], workingDataU32[0], workingDataU32[1]);
+}
+
+/** Create an f32 from a numeric value, a JS `number`. */
+export function f32(value) {
+ workingDataF32[0] = value;
+ return new F32Value(workingDataF32[0], workingDataU32[0]);
+}
-/** Create an u32 from a bit representation, a uint32 represented as a JS `number`. */
-export const u32Bits = (bits) =>
-scalarFromBits(TypeU32, workingDataU32, workingDataU32, bits);
+/** Create an f32 from a bit representation, a uint32 represented as a JS `number`. */
+export function f32Bits(bits) {
+ workingDataU32[0] = bits;
+ return new F32Value(workingDataF32[0], workingDataU32[0]);
+}
-/** Create an u16 from a bit representation, a uint16 represented as a JS `number`. */
-export const u16Bits = (bits) =>
-scalarFromBits(TypeU16, workingDataU16, workingDataU16, bits);
+/** Create an f16 from a numeric value, a JS `number`. */
+export function f16(value) {
+ workingDataF16[0] = value;
+ return new F16Value(workingDataF16[0], workingDataU16[0]);
+}
-/** Create an u8 from a bit representation, a uint8 represented as a JS `number`. */
-export const u8Bits = (bits) =>
-scalarFromBits(TypeU8, workingDataU8, workingDataU8, bits);
+/** Create an f16 from a bit representation, a uint16 represented as a JS `number`. */
+export function f16Bits(bits) {
+ workingDataU16[0] = bits;
+ return new F16Value(workingDataF16[0], workingDataU16[0]);
+}
/** Create a boolean value. */
export function bool(value) {
- // WGSL does not support using 'bool' types directly in storage / uniform
- // buffers, so instead we pack booleans in a u32, where 'false' is zero and
- // 'true' is any non-zero value.
- workingDataU32[0] = value ? 1 : 0;
- workingDataU32[1] = 0;
- return new Scalar(TypeBool, value, workingDataU32[1], workingDataU32[0]);
+ return new BoolValue(value);
}
/** A 'true' literal value */
@@ -1099,7 +1813,7 @@ export const False = bool(false);
/**
* Class that encapsulates a vector value.
*/
-export class Vector {
+export class VectorValue {
@@ -1117,7 +1831,7 @@ export class Vector {
}
}
this.elements = elements;
- this.type = TypeVec(elements.length, elements[0].type);
+ this.type = VectorType.create(elements.length, elements[0].type);
}
/**
@@ -1165,19 +1879,24 @@ export class Vector {
}
}
+/** Helper for constructing a new vector with the provided values */
+export function vec(...elements) {
+ return new VectorValue(elements);
+}
+
/** Helper for constructing a new two-element vector with the provided values */
export function vec2(x, y) {
- return new Vector([x, y]);
+ return new VectorValue([x, y]);
}
/** Helper for constructing a new three-element vector with the provided values */
export function vec3(x, y, z) {
- return new Vector([x, y, z]);
+ return new VectorValue([x, y, z]);
}
/** Helper for constructing a new four-element vector with the provided values */
export function vec4(x, y, z, w) {
- return new Vector([x, y, z, w]);
+ return new VectorValue([x, y, z, w]);
}
/**
@@ -1201,7 +1920,7 @@ export function toVector(v, op) {
/**
* Class that encapsulates a Matrix value.
*/
-export class Matrix {
+export class MatrixValue {
@@ -1226,7 +1945,7 @@ export class Matrix {
}
this.elements = elements;
- this.type = TypeMat(num_cols, num_rows, elem_type);
+ this.type = MatrixType.create(num_cols, num_rows, elem_type);
}
/**
@@ -1262,6 +1981,53 @@ export class Matrix {
}
/**
+ * Class that encapsulates an Array value.
+ */
+export class ArrayValue {
+
+
+
+ constructor(elements) {
+ const elem_type = elements[0].type;
+ if (!elements.every((c) => elements.every((r) => objectEquals(r.type, elem_type)))) {
+ throw new Error(`cannot mix array element types`);
+ }
+
+ this.elements = elements;
+ this.type = ArrayType.create(elements.length, elem_type);
+ }
+
+ /**
+ * Copies the array value to the Uint8Array buffer at the provided byte offset.
+ * @param buffer the destination buffer
+ * @param offset the byte offset within buffer
+ */
+ copyTo(buffer, offset) {
+ for (const element of this.elements) {
+ element.copyTo(buffer, offset);
+ offset += this.type.elementType.size;
+ }
+ }
+
+ /**
+ * @returns the WGSL representation of this array value
+ */
+ wgsl() {
+ const els = this.elements.map((r) => r.wgsl()).join(', ');
+ return isAbstractType(this.type.elementType) ? `array(${els})` : `${this.type}(${els})`;
+ }
+
+ toString() {
+ return this.wgsl();
+ }
+}
+
+/** Helper for constructing an ArrayValue with the provided values */
+export function array(...elements) {
+ return new ArrayValue(elements);
+}
+
+/**
* Helper for constructing Matrices from arrays of numbers
*
* @param m array of array of numbers to be converted, all Array of number must
@@ -1271,17 +2037,19 @@ export class Matrix {
export function toMatrix(m, op) {
const cols = m.length;
const rows = m[0].length;
- const elements = [...Array(cols)].map((_) => [...Array(rows)]);
+ const elements = [...Array(cols)].map((_) => [
+ ...Array(rows)]
+ );
for (let i = 0; i < cols; i++) {
for (let j = 0; j < rows; j++) {
elements[i][j] = op(m[i][j]);
}
}
- return new Matrix(elements);
+ return new MatrixValue(elements);
}
-/** Value is a Scalar or Vector value. */var
+/** Value is a Scalar, Vector, Matrix or Array value. */var
@@ -1302,7 +2070,8 @@ export function toMatrix(m, op) {
-SerializedScalarKind = /*#__PURE__*/function (SerializedScalarKind) {SerializedScalarKind[SerializedScalarKind["AbstractFloat"] = 0] = "AbstractFloat";SerializedScalarKind[SerializedScalarKind["F64"] = 1] = "F64";SerializedScalarKind[SerializedScalarKind["F32"] = 2] = "F32";SerializedScalarKind[SerializedScalarKind["F16"] = 3] = "F16";SerializedScalarKind[SerializedScalarKind["U32"] = 4] = "U32";SerializedScalarKind[SerializedScalarKind["U16"] = 5] = "U16";SerializedScalarKind[SerializedScalarKind["U8"] = 6] = "U8";SerializedScalarKind[SerializedScalarKind["I32"] = 7] = "I32";SerializedScalarKind[SerializedScalarKind["I16"] = 8] = "I16";SerializedScalarKind[SerializedScalarKind["I8"] = 9] = "I8";SerializedScalarKind[SerializedScalarKind["Bool"] = 10] = "Bool";return SerializedScalarKind;}(SerializedScalarKind || {});
+SerializedScalarKind = /*#__PURE__*/function (SerializedScalarKind) {SerializedScalarKind[SerializedScalarKind["AbstractFloat"] = 0] = "AbstractFloat";SerializedScalarKind[SerializedScalarKind["F64"] = 1] = "F64";SerializedScalarKind[SerializedScalarKind["F32"] = 2] = "F32";SerializedScalarKind[SerializedScalarKind["F16"] = 3] = "F16";SerializedScalarKind[SerializedScalarKind["U32"] = 4] = "U32";SerializedScalarKind[SerializedScalarKind["U16"] = 5] = "U16";SerializedScalarKind[SerializedScalarKind["U8"] = 6] = "U8";SerializedScalarKind[SerializedScalarKind["I32"] = 7] = "I32";SerializedScalarKind[SerializedScalarKind["I16"] = 8] = "I16";SerializedScalarKind[SerializedScalarKind["I8"] = 9] = "I8";SerializedScalarKind[SerializedScalarKind["Bool"] = 10] = "Bool";SerializedScalarKind[SerializedScalarKind["AbstractInt"] = 11] = "AbstractInt";return SerializedScalarKind;}(SerializedScalarKind || {});
+
@@ -1340,6 +2109,9 @@ function serializeScalarKind(s, v) {
case 'u8':
s.writeU8(SerializedScalarKind.U8);
return;
+ case 'abstract-int':
+ s.writeU8(SerializedScalarKind.AbstractInt);
+ return;
case 'i32':
s.writeU8(SerializedScalarKind.I32);
return;
@@ -1353,6 +2125,7 @@ function serializeScalarKind(s, v) {
s.writeU8(SerializedScalarKind.Bool);
return;
}
+ unreachable(`Do not know what to write scalar kind = ${v}`);
}
/** deserializeScalarKind() deserializes a ScalarKind from a BinaryStream */
@@ -1373,6 +2146,8 @@ function deserializeScalarKind(s) {
return 'u16';
case SerializedScalarKind.U8:
return 'u8';
+ case SerializedScalarKind.AbstractInt:
+ return 'abstract-int';
case SerializedScalarKind.I32:
return 'i32';
case SerializedScalarKind.I16:
@@ -1395,50 +2170,65 @@ SerializedValueKind = /*#__PURE__*/function (SerializedValueKind) {SerializedVal
/** serializeValue() serializes a Value to a BinaryStream */
export function serializeValue(s, v) {
const serializeScalar = (scalar, kind) => {
- switch (kind) {
- case 'abstract-float':
- s.writeF64(scalar.value);
- return;
- case 'f64':
- s.writeF64(scalar.value);
- return;
- case 'f32':
- s.writeF32(scalar.value);
- return;
- case 'f16':
- s.writeF16(scalar.value);
- return;
- case 'u32':
- s.writeU32(scalar.value);
- return;
- case 'u16':
- s.writeU16(scalar.value);
- return;
- case 'u8':
- s.writeU8(scalar.value);
- return;
- case 'i32':
- s.writeI32(scalar.value);
- return;
- case 'i16':
- s.writeI16(scalar.value);
- return;
- case 'i8':
- s.writeI8(scalar.value);
- return;
- case 'bool':
- s.writeBool(scalar.value);
- return;
+ switch (typeof scalar.value) {
+ case 'number':
+ switch (kind) {
+ case 'abstract-float':
+ s.writeF64(scalar.value);
+ return;
+ case 'f64':
+ s.writeF64(scalar.value);
+ return;
+ case 'f32':
+ s.writeF32(scalar.value);
+ return;
+ case 'f16':
+ s.writeF16(scalar.value);
+ return;
+ case 'u32':
+ s.writeU32(scalar.value);
+ return;
+ case 'u16':
+ s.writeU16(scalar.value);
+ return;
+ case 'u8':
+ s.writeU8(scalar.value);
+ return;
+ case 'i32':
+ s.writeI32(scalar.value);
+ return;
+ case 'i16':
+ s.writeI16(scalar.value);
+ return;
+ case 'i8':
+ s.writeI8(scalar.value);
+ return;
+ }
+ break;
+ case 'bigint':
+ switch (kind) {
+ case 'abstract-int':
+ s.writeI64(scalar.value);
+ return;
+ }
+ break;
+ case 'boolean':
+ switch (kind) {
+ case 'bool':
+ s.writeBool(scalar.value);
+ return;
+ }
+ break;
}
};
- if (v instanceof Scalar) {
+ if (isScalarValue(v)) {
s.writeU8(SerializedValueKind.Scalar);
serializeScalarKind(s, v.type.kind);
serializeScalar(v, v.type.kind);
return;
}
- if (v instanceof Vector) {
+ if (v instanceof VectorValue) {
s.writeU8(SerializedValueKind.Vector);
serializeScalarKind(s, v.type.elementType.kind);
s.writeU8(v.type.width);
@@ -1447,7 +2237,7 @@ export function serializeValue(s, v) {
}
return;
}
- if (v instanceof Matrix) {
+ if (v instanceof MatrixValue) {
s.writeU8(SerializedValueKind.Matrix);
serializeScalarKind(s, v.type.elementType.kind);
s.writeU8(v.type.cols);
@@ -1481,6 +2271,8 @@ export function deserializeValue(s) {
return u16(s.readU16());
case 'u8':
return u8(s.readU8());
+ case 'abstract-int':
+ return abstractInt(s.readI64());
case 'i32':
return i32(s.readI32());
case 'i16':
@@ -1502,7 +2294,7 @@ export function deserializeValue(s) {
for (let i = 0; i < width; i++) {
scalars[i] = deserializeScalar(scalarKind);
}
- return new Vector(scalars);
+ return new VectorValue(scalars);
}
case SerializedValueKind.Matrix:{
const numCols = s.readU8();
@@ -1514,7 +2306,7 @@ export function deserializeValue(s) {
columns[c][i] = deserializeScalar(scalarKind);
}
}
- return new Matrix(columns);
+ return new MatrixValue(columns);
}
default:
unreachable(`invalid serialized value kind: ${valueKind}`);
@@ -1533,7 +2325,7 @@ export function isFloatValue(v) {
*/
export function isAbstractType(ty) {
if (ty instanceof ScalarType) {
- return ty.kind === 'abstract-float';
+ return ty.kind === 'abstract-float' || ty.kind === 'abstract-int';
}
return false;
}
@@ -1552,84 +2344,221 @@ export function isFloatType(ty) {
return false;
}
+/**
+ * @returns if `ty` is a type convertible to floating point type.
+ * @note this does not consider composite types.
+ * Use elementType() if you want to test the element type.
+ */
+export function isConvertibleToFloatType(ty) {
+ if (ty instanceof ScalarType) {
+ return (
+ ty.kind === 'abstract-int' ||
+ ty.kind === 'abstract-float' ||
+ ty.kind === 'f64' ||
+ ty.kind === 'f32' ||
+ ty.kind === 'f16');
+
+ }
+ return false;
+}
+
+/**
+ * @returns if `ty` is an unsigned type.
+ */
+export function isUnsignedType(ty) {
+ if (ty instanceof ScalarType) {
+ return ty.kind === 'u8' || ty.kind === 'u16' || ty.kind === 'u32';
+ } else {
+ return isUnsignedType(ty.elementType);
+ }
+}
+
+/** @returns true if an argument of type 'src' can be used for a parameter of type 'dst' */
+export function isConvertible(src, dst) {
+ if (src === dst) {
+ return true;
+ }
+
+ const widthOf = (ty) => {
+ return ty instanceof VectorType ? ty.width : 1;
+ };
+
+ if (widthOf(src) !== widthOf(dst)) {
+ return false;
+ }
+
+ const elSrc = scalarTypeOf(src);
+ const elDst = scalarTypeOf(dst);
+
+ switch (elSrc.kind) {
+ case 'abstract-float':
+ switch (elDst.kind) {
+ case 'abstract-float':
+ case 'f16':
+ case 'f32':
+ case 'f64':
+ return true;
+ default:
+ return false;
+ }
+ case 'abstract-int':
+ switch (elDst.kind) {
+ case 'abstract-int':
+ case 'abstract-float':
+ case 'f16':
+ case 'f32':
+ case 'f64':
+ case 'u16':
+ case 'u32':
+ case 'u8':
+ case 'i16':
+ case 'i32':
+ case 'i8':
+ return true;
+ default:
+ return false;
+ }
+ default:
+ return false;
+ }
+}
+
/// All floating-point scalar types
-export const kAllFloatScalars = [TypeAbstractFloat, TypeF32, TypeF16];
+const kFloatScalars = [Type.abstractFloat, Type.f32, Type.f16];
/// All floating-point vec2 types
-export const kAllFloatVector2 = [
-TypeVec(2, TypeAbstractFloat),
-TypeVec(2, TypeF32),
-TypeVec(2, TypeF16)];
-
+const kFloatVec2 = [Type.vec2af, Type.vec2f, Type.vec2h];
/// All floating-point vec3 types
-export const kAllFloatVector3 = [
-TypeVec(3, TypeAbstractFloat),
-TypeVec(3, TypeF32),
-TypeVec(3, TypeF16)];
-
+const kFloatVec3 = [Type.vec3af, Type.vec3f, Type.vec3h];
/// All floating-point vec4 types
-export const kAllFloatVector4 = [
-TypeVec(4, TypeAbstractFloat),
-TypeVec(4, TypeF32),
-TypeVec(4, TypeF16)];
+const kFloatVec4 = [Type.vec4af, Type.vec4f, Type.vec4h];
+export const kConcreteF32ScalarsAndVectors = [
+Type.f32,
+Type.vec2f,
+Type.vec3f,
+Type.vec4f];
-/// All floating-point vector types
-export const kAllFloatVectors = [
-...kAllFloatVector2,
-...kAllFloatVector3,
-...kAllFloatVector4];
+/// All f16 floating-point scalar and vector types
+export const kConcreteF16ScalarsAndVectors = [
+Type.f16,
+Type.vec2h,
+Type.vec3h,
+Type.vec4h];
-/// All floating-point scalar and vector types
-export const kAllFloatScalarsAndVectors = [...kAllFloatScalars, ...kAllFloatVectors];
-
-/// All integer scalar and vector types
-export const kAllIntegerScalarsAndVectors = [
-TypeI32,
-TypeVec(2, TypeI32),
-TypeVec(3, TypeI32),
-TypeVec(4, TypeI32),
-TypeU32,
-TypeVec(2, TypeU32),
-TypeVec(3, TypeU32),
-TypeVec(4, TypeU32)];
+/// All floating-point vector types
+export const kFloatVectors = [...kFloatVec2, ...kFloatVec3, ...kFloatVec4];
-/// All signed integer scalar and vector types
-export const kAllSignedIntegerScalarsAndVectors = [
-TypeI32,
-TypeVec(2, TypeI32),
-TypeVec(3, TypeI32),
-TypeVec(4, TypeI32)];
+/// All floating-point scalar and vector types
+export const kFloatScalarsAndVectors = [...kFloatScalars, ...kFloatVectors];
+// Abstract and concrete integer types are not grouped into an 'all' type,
+// because for many validation tests there is a valid conversion of
+// AbstractInt -> AbstractFloat, but not one for the concrete integers. Thus, an
+// AbstractInt literal will be a potentially valid input, whereas the concrete
+// integers will not be. For many tests the pattern is to have separate fixtures
+// for the things that might be valid and those that are never valid.
-/// All unsigned integer scalar and vector types
-export const kAllUnsignedIntegerScalarsAndVectors = [
-TypeU32,
-TypeVec(2, TypeU32),
-TypeVec(3, TypeU32),
-TypeVec(4, TypeU32)];
+/// All signed integer vector types
+export const kConcreteSignedIntegerVectors = [Type.vec2i, Type.vec3i, Type.vec4i];
+/// All unsigned integer vector types
+export const kConcreteUnsignedIntegerVectors = [Type.vec2u, Type.vec3u, Type.vec4u];
-/// All floating-point and integer scalar and vector types
-export const kAllFloatAndIntegerScalarsAndVectors = [
-...kAllFloatScalarsAndVectors,
-...kAllIntegerScalarsAndVectors];
+/// All concrete integer vector types
+export const kConcreteIntegerVectors = [
+...kConcreteSignedIntegerVectors,
+...kConcreteUnsignedIntegerVectors];
-/// All floating-point and signed integer scalar and vector types
-export const kAllFloatAndSignedIntegerScalarsAndVectors = [
-...kAllFloatScalarsAndVectors,
-...kAllSignedIntegerScalarsAndVectors];
+/// All signed integer scalar and vector types
+export const kConcreteSignedIntegerScalarsAndVectors = [
+Type.i32,
+...kConcreteSignedIntegerVectors];
-/** @returns the inner element type of the given type */
-export function elementType(t) {
- if (t instanceof ScalarType) {
- return t;
- }
- return t.elementType;
-} \ No newline at end of file
+/// All unsigned integer scalar and vector types
+export const kConcreteUnsignedIntegerScalarsAndVectors = [
+Type.u32,
+...kConcreteUnsignedIntegerVectors];
+
+
+/// All concrete integer scalar and vector types
+export const kConcreteIntegerScalarsAndVectors = [
+...kConcreteSignedIntegerScalarsAndVectors,
+...kConcreteUnsignedIntegerScalarsAndVectors];
+
+
+/// All types which are convertable to floating-point scalar types.
+export const kConvertableToFloatScalar = [Type.abstractInt, ...kFloatScalars];
+
+/// All types which are convertable to floating-point vector 2 types.
+export const kConvertableToFloatVec2 = [Type.vec2ai, ...kFloatVec2];
+
+/// All types which are convertable to floating-point vector 3 types.
+export const kConvertableToFloatVec3 = [Type.vec3ai, ...kFloatVec3];
+
+/// All types which are convertable to floating-point vector 4 types.
+export const kConvertableToFloatVec4 = [Type.vec4ai, ...kFloatVec4];
+
+/// All the types which are convertable to floating-point vector types.
+export const kConvertableToFloatVectors = [
+Type.vec2ai,
+Type.vec3ai,
+Type.vec4ai,
+...kFloatVectors];
+
+
+/// All types which are convertable to floating-point scalar or vector types.
+export const kConvertableToFloatScalarsAndVectors = [
+Type.abstractInt,
+...kFloatScalars,
+...kConvertableToFloatVectors];
+
+
+/// All the numeric scalar and vector types.
+export const kAllNumericScalarsAndVectors = [
+...kConvertableToFloatScalarsAndVectors,
+...kConcreteIntegerScalarsAndVectors];
+
+
+/// All the concrete integer and floating point scalars and vectors.
+export const kConcreteNumericScalarsAndVectors = [
+...kConcreteIntegerScalarsAndVectors,
+...kConcreteF16ScalarsAndVectors,
+...kConcreteF32ScalarsAndVectors];
+
+
+/// All boolean types.
+export const kAllBoolScalarsAndVectors = [Type.bool, Type.vec2b, Type.vec3b, Type.vec4b];
+
+/// All the scalar and vector types.
+export const kAllScalarsAndVectors = [
+...kAllBoolScalarsAndVectors,
+...kAllNumericScalarsAndVectors];
+
+
+/// All the matrix types
+export const kAllMatrices = [
+Type.mat2x2f,
+Type.mat2x2h,
+Type.mat2x3f,
+Type.mat2x3h,
+Type.mat2x4f,
+Type.mat2x4h,
+Type.mat3x2f,
+Type.mat3x2h,
+Type.mat3x3f,
+Type.mat3x3h,
+Type.mat3x4f,
+Type.mat3x4h,
+Type.mat4x2f,
+Type.mat4x2h,
+Type.mat4x3f,
+Type.mat4x3h,
+Type.mat4x4f,
+Type.mat4x4h]; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/device_pool.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/device_pool.js
index feb62bc1be..e5f7eb90a7 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/device_pool.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/device_pool.js
@@ -9,6 +9,11 @@ import {
'../../common/util/util.js';
import { getDefaultLimits, kLimits } from '../capability_info.js';
+// MUST_NOT_BE_IMPORTED_BY_DATA_CACHE
+// This file should not be transitively imported by .cache.ts files
+
+
+
@@ -283,6 +288,8 @@ descriptor)
* Holds a GPUDevice and tracks its state (free/acquired) and handles device loss.
*/
class DeviceHolder {
+ /** Adapter the device was created from. Cannot be reused; just for adapter info. */
+
/** The device. Will be cleared during cleanup if there were unexpected errors. */
/** Whether the device is in use by a test or not. */
@@ -307,10 +314,11 @@ class DeviceHolder {
const device = await adapter.requestDevice(descriptor);
assert(device !== null, 'requestDevice returned null');
- return new DeviceHolder(device);
+ return new DeviceHolder(adapter, device);
}
- constructor(device) {
+ constructor(adapter, device) {
+ this.adapter = adapter;
this._device = device;
void this._device.lost.then((ev) => {
this.lostInfo = ev;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/floating_point.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/floating_point.js
index aada64711c..6b98800fd2 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/floating_point.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/floating_point.js
@@ -4,6 +4,7 @@
+
import { anyOf } from './compare.js';
import { kValue } from './constants.js';
import {
@@ -23,6 +24,7 @@ import {
correctlyRoundedF16,
correctlyRoundedF32,
correctlyRoundedF64,
+ every2DArray,
flatten2DArray,
flushSubnormalNumberF16,
@@ -36,10 +38,24 @@ import {
map2DArray,
oneULPF16,
oneULPF32,
- quantizeToF32,
quantizeToF16,
+ quantizeToF32,
+ scalarF16Range,
+ scalarF32Range,
+ scalarF64Range,
+ sparseMatrixF16Range,
+ sparseMatrixF32Range,
+ sparseMatrixF64Range,
+ sparseScalarF16Range,
+ sparseScalarF32Range,
+ sparseScalarF64Range,
+ sparseVectorF16Range,
+ sparseVectorF32Range,
+ sparseVectorF64Range,
unflatten2DArray,
- every2DArray } from
+ vectorF16Range,
+ vectorF32Range,
+ vectorF64Range } from
'./math.js';
/** Indicate the kind of WGSL floating point numbers being operated on */var
@@ -83,10 +99,10 @@ export function deserializeFPKind(s) {
// Containers
/**
- * Representation of bounds for an interval as an array with either one or two
- * elements. Single element indicates that the interval is a single point. For
- * two elements, the first is the lower bound of the interval and the second is
- * the upper bound.
+ * Representation of endpoints for an interval as an array with either one or
+ * two elements. Single element indicates that the interval is a single point.
+ * For two elements, the first is the lower edges of the interval and the
+ * second is the upper edge, i.e. e[0] <= e[1], where e is an IntervalEndpoints
*/
@@ -102,15 +118,18 @@ export class FPInterval {
* `FPTraits.toInterval` is the preferred way to create FPIntervals
*
* @param kind the floating point number type this is an interval for
- * @param bounds beginning and end of the interval
+ * @param endpoints beginning and end of the interval
*/
- constructor(kind, ...bounds) {
+ constructor(kind, ...endpoints) {
this.kind = kind;
- const begin = bounds[0];
- const end = bounds.length === 2 ? bounds[1] : bounds[0];
- assert(!Number.isNaN(begin) && !Number.isNaN(end), `bounds need to be non-NaN`);
- assert(begin <= end, `bounds[0] (${begin}) must be less than or equal to bounds[1] (${end})`);
+ const begin = endpoints[0];
+ const end = endpoints.length === 2 ? endpoints[1] : endpoints[0];
+ assert(!Number.isNaN(begin) && !Number.isNaN(end), `endpoints need to be non-NaN`);
+ assert(
+ begin <= end,
+ `endpoints[0] (${begin}) must be less than or equal to endpoints[1] (${end})`
+ );
this.begin = begin;
this.end = end;
@@ -122,7 +141,7 @@ export class FPInterval {
}
/** @returns begin and end if non-point interval, otherwise just begin */
- bounds() {
+ endpoints() {
return this.isPoint() ? [this.begin] : [this.begin, this.end];
}
@@ -163,7 +182,7 @@ export class FPInterval {
/** @returns a string representation for logging purposes */
toString() {
- return `{ '${this.kind}', [${this.bounds().map(this.traits().scalarBuilder)}] }`;
+ return `{ '${this.kind}', [${this.endpoints().map(this.traits().scalarBuilder)}] }`;
}
}
@@ -325,6 +344,14 @@ function addFlushedIfNeededF16(values) {
+
+
+
+
+
+
+
+
/**
* A function that converts a pair of points to an acceptance interval.
* This is the public facing API for builtin implementations that is called
@@ -334,6 +361,13 @@ function addFlushedIfNeededF16(values) {
+/** Domain for a ScalarPairToInterval implementation */
+
+
+
+
+
+
/** Operation used to implement a ScalarPairToInterval */
@@ -355,7 +389,8 @@ function addFlushedIfNeededF16(values) {
-/** Domain for a ScalarPairToInterval implementation */
+
+
@@ -556,7 +591,7 @@ function addFlushedIfNeededF16(values) {
// Traits
/**
- * Typed structure containing all the limits/constants defined for each
+ * Typed structure containing all the constants defined for each
* WGSL floating point kind
*/
@@ -632,6 +667,8 @@ function addFlushedIfNeededF16(values) {
+
+
/** A representation of an FPInterval for a case param */
@@ -661,7 +698,7 @@ export class FPTraits {
return this.constants().unboundedInterval;
}
- return new FPInterval(this.kind, ...n.bounds());
+ return new FPInterval(this.kind, ...n.endpoints());
}
if (n instanceof Array) {
@@ -696,7 +733,7 @@ export class FPTraits {
}
/**
- * @returns an interval with the tightest bounds that includes all provided
+ * @returns an interval with the tightest endpoints that includes all provided
* intervals
*/
spanIntervals(...intervals) {
@@ -840,48 +877,6 @@ export class FPTraits {
return needs_zero ? values.concat(0) : values;
}
- /**
- * Restrict the inputs to an ScalarToInterval operation
- *
- * Only used for operations that have tighter domain requirements than 'must
- * be finite'.
- *
- * @param domain interval to restrict inputs to
- * @param impl operation implementation to run if input is within the required domain
- * @returns a ScalarToInterval that calls impl if domain contains the input,
- * otherwise it returns an unbounded interval */
- limitScalarToIntervalDomain(
- domain,
- impl)
- {
- return (n) => {
- return domain.contains(n) ? impl(n) : this.constants().unboundedInterval;
- };
- }
-
- /**
- * Restrict the inputs to a ScalarPairToInterval
- *
- * Only used for operations that have tighter domain requirements than 'must be
- * finite'.
- *
- * @param domain set of intervals to restrict inputs to
- * @param impl operation implementation to run if input is within the required domain
- * @returns a ScalarPairToInterval that calls impl if domain contains the input,
- * otherwise it returns an unbounded interval */
- limitScalarPairToIntervalDomain(
- domain,
- impl)
- {
- return (x, y) => {
- if (!domain.x.some((d) => d.contains(x)) || !domain.y.some((d) => d.contains(y))) {
- return this.constants().unboundedInterval;
- }
-
- return impl(x, y);
- };
- }
-
/** Stub for scalar to interval generator */
unimplementedScalarToInterval(name, _x) {
unreachable(`'${name}' is not yet implemented for '${this.kind}'`);
@@ -1053,14 +1048,14 @@ export class FPTraits {
unreachable(`'refract' is not yet implemented for '${this.kind}'`);
}
- /** Version of absoluteErrorInterval that always returns the unboundedInterval */
- unboundedAbsoluteErrorInterval(_n, _error_range) {
- return this.constants().unboundedInterval;
+ /** Stub for absolute errors */
+ unimplementedAbsoluteErrorInterval(_n, _error_range) {
+ unreachable(`Absolute Error is not implement for '${this.kind}'`);
}
- /** Version of ulpInterval that always returns the unboundedInterval */
- unboundedUlpInterval(_n, _numULP) {
- return this.constants().unboundedInterval;
+ /** Stub for ULP errors */
+ unimplementedUlpInterval(_n, _numULP) {
+ unreachable(`ULP Error is not implement for '${this.kind}'`);
}
// Utilities - Defined by subclass
@@ -1079,7 +1074,21 @@ export class FPTraits {
/** @returns 1 * ULP: (number) */
- /** @returns a builder for converting numbers to Scalars */
+ /** @returns a builder for converting numbers to ScalarsValues */
+
+ /** @returns a range of scalars for testing */
+
+ /** @returns a reduced range of scalars for testing */
+
+ /** @returns a range of dim element vectors for testing */
+
+ /** @returns a reduced range of dim element vectors for testing */
+
+ /** @returns a reduced range of cols x rows matrices for testing
+ *
+ * A non-sparse version of this generator is intentionally not provided due to
+ * runtime issues with more dense ranges.
+ */
// Framework - Cases
@@ -1705,7 +1714,6 @@ export class FPTraits {
{
param0 = map2DArray(param0, this.quantize);
param1 = map2DArray(param1, this.quantize);
-
const results = ops.map((o) => o(param0, param1));
if (filter === 'finite' && results.some((m) => m.some((c) => c.some((r) => !r.isFinite())))) {
return undefined;
@@ -1973,6 +1981,15 @@ export class FPTraits {
assert(!Number.isNaN(n), `flush not defined for NaN`);
const values = this.correctlyRounded(n);
const inputs = this.addFlushedIfNeeded(values);
+
+ if (op.domain !== undefined) {
+ // Cannot invoke op.domain() directly in the .some, because the narrowing doesn't propegate.
+ const domain = op.domain();
+ if (inputs.some((i) => !domain.contains(i))) {
+ return this.constants().unboundedInterval;
+ }
+ }
+
const results = new Set(inputs.map(op.impl));
return this.spanIntervals(...results);
}
@@ -1998,10 +2015,25 @@ export class FPTraits {
{
assert(!Number.isNaN(x), `flush not defined for NaN`);
assert(!Number.isNaN(y), `flush not defined for NaN`);
+
const x_values = this.correctlyRounded(x);
const y_values = this.correctlyRounded(y);
const x_inputs = this.addFlushedIfNeeded(x_values);
const y_inputs = this.addFlushedIfNeeded(y_values);
+
+ if (op.domain !== undefined) {
+ // Cannot invoke op.domain() directly in the .some, because the narrowing doesn't propegate.
+ const domain = op.domain();
+
+ if (x_inputs.some((i) => !domain.x.some((e) => e.contains(i)))) {
+ return this.constants().unboundedInterval;
+ }
+
+ if (y_inputs.some((j) => !domain.y.some((e) => e.contains(j)))) {
+ return this.constants().unboundedInterval;
+ }
+ }
+
const intervals = new Set();
x_inputs.forEach((inner_x) => {
y_inputs.forEach((inner_y) => {
@@ -2252,7 +2284,7 @@ export class FPTraits {
}
const result = this.spanIntervals(
- ...x.bounds().map((b) => this.roundAndFlushScalarToInterval(b, op))
+ ...x.endpoints().map((b) => this.roundAndFlushScalarToInterval(b, op))
);
return result.isFinite() ? result : this.constants().unboundedInterval;
}
@@ -2282,8 +2314,8 @@ export class FPTraits {
}
const outputs = new Set();
- x.bounds().forEach((inner_x) => {
- y.bounds().forEach((inner_y) => {
+ x.endpoints().forEach((inner_x) => {
+ y.endpoints().forEach((inner_y) => {
outputs.add(this.roundAndFlushScalarPairToInterval(inner_x, inner_y, op));
});
});
@@ -2312,9 +2344,9 @@ export class FPTraits {
}
const outputs = new Set();
- x.bounds().forEach((inner_x) => {
- y.bounds().forEach((inner_y) => {
- z.bounds().forEach((inner_z) => {
+ x.endpoints().forEach((inner_x) => {
+ y.endpoints().forEach((inner_y) => {
+ z.endpoints().forEach((inner_z) => {
outputs.add(this.roundAndFlushScalarTripleToInterval(inner_x, inner_y, inner_z, op));
});
});
@@ -2337,7 +2369,7 @@ export class FPTraits {
return this.constants().unboundedInterval;
}
- const x_values = cartesianProduct(...x.map((e) => e.bounds()));
+ const x_values = cartesianProduct(...x.map((e) => e.endpoints()));
const outputs = new Set();
x_values.forEach((inner_x) => {
@@ -2366,8 +2398,8 @@ export class FPTraits {
return this.constants().unboundedInterval;
}
- const x_values = cartesianProduct(...x.map((e) => e.bounds()));
- const y_values = cartesianProduct(...y.map((e) => e.bounds()));
+ const x_values = cartesianProduct(...x.map((e) => e.endpoints()));
+ const y_values = cartesianProduct(...y.map((e) => e.endpoints()));
const outputs = new Set();
x_values.forEach((inner_x) => {
@@ -2393,7 +2425,7 @@ export class FPTraits {
return this.constants().unboundedVector[x.length];
}
- const x_values = cartesianProduct(...x.map((e) => e.bounds()));
+ const x_values = cartesianProduct(...x.map((e) => e.endpoints()));
const outputs = new Set();
x_values.forEach((inner_x) => {
@@ -2437,8 +2469,8 @@ export class FPTraits {
return this.constants().unboundedVector[x.length];
}
- const x_values = cartesianProduct(...x.map((e) => e.bounds()));
- const y_values = cartesianProduct(...y.map((e) => e.bounds()));
+ const x_values = cartesianProduct(...x.map((e) => e.endpoints()));
+ const y_values = cartesianProduct(...y.map((e) => e.endpoints()));
const outputs = new Set();
x_values.forEach((inner_x) => {
@@ -2495,12 +2527,15 @@ export class FPTraits {
runMatrixToMatrixOp(m, op) {
const num_cols = m.length;
const num_rows = m[0].length;
- if (m.some((c) => c.some((r) => !r.isFinite()))) {
- return this.constants().unboundedMatrix[num_cols][num_rows];
- }
+
+ // Do not check for OOB inputs and exit early here, because the shape of
+ // the output matrix may be determined by the operation being run,
+ // i.e. transpose.
const m_flat = flatten2DArray(m);
- const m_values = cartesianProduct(...m_flat.map((e) => e.bounds()));
+ const m_values = cartesianProduct(
+ ...m_flat.map((e) => e.endpoints())
+ );
const outputs = new Set();
m_values.forEach((inner_m) => {
@@ -2522,6 +2557,33 @@ export class FPTraits {
/**
* Calculate the Matrix of acceptance intervals by running a scalar operation
+ * component-wise over a scalar and a matrix.
+ *
+ * An example of this is performing constant scaling.
+ *
+ * @param i scalar input
+ * @param m matrix input
+ * @param op scalar operation to be run component-wise
+ * @returns a matrix of intervals with the outputs of op.impl
+ */
+ runScalarPairToIntervalOpScalarMatrixComponentWise(
+ i,
+ m,
+ op)
+ {
+ const cols = m.length;
+ const rows = m[0].length;
+ return this.toMatrix(
+ unflatten2DArray(
+ flatten2DArray(m).map((e) => this.runScalarPairToIntervalOp(i, e, op)),
+ cols,
+ rows
+ )
+ );
+ }
+
+ /**
+ * Calculate the Matrix of acceptance intervals by running a scalar operation
* component-wise over a pair of matrices.
*
* An example of this is performing matrix addition.
@@ -2531,14 +2593,14 @@ export class FPTraits {
* @param op scalar operation to be run component-wise
* @returns a matrix of intervals with the outputs of op.impl
*/
- runScalarPairToIntervalOpMatrixComponentWise(
+ runScalarPairToIntervalOpMatrixMatrixComponentWise(
x,
y,
op)
{
assert(
x.length === y.length && x[0].length === y[0].length,
- `runScalarPairToIntervalOpMatrixComponentWise requires matrices of the same dimensions`
+ `runScalarPairToIntervalOpMatrixMatrixComponentWise requires matrices of the same dimensions`
);
const cols = x.length;
@@ -2673,7 +2735,7 @@ export class FPTraits {
// This op is implemented differently for f32 and f16.
AcosIntervalOp = {
- impl: this.limitScalarToIntervalDomain(this.toInterval([-1.0, 1.0]), (n) => {
+ impl: (n) => {
assert(this.kind === 'f32' || this.kind === 'f16');
// acos(n) = atan2(sqrt(1.0 - n * n), n) or a polynomial approximation with absolute error
const y = this.sqrtInterval(this.subtractionInterval(1, this.multiplicationInterval(n, n)));
@@ -2682,7 +2744,10 @@ export class FPTraits {
this.atan2Interval(y, n),
this.absoluteErrorInterval(Math.acos(n), approx_abs_error)
);
- })
+ },
+ domain: () => {
+ return this.constants().negOneToOneInterval;
+ }
};
acosIntervalImpl(n) {
@@ -2751,7 +2816,7 @@ export class FPTraits {
additionMatrixMatrixIntervalImpl(x, y) {
- return this.runScalarPairToIntervalOpMatrixComponentWise(
+ return this.runScalarPairToIntervalOpMatrixMatrixComponentWise(
this.toMatrix(x),
this.toMatrix(y),
this.AdditionIntervalOp
@@ -2766,16 +2831,19 @@ export class FPTraits {
// This op is implemented differently for f32 and f16.
AsinIntervalOp = {
- impl: this.limitScalarToIntervalDomain(this.toInterval([-1.0, 1.0]), (n) => {
+ impl: (n) => {
assert(this.kind === 'f32' || this.kind === 'f16');
// asin(n) = atan2(n, sqrt(1.0 - n * n)) or a polynomial approximation with absolute error
const x = this.sqrtInterval(this.subtractionInterval(1, this.multiplicationInterval(n, n)));
- const approx_abs_error = this.kind === 'f32' ? 6.77e-5 : 3.91e-3;
+ const approx_abs_error = this.kind === 'f32' ? 6.81e-5 : 3.91e-3;
return this.spanIntervals(
this.atan2Interval(n, x),
this.absoluteErrorInterval(Math.asin(n), approx_abs_error)
);
- })
+ },
+ domain: () => {
+ return this.constants().negOneToOneInterval;
+ }
};
/** Calculate an acceptance interval for asin(n) */
@@ -2836,29 +2904,23 @@ export class FPTraits {
[this.toInterval([-(2 ** 14), -(2 ** -14)]), this.toInterval([2 ** -14, 2 ** 14])];
const ulp_error = this.kind === 'f32' ? 4096 : 5;
return {
- impl: this.limitScalarPairToIntervalDomain(
- {
- x: domain_x,
- y: domain_y
- },
- (y, x) => {
- // Accurate result in f64
- let atan_yx = Math.atan(y / x);
- // Offset by +/-pi according to the definition. Use pi value in f64 because we are
- // handling accurate result.
- if (x < 0) {
- // x < 0, y > 0, result is atan(y/x) + π
- if (y > 0) {
- atan_yx = atan_yx + kValue.f64.positive.pi.whole;
- } else {
- // x < 0, y < 0, result is atan(y/x) - π
- atan_yx = atan_yx - kValue.f64.positive.pi.whole;
- }
+ impl: (y, x) => {
+ // Accurate result in f64
+ let atan_yx = Math.atan(y / x);
+ // Offset by +/-pi according to the definition. Use pi value in f64 because we are
+ // handling accurate result.
+ if (x < 0) {
+ // x < 0, y > 0, result is atan(y/x) + π
+ if (y > 0) {
+ atan_yx = atan_yx + kValue.f64.positive.pi.whole;
+ } else {
+ // x < 0, y < 0, result is atan(y/x) - π
+ atan_yx = atan_yx - kValue.f64.positive.pi.whole;
}
-
- return this.ulpInterval(atan_yx, ulp_error);
}
- ),
+
+ return this.ulpInterval(atan_yx, ulp_error);
+ },
extrema: (y, x) => {
// There is discontinuity, which generates an unbounded result, at y/x = 0 that will dominate the accuracy
if (y.contains(0)) {
@@ -2868,6 +2930,9 @@ export class FPTraits {
return [this.toInterval(0), x];
}
return [y, x];
+ },
+ domain: () => {
+ return { x: domain_x, y: domain_y };
}
};
}
@@ -2984,14 +3049,14 @@ export class FPTraits {
CosIntervalOp = {
- impl: this.limitScalarToIntervalDomain(
- this.constants().negPiToPiInterval,
- (n) => {
- assert(this.kind === 'f32' || this.kind === 'f16');
- const abs_error = this.kind === 'f32' ? 2 ** -11 : 2 ** -7;
- return this.absoluteErrorInterval(Math.cos(n), abs_error);
- }
- )
+ impl: (n) => {
+ assert(this.kind === 'f32' || this.kind === 'f16');
+ const abs_error = this.kind === 'f32' ? 2 ** -11 : 2 ** -7;
+ return this.absoluteErrorInterval(Math.cos(n), abs_error);
+ },
+ domain: () => {
+ return this.constants().negPiToPiInterval;
+ }
};
cosIntervalImpl(n) {
@@ -3041,7 +3106,11 @@ export class FPTraits {
this.multiplicationInterval(x[0], y[1]),
this.multiplicationInterval(x[1], y[0])
);
- return [r0, r1, r2];
+
+ if (r0.isFinite() && r1.isFinite() && r2.isFinite()) {
+ return [r0, r1, r2];
+ }
+ return this.constants().unboundedVector[3];
}
};
@@ -3281,24 +3350,21 @@ export class FPTraits {
[this.toInterval([-(2 ** 126), -(2 ** -126)]), this.toInterval([2 ** -126, 2 ** 126])] :
[this.toInterval([-(2 ** 14), -(2 ** -14)]), this.toInterval([2 ** -14, 2 ** 14])];
return {
- impl: this.limitScalarPairToIntervalDomain(
- {
- x: domain_x,
- y: domain_y
- },
- (x, y) => {
- if (y === 0) {
- return constants.unboundedInterval;
- }
- return this.ulpInterval(x / y, 2.5);
+ impl: (x, y) => {
+ if (y === 0) {
+ return constants.unboundedInterval;
}
- ),
+ return this.ulpInterval(x / y, 2.5);
+ },
extrema: (x, y) => {
// division has a discontinuity at y = 0.
if (y.contains(0)) {
y = this.toInterval(0);
}
return [x, y];
+ },
+ domain: () => {
+ return { x: domain_x, y: domain_y };
}
};
}
@@ -3346,7 +3412,10 @@ export class FPTraits {
x,
y)
{
- assert(x.length === y.length, `dot not defined for vectors with different lengths`);
+ assert(
+ x.length === y.length,
+ `dot not defined for vectors with different lengths, x = ${x}, y = ${y}`
+ );
return this.runVectorPairToIntervalOp(this.toVector(x), this.toVector(y), this.DotIntervalOp);
}
@@ -3517,12 +3586,12 @@ export class FPTraits {
InverseSqrtIntervalOp = {
- impl: this.limitScalarToIntervalDomain(
- this.constants().greaterThanZeroInterval,
- (n) => {
- return this.ulpInterval(1 / Math.sqrt(n), 2);
- }
- )
+ impl: (n) => {
+ return this.ulpInterval(1 / Math.sqrt(n), 2);
+ },
+ domain: () => {
+ return this.constants().greaterThanZeroInterval;
+ }
};
inverseSqrtIntervalImpl(n) {
@@ -3534,21 +3603,19 @@ export class FPTraits {
LdexpIntervalOp = {
impl: (e1, e2) => {
- assert(this.kind === 'f32' || this.kind === 'f16');
assert(Number.isInteger(e2), 'the second param of ldexp must be an integer');
- const bias = this.kind === 'f32' ? 127 : 15;
// Spec explicitly calls indeterminate value if e2 > bias + 1
- if (e2 > bias + 1) {
+ if (e2 > this.constants().bias + 1) {
return this.constants().unboundedInterval;
}
- // The spec says the result of ldexp(e1, e2) = e1 * 2 ^ e2, and the accuracy is correctly
- // rounded to the true value, so the inheritance framework does not need to be invoked to
- // determine bounds.
+ // The spec says the result of ldexp(e1, e2) = e1 * 2 ^ e2, and the
+ // accuracy is correctly rounded to the true value, so the inheritance
+ // framework does not need to be invoked to determine endpoints.
// Instead, the value at a higher precision is calculated and passed to
// correctlyRoundedInterval.
const result = e1 * 2 ** e2;
if (!Number.isFinite(result)) {
- // Overflowed TS's number type, so definitely out of bounds for f32/f16
+ // Overflowed TS's number type, so definitely out of bounds
return this.constants().unboundedInterval;
}
// The result may be zero if e2 + bias <= 0, but we can't simply span the interval to 0.0.
@@ -3606,17 +3673,17 @@ export class FPTraits {
LogIntervalOp = {
- impl: this.limitScalarToIntervalDomain(
- this.constants().greaterThanZeroInterval,
- (n) => {
- assert(this.kind === 'f32' || this.kind === 'f16');
- const abs_error = this.kind === 'f32' ? 2 ** -21 : 2 ** -7;
- if (n >= 0.5 && n <= 2.0) {
- return this.absoluteErrorInterval(Math.log(n), abs_error);
- }
- return this.ulpInterval(Math.log(n), 3);
+ impl: (n) => {
+ assert(this.kind === 'f32' || this.kind === 'f16');
+ const abs_error = this.kind === 'f32' ? 2 ** -21 : 2 ** -7;
+ if (n >= 0.5 && n <= 2.0) {
+ return this.absoluteErrorInterval(Math.log(n), abs_error);
}
- )
+ return this.ulpInterval(Math.log(n), 3);
+ },
+ domain: () => {
+ return this.constants().greaterThanZeroInterval;
+ }
};
logIntervalImpl(x) {
@@ -3627,17 +3694,17 @@ export class FPTraits {
Log2IntervalOp = {
- impl: this.limitScalarToIntervalDomain(
- this.constants().greaterThanZeroInterval,
- (n) => {
- assert(this.kind === 'f32' || this.kind === 'f16');
- const abs_error = this.kind === 'f32' ? 2 ** -21 : 2 ** -7;
- if (n >= 0.5 && n <= 2.0) {
- return this.absoluteErrorInterval(Math.log2(n), abs_error);
- }
- return this.ulpInterval(Math.log2(n), 3);
+ impl: (n) => {
+ assert(this.kind === 'f32' || this.kind === 'f16');
+ const abs_error = this.kind === 'f32' ? 2 ** -21 : 2 ** -7;
+ if (n >= 0.5 && n <= 2.0) {
+ return this.absoluteErrorInterval(Math.log2(n), abs_error);
}
- )
+ return this.ulpInterval(Math.log2(n), 3);
+ },
+ domain: () => {
+ return this.constants().greaterThanZeroInterval;
+ }
};
log2IntervalImpl(x) {
@@ -3791,14 +3858,10 @@ export class FPTraits {
}
multiplicationMatrixScalarIntervalImpl(mat, scalar) {
- const cols = mat.length;
- const rows = mat[0].length;
- return this.toMatrix(
- unflatten2DArray(
- flatten2DArray(mat).map((e) => this.multiplicationInterval(e, scalar)),
- cols,
- rows
- )
+ return this.runScalarPairToIntervalOpScalarMatrixComponentWise(
+ this.toInterval(scalar),
+ this.toMatrix(mat),
+ this.MultiplicationIntervalOp
);
}
@@ -3809,7 +3872,7 @@ export class FPTraits {
multiplicationScalarMatrixIntervalImpl(scalar, mat) {
- return this.multiplicationMatrixScalarIntervalImpl(mat, scalar);
+ return this.multiplicationMatrixScalarInterval(mat, scalar);
}
/** Calculate an acceptance interval of x * y, when x is a scalar and y is a matrix */
@@ -3830,13 +3893,22 @@ export class FPTraits {
const x_transposed = this.transposeInterval(mat_x);
+ let oob_result = false;
const result = [...Array(y_cols)].map((_) => [...Array(x_rows)]);
mat_y.forEach((y, i) => {
x_transposed.forEach((x, j) => {
result[i][j] = this.dotInterval(x, y);
+ if (!oob_result && !result[i][j].isFinite()) {
+ oob_result = true;
+ }
});
});
+ if (oob_result) {
+ return this.constants().unboundedMatrix[result.length][
+ result[0].length];
+
+ }
return result;
}
@@ -3896,7 +3968,11 @@ export class FPTraits {
NormalizeIntervalOp = {
impl: (n) => {
const length = this.lengthInterval(n);
- return this.toVector(n.map((e) => this.divisionInterval(e, length)));
+ const result = this.toVector(n.map((e) => this.divisionInterval(e, length)));
+ if (result.some((r) => !r.isFinite())) {
+ return this.constants().unboundedVector[result.length];
+ }
+ return result;
}
};
@@ -3955,11 +4031,16 @@ export class FPTraits {
// y = normal of reflecting surface
const t = this.multiplicationInterval(2.0, this.dotInterval(x, y));
const rhs = this.multiplyVectorByScalar(y, t);
- return this.runScalarPairToIntervalOpVectorComponentWise(
+ const result = this.runScalarPairToIntervalOpVectorComponentWise(
this.toVector(x),
rhs,
this.SubtractionIntervalOp
);
+
+ if (result.some((r) => !r.isFinite())) {
+ return this.constants().unboundedVector[result.length];
+ }
+ return result;
}
};
@@ -4015,11 +4096,16 @@ export class FPTraits {
const k_sqrt = this.sqrtInterval(k);
const t = this.additionInterval(dot_times_r, k_sqrt); // t = r * dot(i, s) + sqrt(k)
- return this.runScalarPairToIntervalOpVectorComponentWise(
+ const result = this.runScalarPairToIntervalOpVectorComponentWise(
this.multiplyVectorByScalar(i, r),
this.multiplyVectorByScalar(s, t),
this.SubtractionIntervalOp
); // (i * r) - (s * t)
+
+ if (result.some((r) => !r.isFinite())) {
+ return this.constants().unboundedVector[result.length];
+ }
+ return result;
}
/** Calculate acceptance interval vectors of reflect(i, s, r) */
@@ -4116,14 +4202,14 @@ export class FPTraits {
SinIntervalOp = {
- impl: this.limitScalarToIntervalDomain(
- this.constants().negPiToPiInterval,
- (n) => {
- assert(this.kind === 'f32' || this.kind === 'f16');
- const abs_error = this.kind === 'f32' ? 2 ** -11 : 2 ** -7;
- return this.absoluteErrorInterval(Math.sin(n), abs_error);
- }
- )
+ impl: (n) => {
+ assert(this.kind === 'f32' || this.kind === 'f16');
+ const abs_error = this.kind === 'f32' ? 2 ** -11 : 2 ** -7;
+ return this.absoluteErrorInterval(Math.sin(n), abs_error);
+ },
+ domain: () => {
+ return this.constants().negPiToPiInterval;
+ }
};
sinIntervalImpl(n) {
@@ -4250,7 +4336,7 @@ export class FPTraits {
subtractionMatrixMatrixIntervalImpl(x, y) {
- return this.runScalarPairToIntervalOpMatrixComponentWise(
+ return this.runScalarPairToIntervalOpMatrixMatrixComponentWise(
this.toMatrix(x),
this.toMatrix(y),
this.SubtractionIntervalOp
@@ -4375,6 +4461,7 @@ class F32Traits extends FPTraits {
sixth: kValue.f32.negative.pi.sixth
}
},
+ bias: 127,
unboundedInterval: kF32UnboundedInterval,
zeroInterval: kF32ZeroInterval,
// Have to use the constants.ts values here, because values defined in the
@@ -4389,6 +4476,7 @@ class F32Traits extends FPTraits {
kValue.f32.positive.subnormal.min,
kValue.f32.positive.max
),
+ negOneToOneInterval: new FPInterval('f32', -1, 1),
zeroVector: {
2: [kF32ZeroInterval, kF32ZeroInterval],
3: [kF32ZeroInterval, kF32ZeroInterval, kF32ZeroInterval],
@@ -4520,6 +4608,11 @@ class F32Traits extends FPTraits {
flushSubnormal = flushSubnormalNumberF32;
oneULP = oneULPF32;
scalarBuilder = f32;
+ scalarRange = scalarF32Range;
+ sparseScalarRange = sparseScalarF32Range;
+ vectorRange = vectorF32Range;
+ sparseVectorRange = sparseVectorF32Range;
+ sparseMatrixRange = sparseMatrixF32Range;
// Framework - Fundamental Error Intervals - Overrides
absoluteErrorInterval = this.absoluteErrorIntervalImpl.bind(this);
@@ -4686,7 +4779,7 @@ class F32Traits extends FPTraits {
unpack2x16floatIntervalImpl(n) {
assert(
n >= kValue.u32.min && n <= kValue.u32.max,
- 'unpack2x16floatInterval only accepts values on the bounds of u32'
+ 'unpack2x16floatInterval only accepts valid u32 values'
);
this.unpackDataU32[0] = n;
if (this.unpackDataF16.some((f) => !isFiniteF16(f))) {
@@ -4710,7 +4803,7 @@ class F32Traits extends FPTraits {
unpack2x16snormIntervalImpl(n) {
assert(
n >= kValue.u32.min && n <= kValue.u32.max,
- 'unpack2x16snormInterval only accepts values on the bounds of u32'
+ 'unpack2x16snormInterval only accepts valid u32 values'
);
const op = (n) => {
return this.ulpInterval(Math.max(n / 32767, -1), 3);
@@ -4726,7 +4819,7 @@ class F32Traits extends FPTraits {
unpack2x16unormIntervalImpl(n) {
assert(
n >= kValue.u32.min && n <= kValue.u32.max,
- 'unpack2x16unormInterval only accepts values on the bounds of u32'
+ 'unpack2x16unormInterval only accepts valid u32 values'
);
const op = (n) => {
return this.ulpInterval(n / 65535, 3);
@@ -4742,7 +4835,7 @@ class F32Traits extends FPTraits {
unpack4x8snormIntervalImpl(n) {
assert(
n >= kValue.u32.min && n <= kValue.u32.max,
- 'unpack4x8snormInterval only accepts values on the bounds of u32'
+ 'unpack4x8snormInterval only accepts valid u32 values'
);
const op = (n) => {
return this.ulpInterval(Math.max(n / 127, -1), 3);
@@ -4762,7 +4855,7 @@ class F32Traits extends FPTraits {
unpack4x8unormIntervalImpl(n) {
assert(
n >= kValue.u32.min && n <= kValue.u32.max,
- 'unpack4x8unormInterval only accepts values on the bounds of u32'
+ 'unpack4x8unormInterval only accepts valid u32 values'
);
const op = (n) => {
return this.ulpInterval(n / 255, 3);
@@ -4836,6 +4929,7 @@ class FPAbstractTraits extends FPTraits {
sixth: kValue.f64.negative.pi.sixth
}
},
+ bias: 1023,
unboundedInterval: kAbstractUnboundedInterval,
zeroInterval: kAbstractZeroInterval,
// Have to use the constants.ts values here, because values defined in the
@@ -4850,6 +4944,8 @@ class FPAbstractTraits extends FPTraits {
kValue.f64.positive.subnormal.min,
kValue.f64.positive.max
),
+ negOneToOneInterval: new FPInterval('abstract', -1, 1),
+
zeroVector: {
2: [kAbstractZeroInterval, kAbstractZeroInterval],
3: [kAbstractZeroInterval, kAbstractZeroInterval, kAbstractZeroInterval],
@@ -4992,14 +5088,17 @@ class FPAbstractTraits extends FPTraits {
unreachable(`'FPAbstractTraits.oneULP should never be called`);
};
scalarBuilder = abstractFloat;
+ scalarRange = scalarF64Range;
+ sparseScalarRange = sparseScalarF64Range;
+ vectorRange = vectorF64Range;
+ sparseVectorRange = sparseVectorF64Range;
+ sparseMatrixRange = sparseMatrixF64Range;
// Framework - Fundamental Error Intervals - Overrides
- absoluteErrorInterval = this.unboundedAbsoluteErrorInterval.bind(this);
+ absoluteErrorInterval = this.unimplementedAbsoluteErrorInterval.bind(this); // Should use FP.f32 instead
correctlyRoundedInterval = this.correctlyRoundedIntervalImpl.bind(this);
correctlyRoundedMatrix = this.correctlyRoundedMatrixImpl.bind(this);
- ulpInterval = (n, numULP) => {
- return this.toInterval(kF32Traits.ulpInterval(n, numULP));
- };
+ ulpInterval = this.unimplementedUlpInterval.bind(this); // Should use FP.f32 instead
// Framework - API - Overrides
absInterval = this.absIntervalImpl.bind(this);
@@ -5023,40 +5122,38 @@ class FPAbstractTraits extends FPTraits {
'atan2Interval'
);
atanhInterval = this.unimplementedScalarToInterval.bind(this, 'atanhInterval');
- ceilInterval = this.unimplementedScalarToInterval.bind(this, 'ceilInterval');
+ ceilInterval = this.ceilIntervalImpl.bind(this);
clampMedianInterval = this.clampMedianIntervalImpl.bind(this);
clampMinMaxInterval = this.clampMinMaxIntervalImpl.bind(this);
clampIntervals = [this.clampMedianInterval, this.clampMinMaxInterval];
cosInterval = this.unimplementedScalarToInterval.bind(this, 'cosInterval');
coshInterval = this.unimplementedScalarToInterval.bind(this, 'coshInterval');
- crossInterval = this.crossIntervalImpl.bind(this);
- degreesInterval = this.degreesIntervalImpl.bind(this);
+ crossInterval = this.unimplementedVectorPairToVector.bind(this, 'crossInterval');
+ degreesInterval = this.unimplementedScalarToInterval.bind(
+ this,
+ 'degreesInterval'
+ );
determinantInterval = this.unimplementedMatrixToInterval.bind(
this,
- 'determinantInterval'
+ 'determinant'
);
distanceInterval = this.unimplementedDistance.bind(this);
- divisionInterval = (
- x,
- y) =>
- {
- return this.toInterval(kF32Traits.divisionInterval(x, y));
- };
+ divisionInterval = this.unimplementedScalarPairToInterval.bind(
+ this,
+ 'divisionInterval'
+ );
dotInterval = this.unimplementedVectorPairToInterval.bind(this, 'dotInterval');
expInterval = this.unimplementedScalarToInterval.bind(this, 'expInterval');
exp2Interval = this.unimplementedScalarToInterval.bind(this, 'exp2Interval');
faceForwardIntervals = this.unimplementedFaceForward.bind(this);
floorInterval = this.floorIntervalImpl.bind(this);
- fmaInterval = this.fmaIntervalImpl.bind(this);
- fractInterval = this.unimplementedScalarToInterval.bind(this, 'fractInterval');
+ fmaInterval = this.unimplementedScalarTripleToInterval.bind(this, 'fmaInterval');
+ fractInterval = this.fractIntervalImpl.bind(this);
inverseSqrtInterval = this.unimplementedScalarToInterval.bind(
this,
'inverseSqrtInterval'
);
- ldexpInterval = this.unimplementedScalarPairToInterval.bind(
- this,
- 'ldexpInterval'
- );
+ ldexpInterval = this.ldexpIntervalImpl.bind(this);
lengthInterval = this.unimplementedLength.bind(this);
logInterval = this.unimplementedScalarToInterval.bind(this, 'logInterval');
log2Interval = this.unimplementedScalarToInterval.bind(this, 'log2Interval');
@@ -5077,14 +5174,10 @@ class FPAbstractTraits extends FPTraits {
this,
'multiplicationMatrixMatrixInterval'
);
- multiplicationMatrixScalarInterval = this.unimplementedMatrixScalarToMatrix.bind(
- this,
- 'multiplicationMatrixScalarInterval'
- );
- multiplicationScalarMatrixInterval = this.unimplementedScalarMatrixToMatrix.bind(
- this,
- 'multiplicationScalarMatrixInterval'
- );
+ multiplicationMatrixScalarInterval =
+ this.multiplicationMatrixScalarIntervalImpl.bind(this);
+ multiplicationScalarMatrixInterval =
+ this.multiplicationScalarMatrixIntervalImpl.bind(this);
multiplicationMatrixVectorInterval = this.unimplementedMatrixVectorToVector.bind(
this,
'multiplicationMatrixVectorInterval'
@@ -5099,16 +5192,17 @@ class FPAbstractTraits extends FPTraits {
'normalizeInterval'
);
powInterval = this.unimplementedScalarPairToInterval.bind(this, 'powInterval');
- radiansInterval = this.radiansIntervalImpl.bind(this);
+ radiansInterval = this.unimplementedScalarToInterval.bind(this, 'radiansImpl');
reflectInterval = this.unimplementedVectorPairToVector.bind(
this,
'reflectInterval'
);
refractInterval = this.unimplementedRefract.bind(this);
- remainderInterval = (x, y) => {
- return this.toInterval(kF32Traits.remainderInterval(x, y));
- };
- roundInterval = this.unimplementedScalarToInterval.bind(this, 'roundInterval');
+ remainderInterval = this.unimplementedScalarPairToInterval.bind(
+ this,
+ 'remainderInterval'
+ );
+ roundInterval = this.roundIntervalImpl.bind(this);
saturateInterval = this.saturateIntervalImpl.bind(this);
signInterval = this.signIntervalImpl.bind(this);
sinInterval = this.unimplementedScalarToInterval.bind(this, 'sinInterval');
@@ -5118,7 +5212,7 @@ class FPAbstractTraits extends FPTraits {
'smoothStepInterval'
);
sqrtInterval = this.unimplementedScalarToInterval.bind(this, 'sqrtInterval');
- stepInterval = this.unimplementedScalarPairToInterval.bind(this, 'stepInterval');
+ stepInterval = this.stepIntervalImpl.bind(this);
subtractionInterval = this.subtractionIntervalImpl.bind(this);
subtractionMatrixMatrixInterval =
this.subtractionMatrixMatrixIntervalImpl.bind(this);
@@ -5179,6 +5273,7 @@ class F16Traits extends FPTraits {
sixth: kValue.f16.negative.pi.sixth
}
},
+ bias: 15,
unboundedInterval: kF16UnboundedInterval,
zeroInterval: kF16ZeroInterval,
// Have to use the constants.ts values here, because values defined in the
@@ -5193,6 +5288,8 @@ class F16Traits extends FPTraits {
kValue.f16.positive.subnormal.min,
kValue.f16.positive.max
),
+ negOneToOneInterval: new FPInterval('f16', -1, 1),
+
zeroVector: {
2: [kF16ZeroInterval, kF16ZeroInterval],
3: [kF16ZeroInterval, kF16ZeroInterval, kF16ZeroInterval],
@@ -5324,6 +5421,11 @@ class F16Traits extends FPTraits {
flushSubnormal = flushSubnormalNumberF16;
oneULP = oneULPF16;
scalarBuilder = f16;
+ scalarRange = scalarF16Range;
+ sparseScalarRange = sparseScalarF16Range;
+ vectorRange = vectorF16Range;
+ sparseVectorRange = sparseVectorF16Range;
+ sparseMatrixRange = sparseMatrixF16Range;
// Framework - Fundamental Error Intervals - Overrides
absoluteErrorInterval = this.absoluteErrorIntervalImpl.bind(this);
@@ -5437,5 +5539,6 @@ export function isRepresentable(value, type) {
const constants = fpTraitsFor(type).constants();
return value >= constants.negative.min && value <= constants.positive.max;
}
+
assert(false, `isRepresentable() is not yet implemented for type ${type}`);
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/math.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/math.js
index 873c4315ae..e44458cfbd 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/math.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/math.js
@@ -414,6 +414,25 @@ export function oneULPF32(target, mode = 'flush') {
}
/**
+ * @returns an integer value between 0..0xffffffff using a simple non-cryptographic hash function
+ * @param values integers to generate hash from.
+ */
+export function hashU32(...values) {
+ let n = 0x3504_f333;
+ for (const v of values) {
+ n = v + (n << 7) + (n >>> 1);
+ n = n * 0x29493 & 0xffff_ffff;
+ }
+ n ^= n >>> 8;
+ n += n << 15;
+ n = n & 0xffff_ffff;
+ if (n < 0) {
+ n = ~n * 2 + 1;
+ }
+ return n;
+}
+
+/**
* @returns ulp(x), the unit of least precision for a specific number as a 32-bit float
*
* ulp(x) is the distance between the two floating point numbers nearest x.
@@ -881,6 +900,41 @@ export function biasedRange(a, b, num_steps) {
}
/**
+ * Version of biasedRange that operates on bigint values
+ *
+ * biasedRange was not made into a generic or to take in (number|bigint),
+ * because that introduces a bunch of complexity overhead related to type
+ * differentiation.
+ *
+ * Scaling is used internally so that the number of possible indices is
+ * significantly larger than num_steps. This is done to avoid duplicate entries
+ * in the resulting range due to quantizing to integers during the calculation.
+ *
+ * If a and b are close together, such that the number of integers between them
+ * is close to num_steps, then duplicates will occur regardless of scaling.
+ */
+export function biasedRangeBigInt(a, b, num_steps) {
+ if (num_steps <= 0) {
+ return [];
+ }
+
+ // Avoid division by 0
+ if (num_steps === 1) {
+ return [a];
+ }
+
+ const c = 2;
+ const scaling = 1000;
+ const scaled_num_steps = num_steps * scaling;
+
+ return Array.from(Array(num_steps).keys()).map((i) => {
+ const biased_i = Math.pow(i / (num_steps - 1), c); // Floating Point on [0, 1]
+ const scaled_i = Math.trunc((scaled_num_steps - 1) * biased_i); // Integer on [0, scaled_num_steps - 1]
+ return lerpBigInt(a, b, scaled_i, scaled_num_steps);
+ });
+}
+
+/**
* @returns an ascending sorted array of numbers spread over the entire range of 32-bit floats
*
* Numbers are divided into 4 regions: negative normals, negative subnormals, positive subnormals & positive normals.
@@ -891,12 +945,12 @@ export function biasedRange(a, b, num_steps) {
* for a wide range of magnitudes to be generated, instead of being extremely biased towards the edges of the f32 range.
*
* This function is intended to provide dense coverage of the f32 range, for a minimal list of values to use to cover
- * f32 behaviour, use sparseF32Range instead.
+ * f32 behaviour, use sparseScalarF32Range instead.
*
* @param counts structure param with 4 entries indicating the number of entries to be generated each region, entries
* must be 0 or greater.
*/
-export function fullF32Range(
+export function scalarF32Range(
counts =
@@ -943,8 +997,8 @@ counts =
* @param low the lowest f32 value to permit when filtered
* @param high the highest f32 value to permit when filtered
*/
-export function sourceFilteredF32Range(source, low, high) {
- return fullF32Range().filter((x) => source !== 'const' || x >= low && x <= high);
+export function filteredScalarF32Range(source, low, high) {
+ return scalarF32Range().filter((x) => source !== 'const' || x >= low && x <= high);
}
/**
@@ -958,12 +1012,12 @@ export function sourceFilteredF32Range(source, low, high) {
* for a wide range of magnitudes to be generated, instead of being extremely biased towards the edges of the f16 range.
*
* This function is intended to provide dense coverage of the f16 range, for a minimal list of values to use to cover
- * f16 behaviour, use sparseF16Range instead.
+ * f16 behaviour, use sparseScalarF16Range instead.
*
* @param counts structure param with 4 entries indicating the number of entries to be generated each region, entries
* must be 0 or greater.
*/
-export function fullF16Range(
+export function scalarF16Range(
counts =
@@ -1009,12 +1063,12 @@ counts =
* for a wide range of magnitudes to be generated, instead of being extremely biased towards the edges of the f64 range.
*
* This function is intended to provide dense coverage of the f64 range, for a minimal list of values to use to cover
- * f64 behaviour, use sparseF64Range instead.
+ * f64 behaviour, use sparseScalarF64Range instead.
*
* @param counts structure param with 4 entries indicating the number of entries to be generated each region, entries
* must be 0 or greater.
*/
-export function fullF64Range(
+export function scalarF64Range(
counts =
@@ -1065,7 +1119,7 @@ counts =
* @param counts structure param with 4 entries indicating the number of entries
* to be generated each region, entries must be 0 or greater.
*/
-export function filteredF64Range(
+export function limitedScalarF64Range(
begin,
end,
counts = {
@@ -1136,27 +1190,18 @@ export function sparseI32Range() {
const kVectorI32Values = {
2: kInterestingI32Values.flatMap((f) => [
[f, 1],
- [1, f],
- [f, -1],
[-1, f]]
),
3: kInterestingI32Values.flatMap((f) => [
- [f, 1, 2],
- [1, f, 2],
- [1, 2, f],
- [f, -1, -2],
- [-1, f, -2],
- [-1, -2, f]]
+ [f, 1, -2],
+ [-1, f, 2],
+ [1, -2, f]]
),
4: kInterestingI32Values.flatMap((f) => [
- [f, 1, 2, 3],
- [1, f, 2, 3],
- [1, 2, f, 3],
- [1, 2, 3, f],
- [f, -1, -2, -3],
- [-1, f, -2, -3],
- [-1, -2, f, -3],
- [-1, -2, -3, f]]
+ [f, -1, 2, 3],
+ [1, f, -2, 3],
+ [1, 2, f, -3],
+ [-1, 2, -3, f]]
)
};
@@ -1178,6 +1223,38 @@ export function vectorI32Range(dim) {
return kVectorI32Values[dim];
}
+const kSparseVectorI32Values = {
+ 2: sparseI32Range().map((i, idx) => [idx % 2 === 0 ? i : idx, idx % 2 === 1 ? i : -idx]),
+ 3: sparseI32Range().map((i, idx) => [
+ idx % 3 === 0 ? i : idx,
+ idx % 3 === 1 ? i : -idx,
+ idx % 3 === 2 ? i : idx]
+ ),
+ 4: sparseI32Range().map((i, idx) => [
+ idx % 4 === 0 ? i : idx,
+ idx % 4 === 1 ? i : -idx,
+ idx % 4 === 2 ? i : idx,
+ idx % 4 === 3 ? i : -idx]
+ )
+};
+
+/**
+ * Minimal set of vectors, indexed by dimension, that contain interesting
+ * abstract integer values.
+ *
+ * This is an even more stripped down version of `vectorI32Range` for when
+ * pairs of vectors are being tested.
+ * All interesting integers from sparseI32Range are guaranteed to be
+ * tested, but not in every position.
+ */
+export function sparseVectorI32Range(dim) {
+ assert(
+ dim === 2 || dim === 3 || dim === 4,
+ 'sparseVectorI32Range only accepts dimensions 2, 3, and 4'
+ );
+ return kSparseVectorI32Values[dim];
+}
+
/**
* @returns an ascending sorted array of numbers spread over the entire range of 32-bit signed ints
*
@@ -1256,6 +1333,38 @@ export function vectorU32Range(dim) {
return kVectorU32Values[dim];
}
+const kSparseVectorU32Values = {
+ 2: sparseU32Range().map((i, idx) => [idx % 2 === 0 ? i : idx, idx % 2 === 1 ? i : -idx]),
+ 3: sparseU32Range().map((i, idx) => [
+ idx % 3 === 0 ? i : idx,
+ idx % 3 === 1 ? i : -idx,
+ idx % 3 === 2 ? i : idx]
+ ),
+ 4: sparseU32Range().map((i, idx) => [
+ idx % 4 === 0 ? i : idx,
+ idx % 4 === 1 ? i : -idx,
+ idx % 4 === 2 ? i : idx,
+ idx % 4 === 3 ? i : -idx]
+ )
+};
+
+/**
+ * Minimal set of vectors, indexed by dimension, that contain interesting
+ * abstract integer values.
+ *
+ * This is an even more stripped down version of `vectorU32Range` for when
+ * pairs of vectors are being tested.
+ * All interesting integers from sparseU32Range are guaranteed to be
+ * tested, but not in every position.
+ */
+export function sparseVectorU32Range(dim) {
+ assert(
+ dim === 2 || dim === 3 || dim === 4,
+ 'sparseVectorU32Range only accepts dimensions 2, 3, and 4'
+ );
+ return kSparseVectorU32Values[dim];
+}
+
/**
* @returns an ascending sorted array of numbers spread over the entire range of 32-bit unsigned ints
*
@@ -1267,6 +1376,124 @@ export function fullU32Range(count = 50) {
return [0, ...biasedRange(1, kValue.u32.max, count)].map(Math.trunc);
}
+/** Short list of i64 values of interest to test against */
+const kInterestingI64Values = [
+kValue.i64.negative.max,
+kValue.i64.negative.max / 2n,
+-256n,
+-10n,
+-1n,
+0n,
+1n,
+10n,
+256n,
+kValue.i64.positive.max / 2n,
+kValue.i64.positive.max];
+
+
+/** @returns minimal i64 values that cover the entire range of i64 behaviours
+ *
+ * This is used instead of fullI64Range when the number of test cases being
+ * generated is a super linear function of the length of i64 values which is
+ * leading to time outs.
+ */
+export function sparseI64Range() {
+ return kInterestingI64Values;
+}
+
+const kVectorI64Values = {
+ 2: kInterestingI64Values.flatMap((f) => [
+ [f, 1n],
+ [-1n, f]]
+ ),
+ 3: kInterestingI64Values.flatMap((f) => [
+ [f, 1n, -2n],
+ [-1n, f, 2n],
+ [1n, -2n, f]]
+ ),
+ 4: kInterestingI64Values.flatMap((f) => [
+ [f, -1n, 2n, 3n],
+ [1n, f, -2n, 3n],
+ [1n, 2n, f, -3n],
+ [-1n, 2n, -3n, f]]
+ )
+};
+
+/**
+ * Returns set of vectors, indexed by dimension containing interesting i64
+ * values.
+ *
+ * The tests do not do the simple option for coverage of computing the cartesian
+ * product of all of the interesting i64 values N times for vecN tests,
+ * because that creates a huge number of tests for vec3 and vec4, leading to
+ * time outs.
+ *
+ * Instead they insert the interesting i64 values into each location of the
+ * vector to get a spread of testing over the entire range. This reduces the
+ * number of cases being run substantially, but maintains coverage.
+ */
+export function vectorI64Range(dim) {
+ assert(dim === 2 || dim === 3 || dim === 4, 'vectorI64Range only accepts dimensions 2, 3, and 4');
+ return kVectorI64Values[dim];
+}
+
+const kSparseVectorI64Values = {
+ 2: sparseI64Range().map((i, idx) => [
+ idx % 2 === 0 ? i : BigInt(idx),
+ idx % 2 === 1 ? i : -BigInt(idx)]
+ ),
+ 3: sparseI64Range().map((i, idx) => [
+ idx % 3 === 0 ? i : BigInt(idx),
+ idx % 3 === 1 ? i : -BigInt(idx),
+ idx % 3 === 2 ? i : BigInt(idx)]
+ ),
+ 4: sparseI64Range().map((i, idx) => [
+ idx % 4 === 0 ? i : BigInt(idx),
+ idx % 4 === 1 ? i : -BigInt(idx),
+ idx % 4 === 2 ? i : BigInt(idx),
+ idx % 4 === 3 ? i : -BigInt(idx)]
+ )
+};
+
+/**
+ * Minimal set of vectors, indexed by dimension, that contain interesting
+ * abstract integer values.
+ *
+ * This is an even more stripped down version of `vectorI64Range` for when
+ * pairs of vectors are being tested.
+ * All interesting integers from sparseI64Range are guaranteed to be
+ * tested, but not in every position.
+ */
+export function sparseVectorI64Range(dim) {
+ assert(
+ dim === 2 || dim === 3 || dim === 4,
+ 'sparseVectorI64Range only accepts dimensions 2, 3, and 4'
+ );
+ return kSparseVectorI64Values[dim];
+}
+
+/**
+ * @returns an ascending sorted array of numbers spread over the entire range of 64-bit signed ints
+ *
+ * Numbers are divided into 2 regions: negatives, and positives, with their spreads biased towards 0
+ * Zero is included in range.
+ *
+ * @param counts structure param with 2 entries indicating the number of entries to be generated each region, values must be 0 or greater.
+ */
+export function fullI64Range(
+counts =
+
+
+{ positive: 50 })
+{
+ counts.negative = counts.negative === undefined ? counts.positive : counts.negative;
+ return [
+ ...biasedRangeBigInt(kValue.i64.negative.min, -1n, counts.negative),
+ 0n,
+ ...biasedRangeBigInt(1n, kValue.i64.positive.max, counts.positive)];
+
+}
+
/** Short list of f32 values of interest to test against */
const kInterestingF32Values = [
kValue.f32.negative.min,
@@ -1299,34 +1526,25 @@ kValue.f32.positive.max];
* specific values of interest. If there are known values of interest they
* should be appended to this list in the test generation code.
*/
-export function sparseF32Range() {
+export function sparseScalarF32Range() {
return kInterestingF32Values;
}
const kVectorF32Values = {
- 2: sparseF32Range().flatMap((f) => [
+ 2: kInterestingF32Values.flatMap((f) => [
[f, 1.0],
- [1.0, f],
- [f, -1.0],
[-1.0, f]]
),
- 3: sparseF32Range().flatMap((f) => [
- [f, 1.0, 2.0],
- [1.0, f, 2.0],
- [1.0, 2.0, f],
- [f, -1.0, -2.0],
- [-1.0, f, -2.0],
- [-1.0, -2.0, f]]
+ 3: kInterestingF32Values.flatMap((f) => [
+ [f, 1.0, -2.0],
+ [-1.0, f, 2.0],
+ [1.0, -2.0, f]]
),
- 4: sparseF32Range().flatMap((f) => [
- [f, 1.0, 2.0, 3.0],
- [1.0, f, 2.0, 3.0],
- [1.0, 2.0, f, 3.0],
- [1.0, 2.0, 3.0, f],
- [f, -1.0, -2.0, -3.0],
- [-1.0, f, -2.0, -3.0],
- [-1.0, -2.0, f, -3.0],
- [-1.0, -2.0, -3.0, f]]
+ 4: kInterestingF32Values.flatMap((f) => [
+ [f, -1.0, 2.0, 3.0],
+ [1.0, f, -2.0, 3.0],
+ [1.0, 2.0, f, -3.0],
+ [-1.0, 2.0, -3.0, f]]
)
};
@@ -1349,13 +1567,13 @@ export function vectorF32Range(dim) {
}
const kSparseVectorF32Values = {
- 2: sparseF32Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
- 3: sparseF32Range().map((f, idx) => [
+ 2: sparseScalarF32Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
+ 3: sparseScalarF32Range().map((f, idx) => [
idx % 3 === 0 ? f : idx,
idx % 3 === 1 ? f : -idx,
idx % 3 === 2 ? f : idx]
),
- 4: sparseF32Range().map((f, idx) => [
+ 4: sparseScalarF32Range().map((f, idx) => [
idx % 4 === 0 ? f : idx,
idx % 4 === 1 ? f : -idx,
idx % 4 === 2 ? f : idx,
@@ -1369,8 +1587,8 @@ const kSparseVectorF32Values = {
*
* This is an even more stripped down version of `vectorF32Range` for when
* pairs of vectors are being tested.
- * All of the interesting floats from sparseF32 are guaranteed to be tested, but
- * not in every position.
+ * All of the interesting floats from sparseScalarF32 are guaranteed to be
+ * tested, but not in every position.
*/
export function sparseVectorF32Range(dim) {
assert(
@@ -1480,16 +1698,16 @@ const kSparseMatrixF32Values = {
};
/**
- * Returns a minimal set of matrices, indexed by dimension containing interesting
- * float values.
+ * Returns a minimal set of matrices, indexed by dimension containing
+ * interesting float values.
*
* This is the matrix analogue of `sparseVectorF32Range`, so it is producing a
* minimal coverage set of matrices that test all of the interesting f32 values.
* There is not a more expansive set of matrices, since matrices are even more
* expensive than vectors for increasing runtime with coverage.
*
- * All of the interesting floats from sparseF32 are guaranteed to be tested, but
- * not in every position.
+ * All of the interesting floats from sparseScalarF32 are guaranteed to be
+ * tested, but not in every position.
*/
export function sparseMatrixF32Range(c, r) {
assert(
@@ -1535,34 +1753,25 @@ kValue.f16.positive.max];
* specific values of interest. If there are known values of interest they
* should be appended to this list in the test generation code.
*/
-export function sparseF16Range() {
+export function sparseScalarF16Range() {
return kInterestingF16Values;
}
const kVectorF16Values = {
- 2: sparseF16Range().flatMap((f) => [
+ 2: kInterestingF16Values.flatMap((f) => [
[f, 1.0],
- [1.0, f],
- [f, -1.0],
[-1.0, f]]
),
- 3: sparseF16Range().flatMap((f) => [
- [f, 1.0, 2.0],
- [1.0, f, 2.0],
- [1.0, 2.0, f],
- [f, -1.0, -2.0],
- [-1.0, f, -2.0],
- [-1.0, -2.0, f]]
+ 3: kInterestingF16Values.flatMap((f) => [
+ [f, 1.0, -2.0],
+ [-1.0, f, 2.0],
+ [1.0, -2.0, f]]
),
- 4: sparseF16Range().flatMap((f) => [
- [f, 1.0, 2.0, 3.0],
- [1.0, f, 2.0, 3.0],
- [1.0, 2.0, f, 3.0],
- [1.0, 2.0, 3.0, f],
- [f, -1.0, -2.0, -3.0],
- [-1.0, f, -2.0, -3.0],
- [-1.0, -2.0, f, -3.0],
- [-1.0, -2.0, -3.0, f]]
+ 4: kInterestingF16Values.flatMap((f) => [
+ [f, -1.0, 2.0, 3.0],
+ [1.0, f, -2.0, 3.0],
+ [1.0, 2.0, f, -3.0],
+ [-1.0, 2.0, -3.0, f]]
)
};
@@ -1585,13 +1794,13 @@ export function vectorF16Range(dim) {
}
const kSparseVectorF16Values = {
- 2: sparseF16Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
- 3: sparseF16Range().map((f, idx) => [
+ 2: sparseScalarF16Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
+ 3: sparseScalarF16Range().map((f, idx) => [
idx % 3 === 0 ? f : idx,
idx % 3 === 1 ? f : -idx,
idx % 3 === 2 ? f : idx]
),
- 4: sparseF16Range().map((f, idx) => [
+ 4: sparseScalarF16Range().map((f, idx) => [
idx % 4 === 0 ? f : idx,
idx % 4 === 1 ? f : -idx,
idx % 4 === 2 ? f : idx,
@@ -1605,8 +1814,8 @@ const kSparseVectorF16Values = {
*
* This is an even more stripped down version of `vectorF16Range` for when
* pairs of vectors are being tested.
- * All of the interesting floats from sparseF16 are guaranteed to be tested, but
- * not in every position.
+ * All of the interesting floats from sparseScalarF16 are guaranteed to be
+ * tested, but not in every position.
*/
export function sparseVectorF16Range(dim) {
assert(
@@ -1724,7 +1933,7 @@ const kSparseMatrixF16Values = {
* There is not a more expansive set of matrices, since matrices are even more
* expensive than vectors for increasing runtime with coverage.
*
- * All of the interesting floats from sparseF16 are guaranteed to be tested, but
+ * All of the interesting floats from sparseScalarF16 are guaranteed to be tested, but
* not in every position.
*/
export function sparseMatrixF16Range(c, r) {
@@ -1771,34 +1980,25 @@ kValue.f64.positive.max];
* specific values of interest. If there are known values of interest they
* should be appended to this list in the test generation code.
*/
-export function sparseF64Range() {
+export function sparseScalarF64Range() {
return kInterestingF64Values;
}
const kVectorF64Values = {
- 2: sparseF64Range().flatMap((f) => [
+ 2: kInterestingF64Values.flatMap((f) => [
[f, 1.0],
- [1.0, f],
- [f, -1.0],
[-1.0, f]]
),
- 3: sparseF64Range().flatMap((f) => [
- [f, 1.0, 2.0],
- [1.0, f, 2.0],
- [1.0, 2.0, f],
- [f, -1.0, -2.0],
- [-1.0, f, -2.0],
- [-1.0, -2.0, f]]
+ 3: kInterestingF64Values.flatMap((f) => [
+ [f, 1.0, -2.0],
+ [-1.0, f, 2.0],
+ [1.0, -2.0, f]]
),
- 4: sparseF64Range().flatMap((f) => [
- [f, 1.0, 2.0, 3.0],
- [1.0, f, 2.0, 3.0],
- [1.0, 2.0, f, 3.0],
- [1.0, 2.0, 3.0, f],
- [f, -1.0, -2.0, -3.0],
- [-1.0, f, -2.0, -3.0],
- [-1.0, -2.0, f, -3.0],
- [-1.0, -2.0, -3.0, f]]
+ 4: kInterestingF64Values.flatMap((f) => [
+ [f, -1.0, 2.0, 3.0],
+ [1.0, f, -2.0, 3.0],
+ [1.0, 2.0, f, -3.0],
+ [-1.0, 2.0, -3.0, f]]
)
};
@@ -1821,13 +2021,13 @@ export function vectorF64Range(dim) {
}
const kSparseVectorF64Values = {
- 2: sparseF64Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
- 3: sparseF64Range().map((f, idx) => [
+ 2: sparseScalarF64Range().map((f, idx) => [idx % 2 === 0 ? f : idx, idx % 2 === 1 ? f : -idx]),
+ 3: sparseScalarF64Range().map((f, idx) => [
idx % 3 === 0 ? f : idx,
idx % 3 === 1 ? f : -idx,
idx % 3 === 2 ? f : idx]
),
- 4: sparseF64Range().map((f, idx) => [
+ 4: sparseScalarF64Range().map((f, idx) => [
idx % 4 === 0 ? f : idx,
idx % 4 === 1 ? f : -idx,
idx % 4 === 2 ? f : idx,
@@ -1841,7 +2041,7 @@ const kSparseVectorF64Values = {
*
* This is an even more stripped down version of `vectorF64Range` for when
* pairs of vectors are being tested.
- * All the interesting floats from sparseF64 are guaranteed to be tested, but
+ * All the interesting floats from sparseScalarF64 are guaranteed to be tested, but
* not in every position.
*/
export function sparseVectorF64Range(dim) {
@@ -1960,19 +2160,19 @@ const kSparseMatrixF64Values = {
* There is not a more expansive set of matrices, since matrices are even more
* expensive than vectors for increasing runtime with coverage.
*
- * All the interesting floats from sparseF64 are guaranteed to be tested, but
+ * All the interesting floats from sparseScalarF64 are guaranteed to be tested, but
* not in every position.
*/
-export function sparseMatrixF64Range(c, r) {
+export function sparseMatrixF64Range(cols, rows) {
assert(
- c === 2 || c === 3 || c === 4,
+ cols === 2 || cols === 3 || cols === 4,
'sparseMatrixF64Range only accepts column counts of 2, 3, and 4'
);
assert(
- r === 2 || r === 3 || r === 4,
+ rows === 2 || rows === 3 || rows === 4,
'sparseMatrixF64Range only accepts row counts of 2, 3, and 4'
);
- return kSparseMatrixF64Values[c][r];
+ return kSparseMatrixF64Values[cols][rows];
}
/**
@@ -2051,11 +2251,25 @@ export function quantizeToU32(num) {
return Math.trunc(num);
}
+/**
+ * @returns the closest 64-bit signed integer value to the input.
+ */
+export function quantizeToI64(num) {
+ if (num >= kValue.i64.positive.max) {
+ return kValue.i64.positive.max;
+ }
+ if (num <= kValue.i64.negative.min) {
+ return kValue.i64.negative.min;
+ }
+ return num;
+}
+
/** @returns whether the number is an integer and a power of two */
export function isPowerOfTwo(n) {
if (!Number.isInteger(n)) {
return false;
}
+ assert((n | 0) === n, 'isPowerOfTwo only supports 32-bit numbers');
return n !== 0 && (n & n - 1) === 0;
}
@@ -2244,4 +2458,33 @@ export function every2DArray(m, op) {
`Unexpectedly received jagged array to map`
);
return m.every((col) => col.every((el) => op(el)));
+}
+
+/**
+ * Subtracts 2 vectors
+ */
+export function subtractVectors(v1, v2) {
+ return v1.map((v, i) => v - v2[i]);
+}
+
+/**
+ * Computes the dot product of 2 vectors
+ */
+export function dotProduct(v1, v2) {
+ return v1.reduce((a, v, i) => a + v * v2[i], 0);
+}
+
+/** @returns the absolute value of a bigint */
+export function absBigInt(v) {
+ return v < 0n ? -v : v;
+}
+
+/** @returns the maximum from a list of bigints */
+export function maxBigInt(...vals) {
+ return vals.reduce((prev, cur) => cur > prev ? cur : prev);
+}
+
+/** @returns the minimum from a list of bigints */
+export function minBigInt(...vals) {
+ return vals.reduce((prev, cur) => cur < prev ? cur : prev);
} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/pretty_diff_tables.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/pretty_diff_tables.js
index 3803540fe9..a61fdb9e8b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/pretty_diff_tables.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/pretty_diff_tables.js
@@ -1,6 +1,28 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { range } from '../../common/util/util.js'; /**
+ * @returns a function that converts numerics to strings, depending on if they
+ * should be treated as integers or not.
+ */
+export function numericToStringBuilder(is_integer) {
+ if (is_integer) {
+ return (val) => {
+ if (typeof val === 'number') {
+ return val.toFixed();
+ }
+ return val.toString();
+ };
+ }
+
+ return (val) => {
+ if (typeof val === 'number') {
+ return val.toPrecision(6);
+ }
+ return val.toString();
+ };
+}
+
+/**
* Pretty-prints a "table" of cell values (each being `number | string`), right-aligned.
* Each row may be any iterator, including lazily-generated (potentially infinite) rows.
*
@@ -12,7 +34,10 @@
* Each remaining argument provides one row for the table.
*/
export function generatePrettyTable(
-{ fillToWidth, numberToString },
+{
+ fillToWidth,
+ numericToString
+},
rows)
{
const rowStrings = range(rows.length, () => '');
@@ -23,7 +48,13 @@ rows)
for (;;) {
const cellsForColumn = iters.map((iter) => {
const r = iter.next(); // Advance the iterator for each row, in lock-step.
- return r.done ? undefined : typeof r.value === 'number' ? numberToString(r.value) : r.value;
+ if (r.done) {
+ return undefined;
+ }
+ if (typeof r.value === 'number' || typeof r.value === 'bigint') {
+ return numericToString(r.value);
+ }
+ return r.value;
});
if (cellsForColumn.every((cell) => cell === undefined)) break;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/shader.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/shader.js
index 51029e0c82..c4fd89c3af 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/shader.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/shader.js
@@ -11,6 +11,27 @@ export const kDefaultFragmentShaderCode = `
return vec4<f32>(1.0, 1.0, 1.0, 1.0);
}`;
+// MAINTENANCE_TODO(#3344): deduplicate fullscreen quad shader code.
+export const kFullscreenQuadVertexShaderCode = `
+ struct VertexOutput {
+ @builtin(position) Position : vec4<f32>
+ };
+
+ @vertex fn main(@builtin(vertex_index) VertexIndex : u32) -> VertexOutput {
+ var pos = array<vec2<f32>, 6>(
+ vec2<f32>( 1.0, 1.0),
+ vec2<f32>( 1.0, -1.0),
+ vec2<f32>(-1.0, -1.0),
+ vec2<f32>( 1.0, 1.0),
+ vec2<f32>(-1.0, -1.0),
+ vec2<f32>(-1.0, 1.0));
+
+ var output : VertexOutput;
+ output.Position = vec4<f32>(pos[VertexIndex], 0.0, 1.0);
+ return output;
+ }
+`;
+
const kPlainTypeInfo = {
i32: {
suffix: '',
@@ -157,6 +178,8 @@ fragDepth = null)
}`;
}
+export const kValidShaderStages = ['compute', 'vertex', 'fragment'];
+
/**
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/base.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/base.js
index 349a08a486..99636b9ad9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/base.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/base.js
@@ -157,15 +157,23 @@ export function viewDimensionsForTextureDimension(textureDimension) {
}
}
-/** Returns the default view dimension for a given texture descriptor. */
-export function defaultViewDimensionsForTexture(textureDescriptor) {
- switch (textureDescriptor.dimension) {
+/** Returns the effective view dimension for a given texture dimension and depthOrArrayLayers */
+export function effectiveViewDimensionForDimension(
+viewDimension,
+dimension,
+depthOrArrayLayers)
+{
+ if (viewDimension) {
+ return viewDimension;
+ }
+
+ switch (dimension || '2d') {
case '1d':
return '1d';
- case '2d':{
- const sizeDict = reifyExtent3D(textureDescriptor.size);
- return sizeDict.depthOrArrayLayers > 1 ? '2d-array' : '2d';
- }
+ case '2d':
+ case undefined:
+ return depthOrArrayLayers > 1 ? '2d-array' : '2d';
+ break;
case '3d':
return '3d';
default:
@@ -173,6 +181,28 @@ export function defaultViewDimensionsForTexture(textureDescriptor) {
}
}
+/** Returns the effective view dimension for a given texture */
+export function effectiveViewDimensionForTexture(
+texture,
+viewDimension)
+{
+ return effectiveViewDimensionForDimension(
+ viewDimension,
+ texture.dimension,
+ texture.depthOrArrayLayers
+ );
+}
+
+/** Returns the default view dimension for a given texture descriptor. */
+export function defaultViewDimensionsForTexture(textureDescriptor) {
+ const sizeDict = reifyExtent3D(textureDescriptor.size);
+ return effectiveViewDimensionForDimension(
+ undefined,
+ textureDescriptor.dimension,
+ sizeDict.depthOrArrayLayers
+ );
+}
+
/** Reifies the optional fields of `GPUTextureDescriptor`.
* MAINTENANCE_TODO: viewFormats should not be omitted here, but it seems likely that the
* @webgpu/types definition will have to change before we can include it again.
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/color_space_conversions.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/color_space_conversions.spec.js
new file mode 100644
index 0000000000..cc6c5201d8
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/color_space_conversions.spec.js
@@ -0,0 +1,108 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/export const description = 'Color space conversion helpers';import { Fixture } from '../../../common/framework/fixture.js';
+import { makeTestGroup } from '../../../common/framework/test_group.js';
+import { ErrorWithExtra } from '../../../common/util/util.js';
+import { makeInPlaceColorConversion } from '../color_space_conversion.js';
+import { clamp } from '../math.js';
+
+import { TexelView } from './texel_view.js';
+import { findFailedPixels } from './texture_ok.js';
+
+const kTestColors = [
+[0xff, 0, 0],
+[0, 0xff, 0],
+[0, 0, 0xff],
+[0x80, 0x80, 0],
+[0, 0x80, 0x80],
+[0x80, 0, 0x80]];
+
+
+function floatToU8(v) {
+ return clamp(Math.round(v * 255), { min: 0, max: 255 });
+}
+
+export const g = makeTestGroup(Fixture);
+
+g.test('util_matches_2d_canvas').
+desc(`Test color space conversion helpers matches canvas 2d's color space conversion`).
+params((u) =>
+u.combineWithParams([
+{ srcColorSpace: 'srgb', dstColorSpace: 'display-p3' },
+{ srcColorSpace: 'display-p3', dstColorSpace: 'srgb' }]
+)
+).
+fn((t) => {
+ const { srcColorSpace, dstColorSpace } = t.params;
+
+ // putImageData an ImageData(srcColorSpace) in to a canvas2D(dstColorSpace)
+ // then call getImageData. This will convert the colors via the canvas 2D API
+ const width = kTestColors.length;
+ const height = 1;
+ const imgData = new ImageData(
+ new Uint8ClampedArray(kTestColors.map((v) => [...v, 255]).flat()),
+ width,
+ height,
+ { colorSpace: srcColorSpace }
+ );
+ const ctx = new OffscreenCanvas(width, height).getContext('2d', {
+ colorSpace: dstColorSpace
+ });
+ ctx.putImageData(imgData, 0, 0);
+ const expectedData = ctx.getImageData(0, 0, width, height).data;
+
+ const conversionFn = makeInPlaceColorConversion({
+ srcPremultiplied: false,
+ dstPremultiplied: false,
+ srcColorSpace,
+ dstColorSpace
+ });
+
+ // Convert the data via our conversion functions
+ const convertedData = new Uint8ClampedArray(
+ kTestColors.
+ map((color) => {
+ const [R, G, B] = color.map((v) => v / 255);
+ const floatColor = { R, G, B, A: 1 };
+ conversionFn(floatColor);
+ return [
+ floatToU8(floatColor.R),
+ floatToU8(floatColor.G),
+ floatToU8(floatColor.B),
+ floatToU8(floatColor.A)];
+
+ }).
+ flat()
+ );
+
+ const subrectOrigin = [0, 0, 0];
+ const subrectSize = [width, height, 1];
+ const areaDesc = {
+ bytesPerRow: width * 4,
+ rowsPerImage: height,
+ subrectOrigin,
+ subrectSize
+ };
+
+ const format = 'rgba8unorm';
+ const actTexelView = TexelView.fromTextureDataByReference(format, convertedData, areaDesc);
+ const expTexelView = TexelView.fromTextureDataByReference(format, expectedData, areaDesc);
+
+ const failedPixelsMessage = findFailedPixels(
+ format,
+ { x: 0, y: 0, z: 0 },
+ { width, height, depthOrArrayLayers: 1 },
+ { actTexelView, expTexelView },
+ { maxDiffULPsForNormFormat: 0 }
+ );
+
+ if (failedPixelsMessage !== undefined) {
+ const msg = 'Color space conversion had unexpected results:\n' + failedPixelsMessage;
+ t.expectOK(
+ new ErrorWithExtra(msg, () => ({
+ expTexelView,
+ actTexelView
+ }))
+ );
+ }
+}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.js
index 602d642724..104ee0b19b 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.js
@@ -1,6 +1,7 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { assert, unreachable } from '../../../common/util/util.js';import {
+**/import { assert, unreachable } from '../../../common/util/util.js';import { kValue } from '../constants.js';
+import {
assertInIntegerRange,
float32ToFloatBits,
float32ToFloat16Bits,
@@ -424,6 +425,8 @@ opt)
}
const dataType = opt.signed ? 'snorm' : 'unorm';
+ const min = opt.signed ? -1 : 0;
+ const max = 1;
return {
componentOrder,
componentInfo: makePerTexelComponent(componentOrder, {
@@ -438,7 +441,7 @@ opt)
numberToBits,
bitsToNumber,
bitsToULPFromZero,
- numericRange: { min: opt.signed ? -1 : 0, max: 1 }
+ numericRange: { min, max, finiteMin: min, finiteMax: max }
};
}
@@ -454,9 +457,9 @@ bitLength,
opt)
{
assert(bitLength <= 32);
- const numericRange = opt.signed ?
- { min: -(2 ** (bitLength - 1)), max: 2 ** (bitLength - 1) - 1 } :
- { min: 0, max: 2 ** bitLength - 1 };
+ const min = opt.signed ? -(2 ** (bitLength - 1)) : 0;
+ const max = opt.signed ? 2 ** (bitLength - 1) - 1 : 2 ** bitLength - 1;
+ const numericRange = { min, max, finiteMin: min, finiteMax: max };
const maxUnsignedValue = 2 ** bitLength;
const encode = applyEach(
(n) => (assertInIntegerRange(n, bitLength, opt.signed), n),
@@ -576,8 +579,13 @@ bitLength,
bitsToNumber,
bitsToULPFromZero,
numericRange: restrictedDepth ?
- { min: 0, max: 1 } :
- { min: Number.NEGATIVE_INFINITY, max: Number.POSITIVE_INFINITY }
+ { min: 0, max: 1, finiteMin: 0, finiteMax: 1 } :
+ {
+ min: Number.NEGATIVE_INFINITY,
+ max: Number.POSITIVE_INFINITY,
+ finiteMin: bitLength === 32 ? kValue.f32.negative.min : kValue.f16.negative.min,
+ finiteMax: bitLength === 32 ? kValue.f32.positive.max : kValue.f16.positive.max
+ }
};
}
@@ -623,6 +631,12 @@ const kFloat10Format = { signed: 0, exponentBits: 5, mantissaBits: 5, bias: 15 }
+
+
+
+
+
+
export const kTexelRepresentationInfo =
{
@@ -765,7 +779,7 @@ export const kTexelRepresentationInfo =
A: normalizedIntegerAsFloat(components.A, 2, false)
}),
bitsToULPFromZero: (components) => components,
- numericRange: { min: 0, max: 1 }
+ numericRange: { min: 0, max: 1, finiteMin: 0, finiteMax: 1 }
},
rg11b10ufloat: {
componentOrder: kRGB,
@@ -809,7 +823,16 @@ export const kTexelRepresentationInfo =
G: floatBitsToNormalULPFromZero(components.G, kFloat11Format),
B: floatBitsToNormalULPFromZero(components.B, kFloat10Format)
}),
- numericRange: { min: 0, max: Number.POSITIVE_INFINITY }
+ numericRange: {
+ min: 0,
+ max: Number.POSITIVE_INFINITY,
+ finiteMin: 0,
+ finiteMax: {
+ R: floatBitsToNumber(0b111_1011_1111, kFloat11Format),
+ G: floatBitsToNumber(0b111_1011_1111, kFloat11Format),
+ B: floatBitsToNumber(0b11_1101_1111, kFloat10Format)
+ }
+ }
},
rgb9e5ufloat: {
componentOrder: kRGB,
@@ -854,7 +877,12 @@ export const kTexelRepresentationInfo =
G: floatBitsToNormalULPFromZero(components.G, kUFloat9e5Format),
B: floatBitsToNormalULPFromZero(components.B, kUFloat9e5Format)
}),
- numericRange: { min: 0, max: Number.POSITIVE_INFINITY }
+ numericRange: {
+ min: 0,
+ max: Number.POSITIVE_INFINITY,
+ finiteMin: 0,
+ finiteMax: ufloatM9E5BitsToNumber(0b11_1111_1111_1111, kUFloat9e5Format)
+ }
},
depth32float: makeFloatInfo([TexelComponent.Depth], 32, { restrictedDepth: true }),
depth16unorm: makeNormalizedInfo([TexelComponent.Depth], 16, { signed: false, sRGB: false }),
@@ -868,7 +896,7 @@ export const kTexelRepresentationInfo =
numberToBits: () => unreachable('depth24plus has no representation'),
bitsToNumber: () => unreachable('depth24plus has no representation'),
bitsToULPFromZero: () => unreachable('depth24plus has no representation'),
- numericRange: { min: 0, max: 1 }
+ numericRange: { min: 0, max: 1, finiteMin: 0, finiteMax: 1 }
},
stencil8: makeIntegerInfo([TexelComponent.Stencil], 8, { signed: false }),
'depth32float-stencil8': {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.spec.js
index d3d0d86fc2..ae985b0e84 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_data.spec.js
@@ -297,7 +297,9 @@ fn(doTest);
g.test('ufloat_texel_data_in_shader').
desc(
`
-TODO: Test NaN, Infinity [1]`
+Note: this uses values that are representable by both rg11b10ufloat and rgb9e5ufloat.
+
+TODO: Test NaN, Infinity`
).
params((u) =>
u.
@@ -312,21 +314,19 @@ expand('componentData', ({ format }) => {
// Test extrema
makeParam(format, () => 0),
- // [2]: Test NaN, Infinity
-
// Test some values
- makeParam(format, () => 0.119140625),
- makeParam(format, () => 1.40625),
- makeParam(format, () => 24896),
+ makeParam(format, () => 128),
+ makeParam(format, () => 1984),
+ makeParam(format, () => 3968),
// Test scattered mixed values
makeParam(format, (bitLength, i) => {
- return [24896, 1.40625, 0.119140625, 0.23095703125][i];
+ return [128, 1984, 3968][i];
}),
// Test mixed values that are close in magnitude.
makeParam(format, (bitLength, i) => {
- return [0.1337890625, 0.17919921875, 0.119140625, 0.125][i];
+ return [0.05859375, 0.03125, 0.03515625][i];
})];
})
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_view.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_view.js
index d5b0bd4b2a..e61baf99e4 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_view.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texel_view.js
@@ -1,6 +1,6 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { assert, memcpy } from '../../../common/util/util.js';import { kTextureFormatInfo } from '../../format_info.js';import { generatePrettyTable } from '../pretty_diff_tables.js';
+**/import { assert, memcpy } from '../../../common/util/util.js';import { kTextureFormatInfo } from '../../format_info.js';import { generatePrettyTable, numericToStringBuilder } from '../pretty_diff_tables.js';
import { reifyExtent3D, reifyOrigin3D } from '../unions.js';
import { fullSubrectCoordinates } from './base.js';
@@ -166,10 +166,13 @@ export class TexelView {
const info = kTextureFormatInfo[this.format];
const repr = kTexelRepresentationInfo[this.format];
- const integerSampleType = info.sampleType === 'uint' || info.sampleType === 'sint';
- const numberToString = integerSampleType ?
- (n) => n.toFixed() :
- (n) => n.toPrecision(6);
+ // MAINTENANCE_TODO: Print depth-stencil formats as float+int instead of float+float.
+ const printAsInteger = info.color ?
+ // For color, pick the type based on the format type
+ ['uint', 'sint'].includes(info.color.type) :
+ // Print depth as "float", depth-stencil as "float,float", stencil as "int".
+ !info.depth;
+ const numericToString = numericToStringBuilder(printAsInteger);
const componentOrderStr = repr.componentOrder.join(',') + ':';
const subrectCoords = [...fullSubrectCoordinates(subrectOrigin, subrectSize)];
@@ -188,13 +191,13 @@ export class TexelView {
yield* [' act. colors', '==', componentOrderStr];
for (const coords of subrectCoords) {
const pixel = t.color(coords);
- yield `${repr.componentOrder.map((ch) => numberToString(pixel[ch])).join(',')}`;
+ yield `${repr.componentOrder.map((ch) => numericToString(pixel[ch])).join(',')}`;
}
}(this);
const opts = {
fillToWidth: 120,
- numberToString
+ numericToString
};
return `${generatePrettyTable(opts, [printCoords, printActualBytes, printActualColors])}`;
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texture_ok.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texture_ok.js
index c2047df878..1c9428a602 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texture_ok.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/util/texture/texture_ok.js
@@ -2,7 +2,7 @@
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { assert, ErrorWithExtra, unreachable } from '../../../common/util/util.js';import { kTextureFormatInfo } from '../../format_info.js';
import { numbersApproximatelyEqual } from '../conversion.js';
-import { generatePrettyTable } from '../pretty_diff_tables.js';
+import { generatePrettyTable, numericToStringBuilder } from '../pretty_diff_tables.js';
import { reifyExtent3D, reifyOrigin3D } from '../unions.js';
import { fullSubrectCoordinates } from './base.js';
@@ -223,11 +223,13 @@ coords)
const info = kTextureFormatInfo[format];
const repr = kTexelRepresentationInfo[format];
-
- const integerSampleType = info.sampleType === 'uint' || info.sampleType === 'sint';
- const numberToString = integerSampleType ?
- (n) => n.toFixed() :
- (n) => n.toPrecision(6);
+ // MAINTENANCE_TODO: Print depth-stencil formats as float+int instead of float+float.
+ const printAsInteger = info.color ?
+ // For color, pick the type based on the format type
+ ['uint', 'sint'].includes(info.color.type) :
+ // Print depth as "float", depth-stencil as "float,float", stencil as "int".
+ !info.depth;
+ const numericToString = numericToStringBuilder(printAsInteger);
const componentOrderStr = repr.componentOrder.join(',') + ':';
@@ -245,14 +247,14 @@ coords)
yield* [' act. colors', '==', componentOrderStr];
for (const coords of failedPixels) {
const pixel = actTexelView.color(coords);
- yield `${repr.componentOrder.map((ch) => numberToString(pixel[ch])).join(',')}`;
+ yield `${repr.componentOrder.map((ch) => numericToString(pixel[ch])).join(',')}`;
}
}();
const printExpectedColors = function* () {
yield* [' exp. colors', '==', componentOrderStr];
for (const coords of failedPixels) {
const pixel = expTexelView.color(coords);
- yield `${repr.componentOrder.map((ch) => numberToString(pixel[ch])).join(',')}`;
+ yield `${repr.componentOrder.map((ch) => numericToString(pixel[ch])).join(',')}`;
}
}();
const printActualULPs = function* () {
@@ -272,7 +274,7 @@ coords)
const opts = {
fillToWidth: 120,
- numberToString
+ numericToString
};
return `\
between ${lowerCorner} and ${upperCorner} inclusive:
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/configure.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/configure.spec.js
index 30acc8c9a7..32f979b6c1 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/configure.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/configure.spec.js
@@ -13,7 +13,6 @@ import { GPUConst } from '../../constants.js';
import {
kAllTextureFormats,
kFeaturesForFormats,
- kTextureFormats,
filterFormatsByFeature,
viewCompatible } from
'../../format_info.js';
@@ -387,7 +386,7 @@ combine('format', kCanvasTextureFormats).
combine('viewFormatFeature', kFeaturesForFormats).
beginSubcases().
expand('viewFormat', ({ viewFormatFeature }) =>
-filterFormatsByFeature(viewFormatFeature, kTextureFormats)
+filterFormatsByFeature(viewFormatFeature, kAllTextureFormats)
)
).
beforeAllSubcases((t) => {
@@ -402,7 +401,7 @@ fn((t) => {
const ctx = canvas.getContext('webgpu');
assert(ctx instanceof GPUCanvasContext, 'Failed to get WebGPU context from canvas');
- const compatible = viewCompatible(format, viewFormat);
+ const compatible = viewCompatible(t.isCompatibility, format, viewFormat);
// Test configure() produces an error if the formats aren't compatible.
t.expectValidationError(() => {
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/getCurrentTexture.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/getCurrentTexture.spec.js
index 00e8c3ec24..729a7cdfaf 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/getCurrentTexture.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/getCurrentTexture.spec.js
@@ -40,6 +40,27 @@ class GPUContextTest extends GPUTest {
return ctx;
}
+
+ expectTextureDestroyed(texture, expectDestroyed = true) {
+ this.expectValidationError(() => {
+ // Try using the texture in a render pass. Because it's a canvas texture
+ // it should have RENDER_ATTACHMENT usage.
+ assert((texture.usage & GPUTextureUsage.RENDER_ATTACHMENT) !== 0);
+ const encoder = this.device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: texture.createView(),
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
+
+ });
+ pass.end();
+ // Submitting should generate a validation error if the texture is destroyed.
+ this.queue.submit([encoder.finish()]);
+ }, expectDestroyed);
+ }
}
export const g = makeTestGroup(GPUContextTest);
@@ -170,7 +191,7 @@ fn((t) => {
// Ensure that each frame a new texture object is returned.
t.expect(currentTexture !== prevTexture);
- // Ensure that texture contents are transparent black.
+ // Ensure that the texture's initial contents are transparent black.
t.expectSingleColor(currentTexture, currentTexture.format, {
size: [currentTexture.width, currentTexture.height, 1],
exp: { R: 0, G: 0, B: 0, A: 0 }
@@ -178,7 +199,8 @@ fn((t) => {
}
if (clearTexture) {
- // Clear the texture to test that texture contents don't carry over from frame to frame.
+ // Fill the texture with a non-zero color, to test that texture
+ // contents don't carry over from frame to frame.
const encoder = t.device.createCommandEncoder();
const pass = encoder.beginRenderPass({
colorAttachments: [
@@ -215,10 +237,8 @@ fn((t) => {
}
}
- // Call frameCheck for the first time from requestAnimationFrame
- // To make sure two frameChecks are run in different frames for onscreen canvas.
- // offscreen canvas doesn't care.
- requestAnimationFrame(frameCheck);
+ // Render the first frame immediately. The rest will be triggered recursively.
+ frameCheck();
});
});
@@ -235,6 +255,8 @@ fn((t) => {
// Trigger a resize by changing the width.
ctx.canvas.width = 4;
+ t.expectTextureDestroyed(prevTexture);
+
// When the canvas resizes the texture returned by getCurrentTexture should immediately begin
// returning a new texture matching the update dimensions.
let currentTexture = ctx.getCurrentTexture();
@@ -263,7 +285,6 @@ fn((t) => {
t.expect(currentTexture.height === ctx.canvas.height);
t.expect(prevTexture.width === 4);
t.expect(prevTexture.height === 2);
- prevTexture = currentTexture;
// Ensure that texture contents are transparent black.
t.expectSingleColor(currentTexture, currentTexture.format, {
@@ -271,13 +292,31 @@ fn((t) => {
exp: { R: 0, G: 0, B: 0, A: 0 }
});
- // Simply setting the canvas width and height values to their current values should not trigger
- // a change in the texture.
- ctx.canvas.width = 4;
- ctx.canvas.height = 4;
-
- currentTexture = ctx.getCurrentTexture();
- t.expect(prevTexture === currentTexture);
+ // HTMLCanvasElement behaves differently than OffscreenCanvas
+ if (t.params.canvasType === 'onscreen') {
+ // Ensure canvas goes back to defaults when set to negative numbers.
+ ctx.canvas.width = -1;
+ currentTexture = ctx.getCurrentTexture();
+ t.expect(currentTexture.width === 300);
+ t.expect(currentTexture.height === 4);
+
+ ctx.canvas.height = -1;
+ currentTexture = ctx.getCurrentTexture();
+ t.expect(currentTexture.width === 300);
+ t.expect(currentTexture.height === 150);
+
+ // Setting the canvas width and height values to their current values should
+ // still trigger a change in the texture.
+ prevTexture = ctx.getCurrentTexture();
+ const { width, height } = ctx.canvas;
+ ctx.canvas.width = width;
+ ctx.canvas.height = height;
+
+ t.expectTextureDestroyed(prevTexture);
+
+ currentTexture = ctx.getCurrentTexture();
+ t.expect(prevTexture !== currentTexture);
+ }
});
g.test('expiry').
@@ -307,6 +346,14 @@ u //
combine('prevFrameCallsite', ['runInNewCanvasFrame', 'requestAnimationFrame']).
combine('getCurrentTextureAgain', [true, false])
).
+beforeAllSubcases((t) => {
+ if (
+ t.params.prevFrameCallsite === 'requestAnimationFrame' &&
+ typeof requestAnimationFrame === 'undefined')
+ {
+ throw new SkipTestCase('requestAnimationFrame not available');
+ }
+}).
fn((t) => {
const { canvasType, prevFrameCallsite, getCurrentTextureAgain } = t.params;
const ctx = t.initCanvasContext(t.params.canvasType);
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/readbackFromWebGPUCanvas.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/readbackFromWebGPUCanvas.spec.js
index 05b422f8ea..e88d9d807a 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/readbackFromWebGPUCanvas.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/canvas/readbackFromWebGPUCanvas.spec.js
@@ -14,7 +14,12 @@ The contents of A and B should match.
TODO: implement all canvas types, see TODO on kCanvasTypes.
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
-import { assert, raceWithRejectOnTimeout, unreachable } from '../../../common/util/util.js';
+import {
+ ErrorWithExtra,
+ assert,
+ raceWithRejectOnTimeout,
+ unreachable } from
+'../../../common/util/util.js';
import {
kCanvasAlphaModes,
kCanvasColorSpaces,
@@ -26,8 +31,11 @@ import {
kAllCanvasTypes,
createCanvas,
- createOnscreenCanvas } from
+ createOnscreenCanvas,
+ createOffscreenCanvas } from
'../../util/create_elements.js';
+import { TexelView } from '../../util/texture/texel_view.js';
+import { findFailedPixels } from '../../util/texture/texture_ok.js';
export const g = makeTestGroup(GPUTest);
@@ -61,6 +69,26 @@ const expect = {
])
};
+/**
+ * Given 4 pixels in rgba8unorm format, puts them into an ImageData
+ * of the specified color space and then puts them into an srgb color space
+ * canvas (the default). If the color space is different there will be a
+ * conversion. Returns the resulting 4 pixels in rgba8unorm format.
+ */
+function convertRGBA8UnormBytesToColorSpace(
+expected,
+srcColorSpace,
+dstColorSpace)
+{
+ const srcImgData = new ImageData(2, 2, { colorSpace: srcColorSpace });
+ srcImgData.data.set(expected);
+ const dstCanvas = new OffscreenCanvas(2, 2);
+ const dstCtx = dstCanvas.getContext('2d', { colorSpace: dstColorSpace });
+ assert(dstCtx !== null);
+ dstCtx.putImageData(srcImgData, 0, 0);
+ return dstCtx.getImageData(0, 0, 2, 2).data;
+}
+
function initWebGPUCanvasContent(
t,
format,
@@ -119,7 +147,7 @@ t,
image,
colorSpace)
{
- const canvas = createOnscreenCanvas(t, 2, 2);
+ const canvas = createOffscreenCanvas(t, 2, 2);
const ctx = canvas.getContext('2d', { colorSpace });
assert(ctx !== null);
ctx.drawImage(image, 0, 0);
@@ -147,22 +175,13 @@ sourceData)
// draw the WebGPU derived data into a canvas
const fromWebGPUCtx = drawImageSourceIntoCanvas(t, image, destinationColorSpace);
- // create a 2D canvas with the same source data in the same color space as the WebGPU
- // canvas
- const source2DCanvas = createOnscreenCanvas(t, 2, 2);
- const source2DCtx = source2DCanvas.getContext('2d', { colorSpace: sourceColorSpace });
- assert(source2DCtx !== null);
- const imgData = source2DCtx.getImageData(0, 0, 2, 2);
- imgData.data.set(sourceData);
- source2DCtx.putImageData(imgData, 0, 0);
-
- // draw the source 2D canvas into another 2D canvas with the destination color space and
- // then pull out the data. This result should be the same as the WebGPU derived data
- // written to a 2D canvas of the same destination color space.
- const from2DCtx = drawImageSourceIntoCanvas(t, source2DCanvas, destinationColorSpace);
- const expect = from2DCtx.getImageData(0, 0, 2, 2).data;
-
- readPixelsFrom2DCanvasAndCompare(t, fromWebGPUCtx, expect);
+ const expect = convertRGBA8UnormBytesToColorSpace(
+ sourceData,
+ sourceColorSpace,
+ destinationColorSpace
+ );
+
+ readPixelsFrom2DCanvasAndCompare(t, fromWebGPUCtx, expect, 2);
}
function checkImageResult(
@@ -171,18 +190,55 @@ image,
sourceColorSpace,
expect)
{
+ // canvas(colorSpace)->img(colorSpace)->canvas(colorSpace).drawImage->canvas(colorSpace).getImageData->actual
+ // hard coded data->expected
checkImageResultWithSameColorSpaceCanvas(t, image, sourceColorSpace, expect);
+
+ // canvas(colorSpace)->img(colorSpace)->canvas(diffColorSpace).drawImage->canvas(diffColorSpace).getImageData->actual
+ // hard coded data->ImageData(colorSpace)->canvas(diffColorSpace).putImageData->canvas(diffColorSpace).getImageData->expected
checkImageResultWithDifferentColorSpaceCanvas(t, image, sourceColorSpace, expect);
}
function readPixelsFrom2DCanvasAndCompare(
t,
ctx,
-expect)
+expect,
+maxDiffULPsForNormFormat = 0)
{
- const actual = ctx.getImageData(0, 0, ctx.canvas.width, ctx.canvas.height).data;
+ const { width, height } = ctx.canvas;
+ const actual = ctx.getImageData(0, 0, width, height).data;
+
+ const subrectOrigin = [0, 0, 0];
+ const subrectSize = [width, height, 1];
+
+ const areaDesc = {
+ bytesPerRow: width * 4,
+ rowsPerImage: height,
+ subrectOrigin,
+ subrectSize
+ };
+
+ const format = 'rgba8unorm';
+ const actTexelView = TexelView.fromTextureDataByReference(format, actual, areaDesc);
+ const expTexelView = TexelView.fromTextureDataByReference(format, expect, areaDesc);
+
+ const failedPixelsMessage = findFailedPixels(
+ format,
+ { x: 0, y: 0, z: 0 },
+ { width, height, depthOrArrayLayers: 1 },
+ { actTexelView, expTexelView },
+ { maxDiffULPsForNormFormat }
+ );
- t.expectOK(checkElementsEqual(actual, expect));
+ if (failedPixelsMessage !== undefined) {
+ const msg = 'Canvas had unexpected contents:\n' + failedPixelsMessage;
+ t.expectOK(
+ new ErrorWithExtra(msg, () => ({
+ expTexelView,
+ actTexelView
+ }))
+ );
+ }
}
g.test('onscreenCanvas,snapshot').
@@ -284,11 +340,7 @@ fn(async (t) => {
return;
}
const blob = await offscreenCanvas.convertToBlob();
- const url = URL.createObjectURL(blob);
- const img = new Image(offscreenCanvas.width, offscreenCanvas.height);
- img.src = url;
- await raceWithRejectOnTimeout(img.decode(), 5000, 'load image timeout');
- snapshot = img;
+ snapshot = await createImageBitmap(blob);
break;
}
case 'transferToImageBitmap':{
@@ -383,6 +435,19 @@ desc(
- colorSpace = {"srgb", "display-p3"}
- WebGPU canvas type = {"onscreen", "offscreen"}
- 2d canvas type = {"onscreen", "offscreen"}
+
+
+ * makes a webgpu canvas with the given colorSpace and puts data in via copy convoluted
+ copy process
+ * makes a 2d canvas with 'srgb' colorSpace (the default)
+ * draws the webgpu canvas into the 2d canvas so if the color spaces do not match
+ there will be a conversion.
+ * gets the pixels from the 2d canvas via getImageData
+ * compares them to hard coded values that are converted to expected values by copying
+ to an ImageData of the given color space, and then using putImageData into an srgb canvas.
+
+ canvas(colorSpace) -> canvas(srgb).drawImage -> canvas(srgb).getImageData -> actual
+ ImageData(colorSpace) -> canvas(srgb).putImageData -> canvas(srgb).getImageData -> expected
`
).
params((u) =>
@@ -396,35 +461,47 @@ combine('canvas2DType', kAllCanvasTypes)
fn((t) => {
const { format, webgpuCanvasType, alphaMode, colorSpace, canvas2DType } = t.params;
- const canvas = initWebGPUCanvasContent(t, format, alphaMode, colorSpace, webgpuCanvasType);
+ const webgpuCanvas = initWebGPUCanvasContent(
+ t,
+ format,
+ alphaMode,
+ colorSpace,
+ webgpuCanvasType
+ );
- const expectCanvas = createCanvas(t, canvas2DType, canvas.width, canvas.height);
- const ctx = expectCanvas.getContext('2d');
+ const actualCanvas = createCanvas(t, canvas2DType, webgpuCanvas.width, webgpuCanvas.height);
+ const ctx = actualCanvas.getContext('2d');
if (ctx === null) {
t.skip(canvas2DType + ' canvas cannot get 2d context');
return;
}
- ctx.drawImage(canvas, 0, 0);
- readPixelsFrom2DCanvasAndCompare(t, ctx, expect[t.params.alphaMode]);
+ ctx.drawImage(webgpuCanvas, 0, 0);
+
+ readPixelsFrom2DCanvasAndCompare(
+ t,
+ ctx,
+ convertRGBA8UnormBytesToColorSpace(expect[t.params.alphaMode], colorSpace, 'srgb')
+ );
});
g.test('transferToImageBitmap_unconfigured_nonzero_size').
desc(
`Regression test for a crash when calling transferImageBitmap on an unconfigured. Case where the canvas is not empty`
).
+params((u) => u.combine('readbackCanvasType', ['onscreen', 'offscreen'])).
fn((t) => {
- const canvas = createCanvas(t, 'offscreen', 2, 3);
+ const kWidth = 2;
+ const kHeight = 3;
+ const canvas = createCanvas(t, 'offscreen', kWidth, kHeight);
canvas.getContext('webgpu');
// Transferring gives an ImageBitmap of the correct size filled with transparent black.
const ib = canvas.transferToImageBitmap();
- t.expect(ib.width === canvas.width);
- t.expect(ib.height === canvas.height);
+ t.expect(ib.width === kWidth);
+ t.expect(ib.height === kHeight);
- const readbackCanvas = document.createElement('canvas');
- readbackCanvas.width = canvas.width;
- readbackCanvas.height = canvas.height;
+ const readbackCanvas = createCanvas(t, t.params.readbackCanvasType, kWidth, kHeight);
const readbackContext = readbackCanvas.getContext('2d', {
alpha: true
});
@@ -434,7 +511,7 @@ fn((t) => {
}
// Since there isn't a configuration we expect the ImageBitmap to have the default alphaMode of "opaque".
- const expected = new Uint8ClampedArray(canvas.width * canvas.height * 4);
+ const expected = new Uint8ClampedArray(kWidth * kHeight * 4);
for (let i = 0; i < expected.byteLength; i += 4) {
expected[i + 0] = 0;
expected[i + 1] = 0;
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/canvas.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/canvas.spec.js
index a8176f0613..16133fb8f9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/canvas.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/canvas.spec.js
@@ -97,8 +97,6 @@ class F extends CopyToTextureUtils {
}
const imageData = new ImageData(imagePixels, width, height, { colorSpace });
- // MAINTENANCE_TODO: Remove as any when tsc support imageData.colorSpace
-
if (typeof imageData.colorSpace === 'undefined') {
this.skip('color space attr is not supported for ImageData');
}
@@ -762,7 +760,7 @@ desc(
params((u) =>
u.
combine('srcColorSpace', ['srgb', 'display-p3']).
-combine('dstColorSpace', ['srgb']).
+combine('dstColorSpace', ['srgb', 'display-p3']).
combine('dstColorFormat', kValidTextureFormatsForCopyE2T).
combine('dstPremultiplied', [true, false]).
combine('srcDoFlipYDuringCopy', [true, false]).
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/video.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/video.spec.js
index 9df16bf5ef..e156a6170d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/video.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/copyToTexture/video.spec.js
@@ -3,15 +3,21 @@
**/export const description = `
copyToTexture with HTMLVideoElement and VideoFrame.
-- videos with various encodings/formats (webm vp8, webm vp9, ogg theora, mp4), color spaces
- (bt.601, bt.709, bt.2020)
+- videos with various encodings/formats (webm vp8, webm vp9, ogg theora, mp4), video color spaces
+ (bt.601, bt.709, bt.2020) and dst color spaces(display-p3, srgb).
+
+ TODO: Test video in BT.2020 color space
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
import { GPUTest, TextureTestMixin } from '../../gpu_test.js';
import {
startPlayingAndWaitForVideo,
getVideoElement,
getVideoFrameFromVideoElement,
- kVideoExpectations } from
+ convertToUnorm8,
+ kPredefinedColorSpace,
+ kVideoNames,
+ kVideoInfo,
+ kVideoExpectedColors } from
'../../web_platform/util.js';
const kFormat = 'rgba8unorm';
@@ -36,17 +42,17 @@ It creates HTMLVideoElement with videos under Resource folder.
- Valid 'flipY' config in 'GPUImageCopyExternalImage' (named 'srcDoFlipYDuringCopy' in cases)
- TODO: partial copy tests should be added
- TODO: all valid dstColorFormat tests should be added.
- - TODO: dst color space tests need to be added
`
).
params((u) =>
u //
-.combineWithParams(kVideoExpectations).
+.combine('videoName', kVideoNames).
combine('sourceType', ['VideoElement', 'VideoFrame']).
-combine('srcDoFlipYDuringCopy', [true, false])
+combine('srcDoFlipYDuringCopy', [true, false]).
+combine('dstColorSpace', kPredefinedColorSpace)
).
fn(async (t) => {
- const { videoName, sourceType, srcDoFlipYDuringCopy } = t.params;
+ const { videoName, sourceType, srcDoFlipYDuringCopy, dstColorSpace } = t.params;
if (sourceType === 'VideoFrame' && typeof VideoFrame === 'undefined') {
t.skip('WebCodec is not supported');
@@ -58,8 +64,8 @@ fn(async (t) => {
let source, width, height;
if (sourceType === 'VideoFrame') {
source = await getVideoFrameFromVideoElement(t, videoElement);
- width = source.codedWidth;
- height = source.codedHeight;
+ width = source.displayWidth;
+ height = source.displayHeight;
} else {
source = videoElement;
width = source.videoWidth;
@@ -82,33 +88,63 @@ fn(async (t) => {
{
texture: dstTexture,
origin: { x: 0, y: 0 },
- colorSpace: 'srgb',
+ colorSpace: dstColorSpace,
premultipliedAlpha: true
},
{ width, height, depthOrArrayLayers: 1 }
);
+ const srcColorSpace = kVideoInfo[videoName].colorSpace;
+ const presentColors = kVideoExpectedColors[srcColorSpace][dstColorSpace];
+
+ // visible rect is whole frame, no clipping.
+ const expect = kVideoInfo[videoName].display;
+
if (srcDoFlipYDuringCopy) {
t.expectSinglePixelComparisonsAreOkInTexture({ texture: dstTexture }, [
- // Top-left should be blue.
- { coord: { x: width * 0.25, y: height * 0.25 }, exp: t.params._blueExpectation },
- // Top-right should be green.
- { coord: { x: width * 0.75, y: height * 0.25 }, exp: t.params._greenExpectation },
- // Bottom-left should be yellow.
- { coord: { x: width * 0.25, y: height * 0.75 }, exp: t.params._yellowExpectation },
- // Bottom-right should be red.
- { coord: { x: width * 0.75, y: height * 0.75 }, exp: t.params._redExpectation }]
+ // Flipped top-left.
+ {
+ coord: { x: width * 0.25, y: height * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.bottomLeftColor])
+ },
+ // Flipped top-right.
+ {
+ coord: { x: width * 0.75, y: height * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.bottomRightColor])
+ },
+ // Flipped bottom-left.
+ {
+ coord: { x: width * 0.25, y: height * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.topLeftColor])
+ },
+ // Flipped bottom-right.
+ {
+ coord: { x: width * 0.75, y: height * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.topRightColor])
+ }]
);
} else {
t.expectSinglePixelComparisonsAreOkInTexture({ texture: dstTexture }, [
- // Top-left should be yellow.
- { coord: { x: width * 0.25, y: height * 0.25 }, exp: t.params._yellowExpectation },
- // Top-right should be red.
- { coord: { x: width * 0.75, y: height * 0.25 }, exp: t.params._redExpectation },
- // Bottom-left should be blue.
- { coord: { x: width * 0.25, y: height * 0.75 }, exp: t.params._blueExpectation },
- // Bottom-right should be green.
- { coord: { x: width * 0.75, y: height * 0.75 }, exp: t.params._greenExpectation }]
+ // Top-left.
+ {
+ coord: { x: width * 0.25, y: height * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.topLeftColor])
+ },
+ // Top-right.
+ {
+ coord: { x: width * 0.75, y: height * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.topRightColor])
+ },
+ // Bottom-left.
+ {
+ coord: { x: width * 0.25, y: height * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.bottomLeftColor])
+ },
+ // Bottom-right.
+ {
+ coord: { x: width * 0.75, y: height * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.bottomRightColor])
+ }]
);
}
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/external_texture/video.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/external_texture/video.spec.js
index 80acbb5d5e..54434898e9 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/external_texture/video.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/external_texture/video.spec.js
@@ -3,18 +3,23 @@
**/export const description = `
Tests for external textures from HTMLVideoElement (and other video-type sources?).
-- videos with various encodings/formats (webm vp8, webm vp9, ogg theora, mp4), color spaces
- (bt.601, bt.709, bt.2020)
+- videos with various encodings/formats (webm vp8, webm vp9, ogg theora, mp4), video color spaces
+ (bt.601, bt.709, bt.2020) and dst color spaces(display-p3, srgb)
TODO: consider whether external_texture and copyToTexture video tests should be in the same file
+TODO(#3193): Test video in BT.2020 color space
`;import { makeTestGroup } from '../../../common/framework/test_group.js';
import { GPUTest, TextureTestMixin } from '../../gpu_test.js';
+import { createCanvas } from '../../util/create_elements.js';
import {
startPlayingAndWaitForVideo,
getVideoFrameFromVideoElement,
getVideoElement,
- kVideoExpectations,
- kVideoRotationExpectations } from
+ convertToUnorm8,
+ kPredefinedColorSpace,
+ kVideoNames,
+ kVideoInfo,
+ kVideoExpectedColors } from
'../../web_platform/util.js';
const kHeight = 16;
@@ -23,7 +28,10 @@ const kFormat = 'rgba8unorm';
export const g = makeTestGroup(TextureTestMixin(GPUTest));
-function createExternalTextureSamplingTestPipeline(t) {
+function createExternalTextureSamplingTestPipeline(
+t,
+colorAttachmentFormat = kFormat)
+{
const pipeline = t.device.createRenderPipeline({
layout: 'auto',
vertex: {
@@ -59,7 +67,7 @@ function createExternalTextureSamplingTestPipeline(t) {
entryPoint: 'main',
targets: [
{
- format: kFormat
+ format: colorAttachmentFormat
}]
},
@@ -73,13 +81,14 @@ function createExternalTextureSamplingTestBindGroup(
t,
checkNonStandardIsZeroCopy,
source,
-pipeline)
+pipeline,
+dstColorSpace)
{
const linearSampler = t.device.createSampler();
const externalTexture = t.device.importExternalTexture({
-
- source: source
+ source,
+ colorSpace: dstColorSpace
});
if (checkNonStandardIsZeroCopy) {
@@ -133,22 +142,24 @@ g.test('importExternalTexture,sample').
desc(
`
Tests that we can import an HTMLVideoElement/VideoFrame into a GPUExternalTexture, sample from it
-for several combinations of video format and color space.
+for several combinations of video format, video color spaces and dst color spaces.
`
).
params((u) =>
u //
.combineWithParams(checkNonStandardIsZeroCopyIfAvailable()).
+combine('videoName', kVideoNames).
combine('sourceType', ['VideoElement', 'VideoFrame']).
-combineWithParams(kVideoExpectations)
+combine('dstColorSpace', kPredefinedColorSpace)
).
fn(async (t) => {
- const sourceType = t.params.sourceType;
+ const { videoName, sourceType, dstColorSpace } = t.params;
+
if (sourceType === 'VideoFrame' && typeof VideoFrame === 'undefined') {
t.skip('WebCodec is not supported');
}
- const videoElement = getVideoElement(t, t.params.videoName);
+ const videoElement = getVideoElement(t, videoName);
await startPlayingAndWaitForVideo(videoElement, async () => {
const source =
@@ -167,7 +178,8 @@ fn(async (t) => {
t,
t.params.checkNonStandardIsZeroCopy,
source,
- pipeline
+ pipeline,
+ dstColorSpace
);
const commandEncoder = t.device.createCommandEncoder();
@@ -187,88 +199,162 @@ fn(async (t) => {
passEncoder.end();
t.device.queue.submit([commandEncoder.finish()]);
+ const srcColorSpace = kVideoInfo[videoName].colorSpace;
+ const presentColors = kVideoExpectedColors[srcColorSpace][dstColorSpace];
+
+ // visible rect is whole frame, no clipping.
+ const expect = kVideoInfo[videoName].display;
+
// For validation, we sample a few pixels away from the edges to avoid compression
// artifacts.
t.expectSinglePixelComparisonsAreOkInTexture({ texture: colorAttachment }, [
- // Top-left should be yellow.
- { coord: { x: kWidth * 0.25, y: kHeight * 0.25 }, exp: t.params._yellowExpectation },
- // Top-right should be red.
- { coord: { x: kWidth * 0.75, y: kHeight * 0.25 }, exp: t.params._redExpectation },
- // Bottom-left should be blue.
- { coord: { x: kWidth * 0.25, y: kHeight * 0.75 }, exp: t.params._blueExpectation },
- // Bottom-right should be green.
- { coord: { x: kWidth * 0.75, y: kHeight * 0.75 }, exp: t.params._greenExpectation }]
+ // Top-left.
+ {
+ coord: { x: kWidth * 0.25, y: kHeight * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.topLeftColor])
+ },
+ // Top-right.
+ {
+ coord: { x: kWidth * 0.75, y: kHeight * 0.25 },
+ exp: convertToUnorm8(presentColors[expect.topRightColor])
+ },
+ // Bottom-left.
+ {
+ coord: { x: kWidth * 0.25, y: kHeight * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.bottomLeftColor])
+ },
+ // Bottom-right.
+ {
+ coord: { x: kWidth * 0.75, y: kHeight * 0.75 },
+ exp: convertToUnorm8(presentColors[expect.bottomRightColor])
+ }]
);
-
- if (sourceType === 'VideoFrame') source.close();
});
});
-g.test('importExternalTexture,sampleWithRotationMetadata').
+g.test('importExternalTexture,sample_non_YUV_video_frame').
desc(
`
-Tests that when importing an HTMLVideoElement/VideoFrame into a GPUExternalTexture, sampling from
-it will honor rotation metadata.
+Tests that we can import an VideoFrame with non-YUV pixel format into a GPUExternalTexture and sample it.
`
).
params((u) =>
u //
-.combineWithParams(checkNonStandardIsZeroCopyIfAvailable()).
-combine('sourceType', ['VideoElement', 'VideoFrame']).
-combineWithParams(kVideoRotationExpectations)
+.combine('videoFrameFormat', ['RGBA', 'RGBX', 'BGRA', 'BGRX'])
).
-fn(async (t) => {
- const sourceType = t.params.sourceType;
- const videoElement = getVideoElement(t, t.params.videoName);
+fn((t) => {
+ const { videoFrameFormat } = t.params;
- await startPlayingAndWaitForVideo(videoElement, async () => {
- const source =
- sourceType === 'VideoFrame' ?
- await getVideoFrameFromVideoElement(t, videoElement) :
- videoElement;
+ if (typeof VideoFrame === 'undefined') {
+ t.skip('WebCodec is not supported');
+ }
- const colorAttachment = t.device.createTexture({
- format: kFormat,
- size: { width: kWidth, height: kHeight, depthOrArrayLayers: 1 },
- usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.RENDER_ATTACHMENT
- });
+ const canvas = createCanvas(t, 'onscreen', kWidth, kHeight);
- const pipeline = createExternalTextureSamplingTestPipeline(t);
- const bindGroup = createExternalTextureSamplingTestBindGroup(
- t,
- t.params.checkNonStandardIsZeroCopy,
- source,
- pipeline
- );
+ const canvasContext = canvas.getContext('2d');
- const commandEncoder = t.device.createCommandEncoder();
- const passEncoder = commandEncoder.beginRenderPass({
- colorAttachments: [
- {
- view: colorAttachment.createView(),
- clearValue: { r: 0.0, g: 0.0, b: 0.0, a: 1.0 },
- loadOp: 'clear',
- storeOp: 'store'
- }]
+ if (canvasContext === null) {
+ t.skip(' onscreen canvas 2d context not available');
+ }
- });
- passEncoder.setPipeline(pipeline);
- passEncoder.setBindGroup(0, bindGroup);
- passEncoder.draw(6);
- passEncoder.end();
- t.device.queue.submit([commandEncoder.finish()]);
+ const ctx = canvasContext;
+
+ const rectWidth = Math.floor(kWidth / 2);
+ const rectHeight = Math.floor(kHeight / 2);
+
+ // Red
+ ctx.fillStyle = `rgba(255, 0, 0, 1.0)`;
+ ctx.fillRect(0, 0, rectWidth, rectHeight);
+ // Lime
+ ctx.fillStyle = `rgba(0, 255, 0, 1.0)`;
+ ctx.fillRect(rectWidth, 0, kWidth - rectWidth, rectHeight);
+ // Blue
+ ctx.fillStyle = `rgba(0, 0, 255, 1.0)`;
+ ctx.fillRect(0, rectHeight, rectWidth, kHeight - rectHeight);
+ // Fuchsia
+ ctx.fillStyle = `rgba(255, 0, 255, 1.0)`;
+ ctx.fillRect(rectWidth, rectHeight, kWidth - rectWidth, kHeight - rectHeight);
+
+ const imageData = ctx.getImageData(0, 0, kWidth, kHeight);
+
+ // Create video frame with default color space 'srgb'
+ const frameInit = {
+ format: videoFrameFormat,
+ codedWidth: kWidth,
+ codedHeight: kHeight,
+ timestamp: 0
+ };
+
+ const frame = new VideoFrame(imageData.data.buffer, frameInit);
+ let textureFormat = 'rgba8unorm';
+
+ if (videoFrameFormat === 'BGRA' || videoFrameFormat === 'BGRX') {
+ textureFormat = 'bgra8unorm';
+ }
- // For validation, we sample a few pixels away from the edges to avoid compression
- // artifacts.
- t.expectSinglePixelComparisonsAreOkInTexture({ texture: colorAttachment }, [
- { coord: { x: kWidth * 0.25, y: kHeight * 0.25 }, exp: t.params._topLeftExpectation },
- { coord: { x: kWidth * 0.75, y: kHeight * 0.25 }, exp: t.params._topRightExpectation },
- { coord: { x: kWidth * 0.25, y: kHeight * 0.75 }, exp: t.params._bottomLeftExpectation },
- { coord: { x: kWidth * 0.75, y: kHeight * 0.75 }, exp: t.params._bottomRightExpectation }]
- );
+ const colorAttachment = t.device.createTexture({
+ format: textureFormat,
+ size: { width: kWidth, height: kHeight, depthOrArrayLayers: 1 },
+ usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.RENDER_ATTACHMENT
+ });
+
+ const pipeline = createExternalTextureSamplingTestPipeline(t, textureFormat);
+ const bindGroup = createExternalTextureSamplingTestBindGroup(
+ t,
+ undefined /* checkNonStandardIsZeroCopy */,
+ frame,
+ pipeline,
+ 'srgb'
+ );
+
+ const commandEncoder = t.device.createCommandEncoder();
+ const passEncoder = commandEncoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: colorAttachment.createView(),
+ clearValue: { r: 0.0, g: 0.0, b: 0.0, a: 1.0 },
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
- if (sourceType === 'VideoFrame') source.close();
});
+ passEncoder.setPipeline(pipeline);
+ passEncoder.setBindGroup(0, bindGroup);
+ passEncoder.draw(6);
+ passEncoder.end();
+ t.device.queue.submit([commandEncoder.finish()]);
+
+ const expected = {
+ topLeft: new Uint8Array([255, 0, 0, 255]),
+ topRight: new Uint8Array([0, 255, 0, 255]),
+ bottomLeft: new Uint8Array([0, 0, 255, 255]),
+ bottomRight: new Uint8Array([255, 0, 255, 255])
+ };
+
+ // For validation, we sample a few pixels away from the edges to avoid compression
+ // artifacts.
+ t.expectSinglePixelComparisonsAreOkInTexture({ texture: colorAttachment }, [
+ // Top-left.
+ {
+ coord: { x: kWidth * 0.25, y: kHeight * 0.25 },
+ exp: expected.topLeft
+ },
+ // Top-right.
+ {
+ coord: { x: kWidth * 0.75, y: kHeight * 0.25 },
+ exp: expected.topRight
+ },
+ // Bottom-left.
+ {
+ coord: { x: kWidth * 0.25, y: kHeight * 0.75 },
+ exp: expected.bottomLeft
+ },
+ // Bottom-right.
+ {
+ coord: { x: kWidth * 0.75, y: kHeight * 0.75 },
+ exp: expected.bottomRight
+ }]
+ );
});
g.test('importExternalTexture,sampleWithVideoFrameWithVisibleRectParam').
@@ -281,10 +367,13 @@ parameters are present.
params((u) =>
u //
.combineWithParams(checkNonStandardIsZeroCopyIfAvailable()).
-combineWithParams(kVideoExpectations)
+combine('videoName', kVideoNames).
+combine('dstColorSpace', kPredefinedColorSpace)
).
fn(async (t) => {
- const videoElement = getVideoElement(t, t.params.videoName);
+ const { videoName, dstColorSpace } = t.params;
+
+ const videoElement = getVideoElement(t, videoName);
await startPlayingAndWaitForVideo(videoElement, async () => {
const source = await getVideoFrameFromVideoElement(t, videoElement);
@@ -292,15 +381,24 @@ fn(async (t) => {
// All tested videos are derived from an image showing yellow, red, blue or green in each
// quadrant. In this test we crop the video to each quadrant and check that desired color
// is sampled from each corner of the cropped image.
- const srcVideoHeight = 240;
- const srcVideoWidth = 320;
+ // visible rect clip applies on raw decoded frame, which defines based on video frame coded size.
+ const srcVideoHeight = source.codedHeight;
+ const srcVideoWidth = source.codedWidth;
+
+ const srcColorSpace = kVideoInfo[videoName].colorSpace;
+ const presentColors = kVideoExpectedColors[srcColorSpace][dstColorSpace];
+
+ // The test crops raw decoded videos first and then apply transform. Expectation should
+ // use coded colors as reference.
+ const expect = kVideoInfo[videoName].coded;
+
const cropParams = [
- // Top left (yellow)
+ // Top left
{
subRect: { x: 0, y: 0, width: srcVideoWidth / 2, height: srcVideoHeight / 2 },
- color: t.params._yellowExpectation
+ color: convertToUnorm8(presentColors[expect.topLeftColor])
},
- // Top right (red)
+ // Top right
{
subRect: {
x: srcVideoWidth / 2,
@@ -308,9 +406,9 @@ fn(async (t) => {
width: srcVideoWidth / 2,
height: srcVideoHeight / 2
},
- color: t.params._redExpectation
+ color: convertToUnorm8(presentColors[expect.topRightColor])
},
- // Bottom left (blue)
+ // Bottom left
{
subRect: {
x: 0,
@@ -318,9 +416,9 @@ fn(async (t) => {
width: srcVideoWidth / 2,
height: srcVideoHeight / 2
},
- color: t.params._blueExpectation
+ color: convertToUnorm8(presentColors[expect.bottomLeftColor])
},
- // Bottom right (green)
+ // Bottom right
{
subRect: {
x: srcVideoWidth / 2,
@@ -328,13 +426,11 @@ fn(async (t) => {
width: srcVideoWidth / 2,
height: srcVideoHeight / 2
},
- color: t.params._greenExpectation
+ color: convertToUnorm8(presentColors[expect.bottomRightColor])
}];
for (const cropParam of cropParams) {
- // MAINTENANCE_TODO: remove cast with TypeScript 4.9.6+.
-
const subRect = new VideoFrame(source, { visibleRect: cropParam.subRect });
const colorAttachment = t.device.createTexture({
@@ -348,7 +444,8 @@ fn(async (t) => {
t,
t.params.checkNonStandardIsZeroCopy,
subRect,
- pipeline
+ pipeline,
+ dstColorSpace
);
const commandEncoder = t.device.createCommandEncoder();
@@ -387,22 +484,24 @@ g.test('importExternalTexture,compute').
desc(
`
Tests that we can import an HTMLVideoElement/VideoFrame into a GPUExternalTexture and use it in a
-compute shader, for several combinations of video format and color space.
+compute shader, for several combinations of video format, video color spaces and dst color spaces.
`
).
params((u) =>
u //
.combineWithParams(checkNonStandardIsZeroCopyIfAvailable()).
+combine('videoName', kVideoNames).
combine('sourceType', ['VideoElement', 'VideoFrame']).
-combineWithParams(kVideoExpectations)
+combine('dstColorSpace', kPredefinedColorSpace)
).
fn(async (t) => {
- const sourceType = t.params.sourceType;
+ const { videoName, sourceType, dstColorSpace } = t.params;
+
if (sourceType === 'VideoFrame' && typeof VideoFrame === 'undefined') {
t.skip('WebCodec is not supported');
}
- const videoElement = getVideoElement(t, t.params.videoName);
+ const videoElement = getVideoElement(t, videoName);
await startPlayingAndWaitForVideo(videoElement, async () => {
const source =
@@ -410,8 +509,8 @@ fn(async (t) => {
await getVideoFrameFromVideoElement(t, videoElement) :
videoElement;
const externalTexture = t.device.importExternalTexture({
-
- source: source
+ source,
+ colorSpace: dstColorSpace
});
if (t.params.checkNonStandardIsZeroCopy) {
expectZeroCopyNonStandard(t, externalTexture);
@@ -422,29 +521,51 @@ fn(async (t) => {
usage: GPUTextureUsage.COPY_SRC | GPUTextureUsage.STORAGE_BINDING
});
+ // Use display size of VideoFrame and video size of HTMLVideoElement as frame size. These sizes are presenting size which
+ // apply transformation in video metadata if any.
+
const pipeline = t.device.createComputePipeline({
layout: 'auto',
compute: {
- // Shader loads 4 pixels near each corner, and then store them in a storage texture.
+ // Shader loads 4 pixels, and then store them in a storage texture.
module: t.device.createShaderModule({
code: `
+ override frameWidth : i32 = 0;
+ override frameHeight : i32 = 0;
@group(0) @binding(0) var t : texture_external;
@group(0) @binding(1) var outImage : texture_storage_2d<rgba8unorm, write>;
@compute @workgroup_size(1) fn main() {
- var yellow : vec4<f32> = textureLoad(t, vec2<i32>(80, 60));
+ let coordTopLeft = vec2<i32>(frameWidth / 4, frameHeight / 4);
+ let coordTopRight = vec2<i32>(frameWidth / 4 * 3, frameHeight / 4);
+ let coordBottomLeft = vec2<i32>(frameWidth / 4, frameHeight / 4 * 3);
+ let coordBottomRight = vec2<i32>(frameWidth / 4 * 3, frameHeight / 4 * 3);
+ var yellow : vec4<f32> = textureLoad(t, coordTopLeft);
textureStore(outImage, vec2<i32>(0, 0), yellow);
- var red : vec4<f32> = textureLoad(t, vec2<i32>(240, 60));
+ var red : vec4<f32> = textureLoad(t, coordTopRight);
textureStore(outImage, vec2<i32>(0, 1), red);
- var blue : vec4<f32> = textureLoad(t, vec2<i32>(80, 180));
+ var blue : vec4<f32> = textureLoad(t, coordBottomLeft);
textureStore(outImage, vec2<i32>(1, 0), blue);
- var green : vec4<f32> = textureLoad(t, vec2<i32>(240, 180));
+ var green : vec4<f32> = textureLoad(t, coordBottomRight);
textureStore(outImage, vec2<i32>(1, 1), green);
return;
}
`
}),
- entryPoint: 'main'
+ entryPoint: 'main',
+
+ // Use display size of VideoFrame and video size of HTMLVideoElement as frame size. These sizes are presenting size which
+ // apply transformation in video metadata if any.
+ constants: {
+ frameWidth:
+ sourceType === 'VideoFrame' ?
+ source.displayWidth :
+ source.videoWidth,
+ frameHeight:
+ sourceType === 'VideoFrame' ?
+ source.displayHeight :
+ source.videoHeight
+ }
}
});
@@ -464,17 +585,21 @@ fn(async (t) => {
pass.end();
t.device.queue.submit([encoder.finish()]);
+ const srcColorSpace = kVideoInfo[videoName].colorSpace;
+ const presentColors = kVideoExpectedColors[srcColorSpace][dstColorSpace];
+
+ // visible rect is whole frame, no clipping.
+ const expect = kVideoInfo[videoName].display;
+
t.expectSinglePixelComparisonsAreOkInTexture({ texture: outputTexture }, [
- // Top-left should be yellow.
- { coord: { x: 0, y: 0 }, exp: t.params._yellowExpectation },
- // Top-right should be red.
- { coord: { x: 0, y: 1 }, exp: t.params._redExpectation },
- // Bottom-left should be blue.
- { coord: { x: 1, y: 0 }, exp: t.params._blueExpectation },
- // Bottom-right should be green.
- { coord: { x: 1, y: 1 }, exp: t.params._greenExpectation }]
+ // Top-left.
+ { coord: { x: 0, y: 0 }, exp: convertToUnorm8(presentColors[expect.topLeftColor]) },
+ // Top-right.
+ { coord: { x: 0, y: 1 }, exp: convertToUnorm8(presentColors[expect.topRightColor]) },
+ // Bottom-left.
+ { coord: { x: 1, y: 0 }, exp: convertToUnorm8(presentColors[expect.bottomLeftColor]) },
+ // Bottom-right.
+ { coord: { x: 1, y: 1 }, exp: convertToUnorm8(presentColors[expect.bottomRightColor]) }]
);
-
- if (sourceType === 'VideoFrame') source.close();
});
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html
deleted file mode 100644
index f51145645b..0000000000
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/canvas_image_rendering.https.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<html class="reftest-wait">
- <title>WebGPU canvas_image_rendering</title>
- <meta charset="utf-8" />
- <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
- <meta name="assert" content="WebGPU canvas with image-rendering set should be rendered correctly" />
- <link rel="match" href="./ref/canvas_image_rendering-ref.html" />
- <canvas id="elem1" width="64" height="64" style="width: 99px; height: 99px;"></canvas>
- <canvas id="elem2" width="64" height="64" style="width: 99px; height: 99px; image-rendering: pixelated;"></canvas>
- <canvas id="elem3" width="64" height="64" style="width: 99px; height: 99px; image-rendering: crisp-edges"></canvas>
- <canvas id="elem4" width="64" height="64" style="width: 99px; height: 99px;"></canvas>
- <canvas id="elem5" width="64" height="64" style="width: 99px; height: 99px; image-rendering: pixelated;"></canvas>
- <canvas id="elem6" width="64" height="64" style="width: 99px; height: 99px; image-rendering: crisp-edges"></canvas>
- <script type="module" src="canvas_image_rendering.html.js"></script>
-</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/delay_get_texture.html.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/delay_get_texture.html.js
new file mode 100644
index 0000000000..84b667ad14
--- /dev/null
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/delay_get_texture.html.js
@@ -0,0 +1,46 @@
+/**
+* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
+**/import { timeout } from '../../../common/util/timeout.js';import { takeScreenshotDelayed } from '../../../common/util/wpt_reftest_wait.js';
+function assert(condition, msg) {
+ if (!condition) {
+ throw new Error(msg && (typeof msg === 'string' ? msg : msg()));
+ }
+}
+
+void (async () => {
+ assert(
+ typeof navigator !== 'undefined' && navigator.gpu !== undefined,
+ 'No WebGPU implementation found'
+ );
+
+ const adapter = await navigator.gpu.requestAdapter();
+ assert(adapter !== null);
+ const device = await adapter.requestDevice();
+ assert(device !== null);
+
+ const canvas = document.getElementById('cvs0');
+ const ctx = canvas.getContext('webgpu');
+ ctx.configure({
+ device,
+ format: navigator.gpu.getPreferredCanvasFormat(),
+ alphaMode: 'premultiplied'
+ });
+
+ timeout(() => {
+ const encoder = device.createCommandEncoder();
+ const pass = encoder.beginRenderPass({
+ colorAttachments: [
+ {
+ view: ctx.getCurrentTexture().createView(),
+ clearValue: { r: 0.0, g: 1.0, b: 0.0, a: 1.0 },
+ loadOp: 'clear',
+ storeOp: 'store'
+ }]
+
+ });
+ pass.end();
+ device.queue.submit([encoder.finish()]);
+
+ takeScreenshotDelayed(50);
+ }, 100);
+})(); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_image_rendering-ref.html b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_image_rendering-ref.html
deleted file mode 100644
index f9eca704e8..0000000000
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/reftests/ref/canvas_image_rendering-ref.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<!DOCTYPE html>
-<html class="reftest-wait">
- <title>WebGPU canvas_image_rendering (ref)</title>
- <meta charset="utf-8" />
- <link rel="help" href="https://gpuweb.github.io/gpuweb/" />
- <img id="elem1" width="64" height="64" style="width: 99px; height: 99px;">
- <img id="elem2" width="64" height="64" style="width: 99px; height: 99px; image-rendering: pixelated;">
- <img id="elem3" width="64" height="64" style="width: 99px; height: 99px; image-rendering: crisp-edges">
- <img id="elem4" width="64" height="64" style="width: 99px; height: 99px;">
- <img id="elem5" width="64" height="64" style="width: 99px; height: 99px; image-rendering: pixelated;">
- <img id="elem6" width="64" height="64" style="width: 99px; height: 99px; image-rendering: crisp-edges">
- <script type="module">
- import { takeScreenshotDelayed } from '../../../../common/util/wpt_reftest_wait.js';
-
- (async () => {
- const dataURL = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAKdJREFUeF7t28kJwDAQA0Cp/6I3hJAqNK/kazDr2atJ7u7S9v3Z+76nnz18m7oBboAYIAZMRv//1fMKcAAHkCAJLuYAXoEv8ZMLcAAHcAAHcAAHjBZEOeBSDuAADuAADuAADtjrCqsIqQh98xAkSIIkSIIkSIIkSIKrYzJ6gyRIgiRIgiRIgiRIgiRoZ2hwYcp8gKqwSVF9AXuD9gbtDdobXGWw7nCbB5+MQQlHipKKAAAAAElFTkSuQmCC';
- await Promise.all([...document.querySelectorAll('img')].map(img => {
- img.src = dataURL;
- return img.decode();
- }));
-
- takeScreenshotDelayed(50);
- })();
- </script>
-</html>
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/util.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/util.js
index df4b02447f..dc66e3c70d 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/util.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/util.js
@@ -1,9 +1,10 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { SkipTestCase } from '../../common/framework/fixture.js';import { getResourcePath } from '../../common/framework/resources.js';import { makeTable } from '../../common/util/data_tables.js';
+**/import { SkipTestCase } from '../../common/framework/fixture.js';import { getResourcePath } from '../../common/framework/resources.js';import { keysOf } from '../../common/util/data_tables.js';
import { timeout } from '../../common/util/timeout.js';
import { ErrorWithExtra, raceWithRejectOnTimeout } from '../../common/util/util.js';
+import { srgbToDisplayP3 } from '../util/color_space_conversion.js';
@@ -13,105 +14,342 @@ import { ErrorWithExtra, raceWithRejectOnTimeout } from '../../common/util/util.
-export const kVideoInfo =
-makeTable(
- ['mimeType'],
- [undefined], {
- // All video names
- 'four-colors-vp8-bt601.webm': ['video/webm; codecs=vp8'],
- 'four-colors-h264-bt601.mp4': ['video/mp4; codecs=avc1.4d400c'],
- 'four-colors-vp9-bt601.webm': ['video/webm; codecs=vp9'],
- 'four-colors-vp9-bt709.webm': ['video/webm; codecs=vp9'],
- 'four-colors-vp9-bt2020.webm': ['video/webm; codecs=vp9'],
- 'four-colors-h264-bt601-rotate-90.mp4': ['video/mp4; codecs=avc1.4d400c'],
- 'four-colors-h264-bt601-rotate-180.mp4': ['video/mp4; codecs=avc1.4d400c'],
- 'four-colors-h264-bt601-rotate-270.mp4': ['video/mp4; codecs=avc1.4d400c']
- });
+// MAINTENANCE_TODO: Uses raw floats as expectation in external_texture related cases has some diffs.
+// Remove this conversion utils and uses raw float data as expectation in external_textrue
+// related cases when resolve this.
+export function convertToUnorm8(expectation) {
+ const rgba8Unorm = new Uint8ClampedArray(4);
+ rgba8Unorm[0] = Math.round(expectation.R * 255.0);
+ rgba8Unorm[1] = Math.round(expectation.G * 255.0);
+ rgba8Unorm[2] = Math.round(expectation.B * 255.0);
+ rgba8Unorm[3] = Math.round(expectation.A * 255.0);
+ return new Uint8Array(rgba8Unorm.buffer);
+}
+// MAINTENANCE_TODO: Add helper function for BT.601 and BT.709 to remove all magic numbers.
// Expectation values about converting video contents to sRGB color space.
// Source video color space affects expected values.
// The process to calculate these expected pixel values can be found:
// https://github.com/gpuweb/cts/pull/2242#issuecomment-1430382811
// and https://github.com/gpuweb/cts/pull/2242#issuecomment-1463273434
const kBt601PixelValue = {
- red: new Float32Array([0.972945567233341, 0.141794376683341, -0.0209589916711088, 1.0]),
- green: new Float32Array([0.248234279433399, 0.984810378661784, -0.0564701319494314, 1.0]),
- blue: new Float32Array([0.10159735826538, 0.135451122863674, 1.00262982899724, 1.0]),
- yellow: new Float32Array([0.995470750775951, 0.992742114518355, -0.0774291236205402, 1.0])
+ srgb: {
+ red: { R: 0.972945567233341, G: 0.141794376683341, B: -0.0209589916711088, A: 1.0 },
+ green: { R: 0.248234279433399, G: 0.984810378661784, B: -0.0564701319494314, A: 1.0 },
+ blue: { R: 0.10159735826538, G: 0.135451122863674, B: 1.00262982899724, A: 1.0 },
+ yellow: { R: 0.995470750775951, G: 0.992742114518355, B: -0.0701036235167653, A: 1.0 }
+ }
};
-function convertToUnorm8(expectation) {
- const unorm8 = new Uint8ClampedArray(expectation.length);
-
- for (let i = 0; i < expectation.length; ++i) {
- unorm8[i] = Math.round(expectation[i] * 255.0);
+const kBt709PixelValue = {
+ srgb: {
+ red: { R: 1.0, G: 0.0, B: 0.0, A: 1.0 },
+ green: { R: 0.0, G: 1.0, B: 0.0, A: 1.0 },
+ blue: { R: 0.0, G: 0.0, B: 1.0, A: 1.0 },
+ yellow: { R: 1.0, G: 1.0, B: 0.0, A: 1.0 }
}
+};
- return new Uint8Array(unorm8.buffer);
-}
+function makeTable({
+ table
-// kVideoExpectations uses unorm8 results
-const kBt601Red = convertToUnorm8(kBt601PixelValue.red);
-const kBt601Green = convertToUnorm8(kBt601PixelValue.green);
-const kBt601Blue = convertToUnorm8(kBt601PixelValue.blue);
-const kBt601Yellow = convertToUnorm8(kBt601PixelValue.yellow);
-export const kVideoExpectations = [
-{
- videoName: 'four-colors-vp8-bt601.webm',
- _redExpectation: kBt601Red,
- _greenExpectation: kBt601Green,
- _blueExpectation: kBt601Blue,
- _yellowExpectation: kBt601Yellow
-},
-{
- videoName: 'four-colors-h264-bt601.mp4',
- _redExpectation: kBt601Red,
- _greenExpectation: kBt601Green,
- _blueExpectation: kBt601Blue,
- _yellowExpectation: kBt601Yellow
-},
-{
- videoName: 'four-colors-vp9-bt601.webm',
- _redExpectation: kBt601Red,
- _greenExpectation: kBt601Green,
- _blueExpectation: kBt601Blue,
- _yellowExpectation: kBt601Yellow
-},
-{
- videoName: 'four-colors-vp9-bt709.webm',
- _redExpectation: new Uint8Array([255, 0, 0, 255]),
- _greenExpectation: new Uint8Array([0, 255, 0, 255]),
- _blueExpectation: new Uint8Array([0, 0, 255, 255]),
- _yellowExpectation: new Uint8Array([255, 255, 0, 255])
-}];
+})
+
-export const kVideoRotationExpectations = [
-{
- videoName: 'four-colors-h264-bt601-rotate-90.mp4',
- _topLeftExpectation: kBt601Red,
- _topRightExpectation: kBt601Green,
- _bottomLeftExpectation: kBt601Yellow,
- _bottomRightExpectation: kBt601Blue
-},
-{
- videoName: 'four-colors-h264-bt601-rotate-180.mp4',
- _topLeftExpectation: kBt601Green,
- _topRightExpectation: kBt601Blue,
- _bottomLeftExpectation: kBt601Red,
- _bottomRightExpectation: kBt601Yellow
-},
{
- videoName: 'four-colors-h264-bt601-rotate-270.mp4',
- _topLeftExpectation: kBt601Blue,
- _topRightExpectation: kBt601Yellow,
- _bottomLeftExpectation: kBt601Green,
- _bottomRightExpectation: kBt601Red
-}];
+ return Object.fromEntries(
+ Object.entries(table).map(([k, row]) => [k, { ...row }])
+ );
+}
+// Video expected pixel value table. Finding expected pixel value
+// with video color space and dst color space.
+export const kVideoExpectedColors = makeTable({
+ table: {
+ bt601: {
+ 'display-p3': {
+ yellow: srgbToDisplayP3(kBt601PixelValue.srgb.yellow),
+ red: srgbToDisplayP3(kBt601PixelValue.srgb.red),
+ blue: srgbToDisplayP3(kBt601PixelValue.srgb.blue),
+ green: srgbToDisplayP3(kBt601PixelValue.srgb.green)
+ },
+ srgb: {
+ yellow: kBt601PixelValue.srgb.yellow,
+ red: kBt601PixelValue.srgb.red,
+ blue: kBt601PixelValue.srgb.blue,
+ green: kBt601PixelValue.srgb.green
+ }
+ },
+ bt709: {
+ 'display-p3': {
+ yellow: srgbToDisplayP3(kBt709PixelValue.srgb.yellow),
+ red: srgbToDisplayP3(kBt709PixelValue.srgb.red),
+ blue: srgbToDisplayP3(kBt709PixelValue.srgb.blue),
+ green: srgbToDisplayP3(kBt709PixelValue.srgb.green)
+ },
+ srgb: {
+ yellow: kBt709PixelValue.srgb.yellow,
+ red: kBt709PixelValue.srgb.red,
+ blue: kBt709PixelValue.srgb.blue,
+ green: kBt709PixelValue.srgb.green
+ }
+ }
+ }
+});
+
+// MAINTENANCE_TODO: Add BT.2020 video in table.
+// Video container and codec defines several transform ops to apply to raw decoded frame to display.
+// Our test cases covers 'visible rect' and 'rotation'.
+// 'visible rect' is associated with the
+// video bitstream and should apply to the raw decoded frames before any transformation.
+// 'rotation' is associated with the track or presentation and should transform
+// the whole visible rect (e.g. 90-degree rotate makes visible rect of vertical video to horizontal)
+// The order to apply these transformations is below:
+
+// [raw decoded frame] ----visible rect clipping ---->[visible frame] ---rotation ---> present
+// ^ ^
+// | |
+// coded size display size
+// The table holds test videos meta infos, including mimeType to check browser compatibility
+// video color space, raw frame content layout and the frame displayed layout.
+export const kVideoInfo = makeTable({
+ table: {
+ 'four-colors-vp8-bt601.webm': {
+ mimeType: 'video/webm; codecs=vp8',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-h264-bt601.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-vp9-bt601.webm': {
+ mimeType: 'video/webm; codecs=vp9',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-vp9-bt709.webm': {
+ mimeType: 'video/webm; codecs=vp9',
+ colorSpace: 'bt709',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ // video coded content has been rotate
+ 'four-colors-h264-bt601-rotate-90.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'red',
+ topRightColor: 'green',
+ bottomLeftColor: 'yellow',
+ bottomRightColor: 'blue'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-h264-bt601-rotate-180.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'green',
+ topRightColor: 'blue',
+ bottomLeftColor: 'red',
+ bottomRightColor: 'yellow'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-h264-bt601-rotate-270.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'blue',
+ topRightColor: 'yellow',
+ bottomLeftColor: 'green',
+ bottomRightColor: 'red'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-vp9-bt601-rotate-90.mp4': {
+ mimeType: 'video/mp4; codecs=vp09.00.10.08',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'red',
+ topRightColor: 'green',
+ bottomLeftColor: 'yellow',
+ bottomRightColor: 'blue'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-vp9-bt601-rotate-180.mp4': {
+ mimeType: 'video/mp4; codecs=vp09.00.10.08',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'green',
+ topRightColor: 'blue',
+ bottomLeftColor: 'red',
+ bottomRightColor: 'yellow'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-vp9-bt601-rotate-270.mp4': {
+ mimeType: 'video/mp4; codecs=vp09.00.10.08',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'blue',
+ topRightColor: 'yellow',
+ bottomLeftColor: 'green',
+ bottomRightColor: 'red'
+ },
+ display: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ }
+ },
+ 'four-colors-h264-bt601-hflip.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'red',
+ topRightColor: 'yellow',
+ bottomLeftColor: 'green',
+ bottomRightColor: 'blue'
+ }
+ },
+ 'four-colors-h264-bt601-vflip.mp4': {
+ mimeType: 'video/mp4; codecs=avc1.4d400c',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'blue',
+ topRightColor: 'green',
+ bottomLeftColor: 'yellow',
+ bottomRightColor: 'red'
+ }
+ },
+ 'four-colors-vp9-bt601-hflip.mp4': {
+ mimeType: 'video/mp4; codecs=vp09.00.10.08',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'red',
+ topRightColor: 'yellow',
+ bottomLeftColor: 'green',
+ bottomRightColor: 'blue'
+ }
+ },
+ 'four-colors-vp9-bt601-vflip.mp4': {
+ mimeType: 'video/mp4; codecs=vp09.00.10.08',
+ colorSpace: 'bt601',
+ coded: {
+ topLeftColor: 'yellow',
+ topRightColor: 'red',
+ bottomLeftColor: 'blue',
+ bottomRightColor: 'green'
+ },
+ display: {
+ topLeftColor: 'blue',
+ topRightColor: 'green',
+ bottomLeftColor: 'yellow',
+ bottomRightColor: 'red'
+ }
+ }
+ }
+});
+
+
+export const kVideoNames = keysOf(kVideoInfo);
+
+export const kPredefinedColorSpace = ['display-p3', 'srgb'];
/**
* Starts playing a video and waits for it to be consumable.
* Returns a promise which resolves after `callback` (which may be async) completes.
@@ -145,7 +383,12 @@ callback)
video.addEventListener(
'error',
- (event) => reject(new ErrorWithExtra('Video received "error" event', () => ({ event }))),
+ (event) =>
+ reject(
+ new ErrorWithExtra('Video received "error" event, message: ' + event.message, () => ({
+ event
+ }))
+ ),
true
);
@@ -230,6 +473,7 @@ video)
const transformer = new TransformStream({
transform(videoFrame, _controller) {
videoTrack.stop();
+ test.trackForCleanup(videoFrame);
resolve(videoFrame);
},
flush(controller) {
@@ -259,6 +503,10 @@ video)
*
*/
export function getVideoElement(t, videoName) {
+ if (typeof HTMLVideoElement === 'undefined') {
+ t.skip('HTMLVideoElement not available');
+ }
+
const videoElement = document.createElement('video');
const videoInfo = kVideoInfo[videoName];
@@ -269,6 +517,8 @@ export function getVideoElement(t, videoName) {
const videoUrl = getResourcePath(videoName);
videoElement.src = videoUrl;
+ t.trackForCleanup(videoElement);
+
return videoElement;
}
@@ -296,4 +546,4 @@ timeoutMessage)
});
const promise = raceWithRejectOnTimeout(promiseWithoutTimeout, 2000, timeoutMessage);
return { promise, callbackAndResolve: callbackAndResolve };
-}
+} \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
index 8eff1ae8cd..f90a4db02e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.js
@@ -1,6 +1,10 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/import { getGPU, setDefaultRequestAdapterOptions } from '../../../common/util/navigator_gpu.js';import { assert, objectEquals, iterRange } from '../../../common/util/util.js';
+// Should be WorkerGlobalScope, but importing lib "webworker" conflicts with lib "dom".
+
+
+
async function basicTest() {
const adapter = await getGPU(null).requestAdapter();
assert(adapter !== null, 'Failed to get adapter.');
@@ -68,7 +72,7 @@ async function basicTest() {
device.destroy();
}
-self.onmessage = async (ev) => {
+async function reportTestResults(ev) {
const defaultRequestAdapterOptions =
ev.data.defaultRequestAdapterOptions;
setDefaultRequestAdapterOptions(defaultRequestAdapterOptions);
@@ -79,5 +83,17 @@ self.onmessage = async (ev) => {
} catch (err) {
error = err.toString();
}
- self.postMessage({ error });
+ this.postMessage({ error });
+}
+
+self.onmessage = (ev) => {
+ void reportTestResults.call(ev.source || self, ev);
+};
+
+self.onconnect = (event) => {
+ const port = event.ports[0];
+
+ port.onmessage = (ev) => {
+ void reportTestResults.call(port, ev);
+ };
}; \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.spec.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.spec.js
index 56d07640e4..43d796f828 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.spec.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker.spec.js
@@ -1,35 +1,67 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
**/export const description = `
-Tests WebGPU is available in a worker.
+Tests WebGPU is available in a dedicated worker and a shared worker.
-Note: The CTS test can be run in a worker by passing in worker=1 as
-a query parameter. This test is specifically to check that WebGPU
-is available in a worker.
+Note: Any CTS test can be run in a worker by passing ?worker=dedicated, ?worker=shared,
+?worker=service as a query parameter. The tests in this file are specifically to check
+that WebGPU is available in each worker type. When run in combination with a ?worker flag,
+they will test workers created from other workers (where APIs exist to do so).
+
+TODO[2]: Figure out how to make these tests run in service workers (not actually
+important unless service workers gain the ability to launch other workers).
`;import { Fixture } from '../../../common/framework/fixture.js';
import { makeTestGroup } from '../../../common/framework/test_group.js';
import { assert } from '../../../common/util/util.js';
export const g = makeTestGroup(Fixture);
-function isNode() {
- return typeof process !== 'undefined' && process?.versions?.node !== undefined;
-}
+const isNode = typeof process !== 'undefined' && process?.versions?.node !== undefined;
+
+// [1]: we load worker_launcher dynamically because ts-node support
+// is using commonjs which doesn't support import.meta. Further,
+// we need to put the url in a string and pass the string to import
+// otherwise typescript tries to parse the file which again, fails.
+// worker_launcher.js is excluded in node.tsconfig.json.
+
+// [2]: That hack does not work in Service Workers.
+const isServiceWorker = globalThis.constructor.name === 'ServiceWorkerGlobalScope';
-g.test('worker').
-desc(`test WebGPU is available in DedicatedWorkers and check for basic functionality`).
+g.test('dedicated_worker').
+desc(`test WebGPU is available in dedicated workers and check for basic functionality`).
fn(async (t) => {
- if (isNode()) {
- t.skip('node does not support 100% compatible workers');
- return;
- }
- // Note: we load worker_launcher dynamically because ts-node support
- // is using commonjs which doesn't support import.meta. Further,
- // we need to put the url in a string add pass the string to import
- // otherwise typescript tries to parse the file which again, fails.
- // worker_launcher.js is excluded in node.tsconfig.json.
+ t.skipIf(isNode, 'node does not support 100% compatible workers');
+
+ t.skipIf(isServiceWorker, 'Service workers do not support this import() hack'); // [2]
const url = './worker_launcher.js';
- const { launchWorker } = await import(url);
- const result = await launchWorker();
+ const { launchDedicatedWorker } = await import(url); // [1]
+
+ const result = await launchDedicatedWorker();
+ assert(result.error === undefined, `should be no error from worker but was: ${result.error}`);
+});
+
+g.test('shared_worker').
+desc(`test WebGPU is available in shared workers and check for basic functionality`).
+fn(async (t) => {
+ t.skipIf(isNode, 'node does not support 100% compatible workers');
+
+ t.skipIf(isServiceWorker, 'Service workers do not support this import() hack'); // [2]
+ const url = './worker_launcher.js';
+ const { launchSharedWorker } = await import(url); // [1]
+
+ const result = await launchSharedWorker();
+ assert(result.error === undefined, `should be no error from worker but was: ${result.error}`);
+});
+
+g.test('service_worker').
+desc(`test WebGPU is available in service workers and check for basic functionality`).
+fn(async (t) => {
+ t.skipIf(isNode, 'node does not support 100% compatible workers');
+
+ t.skipIf(isServiceWorker, 'Service workers do not support this import() hack'); // [2]
+ const url = './worker_launcher.js';
+ const { launchServiceWorker } = await import(url); // [1]
+
+ const result = await launchServiceWorker();
assert(result.error === undefined, `should be no error from worker but was: ${result.error}`);
}); \ No newline at end of file
diff --git a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker_launcher.js b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker_launcher.js
index 11c4a4e7e3..2024a96f8e 100644
--- a/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker_launcher.js
+++ b/testing/web-platform/mozilla/tests/webgpu/webgpu/web_platform/worker/worker_launcher.js
@@ -1,10 +1,15 @@
/**
* AUTO-GENERATED - DO NOT EDIT. Source: https://github.com/gpuweb/cts
-**/import { getDefaultRequestAdapterOptions } from '../../../common/util/navigator_gpu.js';
+**/import { SkipTestCase } from '../../../common/framework/fixture.js';import { getDefaultRequestAdapterOptions } from '../../../common/util/navigator_gpu.js';
-export async function launchWorker() {
+
+export async function launchDedicatedWorker() {
+ if (typeof Worker === 'undefined') {
+ throw new SkipTestCase(`Worker undefined in context ${globalThis.constructor.name}`);
+ }
+
const selfPath = import.meta.url;
const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
const workerPath = selfPathDir + '/worker.js';
@@ -15,4 +20,56 @@ export async function launchWorker() {
});
worker.postMessage({ defaultRequestAdapterOptions: getDefaultRequestAdapterOptions() });
return await promise;
+}
+
+export async function launchSharedWorker() {
+ if (typeof SharedWorker === 'undefined') {
+ throw new SkipTestCase(`SharedWorker undefined in context ${globalThis.constructor.name}`);
+ }
+
+ const selfPath = import.meta.url;
+ const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
+ const workerPath = selfPathDir + '/worker.js';
+ const worker = new SharedWorker(workerPath, { type: 'module' });
+
+ const port = worker.port;
+ const promise = new Promise((resolve) => {
+ port.addEventListener('message', (ev) => resolve(ev.data), { once: true });
+ });
+ port.start();
+ port.postMessage({
+ defaultRequestAdapterOptions: getDefaultRequestAdapterOptions()
+ });
+ return await promise;
+}
+
+export async function launchServiceWorker() {
+ if (typeof navigator === 'undefined' || typeof navigator.serviceWorker === 'undefined') {
+ throw new SkipTestCase(
+ `navigator.serviceWorker undefined in context ${globalThis.constructor.name}`
+ );
+ }
+
+ const selfPath = import.meta.url;
+ const selfPathDir = selfPath.substring(0, selfPath.lastIndexOf('/'));
+ const serviceWorkerPath = selfPathDir + '/worker.js';
+ const registration = await navigator.serviceWorker.register(serviceWorkerPath, {
+ type: 'module'
+ });
+ await registration.update();
+
+ const promise = new Promise((resolve) => {
+ navigator.serviceWorker.addEventListener(
+ 'message',
+ (ev) => {
+ resolve(ev.data);
+ void registration.unregister();
+ },
+ { once: true }
+ );
+ });
+ registration.active?.postMessage({
+ defaultRequestAdapterOptions: getDefaultRequestAdapterOptions()
+ });
+ return await promise;
} \ No newline at end of file
diff --git a/testing/web-platform/tests/.azure-pipelines.yml b/testing/web-platform/tests/.azure-pipelines.yml
index 1a21d2f7a0..36e745a87f 100644
--- a/testing/web-platform/tests/.azure-pipelines.yml
+++ b/testing/web-platform/tests/.azure-pipelines.yml
@@ -39,7 +39,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/affected_tests.yml
parameters:
artifactName: 'safari-preview-affected-tests'
@@ -56,7 +56,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/affected_tests.yml
parameters:
checkoutCommit: 'HEAD^1'
@@ -77,7 +77,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- script: |
set -eux -o pipefail
@@ -98,7 +98,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_fonts.yml
- template: tools/ci/azure/install_certs.yml
@@ -132,8 +132,8 @@ jobs:
- template: tools/ci/azure/publish_logs.yml
- template: tools/ci/azure/sysdiagnose.yml
-- job: tools_unittest_mac_py37
- displayName: 'tools/ unittests: macOS + Python 3.7'
+- job: tools_unittest_mac_py38
+ displayName: 'tools/ unittests: macOS + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.tools_unittest']
pool:
@@ -141,15 +141,15 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/
- toxenv: py37
+ toxenv: py38
- job: tools_unittest_mac_py311
- displayName: 'tools/ unittests: macOS + Python 3.11'
+ displayName: 'tools/ unittests: macOS + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.tools_unittest']
pool:
@@ -157,15 +157,15 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/
toxenv: py311
-- job: wptrunner_unittest_mac_py37
- displayName: 'tools/wptrunner/ unittests: macOS + Python 3.7'
+- job: wptrunner_unittest_mac_py38
+ displayName: 'tools/wptrunner/ unittests: macOS + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wptrunner_unittest']
pool:
@@ -173,15 +173,15 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/wptrunner/
- toxenv: py37
+ toxenv: py38
- job: wptrunner_unittest_mac_py311
- displayName: 'tools/wptrunner/ unittests: macOS + Python 3.11'
+ displayName: 'tools/wptrunner/ unittests: macOS + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wptrunner_unittest']
pool:
@@ -189,15 +189,15 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/wptrunner/
toxenv: py311
-- job: wpt_integration_mac_py37
- displayName: 'tools/wpt/ tests: macOS + Python 3.7'
+- job: wpt_integration_mac_py38
+ displayName: 'tools/wpt/ tests: macOS + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wpt_integration']
pool:
@@ -206,7 +206,7 @@ jobs:
# full checkout required
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
- template: tools/ci/azure/install_chrome.yml
- template: tools/ci/azure/install_firefox.yml
- template: tools/ci/azure/update_hosts.yml
@@ -214,10 +214,10 @@ jobs:
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/wpt/
- toxenv: py37
+ toxenv: py38
- job: wpt_integration_mac_py311
- displayName: 'tools/wpt/ tests: macOS + Python 3.11'
+ displayName: 'tools/wpt/ tests: macOS + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wpt_integration']
pool:
@@ -226,7 +226,7 @@ jobs:
# full checkout required
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/install_chrome.yml
- template: tools/ci/azure/install_firefox.yml
- template: tools/ci/azure/update_hosts.yml
@@ -236,8 +236,8 @@ jobs:
directory: tools/wpt/
toxenv: py311
-- job: tools_unittest_win_py37
- displayName: 'tools/ unittests: Windows + Python 3.7'
+- job: tools_unittest_win_py38
+ displayName: 'tools/ unittests: Windows + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.tools_unittest']
pool:
@@ -247,16 +247,16 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
addToPath: false
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/
- toxenv: py37
+ toxenv: py38
- job: tools_unittest_win_py311
- displayName: 'tools/ unittests: Windows + Python 3.11'
+ displayName: 'tools/ unittests: Windows + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.tools_unittest']
pool:
@@ -264,7 +264,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
addToPath: false
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
@@ -272,8 +272,8 @@ jobs:
directory: tools/
toxenv: py311
-- job: wptrunner_unittest_win_py37
- displayName: 'tools/wptrunner/ unittests: Windows + Python 3.7'
+- job: wptrunner_unittest_win_py38
+ displayName: 'tools/wptrunner/ unittests: Windows + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wptrunner_unittest']
pool:
@@ -281,16 +281,16 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
addToPath: false
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/wptrunner/
- toxenv: py37
+ toxenv: py38
- job: wptrunner_unittest_win_py311
- displayName: 'tools/wptrunner/ unittests: Windows + Python 3.11'
+ displayName: 'tools/wptrunner/ unittests: Windows + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wptrunner_unittest']
pool:
@@ -298,7 +298,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
addToPath: false
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/tox_pytest.yml
@@ -306,8 +306,8 @@ jobs:
directory: tools/wptrunner/
toxenv: py311
-- job: wpt_integration_win_py37
- displayName: 'tools/wpt/ tests: Windows + Python 3.7'
+- job: wpt_integration_win_py38
+ displayName: 'tools/wpt/ tests: Windows + Python 3.8'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wpt_integration']
pool:
@@ -316,7 +316,7 @@ jobs:
# full checkout required
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.7'
+ versionSpec: '3.8'
# currently just using the outdated Chrome/Firefox on the VM rather than
# figuring out how to install Chrome Dev channel on Windows
# - template: tools/ci/azure/install_chrome.yml
@@ -326,10 +326,10 @@ jobs:
- template: tools/ci/azure/tox_pytest.yml
parameters:
directory: tools/wpt/
- toxenv: py37
+ toxenv: py38
- job: wpt_integration_win_py311
- displayName: 'tools/wpt/ tests: Windows + Python 3.11'
+ displayName: 'tools/wpt/ tests: Windows + Python 3.12'
dependsOn: decision
condition: dependencies.decision.outputs['test_jobs.wpt_integration']
pool:
@@ -338,7 +338,7 @@ jobs:
# full checkout required
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
# currently just using the outdated Chrome/Firefox on the VM rather than
# figuring out how to install Chrome Dev channel on Windows
# - template: tools/ci/azure/install_chrome.yml
@@ -364,7 +364,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/system_info.yml
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
@@ -373,7 +373,7 @@ jobs:
channel: stable
- template: tools/ci/azure/update_hosts.yml
- template: tools/ci/azure/update_manifest.yml
- - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel stable edgechromium
+ - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel stable edge
displayName: 'Run tests (Edge Stable)'
- task: PublishBuildArtifacts@1
displayName: 'Publish results'
@@ -400,7 +400,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/system_info.yml
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
@@ -409,7 +409,7 @@ jobs:
channel: dev
- template: tools/ci/azure/update_hosts.yml
- template: tools/ci/azure/update_manifest.yml
- - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel dev edgechromium
+ - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel dev edge
displayName: 'Run tests (Edge Dev)'
- task: PublishBuildArtifacts@1
displayName: 'Publish results'
@@ -436,7 +436,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
- template: tools/ci/azure/install_edge.yml
@@ -444,7 +444,7 @@ jobs:
channel: canary
- template: tools/ci/azure/update_hosts.yml
- template: tools/ci/azure/update_manifest.yml
- - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel canary edgechromium
+ - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel canary edge
displayName: 'Run tests (Edge Canary)'
- task: PublishBuildArtifacts@1
displayName: 'Publish results'
@@ -471,7 +471,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
- template: tools/ci/azure/color_profile.yml
@@ -511,7 +511,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
- template: tools/ci/azure/color_profile.yml
@@ -548,7 +548,7 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
- versionSpec: '3.11'
+ versionSpec: '3.12'
- template: tools/ci/azure/checkout.yml
- template: tools/ci/azure/install_certs.yml
- template: tools/ci/azure/color_profile.yml
diff --git a/testing/web-platform/tests/.github/workflows/documentation.yml b/testing/web-platform/tests/.github/workflows/documentation.yml
index 0efa736ade..eecf8ea636 100644
--- a/testing/web-platform/tests/.github/workflows/documentation.yml
+++ b/testing/web-platform/tests/.github/workflows/documentation.yml
@@ -19,7 +19,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
- python-version: '3.11'
+ python-version: '3.12'
- name: Set up Node
uses: actions/setup-node@v4
with:
diff --git a/testing/web-platform/tests/.github/workflows/interfaces.yml b/testing/web-platform/tests/.github/workflows/interfaces.yml
index 04636e0bb3..ff2a679b59 100644
--- a/testing/web-platform/tests/.github/workflows/interfaces.yml
+++ b/testing/web-platform/tests/.github/workflows/interfaces.yml
@@ -15,7 +15,7 @@ jobs:
- name: Create pull request
# Use a conditional step instead of a conditional job to work around #20700.
if: github.repository == 'web-platform-tests/wpt'
- uses: peter-evans/create-pull-request@v5
+ uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
author: wpt-pr-bot <wpt-pr-bot@users.noreply.github.com>
diff --git a/testing/web-platform/tests/.github/workflows/manifest.yml b/testing/web-platform/tests/.github/workflows/manifest.yml
index 597259eb72..aae43615a9 100644
--- a/testing/web-platform/tests/.github/workflows/manifest.yml
+++ b/testing/web-platform/tests/.github/workflows/manifest.yml
@@ -13,7 +13,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
- python-version: '3.11'
+ python-version: '3.12'
- name: Checkout
uses: actions/checkout@v4
with:
diff --git a/testing/web-platform/tests/.github/workflows/regen_certs.yml b/testing/web-platform/tests/.github/workflows/regen_certs.yml
index d3e1240e79..bb0cea9f39 100644
--- a/testing/web-platform/tests/.github/workflows/regen_certs.yml
+++ b/testing/web-platform/tests/.github/workflows/regen_certs.yml
@@ -12,7 +12,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
- python-version: '3.11'
+ python-version: '3.12'
- name: Checkout
uses: actions/checkout@v4
- name: Regenerate certs
@@ -24,7 +24,7 @@ jobs:
- name: Commit and create pull request
# Use a conditional step instead of a conditional job to work around #20700.
if: github.repository == 'web-platform-tests/wpt'
- uses: peter-evans/create-pull-request@v5
+ uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
author: wpt-pr-bot <wpt-pr-bot@users.noreply.github.com>
diff --git a/testing/web-platform/tests/FileAPI/blob/Blob-constructor.any.js b/testing/web-platform/tests/FileAPI/blob/Blob-constructor.any.js
index d16f760cae..6dc44e8e15 100644
--- a/testing/web-platform/tests/FileAPI/blob/Blob-constructor.any.js
+++ b/testing/web-platform/tests/FileAPI/blob/Blob-constructor.any.js
@@ -290,10 +290,11 @@ test_blob(function() {
new Int16Array([0x4150, 0x5353]),
new Uint32Array([0x53534150]),
new Int32Array([0x53534150]),
+ new Float16Array([2.65625, 58.59375]),
new Float32Array([0xD341500000])
]);
}, {
- expected: "PASSPASSPASSPASSPASSPASSPASS",
+ expected: "PASSPASSPASSPASSPASSPASSPASSPASS",
type: "",
desc: "Passing typed arrays as elements of the blobParts array should work."
});
diff --git a/testing/web-platform/tests/IndexedDB/idb-binary-key-detached.htm b/testing/web-platform/tests/IndexedDB/idb-binary-key-detached.htm
index ac6fc2ef98..a4ce3fbce0 100644
--- a/testing/web-platform/tests/IndexedDB/idb-binary-key-detached.htm
+++ b/testing/web-platform/tests/IndexedDB/idb-binary-key-detached.htm
@@ -23,7 +23,7 @@ indexeddb_test(
worker.postMessage('', [buffer]);
assert_equals(array.byteLength, 0);
- assert_throws_js(TypeError, () => { store.put('', buffer); });
+ assert_throws_dom("DataError", () => { store.put('', buffer); });
t.done();
},
'Detached ArrayBuffer'
@@ -43,7 +43,7 @@ indexeddb_test(
worker.postMessage('', [array.buffer]);
assert_equals(array.length, 0);
- assert_throws_js(TypeError, () => { store.put('', array); });
+ assert_throws_dom("DataError", () => { store.put('', array); });
t.done();
},
'Detached TypedArray'
diff --git a/testing/web-platform/tests/IndexedDB/idb-binary-key-roundtrip.htm b/testing/web-platform/tests/IndexedDB/idb-binary-key-roundtrip.htm
index de3889a71c..d1bf4016f9 100644
--- a/testing/web-platform/tests/IndexedDB/idb-binary-key-roundtrip.htm
+++ b/testing/web-platform/tests/IndexedDB/idb-binary-key-roundtrip.htm
@@ -83,6 +83,7 @@ function view_type_test(type) {
'Int16Array',
'Uint32Array',
'Int32Array',
+ 'Float16Array',
'Float32Array',
'Float64Array'
].forEach((type) => { view_type_test(type); });
diff --git a/testing/web-platform/tests/IndexedDB/serialize-sharedarraybuffer-throws.https.html b/testing/web-platform/tests/IndexedDB/serialize-sharedarraybuffer-throws.https.html
index 613ddfe99d..bff63fad8d 100644
--- a/testing/web-platform/tests/IndexedDB/serialize-sharedarraybuffer-throws.https.html
+++ b/testing/web-platform/tests/IndexedDB/serialize-sharedarraybuffer-throws.https.html
@@ -13,7 +13,7 @@
let open_rq = createdb(t);
open_rq.onupgradeneeded = function(e) {
let db = e.target.result;
- let objStore = db.createObjectStore("test", { keyPath:"pKey" });
+ let objStore = db.createObjectStore("test");
let sab = new SharedArrayBuffer(256);
diff --git a/testing/web-platform/tests/IndexedDB/structured-clone.any.js b/testing/web-platform/tests/IndexedDB/structured-clone.any.js
index 15ab0359e2..8ab73ac57a 100644
--- a/testing/web-platform/tests/IndexedDB/structured-clone.any.js
+++ b/testing/web-platform/tests/IndexedDB/structured-clone.any.js
@@ -169,7 +169,7 @@ cloneObjectTest(new Uint8Array([0, 1, 254, 255]).buffer, (orig, clone) => {
// TODO SharedArrayBuffer
// Array Buffer Views
-[
+let byteArrays = [
new Uint8Array([]),
new Uint8Array([0, 1, 254, 255]),
new Uint16Array([0x0000, 0x0001, 0xFFFE, 0xFFFF]),
@@ -181,7 +181,14 @@ cloneObjectTest(new Uint8Array([0, 1, 254, 255]).buffer, (orig, clone) => {
new Float32Array([-Infinity, -1.5, -1, -0.5, 0, 0.5, 1, 1.5, Infinity, NaN]),
new Float64Array([-Infinity, -Number.MAX_VALUE, -Number.MIN_VALUE, 0,
Number.MIN_VALUE, Number.MAX_VALUE, Infinity, NaN])
-].forEach(value => cloneObjectTest(value, (orig, clone) => {
+]
+
+if (typeof Float16Array !== 'undefined') {
+ byteArrays.push(
+ new Float16Array([-Infinity, -1.5, -1, -0.5, 0, 0.5, 1, 1.5, Infinity, NaN]));
+}
+
+byteArrays.forEach(value => cloneObjectTest(value, (orig, clone) => {
assert_array_equals(orig, clone);
}));
diff --git a/testing/web-platform/tests/WebCryptoAPI/getRandomValues.any.js b/testing/web-platform/tests/WebCryptoAPI/getRandomValues.any.js
index 1a3370ea13..2b82b9bedb 100644
--- a/testing/web-platform/tests/WebCryptoAPI/getRandomValues.any.js
+++ b/testing/web-platform/tests/WebCryptoAPI/getRandomValues.any.js
@@ -1,6 +1,9 @@
// Step 1.
test(function() {
assert_throws_dom("TypeMismatchError", function() {
+ self.crypto.getRandomValues(new Float16Array(6))
+ }, "Float16Array")
+ assert_throws_dom("TypeMismatchError", function() {
self.crypto.getRandomValues(new Float32Array(6))
}, "Float32Array")
assert_throws_dom("TypeMismatchError", function() {
@@ -8,6 +11,10 @@ test(function() {
}, "Float64Array")
assert_throws_dom("TypeMismatchError", function() {
+ const len = 65536 / Float16Array.BYTES_PER_ELEMENT + 1;
+ self.crypto.getRandomValues(new Float16Array(len));
+ }, "Float16Array (too long)")
+ assert_throws_dom("TypeMismatchError", function() {
const len = 65536 / Float32Array.BYTES_PER_ELEMENT + 1;
self.crypto.getRandomValues(new Float32Array(len));
}, "Float32Array (too long)")
diff --git a/testing/web-platform/tests/accessibility/crashtests/detached-line.html b/testing/web-platform/tests/accessibility/crashtests/detached-line.html
new file mode 100644
index 0000000000..a6a7520c0d
--- /dev/null
+++ b/testing/web-platform/tests/accessibility/crashtests/detached-line.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<style>
+div:before { position: absolute; content: 'x'; }
+</style>
+<!--
+<img usemap="#map1">
+ <map>
+ <caption>
+ <map name=child-map>
+ yz
+ </map>
+ </caption>
+ </map>
+-->
+<script>
+window.addEventListener('load', () => {
+ const caption = document.createElement('caption');
+ const childMap = document.createElement('map');
+ childMap.setAttribute('name', 'child-map');
+ const map2 = document.createElement('map');
+ document.documentElement.appendChild(map2);
+ const img = document.createElement('img');
+ img.setAttribute('usemap', '#child-map');
+ childMap.appendChild(document.createTextNode('yz'));
+ document.documentElement.appendChild(img);
+ caption.appendChild(childMap);
+ map2.appendChild(caption);
+});
+</script>
diff --git a/testing/web-platform/tests/accname/name/comp_name_from_content.html b/testing/web-platform/tests/accname/name/comp_name_from_content.html
index 3504658ea4..2f6b3ab6b4 100644
--- a/testing/web-platform/tests/accname/name/comp_name_from_content.html
+++ b/testing/web-platform/tests/accname/name/comp_name_from_content.html
@@ -239,7 +239,7 @@
<span class="note" id="crossref_link">link</span><!-- this text is skipped the first time around because of aria-labelledby on parent element -->
</a>
<!-- but it's picked up again in inverse order b/c of cross-referencial aria-labelledby edge case -->
- <img id="nested_image_label_3" alt="image" aria-labelledby="crossref_link" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==">
+ <img id="nested_image_label3" alt="image" aria-labelledby="crossref_link" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==">
</h3>
<!-- self-referencial edge case-->
diff --git a/testing/web-platform/tests/accname/name/comp_text_node.html b/testing/web-platform/tests/accname/name/comp_text_node.html
index a31f9e0245..f9cb8f1baf 100644
--- a/testing/web-platform/tests/accname/name/comp_text_node.html
+++ b/testing/web-platform/tests/accname/name/comp_text_node.html
@@ -101,11 +101,11 @@
<br>
<h1>text node, with leading/trailing non-breaking space</h1>
-<span role="button" tabindex="0" class="ex" data-expectedlabel="button&nbsp;label" data-testname="span[role=button] with text node, with leading/trailing non-breaking space">&nbsp;button&nbsp;label&nbsp;</span>
-<div role="heading" class="ex" data-expectedlabel="heading&nbsp;label" data-testname="div[role=heading] with text node, with leading/trailing non-breaking space">&nbsp;heading&nbsp;label&nbsp;</div>
-<button class="ex" data-expectedlabel="button&nbsp;label" data-testname="button with text node, with leading/trailing non-breaking space">&nbsp;button&nbsp;label&nbsp;</button>
-<h3 class="ex" data-expectedlabel="heading&nbsp;label" data-testname="heading with text node, with leading/trailing non-breaking space">&nbsp;heading&nbsp;label&nbsp;</h3>
-<a href="#" class="ex" data-expectedlabel="link&nbsp;label" data-testname="link with text node, with leading/trailing non-breaking space">&nbsp;link&nbsp;label&nbsp;</a>
+<span role="button" tabindex="0" class="ex" data-expectedlabel="&nbsp;button&nbsp;label&nbsp;" data-testname="span[role=button] with text node, with leading/trailing non-breaking space">&nbsp;button&nbsp;label&nbsp;</span>
+<div role="heading" class="ex" data-expectedlabel="&nbsp;heading&nbsp;label&nbsp;" data-testname="div[role=heading] with text node, with leading/trailing non-breaking space">&nbsp;heading&nbsp;label&nbsp;</div>
+<button class="ex" data-expectedlabel="&nbsp;button&nbsp;label&nbsp;" data-testname="button with text node, with leading/trailing non-breaking space">&nbsp;button&nbsp;label&nbsp;</button>
+<h3 class="ex" data-expectedlabel="&nbsp;heading&nbsp;label&nbsp;" data-testname="heading with text node, with leading/trailing non-breaking space">&nbsp;heading&nbsp;label&nbsp;</h3>
+<a href="#" class="ex" data-expectedlabel="&nbsp;link&nbsp;label&nbsp;" data-testname="link with text node, with leading/trailing non-breaking space">&nbsp;link&nbsp;label&nbsp;</a>
<br>
<h1>text node, with mixed space and non-breaking space</h1>
diff --git a/testing/web-platform/tests/attribution-reporting/referrer-policy.sub.https.html b/testing/web-platform/tests/attribution-reporting/referrer-policy.sub.https.html
new file mode 100644
index 0000000000..ee4e0c9a8c
--- /dev/null
+++ b/testing/web-platform/tests/attribution-reporting/referrer-policy.sub.https.html
@@ -0,0 +1,56 @@
+<!doctype html>
+<meta charset=utf-8>
+<meta name=timeout content=long>
+<meta name=variant content="?method=a">
+<meta name=variant content="?method=a&noreferrer">
+<meta name=variant content="?method=img">
+<meta name=variant content="?method=img&noreferrer">
+<meta name=variant content="?method=open">
+<meta name=variant content="?method=open&noreferrer">
+<meta name=variant content="?method=script">
+<meta name=variant content="?method=script&noreferrer">
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/helpers.js"></script>
+<body>
+<script>
+const waitForRequest = async () => {
+ const url = blankURL();
+ url.searchParams.set('get-requests', 'true');
+
+ for (let i = 0; i < 20; i++) {
+ const resp = await fetch(url);
+ const payload = await resp.json();
+ if (payload !== null && payload.length > 0) {
+ return payload;
+ }
+ await delay(100);
+ }
+ throw new Error('Timeout polling requests');
+};
+
+const searchParams = new URLSearchParams(location.search);
+
+promise_test(async t => {
+ const noreferrer = searchParams.has('noreferrer');
+
+ await registerAttributionSrc({
+ method: 'variant',
+ extraQueryParams: {'store-request': 'true'},
+ referrerPolicy: noreferrer ? 'no-referrer' : '',
+ });
+
+ const requests = await waitForRequest();
+ assert_equals(requests.length, 1);
+
+ if (noreferrer) {
+ assert_not_own_property(requests[0], 'referer');
+ } else {
+ assert_own_property(requests[0], 'referer');
+ assert_equals(requests[0].referer, location.toString());
+ }
+
+}, 'attributionsrc referrer policy is propagated.');
+</script>
diff --git a/testing/web-platform/tests/attribution-reporting/request-format.sub.https.html b/testing/web-platform/tests/attribution-reporting/request-format.sub.https.html
index a9e36dd126..83a2d8f6bd 100644
--- a/testing/web-platform/tests/attribution-reporting/request-format.sub.https.html
+++ b/testing/web-platform/tests/attribution-reporting/request-format.sub.https.html
@@ -53,9 +53,7 @@ promise_test(async t => {
} else {
assert_not_own_property(requests[0], 'attribution-reporting-eligible');
}
- assert_equals(requests[0].referer, location.toString());
- // TODO(apaseltiner): Test various referrer policies.
// TODO(apaseltiner): Test cookie propagation.
const expectedURL = blankURL();
diff --git a/testing/web-platform/tests/attribution-reporting/resources/helpers.js b/testing/web-platform/tests/attribution-reporting/resources/helpers.js
index e5c749931e..054df6b972 100644
--- a/testing/web-platform/tests/attribution-reporting/resources/helpers.js
+++ b/testing/web-platform/tests/attribution-reporting/resources/helpers.js
@@ -171,6 +171,7 @@ const registerAttributionSrc = async ({
extraQueryParams = {},
reportingOrigin,
extraHeaders = [],
+ referrerPolicy = '',
}) => {
const searchParams = new URLSearchParams(location.search);
@@ -201,7 +202,6 @@ const registerAttributionSrc = async ({
headers.push({name, value: cookie});
}
-
let credentials;
if (method === 'fetch') {
const params = getFetchParams(reportingOrigin, cookie);
@@ -219,6 +219,7 @@ const registerAttributionSrc = async ({
switch (method) {
case 'img':
const img = document.createElement('img');
+ img.referrerPolicy = referrerPolicy;
if (eligible === null) {
img.attributionSrc = url;
} else {
@@ -236,6 +237,7 @@ const registerAttributionSrc = async ({
return 'event';
case 'script':
const script = document.createElement('script');
+ script.referrerPolicy = referrerPolicy;
if (eligible === null) {
script.attributionSrc = url;
} else {
@@ -249,6 +251,7 @@ const registerAttributionSrc = async ({
return 'event';
case 'a':
const a = document.createElement('a');
+ a.referrerPolicy = referrerPolicy;
a.target = '_blank';
a.textContent = 'link';
if (eligible === null) {
@@ -263,12 +266,13 @@ const registerAttributionSrc = async ({
return 'navigation';
case 'open':
await test_driver.bless('open window', () => {
+ const feature = referrerPolicy === 'no-referrer' ? 'noreferrer' : '';
if (eligible === null) {
open(
blankURL(), '_blank',
- `attributionsrc=${encodeURIComponent(url)}`);
+ `attributionsrc=${encodeURIComponent(url)} ${feature}`);
} else {
- open(url, '_blank', 'attributionsrc');
+ open(url, '_blank', `attributionsrc ${feature}`);
}
});
return 'navigation';
@@ -277,7 +281,7 @@ const registerAttributionSrc = async ({
if (eligible !== null) {
attributionReporting = JSON.parse(eligible);
}
- await fetch(url, {credentials, attributionReporting});
+ await fetch(url, {credentials, attributionReporting, referrerPolicy});
return 'event';
}
case 'xhr':
diff --git a/testing/web-platform/tests/clipboard-apis/clipboard-item.https.html b/testing/web-platform/tests/clipboard-apis/clipboard-item.https.html
index 7e148703a2..78acd1104a 100644
--- a/testing/web-platform/tests/clipboard-apis/clipboard-item.https.html
+++ b/testing/web-platform/tests/clipboard-apis/clipboard-item.https.html
@@ -96,21 +96,28 @@ promise_test(async () => {
assert_equals(text, 'xxx');
}, "getType(DOMString invalid type) converts DOMString to Blob");
-promise_test(async () => {
- assert_true(ClipboardItem.supports('text/plain'));
- assert_true(ClipboardItem.supports('text/html'));
- assert_true(ClipboardItem.supports('image/png'));
- assert_true(ClipboardItem.supports('image/svg+xml'));
- assert_false(ClipboardItem.supports('web '));
- assert_false(ClipboardItem.supports('web')); // without space.
- assert_false(ClipboardItem.supports('web foo'));
- assert_false(ClipboardItem.supports('foo/bar'));
- assert_true(ClipboardItem.supports('web foo/bar'));
- assert_true(ClipboardItem.supports('web text/html'));
- assert_false(ClipboardItem.supports('weB text/html'));
- assert_false(ClipboardItem.supports(' web text/html'));
- assert_false(ClipboardItem.supports('not a/real type'));
- assert_false(ClipboardItem.supports(''));
- assert_false(ClipboardItem.supports(' '));
-}, "supports(DOMString) returns true for types that are supported, false otherwise");
+[
+ // mandatory data types
+ ['text/plain', true],
+ ['text/html', true],
+ ['image/png', true],
+ // optional data types
+ ['image/svg+xml', true],
+ ['web foo/bar', true],
+ ['web text/html', true],
+ // invalid types
+ ['web ', false],
+ ['web', false],
+ ['web foo', false],
+ ['foo/bar', false],
+ ['weB text/html', false],
+ [' web text/html', false],
+ ['not a/real type', false],
+ ['', false],
+ [' ', false],
+].forEach(([type, result]) => {
+ promise_test(async () => {
+ assert_equals(ClipboardItem.supports(type), result);
+ }, `supports(${type}) returns ${result ? "true" : "false"}`);
+});
</script>
diff --git a/testing/web-platform/tests/close-watcher/abortsignal.html b/testing/web-platform/tests/close-watcher/abortsignal.html
index 9229b37cf6..ec360f483d 100644
--- a/testing/web-platform/tests/close-watcher/abortsignal.html
+++ b/testing/web-platform/tests/close-watcher/abortsignal.html
@@ -49,7 +49,7 @@ test(() => {
watcher.requestClose();
controller.abort();
- assert_equals(oncancel_call_count_, 0);
+ assert_equals(oncancel_call_count_, 1);
assert_equals(onclose_call_count_, 1);
}, "requestClose() then abortController.abort() fires only one close event");
@@ -92,7 +92,7 @@ promise_test(async t => {
await sendCloseRequest();
controller.abort();
- assert_equals(oncancel_call_count_, 0);
+ assert_equals(oncancel_call_count_, 1);
assert_equals(onclose_call_count_, 1);
}, "Esc key then abortController.abort() fires only one close event");
diff --git a/testing/web-platform/tests/close-watcher/basic.html b/testing/web-platform/tests/close-watcher/basic.html
index 9951e54031..79a91e127e 100644
--- a/testing/web-platform/tests/close-watcher/basic.html
+++ b/testing/web-platform/tests/close-watcher/basic.html
@@ -14,8 +14,8 @@ test(t => {
watcher.requestClose();
- assert_array_equals(events, ["close"]);
-}, "requestClose() with no user activation only fires close");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
+}, "requestClose() with no user activation");
test(t => {
let events = [];
@@ -25,7 +25,7 @@ test(t => {
watcher.requestClose();
assert_array_equals(events, []);
-}, "destroy() then requestClose() fires no events");
+}, "destroy() then requestClose()");
test(t => {
let events = [];
@@ -36,18 +36,18 @@ test(t => {
watcher.requestClose();
assert_array_equals(events, ["close"]);
-}, "close() then requestClose() fires only one close event");
+}, "close() then requestClose()");
test(t => {
let events = [];
let watcher = createRecordingCloseWatcher(t, events);
watcher.requestClose();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
watcher.destroy();
- assert_array_equals(events, ["close"]);
-}, "requestClose() then destroy() fires only one close event");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
+}, "requestClose() then destroy()");
test(t => {
let events = [];
@@ -58,7 +58,7 @@ test(t => {
watcher.destroy();
assert_array_equals(events, ["close"]);
-}, "close() then destroy() fires only one close event");
+}, "close() then destroy()");
promise_test(async t => {
let events = [];
@@ -68,7 +68,7 @@ promise_test(async t => {
await sendCloseRequest();
assert_array_equals(events, []);
-}, "destroy() then close request fires no events");
+}, "destroy() then close request");
promise_test(async t => {
let events = [];
@@ -77,6 +77,6 @@ promise_test(async t => {
await sendCloseRequest();
watcher.destroy();
- assert_array_equals(events, ["close"]);
-}, "Close request then destroy() fires only one close event");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
+}, "Close request then destroy()");
</script>
diff --git a/testing/web-platform/tests/close-watcher/esc-key/keypress.html b/testing/web-platform/tests/close-watcher/esc-key/keypress.html
index 8dd58b064d..c3bfcc0c33 100644
--- a/testing/web-platform/tests/close-watcher/esc-key/keypress.html
+++ b/testing/web-platform/tests/close-watcher/esc-key/keypress.html
@@ -16,6 +16,6 @@ promise_test(async t => {
await sendEscKey();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
}, "A keypress listener can NOT prevent the Esc keypress from being interpreted as a close request");
</script>
diff --git a/testing/web-platform/tests/close-watcher/esc-key/keyup.html b/testing/web-platform/tests/close-watcher/esc-key/keyup.html
index 341012d6bc..7c75ef7969 100644
--- a/testing/web-platform/tests/close-watcher/esc-key/keyup.html
+++ b/testing/web-platform/tests/close-watcher/esc-key/keyup.html
@@ -16,6 +16,6 @@ promise_test(async t => {
await sendEscKey();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
}, "A keyup listener can NOT prevent the Esc keypress from being interpreted as a close request");
</script>
diff --git a/testing/web-platform/tests/close-watcher/esc-key/not-user-activation.html b/testing/web-platform/tests/close-watcher/esc-key/not-user-activation.html
index ac29f84f06..a8d5d22fcf 100644
--- a/testing/web-platform/tests/close-watcher/esc-key/not-user-activation.html
+++ b/testing/web-platform/tests/close-watcher/esc-key/not-user-activation.html
@@ -14,6 +14,6 @@ promise_test(async t => {
await sendEscKey();
- assert_array_equals(events, ["close"]);
-}, "Esc key does not count as user activation, so if it is the sole user interaction, that fires close but not cancel");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
+}, "Esc key does not count as user activation, so if it is the sole user interaction, cancel is cancelable=false");
</script>
diff --git a/testing/web-platform/tests/close-watcher/inside-event-listeners.html b/testing/web-platform/tests/close-watcher/inside-event-listeners.html
index ac037fc147..47f431e250 100644
--- a/testing/web-platform/tests/close-watcher/inside-event-listeners.html
+++ b/testing/web-platform/tests/close-watcher/inside-event-listeners.html
@@ -17,10 +17,10 @@ promise_test(async t => {
await test_driver.bless("give user activation so that cancel will fire", () => {
watcher.requestClose();
});
- assert_array_equals(events, ["cancel"]);
+ assert_array_equals(events, ["cancel[cancelable=true]"]);
watcher.requestClose();
- assert_array_equals(events, ["cancel"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=true]"], "since it was inactive, no more events fired");
}, "destroy() inside oncancel");
test(t => {
@@ -30,10 +30,10 @@ test(t => {
watcher.onclose = () => { watcher.destroy(); }
watcher.requestClose();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
watcher.requestClose();
- assert_array_equals(events, ["close"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"], "since it was inactive, no more events fired");
}, "destroy() inside onclose");
promise_test(async t => {
@@ -45,10 +45,10 @@ promise_test(async t => {
await test_driver.bless("give user activation so that cancel will fire", () => {
watcher.requestClose();
});
- assert_array_equals(events, ["cancel", "close"]);
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"]);
watcher.requestClose();
- assert_array_equals(events, ["cancel", "close"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"], "since it was inactive, no more events fired");
}, "close() inside oncancel");
test(t => {
@@ -58,10 +58,10 @@ test(t => {
watcher.onclose = () => { watcher.close(); }
watcher.requestClose();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
watcher.requestClose();
- assert_array_equals(events, ["close"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"], "since it was inactive, no more events fired");
}, "close() inside onclose");
promise_test(async t => {
@@ -73,10 +73,10 @@ promise_test(async t => {
await test_driver.bless("give user activation so that cancel will fire", () => {
watcher.requestClose();
});
- assert_array_equals(events, ["cancel", "close"]);
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"]);
watcher.requestClose();
- assert_array_equals(events, ["cancel", "close"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"], "since it was inactive, no more events fired");
}, "requestClose() inside oncancel");
test(t => {
@@ -86,9 +86,9 @@ test(t => {
watcher.onclose = () => { watcher.requestClose(); }
watcher.requestClose();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
watcher.requestClose();
- assert_array_equals(events, ["close"], "since it was inactive, no more events fired");
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"], "since it was inactive, no more events fired");
}, "requestClose() inside onclose");
</script>
diff --git a/testing/web-platform/tests/close-watcher/resources/helpers.js b/testing/web-platform/tests/close-watcher/resources/helpers.js
index dd9e191c4d..ad80c28847 100644
--- a/testing/web-platform/tests/close-watcher/resources/helpers.js
+++ b/testing/web-platform/tests/close-watcher/resources/helpers.js
@@ -26,9 +26,14 @@ window.createRecordingCloseWatcher = (t, events, name, type, parentWatcher) => {
t.add_cleanup(() => watcher.destroy());
}
- const prefix = name === undefined ? "" : name + " ";
- watcher.addEventListener('cancel', () => events.push(prefix + "cancel"));
- watcher.addEventListener('close', () => events.push(prefix + "close"));
+ const prefix = name === undefined ? '' : name + ' ';
+ watcher.addEventListener('cancel', e => {
+ const cancelable = e.cancelable ? '[cancelable=true]' : '[cancelable=false]';
+ events.push(prefix + 'cancel' + cancelable);
+ });
+ watcher.addEventListener('close', () => {
+ events.push(prefix + 'close');
+ });
return watcher;
};
diff --git a/testing/web-platform/tests/close-watcher/user-activation/README.md b/testing/web-platform/tests/close-watcher/user-activation/README.md
new file mode 100644
index 0000000000..b9aa9a2123
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/README.md
@@ -0,0 +1,25 @@
+# Close watcher user activation tests
+
+These tests are all in separate files (or test variants) because we need to be
+sure we're starting from zero user activation.
+
+## Note on variants vs. `-dialog` and `-CloseWatcher` files
+
+We endeavor to have all the tests in these files cover both `<dialog>` elements
+and the `CloseWatcher` API. (And sometimes the `popover=""` attribute.)
+
+When the test expectations are the same for both `<dialog>` and `CloseWatcher`,
+we use WPT's variants feature.
+
+However, in some cases different expectations are necessary. This is because
+`<dialog>`s queue a task to fire their `close` event, and do not queue a task
+to fire their `cancel` event. Thus, when you have two `<dialog>`s grouped
+together, you get the somewhat-strange behavior of both `cancel`s firing first,
+then both `close`s. Whereas `CloseWatcher`s do not have this issue; both events
+fire synchronously.
+
+(Note that scheduling the `cancel` event for `<dialog>`s is not really possible,
+since it would then fire after the dialog has been closed in the DOM and
+visually. So the only reasonable fix for this would be to stop scheduling the
+`close` event for dialogs. That's risky from a compat standpoint, so for now,
+we test the strange behavior.)
diff --git a/testing/web-platform/tests/close-watcher/user-activation/n-activate-preventDefault.html b/testing/web-platform/tests/close-watcher/user-activation/n-activate-preventDefault.html
index 531ef42599..f413448718 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/n-activate-preventDefault.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/n-activate-preventDefault.html
@@ -22,10 +22,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["cancel"]);
+ assert_array_equals(events, ["cancel[cancelable=true]"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["cancel", "close"]);
+ assert_array_equals(events, ["cancel[cancelable=true]", "cancel[cancelable=false]", "close"]);
}, "Create a close watcher without user activation that preventDefault()s cancel; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/n-activate.html b/testing/web-platform/tests/close-watcher/user-activation/n-activate.html
index babcf54c3c..d8253ba765 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/n-activate.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/n-activate.html
@@ -22,6 +22,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["cancel", "close"]);
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"]);
}, "Create a close watcher without user activation; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/n-closerequest-n.html b/testing/web-platform/tests/close-watcher/user-activation/n-closerequest-n.html
index 2424af7820..54ccdd1abe 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/n-closerequest-n.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/n-closerequest-n.html
@@ -19,12 +19,12 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher1 close"]);
+ assert_array_equals(events, ["watcher1 cancel[cancelable=false]", "watcher1 close"]);
createRecordingCloseWatcher(t, events, "watcher2", type);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher1 close", "watcher2 close"]);
+ assert_array_equals(events, ["watcher1 cancel[cancelable=false]", "watcher1 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
}, "Create a close watcher without user activation; send a close request; create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/n-destroy-n.html b/testing/web-platform/tests/close-watcher/user-activation/n-destroy-n.html
index c26f87dd6f..e0a94f490e 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/n-destroy-n.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/n-destroy-n.html
@@ -26,6 +26,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close"]);
}, "Create a close watcher without user activation; destroy the close watcher; create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/n.html b/testing/web-platform/tests/close-watcher/user-activation/n.html
index fe04e0dc1b..af8f972ee6 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/n.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/n.html
@@ -20,6 +20,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["close"]);
+ assert_array_equals(events, ["cancel[cancelable=false]", "close"]);
}, "Create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nn-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/nn-CloseWatcher.html
new file mode 100644
index 0000000000..016745dfbb
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nn-CloseWatcher.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "CloseWatcher";
+
+promise_test(async t => {
+ const events = [];
+
+ createRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create two close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nn-activate-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/nn-activate-CloseWatcher.html
index 8045f30b48..45718e51a8 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nn-activate-CloseWatcher.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nn-activate-CloseWatcher.html
@@ -7,10 +7,6 @@
<script src="/common/top-layer.js"></script>
<script src="../resources/helpers.js"></script>
-<!--
- See note in sibling -dialog.html file.
--->
-
<body>
<script>
const type = "CloseWatcher";
@@ -25,6 +21,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close", "watcher1 cancel", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 close", "watcher1 cancel[cancelable=true]", "watcher1 close"]);
}, "Create two CloseWatchers without user activation; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nn-activate-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/nn-activate-dialog.html
index 5cc866044c..eaffb4d9a7 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nn-activate-dialog.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nn-activate-dialog.html
@@ -7,20 +7,6 @@
<script src="/common/top-layer.js"></script>
<script src="../resources/helpers.js"></script>
-<!--
- This test has different expectations for dialogs vs. CloseWatchers because
- dialogs queue a task to fire their close event, and do not do so for their
- cancel event. Thus, when you have two dialogs grouped together, you get the
- somewhat-strange behavior of both cancels firing first, then both closes.
- Whereas CloseWatchers do not have this issue; both fire synchronously.
-
- Note that scheduling the cancel event for dialogs is not really possible since
- it would then fire after the dialog has been closed in the DOM and visually.
- So the only reasonable fix for this would be to stop scheduling the close
- event for dialogs. That's risky from a compat standpoint, so for now, test the
- strange behavior.
--->
-
<body>
<script>
const type = "dialog";
@@ -35,6 +21,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher1 cancel", "watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher1 cancel[cancelable=true]", "watcher2 close", "watcher1 close"]);
}, "Create two dialogs without user activation; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nn-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/nn-dialog.html
new file mode 100644
index 0000000000..0d086a525e
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nn-dialog.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "dialog";
+
+promise_test(async t => {
+ const events = [];
+
+ createRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher1 cancel[cancelable=false]", "watcher2 close", "watcher1 close"]);
+}, "Create two close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nn.html b/testing/web-platform/tests/close-watcher/user-activation/nn.html
deleted file mode 100644
index beb63f1b4f..0000000000
--- a/testing/web-platform/tests/close-watcher/user-activation/nn.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!doctype html>
-<meta name=variant content="?dialog">
-<meta name=variant content="?CloseWatcher">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-<script src="/resources/testdriver-actions.js"></script>
-<script src="/common/top-layer.js"></script>
-<script src="../resources/helpers.js"></script>
-
-<body>
-<script>
-const type = location.search.substring(1);
-
-promise_test(async t => {
- const events = [];
-
- createRecordingCloseWatcher(t, events, "watcher1", type);
- createRecordingCloseWatcher(t, events, "watcher2", type);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close", "watcher1 close"]);
-}, "Create two close watchers without user activation");
-</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover.html b/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover.html
index f8b9061d01..38dd607312 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover.html
@@ -30,6 +30,6 @@ promise_test(async t => {
assert_false(popover.matches(':popover-open'), 'The popover should be closed.');
assert_false(dialog.hasAttribute('open'), 'The dialog should be closed.');
- assert_array_equals(events, ['CloseWatcher close', 'dialog close']);
+ assert_array_equals(events, ['dialog cancel[cancelable=false]', 'CloseWatcher cancel[cancelable=false]', 'CloseWatcher close', 'dialog close']);
}, 'Create a CloseWatcher without user activation; create a dialog without user activation; create a popover without user activation');
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher.html
new file mode 100644
index 0000000000..5d2f07e617
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nnn-CloseWatcher.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "CloseWatcher";
+
+promise_test(async t => {
+ const events = [];
+
+ createRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+ createRecordingCloseWatcher(t, events, "watcher3", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create three close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nnn-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/nnn-dialog.html
new file mode 100644
index 0000000000..f1c071dbb3
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nnn-dialog.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "dialog";
+
+promise_test(async t => {
+ const events = [];
+
+ createRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+ createRecordingCloseWatcher(t, events, "watcher3", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher2 cancel[cancelable=false]", "watcher1 cancel[cancelable=false]", "watcher3 close", "watcher2 close", "watcher1 close"]);
+}, "Create three close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nnn.html b/testing/web-platform/tests/close-watcher/user-activation/nnn.html
deleted file mode 100644
index 9b604e91db..0000000000
--- a/testing/web-platform/tests/close-watcher/user-activation/nnn.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!doctype html>
-<meta name=variant content="?dialog">
-<meta name=variant content="?CloseWatcher">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-<script src="/resources/testdriver-actions.js"></script>
-<script src="/common/top-layer.js"></script>
-<script src="../resources/helpers.js"></script>
-
-<body>
-<script>
-const type = location.search.substring(1);
-
-promise_test(async t => {
- const events = [];
-
- createRecordingCloseWatcher(t, events, "watcher1", type);
- createRecordingCloseWatcher(t, events, "watcher2", type);
- createRecordingCloseWatcher(t, events, "watcher3", type);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close", "watcher1 close"]);
-}, "Create three close watchers without user activation");
-</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/ny-activate-preventDefault.html b/testing/web-platform/tests/close-watcher/user-activation/ny-activate-preventDefault.html
index 5ffb64b113..7cd1c2e508 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/ny-activate-preventDefault.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/ny-activate-preventDefault.html
@@ -24,14 +24,14 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher without user activation; create a close watcher with user activation that preventDefault()s cancel; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/ny.html b/testing/web-platform/tests/close-watcher/user-activation/ny.html
index 226912233e..49f50a123e 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/ny.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/ny.html
@@ -21,10 +21,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher without user activation; create a close watcher with user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyn.html b/testing/web-platform/tests/close-watcher/user-activation/nyn.html
index ec5153c767..b227d566d4 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nyn.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nyn.html
@@ -21,10 +21,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher without user activation; create a close watcher with user activation; create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nynn-destroy.html b/testing/web-platform/tests/close-watcher/user-activation/nynn-destroy.html
index 8519c8a2a9..fb04109994 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nynn-destroy.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nynn-destroy.html
@@ -24,10 +24,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close"]);
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher without user activation; create a close watcher with user activation; create two close watchers without user activation; remove the second close watcher");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nynn.html b/testing/web-platform/tests/close-watcher/user-activation/nynn.html
index f6e74a0ba1..ed9203db66 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/nynn.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/nynn.html
@@ -22,10 +22,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close", "watcher2 close"]);
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close", "watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher without user activation; create a close watcher with user activation; create two close watchers without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyn-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/nyyn-CloseWatcher.html
new file mode 100644
index 0000000000..4f60ef3c4b
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nyyn-CloseWatcher.html
@@ -0,0 +1,34 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "CloseWatcher";
+
+promise_test(async t => {
+ const events = [];
+
+ const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
+ const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
+ const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
+ createRecordingCloseWatcher(t, events, "watcher4", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyn-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/nyyn-dialog.html
new file mode 100644
index 0000000000..44926fd5c3
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nyyn-dialog.html
@@ -0,0 +1,34 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "dialog";
+
+promise_test(async t => {
+ const events = [];
+
+ const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
+ const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
+ const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
+ createRecordingCloseWatcher(t, events, "watcher4", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher3 cancel[cancelable=false]", "watcher4 close", "watcher3 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher3 cancel[cancelable=false]", "watcher4 close", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher4 cancel[cancelable=false]", "watcher3 cancel[cancelable=false]", "watcher4 close", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyn.html b/testing/web-platform/tests/close-watcher/user-activation/nyyn.html
deleted file mode 100644
index f3987c1a21..0000000000
--- a/testing/web-platform/tests/close-watcher/user-activation/nyyn.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!doctype html>
-<meta name=variant content="?dialog">
-<meta name=variant content="?CloseWatcher">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-<script src="/resources/testdriver-actions.js"></script>
-<script src="/common/top-layer.js"></script>
-<script src="../resources/helpers.js"></script>
-
-<body>
-<script>
-const type = location.search.substring(1);
-
-promise_test(async t => {
- const events = [];
-
- const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
- const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
- const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
- createRecordingCloseWatcher(t, events, "watcher4", type);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close", "watcher2 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher4 close", "watcher3 close", "watcher2 close", "watcher1 close"]);
-}, "Create a close watcher without user activation; create two close watchers with user activation; create a close watcher without user activation");
-</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyyn-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/nyyyn-CloseWatcher.html
new file mode 100644
index 0000000000..e2565a82a3
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nyyyn-CloseWatcher.html
@@ -0,0 +1,38 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "CloseWatcher";
+
+promise_test(async t => {
+ const events = [];
+ const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
+ const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
+ const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
+ await createBlessedRecordingCloseWatcher(t, events, "watcher4", type, watcher3);
+ createRecordingCloseWatcher(t, events, "watcher5", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher5 close", "watcher4 cancel[cancelable=false]", "watcher4 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher5 close", "watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher5 close", "watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher5 close", "watcher4 cancel[cancelable=false]", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyyn-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/nyyyn-dialog.html
new file mode 100644
index 0000000000..86361124d3
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/nyyyn-dialog.html
@@ -0,0 +1,38 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "dialog";
+
+promise_test(async t => {
+ const events = [];
+ const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
+ const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
+ const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
+ await createBlessedRecordingCloseWatcher(t, events, "watcher4", type, watcher3);
+ createRecordingCloseWatcher(t, events, "watcher5", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher4 cancel[cancelable=false]", "watcher5 close", "watcher4 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher4 cancel[cancelable=false]", "watcher5 close", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher4 cancel[cancelable=false]", "watcher5 close", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher5 cancel[cancelable=false]", "watcher4 cancel[cancelable=false]", "watcher5 close", "watcher4 close", "watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/nyyyn.html b/testing/web-platform/tests/close-watcher/user-activation/nyyyn.html
deleted file mode 100644
index 6cb8f3a445..0000000000
--- a/testing/web-platform/tests/close-watcher/user-activation/nyyyn.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!doctype html>
-<meta name=variant content="?dialog">
-<meta name=variant content="?CloseWatcher">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-<script src="/resources/testdriver-actions.js"></script>
-<script src="/common/top-layer.js"></script>
-<script src="../resources/helpers.js"></script>
-
-<body>
-<script>
-const type = location.search.substring(1);
-
-promise_test(async t => {
- const events = [];
- const watcher1 = createRecordingCloseWatcher(t, events, "watcher1", type);
- const watcher2 = await createBlessedRecordingCloseWatcher(t, events, "watcher2", type, watcher1);
- const watcher3 = await createBlessedRecordingCloseWatcher(t, events, "watcher3", type, watcher2);
- await createBlessedRecordingCloseWatcher(t, events, "watcher4", type, watcher3);
- createRecordingCloseWatcher(t, events, "watcher5", type);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher5 close", "watcher4 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher5 close", "watcher4 close", "watcher3 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher5 close", "watcher4 close", "watcher3 close", "watcher2 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher5 close", "watcher4 close", "watcher3 close", "watcher2 close", "watcher1 close"]);
-}, "Create a close watcher without user activation; create three close watchers with user activation; create a close watcher without user activation");
-</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/y.html b/testing/web-platform/tests/close-watcher/user-activation/y.html
index ee58a92293..78c432de38 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/y.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/y.html
@@ -20,6 +20,6 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["cancel", "close"]);
+ assert_array_equals(events, ["cancel[cancelable=true]", "close"]);
}, "Create a close watcher with user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yn-activate.html b/testing/web-platform/tests/close-watcher/user-activation/yn-activate.html
index af7289aa28..d62b4df425 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yn-activate.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yn-activate.html
@@ -23,10 +23,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close", "watcher1 cancel", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 close", "watcher1 cancel[cancelable=true]", "watcher1 close"]);
}, "Create a close watcher with user activation; create a close watcher without user activation; send user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yn.html b/testing/web-platform/tests/close-watcher/user-activation/yn.html
index 8f7e90e2d8..578f43de25 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yn.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yn.html
@@ -21,10 +21,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create a close watcher with user activation; create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/ynn-CloseWatcher.html b/testing/web-platform/tests/close-watcher/user-activation/ynn-CloseWatcher.html
new file mode 100644
index 0000000000..50b5a8131d
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/ynn-CloseWatcher.html
@@ -0,0 +1,29 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "CloseWatcher";
+
+promise_test(async t => {
+ const events = [];
+
+ await createBlessedRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+ createRecordingCloseWatcher(t, events, "watcher3", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher with user activation; create two close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/ynn-dialog.html b/testing/web-platform/tests/close-watcher/user-activation/ynn-dialog.html
new file mode 100644
index 0000000000..c10e94dc73
--- /dev/null
+++ b/testing/web-platform/tests/close-watcher/user-activation/ynn-dialog.html
@@ -0,0 +1,29 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/common/top-layer.js"></script>
+<script src="../resources/helpers.js"></script>
+
+<body>
+<script>
+const type = "dialog";
+
+promise_test(async t => {
+ const events = [];
+
+ await createBlessedRecordingCloseWatcher(t, events, "watcher1", type);
+ createRecordingCloseWatcher(t, events, "watcher2", type);
+ createRecordingCloseWatcher(t, events, "watcher3", type);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher2 cancel[cancelable=false]", "watcher3 close", "watcher2 close"]);
+
+ await sendCloseRequest();
+ await waitForPotentialCloseEvent();
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher2 cancel[cancelable=false]", "watcher3 close", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
+}, "Create a close watcher with user activation; create two close watchers without user activation");
+</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/ynn.html b/testing/web-platform/tests/close-watcher/user-activation/ynn.html
deleted file mode 100644
index 8cc7f5bfb6..0000000000
--- a/testing/web-platform/tests/close-watcher/user-activation/ynn.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html>
-<meta name=variant content="?dialog">
-<meta name=variant content="?CloseWatcher">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-<script src="/resources/testdriver-actions.js"></script>
-<script src="/common/top-layer.js"></script>
-<script src="../resources/helpers.js"></script>
-
-<body>
-<script>
-const type = location.search.substring(1);
-
-promise_test(async t => {
- const events = [];
-
- await createBlessedRecordingCloseWatcher(t, events, "watcher1", type);
- createRecordingCloseWatcher(t, events, "watcher2", type);
- createRecordingCloseWatcher(t, events, "watcher3", type);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close"]);
-
- await sendCloseRequest();
- await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close", "watcher1 close"]);
-}, "Create a close watcher with user activation; create two close watchers without user activation");
-</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yy.html b/testing/web-platform/tests/close-watcher/user-activation/yy.html
index 0aa03cdd05..9c0f21be22 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yy.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yy.html
@@ -21,10 +21,10 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher2 cancel", "watcher2 close", "watcher1 cancel", "watcher1 close"]);
+ assert_array_equals(events, ["watcher2 cancel[cancelable=true]", "watcher2 close", "watcher1 cancel[cancelable=true]", "watcher1 close"]);
}, "Create two close watchers with user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yyn.html b/testing/web-platform/tests/close-watcher/user-activation/yyn.html
index b87cf7a7e3..2f75377444 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yyn.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yyn.html
@@ -22,14 +22,14 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 close", "watcher2 close", "watcher1 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=false]", "watcher3 close", "watcher2 cancel[cancelable=false]", "watcher2 close", "watcher1 cancel[cancelable=false]", "watcher1 close"]);
}, "Create two close watchers with user activation; create a close watcher without user activation");
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover.html b/testing/web-platform/tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover.html
index f0a1cb06d1..8650fb3b7c 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover.html
@@ -35,12 +35,12 @@ promise_test(async t => {
await waitForPotentialCloseEvent();
assert_false(popover.matches(':popover-open'), 'Second close request: The popover should be closed.');
assert_false(dialog.hasAttribute('open'), 'Second close request: The dialog should be closed.');
- assert_array_equals(events, ['dialog cancel', 'dialog close']);
+ assert_array_equals(events, ['dialog cancel[cancelable=true]', 'dialog close']);
await sendCloseRequest();
await waitForPotentialCloseEvent();
assert_false(popover.matches(':popover-open'), 'Third close request: The popover should be closed.');
assert_false(dialog.hasAttribute('open'), 'Third close request: The dialog should be closed.');
- assert_array_equals(events, ['dialog cancel', 'dialog close', 'CloseWatcher cancel', 'CloseWatcher close']);
+ assert_array_equals(events, ['dialog cancel[cancelable=true]', 'dialog close', 'CloseWatcher cancel[cancelable=true]', 'CloseWatcher close']);
}, 'Create a CloseWatcher with user activation; create a dialog with user activation; create a popover with user activation');
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover.html b/testing/web-platform/tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover.html
index ed41d1bc32..a58dd0751b 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover.html
@@ -37,13 +37,13 @@ promise_test(async t => {
await waitForPotentialCloseEvent();
assert_false(popover.matches(':popover-open'), 'Second close request: The popover should be closed.');
assert_false(dialog.hasAttribute('open'), 'Second close request: The dialog should be closed.');
- assert_array_equals(events, ['dialog cancel', 'dialog close']);
+ assert_array_equals(events, ['dialog cancel[cancelable=true]', 'dialog close']);
await test_driver.bless();
await sendCloseRequest();
await waitForPotentialCloseEvent();
assert_false(popover.matches(':popover-open'), 'Third close request: The popover should be closed.');
assert_false(dialog.hasAttribute('open'), 'Third close request: The dialog should be closed.');
- assert_array_equals(events, ['dialog cancel', 'dialog close', 'CloseWatcher cancel', 'CloseWatcher close']);
+ assert_array_equals(events, ['dialog cancel[cancelable=true]', 'dialog close', 'CloseWatcher cancel[cancelable=true]', 'CloseWatcher close']);
}, 'Create a CloseWatcher with user activation; create a dialog with user activation; create a popover with user activation; sending user activation before each close request');
</script>
diff --git a/testing/web-platform/tests/close-watcher/user-activation/yyy.html b/testing/web-platform/tests/close-watcher/user-activation/yyy.html
index f16767a86b..eaf8944bce 100644
--- a/testing/web-platform/tests/close-watcher/user-activation/yyy.html
+++ b/testing/web-platform/tests/close-watcher/user-activation/yyy.html
@@ -22,14 +22,14 @@ promise_test(async t => {
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 cancel", "watcher3 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=true]", "watcher3 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 cancel", "watcher3 close", "watcher2 cancel", "watcher2 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=true]", "watcher3 close", "watcher2 cancel[cancelable=true]", "watcher2 close"]);
await sendCloseRequest();
await waitForPotentialCloseEvent();
- assert_array_equals(events, ["watcher3 cancel", "watcher3 close", "watcher2 cancel", "watcher2 close", "watcher1 cancel", "watcher1 close"]);
+ assert_array_equals(events, ["watcher3 cancel[cancelable=true]", "watcher3 close", "watcher2 cancel[cancelable=true]", "watcher2 close", "watcher1 cancel[cancelable=true]", "watcher1 close"]);
}, "Create three close watchers with user activation");
</script>
diff --git a/testing/web-platform/tests/compression/decompression-buffersource.tentative.any.js b/testing/web-platform/tests/compression/decompression-buffersource.tentative.any.js
index e81fc56677..abb51751c8 100644
--- a/testing/web-platform/tests/compression/decompression-buffersource.tentative.any.js
+++ b/testing/web-platform/tests/compression/decompression-buffersource.tentative.any.js
@@ -48,6 +48,10 @@ const bufferSourceChunksForDeflate = [
value: new Uint32Array(new Uint8Array(compressedBytesWithDeflate).buffer)
},
{
+ name: 'Float16Array',
+ value: new Float16Array(new Uint8Array(compressedBytesWithDeflate).buffer)
+ },
+ {
name: 'Float32Array',
value: new Float32Array(new Uint8Array(compressedBytesWithDeflate).buffer)
},
@@ -95,6 +99,10 @@ const bufferSourceChunksForGzip = [
value: new Uint32Array(new Uint8Array(compressedBytesWithGzip).buffer)
},
{
+ name: 'Float16Array',
+ value: new Float16Array(new Uint8Array(compressedBytesWithGzip).buffer)
+ },
+ {
name: 'Float32Array',
value: new Float32Array(new Uint8Array(compressedBytesWithGzip).buffer)
},
@@ -142,6 +150,10 @@ const bufferSourceChunksForDeflateRaw = [
value: new Uint32Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer)
},
{
+ name: 'Float16Array',
+ value: new Float16Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer)
+ },
+ {
name: 'Float32Array',
value: new Float32Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer)
},
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_duplicate_updates.https.any.js b/testing/web-platform/tests/compute-pressure/compute_pressure_duplicate_updates.https.any.js
index 04c5df5e57..609fb5ad70 100644
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_duplicate_updates.https.any.js
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_duplicate_updates.https.any.js
@@ -12,8 +12,8 @@ pressure_test(async (t, mockPressureService) => {
observer_changes.push(changes);
if (++n === 2)
resolve(observer_changes);
- }, {sampleInterval: 200});
- observer.observe('cpu');
+ });
+ observer.observe('cpu', {sampleInterval: 200});
const updatesDelivered = mockPressureService.updatesDelivered();
mockPressureService.setPressureUpdate('cpu', 'critical');
mockPressureService.startPlatformCollector(/*sampleInterval*/ 200);
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_known_sources.https.any.js b/testing/web-platform/tests/compute-pressure/compute_pressure_known_sources.https.any.js
new file mode 100644
index 0000000000..5db3053ce9
--- /dev/null
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_known_sources.https.any.js
@@ -0,0 +1,21 @@
+// META: global=window,dedicatedworker,sharedworker
+
+'use strict';
+
+test(() => {
+ // Compute Pressure should support at least "cpu"
+ const sources = PressureObserver.knownSources;
+ assert_in_array('cpu', sources);
+}, 'PressureObserver should support at least "cpu"');
+
+test(() => {
+ // Compute Pressure should be frozen array
+ const sources = PressureObserver.knownSources;
+ assert_equals(sources, PressureObserver.knownSources);
+}, 'PressureObserver must return always the same array');
+
+test(() => {
+ // Compute Pressure should be frozen array
+ let sources = PressureObserver.knownSources;
+ assert_equals(Object.isFrozen(sources), true);
+}, 'PressureObserver must return a frozen array');
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_options.https.any.js b/testing/web-platform/tests/compute-pressure/compute_pressure_options.https.any.js
index d0760ef622..ecf3c29dbf 100644
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_options.https.any.js
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_options.https.any.js
@@ -1,26 +1,31 @@
+// META: script=/resources/test-only-api.js
+// META: script=resources/pressure-helpers.js
// META: global=window,dedicatedworker,sharedworker
'use strict';
-test(t => {
- const observer = new PressureObserver(() => {}, {sampleInterval: 0});
- assert_equals(typeof observer, 'object');
-}, 'PressureObserver constructor doesnt throw error for sampleInterval value 0');
-
-
-test(t => {
- assert_throws_js(TypeError, () => {
- new PressureObserver(() => {}, {sampleInterval: -2});
+pressure_test(async (t, mockPressureService) => {
+ await new Promise(resolve => {
+ const observer = new PressureObserver(resolve);
+ t.add_cleanup(() => observer.disconnect());
+ observer.observe('cpu', {sampleInterval: 0});
+ mockPressureService.setPressureUpdate('cpu', 'critical');
+ mockPressureService.startPlatformCollector(/*sampleInterval=*/ 200);
});
-}, 'PressureObserver constructor requires a positive sampleInterval');
+}, 'PressureObserver observe method doesnt throw error for sampleInterval value 0');
-test(t => {
- assert_throws_js(TypeError, () => {
- new PressureObserver(() => {}, {sampleInterval: 2 ** 32});
- });
-}, 'PressureObserver constructor requires a sampleInterval in unsigned long range');
+promise_test(async t => {
+ const observer =
+ new PressureObserver(t.unreached_func('oops should not end up here'));
+ t.add_cleanup(() => observer.disconnect());
+ await promise_rejects_js(
+ t, TypeError, observer.observe('cpu', {sampleInterval: -2}));
+}, 'PressureObserver observe method requires a positive sampleInterval');
-test(t => {
- const observer = new PressureObserver(() => {}, {});
- assert_equals(typeof observer, 'object');
-}, 'PressureObserver constructor succeeds on empty sampleInterval');
+promise_test(async t => {
+ const observer =
+ new PressureObserver(t.unreached_func('oops should not end up here'));
+ t.add_cleanup(() => observer.disconnect());
+ await promise_rejects_js(
+ t, TypeError, observer.observe('cpu', {sampleInterval: 2 ** 32}));
+}, 'PressureObserver observe method requires a sampleInterval in unsigned long range');
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_not_triggered.https.window.js b/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_not_triggered.https.window.js
index e348a8ea08..f3e966de24 100644
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_not_triggered.https.window.js
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_not_triggered.https.window.js
@@ -17,9 +17,9 @@ pressure_test(async (t, mockPressureService) => {
const observerChanges = [];
const observer = new PressureObserver(changes => {
observerChanges.push(changes);
- }, {sampleInterval: sampleIntervalInMs});
+ });
- observer.observe('cpu');
+ observer.observe('cpu', {sampleInterval: sampleIntervalInMs});
mockPressureService.startPlatformCollector(sampleIntervalInMs);
let i = 0;
// mockPressureService.updatesDelivered() does not necessarily match
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_triggered.https.window.js b/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_triggered.https.window.js
index ebe33bc8bf..b481cf6c87 100644
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_triggered.https.window.js
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_rate_obfuscation_mitigation_triggered.https.window.js
@@ -31,9 +31,9 @@ pressure_test(async (t, mockPressureService) => {
}
}
observerChanges.push(changes);
- }, {sampleInterval: sampleIntervalInMs});
+ });
- observer.observe('cpu');
+ observer.observe('cpu', {sampleInterval: sampleIntervalInMs});
mockPressureService.startPlatformCollector(sampleIntervalInMs);
let i = 0;
// mockPressureService.updatesDelivered() does not necessarily match
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_supported_sources.https.any.js b/testing/web-platform/tests/compute-pressure/compute_pressure_supported_sources.https.any.js
deleted file mode 100644
index 63f2666cca..0000000000
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_supported_sources.https.any.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// META: global=window,dedicatedworker,sharedworker
-
-'use strict';
-
-test(() => {
- // Compute Pressure should support at least "cpu"
- const sources = PressureObserver.supportedSources;
- assert_in_array('cpu', sources);
-}, 'PressureObserver should support at least "cpu"');
-
-test(() => {
- // Compute Pressure should be frozen array
- const sources = PressureObserver.supportedSources;
- assert_equals(sources, PressureObserver.supportedSources);
-}, 'PressureObserver must return always the same array');
-
-test(() => {
- // Compute Pressure should be frozen array
- let sources = PressureObserver.supportedSources;
- assert_equals(Object.isFrozen(), true);
-}, 'PressureObserver must return a frozen array');
diff --git a/testing/web-platform/tests/compute-pressure/compute_pressure_timestamp.https.any.js b/testing/web-platform/tests/compute-pressure/compute_pressure_timestamp.https.any.js
index 09caeb3478..18db1dac46 100644
--- a/testing/web-platform/tests/compute-pressure/compute_pressure_timestamp.https.any.js
+++ b/testing/web-platform/tests/compute-pressure/compute_pressure_timestamp.https.any.js
@@ -5,32 +5,73 @@
'use strict';
pressure_test(async (t, mockPressureService) => {
+ const [change, timeOrigin] = await new Promise(resolve => {
+ const observer = new PressureObserver(change => {
+ resolve([change, performance.timeOrigin]);
+ });
+ t.add_cleanup(() => observer.disconnect());
+ observer.observe('cpu');
+ mockPressureService.setPressureUpdate('cpu', 'critical');
+ mockPressureService.startPlatformCollector(/*sampleInterval=*/ 200);
+ });
+ assert_greater_than(change[0].time, timeOrigin);
+}, 'Timestamp from update should be greater than timeOrigin');
+
+pressure_test(async (t, mockPressureService) => {
const readings = ['nominal', 'fair', 'serious', 'critical'];
const sampleInterval = 250;
- const pressureChanges = await new Promise(async resolve => {
- const observerChanges = [];
- const observer = new PressureObserver(changes => {
- observerChanges.push(changes);
- }, {sampleInterval});
- observer.observe('cpu');
+ const pressureChanges = [];
+ const observer = new PressureObserver(changes => {
+ pressureChanges.push(changes);
+ });
+ observer.observe('cpu', {sampleInterval});
- mockPressureService.startPlatformCollector(sampleInterval / 2);
- let i = 0;
- // mockPressureService.updatesDelivered() does not necessarily match
- // pressureChanges.length, as system load and browser optimizations can
- // cause the actual timer used by mockPressureService to deliver readings
- // to be a bit slower or faster than requested.
- while (observerChanges.length < 4) {
- mockPressureService.setPressureUpdate(
- 'cpu', readings[i++ % readings.length]);
- await t.step_wait(
- () => mockPressureService.updatesDelivered() >= i,
- `At least ${i} readings have been delivered`);
- }
- observer.disconnect();
- resolve(observerChanges);
+ mockPressureService.startPlatformCollector(sampleInterval / 2);
+ let i = 0;
+ // mockPressureService.updatesDelivered() does not necessarily match
+ // pressureChanges.length, as system load and browser optimizations can
+ // cause the actual timer used by mockPressureService to deliver readings
+ // to be a bit slower or faster than requested.
+ while (pressureChanges.length < 4) {
+ mockPressureService.setPressureUpdate(
+ 'cpu', readings[i++ % readings.length]);
+ await t.step_wait(
+ () => mockPressureService.updatesDelivered() >= i,
+ `At least ${i} readings have been delivered`);
+ }
+ observer.disconnect();
+
+ assert_equals(pressureChanges.length, 4);
+ assert_greater_than(pressureChanges[1][0].time, pressureChanges[0][0].time);
+ assert_greater_than(pressureChanges[2][0].time, pressureChanges[1][0].time);
+ assert_greater_than(pressureChanges[3][0].time, pressureChanges[2][0].time);
+}, 'Timestamp difference between two changes should be continuously increasing');
+
+pressure_test(async (t, mockPressureService) => {
+ const readings = ['nominal', 'fair', 'serious', 'critical'];
+
+ const sampleInterval = 250;
+ const pressureChanges = [];
+ const observer = new PressureObserver(change => {
+ pressureChanges.push(change);
});
+ observer.observe('cpu', {sampleInterval});
+
+ mockPressureService.startPlatformCollector(sampleInterval / 2);
+ let i = 0;
+ // mockPressureService.updatesDelivered() does not necessarily match
+ // pressureChanges.length, as system load and browser optimizations can
+ // cause the actual timer used by mockPressureService to deliver readings
+ // to be a bit slower or faster than requested.
+ while (pressureChanges.length < 4) {
+ mockPressureService.setPressureUpdate(
+ 'cpu', readings[i++ % readings.length]);
+ await t.step_wait(
+ () => mockPressureService.updatesDelivered() >= i,
+ `At least ${i} readings have been delivered`);
+ }
+ observer.disconnect();
assert_equals(pressureChanges.length, 4);
assert_greater_than_equal(
@@ -46,10 +87,10 @@ pressure_test(async (t, mockPressureService) => {
const sampleInterval = 1000;
const observer = new PressureObserver(changes => {
pressureChanges.push(changes);
- }, {sampleInterval});
+ });
await new Promise(async resolve => {
- observer.observe('cpu');
+ observer.observe('cpu', {sampleInterval});
mockPressureService.setPressureUpdate('cpu', 'critical');
mockPressureService.startPlatformCollector(sampleInterval);
await t.step_wait(() => pressureChanges.length == 1);
@@ -71,5 +112,6 @@ pressure_test(async (t, mockPressureService) => {
// should be deleted. So the second PressureRecord is not discarded even
// though the time interval does not meet the requirement.
assert_less_than(
- pressureChanges[1][0].time - pressureChanges[0][0].time, sampleInterval);
+ (pressureChanges[1][0].time - pressureChanges[0][0].time),
+ sampleInterval);
}, 'disconnect() should update [[LastRecordMap]]');
diff --git a/testing/web-platform/tests/compute-pressure/idlharness.https.any.js b/testing/web-platform/tests/compute-pressure/idlharness.https.any.js
index 48ab5615b0..6cd7e87b5b 100644
--- a/testing/web-platform/tests/compute-pressure/idlharness.https.any.js
+++ b/testing/web-platform/tests/compute-pressure/idlharness.https.any.js
@@ -11,5 +11,5 @@ idl_test(['compute-pressure'], ['dom', 'html'], async idl_array => {
PressureObserver: ['observer'],
});
- self.observer = new PressureObserver(() => {}, {sampleInterval: 1000});
+ self.observer = new PressureObserver(() => {});
});
diff --git a/testing/web-platform/tests/compute-pressure/observe_return_type.https.any.js b/testing/web-platform/tests/compute-pressure/observe_return_type.https.any.js
new file mode 100644
index 0000000000..b24878ab39
--- /dev/null
+++ b/testing/web-platform/tests/compute-pressure/observe_return_type.https.any.js
@@ -0,0 +1,18 @@
+// META: script=/resources/test-only-api.js
+// META: script=resources/pressure-helpers.js
+// META: global=window,dedicatedworker,sharedworker
+
+'use strict';
+
+// Regression test for https://issues.chromium.org/issues/333957909
+// Make sure that observe() always returns a Promise.
+pressure_test(async (t, mockPressureService) => {
+ const observer = new PressureObserver(() => {});
+ t.add_cleanup(() => observer.disconnect());
+
+ for (let i = 0; i < 2; i++) {
+ const promise = observer.observe('cpu');
+ assert_class_string(promise, 'Promise');
+ await promise;
+ }
+}, 'PressureObserver.observe() is idempotent');
diff --git a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html
index 85b7f0efdc..eb7cbef866 100644
--- a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html
+++ b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html
@@ -7,7 +7,7 @@
</head>
<body>
<script>
- test = async_test("A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.");
+ test = async_test("A 'frame-ancestors' CSP directive with a value 'self' should block render in same-origin nested frames.");
testNestedIFrame("'self'", CROSS_ORIGIN, CROSS_ORIGIN, EXPECT_BLOCK);
</script>
diff --git a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html
index da97339711..8f9d94e7d6 100644
--- a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html
+++ b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html
@@ -7,7 +7,7 @@
</head>
<body>
<script>
- test = async_test("A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.");
+ test = async_test("A 'frame-ancestors' CSP directive with a value 'self' should block render in same-origin nested frames.");
testNestedIFrame("'self'", SAME_ORIGIN, CROSS_ORIGIN, EXPECT_BLOCK);
</script>
diff --git a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html
index bae5992e86..f9d32eb3ed 100644
--- a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html
+++ b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html
@@ -7,7 +7,7 @@
</head>
<body>
<script>
- test = async_test("A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.");
+ test = async_test("A 'frame-ancestors' CSP directive with a value 'self' should block render in same-origin nested frames.");
testNestedIFrame("'self'", CROSS_ORIGIN, SAME_ORIGIN, EXPECT_BLOCK);
</script>
diff --git a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html
index 747c563696..a4271dfd92 100644
--- a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html
+++ b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html
@@ -7,7 +7,7 @@
</head>
<body>
<script>
- test = async_test("A 'frame-ancestors' CSP directive with a value 'same' should block render in same-origin nested frames.");
+ test = async_test("A 'frame-ancestors' CSP directive with a value 'self' should block render in same-origin nested frames.");
testNestedIFrame("'self'", SAME_ORIGIN, SAME_ORIGIN, EXPECT_LOAD);
</script>
diff --git a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-sandbox-same-origin-self.html b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-sandbox-same-origin-self.html
index 4a2a19698d..825f9a8ae3 100644
--- a/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-sandbox-same-origin-self.html
+++ b/testing/web-platform/tests/content-security-policy/frame-ancestors/frame-ancestors-sandbox-same-origin-self.html
@@ -11,7 +11,7 @@
"should compare the child URL (self) against each parent's origin's URL" +
" rather then URL. When the ancestors are sandboxed, they never match.");
- testNestedSandboxedIFrame('self', SAME_ORIGIN, SAME_ORIGIN, EXPECT_BLOCK);
+ testNestedSandboxedIFrame("'self'", SAME_ORIGIN, SAME_ORIGIN, EXPECT_BLOCK);
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/content-security-policy/generic/case-insensitive-scheme.sub.html b/testing/web-platform/tests/content-security-policy/generic/case-insensitive-scheme.sub.html
new file mode 100644
index 0000000000..7225cd359f
--- /dev/null
+++ b/testing/web-platform/tests/content-security-policy/generic/case-insensitive-scheme.sub.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <script src='/resources/testharness.js'></script>
+ <script src='/resources/testharnessreport.js'></script>
+</head>
+<body>
+ <script>
+ let tests = [
+ {
+ "csp": "img-src http://{{host}}:{{ports[http][0]}}/",
+ "name": "Lowercase `http` should allow the image to load.",
+ },
+ {
+ "csp": "img-src HtTp://{{host}}:{{ports[http][0]}}/",
+ "name": "Mixed-case `http` should allow the image to load.",
+ },
+ {
+ "csp": "img-src HTTP://{{host}}:{{ports[http][0]}}/",
+ "name": "Uppercase `http` should allow the image to load.",
+ },
+ ];
+
+ tests.forEach(test => {
+ async_test(t => {
+ let url = "support/load_img_and_post_result_meta.sub.html?csp="
+ + encodeURIComponent(test.csp);
+ test_image_loads_as_expected(test, t, url);
+ }, test.name + " - meta tag");
+
+ async_test(t => {
+ let url = "support/load_img_and_post_result_header.html?csp="
+ + encodeURIComponent(test.csp);
+ test_image_loads_as_expected(test, t, url);
+ }, test.name + " - HTTP header");
+ });
+
+ function test_image_loads_as_expected(test, t, url) {
+ let i = document.createElement('iframe');
+ i.src = url;
+ window.addEventListener('message', t.step_func(function(e) {
+ if (e.source != i.contentWindow) return;
+ assert_equals(e.data, "img loaded");
+ t.done();
+ }));
+ document.body.appendChild(i);
+ }
+ </script>
+</body>
+</html>
+
diff --git a/testing/web-platform/tests/content-security-policy/generic/wildcard-host-part.sub.window.js b/testing/web-platform/tests/content-security-policy/generic/wildcard-host-part.sub.window.js
new file mode 100644
index 0000000000..d210cc6670
--- /dev/null
+++ b/testing/web-platform/tests/content-security-policy/generic/wildcard-host-part.sub.window.js
@@ -0,0 +1,27 @@
+setup(_ => {
+ const meta = document.createElement("meta");
+ meta.httpEquiv = "content-security-policy";
+ meta.content = "img-src http://*:{{ports[http][0]}}";
+ document.head.appendChild(meta);
+});
+
+async_test((t) => {
+ const img = document.createElement("img");
+ img.onerror = t.step_func_done();
+ img.onload = t.unreached_func("`data:` image should have been blocked.");
+ img.src = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
+}, "Host wildcard doesn't affect scheme matching.");
+
+async_test((t) => {
+ const img = document.createElement("img");
+ img.onload = t.step_func_done();
+ img.onerror = t.unreached_func("Image from www2 host should have loaded.");
+ img.src = "http://{{domains[www1]}}:{{ports[http][0]}}/content-security-policy/support/pass.png";
+}, "Host wildcard allows arbitrary hosts (www1).");
+
+async_test((t) => {
+ const img = document.createElement("img");
+ img.onload = t.step_func_done();
+ img.onerror = t.unreached_func("Image from www2 host should have loaded.");
+ img.src = "http://{{domains[www2]}}:{{ports[http][0]}}/content-security-policy/support/pass.png";
+}, "Host wildcard allows arbitrary hosts (www2).");
diff --git a/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html b/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html
index e4ce1e5944..02c5c9642b 100644
--- a/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html
+++ b/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html
@@ -6,7 +6,7 @@
<script src='/resources/testharness.js' nonce='dummy'></script>
<script src='/resources/testharnessreport.js' nonce='dummy'></script>
- <!-- CSP served: script-src 'strict-dynamic' 'nonce-dummy' 'sha256-yU6Q7nD1TCBB9JvY06iIJ8ONLOPU4g8ml5JCDgXkv+M=' 'sha256-EEoi70frWHkGFhK51NVIJkXpq72aPxSCNZEow37ZmRA=' -->
+ <!-- CSP served: script-src 'strict-dynamic' 'nonce-dummy' 'sha256-yU6Q7nD1TCBB9JvY06iIJ8ONLOPU4g8ml5JCDgXkv+M=' 'sha256-EEoi70frWHkGFhK51NVIJkXpq72aPxSCNZEow37ZmRA=' 'sha256-wIc3KtqOuTFEu6t17sIBuOswgkV406VJvhSk79Gw6U0=' -->
</head>
<body>
@@ -47,6 +47,17 @@
document.body.appendChild(e);
}, 'Script injected via `appendChild` from a script matching SHA256 hash is allowed with `strict-dynamic`.');
</script>
+
+ <script nonce='dummy'>
+ var externalRan = false;
+ </script>
+ <script src='./externalScript.js'
+ integrity="sha256-wIc3KtqOuTFEu6t17sIBuOswgkV406VJvhSk79Gw6U0="></script>
+ <script nonce='dummy'>
+ test(function(t) {
+ assert_true(externalRan);
+ }, "External script in a script tag with matching SRI hash is allowed with `strict-dynamic`.");
+ </script>
</body>
</html>
diff --git a/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html.headers b/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html.headers
index 0d824d8b0e..4d3d904c68 100644
--- a/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html.headers
+++ b/testing/web-platform/tests/content-security-policy/script-src/script-src-strict_dynamic_hashes.html.headers
@@ -2,4 +2,4 @@ Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0, false
Pragma: no-cache
-Content-Security-Policy: script-src 'strict-dynamic' 'nonce-dummy' 'sha256-yU6Q7nD1TCBB9JvY06iIJ8ONLOPU4g8ml5JCDgXkv+M=' 'sha256-EEoi70frWHkGFhK51NVIJkXpq72aPxSCNZEow37ZmRA='
+Content-Security-Policy: script-src 'strict-dynamic' 'nonce-dummy' 'sha256-yU6Q7nD1TCBB9JvY06iIJ8ONLOPU4g8ml5JCDgXkv+M=' 'sha256-EEoi70frWHkGFhK51NVIJkXpq72aPxSCNZEow37ZmRA=' 'sha256-wIc3KtqOuTFEu6t17sIBuOswgkV406VJvhSk79Gw6U0='
diff --git a/testing/web-platform/tests/credential-management/digital-identity.https.html b/testing/web-platform/tests/credential-management/digital-identity.https.html
index b2f36d21ee..8ae9caa002 100644
--- a/testing/web-platform/tests/credential-management/digital-identity.https.html
+++ b/testing/web-platform/tests/credential-management/digital-identity.https.html
@@ -17,31 +17,6 @@ const host = get_host_info();
const basePath = window.location.pathname.replace(/\/[^\/]*$/, '/');
const remoteBaseURL = host.HTTPS_REMOTE_ORIGIN + basePath;
-// Builds valid digital identity request for navigator.credentials.get() API.
-function buildValidNavigatorCredentialsRequest() {
- return {
- identity: {
- providers: [{
- holder: {
- selector: {
- format: ['mdoc'],
- doctype: 'org.iso.18013.5.1.mDL',
- fields: [
- 'org.iso.18013.5.1.family_name',
- 'org.iso.18013.5.1.portrait',
- ]
- },
- params: {
- nonce: '1234',
- readerPublicKey: 'test_reader_public_key',
- extraParamAsNeededByDigitalCredentials: true,
- },
- },
- }],
- },
- };
-}
-
async function createIframeAndWaitForMessage(test, iframeUrl) {
const messageWatcher = new EventWatcher(test, window, "message");
var iframe = document.createElement("iframe");
@@ -54,39 +29,6 @@ async function createIframeAndWaitForMessage(test, iframeUrl) {
// Requires browser to have mode where OS-presented digital-identity-prompt is
// bypassed in favour of returning "fake_test_token" directly.
promise_test(async t => {
- const {token} = await navigator.credentials.get(buildValidNavigatorCredentialsRequest());
- assert_equals("fake_test_token", token);
-}, "navigator.credentials.get() API works in toplevel frame.");
-
-promise_test(async t => {
- let request = buildValidNavigatorCredentialsRequest();
- request.identity.providers = undefined;
-
- await promise_rejects_js(t, TypeError, navigator.credentials.get(request));
-}, "navigator.credentials.get() API fails if IdentityCredentialRequestOptions::providers is not specified.");
-
-promise_test(async t => {
- let request = buildValidNavigatorCredentialsRequest();
- request.identity.providers = [];
-
- await promise_rejects_js(t, TypeError, navigator.credentials.get(request));
-}, "navigator.credentials.get() API fails if there are no providers.");
-
-promise_test(async t => {
- let request = buildValidNavigatorCredentialsRequest();
- let providerCopy = structuredClone(request.identity.providers[0]);
- request.identity.providers.push(providerCopy);
- await promise_rejects_js(t, TypeError, navigator.credentials.get(request));
-}, "navigator.credentials.get() API fails if there is more than one provider.");
-
-promise_test(async t => {
- let request = buildValidNavigatorCredentialsRequest();
- request.identity.providers[0].holder = undefined;
-
- await promise_rejects_js(t, TypeError, navigator.credentials.get(request));
-}, "navigator.credentials.get() API fails if IdentityProviderConfig::holder is not specified.");
-
-promise_test(async t => {
let request = buildValidNavigatorIdentityRequest();
let credential = await navigator.identity.get(request);
assert_equals("urn:openid.net:oid4vp", credential.protocol);
diff --git a/testing/web-platform/tests/credential-management/fedcm-context.https.html b/testing/web-platform/tests/credential-management/fedcm-context.https.html
index 7b3e1032af..f235437b78 100644
--- a/testing/web-platform/tests/credential-management/fedcm-context.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-context.https.html
@@ -12,37 +12,38 @@
import {request_options_with_mediation_required,
request_options_with_context,
fedcm_get_title_promise,
- fedcm_test} from './support/fedcm-helper.sub.js';
+ fedcm_test,
+ fedcm_select_account_promise} from './support/fedcm-helper.sub.js';
fedcm_test(async t => {
- let p = navigator.credentials.get(request_options_with_mediation_required());
+ const p = navigator.credentials.get(request_options_with_mediation_required());
const result = await fedcm_get_title_promise(t);
assert_true(result.title.toLowerCase().includes('sign in'));
- window.test_driver.select_fedcm_account(0);
+ fedcm_select_account_promise(t, 0);
return p;
}, "FedCM call defaults to 'signin' context.");
fedcm_test(async t => {
- let p = navigator.credentials.get(request_options_with_context("manifest.py", "signup"));
+ const p = navigator.credentials.get(request_options_with_context("manifest.py", "signup"));
const result = await fedcm_get_title_promise(t);
assert_true(result.title.toLowerCase().includes('sign up'));
- window.test_driver.select_fedcm_account(0);
+ fedcm_select_account_promise(t, 0);
return p;
}, "FedCM with 'signup' context.");
fedcm_test(async t => {
- let p = navigator.credentials.get(request_options_with_context("manifest.py", "use"));
+ const p = navigator.credentials.get(request_options_with_context("manifest.py", "use"));
const result = await fedcm_get_title_promise(t);
assert_true(result.title.toLowerCase().includes('use'));
- window.test_driver.select_fedcm_account(0);
+ fedcm_select_account_promise(t, 0);
return p;
}, "FedCM with 'use' context.");
fedcm_test(async t => {
- let p = navigator.credentials.get(request_options_with_context("manifest.py", "continue"));
+ const p = navigator.credentials.get(request_options_with_context("manifest.py", "continue"));
const result = await fedcm_get_title_promise(t);
assert_true(result.title.toLowerCase().includes('continue'));
- window.test_driver.select_fedcm_account(0);
+ fedcm_select_account_promise(t, 0);
return p;
}, "FedCM with 'continue' context.");
</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-disconnect.sub.https.html b/testing/web-platform/tests/credential-management/fedcm-disconnect.sub.https.html
index 300144fa72..2ea2d4a259 100644
--- a/testing/web-platform/tests/credential-management/fedcm-disconnect.sub.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-disconnect.sub.https.html
@@ -11,7 +11,6 @@
<script type="module">
import {fedcm_test,
mark_signed_in,
- set_fedcm_cookie,
disconnect_options,
fedcm_get_and_select_first_account,
request_options_with_mediation_required,
@@ -21,10 +20,9 @@ import {fedcm_test,
set_alt_fedcm_cookie} from './support/fedcm-helper.sub.js';
fedcm_test(async t => {
- await mark_signed_in();
- await set_fedcm_cookie();
+ await mark_signed_in(alt_manifest_origin);
// Get at least one connected account that can be disconnected.
- const cred = await fedcm_get_and_select_first_account(t, request_options_with_mediation_required());
+ const cred = await fedcm_get_and_select_first_account(t, alt_request_options_with_mediation_required());
// The IDP implementation will accept any account hint, so this is really testing that the user
// agent eventually stops sending the requests to the IDP.
// This test clears the connection just created above, but it also clears any previously existing
@@ -32,7 +30,7 @@ fedcm_test(async t => {
return new Promise(async resolve => {
while (true) {
try {
- await IdentityCredential.disconnect(disconnect_options("1234"));
+ await IdentityCredential.disconnect(alt_disconnect_options("1234"));
} catch(e) {
resolve();
break;
@@ -43,34 +41,37 @@ fedcm_test(async t => {
fedcm_test(async t => {
const disconnect = IdentityCredential.disconnect(
- disconnect_options("nonExistent"));
+ alt_disconnect_options("nonExistent"));
return promise_rejects_dom(t, 'NetworkError', disconnect);
}, 'Test that disconnect fails when there is no account to disconnect');
fedcm_test(async t => {
- const cred = await fedcm_get_and_select_first_account(t, request_options_with_mediation_required());
+ await mark_signed_in(alt_manifest_origin);
+ const cred = await fedcm_get_and_select_first_account(t, alt_request_options_with_mediation_required());
- return IdentityCredential.disconnect(disconnect_options("1234"));
+ return IdentityCredential.disconnect(alt_disconnect_options("1234"));
}, 'Test that disconnect succeeds when there is an account to disconnect');
fedcm_test(async t => {
- const cred = await fedcm_get_and_select_first_account(t, request_options_with_mediation_required());
+ await mark_signed_in(alt_manifest_origin);
+ const cred = await fedcm_get_and_select_first_account(t, alt_request_options_with_mediation_required());
- await IdentityCredential.disconnect(disconnect_options("1234"));
+ await IdentityCredential.disconnect(alt_disconnect_options("1234"));
- const disconnect = IdentityCredential.disconnect(disconnect_options("1234"));
+ const disconnect = IdentityCredential.disconnect(alt_disconnect_options("1234"));
return promise_rejects_dom(t, 'NetworkError', disconnect);
}, 'Test that disconnecting the same account twice results in failure.');
fedcm_test(async t => {
- const cred = await fedcm_get_and_select_first_account(t, request_options_with_mediation_required());
+ await mark_signed_in(alt_manifest_origin);
+ const cred = await fedcm_get_and_select_first_account(t, alt_request_options_with_mediation_required());
// A connected account is guaranteed by the above, and IDP accepts any account hint, so this tests
// that the user agent allows the request to go through to the IDP.
- return IdentityCredential.disconnect(disconnect_options("noMatch"));
+ return IdentityCredential.disconnect(alt_disconnect_options("noMatch"));
}, 'Disconnect passing an incorrect ID can still succeed');
fedcm_test(async t => {
- await set_alt_fedcm_cookie();
+ await mark_signed_in();
await mark_signed_in(alt_manifest_origin);
await fedcm_get_and_select_first_account(t, alt_request_options_with_mediation_required());
await fedcm_get_and_select_first_account(t,
diff --git a/testing/web-platform/tests/credential-management/fedcm-endpoint-redirects.https.html b/testing/web-platform/tests/credential-management/fedcm-endpoint-redirects.https.html
index 36a4de7900..71dbce0326 100644
--- a/testing/web-platform/tests/credential-management/fedcm-endpoint-redirects.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-endpoint-redirects.https.html
@@ -11,6 +11,7 @@ import {request_options_with_mediation_required,
fedcm_test,
select_manifest,
mark_signed_in,
+ fedcm_error_dialog_dismiss,
fedcm_get_dialog_type_promise,
fedcm_get_and_select_first_account} from './support/fedcm-helper.sub.js';
@@ -35,7 +36,9 @@ fedcm_test(async t => {
await select_manifest(t, test_options);
try {
- const cred = await fedcm_get_and_select_first_account(t, test_options);
+ const cred = fedcm_get_and_select_first_account(t, test_options);
+ fedcm_error_dialog_dismiss(t);
+ await cred;
assert_unreached("An IdentityCredentialError exception should be thrown.");
} catch (e) {
assert_true(e instanceof DOMException);
diff --git a/testing/web-platform/tests/credential-management/fedcm-error-basic.https.html b/testing/web-platform/tests/credential-management/fedcm-error-basic.https.html
index 49d6ea50df..fd902bcf90 100644
--- a/testing/web-platform/tests/credential-management/fedcm-error-basic.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-error-basic.https.html
@@ -23,7 +23,7 @@ fedcm_test(async t => {
await select_manifest(t, test_options);
try {
- const cred = await fedcm_get_and_select_first_account(t, test_options);
+ const cred = fedcm_get_and_select_first_account(t, test_options);
fedcm_error_dialog_dismiss(t);
await cred;
assert_unreached("An IdentityCredentialError exception should be thrown.");
@@ -41,7 +41,7 @@ fedcm_test(async t => {
await select_manifest(t, test_options);
try {
- const cred = await fedcm_get_and_select_first_account(t, test_options);
+ const cred = fedcm_get_and_select_first_account(t, test_options);
fedcm_error_dialog_click_button(t, "ErrorGotIt");
await cred;
assert_unreached("An IdentityCredentialError exception should be thrown.");
@@ -59,7 +59,7 @@ fedcm_test(async t => {
await select_manifest(t, test_options);
try {
- const cred = await fedcm_get_and_select_first_account(t, test_options);
+ const cred = fedcm_get_and_select_first_account(t, test_options);
fedcm_error_dialog_click_button(t, "ErrorMoreDetails");
await cred;
assert_unreached("An IdentityCredentialError exception should be thrown.");
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html
deleted file mode 100644
index ed7c1300bd..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-first-idp.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP abort first IDP test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-
-<script type="module">
- import {
- set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required
- } from '../support/fedcm-helper.sub.js';
-
- let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
- promise_test(async t => {
- let first_controller = new AbortController();
- let first_test_options = request_options_with_mediation_required();
- first_test_options.signal = first_controller.signal;
- const first_cred = navigator.credentials.get(first_test_options);
-
- let second_controller = new AbortController();
- let second_test_options = alt_request_options_with_mediation_required();
- second_test_options.signal = second_controller.signal;
- const second_cred = navigator.credentials.get(second_test_options);
-
- await cookies_promise;
- first_controller.abort();
- return Promise.all([
- promise_rejects_dom(t, 'AbortError', first_cred),
- promise_rejects_dom(t, 'AbortError', second_cred)
- ]);
- }, "Test abort signal for a multi IDP request by aborting the first IDP");
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html
deleted file mode 100644
index dfe8969932..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/abort-multiple-gets-through-second-idp.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP abort second IDP test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-
-<script type="module">
- import {
- set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required
- } from '../support/fedcm-helper.sub.js';
-
- let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
- promise_test(async t => {
- let first_controller = new AbortController();
- let first_test_options = request_options_with_mediation_required();
- first_test_options.signal = first_controller.signal;
- const first_cred = navigator.credentials.get(first_test_options);
-
- let second_controller = new AbortController();
- let second_test_options = alt_request_options_with_mediation_required();
- second_test_options.signal = second_controller.signal;
- const second_cred = navigator.credentials.get(second_test_options);
-
- await cookies_promise;
- second_controller.abort();
- return Promise.all([
- promise_rejects_dom(t, 'AbortError', first_cred),
- promise_rejects_dom(t, 'AbortError', second_cred)
- ]);
- }, "Test abort signal for a multi IDP request by aborting the second IDP");
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html
new file mode 100644
index 0000000000..712a7b6a34
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-abort.https.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API multi IDP abort.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<script type="module">
+import {request_options_with_two_idps,
+ fedcm_test,
+ fedcm_get_and_select_first_account} from '../support/fedcm-helper.sub.js';
+
+fedcm_test(async t => {
+ let controller = new AbortController();
+ let test_options = request_options_with_two_idps();
+ test_options.signal = controller.signal;
+ const cred = fedcm_get_and_select_first_account(t, test_options);
+ controller.abort();
+ return promise_rejects_dom(t, 'AbortError', cred);
+}, "Test that the abort signal works when multiple IDPs are used.");
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html
new file mode 100644
index 0000000000..d855e0ad8d
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-basic.https.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API multi IDP basic success tests.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<body>
+
+<script type="module">
+import {fedcm_test,
+ fedcm_get_and_select_first_account,
+ request_options_with_two_idps,
+ manifest_origin,
+ default_manifest_path,
+ fedcm_select_account_promise,
+ alt_manifest_origin} from '../support/fedcm-helper.sub.js';
+
+fedcm_test(async t => {
+ const cred = await fedcm_get_and_select_first_account(t, request_options_with_two_idps());
+ assert_equals(cred.token, "token");
+ assert_equals(cred.configURL, manifest_origin + default_manifest_path);
+}, "Multi IDP FedCM call succeeds when picking the first account.");
+
+fedcm_test(async t => {
+ const promise = navigator.credentials.get(request_options_with_two_idps());
+ // Each IDP has one account, so select the second one.
+ fedcm_select_account_promise(t, 1);
+ const cred = await promise;
+ assert_equals(cred.token, "token");
+ assert_equals(cred.configURL, alt_manifest_origin + default_manifest_path);
+}, "Multi IDP FedCM call succeeds when picking account from the second IDP.");
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html
new file mode 100644
index 0000000000..1bc3eb1f56
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-context.https.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API multi IDP context tests.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<body>
+
+<script type="module">
+import {request_options_with_two_idps,
+ fedcm_get_title_promise,
+ fedcm_test,
+ fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
+
+fedcm_test(async t => {
+ const p = navigator.credentials.get(request_options_with_two_idps());
+ const result = await fedcm_get_title_promise(t);
+ assert_true(result.title.toLowerCase().includes('sign in'));
+ fedcm_select_account_promise(t, 0);
+ return p;
+}, "FedCM multi IDP call defaults to 'signin' context.");
+
+fedcm_test(async t => {
+ const options = request_options_with_two_idps();
+ options.identity.context = "signup";
+ const p = navigator.credentials.get(options);
+ const result = await fedcm_get_title_promise(t);
+ assert_true(result.title.toLowerCase().includes('sign up'));
+ fedcm_select_account_promise(t, 0);
+ return p;
+}, "FedCM multi IDP with non-default context.");
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html
new file mode 100644
index 0000000000..1a819efb31
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-optional.https.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API multi IDP optional mediation tests.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<script type="module">
+import {request_options_with_two_idps,
+ fedcm_test,
+ fedcm_get_and_select_first_account,
+ fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
+
+fedcm_test(async t => {
+ return fedcm_get_and_select_first_account(t, request_options_with_two_idps('optional'));
+}, "Mediation optional can succeed without a returning account.");
+
+fedcm_test(async t => {
+ // Sign in to the first account.
+ await fedcm_get_and_select_first_account(t, request_options_with_two_idps());
+
+ // Now use mediation:optional and it should work.
+ return navigator.credentials.get(request_options_with_two_idps('optional'));
+}, "Mediation optional automatically succeeds when there is one returning account.");
+
+fedcm_test(async t => {
+ // Sign in to the first account.
+ await fedcm_get_and_select_first_account(t, request_options_with_two_idps());
+
+ // Sign in to the second account as well.
+ let cred = navigator.credentials.get(request_options_with_two_idps());
+ fedcm_select_account_promise(t, 1);
+ await cred;
+
+ // Now use mediation:optional.
+ return fedcm_get_and_select_first_account(t, request_options_with_two_idps('optional'));
+}, "Mediation optional can succeed when there is more than one returning account.");
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html
new file mode 100644
index 0000000000..d47d4898c7
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-multi-idp/fedcm-multi-idp-mediation-silent.https.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API multi IDP silent mediation tests.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<script type="module">
+import {request_options_with_two_idps,
+ fedcm_test,
+ fedcm_get_and_select_first_account,
+ fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
+
+fedcm_test(async t => {
+ const cred = navigator.credentials.get(request_options_with_two_idps('silent'));
+ return promise_rejects_dom(t, 'NetworkError', cred);
+}, "Mediation silent fails if there is no returning account.");
+
+fedcm_test(async t => {
+ // Sign in to the first account.
+ await fedcm_get_and_select_first_account(t, request_options_with_two_idps());
+
+ // Now use mediation:silent and it should work.
+ return navigator.credentials.get(request_options_with_two_idps('silent'));
+}, "Mediation silent succeeds when there is one returning account.");
+
+fedcm_test(async t => {
+ // Sign in to the first account.
+ await fedcm_get_and_select_first_account(t, request_options_with_two_idps());
+
+ // Sign in to the second account as well.
+ let cred = navigator.credentials.get(request_options_with_two_idps());
+ fedcm_select_account_promise(t, 1);
+ await cred;
+
+ // Now use mediation:silent and it should fail.
+ cred = navigator.credentials.get(request_options_with_two_idps('silent'));
+ return promise_rejects_dom(t, 'NetworkError', cred);
+}, "Mediation silent fails when there is more than one returning account.");
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html
deleted file mode 100644
index 12e0eb4d81..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-after-onload.https.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP get before and after onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie, set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-let has_window_loaded = false;
-const window_loaded = new Promise(resolve => {
- window.addEventListener('load', () => {
- has_window_loaded = true;
- resolve();
- });
-});
-
-promise_test(async t => {
- let first_cred_resolved = false;
- assert_false(has_window_loaded);
- // First navigator.credentials.get() is called prior to window.onload
- const first_cred = navigator.credentials.get(request_options_with_mediation_required()).finally(() => { first_cred_resolved = true; });
- await Promise.all([cookies_promise, window_loaded]);
- assert_true(has_window_loaded);
- assert_false(first_cred_resolved);
-
- // Second navigator.credentials.get() is called after window.onload but before first navigator.credentials.get()
- // resolves. Should be rejected because it occurs after onload, and the first get() call is pending.
- const second_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
- const rejection = promise_rejects_dom(t, 'NotAllowedError', second_cred);
-
- // Select first account from the first get() call.
- await fedcm_select_account_promise(t, 0);
- const first = await first_cred;
- assert_equals(first.token, "token");
- return rejection;
-}, "When there's a `get` call before onload, a `get` call which occurs after onload but before the first `get` call resolves, should be rejected.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html
deleted file mode 100644
index 3e2f134f20..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-and-during-onload.https.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP get before and during onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie, set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
-promise_test(async t => {
- let has_window_loaded = false;
- let rejection;
- const window_loaded = new Promise(resolve => {
- window.addEventListener('load', async () => {
- const second_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
- rejection = promise_rejects_dom(t, 'NetworkError', second_cred);
- has_window_loaded = true;
- resolve();
- });
- });
- assert_false(has_window_loaded);
- const first_cred = navigator.credentials.get(request_options_with_mediation_required());
- await Promise.all([cookies_promise, window_loaded]);
-
- // Select first account from the first get() call.
- await fedcm_select_account_promise(t, 0);
- assert_true(has_window_loaded);
- const first = await first_cred;
- assert_equals(first.token, "token");
- return rejection;
-}, "A `get` call before onload and a `get` call during onload should be combined.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html
deleted file mode 100644
index 95495948b7..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/get-before-onload-and-during-dom-content-loaded.https.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP get before onload and during DOMContentLoaded test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
-promise_test(async t => {
- let has_dom_content_loaded = false;
- let rejection;
- const dom_content_loaded = new Promise(resolve => {
- document.addEventListener('DOMContentLoaded', async () => {
- const second_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
- rejection = promise_rejects_dom(t, 'NetworkError', second_cred);
- has_dom_content_loaded = true;
- resolve();
- });
- });
- assert_false(has_dom_content_loaded);
- const first_cred = navigator.credentials.get(request_options_with_mediation_required());
- await Promise.all([cookies_promise, dom_content_loaded]);
- assert_true(has_dom_content_loaded);
-
- await fedcm_select_account_promise(t, 0);
- const first = await first_cred;
- assert_equals(first.token, "token");
- return rejection;
-}, "A `get` call before onload and a `get` call during DOMContentLoaded event should combine despite being called from different tasks.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html
deleted file mode 100644
index 899302fb22..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-abort.https.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP get after abort test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<script type="module">
- import {
- set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise
- } from '../support/fedcm-helper.sub.js';
-
- let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
- promise_test(async t => {
- let first_controller = new AbortController();
- let first_test_options = request_options_with_mediation_required();
- first_test_options.signal = first_controller.signal;
- const first_cred = navigator.credentials.get(first_test_options);
-
- let second_controller = new AbortController();
- let second_test_options = alt_request_options_with_mediation_required();
- second_test_options.signal = second_controller.signal;
- const second_cred = navigator.credentials.get(second_test_options);
-
- await cookies_promise;
- second_controller.abort();
- await Promise.all([
- promise_rejects_dom(t, 'AbortError', first_cred),
- promise_rejects_dom(t, 'AbortError', second_cred)
- ]);
-
- const third_cred = navigator.credentials.get(request_options_with_mediation_required());
- const fourth_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
-
- // Select first account, i.e. from the `third_cred`.
- await fedcm_select_account_promise(t, 0);
-
- // NetworkError is returned when another IDP is selected.
- await promise_rejects_dom(t, 'NetworkError', fourth_cred);
- const cred = await third_cred;
- assert_equals(cred.token, "token");
- }, "Multiple gets after aborting a multi IDP request should work");
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html
deleted file mode 100644
index 1b5d744e8f..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-after-onload.https.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP multiple gets after onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-const window_loaded = new Promise(resolve => {
- window.addEventListener('load', () => {
- resolve();
- });
-});
-
-promise_test(async t => {
- await Promise.all([cookies_promise, window_loaded]);
- const first_cred = navigator.credentials.get(request_options_with_mediation_required());
- const second_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
-
- // Select first account from the first get() call.
- await fedcm_select_account_promise(t, 0);
- // NetworkError is returned when another IDP is selected.
- await promise_rejects_dom(t, 'NetworkError', second_cred);
- const first = await first_cred;
- assert_equals(first.token, "token");
-}, "No `get` calls before or during onload, multiple `get` calls after onload in the same task are allowed.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html
deleted file mode 100644
index 8c98bf53b0..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-before-onload.https.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP multiple gets before onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-let has_window_loaded = false;
-window.addEventListener('load', () => {
- has_window_loaded = true;
-});
-
-promise_test(async t => {
- assert_false(has_window_loaded);
- const first_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
- const second_cred = navigator.credentials.get(request_options_with_mediation_required());
- await cookies_promise;
-
- // Select second account, i.e. from the second get() call.
- await fedcm_select_account_promise(t, 1);
- await promise_rejects_dom(t, 'NetworkError', first_cred);
- const cred = await second_cred;
- assert_equals(cred.token, "token");
-}, "Multiple get calls before window onload are allowed.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html
deleted file mode 100644
index bcf70a31c7..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/multiple-gets-during-onload.https.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP multiple gets during onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- set_alt_fedcm_cookie,
- request_options_with_mediation_required,
- alt_request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let cookies_promise = Promise.all([set_fedcm_cookie(), set_alt_fedcm_cookie()]);
-
-promise_test(async t => {
- const window_loaded = new Promise(resolve => {
- window.addEventListener('load', async () => {
- const first_cred = navigator.credentials.get(request_options_with_mediation_required());
- const second_cred = navigator.credentials.get(alt_request_options_with_mediation_required());
- await cookies_promise;
- await fedcm_select_account_promise(t, 0);
- await promise_rejects_dom(t, 'NetworkError', second_cred);
- const first = await first_cred;
- assert_equals(first.token, "token");
- resolve();
- });
- });
- await window_loaded;
-}, "No `get` calls before onload, multiple `get` calls during onload are allowed.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-after-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-after-onload.https.html
deleted file mode 100644
index de6a7c5371..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-after-onload.https.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP single get after onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- request_options_with_mediation_required,
- fedcm_get_and_select_first_account} from '../support/fedcm-helper.sub.js';
-
-const window_loaded = new Promise(resolve => {
- window.addEventListener('load', () => {
- resolve();
- });
-});
-
-promise_test(async t => {
- await set_fedcm_cookie();
- await window_loaded;
- const cred = await fedcm_get_and_select_first_account(t, request_options_with_mediation_required());
- assert_equals(cred.token, "token");
-}, "Single `get` call after onload is allowed.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-before-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-before-onload.https.html
deleted file mode 100644
index 0ac9b0e920..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-before-onload.https.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP single get before onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {set_fedcm_cookie,
- request_options_with_mediation_required,
- fedcm_select_account_promise} from '../support/fedcm-helper.sub.js';
-
-let has_window_loaded = false;
-const window_loaded = new Promise(resolve => {
- window.addEventListener('load', () => {
- has_window_loaded = true;
- resolve();
- });
-});
-
-promise_test(async t => {
- const first_cred = navigator.credentials.get(request_options_with_mediation_required());
- assert_false(has_window_loaded);
- await set_fedcm_cookie();
- await window_loaded;
- assert_true(has_window_loaded);
-
- // Select first account after onload.
- await fedcm_select_account_promise(t, 0);
- const first = await first_cred;
- assert_equals(first.token, "token");
-}, "Single `get` call before onload is allowed even if account is selected after.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-during-onload.https.html b/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-during-onload.https.html
deleted file mode 100644
index 832565744d..0000000000
--- a/testing/web-platform/tests/credential-management/fedcm-multi-idp/single-get-during-onload.https.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<title>Federated Credential Management API multi IDP single get during onload test.</title>
-<link rel="help" href="https://fedidcg.github.io/FedCM">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-
-<body>
-
-<script type="module">
-import {request_options_with_mediation_required,
- set_fedcm_cookie,
- fedcm_get_and_select_first_account} from '../support/fedcm-helper.sub.js';
-
-promise_test(async t => {
- const window_loaded = new Promise(resolve => {
- window.addEventListener('load', async () => {
- await set_fedcm_cookie();
- const first_cred = fedcm_get_and_select_first_account(t,
- request_options_with_mediation_required());
- const cred = await first_cred;
- assert_equals(cred.token, "token");
- resolve();
- });
- });
- await window_loaded;
-}, "Single `get` call during onload is allowed.");
-
-</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-register/fedcm-no-registered-idps.https.html b/testing/web-platform/tests/credential-management/fedcm-register/fedcm-no-registered-idps.https.html
new file mode 100644
index 0000000000..7be2d397e6
--- /dev/null
+++ b/testing/web-platform/tests/credential-management/fedcm-register/fedcm-no-registered-idps.https.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<title>Federated Credential Management API network request tests.</title>
+<link rel="help" href="https://fedidcg.github.io/FedCM">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<body>
+
+<script type="module">
+promise_test(async t => {
+ const cred = navigator.credentials.get({
+ identity: {
+ providers: [{
+ configURL: "any",
+ clientId: "na",
+ nonce: "1"
+ }]
+ }
+ });
+ return promise_rejects_dom(t, 'NetworkError', cred);
+}, "When no providers are registered an error should be returned.");
+
+</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html b/testing/web-platform/tests/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html
index 77ecdaff9f..d3d20ea9df 100644
--- a/testing/web-platform/tests/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-same-site-none/fedcm-same-site-none.https.html
@@ -20,6 +20,6 @@ fedcm_test(async t => {
const cred = await fedcm_get_and_select_first_account(t, options);
assert_equals(cred.token, "token");
assert_equals(cred.isAutoSelected, false);
-}, "FedCM requests should be considered cross-origin and therefore not send SameSite=Strict cookies.");
+}, "FedCM requests should be considered cross-origin and therefore not send SameSite=Strict or Lax cookies.");
</script>
diff --git a/testing/web-platform/tests/credential-management/fedcm-token-returned-with-http-error.https.html b/testing/web-platform/tests/credential-management/fedcm-token-returned-with-http-error.https.html
index 2337829add..7c7687f00f 100644
--- a/testing/web-platform/tests/credential-management/fedcm-token-returned-with-http-error.https.html
+++ b/testing/web-platform/tests/credential-management/fedcm-token-returned-with-http-error.https.html
@@ -8,6 +8,7 @@
<script type="module">
import {request_options_with_mediation_required,
+ fedcm_error_dialog_click_button,
fedcm_test,
select_manifest,
fedcm_get_and_select_first_account} from './support/fedcm-helper.sub.js';
@@ -18,6 +19,15 @@ fedcm_test(async t => {
await select_manifest(t, test_options);
const cred = fedcm_get_and_select_first_account(t, test_options);
- return promise_rejects_dom(t, 'NetworkError', cred);
+ fedcm_error_dialog_click_button(t, "ErrorGotIt");
+ try {
+ await cred;
+ assert_unreached("An IdentityCredentialError exception should be thrown.");
+ } catch (e) {
+ assert_true(e instanceof DOMException);
+ assert_equals(e.name, "IdentityCredentialError");
+ assert_equals(e.code, "");
+ assert_equals(e.url, "");
+ }
}, 'Test that the promise will be rejected if the response has http error');
</script>
diff --git a/testing/web-platform/tests/credential-management/support/fedcm-helper.sub.js b/testing/web-platform/tests/credential-management/support/fedcm-helper.sub.js
index f0031fa531..308950e1e2 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm-helper.sub.js
+++ b/testing/web-platform/tests/credential-management/support/fedcm-helper.sub.js
@@ -1,6 +1,7 @@
export const manifest_origin = "https://{{host}}:{{ports[https][0]}}";
export const alt_manifest_origin = 'https://{{hosts[alt][]}}:{{ports[https][0]}}';
export const same_site_manifest_origin = 'https://{{hosts[][www1]}}:{{ports[https][0]}}';
+export const default_manifest_path = '/credential-management/support/fedcm/manifest.py';
export function open_and_wait_for_popup(origin, path) {
return new Promise(resolve => {
@@ -100,6 +101,25 @@ credential-management/support/fedcm/${manifest_filename}`;
};
}
+export function request_options_with_two_idps(mediation = 'required') {
+ const first_config = `${manifest_origin}${default_manifest_path}`;
+ const second_config = `${alt_manifest_origin}${default_manifest_path}`;
+ return {
+ identity: {
+ providers: [{
+ configURL: first_config,
+ clientId: '123',
+ nonce: 'N1'
+ },
+ {
+ configURL: second_config,
+ clientId: '456',
+ nonce: 'N2'
+ }],
+ },
+ mediation: mediation
+ };
+}
// Test wrapper which does FedCM-specific setup.
export function fedcm_test(test_func, test_name) {
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/accounts_check_same_site_strict.py b/testing/web-platform/tests/credential-management/support/fedcm/accounts_check_same_site_strict.py
index a6f385feac..796ac003cb 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/accounts_check_same_site_strict.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/accounts_check_same_site_strict.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
if request.cookies.get(b"same_site_strict") == b"1":
return (546, [], "Should not send SameSite=Strict cookies")
+ if request.cookies.get(b"same_site_lax") == b"1":
+ return (547, [], "Should not send SameSite=Lax cookies")
if request.headers.get(b"Sec-Fetch-Site") != b"cross-site":
return (538, [], "Wrong Sec-Fetch-Site header")
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/continue_on.py b/testing/web-platform/tests/credential-management/support/fedcm/continue_on.py
index 1b4831b51d..2a580e0f3f 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/continue_on.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/continue_on.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
response.headers.set(b"Content-Type", b"application/json")
+ response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
+ response.headers.set(b"Access-Control-Allow-Credentials", "true")
account = request.POST.get(b"account_id").decode("utf-8")
nonce = request.POST.get(b"nonce").decode("utf-8")
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/request-params-check.py b/testing/web-platform/tests/credential-management/support/fedcm/request-params-check.py
index 6c610e6e20..08c28e32b7 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/request-params-check.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/request-params-check.py
@@ -63,12 +63,16 @@ def accountsCheck(request):
return (539, [], "Should not have Origin")
def tokenCheck(request):
- common_error = commonCheck(request)
+ common_error = commonCheck(request, b"cors")
if (common_error):
return common_error
common_credentialed_error = commonCredentialedRequestCheck(request)
if (common_credentialed_error):
return common_credentialed_error
+ # The value of the Sec-Fetch-Site header can vary depending on the IdP origin
+ # but it should not be 'none'.
+ if request.headers.get(b"Sec-Fetch-Site") == b"none":
+ return (538, [], "Wrong Sec-Fetch-Site header")
post_error = commonPostCheck(request)
if (post_error):
@@ -86,8 +90,9 @@ def revokeCheck(request):
if (common_error):
return common_error
- if request.cookies.get(b"cookie") != b"1":
- return (537, [], "Missing cookie")
+ common_credentialed_error = commonCredentialedRequestCheck(request)
+ if (common_credentialed_error):
+ return common_credentialed_error
# The value of the Sec-Fetch-Site header can vary depending on the IdP origin
# but it should not be 'none'.
if request.headers.get(b"Sec-Fetch-Site") == b"none":
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/token_check_same_site_strict.py b/testing/web-platform/tests/credential-management/support/fedcm/token_check_same_site_strict.py
index 8a4b3a234b..4e55bf27f6 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/token_check_same_site_strict.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/token_check_same_site_strict.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
if request.cookies.get(b"same_site_strict") == b"1":
return (546, [], "Should not send SameSite=Strict cookies")
+ if request.cookies.get(b"same_site_lax") == b"1":
+ return (547, [], "Should not send SameSite=Lax cookies")
response.headers.set(b"Content-Type", b"application/json")
response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/token_with_account_id.py b/testing/web-platform/tests/credential-management/support/fedcm/token_with_account_id.py
index 52fb20184b..04e7b5b56b 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/token_with_account_id.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/token_with_account_id.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
response.headers.set(b"Content-Type", b"application/json")
+ response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
+ response.headers.set(b"Access-Control-Allow-Credentials", "true")
account_id = request.POST.get(b"account_id")
return "{\"token\": \"account_id=" + account_id.decode("utf-8") + "\"}"
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/token_with_auto_selected_flag.py b/testing/web-platform/tests/credential-management/support/fedcm/token_with_auto_selected_flag.py
index 93ccf3ee7e..3e011ce788 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/token_with_auto_selected_flag.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/token_with_auto_selected_flag.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
response.headers.set(b"Content-Type", b"application/json")
+ response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
+ response.headers.set(b"Access-Control-Allow-Credentials", "true")
is_auto_selected = request.POST.get(b"is_auto_selected")
return "{\"token\": \"is_auto_selected=" + is_auto_selected.decode("utf-8") + "\"}"
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/token_with_http_error.py b/testing/web-platform/tests/credential-management/support/fedcm/token_with_http_error.py
index c8d95ab63d..05b9945ba8 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/token_with_http_error.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/token_with_http_error.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
response.headers.set(b"Content-Type", b"application/json")
+ response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
+ response.headers.set(b"Access-Control-Allow-Credentials", "true")
response.status = (403, b"Forbidden")
return "{\"token\": \"token\"}"
diff --git a/testing/web-platform/tests/credential-management/support/fedcm/token_with_rp_mode.py b/testing/web-platform/tests/credential-management/support/fedcm/token_with_rp_mode.py
index 515736416f..add634c99b 100644
--- a/testing/web-platform/tests/credential-management/support/fedcm/token_with_rp_mode.py
+++ b/testing/web-platform/tests/credential-management/support/fedcm/token_with_rp_mode.py
@@ -7,6 +7,8 @@ def main(request, response):
return request_error
response.headers.set(b"Content-Type", b"application/json")
+ response.headers.set(b"Access-Control-Allow-Origin", request.headers.get(b"Origin"))
+ response.headers.set(b"Access-Control-Allow-Credentials", "true")
rp_mode = request.POST.get(b"mode")
return "{\"token\": \"mode=" + rp_mode.decode("utf-8") + "\"}"
diff --git a/testing/web-platform/tests/credential-management/support/set_cookie.headers b/testing/web-platform/tests/credential-management/support/set_cookie.headers
index 4226ff4c99..df223115a7 100644
--- a/testing/web-platform/tests/credential-management/support/set_cookie.headers
+++ b/testing/web-platform/tests/credential-management/support/set_cookie.headers
@@ -1,3 +1,4 @@
Content-Type: text/html
-Set-Cookie: cookie=1; SameSite=None; Secure
-Set-Cookie: same_site_strict=1; SameSite=Strict; Secure
+Set-Cookie: cookie=1; SameSite=None; Secure; Path=/
+Set-Cookie: same_site_strict=1; SameSite=Strict; Secure; Path=/
+Set-Cookie: same_site_lax=1; SameSite=Lax; Secure; Path=/
diff --git a/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011-ref.xht b/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011-ref.xht
new file mode 100644
index 0000000000..2611de9f4a
--- /dev/null
+++ b/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011-ref.xht
@@ -0,0 +1,13 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Reftest Reference</title>
+ <link rel="author" title="Oriol Brufau" href="obrufau@igalia.com"/>
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css"/>
+ </head>
+ <body style="font: 25px/1 Ahem">
+ <div style="margin-bottom: 1em">X</div>
+ <div style="color: cyan;">X</div>
+ <div style="color: magenta">X</div>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011.xht b/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011.xht
new file mode 100644
index 0000000000..fed7bef25c
--- /dev/null
+++ b/testing/web-platform/tests/css/CSS2/margin-padding-clear/margin-collapse-clear-011.xht
@@ -0,0 +1,21 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>CSS Test: Margin Collapsing with Clearance</title>
+ <link rel="author" title="Oriol Brufau" href="obrufau@igalia.com"/>
+ <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#flow-control"/>
+ <link rel="help" href="http://www.w3.org/TR/CSS21/box.html#collapsing-margins"/>
+ <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#floats"/>
+ <link rel="match" href="margin-collapse-clear-011-ref.xht"/>
+ <meta name="assert" content="The magenta X appears below the cyan X due to clearance"/>
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css"/>
+ </head>
+ <body style="font: 25px/1 Ahem">
+ <div style="margin-bottom: 1em">X</div>
+ <div style="float: left; color: cyan;">X</div>
+ <div style="margin-bottom: 1em; height: 0px;">
+ <div style="margin-bottom: -1em;"></div>
+ </div>
+ <div style="clear: both; color: magenta">X</div>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/compositing/background-blending/crashtests/bgblend-root-change.html b/testing/web-platform/tests/css/compositing/background-blending/crashtests/bgblend-root-change.html
new file mode 100644
index 0000000000..06db053574
--- /dev/null
+++ b/testing/web-platform/tests/css/compositing/background-blending/crashtests/bgblend-root-change.html
@@ -0,0 +1,17 @@
+<style>
+* {
+ position: sticky;
+ border-left: double 488200679.54Q hsla(-39 5% 68% / 7%) !important;
+ box-shadow: 172vmax 60991vmax 32in 106cm hsl(-57532411.87deg, 70%, 54%);
+ background-blend-mode: overlay;
+ background: url(data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=) local content-box space space 0em / 15438983.37cm auto;
+}
+</style>
+<script>
+window.addEventListener("load", () => {
+ let a = document.createElementNS("http://www.w3.org/1998/Math/MathML", "math")
+ a.setAttribute("href", "x")
+ a.autofocus = true
+ document.documentElement.appendChild(a)
+})
+</script>
diff --git a/testing/web-platform/tests/css/compositing/mix-blend-mode/mix-blend-mode-parent-element-overflow-hidden-and-border-radius-2.html b/testing/web-platform/tests/css/compositing/mix-blend-mode/mix-blend-mode-parent-element-overflow-hidden-and-border-radius-2.html
new file mode 100644
index 0000000000..0b12301c4d
--- /dev/null
+++ b/testing/web-platform/tests/css/compositing/mix-blend-mode/mix-blend-mode-parent-element-overflow-hidden-and-border-radius-2.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: blending between an element having overflow:hidden and border-radius and its child, with will-change:opacity</title>
+ <link rel="author" title="Mirela Budăeș" href="mailto:mbudaes@adobe.com">
+ <link rel="author" title="Ion Roșca" href="mailto:rosca@adobe.com">
+ <link rel="author" title="Xianzhu Wang" href="mailto:wangxianzhu@chromium.org">
+ <link rel="help" href="https://drafts.fxtf.org/compositing-1/#mix-blend-mode">
+ <link rel="help" href="https://crbug.com/328339028">
+ <meta name="assert" content="Test checks that an element having mix-blend-mode and will-change:opacity blends with the parent element having overflow:hidden and border-radius">
+ <meta name="fuzzy" content="0-128;0-400">
+ <link rel="match" href="reference/mix-blend-mode-parent-element-overflow-hidden-and-border-radius-ref.html">
+ <style type="text/css">
+ .parent {
+ background: red;
+ width: 140px;
+ height: 140px;
+ position: relative;
+ z-index: 1;
+ overflow: hidden;
+ border-radius: 1em 5em;
+ }
+ .blended {
+ background: yellow;
+ width: 200px;
+ height: 200px;
+ mix-blend-mode: difference;
+ will-change: opacity;
+ }
+ </style>
+ </head>
+ <body>
+ <p> Test passes if you see a lime square with rounded corners.</p>
+ <div class="parent">
+ <div class="blended"></div>
+ </div>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-center-offset-change.html b/testing/web-platform/tests/css/css-anchor-position/anchor-center-offset-change.html
new file mode 100644
index 0000000000..fa383154da
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-center-offset-change.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning Test: Dynamically change the anchor-center position</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#anchor-center">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ }
+ #anchor {
+ width: 100px;
+ height: 100px;
+ anchor-name: --anchor;
+ }
+ #anchored {
+ position: absolute;
+ width: 100px;
+ height: 100px;
+ position-anchor: --anchor;
+ align-self: anchor-center;
+ left: anchor(--unknown right, 0px);
+ }
+</style>
+<div id="cb">
+ <div id="anchor"></div>
+ <div id="anchored"></div>
+</div>
+<script>
+ test(() => {
+ assert_equals(anchored.offsetLeft, 0);
+ assert_equals(anchored.offsetTop, 0);
+ }, "Anchored initially have the same width as the anchor");
+
+ test(() => {
+ anchor.style.height = "200px";
+ assert_equals(anchored.offsetLeft, 0);
+ assert_equals(anchored.offsetTop, 50);
+ }, "Increase the height of the anchor to move the anchor-center offset");
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll-ref.html b/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll-ref.html
new file mode 100644
index 0000000000..d2638491ce
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll-ref.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<title>CSS Test Reference</title>
+<body style="margin:0">
+ <div id="scroller" style="width:400px;height:400px;overflow:auto;background:orange">
+ <div style="height:100px"></div>
+ <div style="width:100px;height:100px;background:pink">
+ <div style="height:25px"></div>
+ <div style="width:50px;height:50px;background:purple"></div>
+ </div>
+ <div style="height:1000px"></div>
+ </div>
+</body>
+<script>
+ scroller.scrollTop = 100;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll.html b/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll.html
new file mode 100644
index 0000000000..29b5e06e2a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-center-scroll.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning Test: scroll adjusted anchor-center</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#anchor-center">
+<link rel="match" href="anchor-center-scroll-ref.html">
+<style>
+ body { margin: 0; }
+ #scroller {
+ width: 400px;
+ height: 400px;
+ overflow: auto;
+ background: orange;
+ }
+ #anchor {
+ margin-top: 100px;
+ width: 100px;
+ height: 100px;
+ background: pink;
+ anchor-name: --anchor;
+ }
+ #anchored {
+ position: absolute;
+ position-anchor: --anchor;
+ align-self: anchor-center;
+ width: 50px;
+ height: 50px;
+ background: purple;
+ }
+ #filler { height: 1000px; }
+</style>
+<div id="scroller">
+ <div id="anchor"></div>
+ <div id="anchored"></div>
+ <div id="filler"></div>
+</div>
+<script>
+ scroller.offsetTop;
+ scroller.scrollTop = 100;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-fallback-invalidation.html b/testing/web-platform/tests/css/css-anchor-position/anchor-fallback-invalidation.html
new file mode 100644
index 0000000000..a066c2da55
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-fallback-invalidation.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: Invalidation when the anchor*() fallback matches old style</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/">
+<link rel="help" href="https://issues.chromium.org/issues/333858786">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: 1px solid black;
+ }
+
+ #anchor {
+ anchor-name: --a;
+ position: absolute;
+ width: 40px;
+ height: 30px;
+ left: 75px;
+ top: 75px;
+ background: coral;
+ }
+
+ #anchored {
+ position: absolute;
+ background: seagreen;
+ width: 50px;
+ height: 50px;
+ }
+
+ #anchored.change {
+ /* The fallbacks match what the unchanged style says, but we shouldn't
+ take the fallbacks here. */
+ width: anchor-size(--a width, 50px);
+ height: anchor-size(--a height, 50px);
+ }
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=anchored>X</div>
+</div>
+<script>
+ test(() => {
+ assert_equals(anchored.offsetWidth, 50);
+ assert_equals(anchored.offsetHeight, 50);
+
+ anchored.classList.toggle('change');
+
+ assert_equals(anchored.offsetWidth, 40);
+ assert_equals(anchored.offsetHeight, 30);
+ }, 'Correct invalidation when fallbacks match the old style');
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-inherited.html b/testing/web-platform/tests/css/css-anchor-position/anchor-inherited.html
new file mode 100644
index 0000000000..0f84311d6d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-inherited.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<title>Tests that anchor functions inherit as pixels</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="/css/css-anchor-position/support/test-common.js"></script>
+
+<style>
+.cb {
+ width: 400px;
+ height: 400px;
+ position: relative;
+ border: 1px solid black;
+}
+
+.anchor {
+ width: 100px;
+ height: 100px;
+ top: 10px;
+ left: 20px;
+ position: absolute;
+ background: red;
+ anchor-name: --a;
+}
+
+.anchored {
+ position-anchor: --a;
+ position: absolute;
+ /* Anchored directly on top */
+ top: anchor(top);
+ left: anchor(left);
+ width: anchor-size(width);
+ height: anchor-size(height);
+ background: coral;
+}
+
+/* The child should have the same size as the anchored element,
+ and inset by top:10px,left:20px vs. that element. */
+.child {
+ position-anchor: --unknown; /* Should have no effect. */
+ position: relative;
+ background: skyblue;
+ top: inherit;
+ left: inherit;
+ width: inherit;
+ height: inherit;
+}
+
+</style>
+
+<body onload="checkLayoutForAnchorPos('.child')">
+
+<div class=cb>
+ <div class=anchor></div>
+ <div class=anchored>
+ <div class=child
+ data-offset-x=20 data-offset-y=10
+ data-expected-width=100 data-expected-height=100></div>
+ </div>
+</div>
+
+</body>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-invalid-fallback.html b/testing/web-platform/tests/css/css-anchor-position/anchor-invalid-fallback.html
new file mode 100644
index 0000000000..4768beac62
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-invalid-fallback.html
@@ -0,0 +1,234 @@
+<!DOCTYPE html>
+<title>CSS Anchor Position Test: invalid at computed-value time</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#anchor-valid">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#anchor-size-valid">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ :root {
+ --top: top;
+ }
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: 1px solid black;
+ }
+
+ #anchor {
+ anchor-name: --a;
+ position: absolute;
+ width: 50px;
+ height: 40px;
+ left: 75px;
+ top: 75px;
+ background: coral;
+ }
+
+ #main > div, #ref {
+ position: absolute;
+ background: seagreen;
+ }
+
+ #ref {
+ inset: unset;
+ width: unset;
+ height: unset;
+ min-width: unset;
+ min-height: unset;
+ max-width: unset;
+ max-height: unset;
+ }
+
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=main></div>
+ <div id=ref>X</div>
+</div>
+<script>
+
+// Append <div>X</div> to `container`, and remove it again once the test (`t`)
+// is finished.
+function createTarget(t, container) {
+ t.add_cleanup(() => { container.replaceChildren(); });
+ let target = document.createElement('div');
+ target.textContent = 'X';
+ container.append(target);
+ return target;
+}
+
+// First, some sanity checks to verify that the anchor etc is set up correctly,
+// and that anchor() queries can produce results if done correctly.
+
+test((t) => {
+ let target = createTarget(t, main);
+ target.style = `
+ position-anchor: --a;
+ left:anchor(right);
+ top:anchor(top);
+ width:anchor-size(width);
+ height:anchor-size(height);
+ `;
+ let cs = getComputedStyle(target);
+ assert_equals(cs.left, '125px');
+ assert_equals(cs.top, '75px');
+ assert_equals(cs.width, '50px');
+ assert_equals(cs.height, '40px');
+}, 'Element can be anchor positioned');
+
+test((t) => {
+ let target = createTarget(t, main);
+ target.style = `
+ /* No position-anchor here */
+ left:anchor(right, 17px);
+ top:anchor(top, 18px);
+ width:anchor-size(width, 42px);
+ height:anchor-size(height, 43px);
+ `;
+ let cs = getComputedStyle(target);
+ assert_equals(cs.left, '17px');
+ assert_equals(cs.top, '18px');
+ assert_equals(cs.width, '42px');
+ assert_equals(cs.height, '43px');
+}, 'Element can use <length> fallback if present');
+
+// Now test that any invalid anchor*() behaves as invalid at computed-value
+// time if there's no fallback specified.
+
+// Check that an anchored element with the specified style has the same
+// computed insets and sizing as the reference element (#ref), i.e. all
+// insets and sizing properties behave as 'unset'.
+function test_ref(style, description) {
+ test((t) => {
+ let target = createTarget(t, main);
+ target.style = style;
+ let cs = getComputedStyle(target);
+ let ref_cs = getComputedStyle(ref);
+ assert_equals(cs.top, ref_cs.top, 'top');
+ assert_equals(cs.left, ref_cs.left, 'left');
+ assert_equals(cs.right, ref_cs.right, 'right');
+ assert_equals(cs.bottom, ref_cs.bottom, 'bottom');
+ assert_equals(cs.width, ref_cs.width, 'width');
+ assert_equals(cs.height, ref_cs.height, 'height');
+ assert_equals(cs.minWidth, ref_cs.minWidth, 'minWidth');
+ assert_equals(cs.minHeight, ref_cs.minHeight, 'minHeight');
+ assert_equals(cs.maxWidth, ref_cs.maxWidth, 'maxWidth');
+ assert_equals(cs.maxHeight, ref_cs.maxHeight, 'maxHeight');
+ }, `Invalid anchor function, ${description}`);
+}
+
+// No default anchor (position-anchor):
+test_ref('left:anchor(left)', 'left');
+test_ref('right:anchor(right)', 'right');
+test_ref('bottom:anchor(bottom)', 'bottom');
+test_ref('top:anchor(top)', 'top');
+test_ref('width:anchor-size(width)', 'width');
+test_ref('height:anchor-size(height)', 'height');
+test_ref('min-width:anchor-size(width)', 'min-width');
+test_ref('min-height:anchor-size(height)', 'min-height');
+test_ref('max-width:anchor-size(width)', 'max-width');
+test_ref('max-height:anchor-size(height)', 'max-height');
+
+// Unknown anchor reference:
+test_ref('left:anchor(--unknown left)', '--unknown left');
+test_ref('width:anchor-size(--unknown width)', '--unknown width');
+
+// Wrong axis;
+test_ref('left:anchor(--a top)', 'cross-axis query (vertical)');
+test_ref('top:anchor(--a left)', ' cross-axis query (horizontal)');
+
+// Wrong query for the given property:
+test_ref('top:anchor-size(--a width)', 'anchor-size() in inset');
+test_ref('width:anchor(--a left)', 'anchor() in sizing property');
+
+// Invalid anchor*() deeper within calc():
+test_ref('left:calc(anchor(left) + 10px)', 'nested left');
+test_ref('right:calc(anchor(right) + 10px)', 'nested right');
+test_ref('bottom:calc(anchor(bottom) + 10px)', 'nested bottom');
+test_ref('top:calc(anchor(top) + 10px)', 'nested top');
+test_ref('min-width:calc(anchor-size(width) + 10px)', 'nested min-width');
+test_ref('min-height:calc(anchor-size(height) + 10px)', 'nested min-height');
+test_ref('max-width:calc(anchor-size(width) + 10px)', 'nested max-width');
+test_ref('max-height:calc(anchor-size(height) + 10px)', 'nested max-height');
+
+// Invalid anchor*() within fallback:
+test_ref('top:anchor(top, anchor(--unknown top))', 'invalid anchor() in fallback');
+test_ref('width:anchor-size(width, anchor-size(--unknown width))', 'invalid anchor-size() in fallback');
+
+// Non-calc() functions:
+test_ref('top:min(10px, anchor(top))', 'min()');
+test_ref('top:max(10px, anchor(top))', 'max()');
+test_ref('top:abs(anchor(top) - 100px)', 'abs()');
+test_ref('top:calc(sign(anchor(top) - 100px) * 20px)', 'sign()');
+
+// var():
+test_ref('top:anchor(var(--top))', 'anchor(var())');
+test_ref('top:anchor(var(--unknown, top))', 'anchor(unknown var()) (fallback)');
+test_ref('top:anchor(var(--unknown))', 'anchor(unknown var()) (no fallback)');
+
+// Reverting to an invalid anchor():
+test((t) => {
+ let target = createTarget(t, main);
+ target.setAttribute('id', 'target');
+
+ let css = document.createElement('style');
+ css.textContent = `
+ @layer base {
+ #target {
+ top: anchor(top); /* Invalid */
+ color: green;
+ }
+ }
+ #target {
+ top: revert-layer; /* Reverts to 'base'. */
+ }
+ `;
+
+ t.add_cleanup(() => { css.remove(); })
+ cb.append(css);
+
+ let cs = getComputedStyle(target);
+ let ref_cs = getComputedStyle(ref);
+ // The color check verifies that the rule is applied at all.
+ assert_equals(cs.color, 'rgb(0, 128, 0)');
+ assert_equals(cs.top, ref_cs.top);
+}, 'Revert to invalid anchor()');
+
+// Using <try-tactic> to flip to an invalid anchor():
+test((t) => {
+ let target = createTarget(t, main);
+ target.setAttribute('id', 'target');
+
+ let css = document.createElement('style');
+ css.textContent = `
+ @position-try --pt {
+ /* Undo force overflow, and also use this value to check that
+ the rule is applied at all. */
+ left: 10px;
+
+ /* Invalid. Becomes bottom:anchor(bottom) (also invalid)
+ after flip-block. */
+ top: anchor(top);
+ }
+
+ #target {
+ left: 9999px; /* Force overflow. */
+ position-try-options: --pt flip-block;
+ }
+ `;
+
+ t.add_cleanup(() => { css.remove(); })
+ cb.append(css);
+
+ let cs = getComputedStyle(target);
+ let ref_cs = getComputedStyle(ref);
+ assert_equals(cs.left, '10px', 'left');
+ // 'right' is not important in this test.
+
+ assert_equals(cs.top, ref_cs.top, 'top');
+ assert_equals(cs.bottom, ref_cs.bottom, 'bottom');
+}, 'Flip to invalid anchor()');
+
+</script>
+
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.html
new file mode 100644
index 0000000000..3a86da5f70
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<title>Tests scroll adjustments of element anchored to another anchored element</title>
+<link rel="author" href="mailto:wangxianzhu@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="reference/anchor-scroll-chained-001-ref.html">
+<style>
+body {
+ margin: 0;
+}
+
+div {
+ width: 100px;
+ height: 100px;
+}
+
+#scroller {
+ overflow: scroll;
+}
+
+#anchor {
+ anchor-name: --a1;
+ height: 20px;
+ background: orange;
+}
+
+#anchored1 {
+ position: absolute;
+ position-anchor: --a1;
+ left: anchor(--a1 left);
+ top: anchor(--a1 bottom);
+ background: green;
+ anchor-name: --a2;
+}
+
+#anchored2 {
+ position: absolute;
+ position-anchor: --a2;
+ left: anchor(--a2 left);
+ top: anchor(--a2 bottom);
+ background: lime;
+}
+
+</style>
+
+<div id="scroller">
+ <div style="height: 230px"></div>
+ <div id="anchor"></div>
+ <div style="height: 230px"></div>
+</div>
+<div id="anchored1"></div>
+<div id="anchored2"></div>
+
+<script>
+scroller.scrollTop = 200;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.tentative.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.tentative.html
deleted file mode 100644
index 1235f8fad4..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-001.tentative.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<title>Tests scroll adjustments of element anchored to another anchored element</title>
-<link rel="author" href="mailto:wangxianzhu@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
-<link rel="match" href="reference/anchor-scroll-chained-001.tentative-ref.html">
-<style>
-body {
- margin: 0;
-}
-
-div {
- width: 100px;
- height: 100px;
-}
-
-#scroller {
- overflow: scroll;
-}
-
-#anchor {
- anchor-name: --a1;
- height: 20px;
- background: orange;
-}
-
-#anchored1 {
- position: absolute;
- position-anchor: --a1;
- left: anchor(--a1 left);
- top: anchor(--a1 bottom);
- background: green;
- anchor-name: --a2;
-}
-
-#anchored2 {
- position: absolute;
- position-anchor: --a2;
- left: anchor(--a2 left);
- top: anchor(--a2 bottom);
- background: lime;
-}
-
-</style>
-
-<div id="scroller">
- <div style="height: 230px"></div>
- <div id="anchor"></div>
- <div style="height: 230px"></div>
-</div>
-<div id="anchored1"></div>
-<div id="anchored2"></div>
-
-<script>
-scroller.scrollTop = 200;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.html
new file mode 100644
index 0000000000..38dadba5c8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<title>Tests scroll adjustments of element anchored to another anchored element</title>
+<link rel="author" href="mailto:wangxianzhu@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="reference/anchor-scroll-chained-002-ref.html">
+<style>
+body {
+ margin: 0;
+}
+
+div {
+ width: 100px;
+ height: 100px;
+}
+
+#scroller1 {
+ width: 200px;
+ height: 200px;
+ position: relative;
+}
+
+#scroller1,#scroller2 {
+ overflow: scroll;
+}
+
+#anchor {
+ anchor-name: --a1;
+ height: 20px;
+ background: orange;
+}
+
+#anchored1 {
+ position: absolute;
+ position-anchor: --a1;
+ left: anchor(--a1 left);
+ top: anchor(--a1 bottom);
+ background: green;
+ anchor-name: --a2;
+}
+
+#anchored2 {
+ position: absolute;
+ position-anchor: --a2;
+ left: anchor(--a2 left);
+ top: anchor(--a2 bottom);
+ background: lime;
+}
+
+</style>
+
+<div id="scroller1">
+ <div style="height: 100px"></div>
+ <div id="scroller2">
+ <div style="height: 230px"></div>
+ <div id="anchor"></div>
+ <div style="height: 230px"></div>
+ </div>
+ <div style="height: 100px"></div>
+ <div id="anchored1"></div>
+</div>
+<div id="anchored2"></div>
+
+<script>
+scroller1.scrollTop = 80;
+scroller2.scrollTop = 200;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.tentative.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.tentative.html
deleted file mode 100644
index 9c60799e0b..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-002.tentative.html
+++ /dev/null
@@ -1,66 +0,0 @@
-<!DOCTYPE html>
-<title>Tests scroll adjustments of element anchored to another anchored element</title>
-<link rel="author" href="mailto:wangxianzhu@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
-<link rel="match" href="reference/anchor-scroll-chained-002.tentative-ref.html">
-<style>
-body {
- margin: 0;
-}
-
-div {
- width: 100px;
- height: 100px;
-}
-
-#scroller1 {
- width: 200px;
- height: 200px;
- position: relative;
-}
-
-#scroller1,#scroller2 {
- overflow: scroll;
-}
-
-#anchor {
- anchor-name: --a1;
- height: 20px;
- background: orange;
-}
-
-#anchored1 {
- position: absolute;
- position-anchor: --a1;
- left: anchor(--a1 left);
- top: anchor(--a1 bottom);
- background: green;
- anchor-name: --a2;
-}
-
-#anchored2 {
- position: absolute;
- position-anchor: --a2;
- left: anchor(--a2 left);
- top: anchor(--a2 bottom);
- background: lime;
-}
-
-</style>
-
-<div id="scroller1">
- <div style="height: 100px"></div>
- <div id="scroller2">
- <div style="height: 230px"></div>
- <div id="anchor"></div>
- <div style="height: 230px"></div>
- </div>
- <div style="height: 100px"></div>
- <div id="anchored1"></div>
-</div>
-<div id="anchored2"></div>
-
-<script>
-scroller1.scrollTop = 80;
-scroller2.scrollTop = 200;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.html
new file mode 100644
index 0000000000..6352ebbfb6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<title>Tests scroll adjustments of element anchored to another anchored element</title>
+<link rel="author" href="mailto:wangxianzhu@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="reference/anchor-scroll-chained-002-ref.html">
+<style>
+body {
+ margin: 0;
+}
+
+div {
+ width: 100px;
+ height: 100px;
+}
+
+#scroller1 {
+ width: 200px;
+ height: 200px;
+ position: relative;
+}
+
+#scroller1,#scroller2 {
+ overflow: scroll;
+}
+
+#anchor {
+ anchor-name: --a1;
+ height: 20px;
+ background: orange;
+}
+
+#anchored1 {
+ position: absolute;
+ position-anchor: --a1;
+ left: anchor(--a1 left);
+ top: anchor(--a1 bottom);
+ background: green;
+ anchor-name: --a2;
+ z-index: 1;
+}
+
+#anchored2 {
+ position: absolute;
+ position-anchor: --a2;
+ left: anchor(--a2 left);
+ top: anchor(--a2 bottom);
+ background: lime;
+ z-index: 1;
+}
+
+</style>
+
+<div id="anchored2"></div>
+<div id="scroller1">
+ <div id="anchored1"></div>
+ <div style="height: 100px"></div>
+ <div id="scroller2">
+ <div style="height: 230px"></div>
+ <div id="anchor"></div>
+ <div style="height: 230px"></div>
+ </div>
+ <div style="height: 100px"></div>
+</div>
+
+<script>
+scroller1.scrollTop = 80;
+scroller2.scrollTop = 200;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.tentative.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.tentative.html
deleted file mode 100644
index b441c92bf1..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-003.tentative.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<!DOCTYPE html>
-<title>Tests scroll adjustments of element anchored to another anchored element</title>
-<link rel="author" href="mailto:wangxianzhu@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
-<link rel="match" href="reference/anchor-scroll-chained-002.tentative-ref.html">
-<style>
-body {
- margin: 0;
-}
-
-div {
- width: 100px;
- height: 100px;
-}
-
-#scroller1 {
- width: 200px;
- height: 200px;
- position: relative;
-}
-
-#scroller1,#scroller2 {
- overflow: scroll;
-}
-
-#anchor {
- anchor-name: --a1;
- height: 20px;
- background: orange;
-}
-
-#anchored1 {
- position: absolute;
- position-anchor: --a1;
- left: anchor(--a1 left);
- top: anchor(--a1 bottom);
- background: green;
- anchor-name: --a2;
- z-index: 1;
-}
-
-#anchored2 {
- position: absolute;
- position-anchor: --a2;
- left: anchor(--a2 left);
- top: anchor(--a2 bottom);
- background: lime;
- z-index: 1;
-}
-
-</style>
-
-<div id="anchored2"></div>
-<div id="scroller1">
- <div id="anchored1"></div>
- <div style="height: 100px"></div>
- <div id="scroller2">
- <div style="height: 230px"></div>
- <div id="anchor"></div>
- <div style="height: 230px"></div>
- </div>
- <div style="height: 100px"></div>
-</div>
-
-<script>
-scroller1.scrollTop = 80;
-scroller2.scrollTop = 200;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.html
new file mode 100644
index 0000000000..b31519f580
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<title>Tests scroll adjustments of element anchored to another anchored element</title>
+<link rel="author" href="mailto:wangxianzhu@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="reference/anchor-scroll-chained-004-ref.html">
+<style>
+body {
+ margin: 0;
+}
+
+div {
+ width: 100px;
+ height: 100px;
+}
+
+#scroller1 {
+ width: 200px;
+ height: 200px;
+ position: relative;
+}
+
+#scroller1,#scroller2,#scroller3 {
+ overflow: scroll;
+}
+
+#anchor1 {
+ anchor-name: --a1;
+ height: 20px;
+ background: orange;
+}
+
+#anchor2 {
+ anchor-name: --a2;
+ height: 20px;
+ background: cyan;
+}
+
+#anchored1 {
+ position: absolute;
+ position-anchor: --a1;
+ left: anchor(--a1 left);
+ top: anchor(--a1 bottom);
+ background: green;
+}
+
+#anchored2 {
+ position: absolute;
+ position-anchor: --a2;
+ left: anchor(--a2 left);
+ top: anchor(--a2 bottom);
+ background: lime;
+}
+
+</style>
+
+<div id="scroller1">
+ <div style="height: 100px"></div>
+ <div id="scroller2">
+ <div style="height: 230px"></div>
+ <div id="anchor1"></div>
+ <div style="height: 230px"></div>
+ </div>
+ <div style="height: 100px"></div>
+ <div id="anchored1">
+ <div id="scroller3">
+ <div style="height: 230px"></div>
+ <div id="anchor2"></div>
+ <div style="height: 230px"></div>
+ </div>
+ </div>
+</div>
+<div id="anchored2"></div>
+
+<script>
+scroller1.scrollTop = 80;
+scroller2.scrollTop = 200;
+scroller3.scrollTop = 200;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.tentative.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.tentative.html
deleted file mode 100644
index f1765a9870..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-004.tentative.html
+++ /dev/null
@@ -1,78 +0,0 @@
-<!DOCTYPE html>
-<title>Tests scroll adjustments of element anchored to another anchored element</title>
-<link rel="author" href="mailto:wangxianzhu@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
-<link rel="match" href="reference/anchor-scroll-chained-004.tentative-ref.html">
-<style>
-body {
- margin: 0;
-}
-
-div {
- width: 100px;
- height: 100px;
-}
-
-#scroller1 {
- width: 200px;
- height: 200px;
- position: relative;
-}
-
-#scroller1,#scroller2,#scroller3 {
- overflow: scroll;
-}
-
-#anchor1 {
- anchor-name: --a1;
- height: 20px;
- background: orange;
-}
-
-#anchor2 {
- anchor-name: --a2;
- height: 20px;
- background: cyan;
-}
-
-#anchored1 {
- position: absolute;
- position-anchor: --a1;
- left: anchor(--a1 left);
- top: anchor(--a1 bottom);
- background: green;
-}
-
-#anchored2 {
- position: absolute;
- position-anchor: --a2;
- left: anchor(--a2 left);
- top: anchor(--a2 bottom);
- background: lime;
-}
-
-</style>
-
-<div id="scroller1">
- <div style="height: 100px"></div>
- <div id="scroller2">
- <div style="height: 230px"></div>
- <div id="anchor1"></div>
- <div style="height: 230px"></div>
- </div>
- <div style="height: 100px"></div>
- <div id="anchored1">
- <div id="scroller3">
- <div style="height: 230px"></div>
- <div id="anchor2"></div>
- <div style="height: 230px"></div>
- </div>
- </div>
-</div>
-<div id="anchored2"></div>
-
-<script>
-scroller1.scrollTop = 80;
-scroller2.scrollTop = 200;
-scroller3.scrollTop = 200;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.html
new file mode 100644
index 0000000000..221df77b06
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<title>Tests scroll adjustments of element anchored to another anchored element with fallback</title>
+<link rel="author" href="mailto:wangxianzhu@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="reference/anchor-scroll-chained-fallback-ref.html">
+<style>
+body {
+ margin: 0;
+}
+
+div {
+ width: 100px;
+ height: 100px;
+}
+
+#scroller {
+ overflow: scroll;
+ width: 300px;
+ height: 300px;
+}
+
+#anchor {
+ anchor-name: --a1;
+ background: orange;
+ margin: 250px 0;
+}
+
+#anchored1 {
+ position: absolute;
+ position-anchor: --a1;
+ background: green;
+ position-try-options: --fallback;
+ anchor-name: --a2;
+ left: anchor(--a1 left);
+ bottom: anchor(--a1 top);
+}
+
+#anchored2 {
+ position: absolute;
+ position-anchor: --a2;
+ left: anchor(--a2 left);
+ top: anchor(--a2 bottom);
+ background: lime;
+}
+
+@position-try --fallback {
+ left: anchor(--a1 right);
+ top: anchor(--a1 top);
+ bottom: auto;
+}
+
+</style>
+
+<div id="scroller">
+ <div id="anchor"></div>
+</div>
+<div id="anchored1"></div>
+<div id="anchored2"></div>
+
+<script>
+scroller.scrollTop = 200;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html
deleted file mode 100644
index d2300da818..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-chained-fallback.tentative.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE html>
-<title>Tests scroll adjustments of element anchored to another anchored element with fallback</title>
-<link rel="author" href="mailto:wangxianzhu@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
-<link rel="match" href="reference/anchor-scroll-chained-fallback.tentative-ref.html">
-<style>
-body {
- margin: 0;
-}
-
-div {
- width: 100px;
- height: 100px;
-}
-
-#scroller {
- overflow: scroll;
- width: 300px;
- height: 300px;
-}
-
-#anchor {
- anchor-name: --a1;
- background: orange;
- margin: 250px 0;
-}
-
-#anchored1 {
- position: absolute;
- position-anchor: --a1;
- background: green;
- position-try-options: --fallback;
- anchor-name: --a2;
- left: anchor(--a1 left);
- bottom: anchor(--a1 top);
-}
-
-#anchored2 {
- position: absolute;
- position-anchor: --a2;
- left: anchor(--a2 left);
- top: anchor(--a2 bottom);
- background: lime;
-}
-
-@position-try --fallback {
- left: anchor(--a1 right);
- top: anchor(--a1 top);
- bottom: auto;
-}
-
-</style>
-
-<div id="scroller">
- <div id="anchor"></div>
-</div>
-<div id="anchored1"></div>
-<div id="anchored2"></div>
-
-<script>
-scroller.scrollTop = 200;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden-ref.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden-ref.html
new file mode 100644
index 0000000000..b674998a5d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden-ref.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<link rel="stylesheet" href="/fonts/ahem.css">
+<style>
+body {
+ font: 20px/1 Ahem;
+ margin: 0;
+}
+
+#placefiller-above-anchor {
+ height: 200px;
+}
+
+#placefiller-before-anchor {
+ display: inline-block;
+ width: 50px;
+}
+
+#inner-anchored {
+ color: green;
+ position: fixed;
+ left: 70px;
+ top: 180px;
+}
+
+#outer-anchored {
+ color: yellow;
+ position: fixed;
+ left: 70px;
+ top: 220px;
+}
+</style>
+
+<div id="placefiller-above-anchor"></div>
+<div id="placefiller-before-anchor"></div>
+<span id="anchor">anchor</span>
+<div id="inner-anchored">inner-anchored</div>
+<div id="outer-anchored">outer-anchored</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden.html
new file mode 100644
index 0000000000..b57e39956b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-overflow-hidden.html
@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<title>Basic of anchor positioned scrolling: anchored elements should be "pinned" to the anchor when anchor is scrolled in overflow:hidden</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="anchor-scroll-overflow-hidden-ref.html">
+<link rel="stylesheet" href="/fonts/ahem.css">
+<style>
+body {
+ font: 20px/1 Ahem;
+ margin: 0;
+}
+
+#scroll-container {
+ width: 400px;
+ height: 400px;
+ overflow: hidden;
+}
+
+#scroll-contents {
+ width: 1000px;
+ height: 1000px;
+}
+
+#placefiller-above-anchor {
+ height: 500px;
+}
+
+#placefiller-before-anchor {
+ display: inline-block;
+ width: 500px;
+}
+
+#anchor {
+ anchor-name: --anchor;
+}
+
+#inner-anchored {
+ color: green;
+ position: absolute;
+ left: anchor(--anchor left);
+ bottom: anchor(--anchor top);
+ position-anchor: --anchor;
+}
+
+#outer-anchored {
+ color: yellow;
+ position: absolute;
+ left: anchor(--anchor left);
+ top: anchor(--anchor bottom);
+ position-anchor: --anchor;
+}
+</style>
+
+<div id="scroll-container">
+ <div id="scroll-contents">
+ <div id="placefiller-above-anchor"></div>
+ <div id="placefiller-before-anchor"></div>
+ <span id="anchor">anchor</span>
+ <div id="inner-anchored">inner-anchored</div>
+ </div>
+</div>
+<div id="outer-anchored">outer-anchored</div>
+
+<script>
+const scroller = document.getElementById('scroll-container');
+scroller.scrollTop = 300;
+scroller.scrollLeft = 450;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-013.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-013.html
new file mode 100644
index 0000000000..3f1330d744
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-013.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#scroll">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#fallback-apply">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/test-common.js"></script>
+<style>
+#cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: solid 1px;
+}
+
+#scroller {
+ width: 200px;
+ height: 200px;
+ overflow: scroll;
+}
+
+#abspos {
+ position: absolute;
+ background: hotpink;
+ width: 50px;
+ height: 50px;
+
+ inset-area: bottom;
+ position-try-options: flip-block;
+ position-anchor: --a;
+}
+
+#anchor {
+ anchor-name: --a;
+ width: 50px;
+ height: 50px;
+ margin: 150px 0 150px 50px;
+ background: dodgerblue;
+}
+
+</style>
+<div id="cb">
+ <div id="scroller">
+ <div id="anchor">
+ </div>
+ </div>
+ <div id="abspos"></div>
+</div>
+
+<script>
+promise_test(async () => {
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'top');
+});
+
+promise_test(async () => {
+ scroller.scrollTop = 50;
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'bottom');
+});
+
+promise_test(async () => {
+ scroller.scrollTop = 40;
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'top');
+});
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-014.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-014.html
new file mode 100644
index 0000000000..f19f41c088
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-position-try-014.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#scroll">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#fallback-apply">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/test-common.js"></script>
+<style>
+#cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: solid 1px;
+}
+
+#scroller {
+ width: 200px;
+ height: 200px;
+ overflow: scroll;
+ display: flex;
+ flex-direction: column-reverse;
+}
+
+#abspos {
+ position: absolute;
+ background: hotpink;
+ width: 50px;
+ height: 50px;
+
+ inset-area: top;
+ position-try-options: flip-block;
+ position-anchor: --a;
+}
+
+#anchor {
+ anchor-name: --a;
+ width: 50px;
+ min-height: 50px;
+ flex: 0;
+ margin: 150px 0 150px 50px;
+ background: dodgerblue;
+}
+
+</style>
+<div id="cb">
+ <div id="scroller">
+ <div id="anchor">
+ </div>
+ </div>
+ <div id="abspos"></div>
+</div>
+
+<script>
+promise_test(async () => {
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'bottom');
+});
+
+promise_test(async () => {
+ scroller.scrollTop = -100;
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'top');
+});
+
+promise_test(async () => {
+ scroller.scrollTop = -50;
+ await waitUntilNextAnimationFrame();
+ assert_fallback_position(abspos, anchor, 'bottom');
+});
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor-ref.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor-ref.html
new file mode 100644
index 0000000000..3528b565fc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor-ref.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<style>
+#scroll-container {
+ width: 400px;
+ height: 400px;
+ overflow: scroll;
+}
+
+#scroll-contents {
+ width: 1000px;
+ height: 1000px;
+ position: relative;
+}
+
+#anchor {
+ anchor-name: --anchor;
+ height: 100px;
+ width: 100px;
+ overflow: scroll;
+}
+
+#anchored {
+ background: green;
+ width: 100px;
+ height: 100px;
+}
+</style>
+
+<div id="scroll-container">
+ <div id="scroll-contents">
+ <div style="height: 400px"></div>
+ <div id="anchored"></div>
+ <div id="anchor">
+ <div style="height: 500px"></div>
+ </div>
+ </div>
+</div>
+
+<script>
+document.getElementById('scroll-container').scrollTop = 300;
+document.getElementById('anchor').scrollTop = 300;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor.html b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor.html
new file mode 100644
index 0000000000..c2a256877d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/anchor-scroll-scrollable-anchor.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<title>Basic of anchor positioned scrolling: scroll of a scrollable anchor should not affect anchor positioing</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/">
+<link rel="match" href="anchor-scroll-scrollable-anchor-ref.html">
+<style>
+#scroll-container {
+ width: 400px;
+ height: 400px;
+ overflow: scroll;
+ will-change: scroll-position;
+}
+
+#scroll-contents {
+ width: 1000px;
+ height: 1000px;
+ position: relative;
+}
+
+.placefiller {
+ height: 500px;
+}
+
+#anchor {
+ anchor-name: --anchor;
+ height: 100px;
+ width: 100px;
+ overflow: scroll;
+ will-change: scroll-position;
+}
+
+#anchored {
+ background: green;
+ position: absolute;
+ width: 100px;
+ height: 100px;
+ left: anchor(left);
+ bottom: anchor(top);
+ position-anchor: --anchor;
+}
+</style>
+
+<div id="scroll-container">
+ <div id="scroll-contents">
+ <div class="placefiller"></div>
+ <div id="anchor">
+ <div class="placefiller"></div>
+ </div>
+ </div>
+</div>
+<div id="anchored"></div>
+
+<script>
+document.getElementById('scroll-container').scrollTop = 300;
+document.getElementById('anchor').scrollTop = 300;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/at-position-try-cssom.html b/testing/web-platform/tests/css/css-anchor-position/at-position-try-cssom.html
index 91172c5185..42f82d9d4b 100644
--- a/testing/web-platform/tests/css/css-anchor-position/at-position-try-cssom.html
+++ b/testing/web-platform/tests/css/css-anchor-position/at-position-try-cssom.html
@@ -24,7 +24,7 @@ test(t => {
const positionTryRule = style.sheet.cssRules[0];
assert_true(positionTryRule instanceof CSSPositionTryRule);
assert_equals(positionTryRule.name, '--pf');
- assert_true(positionTryRule.style instanceof CSSStyleDeclaration);
+ assert_true(positionTryRule.style instanceof CSSPositionTryDescriptors);
assert_equals(positionTryRule.style.length, 1);
assert_equals(positionTryRule.style.left, 'anchor(right)');
}, 'CSSPositionTryRule attribute values');
@@ -63,4 +63,140 @@ test(t => {
}, 'CSSPositionTryRule.style.setProperty setting allowed and disallowed properties');
+test(t => {
+ const style = createStyle(t, `
+ @position-try --pf {
+ top: 10px;
+ left: 20px;
+ --x: 200px;
+ color: red;
+ }
+ `);
+ let declarations = style.sheet.cssRules[0].style;
+ assert_equals(declarations.length, 2);
+ assert_equals(declarations.item(0), 'top');
+ assert_equals(declarations.item(1), 'left');
+}, 'CSSPositionTryDescriptors.item');
+
+test(t => {
+ const style = createStyle(t, '@position-try --pf {}');
+ let declarations = style.sheet.cssRules[0].style;
+ assert_equals(declarations.length, 0);
+ declarations.cssText = `color:red;top:10px;`;
+ assert_equals(declarations.length, 1);
+}, 'CSSPositionTryDescriptors.cssText');
+
+let supported_properties = [
+ 'margin',
+ 'margin-top',
+ 'margin-right',
+ 'margin-bottom',
+ 'margin-left',
+ 'margin-block',
+ 'margin-block-start',
+ 'margin-block-end',
+ 'margin-inline',
+ 'margin-inline-start',
+ 'margin-inline-end',
+ 'inset',
+ 'top',
+ 'left',
+ 'right',
+ 'bottom',
+ 'inset-block',
+ 'inset-block-start',
+ 'inset-block-end',
+ 'inset-inline',
+ 'inset-inline-start',
+ 'inset-inline-end',
+ 'width',
+ 'height',
+ 'min-width',
+ 'max-width',
+ 'min-height',
+ 'max-height',
+ 'block-size',
+ 'min-block-size',
+ 'max-block-size',
+ 'inline-size',
+ 'min-inline-size',
+ 'max-inline-size',
+ 'place-self',
+ 'align-self',
+ 'justify-self',
+ 'position-anchor',
+ 'inset-area',
+];
+
+// A selection of unsupported properties.
+let unsupported_properties = [
+ 'color',
+ 'align-items',
+ 'align-content',
+ 'background',
+ 'display',
+ 'position',
+ 'writing-mode',
+ 'direction',
+ 'syntax', // @property
+];
+
+let upperFirst = (x) => x[0].toUpperCase() + x.slice(1);
+let lowerFirst = (x) => x[0].toLowerCase() + x.slice(1);
+let toLowerCamelCase = (x) => lowerFirst(x.split('-').map(upperFirst).join(''));
+
+// Test getting/setting the specified property on a CSSPositionTryDescriptors
+// object. The property can either be supported or not supported,
+// which determines the expected results.
+function test_property(prop, supported) {
+ test(t => {
+ let decls = supported_properties.map(x => `${x}:unset;`).join('');
+ let style = createStyle(t, `@position-try --pf { ${decls} }`);
+ let declarations = style.sheet.cssRules[0].style;
+ assert_equals(declarations.getPropertyValue(prop), supported ? 'unset' : '');
+ }, `CSSPositionTryDescriptors.getPropertyValue(${prop})`);
+
+ test(t => {
+ let style = createStyle(t, '@position-try --pf {}');
+ let declarations = style.sheet.cssRules[0].style;
+ declarations.setProperty(prop, 'unset');
+ assert_equals(declarations.getPropertyValue(prop), supported ? 'unset' : '');
+ }, `CSSPositionTryDescriptors.setProperty(${prop})`);
+
+ test(t => {
+ let decls = supported_properties.map(x => `${x}:unset;`).join('');
+ let style = createStyle(t, `@position-try --pf { ${decls} }`);
+ let declarations = style.sheet.cssRules[0].style;
+ assert_equals(declarations[prop], supported ? 'unset' : undefined);
+ }, `CSSPositionTryDescriptors[${prop}] (set)`);
+
+ test(t => {
+ let style = createStyle(t, '@position-try --pf {}');
+ let declarations = style.sheet.cssRules[0].style;
+ declarations[prop] = 'unset';
+ assert_equals(declarations.getPropertyValue(prop), supported ? 'unset' : '');
+ }, `CSSPositionTryDescriptors[${prop}] (get)`);
+
+ let camelCaseAttr = toLowerCamelCase(prop);
+ if (camelCaseAttr != prop) {
+ // Also test the camelCase version of the attribute.
+ test(t => {
+ let decls = supported_properties.map(x => `${x}:unset;`).join('');
+ let style = createStyle(t, `@position-try --pf { ${decls} }`);
+ let declarations = style.sheet.cssRules[0].style;
+ assert_equals(declarations[camelCaseAttr], supported ? 'unset' : undefined);
+ }, `CSSPositionTryDescriptors[${camelCaseAttr}] (get)`);
+
+ test(t => {
+ let style = createStyle(t, '@position-try --pf {}');
+ let declarations = style.sheet.cssRules[0].style;
+ declarations[camelCaseAttr] = 'unset';
+ assert_equals(declarations.getPropertyValue(prop), supported ? 'unset' : '');
+ }, `CSSPositionTryDescriptors[${camelCaseAttr}] (set)`);
+ }
+}
+
+supported_properties.forEach(x => { test_property(x, /* supported */ true); });
+unsupported_properties.forEach(x => { test_property(x, /* supported */ false); });
+
</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/base-style-invalidation.html b/testing/web-platform/tests/css/css-anchor-position/base-style-invalidation.html
new file mode 100644
index 0000000000..8e8e69f9b7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/base-style-invalidation.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: Invalidation from changing the base style</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/">
+<link rel="help" href="https://issues.chromium.org/issues/333608683">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ @position-try --pt {
+ width: 50px; /* Undo force overflow */
+ }
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: 1px solid black;
+ }
+ #anchor {
+ position: absolute;
+ left: 75px;
+ top: 75px;
+ width: 50px;
+ height: 50px;
+ background: coral;
+ anchor-name: --a;
+ }
+ #anchored {
+ position: absolute;
+ position-anchor: --a;
+ position-try-options: --pt flip-start;
+ inset: 0;
+ top: anchor(top);
+ bottom: anchor(bottom);
+ right: calc(anchor(left) + 5px);
+ width: 50px;
+ height: 50px;
+ background: skyblue;
+ justify-self: end;
+ }
+ #anchored.flip {
+ background: seagreen;
+ width: 300px; /* Force overflow */
+ }
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=anchored></div>
+</div>
+<script>
+ test(() => {
+ // Initially to the left.
+ assert_equals(anchored.offsetLeft, 20);
+ assert_equals(anchored.offsetTop, 75);
+
+ // Flips to the right.
+ anchored.classList.toggle('flip');
+ assert_equals(anchored.offsetLeft, 75);
+ assert_equals(anchored.offsetTop, 20);
+
+ // Flips to the original position.
+ anchored.classList.toggle('flip');
+ assert_equals(anchored.offsetLeft, 20);
+ assert_equals(anchored.offsetTop, 75);
+ }, 'The chosen position options changes when the base style differs');
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/chrome-336164421-crash.html b/testing/web-platform/tests/css/css-anchor-position/chrome-336164421-crash.html
new file mode 100644
index 0000000000..c45b69059b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/chrome-336164421-crash.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/336164421">
+<style>
+ #inner {
+ position: absolute;
+ left: anchor(left);
+ }
+ #inner::before {
+ display: none;
+ content: "";
+ }
+</style>
+<div id="inner"></div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/chrome-336322507-crash.html b/testing/web-platform/tests/css/css-anchor-position/chrome-336322507-crash.html
new file mode 100644
index 0000000000..922c53b977
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/chrome-336322507-crash.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/336322507">
+<style>
+ #crash {
+ --grad: linear-gradient(black, white);
+ background: var(--grad);
+ position: absolute;
+ top: anchor(center);
+ }
+</style>
+<div id="crash"></div>
+<script>
+ document.body.offsetTop;
+ crash.remove();
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/inset-area-function.html b/testing/web-platform/tests/css/css-anchor-position/inset-area-function.html
new file mode 100644
index 0000000000..9d68bf9ddf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/inset-area-function.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: inset-area()</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-try-options">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: 1px solid black;
+ }
+ #anchor {
+ position: absolute;
+ left: 100px;
+ top: 100px;
+ width: 80px;
+ height: 80px;
+ background-color: tomato;
+ anchor-name: --a;
+ }
+ #target, #ref {
+ position: absolute;
+ width: 40px;
+ height: 40px;
+ background-color: skyblue;
+ inset-area: bottom right;
+ position-anchor: --a;
+ }
+ #ref {
+ background-color: seagreen;
+ }
+</style>
+<style id=style>
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=target></div>
+ <div id=ref></div>
+</div>
+<script>
+
+// Test that a given inset-area() produces the same result as a reference
+// element that is styled with an inset-area declaration directly.
+function test_inset_area_fn(inset_area_function, inset_area_expected) {
+ test((t) => {
+ t.add_cleanup(() => {
+ style.textContent = '';
+ });
+ style.textContent = `
+ #target {
+ position-try-options: ${inset_area_function};
+ }
+ #ref {
+ inset-area: ${inset_area_expected};
+ }
+ `;
+ assert_equals(target.offsetLeft, ref.offsetLeft, 'offsetLeft');
+ assert_equals(target.offsetTop, ref.offsetTop, 'offsetTop');
+ }, `${inset_area_function}, ${inset_area_expected}`);
+}
+
+test_inset_area_fn('inset-area(top left)', 'top left');
+test_inset_area_fn('inset-area(span-top left)', 'span-top left');
+test_inset_area_fn('inset-area(top span-left)', 'top span-left');
+test_inset_area_fn('inset-area(top center)', 'top center');
+test_inset_area_fn('inset-area(left center)', 'left center');
+test_inset_area_fn('inset-area(start center)', 'start center');
+test_inset_area_fn('inset-area(center start)', 'center start');
+
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/inset-area-in-position-try.html b/testing/web-platform/tests/css/css-anchor-position/inset-area-in-position-try.html
new file mode 100644
index 0000000000..7339c4f41d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/inset-area-in-position-try.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: inset-area in @position-try</title>
+<link rel="help" href='https://drafts.csswg.org/css-anchor-position-1/#position-try-options'>
+<script src='/resources/testharness.js'></script>
+<script src='/resources/testharnessreport.js'></script>
+<style>
+ #cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ border: 1px solid black;
+ }
+ #anchor {
+ position: absolute;
+ left: 100px;
+ top: 100px;
+ width: 50px;
+ height: 50px;
+ background-color: tomato;
+ anchor-name: --a;
+ }
+ #target {
+ left: 200px; /* force fallback */
+ }
+ #target, #ref {
+ position: absolute;
+ width: 40px;
+ height: 40px;
+ background-color: skyblue;
+ inset-area: bottom right;
+ position-anchor: --a;
+ }
+ #ref {
+ background-color: seagreen;
+ }
+</style>
+<style id=style>
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=target></div>
+ <div id=ref></div>
+</div>
+<script>
+
+// Test that inside-area, when used inside @position-try, works the same
+// as when it's specified in the base style.
+function test_inset_area_ref(inset_area) {
+ test((t) => {
+ t.add_cleanup(() => {
+ style.textContent = '';
+ });
+ style.textContent = `
+ @position-try --pt {
+ inset: unset; /* Undo force fallback */
+ inset-area: ${inset_area};
+ }
+ #target {
+ position-try-options: --pt;
+ }
+ #ref {
+ inset-area: ${inset_area};
+ }
+ `;
+ assert_true(CSS.supports('inset-area', 'top left'));
+ assert_true(CSS.supports('position-try-options', '--x'));
+ assert_equals(target.offsetLeft, ref.offsetLeft, 'offsetLeft');
+ assert_equals(target.offsetTop, ref.offsetTop, 'offsetTop');
+ }, `${inset_area}`);
+}
+
+test_inset_area_ref('none');
+test_inset_area_ref('span-all');
+test_inset_area_ref('span-all span-all');
+test_inset_area_ref('top left');
+test_inset_area_ref('top center');
+test_inset_area_ref('top right');
+test_inset_area_ref('center left');
+test_inset_area_ref('center center');
+test_inset_area_ref('center right');
+test_inset_area_ref('bottom left');
+test_inset_area_ref('bottom center');
+test_inset_area_ref('bottom right');
+test_inset_area_ref('start start');
+test_inset_area_ref('start center');
+test_inset_area_ref('start end');
+test_inset_area_ref('center start');
+test_inset_area_ref('center end');
+test_inset_area_ref('end start');
+test_inset_area_ref('end center');
+test_inset_area_ref('end end');
+test_inset_area_ref('self-start self-start');
+test_inset_area_ref('self-start center');
+test_inset_area_ref('self-start self-end');
+test_inset_area_ref('center self-start');
+test_inset_area_ref('center self-end');
+test_inset_area_ref('self-end self-start');
+test_inset_area_ref('self-end center');
+test_inset_area_ref('self-end self-end');
+test_inset_area_ref('y-start x-start');
+test_inset_area_ref('y-start center');
+test_inset_area_ref('y-start x-end');
+test_inset_area_ref('center x-start');
+test_inset_area_ref('center x-end');
+test_inset_area_ref('y-end x-start');
+test_inset_area_ref('y-end center');
+test_inset_area_ref('y-end x-end');
+test_inset_area_ref('y-self-start x-self-start');
+test_inset_area_ref('y-self-start center');
+test_inset_area_ref('y-self-start x-self-end');
+test_inset_area_ref('center x-self-start');
+test_inset_area_ref('center x-self-end');
+test_inset_area_ref('y-self-end x-self-start');
+test_inset_area_ref('y-self-end center');
+test_inset_area_ref('y-self-end x-self-end');
+test_inset_area_ref('span-y-self-start span-x-self-end');
+test_inset_area_ref('span-bottom span-all');
+
+</script>
+
+<style>
+ @position-try --top {
+ inset: unset; /* Undo force fallback */
+ inset-area: top;
+ }
+ @position-try --right {
+ inset: unset; /* Undo force fallback */
+ inset-area: right;
+ }
+ @position-try --bottom {
+ inset: unset; /* Undo force fallback */
+ inset-area: bottom;
+ }
+ @position-try --left {
+ inset: unset; /* Undo force fallback */
+ inset-area: left;
+ }
+</style>
+<script>
+
+// Test that an element with the specified position-try-options is placed
+// at the same position as a reference element with inset-area:`expected`.
+// This test uses #target/#ref size of 60x60px, which causes overflow if
+// if we attempt the --right and --bottom positions.
+function test_inset_area_placement(position_try_options, expected) {
+ test((t) => {
+ style.textContent = `
+ #target, #ref {
+ width: 60px;
+ height: 60px;
+ }
+ #target {
+ position-try-options: ${position_try_options};
+ }
+ #ref {
+ inset-area: ${expected};
+ }
+ `;
+ assert_true(CSS.supports('inset-area', 'top left'));
+ assert_true(CSS.supports('position-try-options', '--x'));
+ assert_equals(target.offsetLeft, ref.offsetLeft, 'offsetLeft');
+ assert_equals(target.offsetTop, ref.offsetTop, 'offsetTop');
+ }, `Placement: ${position_try_options}`);
+}
+
+test_inset_area_placement('--top', 'top');
+test_inset_area_placement('--left', 'left');
+
+// No space to to the right/bottom:
+test_inset_area_placement('--right, --top', 'top');
+test_inset_area_placement('--bottom, --top', 'top');
+test_inset_area_placement('--bottom, --right, --top', 'top');
+test_inset_area_placement('--bottom, --right, --left, --top', 'left');
+test_inset_area_placement('--bottom, --left, --top, --right', 'left');
+
+// Flipping:
+test_inset_area_placement('--right flip-inline', 'left');
+test_inset_area_placement('--bottom flip-block', 'top');
+test_inset_area_placement('--left flip-start', 'top');
+
+// left + flip-inline => right (no space).
+test_inset_area_placement('--left flip-inline, --top', 'top');
+// top + flip-block => bottom (no space).
+test_inset_area_placement('--top flip-block, --left', 'left');
+// left + flip-start flip-block => bottom (no space).
+test_inset_area_placement('--left flip-start flip-block, --left', 'left');
+
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-computed.tentative.html b/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-computed.tentative.html
index ff4ceb73df..8a8ba88706 100644
--- a/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-computed.tentative.html
+++ b/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-computed.tentative.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Anchor Positioning Test: Computed position-visibility</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-parsing.tentative.html b/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-parsing.tentative.html
index 18dd27eadb..942ec71754 100644
--- a/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-parsing.tentative.html
+++ b/testing/web-platform/tests/css/css-anchor-position/parsing/position-visibility-parsing.tentative.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Anchor Positioning Test: Parsing of position-visibility</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-try-backdrop.html b/testing/web-platform/tests/css/css-anchor-position/position-try-backdrop.html
new file mode 100644
index 0000000000..6bf2262c69
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-try-backdrop.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: position-try-options on ::backdrop</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#fallback-apply">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ @position-try --pt {
+ left: 300px;
+ }
+ #anchor {
+ width: 100px;
+ height: 100px;
+ margin-left: 150px;
+ margin-top: 50px;
+ background: coral;
+ }
+ dialog::backdrop {
+ background: seagreen;
+ width:100px;
+ height:100px;
+ left: 9999px; /* Force overflow */
+ position-try-options: --pt;
+ }
+</style>
+<div id=anchor>Anchor</div>
+<dialog id=dialog>Dialog</dialog>
+<script>
+ test((t) => {
+ dialog.showModal();
+ let style = getComputedStyle(dialog, '::backdrop');
+ assert_equals(style.left, '300px');
+ }, '::backdrop can use position-try-options');
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-try-order-inset-area.html b/testing/web-platform/tests/css/css-anchor-position/position-try-order-inset-area.html
new file mode 100644
index 0000000000..98e606a7d8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-try-order-inset-area.html
@@ -0,0 +1,196 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: position-try-order behavior with inset-area</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-try-order-property">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#inset-area">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<!--
+ Note: This test is the inset-area version of position-try-order-basic.html.
+-->
+<style>
+ #cb {
+ position: absolute;
+ width: 400px;
+ height: 400px;
+ border: 1px solid black;
+ }
+ #anchor {
+ position: absolute;
+ left: 150px;
+ top: 200px;
+ width: 150px;
+ height: 150px;
+ background-color: coral;
+ anchor-name: --a;
+ }
+ #target, #ref {
+ position: absolute;
+ left: 450px; /* force fallback */
+ width: 40px;
+ height: 40px;
+ background-color: skyblue;
+ position-anchor: --a;
+ /* Note: align/justify is for cosmetic/debugging reasons only,
+ it should not have any effect on the result. */
+ align-self: start;
+ justify-self: start;
+ }
+ #ref {
+ background-color: seagreen;
+ }
+
+/*
+
+The IMCB for --right is the whole area to the right of the anchor, and similarly
+for --left, etc.
+
+ ┌──────────────┐
+ │ xxxx│
+ │ xxxx│
+ │ ┌────┐xxxx│
+ │ │ │xxxx│
+ │ └────┘xxxx│
+ │ xxxx│
+ │ xxxx│
+ └──────────────┘
+
+**/
+
+ @position-try --right {
+ inset: unset;
+ inset-area: right;
+ }
+ @position-try --left {
+ inset: unset;
+ inset-area: left;
+ }
+ @position-try --top {
+ inset: unset;
+ inset-area: top;
+ }
+ @position-try --bottom {
+ inset: unset;
+ inset-area: bottom;
+ }
+
+/*
+
+The IMCB for --right-sweep is the area that would be "swept" by the anchor if it
+moved right, and similarly for --left-sweep, etc.
+
+ ┌──────────────┐
+ │ │
+ │ │
+ │ ┌────┐xxxx│
+ │ │ │xxxx│
+ │ └────┘xxxx│
+ │ │
+ │ │
+ └──────────────┘
+
+*/
+
+ @position-try --right-sweep {
+ inset: unset;
+ inset-area: right center;
+ }
+
+ @position-try --left-sweep {
+ inset: unset;
+ inset-area: left center;
+ }
+
+ @position-try --bottom-sweep {
+ inset: unset;
+ inset-area: bottom center;
+ }
+
+ @position-try --top-sweep {
+ inset: unset;
+ inset-area: top center;
+ }
+
+</style>
+<style id=style>
+</style>
+<div id=cb>
+ <div id=anchor></div>
+ <div id=target></div>
+ <div id=ref></div>
+</div>
+<script>
+
+// Test that an element with the specified `position_try` gets the same
+// position as a reference element with `position_try_expected`.
+function test_inset_area_order(position_try, position_try_expected) {
+ test((t) => {
+ style.textContent = `
+ #target {
+ position-try: ${position_try};
+ }
+ #ref {
+ position-try: ${position_try_expected};
+ }
+ `;
+ assert_true(CSS.supports('position-try', 'normal --x'));
+ assert_equals(target.offsetLeft, ref.offsetLeft, 'offsetLeft');
+ assert_equals(target.offsetTop, ref.offsetTop, 'offsetTop');
+ }, `${position_try} | ${position_try_expected}`);
+}
+
+// Note: --right, --left, --top, and --bottom all fit, but have different
+// inset-modifed containing blocks.
+
+test_inset_area_order('--right', '--right');
+test_inset_area_order('--left', '--left');
+test_inset_area_order('--top', '--top');
+test_inset_area_order('--bottom', '--bottom');
+
+// position-try-order:normal just picks the first option.
+test_inset_area_order('--right, --left, --bottom, --top', '--right');
+test_inset_area_order('normal --right, --left, --bottom, --top', '--right');
+test_inset_area_order('normal --top, --left, --bottom, --right', '--top');
+
+// --right and --left have the same IMCB block-size.
+test_inset_area_order('most-block-size --right, --left', '--right');
+test_inset_area_order('most-height --right, --left', '--right');
+// --left has more inline-size than --right.
+test_inset_area_order('most-inline-size --right, --left', '--left');
+test_inset_area_order('most-width --right, --left', '--left');
+
+// --bottom and --top have the same IMCB inline-size.
+test_inset_area_order('most-inline-size --bottom, --top', '--bottom');
+test_inset_area_order('most-width --bottom, --top', '--bottom');
+// --top has more block-size than --bottom.
+test_inset_area_order('most-block-size --bottom, --top', '--top');
+test_inset_area_order('most-height --bottom, --top', '--top');
+
+// --bottom/--top has more IMBC inline-size than --right/--left.
+test_inset_area_order('most-inline-size --right, --left, --bottom, --top', '--bottom');
+test_inset_area_order('most-inline-size --right, --left, --top, --bottom', '--top');
+
+// --right/--left has more IMBC block-size than --bottom/--top.
+test_inset_area_order('most-block-size --bottom, --top, --right, --left', '--right');
+test_inset_area_order('most-block-size --bottom, --top, --left, --right', '--left');
+
+// --left-sweep and --bottom-sweep has the same IMBC inline-size ...
+test_inset_area_order('most-inline-size --left-sweep, --bottom-sweep', '--left-sweep');
+test_inset_area_order('most-inline-size --bottom-sweep, --left-sweep', '--bottom-sweep');
+// ... but not the same block-size.
+test_inset_area_order('most-block-size --left-sweep, --bottom-sweep', '--left-sweep');
+test_inset_area_order('most-block-size --bottom-sweep, --left-sweep', '--left-sweep');
+
+test_inset_area_order('most-inline-size --right-sweep, --left-sweep, --bottom-sweep, --top-sweep', '--left-sweep');
+test_inset_area_order('most-block-size --right-sweep, --left-sweep, --bottom-sweep, --top-sweep', '--top-sweep');
+
+test_inset_area_order(`most-inline-size
+ --right-sweep, --left-sweep, --bottom-sweep, --top-sweep,
+ --right, --left, --bottom, --top
+ `, '--left-sweep');
+
+test_inset_area_order(`most-block-size
+ --right-sweep, --left-sweep, --bottom-sweep, --top-sweep,
+ --right, --left, --bottom, --top
+ `, '--right');
+
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.html
new file mode 100644
index 0000000000..de0647f88b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-no-overflow-ref.html">
+<style>
+ #scroll-container {
+ position: relative;
+ overflow: hidden scroll;
+ width: 400px;
+ height: 100px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ .target {
+ position: absolute;
+ inset-area: block-end;
+ width: 100px;
+ height: 100px;
+ background: red;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <!-- #target1 should not be visible because it overflows the containing block. -->
+ <div class="anchor" style="anchor-name: --a1;">anchor1</div>
+ <div id="target" class="target" style="position-anchor: --a1;">target1</div>
+</div>
+
+<script>
+requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ target.style.positionVisibility = 'no-overflow';
+ document.documentElement.classList.remove('reftest-wait');
+ });
+});
+</script>
+</html>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html
deleted file mode 100644
index 9d87f82b9f..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-add-no-overflow.tentative.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-no-overflow-ref.html">
-<style>
- #scroll-container {
- position: relative;
- overflow: hidden scroll;
- width: 400px;
- height: 100px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- .target {
- position: absolute;
- inset-area: block-end;
- width: 100px;
- height: 100px;
- background: red;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <!-- #target1 should not be visible because it overflows the containing block. -->
- <div class="anchor" style="anchor-name: --a1;">anchor1</div>
- <div id="target" class="target" style="position-anchor: --a1;">target1</div>
-</div>
-
-<script>
-requestAnimationFrame(() => {
- requestAnimationFrame(() => {
- target.style.positionVisibility = 'no-overflow';
- document.documentElement.classList.remove('reftest-wait');
- });
-});
-</script>
-</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-valid.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-valid.tentative.html
index bf67921639..4b069c253b 100644
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-valid.tentative.html
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-valid.tentative.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Anchor Positioning Test: position-visibility: anchors-valid</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
<link rel="match" href="position-visibility-anchors-valid-ref.html">
<style>
.anchor {
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html
new file mode 100644
index 0000000000..f13c500915
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<meta name="assert" content="Scrolling an anchor in to view should cause a position-visibility: anchors-visible element to appear." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-after-scroll-in-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: block-end;
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor,
+ // which is visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor out of view.
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target should now be invisible.
+
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor back into view.
+ scroller.scrollTop = 0;
+
+ // #target should now be visible again.
+ takeScreenshot();
+ });
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html
deleted file mode 100644
index cea439c55f..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-in.tentative.html
+++ /dev/null
@@ -1,64 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<meta name="assert" content="Scrolling an anchor in to view should cause a position-visibility: anchors-visible element to appear." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-after-scroll-in-ref.html">
-<script src="/common/reftest-wait.js"></script>
-<script src="/common/rendering-utils.js"></script>
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: block-end;
- width: 100px;
- height: 100px;
- background: green;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
-</div>
-
-<script>
- // #target should be initially visible because it is anchored to #anchor,
- // which is visible.
- waitForAtLeastOneFrame().then(() => {
- // Scroll #anchor out of view.
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
- // #target should now be invisible.
-
- waitForAtLeastOneFrame().then(() => {
- // Scroll #anchor back into view.
- scroller.scrollTop = 0;
-
- // #target should now be visible again.
- takeScreenshot();
- });
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html
new file mode 100644
index 0000000000..4294091b89
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<meta name="assert" content="Scrolling an anchor out of view should cause a position-visibility: anchors-visible element to disappear." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-after-scroll-out-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor,
+ // which is visible.
+
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor so that it is out of view.
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+
+ // #target should now be invisible.
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html
deleted file mode 100644
index b2e3643b07..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-after-scroll-out.tentative.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<meta name="assert" content="Scrolling an anchor out of view should cause a position-visibility: anchors-visible element to disappear." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-after-scroll-out-ref.html">
-<script src="/common/reftest-wait.js"></script>
-<script src="/common/rendering-utils.js"></script>
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom;
- width: 100px;
- height: 100px;
- background: red;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
-</div>
-
-<script>
- // #target should be initially visible because it is anchored to #anchor,
- // which is visible.
-
- waitForAtLeastOneFrame().then(() => {
- // Scroll #anchor so that it is out of view.
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
-
- // #target should now be invisible.
- takeScreenshot();
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed-ref.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed-ref.html
new file mode 100644
index 0000000000..7a9d69a9e3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed-ref.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+
+<!-- This test passes if both the anchor and anchored elements are hidden. -->
+<div style="height: 200vh;"></div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html
new file mode 100644
index 0000000000..3ea26c896e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-both-position-fixed.tentative.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="position-visibility: anchors-visible should work with a fixed-position anchored element." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="match" href="position-visibility-anchors-visible-both-position-fixed-ref.html">
+<style>
+ #anchor {
+ anchor-name: --a1;
+ position: fixed;
+ top: -100px;
+ left: 0;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom right;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: fixed;
+ top: 0;
+ left: 0;
+ }
+
+ #spacer {
+ height: 200vh;
+ }
+</style>
+
+<!-- Test passes if #target is not visible, due to #anchor being off-screen. -->
+<div id="anchor">anchor</div>
+<div id="target">target</div>
+<div id="spacer"></div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html
new file mode 100644
index 0000000000..3f515a5686
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-001.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="match" href="position-visibility-anchors-visible-after-scroll-out-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor1 {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #anchor2 {
+ anchor-name: --a2;
+ width: 100px;
+ height: 50px;
+ background: yellow;
+ }
+
+ .spacer {
+ height: 100px;
+ }
+
+ .anchored {
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 50px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+
+ #chained {
+ position-anchor: --a1;
+ }
+
+ #target {
+ position-anchor: --a2;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor1">anchor1</div>
+ <div class="spacer"></div>
+ <div id="chained" class="anchored">
+ <div id="anchor2">chained</div>
+ </div>
+ <div id="target" class="anchored">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor2
+ // which is chained to #anchor1 and both anchors are visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor1 so that it is out of view.
+ document.getElementById('scroll-container').scrollTop = 100;
+
+ // #target should now be invisible.
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html
new file mode 100644
index 0000000000..aa1dcd0eb9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-002.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="match" href="position-visibility-anchors-visible-after-scroll-out-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor1 {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #chained {
+ position-anchor: --a1;
+ anchor-name: --a2;
+ background: yellow;
+ }
+
+ .spacer {
+ height: 100px;
+ }
+
+ .anchored {
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 50px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+
+ #target {
+ position-anchor: --a2;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor1">anchor1</div>
+ <div class="spacer"></div>
+ <div id="chained" class="anchored"></div>
+ <div id="target" class="anchored">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor2
+ // which is chained to #anchor1 and both anchors are visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor1 so that it is out of view.
+ document.getElementById('scroll-container').scrollTop = 100;
+
+ // #target should now be invisible.
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html
new file mode 100644
index 0000000000..9a1e077de0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-003.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="match" href="position-visibility-anchors-visible-after-scroll-out-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor1 {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ .spacer {
+ height: 100px;
+ }
+
+ #anchor2 {
+ anchor-name: --a2;
+ position-anchor: --a1;
+ }
+
+ #anchor3 {
+ anchor-name: --a3;
+ position-anchor: --a2;
+ }
+
+ #anchor4 {
+ anchor-name: --a4;
+ position-anchor: --a3;
+ }
+
+ .anchored {
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 50px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+
+ #target {
+ position-anchor: --a4;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor1">anchor1</div>
+ <div class="spacer"></div>
+ <div id="anchor2" class="anchored">anchor2</div>
+ <div id="anchor3" class="anchored">anchor3</div>
+ <div id="anchor4" class="anchored">anchor4</div>
+ <div id="target" class="anchored">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor2
+ // which is chained to #anchor1 and both anchors are visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor1 so that it is out of view.
+ document.getElementById('scroll-container').scrollTop = 100;
+
+ // #target should now be invisible.
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004-ref.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004-ref.html
new file mode 100644
index 0000000000..409247a695
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004-ref.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ margin-bottom: 100px;
+ }
+
+ #chained {
+ width: 100px;
+ height: 50px;
+ background: blue;
+ }
+
+ #target {
+ width: 100px;
+ height: 50px;
+ background: green;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor1</div>
+</div>
+<div id="chained">chained</div>
+<div id="target">target</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html
new file mode 100644
index 0000000000..62ab7578a3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-chained-004.html
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
+<link rel="match" href="position-visibility-anchors-visible-chained-004-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor1 {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #anchor2 {
+ anchor-name: --a2;
+ width: 100px;
+ height: 50px;
+ background: blue;
+ }
+
+ .spacer {
+ height: 100px;
+ }
+
+ .anchored {
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 50px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+
+ #chained {
+ position-anchor: --a1;
+ }
+
+ #target {
+ position-anchor: --a2;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor1">anchor1</div>
+ <div class="spacer"></div>
+ <div id="chained" class="anchored">
+ <div id="anchor2">chained</div>
+ </div>
+ <div id="target" class="anchored">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor2
+ // which is chained to #anchor1 and both anchors are visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor out of view.
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target1 should now be invisible.
+
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor back into view.
+ scroller.scrollTop = 0;
+
+ // #target should now be visible again.
+ takeScreenshot();
+ });
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html
new file mode 100644
index 0000000000..117628e7dc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility should not be affected by the visibility of a previous anchor." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-change-anchor-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ #anchor1 {
+ height: 200px;
+ anchor-name: --a1;
+ }
+
+ #anchor2 {
+ anchor-name: --a2;
+ }
+
+ #target {
+ position-anchor: --a2;
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor1" class="anchor">anchor1</div>
+ <div id="anchor2" class="anchor">anchor2</div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor2,
+ // which is visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Change #target to be anchored to #anchor1.
+ target.style.positionAnchor = '--a1';
+ // #target should be still be visible because #anchor1 is also visible.
+ waitForAtLeastOneFrame().then(() => {
+ // Scroll #anchor2 out of view, with #anchor1 still in view.
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target should still be visible because it is anchored to #anchor1,
+ // which is still visible.
+ takeScreenshot();
+ });
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html
deleted file mode 100644
index f8b1cc6d10..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-anchor.tentative.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<meta name="assert" content="Position-visibility should not be affected by the visibility of a previous anchor." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-change-anchor-ref.html">
-<script src="/common/reftest-wait.js"></script>
-<script src="/common/rendering-utils.js"></script>
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- #anchor1 {
- height: 200px;
- anchor-name: --a1;
- }
-
- #anchor2 {
- anchor-name: --a2;
- }
-
- #target {
- position-anchor: --a2;
- position-visibility: anchors-visible;
- inset-area: bottom;
- width: 100px;
- height: 100px;
- background: green;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor1" class="anchor">anchor1</div>
- <div id="anchor2" class="anchor">anchor2</div>
- <div id="target">target</div>
-</div>
-
-<script>
- // #target should be initially visible because it is anchored to #anchor2,
- // which is visible.
- waitForAtLeastOneFrame().then(() => {
- // Change #target to be anchored to #anchor1.
- target.style.positionAnchor = '--a1';
- // #target should be still be visible because #anchor1 is also visible.
- waitForAtLeastOneFrame().then(() => {
- // Scroll #anchor2 out of view, with #anchor1 still in view.
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
- // #target should still be visible because it is anchored to #anchor1,
- // which is still visible.
- takeScreenshot();
- });
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html
new file mode 100644
index 0000000000..f9c598374c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility: anchors-visible should show an element after an anchor changes from visibility: hidden to visibility: visible." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-change-css-visibility-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #container {
+ visibility: hidden;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="container">
+ <div id="anchor">anchor</div>
+</div>
+<div id="target">target</div>
+
+<script>
+ // #target should be initially hidden because it is anchored to #anchor,
+ // which is hidden with "visibility: hidden".
+
+ waitForAtLeastOneFrame().then(() => {
+ // Change #container to "visibility: visible". #target should become
+ // visible again, because #anchor is no longer hidden.
+ container.style.visibility = 'visible';
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html
deleted file mode 100644
index 22a30658c8..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-change-css-visibility.tentative.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<meta name="assert" content="Position-visibility: anchors-visible should show an element after an anchor changes from visibility: hidden to visibility: visible." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-change-css-visibility-ref.html">
-<script src="/common/reftest-wait.js"></script>
-<script src="/common/rendering-utils.js"></script>
-<style>
- #container {
- visibility: hidden;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom;
- width: 100px;
- height: 100px;
- background: green;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="container">
- <div id="anchor">anchor</div>
-</div>
-<div id="target">target</div>
-
-<script>
- // #target should be initially hidden because it is anchored to #anchor,
- // which is hidden with "visibility: hidden".
-
- waitForAtLeastOneFrame().then(() => {
- // Change #container to "visibility: visible". #target should become
- // visible again, because #anchor is no longer hidden.
- container.style.visibility = 'visible';
- takeScreenshot();
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html
new file mode 100644
index 0000000000..a699025325
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an anchor that has visibility: hidden." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-css-visibility-ref.html">
+<style>
+ #container {
+ visibility: hidden;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom right;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="container">
+ <div id="anchor">anchor</div>
+</div>
+<div id="target">target</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html
deleted file mode 100644
index 31be797798..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-css-visibility.tentative.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an anchor that has visibility: hidden." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-css-visibility-ref.html">
-<style>
- #container {
- visibility: hidden;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom right;
- width: 100px;
- height: 100px;
- background: red;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="container">
- <div id="anchor">anchor</div>
-</div>
-<div id="target">target</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html
new file mode 100644
index 0000000000..9c4d085b7e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="position-visibility: anchors-visible should consider the visibility of the anchor relative the containing scroller, ignoring visibility in other scrollers." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-non-intervening-container-ref.html">
+<style>
+ #non-intervening-scroll-container {
+ overflow: hidden;
+ width: 200px;
+ height: 200px;
+ position: relative;
+ }
+
+ #position-container {
+ position: relative;
+ }
+
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 400px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: right;
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="non-intervening-scroll-container">
+ <div id="position-container">
+ <div id="scroll-container">
+ <!-- The anchor is not visible to the screen, but it is visible in the -->
+ <!-- containing block of anchor1 and target1, so the target should not -->
+ <!-- be hidden due to position-visibility: anchors-visible. -->
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+ </div>
+ </div>
+</div>
+
+<script>
+ const non_intervening_scroller = document.getElementById('non-intervening-scroll-container');
+ non_intervening_scroller.scrollLeft = 100;
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html
deleted file mode 100644
index 7b84976fd3..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-non-intervening-container.tentative.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<meta name="assert" content="position-visibility: anchors-visible should consider the visibility of the anchor relative the containing scroller, ignoring visibility in other scrollers." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-non-intervening-container-ref.html">
-<style>
- #non-intervening-scroll-container {
- overflow: hidden;
- width: 200px;
- height: 200px;
- position: relative;
- }
-
- #position-container {
- position: relative;
- }
-
- #scroll-container {
- overflow: hidden scroll;
- width: 400px;
- height: 100px;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: right;
- width: 100px;
- height: 100px;
- background: green;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="non-intervening-scroll-container">
- <div id="position-container">
- <div id="scroll-container">
- <!-- The anchor is not visible to the screen, but it is visible in the -->
- <!-- containing block of anchor1 and target1, so the target should not -->
- <!-- be hidden due to position-visibility: anchors-visible. -->
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
- </div>
- </div>
-</div>
-
-<script>
- const non_intervening_scroller = document.getElementById('non-intervening-scroll-container');
- non_intervening_scroller.scrollLeft = 100;
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html
new file mode 100644
index 0000000000..e563fecfed
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-stacked-child.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility: anchors-visible should hide an element and stacked children with an out-of-view anchor." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-ref.html">
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom right;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+ #stacking-child {
+ /* stacking context */
+ z-index: 1;
+ width: 100px;
+ height: 100px;
+ background: maroon;
+ position: absolute;
+ top: 25px;
+ left: 25px;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target
+ <div id="stacking-child"></div>
+ </div>
+</div>
+
+<script>
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target should not be visible because #anchor is scrolled out of view.
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.html
new file mode 100644
index 0000000000..43dd2cc782
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an out-of-view anchor and a relpos scroller." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-ref.html">
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ /* Same as position-visibility-anchors-visible.html, but with relpos here */
+ position: relative;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom right;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target should not be visible because #anchor is scrolled out of view.
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.tentative.html
deleted file mode 100644
index 82eed0beb9..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible-with-position.tentative.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an out-of-view anchor and a relpos scroller." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-ref.html">
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- /* Same as position-visibility-anchors-visible.html, but with relpos here */
- position: relative;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom right;
- width: 100px;
- height: 100px;
- background: red;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
-</div>
-
-<script>
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
- // #target should not be visible because #anchor is scrolled out of view.
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.html
new file mode 100644
index 0000000000..78daffb11b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an out-of-view anchor." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-anchors-visible-ref.html">
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom right;
+ width: 100px;
+ height: 100px;
+ background: red;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+ // #target should not be visible because #anchor is scrolled out of view.
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.tentative.html
deleted file mode 100644
index 85b8d897db..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-anchors-visible.tentative.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<meta name="assert" content="Position-visibility: anchors-visible should hide an element with an out-of-view anchor." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-anchors-visible-ref.html">
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom right;
- width: 100px;
- height: 100px;
- background: red;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
-</div>
-
-<script>
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
- // #target should not be visible because #anchor is scrolled out of view.
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.html
new file mode 100644
index 0000000000..f646f819cd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-no-overflow-scroll-ref.html">
+<style>
+ #scroll-container {
+ position: relative;
+ overflow: hidden scroll;
+ width: 400px;
+ height: 150px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ .target {
+ position: absolute;
+ position-visibility: no-overflow;
+ width: 100px;
+ height: 100px;
+ }
+</style>
+
+<div id="scroll-container">
+ <div class="anchor" style="anchor-name: --a1;">anchor1</div>
+ <div class="anchor" style="anchor-name: --a2; position: relative; top: 100px">anchor2</div>
+ <div id="target1" class="target" style="position-anchor: --a1; top: anchor(bottom); background: green">target1</div>
+ <div id="target2" class="target" style="position-anchor: --a2; left: anchor(left); bottom: anchor(top); background: red">target2</div>
+ <div style="height: 300px"></div>
+</div>
+<script>
+requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ document.getElementById('scroll-container').scrollTop = 50;
+ document.documentElement.classList.remove('reftest-wait');
+ });
+});
+</script>
+</html>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html
deleted file mode 100644
index 4751faeb0d..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-scroll.tentative.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<html class="reftest-wait">
-<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-no-overflow-scroll-ref.html">
-<style>
- #scroll-container {
- position: relative;
- overflow: hidden scroll;
- width: 400px;
- height: 150px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- .target {
- position: absolute;
- position-visibility: no-overflow;
- width: 100px;
- height: 100px;
- }
-</style>
-
-<div id="scroll-container">
- <div class="anchor" style="anchor-name: --a1;">anchor1</div>
- <div class="anchor" style="anchor-name: --a2; position: relative; top: 100px">anchor2</div>
- <div id="target1" class="target" style="position-anchor: --a1; top: anchor(bottom); background: green">target1</div>
- <div id="target2" class="target" style="position-anchor: --a2; left: anchor(left); bottom: anchor(top); background: red">target2</div>
- <div style="height: 300px"></div>
-</div>
-<script>
-requestAnimationFrame(() => {
- requestAnimationFrame(() => {
- document.getElementById('scroll-container').scrollTop = 50;
- document.documentElement.classList.remove('reftest-wait');
- });
-});
-</script>
-</html>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html
new file mode 100644
index 0000000000..1ea5ff9a1e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-no-overflow-ref.html">
+<style>
+ #scroll-container {
+ position: relative;
+ overflow: hidden scroll;
+ width: 400px;
+ height: 100px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ .target {
+ position: absolute;
+ position-visibility: no-overflow;
+ inset-area: block-end;
+ width: 100px;
+ height: 100px;
+ background: red;
+ top: 0;
+ left: 0;
+ }
+
+ #child {
+ position: absolute;
+ /* stacking context */
+ z-index: 1;
+ top: -100px;
+ left: 100px;
+ width: 100px;
+ height: 100px;
+ background: maroon;
+ }
+
+ #grandchild {
+ position: absolute;
+ z-index: 1;
+ top: 0px;
+ left: 100px;
+ width: 50px;
+ height: 50px;
+ background: pink;
+ }
+</style>
+
+<div id="scroll-container">
+ <!-- #target1 should not be visible because it overflows the containing block. -->
+ <div class="anchor" style="anchor-name: --a1;">anchor1</div>
+ <div id="target1" class="target" style="position-anchor: --a1;">target1
+ <div id="child">Child
+ <div id="grandchild">Grand child</div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html
deleted file mode 100644
index f748fda33e..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow-stacked-child.tentative.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-no-overflow-ref.html">
-<style>
- #scroll-container {
- position: relative;
- overflow: hidden scroll;
- width: 400px;
- height: 100px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- .target {
- position: absolute;
- position-visibility: no-overflow;
- inset-area: block-end;
- width: 100px;
- height: 100px;
- background: red;
- top: 0;
- left: 0;
- }
-
- #child {
- position: absolute;
- /* stacking context */
- z-index: 1;
- top: -100px;
- left: 100px;
- width: 100px;
- height: 100px;
- background: maroon;
- }
-
- #grandchild {
- position: absolute;
- z-index: 1;
- top: 0px;
- left: 100px;
- width: 50px;
- height: 50px;
- background: pink;
- }
-</style>
-
-<div id="scroll-container">
- <!-- #target1 should not be visible because it overflows the containing block. -->
- <div class="anchor" style="anchor-name: --a1;">anchor1</div>
- <div id="target1" class="target" style="position-anchor: --a1;">target1
- <div id="child">Child
- <div id="grandchild">Grand child</div>
- </div>
- </div>
-</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.html
new file mode 100644
index 0000000000..ea3b2d0802
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-no-overflow-ref.html">
+<style>
+ #scroll-container {
+ position: relative;
+ overflow: hidden scroll;
+ width: 400px;
+ height: 100px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ .target {
+ position: absolute;
+ position-visibility: no-overflow;
+ inset-area: block-end;
+ width: 100px;
+ height: 100px;
+ background: red;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <!-- #target1 should not be visible because it overflows the containing block. -->
+ <div class="anchor" style="anchor-name: --a1;">anchor1</div>
+ <div id="target1" class="target" style="position-anchor: --a1;">target1</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.tentative.html
deleted file mode 100644
index 39fb55b120..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-no-overflow.tentative.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-no-overflow-ref.html">
-<style>
- #scroll-container {
- position: relative;
- overflow: hidden scroll;
- width: 400px;
- height: 100px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- .target {
- position: absolute;
- position-visibility: no-overflow;
- inset-area: block-end;
- width: 100px;
- height: 100px;
- background: red;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <!-- #target1 should not be visible because it overflows the containing block. -->
- <div class="anchor" style="anchor-name: --a1;">anchor1</div>
- <div id="target1" class="target" style="position-anchor: --a1;">target1</div>
-</div>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.html
new file mode 100644
index 0000000000..95be15ca55
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<meta name="assert" content="Removing position-visibility: anchors-visible from an invisible anchored element should cause it to become visible." />
+<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-remove-anchors-visible-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+ #scroll-container {
+ overflow: hidden scroll;
+ width: 300px;
+ height: 100px;
+ }
+
+ #anchor {
+ anchor-name: --a1;
+ width: 100px;
+ height: 100px;
+ background: orange;
+ }
+
+ #spacer {
+ height: 100px;
+ }
+
+ #target {
+ position-anchor: --a1;
+ position-visibility: anchors-visible;
+ inset-area: bottom;
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <div id="anchor">anchor</div>
+ <div id="spacer"></div>
+ <div id="target">target</div>
+</div>
+
+<script>
+ // #target should be initially visible because it is anchored to #anchor,
+ // which is visible.
+
+ // Scroll #anchor so that it is no longer visible.
+ const scroller = document.getElementById('scroll-container');
+ scroller.scrollTop = 100;
+
+ waitForAtLeastOneFrame().then(() => {
+ // Remove position-visibility: anchors-visible. #target should become
+ // visible again.
+ target.style.positionVisibility = 'initial';
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html
deleted file mode 100644
index c6649e5f93..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-anchors-visible.tentative.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<meta name="assert" content="Removing position-visibility: anchors-visible from an invisible anchored element should cause it to become visible." />
-<title>CSS Anchor Positioning Test: position-visibility: anchors-visible</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-remove-anchors-visible-ref.html">
-<script src="/common/reftest-wait.js"></script>
-<script src="/common/rendering-utils.js"></script>
-<style>
- #scroll-container {
- overflow: hidden scroll;
- width: 300px;
- height: 100px;
- }
-
- #anchor {
- anchor-name: --a1;
- width: 100px;
- height: 100px;
- background: orange;
- }
-
- #spacer {
- height: 100px;
- }
-
- #target {
- position-anchor: --a1;
- position-visibility: anchors-visible;
- inset-area: bottom;
- width: 100px;
- height: 100px;
- background: green;
- position: absolute;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <div id="anchor">anchor</div>
- <div id="spacer"></div>
- <div id="target">target</div>
-</div>
-
-<script>
- // #target should be initially visible because it is anchored to #anchor,
- // which is visible.
-
- // Scroll #anchor so that it is no longer visible.
- const scroller = document.getElementById('scroll-container');
- scroller.scrollTop = 100;
-
- waitForAtLeastOneFrame().then(() => {
- // Remove position-visibility: anchors-visible. #target should become
- // visible again.
- target.style.positionVisibility = 'initial';
- takeScreenshot();
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.html
new file mode 100644
index 0000000000..2cd2ed9fa3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#position-visibility">
+<link rel="match" href="position-visibility-no-overflow-ref.html">
+<style>
+ #scroll-container {
+ position: relative;
+ overflow: hidden scroll;
+ width: 400px;
+ height: 100px;
+ }
+
+ .anchor {
+ width: 100px;
+ height: 100px;
+ background: orange;
+ display: inline-block;
+ }
+
+ .target {
+ position: absolute;
+ position-visibility: no-overflow;
+ inset-area: block-end;
+ width: 100px;
+ height: 100px;
+ background: green;
+ top: 0;
+ left: 0;
+ }
+</style>
+
+<div id="scroll-container">
+ <!-- #target1 should not be visible because it overflows the containing block. -->
+ <div class="anchor" style="anchor-name: --a1;">anchor1</div>
+ <div id="target" class="target" style="position-anchor: --a1;">target1</div>
+</div>
+
+<script>
+requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ target.style.positionVisibility = 'initial';
+ document.documentElement.classList.remove('reftest-wait');
+ });
+});
+</script>
+</html>
diff --git a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html b/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html
deleted file mode 100644
index a043917da6..0000000000
--- a/testing/web-platform/tests/css/css-anchor-position/position-visibility-remove-no-overflow.tentative.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html>
-<html class=reftest-wait>
-<meta charset="utf-8">
-<title>CSS Anchor Positioning Test: position-visibility: no-overflow</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7758">
-<link rel="match" href="position-visibility-no-overflow-ref.html">
-<style>
- #scroll-container {
- position: relative;
- overflow: hidden scroll;
- width: 400px;
- height: 100px;
- }
-
- .anchor {
- width: 100px;
- height: 100px;
- background: orange;
- display: inline-block;
- }
-
- .target {
- position: absolute;
- position-visibility: no-overflow;
- inset-area: block-end;
- width: 100px;
- height: 100px;
- background: green;
- top: 0;
- left: 0;
- }
-</style>
-
-<div id="scroll-container">
- <!-- #target1 should not be visible because it overflows the containing block. -->
- <div class="anchor" style="anchor-name: --a1;">anchor1</div>
- <div id="target" class="target" style="position-anchor: --a1;">target1</div>
-</div>
-
-<script>
-requestAnimationFrame(() => {
- requestAnimationFrame(() => {
- target.style.positionVisibility = 'initial';
- document.documentElement.classList.remove('reftest-wait');
- });
-});
-</script>
-</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor-dynamic.html b/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor-dynamic.html
new file mode 100644
index 0000000000..9e4fa9828e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor-dynamic.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: Pseudo elements as anchors</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#position-anchor">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ .cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ }
+ #anchor1.enabled::before {
+ display: block;
+ width: 100px;
+ height: 100px;
+ content: "";
+ anchor-name: --a1;
+ background: blue;
+ }
+ #anchor2.enabled::after {
+ display: block;
+ width: 100px;
+ height: 100px;
+ content: "";
+ anchor-name: --a2;
+ background: pink;
+ }
+ .anchored {
+ position: absolute;
+ width: 100px;
+ height: 100px;
+ left: anchor(right);
+ top: anchor(bottom);
+ background: orange;
+ }
+ #anchored1 { position-anchor: --a1; }
+ #anchored2 { position-anchor: --a2; }
+</style>
+<div class="cb">
+ <div id="anchor1"></div>
+ <div id="anchored1" class="anchored"></div>
+</div>
+<div class="cb">
+ <div id="anchor2"></div>
+ <div id="anchored2" class="anchored"></div>
+</div>
+<script>
+ test(() => {
+ assert_equals(anchored1.offsetLeft, 0);
+ assert_equals(anchored1.offsetTop, 0);
+ anchor1.className = "enabled";
+ assert_equals(anchored1.offsetLeft, 100);
+ assert_equals(anchored1.offsetTop, 100);
+ }, "::before as anchor dynamically generated");
+ test(() => {
+ assert_equals(anchored2.offsetLeft, 0);
+ assert_equals(anchored2.offsetTop, 0);
+ anchor2.className = "enabled";
+ assert_equals(anchored2.offsetLeft, 100);
+ assert_equals(anchored2.offsetTop, 100);
+ }, "::after as anchor dynamically generated");
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor.html b/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor.html
new file mode 100644
index 0000000000..a107a0ec17
--- /dev/null
+++ b/testing/web-platform/tests/css/css-anchor-position/pseudo-element-anchor.html
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<title>CSS Anchor Positioning: Pseudo elements as anchors</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#position-anchor">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ .cb {
+ position: relative;
+ width: 200px;
+ height: 200px;
+ }
+ #anchor1::before {
+ display: block;
+ width: 100px;
+ height: 100px;
+ content: "";
+ anchor-name: --a1;
+ background: blue;
+ }
+ #anchor2::after {
+ display: block;
+ width: 100px;
+ height: 100px;
+ content: "";
+ anchor-name: --a2;
+ background: pink;
+ }
+ .anchored {
+ position: absolute;
+ width: 100px;
+ height: 100px;
+ left: anchor(right);
+ top: anchor(bottom);
+ background: orange;
+ }
+ #anchored1 { position-anchor: --a1; }
+ #anchored2 { position-anchor: --a2; }
+</style>
+<div class="cb">
+ <div id="anchor1"></div>
+ <div id="anchored1" class="anchored"></div>
+</div>
+<div class="cb">
+ <div id="anchor2"></div>
+ <div id="anchored2" class="anchored"></div>
+</div>
+<script>
+ test(() => {
+ assert_equals(anchored1.offsetLeft, 100);
+ assert_equals(anchored1.offsetTop, 100);
+ }, "::before as anchor");
+ test(() => {
+ assert_equals(anchored2.offsetLeft, 100);
+ assert_equals(anchored2.offsetTop, 100);
+ }, "::after as anchor");
+</script>
diff --git a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001.tentative-ref.html b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001-ref.html
index fb858cc105..fb858cc105 100644
--- a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001.tentative-ref.html
+++ b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-001-ref.html
diff --git a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002.tentative-ref.html b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002-ref.html
index 9dde5d00f0..9dde5d00f0 100644
--- a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002.tentative-ref.html
+++ b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-002-ref.html
diff --git a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004.tentative-ref.html b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004-ref.html
index 22c2270dde..22c2270dde 100644
--- a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004.tentative-ref.html
+++ b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-004-ref.html
diff --git a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback.tentative-ref.html b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback-ref.html
index 0933430fc3..0933430fc3 100644
--- a/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback.tentative-ref.html
+++ b/testing/web-platform/tests/css/css-anchor-position/reference/anchor-scroll-chained-fallback-ref.html
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-computed.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-computed.tentative.html
deleted file mode 100644
index 77f9670638..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-computed.tentative.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-end">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<div id="target"></div>
-<script>
-test_computed_value("animation-delay-end", "initial", "0s");
-test_computed_value("animation-delay-end", "-500ms", "-0.5s");
-test_computed_value("animation-delay-end", "calc(2 * 3s)", "6s");
-test_computed_value("animation-delay-end", "20s, 10s");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-invalid.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-invalid.tentative.html
deleted file mode 100644
index 7cabd4e8e5..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-invalid.tentative.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-end">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-<script>
-test_invalid_value("animation-delay-end", "infinite");
-test_invalid_value("animation-delay-end", "0");
-test_invalid_value("animation-delay-end", "1s 2s");
-test_invalid_value("animation-delay-end", "1s / 2s");
-test_invalid_value("animation-delay-end", "100px");
-test_invalid_value("animation-delay-end", "100%");
-
-test_invalid_value("animation-delay-end", "peek 50%");
-test_invalid_value("animation-delay-end", "50% contain");
-test_invalid_value("animation-delay-end", "50% cover");
-test_invalid_value("animation-delay-end", "50% entry");
-test_invalid_value("animation-delay-end", "50% enter");
-test_invalid_value("animation-delay-end", "50% exit");
-test_invalid_value("animation-delay-end", "contain contain");
-test_invalid_value("animation-delay-end", "auto");
-test_invalid_value("animation-delay-end", "none");
-test_invalid_value("animation-delay-end", "cover 50% enter 50%");
-test_invalid_value("animation-delay-end", "cover 100px");
-test_invalid_value("animation-delay-end", "cover");
-test_invalid_value("animation-delay-end", "contain");
-test_invalid_value("animation-delay-end", "enter");
-test_invalid_value("animation-delay-end", "exit");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-valid.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-valid.tentative.html
deleted file mode 100644
index 162c781bb0..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-end-valid.tentative.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-end">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-<script>
-test_valid_value("animation-delay-end", "-5ms");
-test_valid_value("animation-delay-end", "0s");
-test_valid_value("animation-delay-end", "10s");
-test_valid_value("animation-delay-end", "20s, 10s");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand-computed.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand-computed.html
deleted file mode 100644
index 0a1eb96041..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand-computed.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<title>animation-delay shorthand (computed values)</title>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<div id="target"></div>
-<script>
-test_computed_value("animation-delay", "1s");
-test_computed_value("animation-delay", "-1s");
-test_computed_value("animation-delay", "1s 2s");
-test_computed_value("animation-delay", "1s, 2s");
-test_computed_value("animation-delay", "1s 2s, 3s");
-test_computed_value("animation-delay", "1s, 2s 3s");
-test_computed_value("animation-delay", "1s, 2s, 3s");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand.html
deleted file mode 100644
index 5c74a4d8e4..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-shorthand.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<!DOCTYPE html>
-<title>animation-delay shorthand</title>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/shorthand-testcommon.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-<script>
-test_valid_value("animation-delay", "1s");
-test_valid_value("animation-delay", "-1s");
-test_valid_value("animation-delay", "1s 2s");
-test_valid_value("animation-delay", "1s, 2s");
-test_valid_value("animation-delay", "1s 2s, 3s");
-test_valid_value("animation-delay", "1s, 2s 3s");
-test_valid_value("animation-delay", "1s, 2s, 3s");
-
-test_invalid_value("animation-delay", "1s 2s 3s");
-test_invalid_value("animation-delay", "0s, 1s 2s 3s");
-test_invalid_value("animation-delay", "1s / 2s");
-test_invalid_value("animation-delay", "1s, 2px");
-test_invalid_value("animation-delay", "#ff0000");
-test_invalid_value("animation-delay", "red");
-test_invalid_value("animation-delay", "thing");
-test_invalid_value("animation-delay", "thing 0%");
-test_invalid_value("animation-delay", "thing 42%");
-test_invalid_value("animation-delay", "thing 100%");
-test_invalid_value("animation-delay", "thing 100px");
-test_invalid_value("animation-delay", "100% thing");
-
-test_shorthand_value('animation-delay', '1s 2s', {
- 'animation-delay-start': '1s',
- 'animation-delay-end': '2s',
-});
-
-test_shorthand_value('animation-delay', '1s', {
- 'animation-delay-start': '1s',
- 'animation-delay-end': '0s',
-});
-
-test_shorthand_value('animation-delay', '1s 2s, 3s 4s', {
- 'animation-delay-start': '1s, 3s',
- 'animation-delay-end': '2s, 4s',
-});
-
-test_shorthand_value('animation-delay', '1s 2s, 3s, 4s 5s', {
- 'animation-delay-start': '1s, 3s, 4s',
- 'animation-delay-end': '2s, 0s, 5s',
-});
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-computed.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-computed.tentative.html
deleted file mode 100644
index bfb89d0267..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-computed.tentative.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-start">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<div id="target"></div>
-<script>
-test_computed_value("animation-delay-start", "initial", "0s");
-test_computed_value("animation-delay-start", "-500ms", "-0.5s");
-test_computed_value("animation-delay-start", "calc(2 * 3s)", "6s");
-test_computed_value("animation-delay-start", "20s, 10s");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-invalid.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-invalid.tentative.html
deleted file mode 100644
index bff31f3789..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-invalid.tentative.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-start">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-<script>
-test_invalid_value("animation-delay-start", "infinite");
-test_invalid_value("animation-delay-start", "0");
-test_invalid_value("animation-delay-start", "1s 2s");
-test_invalid_value("animation-delay-start", "1s / 2s");
-test_invalid_value("animation-delay-start", "100px");
-test_invalid_value("animation-delay-start", "100%");
-
-test_invalid_value("animation-delay-start", "peek 50%");
-test_invalid_value("animation-delay-start", "50% contain");
-test_invalid_value("animation-delay-start", "50% cover");
-test_invalid_value("animation-delay-start", "50% entry");
-test_invalid_value("animation-delay-start", "50% enter");
-test_invalid_value("animation-delay-start", "50% exit");
-test_invalid_value("animation-delay-start", "contain contain");
-test_invalid_value("animation-delay-start", "auto");
-test_invalid_value("animation-delay-start", "none");
-test_invalid_value("animation-delay-start", "cover 50% enter 50%");
-test_invalid_value("animation-delay-start", "cover 100px");
-test_invalid_value("animation-delay-start", "cover");
-test_invalid_value("animation-delay-start", "contain");
-test_invalid_value("animation-delay-start", "enter");
-test_invalid_value("animation-delay-start", "exit");
-</script>
diff --git a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-valid.tentative.html b/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-valid.tentative.html
deleted file mode 100644
index f52286444e..0000000000
--- a/testing/web-platform/tests/css/css-animations/parsing/animation-delay-start-valid.tentative.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!DOCTYPE html>
-<link rel="help" href="https://drafts.csswg.org/scroll-animations-1/#propdef-animation-delay-start">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-<script>
-test_valid_value("animation-delay-start", "-5ms");
-test_valid_value("animation-delay-start", "0s");
-test_valid_value("animation-delay-start", "10s");
-test_valid_value("animation-delay-start", "20s, 10s");
-</script>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081-print-ref.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081-print-ref.html
new file mode 100644
index 0000000000..5eb4a31173
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081-print-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: block;
+ border: 0.25in solid black;
+}
+.flexbox > div > div {
+ display: inline-block;
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>
+ <div>1</div><div>2</div>
+ </div>
+ <div style="break-before: page">
+ <div>3</div><div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081a-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081a-print.html
new file mode 100644
index 0000000000..d773768bf0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081a-print.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-081-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div><div>2</div>
+ <div style="break-before: page">3</div><div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081b-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081b-print.html
new file mode 100644
index 0000000000..7c4eeb2083
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081b-print.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-081-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div><div>2</div>
+ <div>3</div><div style="break-before: page">4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081c-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081c-print.html
new file mode 100644
index 0000000000..2181bc56b0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081c-print.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-081-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div style="break-after: page">1</div><div>2</div>
+ <div>3</div><div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081d-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081d-print.html
new file mode 100644
index 0000000000..b4d9f06142
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-081d-print.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-081-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div><div style="break-after: page">2</div>
+ <div>3</div><div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082-print-ref.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082-print-ref.html
new file mode 100644
index 0000000000..e7314be63b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082-print-ref.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: block;
+ border: 0.25in solid black;
+}
+.flexbox > div > div {
+ display: inline-block;
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ box-sizing: border-box;
+ width: 100%;
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div><div>2</div>
+ <div>3</div><div>4</div>
+ </div>
+ <div class="flexbox nested" style="break-before: page">
+ <div>5</div><div>6</div>
+ <div>7</div><div>8</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082a-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082a-print.html
new file mode 100644
index 0000000000..18c732d242
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082a-print.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-082-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ box-sizing: border-box;
+ width: 100%;
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div><div>2</div>
+ <div>3</div><div>4</div>
+ </div>
+ <div class="flexbox nested">
+ <div style="break-before: page">5</div><div>6</div>
+ <div>7</div><div>8</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082b-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082b-print.html
new file mode 100644
index 0000000000..6f88af6cf6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082b-print.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-082-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ box-sizing: border-box;
+ width: 100%;
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div><div>2</div>
+ <div>3</div><div>4</div>
+ </div>
+ <div class="flexbox nested">
+ <div>5</div><div style="break-before: page">6</div>
+ <div>7</div><div>8</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082c-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082c-print.html
new file mode 100644
index 0000000000..116e8db2b3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082c-print.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-082-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ box-sizing: border-box;
+ width: 100%;
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div><div>2</div>
+ <div style="break-after: page">3</div><div>4</div>
+ </div>
+ <div class="flexbox nested">
+ <div>5</div><div>6</div>
+ <div>7</div><div>8</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082d-print.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082d-print.html
new file mode 100644
index 0000000000..e649304e7b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-082d-print.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="multi-line-row-flex-fragmentation-082-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ box-sizing: border-box;
+ width: 50%;
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ box-sizing: border-box;
+ width: 100%;
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div><div>2</div>
+ <div>3</div><div style="break-after: page">4</div>
+ </div>
+ <div class="flexbox nested">
+ <div>5</div><div>6</div>
+ <div>7</div><div>8</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083a.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083a.html
new file mode 100644
index 0000000000..efc64d5f4a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083a.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+}
+.item {
+ background: green;
+ width: 25px;
+ height: 100px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox" style="break-before: always; break-before: column">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083b.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083b.html
new file mode 100644
index 0000000000..9181fd5f01
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083b.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-before values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+}
+.item {
+ background: green;
+ width: 25px;
+ height: 100px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item" style="break-before: always; break-before: column"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083c.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083c.html
new file mode 100644
index 0000000000..b54571898d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083c.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on flex items are propagated to the flex line</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+}
+.item {
+ background: green;
+ width: 25px;
+ height: 100px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox" style="break-after: always; break-after: column">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083d.html b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083d.html
new file mode 100644
index 0000000000..025fd67436
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/multi-line-row-flex-fragmentation-083d.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a row flex container, the break-after values on the flex item in the flex line are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-wrap: wrap;
+}
+.item {
+ background: green;
+ width: 25px;
+ height: 100px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item" style="break-after: always; break-after: column"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068-print-ref.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068-print-ref.html
new file mode 100644
index 0000000000..feff86edf9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068-print-ref.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: block;
+ border: 0.25in solid black;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div>
+ <div>2</div>
+ <div style="break-before: page">3</div>
+ <div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068a-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068a-print.html
new file mode 100644
index 0000000000..5eebf66432
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068a-print.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-before values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-068-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div>
+ <div>2</div>
+ <div style="break-before: page">3</div>
+ <div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068b-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068b-print.html
new file mode 100644
index 0000000000..64a495e01c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068b-print.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-after values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-068-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>1</div>
+ <div style="break-after: page">2</div>
+ <div>3</div>
+ <div>4</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068c-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068c-print.html
new file mode 100644
index 0000000000..6c004f3d19
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068c-print.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column-reverse flex container, the break-before values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-068-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column-reverse;
+ border: 0.25in solid black;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>4</div>
+ <div style="break-before: page">3</div>
+ <div>2</div>
+ <div>1</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068d-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068d-print.html
new file mode 100644
index 0000000000..7ccf5e9f3e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-068d-print.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column-reverse flex container, the break-after values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-068-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column-reverse;
+ border: 0.25in solid black;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div>4</div>
+ <div>3</div>
+ <div style="break-after: page">2</div>
+ <div>1</div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069-print-ref.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069-print-ref.html
new file mode 100644
index 0000000000..7f37d32454
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069-print-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: block;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div>
+ <div>2</div>
+ </div>
+ <div class="flexbox nested" style="break-before: page">
+ <div>3</div>
+ <div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069a-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069a-print.html
new file mode 100644
index 0000000000..1d18987036
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069a-print.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-before values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-069-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div>
+ <div>2</div>
+ </div>
+ <div class="flexbox nested" style="break-before: page">
+ <div>3</div>
+ <div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069b-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069b-print.html
new file mode 100644
index 0000000000..b5312837a7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069b-print.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-before values on the first item are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-069-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div>
+ <div>2</div>
+ </div>
+ <div class="flexbox nested">
+ <div style="break-before: page">3</div>
+ <div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069c-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069c-print.html
new file mode 100644
index 0000000000..76686cb481
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069c-print.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-after values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-069-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested" style="break-after: page">
+ <div>1</div>
+ <div>2</div>
+ </div>
+ <div class="flexbox nested">
+ <div>3</div>
+ <div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069d-print.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069d-print.html
new file mode 100644
index 0000000000..7a740c35f5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-069d-print.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-after values on the first item are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="single-line-column-flex-fragmentation-069-print-ref.html">
+
+<style>
+@page { size: 5in 3in; margin: 0.5in; }
+body {
+ margin: 0;
+ font-size: 0.25in;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+ border: 0.25in solid black;
+}
+.flexbox > div {
+ border: 4px solid purple;
+}
+.flexbox > .nested {
+ border: 4px solid gold;
+}
+</style>
+
+<div>Before Flexbox</div>
+<div class="flexbox">
+ <div class="flexbox nested">
+ <div>1</div>
+ <div style="break-after: page">2</div>
+ </div>
+ <div class="flexbox nested">
+ <div>3</div>
+ <div>4</div>
+ </div>
+</div>
+<div>After Flexbox</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070a.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070a.html
new file mode 100644
index 0000000000..aa9af6a290
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070a.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-before values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+}
+.item {
+ background: green;
+ height: 50px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox" style="break-before: always; break-before: column">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070b.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070b.html
new file mode 100644
index 0000000000..45a91d96cf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070b.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-before values on the first item are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+}
+.item {
+ background: green;
+ height: 50px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item" style="break-before: always; break-before: column"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070c.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070c.html
new file mode 100644
index 0000000000..149ff6667c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070c.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-after values on flex items are honored</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+}
+.item {
+ background: green;
+ height: 50px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox" style="break-after: always; break-after: column">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070d.html b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070d.html
new file mode 100644
index 0000000000..2265e71df6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-break/flexbox/single-line-column-flex-fragmentation-070d.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test that in a column flex container, the break-after values on the first item are propagated to the flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#pagination">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1890238">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+
+<style>
+.multicol {
+ columns: 2;
+ column-fill: auto;
+ column-gap: 0;
+ width: 100px;
+ height: 300px;
+}
+.flexbox {
+ display: flex;
+ flex-direction: column;
+}
+.item {
+ background: green;
+ height: 50px;
+}
+</style>
+
+<p>Test passes if there is a filled green square.</p>
+
+<div class="multicol">
+ <div class="flexbox">
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item" style="break-after: always; break-after: column"></div>
+ </div>
+ <div class="flexbox">
+ <div class="item"></div>
+ <div class="item"></div>
+ </div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-break/ruby-002.html b/testing/web-platform/tests/css/css-break/ruby-002.html
index d17cc563f3..2c4f6aae5b 100644
--- a/testing/web-platform/tests/css/css-break/ruby-002.html
+++ b/testing/web-platform/tests/css/css-break/ruby-002.html
@@ -30,15 +30,13 @@
<div style="position:relative; width:100px; height:100px; background:red;">
<div style="columns:2; column-fill:auto; column-gap:0; height:175px; orphans:1; widows:1;">
<ruby>
- <div class="main"></div><rt><div class="annotation"></div></rt>
- </ruby><ruby class="under">
- <div class="main"></div><rt><div class="annotation"></div></rt>
+ <div class="main"></div><rt><div class="annotation"></div></rt></ruby
+ ><ruby class="under"><div class="main"></div><rt><div class="annotation"></div></rt>
</ruby>
<br>
<ruby>
- <div class="main"></div><rt><div class="annotation"></div></rt>
- </ruby><ruby class="under">
- <div class="main"></div><rt><div class="annotation"></div></rt>
+ <div class="main"></div><rt><div class="annotation"></div></rt></ruby
+ ><ruby class="under"><div class="main"></div><rt><div class="annotation"></div></rt>
</ruby>
<br>
</div>
diff --git a/testing/web-platform/tests/css/css-cascade/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-cascade/WEB_FEATURES.yml
index 38aaee3021..5d0f726ab5 100644
--- a/testing/web-platform/tests/css/css-cascade/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/css-cascade/WEB_FEATURES.yml
@@ -2,3 +2,7 @@ features:
- name: cascade-layers
files:
- layer-*
+- name: scope
+ files:
+ - at-scope-*
+ - scope-*
diff --git a/testing/web-platform/tests/css/css-cascade/all-prop-revert-layer.html b/testing/web-platform/tests/css/css-cascade/all-prop-revert-layer.html
index 868267b285..3a1d621d17 100644
--- a/testing/web-platform/tests/css/css-cascade/all-prop-revert-layer.html
+++ b/testing/web-platform/tests/css/css-cascade/all-prop-revert-layer.html
@@ -15,8 +15,6 @@
alt: "a";
animation-composition: add;
animation-delay: 123s;
- animation-delay-start: 123s;
- animation-delay-end: 456s;
animation-direction: reverse;
animation-duration: 123s;
animation-fill-mode: both;
diff --git a/testing/web-platform/tests/css/css-cascade/scope-pseudo-element-ref.html b/testing/web-platform/tests/css/css-cascade/scope-pseudo-element-ref.html
new file mode 100644
index 0000000000..2ad6a0995a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-cascade/scope-pseudo-element-ref.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<title>@scope - pseudo-elements (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-cascade-6/#scoped-styles">
+<link rel="help" href="https://drafts.csswg.org/selectors-4/#link">
+
+<!-- Cosmetic -->
+<style>
+ body > div {
+ display: inline-block;
+ width: 100px;
+ height: 100px;
+ border: 1px solid black;
+ vertical-align:top;
+ }
+</style>
+
+<!-- ::before -->
+<style>
+ #before_test > main {
+ background-color: skyblue;
+ }
+ #before_test > main::before {
+ content: "B";
+ width: 20px;
+ height: 20px;
+ display: inline-block;
+ background-color: tomato;
+ }
+</style>
+<div id=before_test>
+ <main>
+ Foo
+ </main>
+</div>
+
+<!-- ::after -->
+<style>
+ #after_test > main {
+ background-color: skyblue;
+ }
+ #after_test > main::after {
+ content: "A";
+ width: 20px;
+ height: 20px;
+ display: inline-block;
+ background-color: tomato;
+ }
+</style>
+<div id=after_test>
+ <main>
+ Foo
+ </main>
+</div>
+
+<!-- ::marker -->
+<style>
+ #marker_test li {
+ background-color: skyblue;
+ }
+ #marker_test li::marker {
+ content: "M";
+ }
+</style>
+<div id=marker_test>
+ <ul>
+ <li>One</li>
+ <li>Two</li>
+ </ul>
+</div>
diff --git a/testing/web-platform/tests/css/css-cascade/scope-pseudo-element.html b/testing/web-platform/tests/css/css-cascade/scope-pseudo-element.html
new file mode 100644
index 0000000000..29c4469060
--- /dev/null
+++ b/testing/web-platform/tests/css/css-cascade/scope-pseudo-element.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<title>@scope - pseudo-elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-cascade-6/#scoped-styles">
+<link rel="help" href="https://drafts.csswg.org/selectors-4/#link">
+<link rel="match" href="scope-pseudo-element-ref.html">
+
+<!-- Cosmetic -->
+<style>
+ body > div {
+ display: inline-block;
+ width: 100px;
+ height: 100px;
+ border: 1px solid black;
+ vertical-align:top;
+ }
+</style>
+
+<!-- ::before -->
+<style>
+ @scope (#before_test > main) {
+ :scope {
+ background-color: skyblue;
+ }
+ :scope::before {
+ content: "B";
+ width: 20px;
+ height: 20px;
+ display: inline-block;
+ background-color: tomato;
+ }
+ }
+</style>
+<div id=before_test>
+ <main>
+ Foo
+ </main>
+</div>
+
+<!-- ::after -->
+<style>
+ @scope (#after_test > main) {
+ :scope {
+ background-color: skyblue;
+ }
+ :scope::after {
+ content: "A";
+ width: 20px;
+ height: 20px;
+ display: inline-block;
+ background-color: tomato;
+ }
+ }
+</style>
+<div id=after_test>
+ <main>
+ Foo
+ </main>
+</div>
+
+<!-- ::marker -->
+<style>
+ @scope (#marker_test li) {
+ :scope {
+ background-color: skyblue;
+ }
+ :scope::marker {
+ content: "M";
+ }
+ }
+</style>
+<div id=marker_test>
+ <ul>
+ <li>One</li>
+ <li>Two</li>
+ </ul>
+</div>
diff --git a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/WEB_FEATURES.yml
new file mode 100644
index 0000000000..48bbe25901
--- /dev/null
+++ b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: color-scheme
+ files: "**"
diff --git a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html
index a5a9843ac8..f9ab24fdc1 100644
--- a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html
+++ b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-iframe-background-about-blank.tentative.html
@@ -8,6 +8,3 @@
</style>
<p>Should not see a white frame below</p>
<iframe width="600" height="400"></iframe>
-<script>
- document.querySelector("iframe").contentWindow.stop();
-</script>
diff --git a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/support/prefers-color-scheme.svg b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/support/prefers-color-scheme.svg
deleted file mode 100644
index 3afcac70fe..0000000000
--- a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/support/prefers-color-scheme.svg
+++ /dev/null
@@ -1,10 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width='100px' height='100px'>
- <style>
- @media (prefers-color-scheme: dark) {
- rect {
- fill: green;
- }
- }
- </style>
- <rect fill='blue' width='100px' height='100px' />
-</svg>
diff --git a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image-ref.html b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image-ref.html
deleted file mode 100644
index 1ff9d88f30..0000000000
--- a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image-ref.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!doctype html>
-<head>
- <title>prefers-color-scheme inside an SVG image</title>
- <link rel="help" href="https://www.w3.org/TR/mediaqueries-5/#descdef-media-prefers-color-scheme">
-</head>
-<style>
- div {
- background-color: blue;
- height: 100px;
- width: 100px;
- }
- @media (prefers-color-scheme: dark) {
- div {
- background-color: green;
- }
- }
-</style>
-<p>There should be green square below when the preferred color-scheme is dark, and blue otherwise.</p>
-<div></div>
diff --git a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image.html b/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image.html
deleted file mode 100644
index 6fc33f56ce..0000000000
--- a/testing/web-platform/tests/css/css-color-adjust/rendering/dark-color-scheme/svg-as-image.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!doctype html>
-<head>
- <title>prefers-color-scheme inside an SVG image</title>
- <link rel="help" href="https://www.w3.org/TR/mediaqueries-5/#descdef-media-prefers-color-scheme">
- <link rel="match" href="svg-as-image-ref.html">
-</head>
-<p>There should be green square below when the preferred color-scheme is dark, and blue otherwise.</p>
-<img src='support/prefers-color-scheme.svg'>
diff --git a/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation-ref.html b/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation-ref.html
new file mode 100644
index 0000000000..33a82517ae
--- /dev/null
+++ b/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<link rel="author" title="Intel" href="http://www.intel.com">
+<style>
+ table { border-spacing: 0 2px; padding: 0; border: none; }
+ td { border: none; padding: 0; height: 1.2em; }
+</style>
+<body>
+ <p>Every row in this table should have both columns the same color:</p>
+ <table>
+ <tr>
+ <th style="background:white; color: black">Column 1</th>
+ <th style="background:black; color: white">Column 2</th>
+ </tr>
+ <tr>
+ <td colspan='2' style="background: rgb(102, 102, 102)">&nbsp;</td>
+ </tr>
+ <tr>
+ <td colspan='2' style="background: rgb(153, 153, 153)">&nbsp;</td>
+ </tr>
+ </table>
+</body>
diff --git a/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation.html b/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation.html
new file mode 100644
index 0000000000..25b54c2e2c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-color/hsl-clamp-negative-saturation.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>CSS Test: hsl() clamp negative saturation values</title>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/" />
+ <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
+ <link rel="help" href="https://www.w3.org/TR/css-color-4/#the-hsl-notation" />
+ <link rel="match" href="hsl-clamp-negative-saturation-ref.html" />
+ <meta name="assert" content="Test clamping of negative saturation values in hsl() functions." />
+ <style type="text/css">
+
+ table { border-spacing: 0 2px; padding: 0; border: none; }
+ td { border: none; padding: 0; height: 1.2em; }
+
+ </style>
+ </head>
+ <body>
+
+ <p>Every row in this table should have both columns the same color:</p>
+
+ <table>
+ <tr>
+ <th style="background:white; color: black">Column 1</th>
+ <th style="background:black; color: white">Column 2</th>
+ </tr>
+ <tr>
+ <td style="background: hsl(0, -50%, 40%)">&nbsp;</td>
+ <td style="background: rgb(102, 102, 102)">&nbsp;</td>
+ </tr>
+ <tr>
+ <td style="background: hsl(30, -50%, 60%)">&nbsp;</td>
+ <td style="background: rgb(153, 153, 153)">&nbsp;</td>
+ </tr>
+ </table>
+
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation-ref.html b/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation-ref.html
new file mode 100644
index 0000000000..bbf5c3b037
--- /dev/null
+++ b/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation-ref.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<link rel="author" title="Intel" href="http://www.intel.com">
+<style>
+ body { background: white; color: black; }
+ table { border-spacing: 0 2px; padding: 0; border: none; }
+ td { border: none; padding: 0; height: 1.2em; }
+</style>
+<body>
+ <p>Every row in this table should have both columns the same color:</p>
+ <table>
+ <tr>
+ <th style="background:white; color: black">Column 1</th>
+ <th style="background:black; color: white">Column 2</th>
+ </tr>
+ <tr>
+ <td colspan='2' style="background: rgb(194, 194, 194)">&nbsp;</td>
+ </tr>
+ <tr>
+ <td colspan='2' style="background: rgb(194, 194, 194)">&nbsp;</td>
+ </tr>
+ </table>
+</body>
diff --git a/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation.html b/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation.html
new file mode 100644
index 0000000000..239151efe3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-color/hsla-clamp-negative-saturation.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>CSS Test: hsla() clamp negative saturation values</title>
+ <link rel="author" title="L. David Baron" href="https://dbaron.org/" />
+ <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
+ <link rel="help" href="https://www.w3.org/TR/css-color-4/#the-hsl-notation" />
+ <link rel="match" href="hsla-clamp-negative-saturation-ref.html" />
+ <meta name="assert" content="Test clamping of negative saturation values in hsla() functions." />
+ <style type="text/css">
+
+ body { background: white; color: black; }
+ table { border-spacing: 0 2px; padding: 0; border: none; }
+ td { border: none; padding: 0; height: 1.2em; }
+
+ </style>
+ </head>
+ <body>
+
+ <p>Every row in this table should have both columns the same color:</p>
+
+ <table>
+ <tr>
+ <th style="background:white; color: black">Column 1</th>
+ <th style="background:black; color: white">Column 2</th>
+ </tr>
+ <tr>
+ <td style="background: hsla(0, -50%, 40%, 0.4)">&nbsp;</td>
+ <td style="background: rgb(194, 194, 194)">&nbsp;</td>
+ </tr>
+ <tr>
+ <td style="background: hsla(30, -50%, 60%, 0.6)">&nbsp;</td>
+ <td style="background: rgb(194, 194, 194)">&nbsp;</td>
+ </tr>
+ </table>
+
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-color/parsing/color-valid-color-mix-function.html b/testing/web-platform/tests/css/css-color/parsing/color-valid-color-mix-function.html
index cd1f381a1a..baa6512053 100644
--- a/testing/web-platform/tests/css/css-color/parsing/color-valid-color-mix-function.html
+++ b/testing/web-platform/tests/css/css-color/parsing/color-valid-color-mix-function.html
@@ -11,409 +11,410 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
+<script src="/css/support/color-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
// https://github.com/w3c/csswg-drafts/issues/7302: Specified values shouldn't resolve keyword colors or calc values
- test_valid_value(`color`, `color-mix(in srgb, red, blue)`, `color-mix(in srgb, red, blue)`);
- test_valid_value(`color`, `color-mix(in srgb, 70% red, 50% blue)`, `color-mix(in srgb, red 70%, blue 50%)`);
- test_valid_value(`color`, `color-mix(in hsl, red, blue)`, `color-mix(in hsl, red, blue)`);
- test_valid_value(`color`, `color-mix(in hsl, red calc(20%), blue)`, `color-mix(in hsl, red calc(20%), blue)`);
- test_valid_value(`color`, `color-mix(in hsl, red calc(var(--v)*1%), blue)`, `color-mix(in hsl, red calc(var(--v)*1%), blue)`);
- test_valid_value(`color`, `color-mix(in hsl, currentcolor, blue)`, `color-mix(in hsl, currentcolor, blue)`);
- test_valid_value(`color`, `color-mix(in hsl, red 60%, blue 40%)`, `color-mix(in hsl, red 60%, blue)`);
- test_valid_value(`color`, `color-mix(in hsl, red 50%, blue)`, `color-mix(in hsl, red, blue)`);
- test_valid_value(`color`, `color-mix(in hsl, red, blue 50%)`, `color-mix(in hsl, red, blue)`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, red, hsl(120, 100%, 50%))`, `color-mix(in lch decreasing hue, red, rgb(0, 255, 0))`);
-
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, 50% hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%), 50% hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, 25% hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%), 25% hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 75%, rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%), hsl(30deg 30% 40%) 25%)`, `color-mix(in hsl, rgb(46, 56, 46) 75%, rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40%) 75%)`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 30%, hsl(30deg 30% 40%) 90%)`, `color-mix(in hsl, rgb(46, 56, 46) 30%, rgb(133, 102, 71) 90%)`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 12.5%, hsl(30deg 30% 40%) 37.5%)`, `color-mix(in hsl, rgb(46, 56, 46) 12.5%, rgb(133, 102, 71) 37.5%)`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 0%, hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 0%, rgb(133, 102, 71))`);
-
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4), rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, 25% hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 25%, rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4), 25% hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 75%, rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8) 25%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 75%, rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4) 25%, hsl(30deg 30% 40% / .8) 75%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 25%, rgba(133, 102, 71, 0.8))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4) 30%, hsl(30deg 30% 40% / .8) 90%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 30%, rgba(133, 102, 71, 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4) 12.5%, hsl(30deg 30% 40% / .8) 37.5%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 12.5%, rgba(133, 102, 71, 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 10% 20% / .4) 0%, hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 0%, rgba(133, 102, 71, 0.8))`);
-
- test_valid_value(`color`, `color-mix(in hsl, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl, rgb(191, 149, 64), rgb(191, 191, 64))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl, rgb(191, 191, 64), rgb(191, 149, 64))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl, rgb(191, 170, 64), rgb(191, 64, 128))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 128), rgb(191, 170, 64))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl, rgb(191, 106, 64), rgb(191, 64, 149))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 149), rgb(191, 106, 64))`);
-
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl, rgb(191, 149, 64), rgb(191, 191, 64))`);
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl, rgb(191, 191, 64), rgb(191, 149, 64))`);
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl, rgb(191, 170, 64), rgb(191, 64, 128))`);
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 128), rgb(191, 170, 64))`);
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl, rgb(191, 106, 64), rgb(191, 64, 149))`);
- test_valid_value(`color`, `color-mix(in hsl shorter hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 149), rgb(191, 106, 64))`);
-
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
- test_valid_value(`color`, `color-mix(in hsl longer hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
-
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
- test_valid_value(`color`, `color-mix(in hsl increasing hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
-
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
- test_valid_value(`color`, `color-mix(in hsl decreasing hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
-
- test_valid_value(`color`, `color-mix(in hsl, hsl(none none none), hsl(none none none))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(none none none), hsl(30deg 40% 80%))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(224, 204, 184))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 20% 40%), hsl(none none none))`, `color-mix(in hsl, rgb(82, 122, 82), rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 20% none), hsl(30deg 40% 60%))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(194, 153, 112))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 20% 40%), hsl(30deg 20% none))`, `color-mix(in hsl, rgb(82, 122, 82), rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(none 20% 40%), hsl(30deg none 80%))`, `color-mix(in hsl, rgb(122, 82, 82), rgb(204, 204, 204))`);
-
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40%))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgb(143, 61, 61))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40% / 0.5))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgba(143, 61, 61, 0.5))`);
- test_valid_value(`color`, `color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40% / none))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgba(143, 61, 61, 0))`);
-
- test_valid_value(`color`, `color-mix(in hsl, color(display-p3 0 1 0) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, color(display-p3 0 1 0) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, lch(100 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lch(100 116 334) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, lch(0 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lch(0 116 334) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklab(100 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklch(100 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hsl, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0))`);
-
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, 50% hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), 50% hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%) 25%, hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, 25% hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), 25% hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% 40%) 25%)`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%) 25%, hwb(30deg 30% 40%) 75%)`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%) 30%, hwb(30deg 30% 40%) 90%)`, `color-mix(in hwb, rgb(26, 204, 26) 30%, rgb(153, 115, 77) 90%)`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%) 12.5%, hwb(30deg 30% 40%) 37.5%)`, `color-mix(in hwb, rgb(26, 204, 26) 12.5%, rgb(153, 115, 77) 37.5%)`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%) 0%, hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 0%, rgb(153, 115, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4), rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4) 25%, hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, 25% hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), 25% hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8) 25%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 75%, rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4) 25%, hwb(30deg 30% 40% / .8) 75%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4) 30%, hwb(30deg 30% 40% / .8) 90%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 30%, rgba(153, 115, 77, 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4) 12.5%, hwb(30deg 30% 40% / .8) 37.5%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 12.5%, rgba(153, 115, 77, 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / .4) 0%, hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 0%, rgba(153, 115, 77, 0.8))`);
-
- test_valid_value(`color`, `color-mix(in hwb, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb, rgb(153, 128, 77), rgb(153, 153, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb, rgb(153, 153, 77), rgb(153, 128, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb, rgb(153, 140, 77), rgb(153, 77, 115))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 115), rgb(153, 140, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb, rgb(153, 102, 77), rgb(153, 77, 128))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 128), rgb(153, 102, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb, rgb(153, 128, 77), rgb(153, 153, 77))`);
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb, rgb(153, 153, 77), rgb(153, 128, 77))`);
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb, rgb(153, 140, 77), rgb(153, 77, 115))`);
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 115), rgb(153, 140, 77))`);
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb, rgb(153, 102, 77), rgb(153, 77, 128))`);
- test_valid_value(`color`, `color-mix(in hwb shorter hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 128), rgb(153, 102, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
- test_valid_value(`color`, `color-mix(in hwb longer hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
- test_valid_value(`color`, `color-mix(in hwb increasing hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
- test_valid_value(`color`, `color-mix(in hwb decreasing hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
-
- test_valid_value(`color`, `color-mix(in hwb, hwb(none none none), hwb(none none none))`, `color-mix(in hwb, rgb(255, 0, 0), rgb(255, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(none none none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(255, 0, 0), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), hwb(none none none))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(255, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 255, 26), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% none))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(255, 166, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(none 10% 20%), hwb(30deg none 40%))`, `color-mix(in hwb, rgb(204, 26, 26), rgb(153, 77, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgb(153, 115, 77))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40% / 0.5))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgba(153, 115, 77, 0.5))`);
- test_valid_value(`color`, `color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40% / none))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgba(153, 115, 77, 0))`);
-
- test_valid_value(`color`, `color-mix(in hwb, color(display-p3 0 1 0) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, color(display-p3 0 1 0) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, lch(100 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lch(100 116 334) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, lch(0 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lch(0 116 334) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklab(100 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklch(100 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
- test_valid_value(`color`, `color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in srgb, red, blue)`, `color-mix(in srgb, red, blue)`);
+ fuzzy_test_valid_color(`color-mix(in srgb, 70% red, 50% blue)`, `color-mix(in srgb, red 70%, blue 50%)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red, blue)`, `color-mix(in hsl, red, blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red calc(20%), blue)`, `color-mix(in hsl, red calc(20%), blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red calc(var(--v)*1%), blue)`, `color-mix(in hsl, red calc(var(--v)*1%), blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, currentcolor, blue)`, `color-mix(in hsl, currentcolor, blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red 60%, blue 40%)`, `color-mix(in hsl, red 60%, blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red 50%, blue)`, `color-mix(in hsl, red, blue)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, red, blue 50%)`, `color-mix(in hsl, red, blue)`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, red, hsl(120, 100%, 50%))`, `color-mix(in lch decreasing hue, red, rgb(0, 255, 0))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, 50% hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%), 50% hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46), rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, 25% hsl(120deg 10% 20%), hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%), 25% hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 75%, rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%), hsl(30deg 30% 40%) 25%)`, `color-mix(in hsl, rgb(46, 56, 46) 75%, rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40%) 75%)`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgb(133, 102, 71))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 30%, hsl(30deg 30% 40%) 90%)`, `color-mix(in hsl, rgb(46, 56, 46) 30%, rgb(133, 102, 71) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 12.5%, hsl(30deg 30% 40%) 37.5%)`, `color-mix(in hsl, rgb(46, 56, 46) 12.5%, rgb(133, 102, 71) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 0%, hsl(30deg 30% 40%))`, `color-mix(in hsl, rgb(46, 56, 46) 0%, rgb(133, 102, 71))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4), rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20%) 25%, hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgb(46, 56, 46) 25%, rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, 25% hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 25%, rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4), 25% hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 75%, rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4), hsl(30deg 30% 40% / .8) 25%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 75%, rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4) 25%, hsl(30deg 30% 40% / .8) 75%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 25%, rgba(133, 102, 71, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4) 30%, hsl(30deg 30% 40% / .8) 90%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 30%, rgba(133, 102, 71, 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4) 12.5%, hsl(30deg 30% 40% / .8) 37.5%)`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 12.5%, rgba(133, 102, 71, 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 10% 20% / .4) 0%, hsl(30deg 30% 40% / .8))`, `color-mix(in hsl, rgba(46, 56, 46, 0.4) 0%, rgba(133, 102, 71, 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl, rgb(191, 149, 64), rgb(191, 191, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl, rgb(191, 191, 64), rgb(191, 149, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl, rgb(191, 170, 64), rgb(191, 64, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 128), rgb(191, 170, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl, rgb(191, 106, 64), rgb(191, 64, 149))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 149), rgb(191, 106, 64))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl, rgb(191, 149, 64), rgb(191, 191, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl, rgb(191, 191, 64), rgb(191, 149, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl, rgb(191, 170, 64), rgb(191, 64, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 128), rgb(191, 170, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl, rgb(191, 106, 64), rgb(191, 64, 149))`);
+ fuzzy_test_valid_color(`color-mix(in hsl shorter hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl, rgb(191, 64, 149), rgb(191, 106, 64))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
+ fuzzy_test_valid_color(`color-mix(in hsl longer hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl longer hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
+ fuzzy_test_valid_color(`color-mix(in hsl increasing hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl increasing hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(40deg 50% 50%), hsl(60deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 149, 64), rgb(191, 191, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(60deg 50% 50%), hsl(40deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 191, 64), rgb(191, 149, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(50deg 50% 50%), hsl(330deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 170, 64), rgb(191, 64, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(330deg 50% 50%), hsl(50deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 64, 128), rgb(191, 170, 64))`);
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(20deg 50% 50%), hsl(320deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 106, 64), rgb(191, 64, 149))`);
+ fuzzy_test_valid_color(`color-mix(in hsl decreasing hue, hsl(320deg 50% 50%), hsl(20deg 50% 50%))`, `color-mix(in hsl decreasing hue, rgb(191, 64, 149), rgb(191, 106, 64))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(none none none), hsl(none none none))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(none none none), hsl(30deg 40% 80%))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(224, 204, 184))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 20% 40%), hsl(none none none))`, `color-mix(in hsl, rgb(82, 122, 82), rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 20% none), hsl(30deg 40% 60%))`, `color-mix(in hsl, rgb(0, 0, 0), rgb(194, 153, 112))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 20% 40%), hsl(30deg 20% none))`, `color-mix(in hsl, rgb(82, 122, 82), rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(none 20% 40%), hsl(30deg none 80%))`, `color-mix(in hsl, rgb(122, 82, 82), rgb(204, 204, 204))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40%))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgb(143, 61, 61))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40% / 0.5))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgba(143, 61, 61, 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, hsl(120deg 40% 40% / none), hsl(0deg 40% 40% / none))`, `color-mix(in hsl, rgba(61, 143, 61, 0), rgba(143, 61, 61, 0))`);
+
+ fuzzy_test_valid_color(`color-mix(in hsl, color(display-p3 0 1 0) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, color(display-p3 0 1 0) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, lch(100 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lch(100 116 334) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, lch(0 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, lch(0 116 334) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklab(100 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklch(100 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hsl, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hsl, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, 50% hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), 50% hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%) 25%, hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, 25% hwb(120deg 10% 20%), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), 25% hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% 40%) 25%)`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%) 25%, hwb(30deg 30% 40%) 75%)`, `color-mix(in hwb, rgb(26, 204, 26) 25%, rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%) 30%, hwb(30deg 30% 40%) 90%)`, `color-mix(in hwb, rgb(26, 204, 26) 30%, rgb(153, 115, 77) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%) 12.5%, hwb(30deg 30% 40%) 37.5%)`, `color-mix(in hwb, rgb(26, 204, 26) 12.5%, rgb(153, 115, 77) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%) 0%, hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 204, 26) 0%, rgb(153, 115, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4), rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4) 25%, hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, 25% hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), 25% hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgb(26, 204, 26) 75%, rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4), hwb(30deg 30% 40% / .8) 25%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 75%, rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4) 25%, hwb(30deg 30% 40% / .8) 75%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 25%, rgba(153, 115, 77, 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4) 30%, hwb(30deg 30% 40% / .8) 90%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 30%, rgba(153, 115, 77, 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4) 12.5%, hwb(30deg 30% 40% / .8) 37.5%)`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 12.5%, rgba(153, 115, 77, 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / .4) 0%, hwb(30deg 30% 40% / .8))`, `color-mix(in hwb, rgba(26, 204, 26, 0.4) 0%, rgba(153, 115, 77, 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb, rgb(153, 128, 77), rgb(153, 153, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb, rgb(153, 153, 77), rgb(153, 128, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb, rgb(153, 140, 77), rgb(153, 77, 115))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 115), rgb(153, 140, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb, rgb(153, 102, 77), rgb(153, 77, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 128), rgb(153, 102, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb, rgb(153, 128, 77), rgb(153, 153, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb, rgb(153, 153, 77), rgb(153, 128, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb, rgb(153, 140, 77), rgb(153, 77, 115))`);
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 115), rgb(153, 140, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb, rgb(153, 102, 77), rgb(153, 77, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hwb shorter hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb, rgb(153, 77, 128), rgb(153, 102, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hwb longer hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb longer hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hwb increasing hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb increasing hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(40deg 30% 40%), hwb(60deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 128, 77), rgb(153, 153, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(60deg 30% 40%), hwb(40deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 153, 77), rgb(153, 128, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(50deg 30% 40%), hwb(330deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 140, 77), rgb(153, 77, 115))`);
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(330deg 30% 40%), hwb(50deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 77, 115), rgb(153, 140, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(20deg 30% 40%), hwb(320deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 102, 77), rgb(153, 77, 128))`);
+ fuzzy_test_valid_color(`color-mix(in hwb decreasing hue, hwb(320deg 30% 40%), hwb(20deg 30% 40%))`, `color-mix(in hwb decreasing hue, rgb(153, 77, 128), rgb(153, 102, 77))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(none none none), hwb(none none none))`, `color-mix(in hwb, rgb(255, 0, 0), rgb(255, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(none none none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(255, 0, 0), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), hwb(none none none))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(255, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgb(26, 255, 26), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20%), hwb(30deg 30% none))`, `color-mix(in hwb, rgb(26, 204, 26), rgb(255, 166, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(none 10% 20%), hwb(30deg none 40%))`, `color-mix(in hwb, rgb(204, 26, 26), rgb(153, 77, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40%))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgb(153, 115, 77))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40% / 0.5))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgba(153, 115, 77, 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, hwb(120deg 10% 20% / none), hwb(30deg 30% 40% / none))`, `color-mix(in hwb, rgba(26, 204, 26, 0), rgba(153, 115, 77, 0))`);
+
+ fuzzy_test_valid_color(`color-mix(in hwb, color(display-p3 0 1 0) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, color(display-p3 0 1 0) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lab(100 104.3 -50.9) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lab(0 104.3 -50.9) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, lch(100 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lch(100 116 334) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, lch(0 116 334) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, lch(0 116 334) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklab(100 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(0 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklch(100 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(0 0.399 336.3) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklab(1 0.365 -0.16) 100%, rgb(0, 0, 0))`);
+ fuzzy_test_valid_color(`color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0) 0%)`, `color-mix(in hwb, oklch(1 0.399 336.3) 100%, rgb(0, 0, 0))`);
// lch()
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30), lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg) 25%, lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, 25% lch(10 20 30deg), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg), 25% lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 75%, lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg), lch(50 60 70deg) 25%)`, `color-mix(in lch, lch(10 20 30) 75%, lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg) 25%, lch(50 60 70deg) 75%)`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg) 30%, lch(50 60 70deg) 90%)`, `color-mix(in lch, lch(10 20 30) 30%, lch(50 60 70) 90%)`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg) 12.5%, lch(50 60 70deg) 37.5%)`, `color-mix(in lch, lch(10 20 30) 12.5%, lch(50 60 70) 37.5%)`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg) 0%, lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 0%, lch(50 60 70))`);
-
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4), lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4), lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4) 25%, lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, 25% lch(10 20 30deg / .4), lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4), 25% lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 75%, lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4), lch(50 60 70deg / .8) 25%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 75%, lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4) 25%, lch(50 60 70deg / .8) 75%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4) 30%, lch(50 60 70deg / .8) 90%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 30%, lch(50 60 70 / 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4) 12.5%, lch(50 60 70deg / .8) 37.5%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 12.5%, lch(50 60 70 / 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / .4) 0%, lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 0%, lch(50 60 70 / 0.8))`);
-
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch, lch(100 0 40), lch(100 0 60))`);
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch, lch(100 0 60), lch(100 0 40))`);
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch, lch(100 0 50), lch(100 0 330))`);
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch, lch(100 0 330), lch(100 0 50))`);
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch, lch(100 0 20), lch(100 0 320))`);
- test_valid_value(`color`, `color-mix(in lch, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch, lch(100 0 320), lch(100 0 20))`);
-
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch, lch(100 0 40), lch(100 0 60))`);
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch, lch(100 0 60), lch(100 0 40))`);
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch, lch(100 0 50), lch(100 0 330))`);
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch, lch(100 0 330), lch(100 0 50))`);
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch, lch(100 0 20), lch(100 0 320))`);
- test_valid_value(`color`, `color-mix(in lch shorter hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch, lch(100 0 320), lch(100 0 20))`);
-
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch longer hue, lch(100 0 40), lch(100 0 60))`);
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch longer hue, lch(100 0 60), lch(100 0 40))`);
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch longer hue, lch(100 0 50), lch(100 0 330))`);
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch longer hue, lch(100 0 330), lch(100 0 50))`);
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch longer hue, lch(100 0 20), lch(100 0 320))`);
- test_valid_value(`color`, `color-mix(in lch longer hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch longer hue, lch(100 0 320), lch(100 0 20))`);
-
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch increasing hue, lch(100 0 40), lch(100 0 60))`);
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch increasing hue, lch(100 0 60), lch(100 0 40))`);
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch increasing hue, lch(100 0 50), lch(100 0 330))`);
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch increasing hue, lch(100 0 330), lch(100 0 50))`);
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch increasing hue, lch(100 0 20), lch(100 0 320))`);
- test_valid_value(`color`, `color-mix(in lch increasing hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch increasing hue, lch(100 0 320), lch(100 0 20))`);
-
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch decreasing hue, lch(100 0 40), lch(100 0 60))`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch decreasing hue, lch(100 0 60), lch(100 0 40))`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch decreasing hue, lch(100 0 50), lch(100 0 330))`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch decreasing hue, lch(100 0 330), lch(100 0 50))`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch decreasing hue, lch(100 0 20), lch(100 0 320))`);
- test_valid_value(`color`, `color-mix(in lch decreasing hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch decreasing hue, lch(100 0 320), lch(100 0 20))`);
-
- test_valid_value(`color`, `color-mix(in lch, lch(none none none), lch(none none none))`, `color-mix(in lch, lch(none none none), lch(none none none))`);
- test_valid_value(`color`, `color-mix(in lch, lch(none none none), lch(50 60 70deg))`, `color-mix(in lch, lch(none none none), lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg), lch(none none none))`, `color-mix(in lch, lch(10 20 30), lch(none none none))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 none), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 none), lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg), lch(50 60 none))`, `color-mix(in lch, lch(10 20 30), lch(50 60 none))`);
- test_valid_value(`color`, `color-mix(in lch, lch(none 20 30deg), lch(50 none 70deg))`, `color-mix(in lch, lch(none 20 30), lch(50 none 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg / 0.5))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70 / 0.5))`);
- test_valid_value(`color`, `color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg / none))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70 / none))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30), lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg) 25%, lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, 25% lch(10 20 30deg), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg), 25% lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 75%, lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg), lch(50 60 70deg) 25%)`, `color-mix(in lch, lch(10 20 30) 75%, lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg) 25%, lch(50 60 70deg) 75%)`, `color-mix(in lch, lch(10 20 30) 25%, lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg) 30%, lch(50 60 70deg) 90%)`, `color-mix(in lch, lch(10 20 30) 30%, lch(50 60 70) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg) 12.5%, lch(50 60 70deg) 37.5%)`, `color-mix(in lch, lch(10 20 30) 12.5%, lch(50 60 70) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg) 0%, lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30) 0%, lch(50 60 70))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4), lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4), lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4) 25%, lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, 25% lch(10 20 30deg / .4), lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4), 25% lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 75%, lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4), lch(50 60 70deg / .8) 25%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 75%, lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4) 25%, lch(50 60 70deg / .8) 75%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 25%, lch(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4) 30%, lch(50 60 70deg / .8) 90%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 30%, lch(50 60 70 / 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4) 12.5%, lch(50 60 70deg / .8) 37.5%)`, `color-mix(in lch, lch(10 20 30 / 0.4) 12.5%, lch(50 60 70 / 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / .4) 0%, lch(50 60 70deg / .8))`, `color-mix(in lch, lch(10 20 30 / 0.4) 0%, lch(50 60 70 / 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch, lch(100 0 40), lch(100 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch, lch(100 0 60), lch(100 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch, lch(100 0 50), lch(100 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch, lch(100 0 330), lch(100 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch, lch(100 0 20), lch(100 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch, lch(100 0 320), lch(100 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch, lch(100 0 40), lch(100 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch, lch(100 0 60), lch(100 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch, lch(100 0 50), lch(100 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch, lch(100 0 330), lch(100 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch, lch(100 0 20), lch(100 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in lch shorter hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch, lch(100 0 320), lch(100 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch longer hue, lch(100 0 40), lch(100 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch longer hue, lch(100 0 60), lch(100 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch longer hue, lch(100 0 50), lch(100 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch longer hue, lch(100 0 330), lch(100 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch longer hue, lch(100 0 20), lch(100 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in lch longer hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch longer hue, lch(100 0 320), lch(100 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch increasing hue, lch(100 0 40), lch(100 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch increasing hue, lch(100 0 60), lch(100 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch increasing hue, lch(100 0 50), lch(100 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch increasing hue, lch(100 0 330), lch(100 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch increasing hue, lch(100 0 20), lch(100 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in lch increasing hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch increasing hue, lch(100 0 320), lch(100 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 40deg), lch(100 0 60deg))`, `color-mix(in lch decreasing hue, lch(100 0 40), lch(100 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 60deg), lch(100 0 40deg))`, `color-mix(in lch decreasing hue, lch(100 0 60), lch(100 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 50deg), lch(100 0 330deg))`, `color-mix(in lch decreasing hue, lch(100 0 50), lch(100 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 330deg), lch(100 0 50deg))`, `color-mix(in lch decreasing hue, lch(100 0 330), lch(100 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 20deg), lch(100 0 320deg))`, `color-mix(in lch decreasing hue, lch(100 0 20), lch(100 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in lch decreasing hue, lch(100 0 320deg), lch(100 0 20deg))`, `color-mix(in lch decreasing hue, lch(100 0 320), lch(100 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in lch, lch(none none none), lch(none none none))`, `color-mix(in lch, lch(none none none), lch(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(none none none), lch(50 60 70deg))`, `color-mix(in lch, lch(none none none), lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg), lch(none none none))`, `color-mix(in lch, lch(10 20 30), lch(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 none), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 none), lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg), lch(50 60 none))`, `color-mix(in lch, lch(10 20 30), lch(50 60 none))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(none 20 30deg), lch(50 none 70deg))`, `color-mix(in lch, lch(none 20 30), lch(50 none 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg / 0.5))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70 / 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in lch, lch(10 20 30deg / none), lch(50 60 70deg / none))`, `color-mix(in lch, lch(10 20 30 / none), lch(50 60 70 / none))`);
// oklch()
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg) 25%, oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, 25% oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg), 25% oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 75%, oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg) 25%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 75%, oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg) 25%, oklch(0.5 0.6 70deg) 75%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg) 30%, oklch(0.5 0.6 70deg) 90%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 30%, oklch(0.5 0.6 70) 90%)`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg) 12.5%, oklch(0.5 0.6 70deg) 37.5%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 12.5%, oklch(0.5 0.6 70) 37.5%)`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg) 0%, oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 0%, oklch(0.5 0.6 70))`);
-
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4), oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 25%, oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, 25% oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4), 25% oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 75%, oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8) 25%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 75%, oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 25%, oklch(0.5 0.6 70deg / .8) 75%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 30%, oklch(0.5 0.6 70deg / .8) 90%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 30%, oklch(0.5 0.6 70 / 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 12.5%, oklch(0.5 0.6 70deg / .8) 37.5%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 12.5%, oklch(0.5 0.6 70 / 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 0%, oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 0%, oklch(0.5 0.6 70 / 0.8))`);
-
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch, oklch(1 0 40), oklch(1 0 60))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch, oklch(1 0 60), oklch(1 0 40))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch, oklch(1 0 50), oklch(1 0 330))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch, oklch(1 0 330), oklch(1 0 50))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch, oklch(1 0 20), oklch(1 0 320))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch, oklch(1 0 320), oklch(1 0 20))`);
-
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch, oklch(1 0 40), oklch(1 0 60))`);
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch, oklch(1 0 60), oklch(1 0 40))`);
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch, oklch(1 0 50), oklch(1 0 330))`);
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch, oklch(1 0 330), oklch(1 0 50))`);
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch, oklch(1 0 20), oklch(1 0 320))`);
- test_valid_value(`color`, `color-mix(in oklch shorter hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch, oklch(1 0 320), oklch(1 0 20))`);
-
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch longer hue, oklch(1 0 40), oklch(1 0 60))`);
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch longer hue, oklch(1 0 60), oklch(1 0 40))`);
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch longer hue, oklch(1 0 50), oklch(1 0 330))`);
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch longer hue, oklch(1 0 330), oklch(1 0 50))`);
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch longer hue, oklch(1 0 20), oklch(1 0 320))`);
- test_valid_value(`color`, `color-mix(in oklch longer hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch longer hue, oklch(1 0 320), oklch(1 0 20))`);
-
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch increasing hue, oklch(1 0 40), oklch(1 0 60))`);
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch increasing hue, oklch(1 0 60), oklch(1 0 40))`);
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch increasing hue, oklch(1 0 50), oklch(1 0 330))`);
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch increasing hue, oklch(1 0 330), oklch(1 0 50))`);
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch increasing hue, oklch(1 0 20), oklch(1 0 320))`);
- test_valid_value(`color`, `color-mix(in oklch increasing hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch increasing hue, oklch(1 0 320), oklch(1 0 20))`);
-
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 40), oklch(1 0 60))`);
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 60), oklch(1 0 40))`);
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 50), oklch(1 0 330))`);
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 330), oklch(1 0 50))`);
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 20), oklch(1 0 320))`);
- test_valid_value(`color`, `color-mix(in oklch decreasing hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 320), oklch(1 0 20))`);
-
- test_valid_value(`color`, `color-mix(in oklch, oklch(none none none), oklch(none none none))`, `color-mix(in oklch, oklch(none none none), oklch(none none none))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(none none none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(none none none), oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(none none none))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(none none none))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 none), oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 none))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(0.5 0.6 none))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(none 0.2 30deg), oklch(0.5 none 70deg))`, `color-mix(in oklch, oklch(none 0.2 30), oklch(0.5 none 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg / 0.5))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70 / 0.5))`);
- test_valid_value(`color`, `color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg / none))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70 / none))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg) 25%, oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, 25% oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg), 25% oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 75%, oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 70deg) 25%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 75%, oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg) 25%, oklch(0.5 0.6 70deg) 75%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 25%, oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg) 30%, oklch(0.5 0.6 70deg) 90%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 30%, oklch(0.5 0.6 70) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg) 12.5%, oklch(0.5 0.6 70deg) 37.5%)`, `color-mix(in oklch, oklch(0.1 0.2 30) 12.5%, oklch(0.5 0.6 70) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg) 0%, oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30) 0%, oklch(0.5 0.6 70))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4), oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 25%, oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, 25% oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4), 25% oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 75%, oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4), oklch(0.5 0.6 70deg / .8) 25%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 75%, oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 25%, oklch(0.5 0.6 70deg / .8) 75%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 25%, oklch(0.5 0.6 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 30%, oklch(0.5 0.6 70deg / .8) 90%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 30%, oklch(0.5 0.6 70 / 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 12.5%, oklch(0.5 0.6 70deg / .8) 37.5%)`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 12.5%, oklch(0.5 0.6 70 / 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / .4) 0%, oklch(0.5 0.6 70deg / .8))`, `color-mix(in oklch, oklch(0.1 0.2 30 / 0.4) 0%, oklch(0.5 0.6 70 / 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch, oklch(1 0 40), oklch(1 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch, oklch(1 0 60), oklch(1 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch, oklch(1 0 50), oklch(1 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch, oklch(1 0 330), oklch(1 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch, oklch(1 0 20), oklch(1 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch, oklch(1 0 320), oklch(1 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch, oklch(1 0 40), oklch(1 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch, oklch(1 0 60), oklch(1 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch, oklch(1 0 50), oklch(1 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch, oklch(1 0 330), oklch(1 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch, oklch(1 0 20), oklch(1 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in oklch shorter hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch, oklch(1 0 320), oklch(1 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch longer hue, oklch(1 0 40), oklch(1 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch longer hue, oklch(1 0 60), oklch(1 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch longer hue, oklch(1 0 50), oklch(1 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch longer hue, oklch(1 0 330), oklch(1 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch longer hue, oklch(1 0 20), oklch(1 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in oklch longer hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch longer hue, oklch(1 0 320), oklch(1 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch increasing hue, oklch(1 0 40), oklch(1 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch increasing hue, oklch(1 0 60), oklch(1 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch increasing hue, oklch(1 0 50), oklch(1 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch increasing hue, oklch(1 0 330), oklch(1 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch increasing hue, oklch(1 0 20), oklch(1 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in oklch increasing hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch increasing hue, oklch(1 0 320), oklch(1 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 40deg), oklch(1 0 60deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 40), oklch(1 0 60))`);
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 60deg), oklch(1 0 40deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 60), oklch(1 0 40))`);
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 50deg), oklch(1 0 330deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 50), oklch(1 0 330))`);
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 330deg), oklch(1 0 50deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 330), oklch(1 0 50))`);
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 20deg), oklch(1 0 320deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 20), oklch(1 0 320))`);
+ fuzzy_test_valid_color(`color-mix(in oklch decreasing hue, oklch(1 0 320deg), oklch(1 0 20deg))`, `color-mix(in oklch decreasing hue, oklch(1 0 320), oklch(1 0 20))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(none none none), oklch(none none none))`, `color-mix(in oklch, oklch(none none none), oklch(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(none none none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(none none none), oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(none none none))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 none), oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg), oklch(0.5 0.6 none))`, `color-mix(in oklch, oklch(0.1 0.2 30), oklch(0.5 0.6 none))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(none 0.2 30deg), oklch(0.5 none 70deg))`, `color-mix(in oklch, oklch(none 0.2 30), oklch(0.5 none 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg / 0.5))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70 / 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in oklch, oklch(0.1 0.2 30deg / none), oklch(0.5 0.6 70deg / none))`, `color-mix(in oklch, oklch(0.1 0.2 30 / none), oklch(0.5 0.6 70 / none))`);
// lab()
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30), lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, 25% lab(10 20 30), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30), 25% lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 75%, lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30), lab(50 60 70) 25%)`, `color-mix(in lab, lab(10 20 30) 75%, lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70) 75%)`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30) 30%, lab(50 60 70) 90%)`, `color-mix(in lab, lab(10 20 30) 30%, lab(50 60 70) 90%)`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30) 12.5%, lab(50 60 70) 37.5%)`, `color-mix(in lab, lab(10 20 30) 12.5%, lab(50 60 70) 37.5%)`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30) 0%, lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 0%, lab(50 60 70))`);
-
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4), lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4), lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4) 25%, lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, 25% lab(10 20 30 / .4), lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4), 25% lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 75%, lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4), lab(50 60 70 / .8) 25%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 75%, lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4) 25%, lab(50 60 70 / .8) 75%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4) 30%, lab(50 60 70 / .8) 90%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 30%, lab(50 60 70 / 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4) 12.5%, lab(50 60 70 / .8) 37.5%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 12.5%, lab(50 60 70 / 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / .4) 0%, lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 0%, lab(50 60 70 / 0.8))`);
-
- test_valid_value(`color`, `color-mix(in lab, lab(none none none), lab(none none none))`, `color-mix(in lab, lab(none none none), lab(none none none))`);
- test_valid_value(`color`, `color-mix(in lab, lab(none none none), lab(50 60 70))`, `color-mix(in lab, lab(none none none), lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30), lab(none none none))`, `color-mix(in lab, lab(10 20 30), lab(none none none))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 none), lab(50 60 70))`, `color-mix(in lab, lab(10 20 none), lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30), lab(50 60 none))`, `color-mix(in lab, lab(10 20 30), lab(50 60 none))`);
- test_valid_value(`color`, `color-mix(in lab, lab(none 20 30), lab(50 none 70))`, `color-mix(in lab, lab(none 20 30), lab(50 none 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / 0.5))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / 0.5))`);
- test_valid_value(`color`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / none))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / none))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30), lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, 25% lab(10 20 30), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30), 25% lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 75%, lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30), lab(50 60 70) 25%)`, `color-mix(in lab, lab(10 20 30) 75%, lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70) 75%)`, `color-mix(in lab, lab(10 20 30) 25%, lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30) 30%, lab(50 60 70) 90%)`, `color-mix(in lab, lab(10 20 30) 30%, lab(50 60 70) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30) 12.5%, lab(50 60 70) 37.5%)`, `color-mix(in lab, lab(10 20 30) 12.5%, lab(50 60 70) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30) 0%, lab(50 60 70))`, `color-mix(in lab, lab(10 20 30) 0%, lab(50 60 70))`);
+
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4), lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4), lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4) 25%, lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, 25% lab(10 20 30 / .4), lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4), 25% lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 75%, lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4), lab(50 60 70 / .8) 25%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 75%, lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4) 25%, lab(50 60 70 / .8) 75%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 25%, lab(50 60 70 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4) 30%, lab(50 60 70 / .8) 90%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 30%, lab(50 60 70 / 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4) 12.5%, lab(50 60 70 / .8) 37.5%)`, `color-mix(in lab, lab(10 20 30 / 0.4) 12.5%, lab(50 60 70 / 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / .4) 0%, lab(50 60 70 / .8))`, `color-mix(in lab, lab(10 20 30 / 0.4) 0%, lab(50 60 70 / 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in lab, lab(none none none), lab(none none none))`, `color-mix(in lab, lab(none none none), lab(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(none none none), lab(50 60 70))`, `color-mix(in lab, lab(none none none), lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30), lab(none none none))`, `color-mix(in lab, lab(10 20 30), lab(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 none), lab(50 60 70))`, `color-mix(in lab, lab(10 20 none), lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30), lab(50 60 none))`, `color-mix(in lab, lab(10 20 30), lab(50 60 none))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(none 20 30), lab(50 none 70))`, `color-mix(in lab, lab(none 20 30), lab(50 none 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / none), lab(50 60 70))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / 0.5))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / none))`, `color-mix(in lab, lab(10 20 30 / none), lab(50 60 70 / none))`);
// oklab()
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, 25% oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3), 25% oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 75%, oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7) 25%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 75%, oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7) 75%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 30%, oklab(0.5 0.6 0.7) 90%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 30%, oklab(0.5 0.6 0.7) 90%)`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 12.5%, oklab(0.5 0.6 0.7) 37.5%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 12.5%, oklab(0.5 0.6 0.7) 37.5%)`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 0%, oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 0%, oklab(0.5 0.6 0.7))`);
-
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4), oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 25%, oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, 25% oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), 25% oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 75%, oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8) 25%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 75%, oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 25%, oklab(0.5 0.6 0.7 / .8) 75%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 30%, oklab(0.5 0.6 0.7 / .8) 90%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 30%, oklab(0.5 0.6 0.7 / 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 12.5%, oklab(0.5 0.6 0.7 / .8) 37.5%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 12.5%, oklab(0.5 0.6 0.7 / 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 0%, oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 0%, oklab(0.5 0.6 0.7 / 0.8))`);
-
- test_valid_value(`color`, `color-mix(in oklab, oklab(none none none), oklab(none none none))`, `color-mix(in oklab, oklab(none none none), oklab(none none none))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(none none none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(none none none), oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(none none none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(none none none))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 none), oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 none))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(none 0.2 0.3), oklab(0.5 none 0.7))`, `color-mix(in oklab, oklab(none 0.2 0.3), oklab(0.5 none 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / 0.5))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / 0.5))`);
- test_valid_value(`color`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / none))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, 25% oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3), 25% oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 75%, oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 0.7) 25%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 75%, oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7) 75%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 25%, oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3) 30%, oklab(0.5 0.6 0.7) 90%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 30%, oklab(0.5 0.6 0.7) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3) 12.5%, oklab(0.5 0.6 0.7) 37.5%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 12.5%, oklab(0.5 0.6 0.7) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3) 0%, oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3) 0%, oklab(0.5 0.6 0.7))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4), oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 25%, oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, 25% oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), 25% oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 75%, oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4), oklab(0.5 0.6 0.7 / .8) 25%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 75%, oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 25%, oklab(0.5 0.6 0.7 / .8) 75%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 25%, oklab(0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 30%, oklab(0.5 0.6 0.7 / .8) 90%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 30%, oklab(0.5 0.6 0.7 / 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 12.5%, oklab(0.5 0.6 0.7 / .8) 37.5%)`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 12.5%, oklab(0.5 0.6 0.7 / 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / .4) 0%, oklab(0.5 0.6 0.7 / .8))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / 0.4) 0%, oklab(0.5 0.6 0.7 / 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(none none none), oklab(none none none))`, `color-mix(in oklab, oklab(none none none), oklab(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(none none none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(none none none), oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(none none none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(none none none))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 none), oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3), oklab(0.5 0.6 none))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(none 0.2 0.3), oklab(0.5 none 0.7))`, `color-mix(in oklab, oklab(none 0.2 0.3), oklab(0.5 none 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / 0.5))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / none))`, `color-mix(in oklab, oklab(0.1 0.2 0.3 / none), oklab(0.5 0.6 0.7 / none))`);
for (const colorSpace of [ "srgb", "srgb-linear", "display-p3", "a98-rgb", "prophoto-rgb", "rec2020", "xyz", "xyz-d50", "xyz-d65" ]) {
const resultColorSpace = colorSpace == "xyz" ? "xyz-d65" : colorSpace;
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, 50% color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), 50% color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 25%, color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 25%, color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7) 25%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 75%, color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 25%, color(${colorSpace} .5 .6 .7) 75%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 25%, color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 30%, color(${colorSpace} .5 .6 .7) 90%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 30%, color(${resultColorSpace} 0.5 0.6 0.7) 90%)`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 12.5%, color(${colorSpace} .5 .6 .7) 37.5%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 12.5%, color(${resultColorSpace} 0.5 0.6 0.7) 37.5%)`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 0%, color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 0%, color(${resultColorSpace} 0.5 0.6 0.7))`);
-
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .5), color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.5), color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 25%, color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 25%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4), color(${colorSpace} .5 .6 .7 / .8) 25%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 75%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 25%, color(${colorSpace} .5 .6 .7 / .8) 75%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 25%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 30%, color(${colorSpace} .5 .6 .7 / .8) 90%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 30%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8) 90%)`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 12.5%, color(${colorSpace} .5 .6 .7 / .8) 37.5%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 12.5%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8) 37.5%)`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 0%, color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 0%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
-
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} 2 3 4 / 5), color(${colorSpace} 4 6 8 / 10))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 2 3 4), color(${resultColorSpace} 4 6 8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} -2 -3 -4), color(${colorSpace} -4 -6 -8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} -2 -3 -4), color(${resultColorSpace} -4 -6 -8))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} -2 -3 -4 / -5), color(${colorSpace} -4 -6 -8 / -10))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} -2 -3 -4 / 0), color(${resultColorSpace} -4 -6 -8 / 0))`);
-
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} none none none), color(${colorSpace} none none none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none none none), color(${resultColorSpace} none none none))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} none none none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none none none), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} none none none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} none none none))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 none), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 none))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} none .2 .3), color(${colorSpace} .5 none .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none 0.2 0.3), color(${resultColorSpace} 0.5 none 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7 / 0.5))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7 / 0.5))`);
- test_valid_value(`color`, `color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7 / none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7 / none))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, 50% color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), 50% color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 25%, color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 25%, color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 .7) 25%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 75%, color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 25%, color(${colorSpace} .5 .6 .7) 75%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 25%, color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 30%, color(${colorSpace} .5 .6 .7) 90%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 30%, color(${resultColorSpace} 0.5 0.6 0.7) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 12.5%, color(${colorSpace} .5 .6 .7) 37.5%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 12.5%, color(${resultColorSpace} 0.5 0.6 0.7) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3) 0%, color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3) 0%, color(${resultColorSpace} 0.5 0.6 0.7))`);
+
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .5), color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.5), color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 25%, color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 25%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4), color(${colorSpace} .5 .6 .7 / .8) 25%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 75%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 25%, color(${colorSpace} .5 .6 .7 / .8) 75%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 25%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 30%, color(${colorSpace} .5 .6 .7 / .8) 90%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 30%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8) 90%)`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 12.5%, color(${colorSpace} .5 .6 .7 / .8) 37.5%)`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 12.5%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8) 37.5%)`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / .4) 0%, color(${colorSpace} .5 .6 .7 / .8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / 0.4) 0%, color(${resultColorSpace} 0.5 0.6 0.7 / 0.8))`);
+
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} 2 3 4 / 5), color(${colorSpace} 4 6 8 / 10))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 2 3 4), color(${resultColorSpace} 4 6 8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} -2 -3 -4), color(${colorSpace} -4 -6 -8))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} -2 -3 -4), color(${resultColorSpace} -4 -6 -8))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} -2 -3 -4 / -5), color(${colorSpace} -4 -6 -8 / -10))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} -2 -3 -4 / 0), color(${resultColorSpace} -4 -6 -8 / 0))`);
+
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} none none none), color(${colorSpace} none none none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none none none), color(${resultColorSpace} none none none))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} none none none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none none none), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} none none none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} none none none))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 none), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3), color(${colorSpace} .5 .6 none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3), color(${resultColorSpace} 0.5 0.6 none))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} none .2 .3), color(${colorSpace} .5 none .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} none 0.2 0.3), color(${resultColorSpace} 0.5 none 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7 / 0.5))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7 / 0.5))`);
+ fuzzy_test_valid_color(`color-mix(in ${colorSpace}, color(${colorSpace} .1 .2 .3 / none), color(${colorSpace} .5 .6 .7 / none))`, `color-mix(in ${resultColorSpace}, color(${resultColorSpace} 0.1 0.2 0.3 / none), color(${resultColorSpace} 0.5 0.6 0.7 / none))`);
}
</script>
</body>
diff --git a/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b-ref.html b/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b-ref.html
deleted file mode 100644
index 7d1f1bf278..0000000000
--- a/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b-ref.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Reference</title>
-<link rel="author" title="Intel" href="http://www.intel.com">
-<style>
- table { border-spacing: 0 2px; padding: 0; border: none; }
- td { border: none; padding: 0; height: 1.2em; }
-</style>
-<body>
- <p><strong>WARNING: This test assumes that the device gamut is sRGB
- (as it will be for many CRT monitors).</strong></p>
- <p>Every row in this table should have both columns the same color:</p>
- <table>
- <tr>
- <th style="background:white; color: black">Column 1</th>
- <th style="background:black; color: white">Column 2</th>
- </tr>
- <tr>
- <td colspan='2' style="background: black">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: black">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: white">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(0, 0, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(102, 0, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(102, 102, 102)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(153, 153, 153)">&nbsp;</td>
- </tr>
- </table>
-</body>
diff --git a/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b.xht b/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b.xht
deleted file mode 100644
index d66c2db925..0000000000
--- a/testing/web-platform/tests/css/css-color/t424-hsl-clip-outside-gamut-b.xht
+++ /dev/null
@@ -1,60 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>CSS Test: hsl() clipping outside device gamut</title>
- <link rel="author" title="L. David Baron" href="https://dbaron.org/" />
- <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
- <link rel="help" href="http://www.w3.org/TR/css3-color/#hsl-color" />
- <link rel="match" href="t424-hsl-clip-outside-gamut-b-ref.html" />
- <meta name="assert" content="Test clipping of hsl() values outside the device gamut." />
- <style type="text/css"><![CDATA[
-
- table { border-spacing: 0 2px; padding: 0; border: none; }
- td { border: none; padding: 0; height: 1.2em; }
-
- ]]></style>
- </head>
- <body>
-
- <p><strong>WARNING: This test assumes that the device gamut is sRGB
- (as it will be for many CRT monitors).</strong></p>
-
- <p>Every row in this table should have both columns the same color:</p>
-
- <table>
- <tr>
- <th style="background:white; color: black">Column 1</th>
- <th style="background:black; color: white">Column 2</th>
- </tr>
- <tr>
- <td style="background: hsl(240, 100%, -100%)">&nbsp;</td>
- <td style="background: black">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(240, 75%, -20%)">&nbsp;</td>
- <td style="background: black">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(240, 75%, 120%)">&nbsp;</td>
- <td style="background: white">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(240, 130%, 50%)">&nbsp;</td>
- <td style="background: rgb(0, 0, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(264, 130%, 50%)">&nbsp;</td>
- <td style="background: rgb(102, 0, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(0, -50%, 40%)">&nbsp;</td>
- <td style="background: rgb(102, 102, 102)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsl(30, -50%, 60%)">&nbsp;</td>
- <td style="background: rgb(153, 153, 153)">&nbsp;</td>
- </tr>
- </table>
-
- </body>
-</html>
diff --git a/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b-ref.html b/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b-ref.html
deleted file mode 100644
index d35a608fb5..0000000000
--- a/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b-ref.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Reference</title>
-<link rel="author" title="Intel" href="http://www.intel.com">
-<style>
- body { background: white; color: black; }
- table { border-spacing: 0 2px; padding: 0; border: none; }
- td { border: none; padding: 0; height: 1.2em; }
-</style>
-<body>
- <p><strong>WARNING: This test assumes that the device gamut is sRGB
- (as it will be for many CRT monitors).</strong></p>
- <p>Every row in this table should have both columns the same color:</p>
- <table>
- <tr>
- <th style="background:white; color: black">Column 1</th>
- <th style="background:black; color: white">Column 2</th>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(102, 102, 102)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(153, 153, 153)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: white">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(153, 153, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(163, 102, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(194, 194, 194)">&nbsp;</td>
- </tr>
- <tr>
- <td colspan='2' style="background: rgb(194, 194, 194)">&nbsp;</td>
- </tr>
- </table>
-</body>
diff --git a/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b.xht b/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b.xht
deleted file mode 100644
index d30cf8c483..0000000000
--- a/testing/web-platform/tests/css/css-color/t425-hsla-clip-outside-device-gamut-b.xht
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>CSS Test: hsla() clipping outside device gamut</title>
- <link rel="author" title="L. David Baron" href="https://dbaron.org/" />
- <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
- <link rel="help" href="http://www.w3.org/TR/css3-color/#hsla-color" />
- <link rel="match" href="t425-hsla-clip-outside-device-gamut-b-ref.html" />
- <meta name="assert" content="Test clipping of hsla() values outside the device gamut." />
- <style type="text/css"><![CDATA[
-
- body { background: white; color: black; }
- table { border-spacing: 0 2px; padding: 0; border: none; }
- td { border: none; padding: 0; height: 1.2em; }
-
- ]]></style>
- </head>
- <body>
-
- <p><strong>WARNING: This test assumes that the device gamut is sRGB
- (as it will be for many CRT monitors).</strong></p>
-
- <p>Every row in this table should have both columns the same color:</p>
-
- <table>
- <tr>
- <th style="background:white; color: black">Column 1</th>
- <th style="background:black; color: white">Column 2</th>
- </tr>
- <tr>
- <td style="background: hsla(240, 100%, -100%, 0.6)">&nbsp;</td>
- <td style="background: rgb(102, 102, 102)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(240, 75%, -20%, 0.4)">&nbsp;</td>
- <td style="background: rgb(153, 153, 153)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(240, 75%, 120%, 0.6)">&nbsp;</td>
- <td style="background: white">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(240, 130%, 50%, 0.4)">&nbsp;</td>
- <td style="background: rgb(153, 153, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(264, 130%, 50%, 0.6)">&nbsp;</td>
- <td style="background: rgb(163, 102, 255)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(0, -50%, 40%, 0.4)">&nbsp;</td>
- <td style="background: rgb(194, 194, 194)">&nbsp;</td>
- </tr>
- <tr>
- <td style="background: hsla(30, -50%, 60%, 0.6)">&nbsp;</td>
- <td style="background: rgb(194, 194, 194)">&nbsp;</td>
- </tr>
- </table>
-
- </body>
-</html>
diff --git a/testing/web-platform/tests/css/css-contain/contain-layout-baseline-005.html b/testing/web-platform/tests/css/css-contain/contain-layout-baseline-005.html
index 0971402e6b..fb706cbf03 100644
--- a/testing/web-platform/tests/css/css-contain/contain-layout-baseline-005.html
+++ b/testing/web-platform/tests/css/css-contain/contain-layout-baseline-005.html
@@ -43,7 +43,6 @@ fieldset, details {
<div class="wrapper">
<canvas></canvas>
<div class="inline-block">foo</div>
- <button>foo</button>
<select><option>foo</option></select>
<select multiple style="height: 40px;"><option>foo</option></select>
<textarea style="height: 40px;"></textarea>
diff --git a/testing/web-platform/tests/css/css-contain/contain-layout-button-001.html b/testing/web-platform/tests/css/css-contain/contain-layout-button-001.html
deleted file mode 100644
index b53b28879e..0000000000
--- a/testing/web-platform/tests/css/css-contain/contain-layout-button-001.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Containment Test: Layout containment on button</title>
-<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
-<link rel="help" href="https://drafts.csswg.org/css-contain-1/#containment-layout">
-<link rel="help" href="https://drafts.csswg.org/css2/visudet.html#propdef-vertical-align">
-<link rel="match" href="reference/contain-layout-button-001-ref.html">
-<meta name=assert content="Layout containment does apply to buttons, thus their baseline is their margin-bottom edge.">
-<style>
-button {
- border: 5px solid green;
- padding: 0;
- /* We use a nonzero margin-bottom to be sure we're synthesizing a baseline
- from the margin-box rather than from the border-box: */
- margin-bottom: 2px;
- contain: layout;
- color: transparent;
- width: 0;
- height: 0;
-}
-</style>
-
-<p>This test passes if it has the same output as the reference. You see the word "before", a 10px green square aligned 2px above the text's baseline, and then the word "after".</p>
-before<button>b</button>after
diff --git a/testing/web-platform/tests/css/css-contain/contain-layout-button-001.tentative.html b/testing/web-platform/tests/css/css-contain/contain-layout-button-001.tentative.html
new file mode 100644
index 0000000000..f5a664e566
--- /dev/null
+++ b/testing/web-platform/tests/css/css-contain/contain-layout-button-001.tentative.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Containment Test: Layout containment on button</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-contain-1/#containment-layout">
+<link rel="help" href="https://drafts.csswg.org/css2/visudet.html#propdef-vertical-align">
+<link rel="match" href="reference/contain-layout-button-001-ref.html">
+<meta name=assert content="Layout containment does apply to buttons, but in an inline context their baseline is synthesized from their content-box.">
+<style>
+button {
+ border: 5px solid green;
+ padding: 0;
+ /* We use a nonzero margin-bottom to be sure we're synthesizing a baseline
+ from the margin-box rather than from the border-box: */
+ margin-bottom: 2px;
+ contain: layout;
+ color: transparent;
+ width: 0;
+ height: 0;
+}
+</style>
+
+<p>This test passes if it has the same output as the reference. You see the word "before", a 10px green square aligned 2px above the text's baseline, and then the word "after".</p>
+before<button>b</button>after
diff --git a/testing/web-platform/tests/css/css-contain/contain-layout-button-002.tentative.html b/testing/web-platform/tests/css/css-contain/contain-layout-button-002.tentative.html
new file mode 100644
index 0000000000..15026d55f8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-contain/contain-layout-button-002.tentative.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-contain-1/#containment-layout">
+<link rel="help" href="https://github.com/web-platform-tests/wpt/issues/45889">
+<link rel="match" href="reference/contain-layout-button-002-ref.html">
+<meta name=assert content="An empty button and a button with layout containment should align the same.">
+<style>
+button {
+ border: 5px solid green;
+ padding: 10px;
+ margin-bottom: 2px;
+ color: transparent;
+ width: 20px;
+ height: 20px;
+}
+</style>
+
+<p>This test passes if it has the same output as the reference.</p>
+<button></button> <button style="contain:layout"></button>
diff --git a/testing/web-platform/tests/css/css-contain/container-queries/custom-property-style-queries.html b/testing/web-platform/tests/css/css-contain/container-queries/custom-property-style-queries.html
index 4ae5efca91..d9152432ed 100644
--- a/testing/web-platform/tests/css/css-contain/container-queries/custom-property-style-queries.html
+++ b/testing/web-platform/tests/css/css-contain/container-queries/custom-property-style-queries.html
@@ -206,6 +206,9 @@
--inherit-no: bar;
--unset-no: baz;
--initial-no: baz;
+ --space-no: baz;
+ --explicit-initial: initial;
+ --space: ;
}
@container style(--initial: initial) {
#initial { color: green; }
@@ -225,6 +228,18 @@
@container not style(--inherit-no: inherit) {
#inherit-no { color: green; }
}
+ @container style(--explicit-initial: initial) {
+ #explicit-initial { color: green; }
+ }
+ @container not style(--explicit-initial) {
+ #explicit-initial-implicit { color: green; }
+ }
+ @container style(--space: ) {
+ #space { color: green; }
+ }
+ @container not style(--space-no: ) {
+ #space-no { color: green; }
+ }
@container style(--unset: unset) {
#unset { color: green; }
}
@@ -238,6 +253,10 @@
<div id="initial-implicit"></div>
<div id="initial-no"></div>
<div id="initial-no-implicit"></div>
+ <div id="explicit-initial"></div>
+ <div id="explicit-initial-implicit"></div>
+ <div id="space"></div>
+ <div id="space-no"></div>
<div id="inherit"></div>
<div id="inherit-no"></div>
<div id="unset"></div>
@@ -262,6 +281,22 @@
}, "Style query matching value-less query against non-initial value");
test(() => {
+ assert_equals(getComputedStyle(document.querySelector("#explicit-initial")).color, green);
+ }, "Style query 'initial' matching (with explicit 'initial' value)");
+
+ test(() => {
+ assert_equals(getComputedStyle(document.querySelector("#explicit-initial-implicit")).color, green);
+ }, "Style query matching negated value-less query against initial value (with explicit 'initial' value)");
+
+ test(() => {
+ assert_equals(getComputedStyle(document.querySelector("#space")).color, green);
+ }, "Style query 'space' matching");
+
+ test(() => {
+ assert_equals(getComputedStyle(document.querySelector("#space-no")).color, green);
+ }, "Style query 'space' not matching");
+
+ test(() => {
assert_equals(getComputedStyle(document.querySelector("#inherit")).color, green);
}, "Style query 'inherit' matching");
diff --git a/testing/web-platform/tests/css/css-contain/container-queries/registered-color-style-queries.html b/testing/web-platform/tests/css/css-contain/container-queries/registered-color-style-queries.html
new file mode 100644
index 0000000000..6e2bfb896b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-contain/container-queries/registered-color-style-queries.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<title>CSS Container Queries Test: registered color syntax style queries</title>
+<link rel="help" href="https://drafts.csswg.org/css-contain-3/#style-container">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/cq-testcommon.js"></script>
+<style>
+ @property --reg-color {
+ syntax: "<color>";
+ inherits: false;
+ initial-value: red;
+ }
+
+ #light { color-scheme: light; }
+ #dark { color-scheme: dark; }
+ .container { --reg-color: light-dark(white, black); }
+
+ @container style(--reg-color: white) {
+ #t1 { color: green; }
+ }
+ @container style(--reg-color: black) {
+ #t2 { color: green; }
+ }
+</style>
+<div id="light" class="container">
+ <div id="t1"></div>
+</div>
+<div id="dark" class="container">
+ <div id="t2"></div>
+</div>
+<script>
+ const green = "rgb(0, 128, 0)";
+
+ test(() => {
+ assert_equals(getComputedStyle(t1).color, green);
+ }, "Registered color with light color-scheme and light-dark()");
+
+ test(() => {
+ assert_equals(getComputedStyle(t2).color, green);
+ }, "Registered color with dark color-scheme and light-dark()");
+</script>
diff --git a/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-background-clip-crash.html b/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-background-clip-crash.html
new file mode 100644
index 0000000000..1fa645f457
--- /dev/null
+++ b/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-background-clip-crash.html
@@ -0,0 +1,23 @@
+<!doctype html>
+<html>
+<body>
+ <style>
+ body {
+ content-visibility: hidden;
+ background-clip: text;
+ position: absolute;
+ border-right-style: dashed;
+ border-top-style: ridge;
+ background-color: green;
+ }
+ </style>
+ <script>
+ var p1 = document.createElement('p');
+ var p2 = document.createElement('p');
+ document.body.appendChild(p1);
+ document.body.appendChild(p2);
+ p1.scroll();
+ p2.remove();
+ </script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-contain/reference/contain-layout-baseline-005-ref.html b/testing/web-platform/tests/css/css-contain/reference/contain-layout-baseline-005-ref.html
index 360652c939..83340137ac 100644
--- a/testing/web-platform/tests/css/css-contain/reference/contain-layout-baseline-005-ref.html
+++ b/testing/web-platform/tests/css/css-contain/reference/contain-layout-baseline-005-ref.html
@@ -39,7 +39,6 @@ fieldset, details {
<div class="wrapper">
<canvas></canvas>
<div class="inline-block">foo</div>
- <button>foo</button>
<select><option>foo</option></select>
<select multiple style="height: 40px;"><option>foo</option></select>
<textarea style="height: 40px;"></textarea>
diff --git a/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-001-ref.html b/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-001-ref.html
index da83204dce..c20efbbb39 100644
--- a/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-001-ref.html
+++ b/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-001-ref.html
@@ -7,7 +7,7 @@ div.fakeButton {
display: inline-block;
border: 5px solid green;
padding: 0;
- margin-bottom: 2px;
+ margin-bottom: -5px;
color: transparent;
width: 0;
height: 0px;
diff --git a/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-002-ref.html b/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-002-ref.html
new file mode 100644
index 0000000000..85b98ee4a6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-contain/reference/contain-layout-button-002-ref.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<style>
+button {
+ border: 5px solid green;
+ padding: 10px;
+ margin-bottom: 2px;
+ color: transparent;
+ width: 20px;
+ height: 20px;
+}
+</style>
+<p>This test passes if it has the same output as the reference.</p>
+<button></button> <button></button>
diff --git a/testing/web-platform/tests/css/css-content/parsing/content-valid.html b/testing/web-platform/tests/css/css-content/parsing/content-valid.html
index 5c75586107..60d03a4d4c 100644
--- a/testing/web-platform/tests/css/css-content/parsing/content-valid.html
+++ b/testing/web-platform/tests/css/css-content/parsing/content-valid.html
@@ -42,7 +42,7 @@ test_valid_value_combinations("content", `counters(counter-name, ".", counter-st
test_valid_value_combinations("content", `counters(counter-name, ".", dECiMaL)`, `counters(counter-name, ".")`);
test_valid_value_combinations("content", `counters(counter-name, ".", DECIMAL)`, `counters(counter-name, ".")`);
-test_valid_value_combinations("content", `url("https://www.example.com/picture.svg")`);
+test_valid_value_combinations("content", `url("picture.svg")`);
test_valid_value_combinations("content", `"hello"`);
@@ -52,7 +52,7 @@ test_valid_value_combinations("content", `counter(counter-name) "potato"`);
test_valid_value_combinations("content", `counters(counter-name, ".") "potato"`);
test_valid_value_combinations("content", `"(" counters(counter-name, ".", counter-style) ")"`);
test_valid_value_combinations("content", `open-quote "hello" "world" close-quote`);
-test_valid_value_combinations("content", `url("https://www.example.com/picture.svg") "hello"`);
+test_valid_value_combinations("content", `url("picture.svg") "hello"`);
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/css/css-counter-styles/counter-style-at-rule/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-counter-styles/counter-style-at-rule/WEB_FEATURES.yml
new file mode 100644
index 0000000000..fc866d5c12
--- /dev/null
+++ b/testing/web-platform/tests/css/css-counter-styles/counter-style-at-rule/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: counter-style
+ files: "**"
diff --git a/testing/web-platform/tests/css/css-counter-styles/cssom/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-counter-styles/cssom/WEB_FEATURES.yml
new file mode 100644
index 0000000000..1efb03070d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-counter-styles/cssom/WEB_FEATURES.yml
@@ -0,0 +1,26 @@
+# All of the tests in this directory are for CSSCounterStyleRule, but tests for
+# other parts of CSS Counter Styles could potentially be added here, so list of
+# the (current) tests to avoid matching tests from unrelated features added
+# later.
+features:
+- name: counter-style
+ files:
+ - cssom-additive-symbols-setter-invalid.html
+ - cssom-additive-symbols-setter.html
+ - cssom-fallback-setter-invalid.html
+ - cssom-fallback-setter.html
+ - cssom-name-setter-invalid.html
+ - cssom-name-setter.html
+ - cssom-negative-setter-invalid.html
+ - cssom-negative-setter.html
+ - cssom-pad-setter-invalid.html
+ - cssom-pad-setter.html
+ - cssom-prefix-suffix-setter-invalid.html
+ - cssom-prefix-suffix-setter.html
+ - cssom-range-setter-invalid.html
+ - cssom-range-setter.html
+ - cssom-symbols-setter-invalid.html
+ - cssom-symbols-setter.html
+ - cssom-system-setter-1.html
+ - cssom-system-setter-2.html
+ - cssom-system-setter-invalid.html
diff --git a/testing/web-platform/tests/css/css-display/accessibility/display-contents-role-and-label.html b/testing/web-platform/tests/css/css-display/accessibility/display-contents-role-and-label.html
index 4a06d0ff5b..6b5453e9f6 100644
--- a/testing/web-platform/tests/css/css-display/accessibility/display-contents-role-and-label.html
+++ b/testing/web-platform/tests/css/css-display/accessibility/display-contents-role-and-label.html
@@ -75,7 +75,7 @@
</thead>
<tbody>
<tr style="display: contents;">
- <td data-expectedrole="cell" data-expectedlabel="x" data-testname="td as child of tr with display: contents, within table with display: flex, has cell role" class="ex-role-and-label">x</td>
+ <td data-expectedrole="cell" data-testname="td as child of tr with display: contents, within table with display: flex, has cell role" class="ex-role">x</td>
<td>x</td>
</tr>
</tbody>
@@ -90,7 +90,7 @@
</thead>
<tbody>
<tr style="display: contents;">
- <td data-expectedrole="cell" data-expectedlabel="x" data-testname="td as child of tr with display: contents, within table with role=table with display: flex, has cell role" class="ex-role-and-label">x</td>
+ <td data-expectedrole="cell" data-testname="td as child of tr with display: contents, within table with role=table with display: flex, has cell role" class="ex-role">x</td>
<td>x</td>
</tr>
</tbody>
@@ -105,7 +105,7 @@
</thead>
<tbody>
<tr style="display: contents;">
- <td data-expectedrole="gridcell" data-expectedlabel="x" data-testname="td (no explicit role) as child of tr with display: contents, within table with role=grid with display: flex, has gridcell role" class="ex-role-and-label">x</td>
+ <td data-expectedrole="gridcell" data-testname="td (no explicit role) as child of tr with display: contents, within table with role=grid with display: flex, has gridcell role" class="ex-role">x</td>
<td>x</td>
</tr>
</tbody>
@@ -116,7 +116,7 @@
<h2>x</h2>
<ul style="display: contents" data-expectedrole="list" data-testname="ul with display: contents, as child of div with display: grid, has list role" class="ex-role">
<li>x</li>
- <li data-expectedrole="listitem" data-expectedlabel="x" data-testname="listitem within ul with display: contents, as child of div with display: grid, has listitem role" class="ex-role-and-label">x</li>
+ <li data-expectedrole="listitem" data-testname="listitem within ul with display: contents, as child of div with display: grid, has listitem role" class="ex-role">x</li>
</ul>
</div>
@@ -131,8 +131,8 @@
<!-- Landmarks and regions -->
<header style="display: contents;" data-expectedrole="banner" data-testname="header with display: contents has banner role" class="ex-role">x</header>
- <nav style="display: contents;" aria-label="label" data-expectedrole="navigation" data-testname="nav with display: contents and aria-label has navigation role" class="ex-role-and-label">x</nav>
- <aside style="display: contents;" aria-label="label" data-expectedrole="complementary" data-testname="aside with display: contents and aria-label has complementary role" class="ex-role-and-label">x</aside>
+ <nav style="display: contents;" aria-label="label" data-expectedrole="navigation" data-expectedlabel="label" data-testname="nav with display: contents and aria-label has navigation role" class="ex-role-and-label">x</nav>
+ <aside style="display: contents;" aria-label="label" data-expectedrole="complementary" data-expectedlabel="label" data-testname="aside with display: contents and aria-label has complementary role" class="ex-role-and-label">x</aside>
<main style="display: contents;" data-expectedrole="main" data-testname="main with display: contents has main role" class="ex-role">x</main>
<footer style="display: contents;" data-expectedrole="contentinfo" data-testname="footer with display: contents has contentinfo role" class="ex-role">x</footer>
<form aria-label="label" style="display: contents;" data-expectedrole="form" data-expectedlabel="label" data-testname="form with display: contents has form role" class="ex-role-and-label">x</form>
@@ -140,12 +140,12 @@
<section aria-label="label" style="display: contents;" data-expectedrole="region" data-expectedlabel="label" data-testname="section with aria-label and display: contents has region role" class="ex-role-and-label"></section>
<div role="banner" style="display: contents;" data-expectedrole="banner" data-testname="div with role banner and display: contents has banner role" class="ex-role">x</div>
- <div role="navigation" aria-label="label" style="display: contents;" data-expectedrole="navigation" data-testname="div with role navigation, aria-label and display: contents has navigation role" class="ex-role-and-label">x</div>
- <div role="complementary" aria-label="label" style="display: contents;" data-expectedrole="complementary" data-testname="div with role complementary, aria-label and display: contents has complementary role" class="ex-role-and-label">x</div>
+ <div role="navigation" aria-label="label" style="display: contents;" data-expectedrole="navigation" data-expectedlabel="label" data-testname="div with role navigation, aria-label and display: contents has navigation role" class="ex-role-and-label">x</div>
+ <div role="complementary" aria-label="label" style="display: contents;" data-expectedrole="complementary" data-expectedlabel="label" data-testname="div with role complementary, aria-label and display: contents has complementary role" class="ex-role-and-label">x</div>
<div role="main" style="display: contents;" data-expectedrole="main" data-testname="div with role main and display: contents has main role" class="ex-role">x</div>
<div role="contentinfo" style="display: contents;" data-expectedrole="contentinfo" data-testname="div with role contentinfo and display: contents has contentinfo role" class="ex-role">x</div>
<div role="form" aria-label="label" style="display: contents;" data-expectedrole="form" data-expectedlabel="label" data-testname="div with role form, aria-label and display: contents has form role" class="ex-role-and-label">x</div>
- <div role="search" aria-label="label" style="display: contents;" data-expectedrole="search" data-testname="div with role search and display: contents has search role" class="ex-role-and-label">x</div>
+ <div role="search" aria-label="label" style="display: contents;" data-expectedrole="search" data-expectedlabel="label" data-testname="div with role search and display: contents has search role" class="ex-role-and-label">x</div>
<div role="region" aria-label="label" style="display: contents;" data-expectedrole="region" data-expectedlabel="label" data-testname="div with role region, aria-label and display: contents has region role" class="ex-role-and-label">x</div>
<!-- Links -->
@@ -156,33 +156,33 @@
<!-- Lists -->
<ul role="list" style="display: contents;" data-expectedrole="list" data-testname="ul with role list and display: contents (child li has display: contents) has list role" class="ex-role">
- <li style="display: contents;" data-expectedrole="listitem" data-expectedlabel="x" data-testname="li as child of ul with role list, both with display: contents, has listitem role" class="ex-role-and-label">x</li>
+ <li style="display: contents;" data-expectedrole="listitem" data-testname="li as child of ul with role list, both with display: contents, has listitem role" class="ex-role">x</li>
<li>y</li>
</ul>
<ul role="list" style="display: contents;" data-expectedrole="list" data-testname="ul with role list and display: contents has list role" class="ex-role">
<li>x</li>
- <li data-expectedrole="listitem" data-expectedlabel="y" data-testname="li, as child of ul with role list and display: contents, has listitem role" class="ex-role-and-label">y</li>
+ <li data-expectedrole="listitem" data-testname="li, as child of ul with role list and display: contents, has listitem role" class="ex-role">y</li>
</ul>
<ul role="list">
<li>x</li>
- <li style="display: contents;" data-expectedrole="listitem" data-expectedlabel="y" data-testname="li with display: contents, as child of ul with role list, has listitem role" class="ex-role-and-label">y</li>
+ <li style="display: contents;" data-expectedrole="listitem" data-testname="li with display: contents, as child of ul with role list, has listitem role" class="ex-role">y</li>
</ul>
<ol role="list" style="display: contents;" data-expectedrole="list" data-testname="ol with role list and display: contents has list role (child li has display: contents)" class="ex-role">
- <li style="display: contents;" data-expectedrole="listitem" data-expectedlabel="x" data-testname="li as child of ol with role list, both with display: contents, has listitem role" class="ex-role-and-label">x</li>
+ <li style="display: contents;" data-expectedrole="listitem" data-testname="li as child of ol with role list, both with display: contents, has listitem role" class="ex-role">x</li>
<li>y</li>
</ol>
<ol role="list" style="display: contents;" data-expectedrole="list" data-testname="ol with role list and display: contents has list role" class="ex-role">
<li>x</li>
- <li data-expectedrole="listitem" data-expectedlabel="y" data-testname="li, as child of ol with role list and display: contents, has listitem role" class="ex-role-and-label">y</li>
+ <li data-expectedrole="listitem" data-testname="li, as child of ol with role list and display: contents, has listitem role" class="ex-role">y</li>
</ol>
<ol role="list">
<li>x</li>
- <li style="display: contents;" data-expectedrole="listitem" data-expectedlabel="y" data-testname="li with display: contents, as child of ol with role list, has listitem role" class="ex-role-and-label">y</li>
+ <li style="display: contents;" data-expectedrole="listitem" data-testname="li with display: contents, as child of ol with role list, has listitem role" class="ex-role">y</li>
</ol>
<div role="list" style="display: contents;" data-expectedrole="list" data-testname="div with list role and display: contents has list role" class="ex-role">
@@ -212,7 +212,7 @@
</thead>
<tbody>
<tr>
- <td style="display: contents;" data-expectedrole="cell" data-expectedlabel="x" data-testname="td within tr in table with role table, all with display: contents, has cell role" class="ex-role-and-label">x</td>
+ <td style="display: contents;" data-expectedrole="cell" data-testname="td within tr in table with role table, all with display: contents, has cell role" class="ex-role">x</td>
<td>x</td>
</tr>
</tbody>
@@ -242,7 +242,7 @@
</thead>
<tbody>
<tr>
- <td style="display: contents;" data-expectedrole="gridcell" data-expectedlabel="x" data-testname="td within table with role grid, both with display: contents, has gridcell role" class="ex-role-and-label">x</td>
+ <td style="display: contents;" data-expectedrole="gridcell" data-testname="td within table with role grid, both with display: contents, has gridcell role" class="ex-role">x</td>
<td>x</td>
</tr>
</tbody>
@@ -282,10 +282,10 @@
<div role="treegrid" style="display: contents;" data-expectedrole="treegrid" data-testname="div with role treegrid and display: contents has treegrid role" class="ex-role"></div>
<ul role="tree" style="display: contents;" data-expectedrole="tree" data-testname="ul with role tree and display: contents has tree role" class="ex-role">
- <li role="treeitem" aria-expanded="true" style="display: contents;" data-expectedrole="treeitem" data-expectedlabel="x" data-testname="li with role treeitem and display: contents, within ul with role tree and display: contents, has treeitem role" class="ex-role-and-label">
+ <li role="treeitem" aria-expanded="true" style="display: contents;" data-expectedrole="treeitem" data-testname="li with role treeitem and display: contents, within ul with role tree and display: contents, has treeitem role" class="ex-role">
<span>x</span>
<ul role="group">
- <li role="treeitem" aria-expanded="false" style="display: contents;" data-expectedrole="treeitem" data-expectedlabel="x" data-testname="li with role treeitem and display: contents, within ul with role=group (within ul with role tree and display: contents), has treeitem role" class="ex-role-and-label">
+ <li role="treeitem" aria-expanded="false" style="display: contents;" data-expectedrole="treeitem" data-testname="li with role treeitem and display: contents, within ul with role=group (within ul with role tree and display: contents), has treeitem role" class="ex-role">
<span>x</span>
</li>
</ul>
diff --git a/testing/web-platform/tests/css/css-easing/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-easing/WEB_FEATURES.yml
new file mode 100644
index 0000000000..c17b6206c5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-easing/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: linear-easing
+ files:
+ - linear-timing-*
diff --git a/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.html b/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.html
new file mode 100644
index 0000000000..ef157e2e28
--- /dev/null
+++ b/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<meta name="assert" content="This test checks the output of linear timing functions" />
+<title>Tests for the output of linear timing functions</title>
+<link rel="help" href="https://drafts.csswg.org/css-easing-2/#the-linear-easing-function">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/util.js"></script>
+<script src="testcommon.js"></script>
+<body>
+<div id="log"></div>
+<script>
+'use strict';
+
+function assert_style_left_at(animation, time, expected_y) {
+ animation.currentTime = time;
+ assert_approx_equals(pxToNum(getComputedStyle(animation.effect.target).left),
+ expected_y * 100,
+ 0.01,
+ 'The left of the animation should be approximately ' +
+ expected_y * 100 + ' at ' + time + 'ms');
+}
+
+function assert_animations_equal_at(actual_animation, expected_animation, time) {
+ actual_animation.currentTime = time;
+ var actual_left = pxToNum(getComputedStyle(actual_animation.effect.target).left);
+ expected_animation.currentTime = time;
+ var expected_left = pxToNum(getComputedStyle(expected_animation.effect.target).left);
+ assert_approx_equals(actual_left,
+ expected_left,
+ 0.01,
+ 'The left of the animation should be approximately ' +
+ expected_left + ' at ' + time + 'ms');
+}
+
+function create_animated_div(t, easing_function) {
+ var target = createDiv(t);
+ target.style.position = 'absolute';
+ return target.animate(
+ [ { left: '0px' },
+ { left: '100px' } ],
+ { duration: 1000,
+ fill: 'forwards',
+ easing: easing_function });
+}
+
+test(function(t) {
+ var anim = create_animated_div(t, 'linear(0, 1.5, 1)');
+
+ assert_style_left_at(anim, 0, 0.0);
+ assert_style_left_at(anim, 250, 0.75);
+ assert_style_left_at(anim, 500, 1.5);
+ assert_style_left_at(anim, 750, 1.25);
+ assert_style_left_at(anim, 1000, 1.00);
+}, 'linear function easing with output greater than 1');
+
+test(function(t) {
+ var anim = create_animated_div(t, 'linear(1, -0.5, 0)');
+
+ assert_style_left_at(anim, 0, 1.0);
+ assert_style_left_at(anim, 250, 0.25);
+ assert_style_left_at(anim, 500, -0.5);
+ assert_style_left_at(anim, 750, -0.25);
+ assert_style_left_at(anim, 1000, 0.00);
+}, 'linear function easing with output less than 1');
+
+test(function(t) {
+ var anim = create_animated_div(t, 'linear(0.2 0% 20%, 0.4 20% 40%, 0.6 40% 60%, 0.8 60% 80%, 1.0 80% 100%)');
+ var equiv = create_animated_div(t, 'steps(5, jump-start)');
+
+ assert_animations_equal_at(anim, equiv, 0);
+ assert_animations_equal_at(anim, equiv, 200);
+ assert_animations_equal_at(anim, equiv, 400);
+ assert_animations_equal_at(anim, equiv, 600);
+ assert_animations_equal_at(anim, equiv, 800);
+ assert_animations_equal_at(anim, equiv, 1000);
+}, 'linear function easing, steps equivalent');
+
+test(function(t) {
+ var anim = create_animated_div(t, 'linear(0, 0.1 -10%, 1)');
+ var equiv = create_animated_div(t, 'linear(0, 0.1 0%, 1)');
+
+ assert_animations_equal_at(anim, equiv, 0);
+ assert_animations_equal_at(anim, equiv, 100);
+ assert_animations_equal_at(anim, equiv, 550);
+ assert_animations_equal_at(anim, equiv, 1000);
+}, 'linear function easing, input value being unspecified in the first entry implies zero');
+
+test(function(t) {
+ var anim = create_animated_div(t, 'linear(0, 0.9 110%, 1)');
+ var equiv = create_animated_div(t, 'linear(0, 0.9 110%, 1 110%)');
+
+ assert_animations_equal_at(anim, equiv, 0);
+ assert_animations_equal_at(anim, equiv, 450);
+ assert_animations_equal_at(anim, equiv, 900);
+ assert_animations_equal_at(anim, equiv, 950);
+ assert_animations_equal_at(anim, equiv, 1000);
+}, 'linear function easing, input value being unspecified in the last entry implies max input value');
+</script>
+</body>
diff --git a/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.tentative.html b/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.tentative.html
deleted file mode 100644
index 82ea469052..0000000000
--- a/testing/web-platform/tests/css/css-easing/linear-timing-functions-output.tentative.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE html>
-<meta charset=utf-8>
-<meta name="assert" content="This test checks the output of linear timing functions" />
-<title>Tests for the output of linear timing functions</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/pull/6533">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="support/util.js"></script>
-<script src="testcommon.js"></script>
-<body>
-<div id="log"></div>
-<script>
-'use strict';
-
-function assert_style_left_at(animation, time, expected_y) {
- animation.currentTime = time;
- assert_approx_equals(pxToNum(getComputedStyle(animation.effect.target).left),
- expected_y * 100,
- 0.01,
- 'The left of the animation should be approximately ' +
- expected_y * 100 + ' at ' + time + 'ms');
-}
-
-function assert_animations_equal_at(actual_animation, expected_animation, time) {
- actual_animation.currentTime = time;
- var actual_left = pxToNum(getComputedStyle(actual_animation.effect.target).left);
- expected_animation.currentTime = time;
- var expected_left = pxToNum(getComputedStyle(expected_animation.effect.target).left);
- assert_approx_equals(actual_left,
- expected_left,
- 0.01,
- 'The left of the animation should be approximately ' +
- expected_left + ' at ' + time + 'ms');
-}
-
-function create_animated_div(t, easing_function) {
- var target = createDiv(t);
- target.style.position = 'absolute';
- return target.animate(
- [ { left: '0px' },
- { left: '100px' } ],
- { duration: 1000,
- fill: 'forwards',
- easing: easing_function });
-}
-
-test(function(t) {
- var anim = create_animated_div(t, 'linear(0, 1.5, 1)');
-
- assert_style_left_at(anim, 0, 0.0);
- assert_style_left_at(anim, 250, 0.75);
- assert_style_left_at(anim, 500, 1.5);
- assert_style_left_at(anim, 750, 1.25);
- assert_style_left_at(anim, 1000, 1.00);
-}, 'linear function easing with output greater than 1');
-
-test(function(t) {
- var anim = create_animated_div(t, 'linear(1, -0.5, 0)');
-
- assert_style_left_at(anim, 0, 1.0);
- assert_style_left_at(anim, 250, 0.25);
- assert_style_left_at(anim, 500, -0.5);
- assert_style_left_at(anim, 750, -0.25);
- assert_style_left_at(anim, 1000, 0.00);
-}, 'linear function easing with output less than 1');
-
-test(function(t) {
- var anim = create_animated_div(t, 'linear(0.2 0% 20%, 0.4 20% 40%, 0.6 40% 60%, 0.8 60% 80%, 1.0 80% 100%)');
- var equiv = create_animated_div(t, 'steps(5, jump-start)');
-
- assert_animations_equal_at(anim, equiv, 0);
- assert_animations_equal_at(anim, equiv, 200);
- assert_animations_equal_at(anim, equiv, 400);
- assert_animations_equal_at(anim, equiv, 600);
- assert_animations_equal_at(anim, equiv, 800);
- assert_animations_equal_at(anim, equiv, 1000);
-}, 'linear function easing, steps equivalent');
-
-test(function(t) {
- var anim = create_animated_div(t, 'linear(0, 0.1 -10%, 1)');
- var equiv = create_animated_div(t, 'linear(0, 0.1 0%, 1)');
-
- assert_animations_equal_at(anim, equiv, 0);
- assert_animations_equal_at(anim, equiv, 100);
- assert_animations_equal_at(anim, equiv, 550);
- assert_animations_equal_at(anim, equiv, 1000);
-}, 'linear function easing, input value being unspecified in the first entry implies zero');
-
-test(function(t) {
- var anim = create_animated_div(t, 'linear(0, 0.9 110%, 1)');
- var equiv = create_animated_div(t, 'linear(0, 0.9 110%, 1 110%)');
-
- assert_animations_equal_at(anim, equiv, 0);
- assert_animations_equal_at(anim, equiv, 450);
- assert_animations_equal_at(anim, equiv, 900);
- assert_animations_equal_at(anim, equiv, 950);
- assert_animations_equal_at(anim, equiv, 1000);
-}, 'linear function easing, input value being unspecified in the last entry implies max input value');
-</script>
-</body>
diff --git a/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.html b/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.html
new file mode 100644
index 0000000000..2d1baea4eb
--- /dev/null
+++ b/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Easing: getComputedStyle().animationTimingFunction with linear(...)</title>
+<link rel="help" href="https://drafts.csswg.org/css-easing-2/#the-linear-easing-function">
+<meta name="assert" content="animation-timing-function: linear(...) parsing tests">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_valid_value("animation-timing-function", "linear(0 0%, 1 100%)");
+test_valid_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)", "linear(0 0%, 0 50%, 1 50%, 1 100%)");
+test_valid_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)", "linear(0 0%, 0.5 25%, 0.5 75%, 1 100%, 1 100%)");
+test_valid_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 1.004, 0.998, 1 100% 100%)", "linear(0 0%, 1.3 11.1111%, 1 22.2222%, 0.92 33.3333%, 1 44.4444%, 0.99 55.5556%, 1 66.6667%, 1.004 77.7778%, 0.998 88.8889%, 1 100%, 1 100%)");
+
+test_invalid_value("animation-timing-function", "linear()");
+test_invalid_value("animation-timing-function", "linear(0)");
+test_invalid_value("animation-timing-function", "linear(100%)");
+test_invalid_value("animation-timing-function", "linear(0% 1 50%)");
+test_invalid_value("animation-timing-function", "linear(0 0% 100%)");
+test_invalid_value("animation-timing-function", "linear(0% 100% 0)");
+test_invalid_value("animation-timing-function", "linear(0 calc(50px - 50%), 0 calc(50em + 50em))");
+test_invalid_value("animation-timing-function", "linear(0 calc(50%, 50%), 0 calc(50% + 50%))");
+
+test_computed_value("animation-timing-function", "linear(0, 1)", "linear(0 0%, 1 100%)");
+test_computed_value("animation-timing-function", "linear(0 calc(0%), 0 calc(100%))", "linear(0 0%, 0 100%)");
+test_computed_value("animation-timing-function", "linear(0 calc(50% - 50%), 0 calc(50% + 50%))", "linear(0 0%, 0 100%)");
+test_computed_value("animation-timing-function", "linear(0 calc(min(50%, 60%)), 0 100%)", "linear(0 50%, 0 100%)");
+test_computed_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)", "linear(0 0%, 0 50%, 1 50%, 1 100%)");
+test_computed_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)", "linear(0 0%, 0.5 25%, 0.5 75%, 1 100%, 1 100%)");
+test_computed_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 0.998, 1 100% 100%)", "linear(0 0%, 1.3 12.5%, 1 25%, 0.92 37.5%, 1 50%, 0.99 62.5%, 1 75%, 0.998 87.5%, 1 100%, 1 100%)");
+
+test_computed_value("animation-timing-function", "linear(0, 0 40%, 1, 0.5, 1)", "linear(0 0%, 0 40%, 1 60%, 0.5 80%, 1 100%)");
+
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.tentative.html b/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.tentative.html
deleted file mode 100644
index 99b680d0bd..0000000000
--- a/testing/web-platform/tests/css/css-easing/linear-timing-functions-syntax.tentative.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Easing: getComputedStyle().animationTimingFunction with linear(...)</title>
-<link rel="help" href="https://github.com/w3c/csswg-drafts/pull/6533">
-<meta name="assert" content="animation-timing-function: linear(...) parsing tests">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<div id="target"></div>
-<script>
-test_valid_value("animation-timing-function", "linear(0 0%, 1 100%)");
-test_valid_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)", "linear(0 0%, 0 50%, 1 50%, 1 100%)");
-test_valid_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)", "linear(0 0%, 0.5 25%, 0.5 75%, 1 100%, 1 100%)");
-test_valid_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 1.004, 0.998, 1 100% 100%)", "linear(0 0%, 1.3 11.1111%, 1 22.2222%, 0.92 33.3333%, 1 44.4444%, 0.99 55.5556%, 1 66.6667%, 1.004 77.7778%, 0.998 88.8889%, 1 100%, 1 100%)");
-
-test_invalid_value("animation-timing-function", "linear()");
-test_invalid_value("animation-timing-function", "linear(0)");
-test_invalid_value("animation-timing-function", "linear(100%)");
-test_invalid_value("animation-timing-function", "linear(0% 1 50%)");
-test_invalid_value("animation-timing-function", "linear(0 0% 100%)");
-test_invalid_value("animation-timing-function", "linear(0% 100% 0)");
-test_invalid_value("animation-timing-function", "linear(0 calc(50px - 50%), 0 calc(50em + 50em))");
-test_invalid_value("animation-timing-function", "linear(0 calc(50%, 50%), 0 calc(50% + 50%))");
-
-test_computed_value("animation-timing-function", "linear(0, 1)", "linear(0 0%, 1 100%)");
-test_computed_value("animation-timing-function", "linear(0 calc(0%), 0 calc(100%))", "linear(0 0%, 0 100%)");
-test_computed_value("animation-timing-function", "linear(0 calc(50% - 50%), 0 calc(50% + 50%))", "linear(0 0%, 0 100%)");
-test_computed_value("animation-timing-function", "linear(0 calc(min(50%, 60%)), 0 100%)", "linear(0 50%, 0 100%)");
-test_computed_value("animation-timing-function", "linear(0 0% 50%, 1 50% 100%)", "linear(0 0%, 0 50%, 1 50%, 1 100%)");
-test_computed_value("animation-timing-function", "linear(0, 0.5 25% 75%, 1 100% 100%)", "linear(0 0%, 0.5 25%, 0.5 75%, 1 100%, 1 100%)");
-test_computed_value("animation-timing-function", "linear(0, 1.3, 1, 0.92, 1, 0.99, 1, 0.998, 1 100% 100%)", "linear(0 0%, 1.3 12.5%, 1 25%, 0.92 37.5%, 1 50%, 0.99 62.5%, 1 75%, 0.998 87.5%, 1 100%, 1 100%)");
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-flexbox/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-flexbox/WEB_FEATURES.yml
new file mode 100644
index 0000000000..69d0875451
--- /dev/null
+++ b/testing/web-platform/tests/css/css-flexbox/WEB_FEATURES.yml
@@ -0,0 +1,7 @@
+features:
+- name: flexbox
+ files: "**"
+# TODO: map *gap* to flexbox-gap. This is currently not possible without the
+# tests being associated with both flexbox and flexbox-gap. All but one of the
+# *gap* tests are passing in all browsers, so lumping them in with flexbox is
+# relatively harmless.
diff --git a/testing/web-platform/tests/css/css-flexbox/intrinsic-size/col-wrap-020.html b/testing/web-platform/tests/css/css-flexbox/intrinsic-size/col-wrap-020.html
new file mode 100644
index 0000000000..ffbfa711c3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-flexbox/intrinsic-size/col-wrap-020.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<link rel="author" title="David Grogan" href="mailto:dgrogan@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox/#intrinsic-sizes">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert"
+ content="column-wrap container's max-content width includes gap" />
+
+<style>
+ #reference-overlapped-red {
+ position: absolute;
+ background-color: red;
+ width: 100px;
+ height: 100px;
+ z-index: -1;
+ }
+
+ .item {
+ /* Remove min-height so we don't have to think about it. */
+ min-height: 0px;
+ width: 10px;
+ flex: 0 0 100px;
+ }
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.
+</p>
+
+<div id=reference-overlapped-red></div>
+
+<div
+ style="display: flex; flex-flow: column wrap; height: 100px; width: max-content; column-gap: 80px; background: green;">
+ <div class="item"></div>
+ <div class="item"></div>
+</div>
diff --git a/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip-ref.html b/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip-ref.html
new file mode 100644
index 0000000000..2503af6df3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip-ref.html
@@ -0,0 +1,14 @@
+<!doctype html>
+<meta charset="utf-8">
+<style>
+ .flex {
+ display: flex;
+ width: 100px;
+ border: 1px solid;
+ }
+</style>
+<div class="flex">
+ <div>
+ <div style="background: green; width: 150px; height: 50px;"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip.html b/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip.html
new file mode 100644
index 0000000000..ec3bc5f593
--- /dev/null
+++ b/testing/web-platform/tests/css/css-flexbox/min-size-auto-overflow-clip.html
@@ -0,0 +1,18 @@
+<!doctype html>
+<meta charset="utf-8">
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox/#min-size-auto">
+<link rel="match" href="min-size-auto-overflow-clip-ref.html">
+<title>overflow: visible and clip behave the same for min-size purposes</title>
+<style>
+ .flex {
+ display: flex;
+ width: 100px;
+ border: 1px solid;
+ }
+</style>
+<div class="flex">
+ <div style="overflow: clip">
+ <div style="background: green; width: 150px; height: 50px;"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-fonts/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-fonts/WEB_FEATURES.yml
index 5e69c923ab..6739fa2d06 100644
--- a/testing/web-platform/tests/css/css-fonts/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/css-fonts/WEB_FEATURES.yml
@@ -6,7 +6,19 @@ features:
- palette-values-rule-*
- name: font-synthesis
files:
- - font-synthesis-*
+ - font-synthesis-0*.html
+- name: font-synthesis-position
+ files:
+ - font-synthesis-position*
+- name: font-synthesis-small-caps
+ files:
+ - font-synthesis-small-caps*
+- name: font-synthesis-style
+ files:
+ - font-synthesis-style*
+- name: font-synthesis-weight
+ files:
+ - font-synthesis-weight*
- name: font-variant-alternates
files:
- alternates-order.html
diff --git a/testing/web-platform/tests/css/css-fonts/font-size-adjust-reload.html b/testing/web-platform/tests/css/css-fonts/font-size-adjust-reload.html
index 37d79a68bd..68ccba4398 100644
--- a/testing/web-platform/tests/css/css-fonts/font-size-adjust-reload.html
+++ b/testing/web-platform/tests/css/css-fonts/font-size-adjust-reload.html
@@ -16,8 +16,7 @@ body {
</body>
<script>
const iframe = document.getElementById('iframe');
- // Forcing reload
- iframe.src += '';
+ iframe.contentWindow.location.reload();
iframe.contentWindow.onload = function(){
document.documentElement.classList.remove("reftest-wait");
};
diff --git a/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font-notref.html b/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font-notref.html
new file mode 100644
index 0000000000..df9b829a41
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font-notref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Vitor Roriz" href="https://github.com/vitorroriz">
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#char-handling-issues">
+<style>
+.target {
+ font-family: Times;
+ font-size: 60px;
+}
+</style>
+</head>
+<body>
+"If a given character is a Private-Use Area Unicode codepoint, user agents must only match font families named in the font-family list that are not generic families. If none of the families named in the font-family list contain a glyph for that codepoint, user agents must display some form of missing glyph symbol for that character rather than attempting installed font fallback for that codepoint." - <a href="https://drafts.csswg.org/css-fonts-4/#char-handling-issues">css-fonts-4</a>
+<p class="target">&#xE0AD;&#xE0AE;&#xE0AD;&#xE0AF;&#xE0B0;&#xE0B1;&#xE0C0;&#xE0C1;&#xE0D3;&#xE0D4;</p>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font.html b/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font.html
new file mode 100644
index 0000000000..1b03c98e40
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/matching/font-unicode-PUA-primary-font.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Vitor Roriz" href="https://github.com/vitorroriz">
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#char-handling-issues">
+<link rel="mismatch" href="./font-unicode-PUA-primary-font-notref.html">
+<style>
+.target {
+ font-family: Arial;
+ font-size: 60px;
+}
+</style>
+</head>
+<body>
+"If a given character is a Private-Use Area Unicode codepoint, user agents must only match font families named in the font-family list that are not generic families. If none of the families named in the font-family list contain a glyph for that codepoint, user agents must display some form of missing glyph symbol for that character rather than attempting installed font fallback for that codepoint." - <a href="https://drafts.csswg.org/css-fonts-4/#char-handling-issues">css-fonts-4</a>
+<p class="target">&#xE0AD;&#xE0AE;&#xE0AD;&#xE0AF;&#xE0B0;&#xE0B1;&#xE0C0;&#xE0C1;&#xE0D3;&#xE0D4;</p>
+</html>
diff --git a/testing/web-platform/tests/css/css-fonts/parsing/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-fonts/parsing/WEB_FEATURES.yml
index 6a24d269b4..a3bc09cb1f 100644
--- a/testing/web-platform/tests/css/css-fonts/parsing/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/css-fonts/parsing/WEB_FEATURES.yml
@@ -8,7 +8,21 @@ features:
- font-palette-values-*
- name: font-synthesis
files:
- - font-synthesis-*
+ - font-synthesis-computed.html
+ - font-synthesis-invalid.html
+ - font-synthesis-valid.html
+- name: font-synthesis-position
+ files:
+ - font-synthesis-position*
+- name: font-synthesis-small-caps
+ files:
+ - font-synthesis-small-caps*
+- name: font-synthesis-style
+ files:
+ - font-synthesis-style*
+- name: font-synthesis-weight
+ files:
+ - font-synthesis-weight*
- name: font-variant-alternates
files:
- font-variant-alternates-*
diff --git a/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-invalid.html b/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-invalid.html
index 2056055f34..b93a48fb37 100644
--- a/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-invalid.html
+++ b/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-invalid.html
@@ -115,13 +115,33 @@
@font-palette-values --A {
override-colors: 0 canvas;
}
+
+/* 19 */
+@font-palette-values --A {
+ override-colors: 0 currentcolor;
+}
+
+/* 20 */
+@font-palette-values --A {
+ override-colors: 0 light-dark(white, black);
+}
+
+/* 21 */
+@font-palette-values --A {
+ override-colors: 0 color-mix(in lch, red, canvas);
+}
+
+/* 22 */
+@font-palette-values --A {
+ override-colors: 0 light-dark(white, currentcolor);
+}
</style>
</head>
<body>
<script>
let rules = document.getElementById("style").sheet.cssRules;
test(function() {
- assert_equals(rules.length, 19);
+ assert_equals(rules.length, 23);
});
test(function() {
@@ -283,6 +303,34 @@ test(function() {
assert_equals(rule.basePalette, "");
assert_equals(rule.overrideColors, "");
});
+
+test(function() {
+ let text = rules[19].cssText;
+ let rule = rules[19];
+ assert_equals(text.indexOf("override-colors"), -1);
+ assert_equals(rule.overrideColors, "");
+});
+
+test(function() {
+ let text = rules[20].cssText;
+ let rule = rules[20];
+ assert_equals(text.indexOf("override-colors"), -1);
+ assert_equals(rule.overrideColors, "");
+});
+
+test(function() {
+ let text = rules[21].cssText;
+ let rule = rules[21];
+ assert_equals(text.indexOf("override-colors"), -1);
+ assert_equals(rule.overrideColors, "");
+});
+
+test(function() {
+ let text = rules[22].cssText;
+ let rule = rules[22];
+ assert_equals(text.indexOf("override-colors"), -1);
+ assert_equals(rule.overrideColors, "");
+});
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-valid.html b/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-valid.html
index 3c0c0626f5..99fceff234 100644
--- a/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-valid.html
+++ b/testing/web-platform/tests/css/css-fonts/parsing/font-palette-values-valid.html
@@ -103,6 +103,11 @@
@font-palette-values --P {
font-family: foo, bar, baz;
}
+
+/* 17 */
+@font-palette-values --Q {
+ override-colors: 0 color-mix(in lch, red, blue);
+}
</style>
</head>
<body>
@@ -385,6 +390,14 @@ test(function() {
assert_equals(rule.basePalette, "");
assert_equals(rule.overrideColors, "");
});
+
+test(function() {
+ let rule = rules[17];
+ assert_equals(rule.name, "--Q");
+ assert_equals(rule.fontFamily, "");
+ assert_equals(rule.basePalette, "");
+ assert_equals(rule.overrideColors, "0 color-mix(in lch, red, blue)");
+});
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/MPLUS1-Regular_without-cmap14-subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/MPLUS1-Regular_without-cmap14-subset.ttf
new file mode 100644
index 0000000000..b77096690d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/MPLUS1-Regular_without-cmap14-subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/NotoColorEmoji-Regular_subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoColorEmoji-Regular_subset.ttf
new file mode 100644
index 0000000000..24ab79fd05
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoColorEmoji-Regular_subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_subset.ttf
new file mode 100644
index 0000000000..0b054c7c8d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_without-cmap14-subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_without-cmap14-subset.ttf
new file mode 100644
index 0000000000..3d00ef81de
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoEmoji-Regular_without-cmap14-subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansJP-Regular_with-cmap14-subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansJP-Regular_with-cmap14-subset.ttf
new file mode 100644
index 0000000000..edcb98e374
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansJP-Regular_with-cmap14-subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansMath-Regular_without-cmap14-subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansMath-Regular_without-cmap14-subset.ttf
new file mode 100644
index 0000000000..5436d06dae
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/NotoSansMath-Regular_without-cmap14-subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/resources/vs/STIXTwoMath-Regular_with-cmap14-subset.ttf b/testing/web-platform/tests/css/css-fonts/resources/vs/STIXTwoMath-Regular_with-cmap14-subset.ttf
new file mode 100644
index 0000000000..c9720cf9ce
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/resources/vs/STIXTwoMath-Regular_with-cmap14-subset.ttf
Binary files differ
diff --git a/testing/web-platform/tests/css/css-fonts/support/css/variation-sequences.css b/testing/web-platform/tests/css/css-fonts/support/css/variation-sequences.css
new file mode 100644
index 0000000000..5977f17b67
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/support/css/variation-sequences.css
@@ -0,0 +1,38 @@
+@font-face {
+ font-family: "MonoEmojiFont";
+ src: url(../../resources/vs/NotoEmoji-Regular_subset.ttf);
+}
+
+@font-face {
+ font-family: "ColorEmojiFont";
+ src: url(../../resources/vs/NotoColorEmoji-Regular_subset.ttf);
+}
+
+@font-face {
+ font-family: "EmojiFontWithBaseCharOnly";
+ src: url(../../resources/vs/NotoEmoji-Regular_without-cmap14-subset.ttf);
+}
+
+@font-face {
+ font-family: "CJKFontWithVS";
+ src: url(../../resources/vs/NotoSansJP-Regular_with-cmap14-subset.ttf);
+}
+
+@font-face {
+ font-family: "CJKFontWithBaseCharOnly";
+ src: url(../../resources/vs/MPLUS1-Regular_without-cmap14-subset.ttf);
+}
+
+@font-face {
+ font-family: "MathFontWithVS";
+ src: url(../../resources/vs/STIXTwoMath-Regular_with-cmap14-subset.ttf);
+}
+
+@font-face {
+ font-family: "MathFontWithBaseCharOnly";
+ src: url(../../resources/vs/NotoSansMath-Regular_without-cmap14-subset.ttf);
+}
+
+body {
+ font-size: 24px;
+} \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-fonts/support/js/variation-sequences.js b/testing/web-platform/tests/css/css-fonts/support/js/variation-sequences.js
new file mode 100644
index 0000000000..84c5a1a9c7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/support/js/variation-sequences.js
@@ -0,0 +1,125 @@
+var baseChars = {
+ "emoji": "\u{1fae8}",
+ "cjk": "\u{8279}",
+ "math": "\u{2205}"
+};
+
+var variationSelectors = {
+ "emoji": ["\u{fe0e}", "\u{fe0f}"],
+ "cjk": ["", "\u{FE00}", "\u{FE01}", "\u{e0100}", "\u{e0101}",
+ "\u{e0102}"
+ ],
+ "math": ["", "\u{FE00}"]
+};
+
+var families = {
+ "emoji": ["ColorEmojiFont", "MonoEmojiFont",
+ "EmojiFontWithBaseCharOnly",
+ "sans-serif"
+ ],
+ "cjk": ["CJKFontWithVS", "CJKFontWithBaseCharOnly",
+ "sans-serif"
+ ],
+ "math": ["MathFontWithVS", "MathFontWithBaseCharOnly",
+ "sans-serif"
+ ]
+};
+
+var variationSequenceFamilies = new Map([
+ ["\u{1fae8}\u{fe0e}", "MonoEmojiFont"],
+ ["\u{1fae8}\u{fe0f}", "ColorEmojiFont"],
+ ["\u{8279}\u{fe00}", "CJKFontWithVS"],
+ ["\u{8279}\u{fe01}", "CJKFontWithVS"],
+ ["\u{8279}\u{e0100}", "CJKFontWithVS"],
+ ["\u{8279}\u{e0101}", "CJKFontWithVS"],
+ ["\u{8279}\u{e0102}", "CJKFontWithVS"],
+ ["\u{2205}\u{FE00}", "MathFontWithVS"]
+]);
+
+var baseCharFamilies = new Map([
+ ["\u{1fae8}", new Set(["MonoEmojiFont", "ColorEmojiFont",
+ "EmojiFontWithBaseCharOnly"
+ ])],
+ ["\u{8279}", new Set(["CJKFontWithVS",
+ "CJKFontWithBaseCharOnly"
+ ])],
+ ["\u{2205}", new Set(["MathFontWithVS",
+ "MathFontWithBaseCharOnly"
+ ])]
+]);
+
+const range = function*(l) {
+ for (let i = 0; i < l; i += 1) yield i;
+}
+const isEmpty = arr =>
+ arr.length === 0;
+
+const permutations =
+ function*(a) {
+ const r = arguments[1] || [];
+ if (isEmpty(a))
+ yield r;
+ for (let i of range(a.length)) {
+ const aa = [...a];
+ const rr = [...r, ...aa.splice(i, 1)];
+ yield* permutations(aa, rr);
+ }
+}
+
+function getMatchedFamilyForVariationSequence(
+ familyList, baseCharacter, variationSelector) {
+ const variationSequence = baseCharacter + variationSelector;
+ // First try to find a match for the whole variation sequence.
+ if (variationSequenceFamilies.has(variationSequence)) {
+ const matchedFamily = variationSequenceFamilies.get(variationSequence);
+ if (familyList.includes(matchedFamily)) {
+ return matchedFamily;
+ }
+ }
+ // If failed, try to match only the base character from the
+ // variation sequence.
+ if (baseCharFamilies.has(baseCharacter)) {
+ const eligibleFamilies = baseCharFamilies.get(baseCharacter);
+ const matchedFamilies =
+ familyList.filter(value => eligibleFamilies.has(value));
+ if (matchedFamilies.length) {
+ return matchedFamilies[0];
+ }
+ }
+ // We should not reach here, we should always match one of the
+ // specified web fonts in the tests.
+ return "";
+}
+
+function generateContent(
+ families, baseChar, variationSelectors, getFontFamilyValue) {
+ var rootElem = document.createElement('div');
+ // We want to test all possible combinations of variation
+ // selectors and font-family list values. For the refs,
+ // we explicitly specify the font that we expect to be
+ // matched from the maps at the beginning of the files.
+ const allFamiliesLists = permutations(families);
+ for (const familyList of allFamiliesLists) {
+ for (const variationSelector of variationSelectors) {
+ const contentSpan = document.createElement("span");
+ contentSpan.textContent = baseChar + variationSelector;
+ contentSpan.style.fontFamily =
+ getFontFamilyValue(familyList, baseChar, variationSelector);
+ rootElem.appendChild(contentSpan);
+ }
+ }
+ document.body.appendChild(rootElem);
+}
+
+function generateVariationSequenceTests(type) {
+ var getFontFamilyValue = (familyList, baseChar, variationSelector) => {
+ return familyList.join(', ');
+ }
+ generateContent(families[type], baseChars[type], variationSelectors[type], getFontFamilyValue);
+}
+
+function generateVariationSequenceRefs(type) {
+ generateContent(
+ families[type], baseChars[type], variationSelectors[type],
+ getMatchedFamilyForVariationSequence);
+}
diff --git a/testing/web-platform/tests/css/css-fonts/variation-sequences-ref.html b/testing/web-platform/tests/css/css-fonts/variation-sequences-ref.html
new file mode 100644
index 0000000000..a44f18bb3e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/variation-sequences-ref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="UTF-8" />
+<title>CSS Test: Cluster Matching Variation Sequences</title>
+<link rel="stylesheet" type="text/css" href="support/css/variation-sequences.css" />
+<script type="text/javascript" src="support/js/variation-sequences.js"></script>
+<body></body>
+<script>
+ generateVariationSequenceRefs("emoji");
+ generateVariationSequenceRefs("cjk");
+ generateVariationSequenceRefs("math");
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-fonts/variation-sequences.html b/testing/web-platform/tests/css/css-fonts/variation-sequences.html
new file mode 100644
index 0000000000..91e46a84d7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-fonts/variation-sequences.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<meta charset="UTF-8" />
+<title>CSS Test: Cluster Matching Variation Sequences</title>
+<link rel="help" href="https://www.w3.org/TR/css-fonts-4/#cluster-matching" />
+<link rel="help" href="https://unicode.org/reports/tr51/" />
+<link rel="help" href="https://unicode.org/reports/tr37/" />
+<link rel="help" href="https://www.unicode.org/Public/UNIDATA/StandardizedVariants.txt" />
+<link rel="help" href="https://www.unicode.org/versions/Unicode15.1.0/ch23.pdf#G19053" />
+<link rel="match" href="variation-sequences-ref.html">
+<meta name="assert" content="Variation sequences should be taken into account during cluster matching.">
+<link rel="stylesheet" type="text/css" href="support/css/variation-sequences.css" />
+<script type="text/javascript" src="support/js/variation-sequences.js"></script>
+<body></body>
+<script>
+ generateVariationSequenceTests("emoji");
+ generateVariationSequenceTests("cjk");
+ generateVariationSequenceTests("math");
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001-ref.html
index fff6cf2138..fff6cf2138 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001.html
index dfefd998c6..387ee9da5e 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-001.html
@@ -5,9 +5,13 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `align-content` in masonry axis</title>
+ <title>CSS Grid Test: Masonry layout with `align-content` in masonry axis (horizontal writing mode)</title>
+ <meta name="assert"
+ content="Test passes if align-content shifts content
+ in the masonry axis of a masonry grid container
+ and the grid container's baseline is also shifted accordingly.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-align-content-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002-ref.html
index 67318b323a..67318b323a 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002.html
index 75b82654fe..be7e7a813e 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-002.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `align-content` in masonry axis</title>
+ <title>CSS Grid Test: Masonry layout with `align-content` in masonry axis (vertical writing mode)</title>
+ <meta name="assert"
+ content="Test passes if align-content shifts content
+ in the masonry axis of a vertical writing-mode masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-align-content-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003-ref.html
index 9780d5f5dc..9da15c0f40 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003-ref.html
@@ -8,31 +8,31 @@
<title>Reference: Masonry layout with `align-content` in grid axis</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 monospace; padding:0; margin:0;
-}
+ html,body {
+ color:black; background-color:white; font:15px/1 monospace; padding:0; margin:0;
+ }
-grid {
- display: inline-grid;
- gap: 1px 2px;
- grid-template-columns: 1ch auto;
- grid-template-rows: repeat(4,auto);
- background: content-box silver;
- border: 1px solid;
- padding: 0 3px 2px 0;
- width: 100px;
- height: 120px;
- align-content: center;
- justify-items: start;
-}
+ grid {
+ display: inline-grid;
+ gap: 1px 2px;
+ grid-template-columns: 1ch auto;
+ grid-template-rows: repeat(4,19px);
+ background: content-box silver;
+ border: 1px solid;
+ padding: 0 3px 2px 0;
+ width: 100px;
+ height: 120px;
+ align-content: center;
+ justify-items: start;
+ }
-item {
- background-color: #444;
- color: #fff;
-}
+ item {
+ background-color: #444;
+ color: #fff;
+ }
-.tall { grid-row: span 2; padding: 3px 11px 1px 13px; }
-</style>
+ .tall { grid-row: span 2; padding: 3px 11px 1px 13px; }
+ </style>
</head>
<body>
@@ -90,7 +90,7 @@ item {
<item style="grid-row:3/4">6</item>
</grid>
-<grid style="align-content:stretch">
+<grid style="align-content:stretch; grid-template-rows: repeat(4,29.25px);">
<item class="tall" style="grid-row:1/2">1</item>
<item style="grid-row:2/3">2</item>
<item style="grid-row:3/4">3</item>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html
index ae58e79cb2..818d7e2d84 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-003.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-003.html
@@ -5,9 +5,13 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `align-content` in grid axis</title>
+ <title>CSS Grid Test: Masonry layout with `align-content` in grid axis (horizontal writing mode)</title>
+ <meta name="assert"
+ content="Test passes if align-content distributes tracks
+ in the grid axis of a masonry grid container
+ and the grid container's baseline is also shifted accordingly.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-align-content-003-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004-ref.html
index de11c836b8..de11c836b8 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004.html
index 3f07aa1fe7..747420ba46 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/align-content/masonry-align-content-004.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-align-content-004.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `align-content` in grid axis</title>
+ <title>CSS Grid Test: Masonry layout with `align-content` in grid axis (vertical writing mode)</title>
+ <meta name="assert"
+ content="Test passes if align-content distributes tracks
+ in the grid axis of a vertical writing-mode masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-align-content-004-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001-ref.html
index f7d9ccf48f..f7d9ccf48f 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001.html
index 3d60ac19fe..36ecd4f3b3 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-001.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `justify-content` in grid axis</title>
+ <title>CSS Grid Test: Masonry layout with `justify-content` in grid axis (horizontal writing mode)</title>
+ <meta name="assert"
+ content="Test passes if justify-content distributes tracks
+ in the grid axis of a masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-justify-content-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002-ref.html
index 6889af7eac..6889af7eac 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002.html
index b1db084d4e..fc3696282c 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-002.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `justify-content` in grid axis</title>
+ <title>CSS Grid Test: Masonry layout with `justify-content` in grid axis (vertical writing mode)</title>
+ <meta name="assert"
+ content="Test passes if justify-content distributes tracks
+ in the grid axis of a vertical writing-mode masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-justify-content-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003-ref.html
index 81d0fba410..81d0fba410 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003.html
index 772984b9e0..e2e6ead819 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-003.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-003.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `justify-content` in masonry axis</title>
+ <title>CSS Grid Test: Masonry layout with `justify-content` in masonry axis (horizontal writing mode)</title>
+ <meta name="assert"
+ content="Test passes if justify-content shifts content
+ in the masonry axis of a masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-justify-content-003-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004-ref.html
index 43af71fc01..43af71fc01 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004-ref.html
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004.html
index 7d04ffeb4b..e309ef8870 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/justify-content/masonry-justify-content-004.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/alignment/masonry-justify-content-004.html
@@ -5,9 +5,12 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout with `justify-content` in masonry axis</title>
+ <title>CSS Grid Test: Masonry layout with `justify-content` in masonry axis (vertical writing mode)</title>
+ <meta name="assert"
+ content="Test passes if justify-content shifts content
+ in the masonry axis of a vertical writing-mode masonry grid container.">
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-justify-content-004-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html
index 69182c5425..24a5b29061 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout fragmentation</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-fragmentation-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html
index 01c4de00b5..76a0540fa9 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout fragmentation</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-fragmentation-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-003.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-003.html
index fe150e7f83..7252fc169e 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-003.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-003.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Grid axis fragmentation with column masonry layout</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-fragmentation-003-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001-ref.html
index 031629e926..7157460267 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001-ref.html
@@ -15,7 +15,7 @@ html,body {
grid {
display: inline-grid;
gap: 10px 20px;
- grid-template-columns: auto min-content repeat(2,auto);
+ grid-template-columns: auto min-content repeat(2,auto);
color: #444;
border: 1px solid;
padding: 2px;
@@ -27,6 +27,8 @@ item {
padding: 20px;
margin: 3px;
border: 5px solid blue;
+ place-self: start;
+ grid-row: span 2;
}
</style>
</head>
@@ -34,9 +36,8 @@ item {
<grid>
<item>1</item>
- <item style="padding:0; place-self:start; min-width:0">2</item>
+ <item style="padding:0; grid-row: span 1">2</item>
<item>3</item>
<item>4</item>
- <item style="order:1; width:0; margin-right:-23px; margin-top:-37px; align-self:start">5</item>
- <item>6</item>
+ <item style="padding:0; grid-column: 2; grid-row: 2">5</item>
</grid>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001.html
index 673bbe40e4..628c00135d 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-001.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout with definite `gap` in both axes</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
<link rel="match" href="masonry-gap-001-ref.html">
<style>
html,body {
@@ -17,7 +17,7 @@ html,body {
grid {
display: inline-grid;
gap: 10px 20px;
- grid-template-columns: repeat(4,auto);
+ grid-template-columns: repeat(4,auto);
grid-template-rows: masonry;
color: #444;
border: 1px solid;
@@ -36,10 +36,9 @@ item {
<body>
<grid>
- <item>1</item>
- <item style="padding:0">2</item>
- <item>3</item>
- <item>4</item>
- <item>5</item>
- <item>6</item>
+ <item style="grid-column: 1;">1</item>
+ <item style="padding:0; grid-column: 2;">2</item>
+ <item style="grid-column: 3;">3</item>
+ <item style="grid-column: 4;">4</item>
+ <item style="padding:0; grid-column: 2;">5</item>
</grid>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002-ref.html
new file mode 100644
index 0000000000..834a884f76
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002-ref.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: Masonry layout with normal `gap` in both axes</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="author" title="Elika J. Etemad" href="https://fantasai.inkedblade.net/contact">
+ <style>
+html,body {
+ color:black; background-color:white; font:25px/1 "Courier New", monospace; padding:0; margin:0;
+}
+
+grid {
+ display: inline-grid;
+ gap: 0;
+ grid-template-columns: auto min-content repeat(2,auto);
+ color: #444;
+ border: 1px solid;
+ padding: 2px;
+}
+
+item {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ margin: 3px;
+ border: 5px solid blue;
+ place-self: start;
+ grid-row: span 2;
+ display: block;
+}
+</style>
+</head>
+<body>
+
+<grid>
+ <item>1</item>
+ <item style="padding:0; grid-row: span 1">2</item>
+ <item>3</item>
+ <item>4</item>
+ <item style="padding:0; grid-column: 2; grid-row: 2">5</item>
+</grid>
+
+<grid>
+ <item>1</item>
+ <item style="padding:0; grid-row: span 1">2</item>
+ <item>3</item>
+ <item>4</item>
+ <item style="padding:0; grid-column: 2; grid-row: 2">5</item>
+</grid>
+
+<grid>
+ <div style="columns: 3; column-gap: 1em;">
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+ </div>
+</grid>
+
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002.html
new file mode 100644
index 0000000000..6dae0a1a72
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/gap/masonry-gap-002.html
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: Masonry layout with normal `gap` in both axes</title>
+ <meta name="assert"
+ content="Test passes if a 'normal' gap is the initial value,
+ is resolved to zero,
+ does not allow margin collapsing,
+ and inherits as 'normal' in masonry layout">
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="author" title="Elika J. Etemad" href="https://fantasai.inkedblade.net/contact">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#alignment">
+ <link rel="match" href="masonry-gap-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:25px/1 "Courier New", monospace; padding:0; margin:0;
+}
+
+grid {
+ display: inline-grid;
+ grid-template-columns: repeat(4,auto);
+ grid-template-rows: masonry;
+ color: #444;
+ border: 1px solid;
+ padding: 2px;
+}
+
+item {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ margin: 3px;
+ border: 5px solid blue;
+ display: block;
+}
+
+</style>
+</head>
+<body>
+
+<!-- test initial value of normal -->
+<grid>
+ <item style="grid-column: 1;">1</item>
+ <item style="padding:0; grid-column: 2;">2</item>
+ <item style="grid-column: 3;">3</item>
+ <item style="grid-column: 4;">4</item>
+ <item style="padding:0; grid-column: 2;">5</item>
+</grid>
+
+<!-- test that 'normal' is supported and also resolves to zero -->
+<grid style="gap: 10px; gap: normal">
+ <item style="grid-column: 1;">1</item>
+ <item style="padding:0; grid-column: 2;">2</item>
+ <item style="grid-column: 3;">3</item>
+ <item style="grid-column: 4;">4</item>
+ <item style="padding:0; grid-column: 2;">5</item>
+</grid>
+
+<!-- test inheritance of normal as keyword -->
+
+<grid style="gap: 10px; gap: normal">
+ <div style="columns: 3; gap: inherit;">
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+ </div>
+</grid>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001-ref.html
index c99b117f2e..2aefa719dc 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001-ref.html
@@ -5,7 +5,7 @@
-->
<html><head>
<meta charset="utf-8">
- <title>Reference: Placement involving named lines</title>
+ <title>Reference: Definite column placement in a masonry grid (single edge)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<style>
body,html { color:black; background:white; font-size:15px/1 monospace; padding:0; margin:0; }
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html
index b6745f6973..8bb78e307d 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html
@@ -5,8 +5,9 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Placement involving named lines</title>
+ <title>CSS Grid Test: Definite column placement in a masonry grid (single edge)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#grid-template-masonry">
<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-placement-int">
<link rel="match" href="masonry-grid-placement-named-lines-001-ref.html">
<style>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002-ref.html
index dd589f90c5..cfe1369e87 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002-ref.html
@@ -5,7 +5,7 @@
-->
<html><head>
<meta charset="utf-8">
- <title>Reference: Placement involving named lines</title>
+ <title>Reference: Definite column placement in a masonry grid (double edge)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<style>
body,html { color:black; background:white; font:15px/1 monospace; padding:0; margin:0; }
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html
index 0ad0dfcea3..4e51f09f94 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html
@@ -5,8 +5,9 @@
-->
<html><head>
<meta charset="utf-8">
- <title>CSS Grid Test: Placement involving named lines</title>
+ <title>CSS Grid Test: Definite column placement in a masonry grid (double edge)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#grid-template-masonry">
<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-placement-int">
<link rel="match" href="masonry-grid-placement-named-lines-002-ref.html">
<style>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001-ref.html
index 898bff16d8..1a9f65aaf6 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001-ref.html
@@ -3,41 +3,38 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
<title>Reference: Masonry layout intrinsic sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
- grid-auto-rows: 1em;
+ grid-auto-rows: auto;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -45,7 +42,7 @@ item {
<item>5</item>
</grid>
-<grid style="grid-template-columns: 1ch repeat(3,auto)">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -58,7 +55,7 @@ item {
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area:1/2">5</item>
</grid>
<grid>
@@ -66,26 +63,28 @@ item {
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:4ch; grid-area:1/2/2/4">5</item>
</grid>
<grid>
- <item>1</item>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
<grid>
- <item>1</item>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
<grid>
@@ -104,17 +103,20 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid style="grid-template-columns: repeat(4,1ch)">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid>
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -122,7 +124,7 @@ item {
<item>5</item>
</grid>
-<grid class="fr" style="grid-template-columns: 1ch 2fr 1fr 1fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -130,42 +132,43 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area: 1/2">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="width:4ch; grid-area: 1/2/2/4">5</item>
</grid>
-<grid class="fr">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
-<grid class="fr">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -173,7 +176,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -181,18 +184,20 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="fr" style="grid-template-columns: 1ch 2ch 1ch 1ch">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
-
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed" style="grid-template-columns: 2ch 4ch 1ch 1ch">
+<section class="mixed">
+<grid style="grid-template-columns: 2ch 4ch 2ch 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -200,7 +205,7 @@ item {
<item>5</item>
</grid>
-<grid class="mixed" style="grid-template-columns: 1ch 2ch 1ch 1ch">
+<grid style="grid-template-columns: 2ch 4ch 2ch 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -208,42 +213,44 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area: 1/2">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:4ch; grid-area: 1/2/2/4">5</item>
</grid>
-<grid class="mixed">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
-<grid class="mixed">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -251,7 +258,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -259,13 +266,13 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="mixed" style="grid-template-columns: 1ch 2ch 1ch 1ch">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html
index 0f6cdb1495..cc0608eafe 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-001.html
@@ -3,43 +3,40 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout intrinsic sizing</title>
+ <title>CSS Grid Test: Masonry layout column sizing - intrinsic</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#track-sizing">
<link rel="match" href="masonry-intrinsic-sizing-001-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
grid-template-rows: masonry;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -47,7 +44,7 @@ item {
<item>5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -55,7 +52,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -63,7 +60,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -71,7 +68,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid>
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -80,8 +77,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-
-<grid>
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -90,7 +86,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -98,7 +94,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -106,17 +102,19 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -124,7 +122,7 @@ item {
<item>5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -132,7 +130,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -140,7 +138,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -148,7 +146,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -157,8 +155,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-
-<grid class="fr">
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -167,7 +164,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="5th item span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -175,7 +172,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -183,18 +180,19 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
-
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed">
+<section class="mixed">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -202,7 +200,7 @@ item {
<item>5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -210,7 +208,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -218,7 +216,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -226,7 +224,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -236,7 +234,7 @@ item {
</grid>
-<grid class="mixed">
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -245,7 +243,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="5th item span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -253,7 +251,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -261,13 +259,12 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002-ref.html
index 4f6519db94..ddae8e7fe3 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002-ref.html
@@ -3,42 +3,39 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
<title>Reference: Masonry layout intrinsic sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
grid-auto-rows: 1em;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: min-content;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -46,7 +43,7 @@ item {
<item>5</item>
</grid>
-<grid style="grid-template-columns: 1ch repeat(3,auto)">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -59,7 +56,7 @@ item {
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area:1/2">5</item>
</grid>
<grid>
@@ -67,26 +64,28 @@ item {
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:4ch; grid-area:1/2/2/4">5</item>
</grid>
<grid>
- <item>1</item>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
<grid>
- <item>1</item>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
<grid>
@@ -105,17 +104,20 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid style="grid-template-columns: repeat(4,1ch)">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -123,7 +125,7 @@ item {
<item>5</item>
</grid>
-<grid class="fr" style="grid-template-columns: 1ch 2fr 1fr 1fr">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -131,42 +133,43 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area: 1/2">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="width:4ch; grid-area: 1/2/2/4">5</item>
</grid>
-<grid class="fr">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
-<grid class="fr">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -174,7 +177,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -182,18 +185,20 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="fr" style="grid-template-columns: 1ch 1ch 1ch 1ch">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
-
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed" style="grid-template-columns: 2ch 1ch 1ch 1ch">
+<section class="mixed">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -201,7 +206,7 @@ item {
<item>5</item>
</grid>
-<grid class="mixed" style="grid-template-columns: 1ch 1ch 1ch 1ch">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -209,42 +214,44 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:2ch; grid-column:2">5</item>
+ <item style="width:2ch; grid-area: 1/2">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:4ch; grid-column:2/span 2">5</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:4ch; grid-area: 1/2/2/4">5</item>
</grid>
-<grid class="mixed">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="grid-area: 1/2/2/span 2">5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
</grid>
-
-<grid class="mixed">
- <item>1</item>
+<grid>
+ <item style="grid-column: 4">1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:3ch; grid-column:2/span 2">5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item style="visibility: hidden">4</item>
+ <item style="width:3ch; grid-area:1/2/2/4">5</item>
+ <item style="width:5ch; grid-area:2/1/3/4">6</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -252,7 +259,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
@@ -260,13 +267,14 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="mixed" style="grid-template-columns: 1ch 1ch 1ch 1ch">
+<grid>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="width:6ch; grid-column:span 3">5</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5</item>
+ <item style="width:6ch; grid-area: 2/2/3/5; visibility: hidden">5</item>
</grid>
+</section>
+
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html
index db83299bf5..3867bb13c8 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-002.html
@@ -3,44 +3,42 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout intrinsic sizing</title>
+ <title>CSS Grid Test: Masonry layout column sizing - min-content constraint</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#track-sizing">
<link rel="match" href="masonry-intrinsic-sizing-002-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
grid-template-rows: masonry;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: min-content;
}
-.fr {
+
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -48,7 +46,7 @@ item {
<item>5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -56,7 +54,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -64,7 +62,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid>
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -72,7 +70,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid>
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -81,8 +79,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-
-<grid>
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -91,7 +88,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item spanning 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -99,7 +96,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid>
+<grid title="5th item 6ch spanning 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -107,17 +104,19 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid>
+<grid title="5th item 6ch spanning 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -125,7 +124,7 @@ item {
<item>5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -133,7 +132,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -141,7 +140,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid class="fr">
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -149,7 +148,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -158,8 +157,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-
-<grid class="fr">
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -168,7 +166,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="5th item span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -176,7 +174,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -184,18 +182,19 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
-
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed">
+<section class="mixed">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2</item>
<item>3</item>
@@ -203,7 +202,7 @@ item {
<item>5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 2ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -211,7 +210,7 @@ item {
<item style="width:2ch">5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 2ch in col 2">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -219,7 +218,7 @@ item {
<item style="width:2ch; grid-column:2">5</item>
</grid>
-<grid class="mixed">
+<grid title="Wider 5th item 4ch in col 2-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -227,7 +226,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item in col 2-3, wider 6th item 5ch in col 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -236,8 +235,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-
-<grid class="mixed">
+<grid title="5th item 3ch in 2-3, 6th item 5ch in 1-3">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -246,7 +244,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="5th item spanning 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -254,7 +252,7 @@ item {
<item style="grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch spanning 4">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -262,13 +260,12 @@ item {
<item style="width:6ch; grid-column:span 4">5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch spanning 3">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003-ref.html
index 61eb21570d..044750dc45 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003-ref.html
@@ -3,267 +3,331 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
<title>Reference: Masonry layout min-content sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
- grid-auto-rows: 1em;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: min-content;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
item {
- background-color: #444;
- color: blue;
+ align-self: start;
+}
+.hidden {
+ visibility: hidden;
+ height: 0;
}
-item.start { align-self: start; }
</style>
-</head>
+
<body>
-<grid style="grid-template-rows: 1em 2em">
+<section class="auto">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item style="width:2ch">1</item>
- <item>2 2</item>
- <item>3 3</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
<item>4</item>
- <item>5 5</item>
+ <item style="grid-row: span 2">5 5</item>
</grid>
-<grid style="grid: 1em 2em / 1ch repeat(3,auto); ">
+<grid style="grid-template-columns: repeat(4, 2ch)">
<item>1</item>
- <item>2 2</item>
- <item>3 3</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
<item>4</item>
- <item style="width:2ch">5 5</item>
+ <item style="grid-row: span 2">5 5</item>
</grid>
-<grid style="grid-template-rows: 2em 2em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
</grid>
-<grid style="grid-template-rows: 2em 1em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
+
+ <item class="hidden">0</item>
</grid>
-<grid style="grid-template-rows: 2em 1em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid style="grid-template-rows: 2em 1em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid style="grid-template-rows: 2em 1em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid style="grid-template-rows: 2em 1em">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid style="grid: 2em 1em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/4">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 3/2/4/5">0 0</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr" style="grid: 1em 2em / 2ch 2fr 1fr 1fr">
- <item style="width:2ch" class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item>5 5</item>
+<section class="fr">
+<grid style="grid-template-columns: repeat(4, 2ch)">
+ <item style="width:2ch">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-row: span 2">5 5</item>
</grid>
-<grid class="fr" style="grid: 1em 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch">5 5</item>
+<grid style="grid-template-columns: repeat(4, 2ch)">
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-row: span 2">5 5</item>
</grid>
-<grid class="fr" style="grid: 2em 2em / 1ch 2ch repeat(2,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
</grid>
-<grid class="fr" style="grid: 2em 1em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
+ <item class="hidden">0</item>
</grid>
-<grid class="fr" style="grid: 2em 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="fr" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="fr" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="fr" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="fr" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/4">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 3/2/4/5">0 0</item>
</grid>
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed" style="grid: 1em 2em / 2ch repeat(3,1ch)">
- <item style="width:2ch" class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item>5 5</item>
+<section class="mixed">
+<grid style="grid-template-columns: repeat(3, 2ch) max-content">
+ <item style="width:2ch">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-row: span 2">5 5</item>
+ <item class="hidden" style="grid-area: 2/4/4">0 0</item>
</grid>
-<grid class="mixed" style="grid: 1em 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch">5 5</item>
+<grid style="grid-template-columns: repeat(3, 2ch) max-content">
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-row: span 2">5 5</item>
+ <item class="hidden" style="grid-area: 2/4/4">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em 2em / 1ch 2ch repeat(2,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
+ <item class="hidden">0</item>
</grid>
-<grid class="mixed" style="grid: 2em 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden">0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em / repeat(4,1ch)">
- <item class="start">1</item>
- <item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/4">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 3/2/4/5">0 0</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html
index e43bc86c9b..48489d3c86 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-003.html
@@ -3,44 +3,41 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout min-content sizing</title>
+ <title>CSS Grid Test: Masonry layout column sizing - min-content</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#track-sizing">
<link rel="match" href="masonry-intrinsic-sizing-003-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
grid-template-rows: masonry;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: min-content;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -48,7 +45,7 @@ item {
<item>5 5</item>
</grid>
-<grid>
+<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -56,7 +53,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid>
+<grid title="Wrapped 5th item 2ch col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -64,7 +61,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid>
+<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -72,7 +69,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid>
+<grid title="5th item in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -81,7 +78,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -90,7 +87,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -98,7 +95,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -106,17 +103,19 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid title="Wider first item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -124,7 +123,7 @@ item {
<item>5 5</item>
</grid>
-<grid class="fr">
+<grid title="Wrapped last item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -132,7 +131,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Wrapped last item 2ch col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -140,7 +139,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Last item 4ch col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -148,7 +147,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Item col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -157,7 +156,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="Item 3ch col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -166,7 +165,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="Last item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -174,7 +173,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Last item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -182,17 +181,19 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Last item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed">
+<section class="mixed">
+<grid title="Wider first item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -200,7 +201,7 @@ item {
<item>5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Wrapped last item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -208,7 +209,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Wrapped last item 2ch col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -216,7 +217,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Last item 4ch col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -224,7 +225,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Item col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -233,7 +234,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="Item 3ch col 2-3 + Item 5ch col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -242,7 +243,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="Last item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -250,7 +251,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Last item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -258,13 +259,12 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Last item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004-ref.html
index 6a5d81fedb..302dcad116 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004-ref.html
@@ -3,268 +3,355 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
<title>Reference: Masonry layout max-content sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: 1ch 3ch 3ch 1ch;
- grid-auto-rows: 1em;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
align-items: start;
width: max-content;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4, auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
item {
- background-color: #444;
- color: blue;
+ align-self: start;
+}
+.hidden {
+ visibility: hidden;
+ height: 0;
}
-item.start { align-self: start; }
</style>
-</head>
+
<body>
-<grid style="grid: 1em 2em / 2ch 3ch 3ch 1ch">
+<section class="auto">
+<grid>
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item>5 5</item>
+
+ <item class="hidden" style="grid-column: 4">0 0</item>
</grid>
-<grid style="grid: 1em 2em / 1ch 3ch 3ch 1ch; ">
+<grid>
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
- <item style="width:2ch">5 5</item>
+ <item style="width: 2ch; grid-area: 2/1">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid style="grid-template-rows: 1em 2em">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
+ <item style="grid-area: 2/1">4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+ <item style="grid-area: 2/2">4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item style="grid-area: 1/4">1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden" style="grid-area: 1/1">0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
+ <item class="hidden" style="grid-area: 1/4">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item style="grid-area: 1/4">1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden" style="grid-area: 1/1">0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
+ <item class="hidden" style="grid-area: 1/4">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+ <item>4</item>
+ <item style="grid-area: 2/1/3/5">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 2/1/3/5">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
<grid>
- <item class="start">1</item>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 2/2/3/5">0 0</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
- <item style="width:2ch" class="start">1</item>
+<section class="fr">
+<grid>
+ <item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
+ <item>4</item>
<item>5 5</item>
+ <item class="hidden" style="grid-area: 2/4/4">0 0</item>
</grid>
-<grid class="fr" style="grid: 1em 2em / 3ch 6ch 3ch 3ch">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch">5 5</item>
+ <item>4</item>
+ <item style="width: 2ch">5 5</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid class="fr" style="grid: 1em 2em / 3ch 6ch 3ch 3ch">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
+ <item>4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+ <item>4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
+ <item class="hidden">0</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item style="grid-area: 1/4">1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden" style="grid-area: 1/1">0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
+ <item class="hidden" style="grid-area: 1/4">0 0</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item style="grid-area: 1/4">1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden" style="grid-area: 1/1">0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
+ <item class="hidden" style="grid-area: 1/4">0 0</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+ <item>4</item>
+ <item style="grid-area: 2/1/3/5">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 2/1/3/5">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid class="fr">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 2/1/3/4">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 2/2/3/5">0 0</item>
</grid>
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed" style="grid: 1em 2em / 2ch 4ch 1ch 1ch">
- <item style="width:2ch" class="start">1</item>
+<section class="mixed">
+<grid>
+ <item style="width:2ch">1</item>
<item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item>5 5</item>
+ <item style="grid-area: 1/3/3">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 2/1">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/3; width: 2ch">0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid class="mixed" style="grid: 1em 2em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
<item>2 2</item>
- <item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch">5 5</item>
+ <item style="grid-area: 1/3/3">3 3</item>
+ <item>4</item>
+ <item style="width: 2ch; grid-area: 2/1">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/3; width: 2ch">0</item>
+ <item class="hidden" style="grid-area: 2/4">0 0</item>
</grid>
-<grid class="mixed" style="grid: 1em 2em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
+<grid>
+ <item>1</item>
+ <item style="grid-row: span 2">2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item style="grid-area: 2/1">4</item>
+ <item style="width:2ch; grid-area: 1/2/3">5 5</item>
+
+ <item class="hidden" style="grid-area: 2/1">0 0</item>
+</grid>
+
+<grid>
+ <item>1</item>
<item>2 2</item>
<item>3 3</item>
- <item class="start">4</item>
- <item style="width:2ch; grid-column:2">5 5</item>
-</grid>
+ <item>4</item>
+ <item style="width:4ch; grid-area: 1/2/auto/4">5 5</item>
-<grid class="mixed" style="grid: 2em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="width:4ch; grid-column:2/span 2">5 5</item>
+ <item class="hidden">0</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item>2 2</item>
+ <item>3 3</item>
+ <item>4</item>
+ <item style="grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden" style="grid-area: 2/2">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="width:3ch; grid-column:2/span 2">5 5</item>
- <item style="width:5ch; grid-column:1/span 3">6</item>
+<grid>
+ <item style="grid-column: 4">1</item>
+ <item>2 2</item>
+ <item>3 3</item>
+ <item>4</item>
+ <item style="width:3ch; grid-area: 1/2/2/4">5 5</item>
+ <item style="width:5ch; grid-area: 2/1/3/4">6</item>
+
+ <item class="hidden" style="grid-area: 2/3">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item>2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 4">5 5</item>
+<grid>
+ <item>1</item>
+ <item>2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/5">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
</grid>
-<grid class="mixed" style="grid: 2em 1em / calc(3ch/2) 3ch 1ch 1ch">
- <item class="start">1</item>
- <item class="start">2 2</item>
- <item class="start">3 3</item>
- <item class="start">4</item>
- <item style="width:6ch; grid-column:span 3">5 5</item>
+<grid>
+ <item>1</item>
+ <item>2 2</item>
+ <item style="grid-row: span 2">3 3</item>
+ <item>4</item>
+ <item style="width:6ch; grid-area: 3/1/4/4">5 5</item>
+
+ <item class="hidden">0 0</item>
+ <item class="hidden">0 0</item>
+ <item class="hidden" style="width:6ch; grid-area: 3/2/4/5">0 0</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html
index 5365208c00..c8bc671bb3 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-004.html
@@ -3,44 +3,41 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout max-content sizing</title>
+ <title>CSS Grid Test: Masonry layout column sizing - max-content</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-intrinsic-sizing-004-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
- grid-template-columns: repeat(4,auto);
grid-template-rows: masonry;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
width: max-content;
}
-.fr {
+.auto grid {
+ grid-template-columns: repeat(4,auto);
+}
+.fr grid {
grid-template-columns: 1fr 2fr 1fr 1fr;
}
-.mixed {
+.mixed grid {
grid-template-columns: 1fr 2fr min-content max-content;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid>
+<section class="auto">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -48,7 +45,7 @@ item {
<item>5 5</item>
</grid>
-<grid>
+<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -56,7 +53,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid>
+<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -64,7 +61,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid>
+<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -72,7 +69,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid>
+<grid title="4th item in col 2-3, 5th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -81,7 +78,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -90,7 +87,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid>
+<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -98,7 +95,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -106,17 +103,19 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid>
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
<!-- ditto with 'fr' sizing -->
-<grid class="fr">
+<section class="fr">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -124,7 +123,7 @@ item {
<item>5 5</item>
</grid>
-<grid class="fr">
+<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -132,7 +131,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid class="fr">
+<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -140,7 +139,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -148,7 +147,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid class="fr">
+<grid title="4th item in col 2-3, 5th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -157,7 +156,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -166,7 +165,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="fr">
+<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -174,7 +173,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -182,17 +181,19 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid class="fr">
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
<!-- ditto with mixed sizing -->
-<grid class="mixed">
+<section class="mixed">
+<grid title="Wider 1st item 2ch">
<item style="width:2ch">1</item>
<item>2 2</item>
<item>3 3</item>
@@ -200,7 +201,7 @@ item {
<item>5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Wrapped 5th item 2ch">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -208,7 +209,7 @@ item {
<item style="width:2ch">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="Wrapped 5th item 2ch in col 2">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -216,7 +217,7 @@ item {
<item style="width:2ch; grid-column:2">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 4ch in col 2-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -224,7 +225,7 @@ item {
<item style="width:4ch; grid-column:2/span 2">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="4th item in col 2-3, 5th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -233,7 +234,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 3ch in col 2-3, 6th item 5ch in col 1-3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -242,7 +243,7 @@ item {
<item style="width:5ch; grid-column:1/span 3">6</item>
</grid>
-<grid class="mixed">
+<grid title="5th item span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -250,7 +251,7 @@ item {
<item style="grid-column:span 4">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch span 4">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
@@ -258,13 +259,12 @@ item {
<item style="width:6ch; grid-column:span 4">5 5</item>
</grid>
-<grid class="mixed">
+<grid title="5th item 6ch span 3">
<item>1</item>
<item>2 2</item>
<item>3 3</item>
<item>4</item>
<item style="width:6ch; grid-column:span 3">5 5</item>
</grid>
+</section>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005-ref.html
index e564fb1b3e..725f646ebd 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005-ref.html
@@ -3,35 +3,32 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>Reference: Masonry layout intrinsic sizing</title>
+ <title>Reference: Masonry layout row sizing (vertical writing mode)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
+ grid-template-rows: repeat(4,auto);
grid-auto-flow: column;
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
}
-
item {
- background-color: #444;
- color: blue;
writing-mode: vertical-lr;
}
</style>
-</head>
+
<body>
-<grid style="grid-template-rows: 3ch repeat(3,1ch)">
+<grid style="grid-template-rows: repeat(4, 3ch)">
<item style="height:3ch">1</item>
<item>2</item>
<item>3</item>
@@ -43,7 +40,7 @@ item {
<item>9 9</item>
</grid>
-<grid style="grid-template-rows: repeat(4,1ch)">
+<grid style="grid-template-rows: repeat(4,3ch)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -79,5 +76,3 @@ item {
<item>9 9</item>
</grid>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html
index cf9b680869..83afd5bafa 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-005.html
@@ -3,17 +3,16 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout intrinsic sizing</title>
+ <title>CSS Grid Test: Masonry layout row sizing (vertical writing mode)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#track-sizing">
<link rel="match" href="masonry-intrinsic-sizing-005-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
@@ -26,15 +25,13 @@ grid {
}
item {
- background-color: #444;
- color: blue;
writing-mode: vertical-lr;
}
</style>
-</head>
+
<body>
-<grid>
+<grid title="First item 3ch">
<item style="height:3ch">1</item>
<item>2</item>
<item>3</item>
@@ -46,7 +43,7 @@ item {
<item>9 9</item>
</grid>
-<grid>
+<grid title="Fifth item 3ch">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -58,7 +55,7 @@ item {
<item>9 9</item>
</grid>
-<grid>
+<grid title="Fifth item 3ch row 1">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -70,7 +67,7 @@ item {
<item>9 9</item>
</grid>
-<grid>
+<grid title="Fifth item 3ch col 1 (ignored)">
<item>1</item>
<item>2</item>
<item>3</item>
@@ -82,5 +79,3 @@ item {
<item>9 9</item>
</grid>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006-ref.html
index e1cb015cfe..1a88c2b4cb 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006-ref.html
@@ -3,58 +3,49 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>Reference: Masonry layout intrinsic sizing</title>
+ <title>Reference: Masonry layout row auto-fill sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
gap: 1px 2px;
grid-auto-flow: column;
- grid-template-columns: 1ch;
grid-template-rows: repeat(4,1em);
border: 1px solid;
padding: 0 1px 0 2px;
vertical-align: top;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
<grid>
- <item style="width:3ch">1 1</item>
+ <item style="width:3ch; grid-column: span 2">1 1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-row:2">5 5</item>
+ <item style="grid-column: span 2">5 5</item>
</grid>
<grid>
- <item style="width:3ch">1 1</item>
+ <item style="width:3ch; grid-column: span 2">1 1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-row:2">5 5</item>
+ <item style="grid-column: span 2">5 5</item>
</grid>
<grid style="height:5em">
- <item style="width:3ch">1 1</item>
+ <item style="width:3ch; grid-column: span 2">1 1</item>
<item>2</item>
<item>3</item>
<item>4</item>
- <item style="grid-row:2">5 5</item>
+ <item style="grid-column: span 2">5 5</item>
</grid>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006.html
index 49fd53bb79..ad54800921 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-006.html
@@ -3,17 +3,16 @@
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
-<html><head>
+<html>
<meta charset="utf-8">
- <title>CSS Grid Test: Masonry layout intrinsic sizing</title>
+ <title>CSS Grid Test: Masonry layout row auto-fill sizing</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#track-sizing">
<link rel="match" href="masonry-intrinsic-sizing-006-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
-html,body {
- color:black; background-color:white; font:15px/1 Ahem; padding:0; margin:0;
-}
+
+@import "support/masonry-intrinsic-sizing-visual.css";
grid {
display: inline-grid;
@@ -24,16 +23,12 @@ grid {
padding: 0 1px 0 2px;
vertical-align: top;
}
-
-item {
- background-color: #444;
- color: blue;
-}
</style>
-</head>
+
<body>
-<grid style="max-height:5em; grid-template-rows: repeat(auto-fill,1em);">
+<grid title="max-height 5em"
+ style="max-height:5em; grid-template-rows: repeat(auto-fill,1em);">
<item>1 1</item>
<item>2</item>
<item>3</item>
@@ -41,7 +36,8 @@ item {
<item>5 5</item>
</grid>
-<grid style="min-height:4em; grid-template-rows: repeat(auto-fill,1em);">
+<grid title="min-height 4em"
+ style="min-height:4em; grid-template-rows: repeat(auto-fill,1em);">
<item>1 1</item>
<item>2</item>
<item>3</item>
@@ -49,7 +45,8 @@ item {
<item>5 5</item>
</grid>
-<grid style="height:5em; grid-template-rows: repeat(auto-fill,1em);">
+<grid title="height 5em"
+ style="height:5em; grid-template-rows: repeat(auto-fill,1em);">
<item>1 1</item>
<item>2</item>
<item>3</item>
@@ -57,5 +54,3 @@ item {
<item>5 5</item>
</grid>
-</body>
-</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/support/masonry-intrinsic-sizing-visual.css b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/support/masonry-intrinsic-sizing-visual.css
new file mode 100644
index 0000000000..150f0f2679
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/intrinsic-sizing/support/masonry-intrinsic-sizing-visual.css
@@ -0,0 +1,48 @@
+/* Basic Testing Setup */
+html,body {
+ color: black; background: white; font: 15px/1 Ahem, monospace;
+ padding: 1em 0; margin: 0;
+ max-width: 800px; height: calc(600px - 2em);
+ border-bottom: 1px solid orange; /* Do Not Cross */
+}
+
+
+/* Visualization */
+grid {
+ margin: 0.5em;
+}
+item {
+ background-color: gray;
+ color: blue;
+}
+
+/* Debugging Aid */
+section {
+ border-top: 1px solid gray;
+ counter-reset: grid;
+}
+
+grid {
+ margin-inline-start: 1em;
+ counter-increment: grid;
+}
+grid::before {
+ position: absolute;
+ margin: 0 -1.1em;
+ font: smaller sans-serif;
+ content: counter(grid);
+ color: navy;
+}
+
+grid:hover {
+ outline: navy solid;
+}
+grid:hover item[style] {
+ color: navy;
+}
+grid:hover::after {
+ content: attr(title);
+ position: absolute;
+ inset: 0.1em auto auto 0.5rem;
+ font: bold smaller sans-serif;
+}
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html
index 649e1edb7c..2438df8bac 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `grid-column/row`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html
index 7d321bf731..8833cdfcfc 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `grid-column/row`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-003.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-003.html
index 8a183cffc6..bde2fa0e66 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-003.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-003.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `grid-column/row` and `dense`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-003-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html
index 4d1a454a86..52867cd4a2 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `grid-column/row`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-004-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html
index ddfbc9e54e..7d4993fb3a 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `grid-column/row`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-005-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-006.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-006.html
index 0082d72df2..467e313d33 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-006.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-006.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry item placement</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-006-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-007.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-007.html
index 67a02560f4..4c8053ba66 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-007.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-007.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry item placement (RTL)</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-007-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008-ref.html
index e14ca3173a..f3503bf071 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008-ref.html
@@ -3,7 +3,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry item placement w/ Images</title>
<link rel="author" title="Brandon Stewart" href="mailto:brandonstewart@apple.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
</head>
<body>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008.html
index c68a9787b8..bdf651d77b 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-008.html
@@ -3,7 +3,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry item placement w/ Images</title>
<link rel="author" title="Brandon Stewart" href="mailto:brandonstewart@apple.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-item-placement-008-ref.html">
</head>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html
index e48b650253..b5eb7f4984 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html
@@ -4,7 +4,7 @@
<link rel="author" title="Sammy Gill" href="mailto:sammy.gill@apple.com">
<link rel="help" href="https://drafts.csswg.org/css-grid-3/#containing-block">
<link rel="match" href="/css/reference/ref-filled-green-100px-square-only.html">
-<meta name="assert" content="Svg should use grid's content logical width for its containing block size and get sized to 100px x 100px">
+<meta name="assert" content="Test passes if SVG uses grid's content logical width for its containing block size and get sized to 100px x 100px">
<style>
grid {
display: grid;
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html
index b36efb664d..0ee2ee78c0 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html
@@ -1,34 +1,34 @@
<!DOCTYPE html>
<html>
<head>
-<meta charset="utf-8">
-<title>CSS Masonry Test: getComputedStyle().gridTemplateColumns</title>
-<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-template-columns">
-<meta name="assert" content="grid-template-columns computed value is the keyword none or a computed track list.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<style>
- #target {
- display: grid;
- grid-template-rows: masonry;
- font-size: 40px;
- min-width: 200px;
- width: 300px;
- max-width: 400px;
- min-height: 500px;
- height: 600px;
- max-height: 700px;
- }
- #child {
- min-width: 20px;
- width: 30px;
- max-width: 40px;
- min-height: 50px;
- height: 60px;
- max-height: 70px;
- }
-</style>
+ <meta charset="utf-8">
+ <title>CSS Masonry Test: getComputedStyle().gridTemplateColumns</title>
+ <link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-template-masonry">
+ <meta name="assert" content="grid-template-columns computed value is the keyword none or a computed track list.">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/css/support/computed-testcommon.js"></script>
+ <style>
+ #target {
+ display: grid;
+ grid-template-rows: masonry;
+ font-size: 40px;
+ min-width: 200px;
+ width: 300px;
+ max-width: 400px;
+ min-height: 500px;
+ height: 600px;
+ max-height: 700px;
+ }
+ #child {
+ min-width: 20px;
+ width: 30px;
+ max-width: 40px;
+ min-height: 50px;
+ height: 60px;
+ max-height: 70px;
+ }
+ </style>
</head>
<body>
<div id="container">
@@ -37,59 +37,59 @@
</div>
</div>
<script>
-test_computed_value("grid-template-rows", 'masonry', 'masonry');
-test_computed_value("grid-template-columns", 'none', 'none'); // "none" without #child
+ test_computed_value("grid-template-rows", 'masonry', 'masonry');
+ test_computed_value("grid-template-columns", 'none', 'none'); // "none" without #child
-// track-size <fixed-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
-test_computed_value("grid-template-columns", '20%', '60px'); // 20% * width
-test_computed_value("grid-template-columns", 'calc(-0.5em + 10px)', '0px');
-test_computed_value("grid-template-columns", 'calc(0.5em + 10px)', '30px');
-test_computed_value("grid-template-columns", 'calc(30% + 40px)', '130px'); // 30% * width + 40px
-test_computed_value("grid-template-columns", '5fr', '300px'); // width
-test_computed_value("grid-template-columns", 'min-content', '30px');
-test_computed_value("grid-template-columns", 'max-content', '30px');
-test_computed_value("grid-template-columns", 'auto', '300px'); // width
+ // track-size <fixed-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
+ test_computed_value("grid-template-columns", '20%', '60px'); // 20% * width
+ test_computed_value("grid-template-columns", 'calc(-0.5em + 10px)', '0px');
+ test_computed_value("grid-template-columns", 'calc(0.5em + 10px)', '30px');
+ test_computed_value("grid-template-columns", 'calc(30% + 40px)', '130px'); // 30% * width + 40px
+ test_computed_value("grid-template-columns", '5fr', '300px'); // width
+ test_computed_value("grid-template-columns", 'min-content', '30px');
+ test_computed_value("grid-template-columns", 'max-content', '30px');
+ test_computed_value("grid-template-columns", 'auto', '300px'); // width
-// track-size minmax( <inflexible-breadth> , <track-breadth> )
-test_computed_value("grid-template-columns", 'minmax(10px, auto)', '300px'); // width
-test_computed_value("grid-template-columns", 'minmax(20%, max-content)', '60px'); // 20% * width
-test_computed_value("grid-template-columns", 'minmax(min-content, calc(-0.5em + 10px))', '30px');
-test_computed_value("grid-template-columns", 'minmax(auto, 0)', '30px');
+ // track-size minmax( <inflexible-breadth> , <track-breadth> )
+ test_computed_value("grid-template-columns", 'minmax(10px, auto)', '300px'); // width
+ test_computed_value("grid-template-columns", 'minmax(20%, max-content)', '60px'); // 20% * width
+ test_computed_value("grid-template-columns", 'minmax(min-content, calc(-0.5em + 10px))', '30px');
+ test_computed_value("grid-template-columns", 'minmax(auto, 0)', '30px');
-// track-size fit-content( <length-percentage> )
-test_computed_value("grid-template-columns", 'fit-content(70px)', '30px');
-test_computed_value("grid-template-columns", 'fit-content(20%)', '30px');
-test_computed_value("grid-template-columns", 'fit-content(calc(-0.5em + 10px))', '30px');
+ // track-size fit-content( <length-percentage> )
+ test_computed_value("grid-template-columns", 'fit-content(70px)', '30px');
+ test_computed_value("grid-template-columns", 'fit-content(20%)', '30px');
+ test_computed_value("grid-template-columns", 'fit-content(calc(-0.5em + 10px))', '30px');
-// <track-repeat> = repeat( [ <positive-integer> ] , [ <line-names>? <track-size> ]+ <line-names>? )
-test_computed_value("grid-template-columns", 'repeat(1, 10px)', '10px');
-test_computed_value("grid-template-columns", 'repeat(1, [one two] 20%)', '[one two] 60px');
-test_computed_value("grid-template-columns", 'repeat(2, minmax(10px, auto))', '160px 140px');
+ // <track-repeat> = repeat( [ <positive-integer> ] , [ <line-names>? <track-size> ]+ <line-names>? )
+ test_computed_value("grid-template-columns", 'repeat(1, 10px)', '10px');
+ test_computed_value("grid-template-columns", 'repeat(1, [one two] 20%)', '[one two] 60px');
+ test_computed_value("grid-template-columns", 'repeat(2, minmax(10px, auto))', '150px 150px');
-test_computed_value("grid-template-columns", 'repeat(2, fit-content(20%) [three four] 30px 40px [five six])',
- '30px [three four] 30px 40px [five six] 0px [three four] 30px 40px [five six]');
+ test_computed_value("grid-template-columns", 'repeat(2, fit-content(20%) [three four] 30px 40px [five six])',
+ '30px [three four] 30px 40px [five six] 30px [three four] 30px 40px [five six]');
-// <track-list> = [ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?
-test_computed_value("grid-template-columns", 'min-content repeat(5, minmax(10px, auto))',
- '30px 54px 54px 54px 54px 54px');
-test_computed_value("grid-template-columns", '[] 150px [] 1fr []', '150px 150px');
+ // <track-list> = [ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?
+ test_computed_value("grid-template-columns", 'min-content repeat(5, minmax(10px, auto))',
+ '30px 54px 54px 54px 54px 54px');
+ test_computed_value("grid-template-columns", '[] 150px [] 1fr []', '150px 150px');
-// <auto-repeat> = repeat( [ auto-fill | auto-fit ] , [ <line-names>? <fixed-size> ]+ <line-names>? )
-test_computed_value("grid-template-columns", 'repeat(auto-fill, 200px)', '200px');
-test_computed_value("grid-template-columns", 'repeat(auto-fit, [one] 20%)',
- '[one] 60px [one] 60px [one] 60px [one] 60px [one] 60px');
-test_computed_value("grid-template-columns", 'repeat(auto-fill, minmax(100px, 5fr) [two])',
- '100px [two] 100px [two] 100px [two]');
-test_computed_value("grid-template-columns", 'repeat(auto-fit, [three] minmax(max-content, 6em) [four])',
- '[three] 240px [four]');
+ // <auto-repeat> = repeat( [ auto-fill | auto-fit ] , [ <line-names>? <fixed-size> ]+ <line-names>? )
+ test_computed_value("grid-template-columns", 'repeat(auto-fill, 200px)', '200px');
+ test_computed_value("grid-template-columns", 'repeat(auto-fit, [one] 20%)',
+ '[one] 60px [one] 60px [one] 60px [one] 60px [one] 60px');
+ test_computed_value("grid-template-columns", 'repeat(auto-fill, minmax(100px, 5fr) [two])',
+ '100px [two] 100px [two] 100px [two]');
+ test_computed_value("grid-template-columns", 'repeat(auto-fit, [three] minmax(max-content, 6em) [four])',
+ '[three] 240px [four]');
-// <auto-track-list> =
-// [ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?
-// <auto-repeat>
-// [ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?
+ // <auto-track-list> =
+ // [ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?
+ // <auto-repeat>
+ // [ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?
-test_computed_value("grid-template-columns", '[one] repeat(2, minmax(50px, auto)) [two] 30px [three] repeat(auto-fill, 10px) 40px [four five] repeat(2, minmax(200px, auto)) [six]',
- '[one] 50px 50px [two] 30px [three] 10px 40px [four five] 200px 200px [six]');
+ test_computed_value("grid-template-columns", '[one] repeat(2, minmax(50px, auto)) [two] 30px [three] repeat(auto-fill, 10px) 40px [four five] repeat(2, minmax(200px, auto)) [six]',
+ '[one] 50px 50px [two] 30px [three] 10px 40px [four five] 200px 200px [six]');
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-not-inhibited-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-not-inhibited-001.html
index 54499d3d69..1c912feb1f 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-not-inhibited-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/masonry-not-inhibited-001.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout shouldn't be inhibited simply due to being an independent formatting context (unlike subgrid)</title>
<link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
-<link rel="help" href="https://drafts.csswg.org/css-grid-3/">
+<link rel="help" href="https://drafts.csswg.org/css-grid-3/#grid-template-masonry">
<link rel="match" href="masonry-not-inhibited-001-ref.html">
<style>
grid {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-001.html
index d01f52ea04..37b3d01fb4 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-001.html
@@ -7,7 +7,8 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `order`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#masonry-layout-algorithm">
<link rel="match" href="masonry-order-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-002.html
index abad3d44b8..5ebdec2719 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/order/masonry-order-002.html
@@ -7,7 +7,8 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout using `order` and `masonry-auto-flow: next`</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#masonry-layout-algorithm">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#masonry-auto-flow">
<link rel="match" href="masonry-order-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/parsing/masonry-parsing.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/parsing/masonry-parsing.html
index e3245095fa..2204c06f72 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/parsing/masonry-parsing.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/parsing/masonry-parsing.html
@@ -3,7 +3,8 @@
<head>
<meta charset="utf-8">
<title>CSS Masonry Test: parsing properties and shortands</title>
-<link rel="help" href="https://drafts.csswg.org/css-grid-2/#propdef-grid-template-columns">
+<link rel="help" href="https://drafts.csswg.org/css-grid-3/#grid-template-masonry">
+<link rel="help" href="https://drafts.csswg.org/css-grid-3/#masonry-auto-flow">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html
index de07dfb78d..c71ba68612 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout with a subgrid</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#subgrids">
<link rel="match" href="masonry-subgrid-001-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-002.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-002.html
index 466e95eb03..167f2d4496 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-002.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-002.html
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<title>CSS Grid Test: Masonry layout with a subgrid</title>
<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
- <link rel="help" href="https://drats.csswg.org/css-grid-2">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-3/#subgrids">
<link rel="match" href="masonry-subgrid-002-ref.html">
<style>
html,body {
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize-ref.html
index 7196886492..53447e0dad 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize-ref.html
@@ -1,16 +1,14 @@
<!DOCTYPE html>
<html>
-
+<title>CSS Reference: Masonry grid container size changes when item sizes change</title>
<head>
<meta charset="utf-8">
<link rel="author" title="Brandon Stewart" href="mailto:brandonstewart@apple.com">
-<link rel="help" href="https://drafts.csswg.org/css-grid-3">
-<meta name="assert" content="When the height of an element in the grid changes, ensure the grid is properly resized">
</head>
<style>
grid {
- display: grid;
+ display: inline-grid;
grid-template-rows: masonry;
grid-template-columns: auto;
grid-gap: 10px;
@@ -20,7 +18,7 @@
item1 {
background-color: grey;
height: 125px;
- width: 250px;
+ width: 300px;
}
item2 {
background-color: grey;
@@ -35,4 +33,4 @@
<item2>2</item2>
</grid>
</body>
-</html> \ No newline at end of file
+</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize.html
index 06c2901f27..dbff19f28e 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-check-grid-height-on-resize.html
@@ -1,17 +1,18 @@
<!DOCTYPE html>
-<html>
+<html class="reftest-wait">
<head>
<meta charset="utf-8">
+<title>CSS Test: Masonry grid container size changes when item sizes change</title>
<link rel="author" title="Brandon Stewart" href="mailto:brandonstewart@apple.com">
<link rel="help" href="https://drafts.csswg.org/css-grid-3">
<link rel="match" href="masonry-track-sizing-check-grid-height-on-resize-ref.html">
-<meta name="assert" content="When the height of an element in the grid changes, ensure the grid is properly resized">
+<meta name="assert" content="Test passes if when the size of an item in the masonry grid changes, the grid container is properly resized">
</head>
<style>
grid {
- display: grid;
+ display: inline-grid;
grid-template-rows: masonry;
grid-template-columns: auto;
grid-gap: 10px;
@@ -32,8 +33,11 @@
</grid>
</body>
<script>
- /* Force a relayout */
- document.body.offsetHeight;
- document.querySelector("item").style["height"] = "125px";
+ document.body.offsetHeight; // Force a relayout
+ var gridItem = document.querySelector('item');
+ gridItem.style.height = '125px';
+ gridItem.style.width = '300px';
+ document
+ document.documentElement.className = '';
</script>
-</html> \ No newline at end of file
+</html>
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side-ref.html
index 5a31517183..3e973b7fe7 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-left-side-ref.html
@@ -12,7 +12,7 @@
<style>
grid {
display: grid;
- grid-template-columns: 50px 1fr;
+ grid-template-columns: 100px 1fr;
grid-template-rows: 50px 250px;
width: 300px;
height: 100px;
diff --git a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side-ref.html b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side-ref.html
index 51e657e2a4..eb84b2e6bd 100644
--- a/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side-ref.html
+++ b/testing/web-platform/tests/css/css-grid/masonry/tentative/track-sizing/masonry-track-sizing-overflow-right-side-ref.html
@@ -12,7 +12,7 @@
<style>
grid {
display: grid;
- grid-template-columns: 1fr 50px;
+ grid-template-columns: 1fr 100px;
grid-template-rows: 1fr 50px;
width: 300px;
height: 100px;
diff --git a/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip-ref.html b/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip-ref.html
new file mode 100644
index 0000000000..64e6ff2d99
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip-ref.html
@@ -0,0 +1,18 @@
+<!doctype html>
+<meta charset="utf-8">
+<style>
+ .flex {
+ display: flex;
+ flex-direction: column;
+ }
+ .grid {
+ display: grid;
+ flex-basis: 20px;
+ border: 1px solid;
+ }
+</style>
+<div class="flex">
+ <div class="grid">
+ <div style="height: 50px;"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip.html b/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip.html
new file mode 100644
index 0000000000..3dfd2c18f5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/min-size-auto-overflow-clip.html
@@ -0,0 +1,22 @@
+<!doctype html>
+<meta charset="utf-8">
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#min-size-auto">
+<link rel="match" href="min-size-auto-overflow-clip-ref.html">
+<title>overflow: visible and clip behave the same for min-size purposes</title>
+<style>
+ .flex {
+ display: flex;
+ flex-direction: column;
+ }
+ .grid {
+ display: grid;
+ flex-basis: 20px;
+ border: 1px solid;
+ }
+</style>
+<div class="flex">
+ <div class="grid" style="overflow: clip">
+ <div style="height: 50px;"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-grid/subgrid/line-names-013.html b/testing/web-platform/tests/css/css-grid/subgrid/line-names-013.html
new file mode 100644
index 0000000000..a964cf7813
--- /dev/null
+++ b/testing/web-platform/tests/css/css-grid/subgrid/line-names-013.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Test: Clamping a subgrid's own grid-template-areas</title>
+<link rel="author" title="Ethan Jimenez" href="mailto:ethavar@microsoft.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-2/#grid-template-areas-property">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<style>
+.grid {
+ background: red;
+ display: grid;
+ grid-template: 100px 100px / 100px;
+ height: 100px;
+ width: 100px;
+}
+.subgrid {
+ display: grid;
+ grid-template-areas: "item item"
+ "item item";
+ grid-template-rows: subgrid;
+}
+.item {
+ background: green;
+ grid-area: item;
+}
+</style>
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div class="grid">
+ <div class="subgrid">
+ <div class="item"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-004-2.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-004-2.html
index 0a612d66d1..1b8ff935a6 100644
--- a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-004-2.html
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-004-2.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/">
<link rel="match" href="custom-highlight-painting-004-2-ref.html">
<meta name="assert" value="When painting overlapping highlights with the same .priority, the one added last should be painted on top; and style properties not defined by the one on top (background-color in this case) should follow the rules of the next Highlight from top to bottom until there's one that overwrites default (or use default value otherwise).">
-<meta name="fuzzy" content="0-88;0-1">
+<meta name="fuzzy" content="0-88;0-4">
<style>
::highlight(foo) {
color:blue;
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020-ref.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020-ref.html
new file mode 100644
index 0000000000..92cf04c180
--- /dev/null
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020-ref.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Highlight API Test: Highlighing Ligatures Ref</title>
+<style>
+ @font-face {
+ font-family: 'mplus';
+ src: url('../../../fonts/mplus-1p-regular.woff');
+ }
+ div {
+ font-size: 7em;
+ font-family: mplus, sans-serif;
+ }
+ ::selection {
+ color:green;
+ text-decoration: blue 2px line-through;
+ }
+</style>
+<body><div>fii ffi fff</div>
+<script>
+ let textNode = document.body.firstChild.firstChild;
+
+ let r1 = new Range();
+ r1.setStart(textNode, 1);
+ r1.setEnd(textNode, 9);
+ window.getSelection().addRange(r1);
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020.html
new file mode 100644
index 0000000000..64ae924aa9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-020.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Highlight API Test: Highlighting Ligatures</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/">
+<link rel="match" href="custom-highlight-painting-020-ref.html">
+<meta name="assert" value="Highlights should split ligatures.">
+<meta name="fuzzy" content="0-128;0-28">
+<style>
+ @font-face {
+ font-family: 'mplus';
+ src: url('../../../fonts/mplus-1p-regular.woff');
+ }
+ ::highlight(foo) {
+ color:green;
+ text-decoration: blue 2px line-through;
+ }
+ div {
+ font-size: 7em;
+ font-family: mplus, serif;
+ }
+</style>
+<body><div>fii ffi fff</div>
+<script>
+ let textNode = document.body.firstChild.firstChild;
+
+ let r1 = new Range();
+ r1.setStart(textNode, 1);
+ r1.setEnd(textNode, 9);
+ let h1 = new Highlight(r1);
+ CSS.highlights.set("foo", h1);
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021-ref.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021-ref.html
new file mode 100644
index 0000000000..1ec68549b8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021-ref.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Highlight API Test: Highlighting thick text - Reference</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@igalia.com">
+<style>
+ body {
+ -webkit-text-stroke-width: 3px;
+ font-size: 25px;
+ }
+ span {
+ -webkit-text-stroke-width: 0px;
+ background-color: green;
+ }
+</style>
+<body>This<span> thick text </span>should not be highlighted</body>
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021.html
new file mode 100644
index 0000000000..29ee123457
--- /dev/null
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-021.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Highlight API Test: Highlighting thick text</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-text">
+<link rel="match" href="custom-highlight-painting-021-ref.html">
+<meta name="assert" value="Text with -webkit-text-stroke-width should not be highlighted.">
+<meta name="fuzzy" content="0-128;0-4">
+<style>
+ body {
+ -webkit-text-stroke-width: 3px;
+ font-size: 25px;
+ }
+ ::highlight(foo) {
+ background-color: green;
+ }
+</style>
+<body>This thick text should not be highlighted</body>
+<script>
+ let textNode = document.body.firstChild;
+
+ let r1 = new Range();
+ r1.setStart(textNode, 4);
+ r1.setEnd(textNode, 16);
+
+ let h1 = new Highlight(r1);
+
+ CSS.highlights.set("foo", h1);
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001-ref.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001-ref.html
index b46c679c9f..c2bf7ae7bd 100644
--- a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001-ref.html
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001-ref.html
@@ -2,14 +2,25 @@
<link rel="stylesheet" href="../../css-pseudo/support/highlights.css">
<meta charset="utf-8">
<style>
- :root {
+ #verticalRL {
writing-mode: vertical-rl;
}
-
+ #verticalLR {
+ writing-mode: vertical-lr;
+ }
+ #sidewaysRL {
+ writing-mode: sideways-rl;
+ }
+ #sidewaysLR {
+ writing-mode: sideways-lr;
+ }
.highlighted {
background-color: yellow;
color: blue;
}
</style>
<body>
-<div class="highlight_reftest"><span class="highlighted">One two </span><span>three…</span></div>
+<div id="verticalRL" class="highlight_reftest"><span class="highlighted">One two </span><span>three…</span></div>
+<div id="verticalLR" class="highlight_reftest"><span class="highlighted">One two </span><span>three…</span></div>
+<div id="sidewaysRL" class="highlight_reftest"><span class="highlighted">One two </span><span>three…</span></div>
+<div id="sidewaysLR" class="highlight_reftest"><span class="highlighted">One two </span><span>three…</span></div>
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html
index 9fe2bdcd5f..ba25037976 100644
--- a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-vertical-writing-mode-001.html
@@ -5,21 +5,44 @@
<link rel="match" href="custom-highlight-painting-vertical-writing-mode-001-ref.html">
<link rel="stylesheet" href="../../css-pseudo/support/highlights.css">
<meta name="assert" value="::highlight overlay is painted correctly when the highlighted text is in a vertical writing mode">
+<meta name="fuzzy" content="0-255;0-18">
<style>
- :root {
+ #verticalRL {
writing-mode: vertical-rl;
}
+ #verticalLR {
+ writing-mode: vertical-lr;
+ }
+ #sidewaysRL {
+ writing-mode: sideways-rl;
+ }
+ #sidewaysLR {
+ writing-mode: sideways-lr;
+ }
::highlight(example-highlight) {
background-color: yellow;
color: blue;
}
</style>
<body>
-<div class="highlight_reftest"><span>One </span><span>two </span><span>three…</span></div>
+<div id="verticalRL" class="highlight_reftest"><span>One </span><span>two </span><span>three…</span></div>
+<div id="verticalLR" class="highlight_reftest"><span>One </span><span>two </span><span>three…</span></div>
+<div id="sidewaysRL" class="highlight_reftest"><span>One </span><span>two </span><span>three…</span></div>
+<div id="sidewaysLR" class="highlight_reftest"><span>One </span><span>two </span><span>three…</span></div>
<script>
- let r = new Range();
- r.setStart(document.querySelector("div"), 0);
- r.setEnd(document.querySelector("div"), 2);
+ let verticalRLRange = new Range();
+ verticalRLRange.setStart(verticalRL, 0);
+ verticalRLRange.setEnd(verticalRL, 2);
+ let verticalLRRange = new Range();
+ verticalLRRange.setStart(verticalLR, 0);
+ verticalLRRange.setEnd(verticalLR, 2);
+ let sidewaysRLRange = new Range();
+ sidewaysRLRange.setStart(sidewaysRL, 0);
+ sidewaysRLRange.setEnd(sidewaysRL, 2);
+ let sidewaysLRRange = new Range();
+ sidewaysLRRange.setStart(sidewaysLR, 0);
+ sidewaysLRRange.setEnd(sidewaysLR, 2);
- CSS.highlights.set("example-highlight", new Highlight(r));
+ CSS.highlights.set("example-highlight",
+ new Highlight(verticalRLRange, verticalLRRange, sidewaysLRRange, sidewaysRLRange));
</script>
diff --git a/testing/web-platform/tests/css/css-images/gradient/repeating-gradient-hsl-and-oklch.html b/testing/web-platform/tests/css/css-images/gradient/repeating-gradient-hsl-and-oklch.html
index 71e615d919..82e65d1dac 100644
--- a/testing/web-platform/tests/css/css-images/gradient/repeating-gradient-hsl-and-oklch.html
+++ b/testing/web-platform/tests/css/css-images/gradient/repeating-gradient-hsl-and-oklch.html
@@ -1,6 +1,6 @@
<!doctype html>
<html lang="en">
-
+<meta name=fuzzy content="maxDifference=0-1;totalPixels=0-2000">
<head>
<meta charset="utf-8">
<title>Repeating linear gradients in HSL and OKLCH space</title>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001c.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001c.tentative.html
new file mode 100644
index 0000000000..b17f59f887
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001c.tentative.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html class="reftest-wait">
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain-intrinsic-size' on a canvas element, drawing a PNG image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ canvas {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ object-position: top left;
+ contain: size;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ contain-intrinsic-width: 32px;
+ contain-intrinsic-height: 48px;
+ }
+ .small {
+ contain-intrinsic-width: 8px;
+ contain-intrinsic-height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ <script>
+ function drawImageToCanvases(imageURI) {
+ var image = new Image();
+ image.onload = function() {
+ var canvasElems = document.getElementsByTagName("canvas");
+ for (var i = 0; i < canvasElems.length; i++) {
+ var ctx = canvasElems[i].getContext("2d");
+ ctx.drawImage(image, 0, 0);
+ }
+ document.documentElement.removeAttribute("class");
+ }
+ image.src = imageURI;
+ }
+ </script>
+ </head>
+ <body onload="drawImageToCanvases('support/colors-16x8.png')">
+ <!-- big: -->
+ <canvas width="16" height="8" class="big cover"></canvas>
+ <canvas width="16" height="8" class="big contain"></canvas>
+ <canvas width="16" height="8" class="big fill"></canvas>
+ <canvas width="16" height="8" class="big none"></canvas>
+ <canvas width="16" height="8" class="big scaledown"></canvas>
+ <br>
+ <!-- small: -->
+ <canvas width="16" height="8" class="small cover"></canvas>
+ <canvas width="16" height="8" class="small contain"></canvas>
+ <canvas width="16" height="8" class="small fill"></canvas>
+ <canvas width="16" height="8" class="small none"></canvas>
+ <canvas width="16" height="8" class="small scaledown"></canvas>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html
new file mode 100644
index 0000000000..1b121f4eee
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001e.tentative.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain-intrinsic-size' on an embed element, embedding a PNG image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ embed {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ object-position: top left;
+ contain: size;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ contain-intrinsic-width: 32px;
+ contain-intrinsic-height: 48px;
+ }
+ .small {
+ contain-intrinsic-width: 8px;
+ contain-intrinsic-height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <embed src="support/colors-16x8.png" class="big cover"></embed>
+ <embed src="support/colors-16x8.png" class="big contain"></embed>
+ <embed src="support/colors-16x8.png" class="big fill"></embed>
+ <embed src="support/colors-16x8.png" class="big none"></embed>
+ <embed src="support/colors-16x8.png" class="big scaledown"></embed>
+ <br>
+ <!-- small: -->
+ <embed src="support/colors-16x8.png" class="small cover"></embed>
+ <embed src="support/colors-16x8.png" class="small contain"></embed>
+ <embed src="support/colors-16x8.png" class="small fill"></embed>
+ <embed src="support/colors-16x8.png" class="small none"></embed>
+ <embed src="support/colors-16x8.png" class="small scaledown"></embed>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html
new file mode 100644
index 0000000000..2da201f3d6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001i.tentative.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain-intrinsic-size' on img element, embedding a PNG image</title>
+ <link rel="author" title="Eric Portis" href="mailto:e@ericportis.com">
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ img {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ object-position: top left;
+ contain: size;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ contain-intrinsic-width: 32px;
+ contain-intrinsic-height: 48px;
+ }
+ .small {
+ contain-intrinsic-width: 8px;
+ contain-intrinsic-height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <img src="support/colors-16x8.png" class="big cover">
+ <img src="support/colors-16x8.png" class="big contain">
+ <img src="support/colors-16x8.png" class="big fill">
+ <img src="support/colors-16x8.png" class="big none">
+ <img src="support/colors-16x8.png" class="big scaledown">
+ <br>
+ <!-- small: -->
+ <img src="support/colors-16x8.png" class="small cover">
+ <img src="support/colors-16x8.png" class="small contain">
+ <img src="support/colors-16x8.png" class="small fill">
+ <img src="support/colors-16x8.png" class="small none">
+ <img src="support/colors-16x8.png" class="small scaledown">
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001p.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001p.tentative.html
new file mode 100644
index 0000000000..c2c1697c63
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containcontainintrinsicsize-png-001p.tentative.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain-intrinsic-size' on video element with a PNG poster image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ video {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ object-position: top left;
+ contain: size;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ contain-intrinsic-width: 32px;
+ contain-intrinsic-height: 48px;
+ }
+ .small {
+ contain-intrinsic-width: 8px;
+ contain-intrinsic-height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <video poster="support/colors-16x8.png" class="big cover"></video>
+ <video poster="support/colors-16x8.png" class="big contain"></video>
+ <video poster="support/colors-16x8.png" class="big fill"></video>
+ <video poster="support/colors-16x8.png" class="big none"></video>
+ <video poster="support/colors-16x8.png" class="big scaledown"></video>
+ <br>
+ <!-- small: -->
+ <video poster="support/colors-16x8.png" class="small cover"></video>
+ <video poster="support/colors-16x8.png" class="small contain"></video>
+ <video poster="support/colors-16x8.png" class="small fill"></video>
+ <video poster="support/colors-16x8.png" class="small none"></video>
+ <video poster="support/colors-16x8.png" class="small scaledown"></video>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001-ref.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001-ref.tentative.html
new file mode 100644
index 0000000000..0c7c533d31
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001-ref.tentative.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Reftest Reference</title>
+ <link rel="author" title="Eric Portis" href="mailto:e@ericportis.com">
+ <style type="text/css">
+ .objectOuter {
+ border: 1px dashed gray;
+ padding: 1px;
+ float: left;
+ }
+ .objectOuter > * {
+ background-image: url("support/colors-16x8.png");
+ background-repeat: no-repeat;
+ image-rendering: pixelated;
+ background-position: 0% 0%;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ width: 32px;
+ height: 48px;
+ }
+ .small {
+ width: 8px;
+ height: 8px;
+ }
+
+ .cover { background-size: cover; }
+ .contain { background-size: contain; }
+ .fill { background-size: 100% 100%; }
+ .none { background-size: auto auto; }
+ .scaledown { background-size: auto auto; }
+ .small.scaledown { background-size: contain; }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <div class="objectOuter"><div class="big cover"></div></div>
+ <div class="objectOuter"><div class="big contain"></div></div>
+ <div class="objectOuter"><div class="big fill"></div></div>
+ <div class="objectOuter"><div class="big none"></div></div>
+ <div class="objectOuter"><div class="big scaledown"></div></div>
+ <br>
+ <!-- small: -->
+ <div class="objectOuter"><div class="small cover"></div></div>
+ <div class="objectOuter"><div class="small contain"></div></div>
+ <div class="objectOuter"><div class="small fill"></div></div>
+ <div class="objectOuter"><div class="small none"></div></div>
+ <div class="objectOuter"><div class="small scaledown"></div></div>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001c.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001c.tentative.html
new file mode 100644
index 0000000000..43a50adced
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001c.tentative.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html class="reftest-wait">
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain: size' on canvas element, drawing a PNG image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ canvas {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ contain: size;
+ object-position: top left;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ width: 32px;
+ height: 48px;
+ }
+ .small {
+ width: 8px;
+ height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ <script>
+ function drawImageToCanvases(imageURI) {
+ var image = new Image();
+ image.onload = function() {
+ var canvasElems = document.getElementsByTagName("canvas");
+ for (var i = 0; i < canvasElems.length; i++) {
+ var ctx = canvasElems[i].getContext("2d");
+ ctx.drawImage(image, 0, 0);
+ }
+ document.documentElement.removeAttribute("class");
+ }
+ image.src = imageURI;
+ }
+ </script>
+ </head>
+ <body onload="drawImageToCanvases('support/colors-16x8.png')">
+ <!-- big: -->
+ <canvas width="16" height="8" class="big cover"></canvas>
+ <canvas width="16" height="8" class="big contain"></canvas>
+ <canvas width="16" height="8" class="big fill"></canvas>
+ <canvas width="16" height="8" class="big none"></canvas>
+ <canvas width="16" height="8" class="big scaledown"></canvas>
+ <br>
+ <!-- small: -->
+ <canvas width="16" height="8" class="small cover"></canvas>
+ <canvas width="16" height="8" class="small contain"></canvas>
+ <canvas width="16" height="8" class="small fill"></canvas>
+ <canvas width="16" height="8" class="small none"></canvas>
+ <canvas width="16" height="8" class="small scaledown"></canvas>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001e.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001e.tentative.html
new file mode 100644
index 0000000000..37e0f1e447
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001e.tentative.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain: size' on an embed element, embedding a PNG image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ embed {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ contain: size;
+ object-position: top left;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ width: 32px;
+ height: 48px;
+ }
+ .small {
+ width: 8px;
+ height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <embed src="support/colors-16x8.png" class="big cover"></embed>
+ <embed src="support/colors-16x8.png" class="big contain"></embed>
+ <embed src="support/colors-16x8.png" class="big fill"></embed>
+ <embed src="support/colors-16x8.png" class="big none"></embed>
+ <embed src="support/colors-16x8.png" class="big scaledown"></embed>
+ <br>
+ <!-- small: -->
+ <embed src="support/colors-16x8.png" class="small cover"></embed>
+ <embed src="support/colors-16x8.png" class="small contain"></embed>
+ <embed src="support/colors-16x8.png" class="small fill"></embed>
+ <embed src="support/colors-16x8.png" class="small none"></embed>
+ <embed src="support/colors-16x8.png" class="small scaledown"></embed>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001i.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001i.tentative.html
new file mode 100644
index 0000000000..1654cbf36f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001i.tentative.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain: size' on img element, embedding a PNG image</title>
+ <link rel="author" title="Eric Portis" href="mailto:e@ericportis.com">
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ img {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ contain: size;
+ object-position: top left;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ width: 32px;
+ height: 48px;
+ }
+ .small {
+ width: 8px;
+ height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <img src="support/colors-16x8.png" class="big cover">
+ <img src="support/colors-16x8.png" class="big contain">
+ <img src="support/colors-16x8.png" class="big fill">
+ <img src="support/colors-16x8.png" class="big none">
+ <img src="support/colors-16x8.png" class="big scaledown">
+ <br>
+ <!-- small: -->
+ <img src="support/colors-16x8.png" class="small cover">
+ <img src="support/colors-16x8.png" class="small contain">
+ <img src="support/colors-16x8.png" class="small fill">
+ <img src="support/colors-16x8.png" class="small none">
+ <img src="support/colors-16x8.png" class="small scaledown">
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001p.tentative.html b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001p.tentative.html
new file mode 100644
index 0000000000..c3072f9838
--- /dev/null
+++ b/testing/web-platform/tests/css/css-images/object-fit-containsize-png-001p.tentative.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>CSS Test: 'object-fit: contain' and 'contain: size' on video element with a PNG poster image</title>
+ <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10116">
+ <link rel="match" href="object-fit-containsize-png-001-ref.tentative.html">
+ <style type="text/css">
+ video {
+ border: 1px dashed gray;
+ padding: 1px;
+ image-rendering: pixelated;
+ float: left;
+ contain: size;
+ object-position: top left;
+ }
+ br {
+ clear: both;
+ }
+ .big {
+ width: 32px;
+ height: 48px;
+ }
+ .small {
+ width: 8px;
+ height: 8px;
+ }
+
+ .cover { object-fit: cover }
+ .contain { object-fit: contain }
+ .fill { object-fit: fill }
+ .none { object-fit: none }
+ .scaledown { object-fit: scale-down }
+
+ </style>
+ </head>
+ <body>
+ <!-- big: -->
+ <video poster="support/colors-16x8.png" class="big cover"></video>
+ <video poster="support/colors-16x8.png" class="big contain"></video>
+ <video poster="support/colors-16x8.png" class="big fill"></video>
+ <video poster="support/colors-16x8.png" class="big none"></video>
+ <video poster="support/colors-16x8.png" class="big scaledown"></video>
+ <br>
+ <!-- small: -->
+ <video poster="support/colors-16x8.png" class="small cover"></video>
+ <video poster="support/colors-16x8.png" class="small contain"></video>
+ <video poster="support/colors-16x8.png" class="small fill"></video>
+ <video poster="support/colors-16x8.png" class="small none"></video>
+ <video poster="support/colors-16x8.png" class="small scaledown"></video>
+ <br>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-001.html b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-001.html
index 2cbf1c26db..14429b1002 100644
--- a/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-001.html
+++ b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-001.html
@@ -15,6 +15,6 @@
</style>
<div class ="div-parent"">
- <div id="d1"></div>
+
<div id="d2">Testline1<br>Testline2<br>Testline3</div>
</div>
diff --git a/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002-ref.html b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002-ref.html
new file mode 100644
index 0000000000..8c10a80370
--- /dev/null
+++ b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<title>Reference for trimming block-boxes at their first/last formatted lines</title>
+<link rel="help" href="https://drafts.csswg.org/css-inline-3/#leading-trim">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+
+<style>
+.div-parent {
+ outline: 1px solid orange;
+ font-family: Ahem;
+ font-size: 20px;
+ line-height: 1;
+ writing-mode:vertical-lr;
+}
+</style>
+<div class ="div-parent">
+ Test<br><br>
+</div>
diff --git a/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html
new file mode 100644
index 0000000000..fdf5b71d43
--- /dev/null
+++ b/testing/web-platform/tests/css/css-inline/text-box-trim/text-box-trim-half-leading-block-box-002.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<title>Tests block boxes's edges are trimmed at text-over/text-under baselines of their first/last formatted lines</title>
+<link rel="help" href="https://drafts.csswg.org/css-inline-3/#leading-trim">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<link rel="match" href="text-box-trim-half-leading-block-box-002-ref.html">
+
+<style>
+.div-parent {
+ outline: 1px solid orange;
+ font-family: Ahem;
+ font-size: 20px;
+ line-height: 3;
+ writing-mode:vertical-lr;
+}
+</style>
+
+<div class ="div-parent" style="text-box-trim:start">Test</div>
diff --git a/testing/web-platform/tests/css/css-lists/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-lists/WEB_FEATURES.yml
new file mode 100644
index 0000000000..89ef4a2521
--- /dev/null
+++ b/testing/web-platform/tests/css/css-lists/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: counter-set
+ files:
+ - counter-set-*
diff --git a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error-ref.html b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error-ref.html
index a069e4d3ae..e9f54f3ad3 100644
--- a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error-ref.html
+++ b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error-ref.html
@@ -1,7 +1,6 @@
<!DOCTYPE html>
<style>
.container {
- position: fixed;
width: 70px;
height: 126px;
background-color: green;
diff --git a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error.html b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error.html
index 8a02a5b2a6..02a14ad65f 100644
--- a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error.html
+++ b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position-rounding-error.html
@@ -2,11 +2,10 @@
<html class="reftest-wait">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/#basic-shape-interpolation">
<link rel="match" href="clip-path-animation-fixed-position-rounding-error-ref.html">
+<meta name="fuzzy" content="maxDifference=0-64;totalPixels=0-400">
<!--
Test that clip paths on elements with position: fixed draw correctly,
even in scenarios that involve partial pixels
-
- Currently uses fuzzy diff because of crbug.com/1249071
-->
<style>
.container {
diff --git a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position.html b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position.html
index 3ffc2a30a7..20fc8e52d8 100644
--- a/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position.html
+++ b/testing/web-platform/tests/css/css-masking/clip-path/animations/clip-path-animation-fixed-position.html
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
-<meta name=fuzzy content="0-10;0-150">
+<meta name=fuzzy content="0-60;0-350">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/#basic-shape-interpolation">
<link rel="match" href="clip-path-animation-fixed-position-ref.html">
<!--
diff --git a/testing/web-platform/tests/css/css-masking/clip-path/animations/two-clip-path-animation-diff-length4.html b/testing/web-platform/tests/css/css-masking/clip-path/animations/two-clip-path-animation-diff-length4.html
new file mode 100644
index 0000000000..0a893cb756
--- /dev/null
+++ b/testing/web-platform/tests/css/css-masking/clip-path/animations/two-clip-path-animation-diff-length4.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<link rel="help" href="https://drafts.csswg.org/css-shapes-1/#basic-shape-interpolation">
+<link rel="match" href="two-clip-path-animation-diff-length1-ref.html">
+<style>
+ #container {
+ width: 100px;
+ height: 100px;
+ background-color: green;
+ animation: clippath2 0.5s;
+ }
+
+ @keyframes clippath2 {
+ 0% {
+ clip-path: inset(10px 10px);
+ }
+
+ 1% {
+ clip-path: inset(10px 10px);
+ }
+
+ 100% {
+ clip-path: inset(40px 40px);
+ }
+ }
+</style>
+<script src="/common/reftest-wait.js"></script>
+<script src="../../../../web-animations/testcommon.js"></script>
+<script src="../../../../web-animations/resources/timing-utils.js"></script>
+
+<body>
+ <div id="container"></div>
+
+ <script>
+ // This test ensures that a new no-op animation still invalidates paint
+ // and the animation running on the compositor.
+ document.getAnimations()[0].ready.then(() => {
+ let anim = document.getElementById("container").animate(
+ [
+ { clipPath: "inset(10px 10px)" },
+ { clipPath: "inset(10px 10px)" },
+ ],
+ 2000,
+ );
+ anim.ready.then(() => { return requestAnimationFrame(takeScreenshot); });
+ });
+ </script>
+</body>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-masking/mask-image/mask-image-svg-viewport-changed.html b/testing/web-platform/tests/css/css-masking/mask-image/mask-image-svg-viewport-changed.html
new file mode 100644
index 0000000000..156317b251
--- /dev/null
+++ b/testing/web-platform/tests/css/css-masking/mask-image/mask-image-svg-viewport-changed.html
@@ -0,0 +1,18 @@
+<!doctype html>
+<title>Change of viewport affecting mask content</title>
+<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#the-mask-image">
+<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#svg-masks">
+<link rel="match" href="../clip-path/reference/green-100x100.html">
+<div id="container" style="width: 0%">
+ <svg style="width: 100%">
+ <mask id="mask">
+ <rect width="100%" height="100%" fill="white"/>
+ </mask>
+ <rect width="100" height="100" fill="red"/>
+ <rect width="100" height="100" fill="green" mask="url(#mask)"/>
+ </svg>
+</div>
+<script>
+ document.body.offsetTop;
+ document.getElementById('container').style.width = '100%';
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-021.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-021.tentative.html
new file mode 100644
index 0000000000..611cd6f890
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-021.tentative.html
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp hidden content is treated as ink overflow</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-021-ref.html">
+<meta name="assert" content="Any overflowing content hidden from paint by line-clamp is treated as ink overflow and therefore doesn't cause the scrollable overflow rectangle to grow.">
+<style>
+#scrollContainer {
+ overflow: scroll;
+ font: 16px / 32px serif;
+ height: 3lh;
+ border: 1px solid black;
+}
+.clamp {
+ line-clamp: 4;
+ padding: 4px;
+ background-color: yellow;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+
+<div id="scrollContainer">
+
+ <div class="clamp">
+ <div class="pre">Line 1
+Line 2
+Line 3
+Line 4
+Line 5
+Line 6</div>
+
+ <div>Another div</div>
+
+ <table>
+ <tr>
+ <td>A</td>
+ <td>B</td>
+ </tr>
+ <tr>
+ <td>C</td>
+ <td>D</td>
+ </tr>
+ </table>
+ </div>
+
+</div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-abspos-011.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-abspos-011.tentative.html
new file mode 100644
index 0000000000..ab5102a7cf
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-abspos-011.tentative.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp hidden abspos should count as ink overflow</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-abspos-011-ref.html">
+<meta name="assert" content="Any overflowing content hidden from paint by line-clamp is treated as ink overflow, including absolute positioned boxes, and therefore doesn't cause the scrollable overflow rectangle to grow. Meanwhile, non-hidden abspos count as scrollable overflow.">
+<style>
+#scrollContainer {
+ overflow: scroll;
+ position: relative;
+ font: 16px / 32px serif;
+ height: 4lh;
+ border: 1px solid black;
+}
+.clamp {
+ line-clamp: 4;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.abspos {
+ position: absolute;
+ right: 0;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+#abspos1 {
+ top: 4.5lh;
+}
+#abspos2 {
+ top: 6lh;
+}
+</style>
+
+<div id="scrollContainer">
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4<div class="abspos" id="abspos1"></div>
+Line 5
+Line 6<div class="abspos" id="abspos2"></div></div>
+</div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-001.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-001.tentative.html
new file mode 100644
index 0000000000..98bbdcb904
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-001.tentative.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float at the start of a line-clamp</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-001-ref.html">
+<meta name="assert" content="Floats in an inline formatting context inside a line-clamp container are not hidden if they come before the clamp point.">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp"><div class="float"></div>Line 1
+Line 2
+Line 3
+Line 4
+Line 5</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-002.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-002.tentative.html
new file mode 100644
index 0000000000..15379a3de3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-002.tentative.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float at the start of a line-clamp</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-001-ref.html">
+<meta name="assert" content="Floats in a block formatting context inside a line-clamp container are not hidden if they come before the clamp point.">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+<div class="clamp">
+<div class="float"></div>
+<div class="pre">Line 1
+Line 2
+Line 3
+Line 4
+Line 5</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-003.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-003.tentative.html
new file mode 100644
index 0000000000..c203758235
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-003.tentative.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float in line-clamp after clamp point</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/webkit-line-clamp-005-ref.html">
+<meta name="assert" content="Floats in an inline formatting context inside a line-clamp container are always hidden if they come after the clamp point.">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4
+<div class="float"></div>Line 5</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-004.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-004.tentative.html
new file mode 100644
index 0000000000..6213130174
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-004.tentative.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float in line-clamp after clamp point</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/webkit-line-clamp-005-ref.html">
+<meta name="assert" content="Floats in a block formatting context inside a line-clamp container are always hidden if they come after the clamp point.">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+<div class="clamp">
+<div class="pre">Line 1
+Line 2
+Line 3
+Line 4</div>
+<div class="float"></div>
+<div>Line 5</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-005.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-005.tentative.html
new file mode 100644
index 0000000000..9689a83fa7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-005.tentative.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float in line-clamp before clamp point which extends past it</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-005-ref.html">
+<meta name="assert" content="Floats in an inline formatting context inside a line-clamp container are not hidden if they come before the clamp point, even if they extend beyond that point">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4<div class="float"></div>
+Line 5</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-006.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-006.tentative.html
new file mode 100644
index 0000000000..0a709bff19
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-006.tentative.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: float in line-clamp before clamp point which extends past it</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-006-ref.html">
+<meta name="assert" content="Floats in a block formatting context inside a line-clamp container are not hidden if they come before the clamp point, even if they extend beyond that point">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 75px;
+ margin: 4px;
+ background-color: skyblue;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+<div class="clamp">
+<div class="pre">Line 1
+Line 2
+Line 3</div>
+<div class="float"></div>
+<div class="pre">Line 4
+Line 5</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-007.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-007.tentative.html
new file mode 100644
index 0000000000..7ee286fbf4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-007.tentative.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp doesn't propagate to floats</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-007-ref.html">
+<meta name="assert" content="Floats create a new BFC, and line-clamp does not propagate into independent BFCs">
+<style>
+.clamp {
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ margin: 4px;
+ white-space: pre;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4<div class="float">Line A
+Line B
+Line C
+Line D
+Line E</div>
+Line 5</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-008.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-008.tentative.html
new file mode 100644
index 0000000000..c62ba5371a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-008.tentative.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp IFC with floats extending past the clamp point</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-008-ref.html">
+<meta name="assert" content="If the line-clamp container is an independent formatting context, it will clear contained floats before the clamp point, even if they extend beyond the last line. Lines past the clamp point will remain hidden.">
+<style>
+.clamp {
+ display: flow-root;
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+<div class="float"></div>Line 4
+Line 5</div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-009.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-009.tentative.html
new file mode 100644
index 0000000000..f25ac381c0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-009.tentative.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp IFC with floats after the clamp point</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/webkit-line-clamp-005-ref.html">
+<meta name="assert" content="If the line-clamp container is an independent formatting context, it will not clear any floats after the clamp point.">
+<style>
+.clamp {
+ display: flow-root;
+ line-clamp: 4;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4
+Line 5<div class="float"></div></div>
diff --git a/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-010.tentative.html b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-010.tentative.html
new file mode 100644
index 0000000000..a00ff60171
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/line-clamp-with-floats-010.tentative.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Overflow: line-clamp hidden floats should count as ink overflow</title>
+<link rel="author" title="Andreu Botella" href="mailto:abotella@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-overflow-4/#line-clamp">
+<link rel="match" href="reference/line-clamp-with-floats-010-ref.html">
+<meta name="assert" content="Any overflowing content hidden from paint by line-clamp is treated as ink overflow, including floats, and therefore doesn't cause the scrollable overflow rectangle to grow. Meanwhile, non-hidden floats count as scrollable overflow.">
+<style>
+#scrollContainer {
+ overflow: scroll;
+ font: 16px / 32px serif;
+ height: 4lh;
+ border: 1px solid black;
+}
+.clamp {
+ line-clamp: 4;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+
+<div id="scrollContainer">
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4<div class="float"></div>
+Line 5
+Line 6<div class="float"></div></div>
+</div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-021-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-021-ref.html
new file mode 100644
index 0000000000..d794c76e3c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-021-ref.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+#scrollContainer {
+ overflow: scroll;
+ font: 16px / 32px serif;
+ height: 3lh;
+ border: 1px solid black;
+}
+.clamp {
+ padding: 4px;
+ background-color: yellow;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+
+<div id="scrollContainer">
+
+ <div class="clamp">
+ <div class="pre">Line 1
+Line 2
+Line 3
+Line 4…</div>
+ </div>
+
+</div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-abspos-011-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-abspos-011-ref.html
new file mode 100644
index 0000000000..f08b0270e8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-abspos-011-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+#scrollContainer {
+ overflow: scroll;
+ position: relative;
+ font: 16px / 32px serif;
+ height: 4lh;
+ border: 1px solid black;
+}
+.clamp {
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.abspos {
+ position: absolute;
+ top: 4.5lh;
+ right: 0;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+
+<div id="scrollContainer">
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4…<div class="abspos"></div></div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-001-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-001-ref.html
new file mode 100644
index 0000000000..bcd70aa930
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-001-ref.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+.clamp {
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp"><div class="float"></div>Line 1
+Line 2
+Line 3
+Line 4…</div>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-005-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-005-ref.html
new file mode 100644
index 0000000000..d20d6c53dd
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-005-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+.clamp {
+ display: flow-root;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4…<div class="float"></div></div>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-006-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-006-ref.html
new file mode 100644
index 0000000000..9288c4e36f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-006-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+.clamp {
+ display: flow-root;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 75px;
+ margin: 4px;
+ background-color: skyblue;
+}
+.pre {
+ white-space: pre;
+}
+</style>
+<div class="clamp">
+<div class="pre">Line 1
+Line 2
+Line 3</div>
+<div class="float"></div>
+<div class="pre">Line 4…</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-007-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-007-ref.html
new file mode 100644
index 0000000000..6d5390246b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-007-ref.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+.clamp {
+ display: flow-root;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ margin: 4px;
+ white-space: pre;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4…<div class="float">Line A
+Line B
+Line C
+Line D
+Line E</div></div>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-008-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-008-ref.html
new file mode 100644
index 0000000000..50b3d53900
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-008-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+.clamp {
+ display: flow-root;
+ font: 16px / 32px serif;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+<div class="clamp">Line 1
+Line 2
+Line 3
+<div class="float"></div>Line 4…</div>
diff --git a/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-010-ref.html b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-010-ref.html
new file mode 100644
index 0000000000..12b8cdc441
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/reference/line-clamp-with-floats-010-ref.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reference</title>
+<style>
+#scrollContainer {
+ overflow: scroll;
+ font: 16px / 32px serif;
+ height: 4lh;
+ border: 1px solid black;
+}
+.clamp {
+ display: flow-root;
+ padding: 0 4px;
+ white-space: pre;
+ background-color: yellow;
+}
+.float {
+ float: left;
+ width: 50px;
+ height: 50px;
+ margin: 4px;
+ background-color: skyblue;
+}
+</style>
+
+<div id="scrollContainer">
+<div class="clamp">Line 1
+Line 2
+Line 3
+Line 4…<div class="float"></div></div>
+
+<script>
+ window.addEventListener("load", () => {
+ const scrollContainer = document.getElementById("scrollContainer");
+ scrollContainer.scrollTop = scrollContainer.scrollHeight;
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/scroll-with-ancestor-border-radius.html b/testing/web-platform/tests/css/css-overflow/scroll-with-ancestor-border-radius.html
new file mode 100644
index 0000000000..9192c613e9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/scroll-with-ancestor-border-radius.html
@@ -0,0 +1,59 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>Should not scroll out of rounded corner</title>
+<link rel="help" href="https://crbug.com/40277896">
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/dom/events/scrolling/scroll_support.js"></script>
+<style>
+ #container {
+ width: 300px;
+ height: 300px;
+ border-radius: 100px;
+ overflow: hidden;
+ border: 2px solid blue;
+ }
+
+ #scroller {
+ overflow: auto;
+ width: 300px;
+ height: 300px;
+ will-change: scroll-position;
+ }
+
+ .spacer {
+ height: 200vh;
+ }
+
+</style>
+
+<div id="container">
+ <div id="scroller">
+ <div class="spacer"></div>
+ </div>
+</div>
+<div class="spacer"></div>
+
+<script>
+ promise_test(async (t) => {
+ await waitForCompositorCommit();
+ let scrolled = new Promise((resolve) => {
+ let scrollers = [window, document.getElementById("scroller")];
+ let onscroll = (evt) => {
+ for (const scroller of scrollers) {
+ scroller.removeEventListener("scroll", onscroll);
+ }
+ resolve(evt.target.id || "root");
+ }
+ for (const scroller of scrollers) {
+ scroller.addEventListener("scroll", onscroll);
+ }
+ });
+ const actions = new test_driver.Actions().scroll(20, 20, 0, 50, { duration: 50 });
+ actions.send();
+ assert_equals(await scrolled, "root", "Incorrect element scrolled");
+ }, "Wheel-scroll out of rounded corner skips that scroller");
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/scroll-with-border-radius.html b/testing/web-platform/tests/css/css-overflow/scroll-with-border-radius.html
new file mode 100644
index 0000000000..88bb0f1fa8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/scroll-with-border-radius.html
@@ -0,0 +1,51 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>Should not scroll out of rounded corner</title>
+<link rel="help" href="https://crbug.com/40277896">
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/dom/events/scrolling/scroll_support.js"></script>
+<style>
+ #scroller {
+ border-radius: 100px;
+ overflow: auto;
+ width: 300px;
+ height: 300px;
+ border: 2px solid blue;
+ will-change: scroll-position;
+ }
+
+ .spacer {
+ height: 200vh;
+ }
+
+</style>
+
+<div id="scroller">
+ <div class="spacer"></div>
+</div>
+<div class="spacer"></div>
+
+<script>
+ promise_test(async (t) => {
+ await waitForCompositorCommit();
+ let scrolled = new Promise((resolve) => {
+ let scrollers = [window, document.getElementById("scroller")];
+ let onscroll = (evt) => {
+ for (const scroller of scrollers) {
+ scroller.removeEventListener("scroll", onscroll);
+ }
+ resolve(evt.target.id || "root");
+ }
+ for (const scroller of scrollers) {
+ scroller.addEventListener("scroll", onscroll);
+ }
+ });
+ const actions = new test_driver.Actions().scroll(20, 20, 0, 50, { duration: 50 });
+ actions.send();
+ assert_equals(await scrolled, "root", "Incorrect element scrolled");
+ }, "Wheel-scroll out of rounded corner skips that scroller");
+</script>
diff --git a/testing/web-platform/tests/css/css-page/fixedpos-009-print-ref.html b/testing/web-platform/tests/css/css-page/fixedpos-009-print-ref.html
new file mode 100644
index 0000000000..31a6a6724f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/fixedpos-009-print-ref.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<style>
+ body {
+ margin: 0;
+ }
+ .pencil {
+ background-color: black;
+ mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0iTTMgMTcuMjVWMjFoMy43NUwxNy44MSA5Ljk0bC0zLjc1LTMuNzVMMyAxNy4yNXpNMjAuNzEgNy4wNGEuOTk2Ljk5NiAwIDAgMCAwLTEuNDFsLTIuMzQtMi4zNGEuOTk2Ljk5NiAwIDAgMC0xLjQxIDBsLTEuODMgMS44MyAzLjc1IDMuNzUgMS44My0xLjgzeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);
+ mask-repeat: no-repeat;
+ width: 36px;
+ height: 36px;
+ }
+ .fakepage {
+ position: relative;
+ height: 100vh;
+ }
+</style>
+<div class="fakepage">
+ <div style="position:absolute; bottom:0; right:0;">
+ <div class="pencil"></div>
+ </div>
+ When printed, there should be two pages. There should be a black pencil in the
+ bottom right corner on both pages.
+</div>
+
+<div class="fakepage">
+ <div style="position:absolute; bottom:0; right:0;">
+ <div class="pencil"></div>
+ </div>
+ Page 2.
+</div>
diff --git a/testing/web-platform/tests/css/css-page/fixedpos-009-print.html b/testing/web-platform/tests/css/css-page/fixedpos-009-print.html
new file mode 100644
index 0000000000..803a077c0a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/fixedpos-009-print.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="http://crbug.com/337791467">
+<link rel="match" href="fixedpos-009-print-ref.html">
+<style>
+ body {
+ margin: 0;
+ }
+ .pencil {
+ background-color: black;
+ mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0iTTMgMTcuMjVWMjFoMy43NUwxNy44MSA5Ljk0bC0zLjc1LTMuNzVMMyAxNy4yNXpNMjAuNzEgNy4wNGEuOTk2Ljk5NiAwIDAgMCAwLTEuNDFsLTIuMzQtMi4zNGEuOTk2Ljk5NiAwIDAgMC0xLjQxIDBsLTEuODMgMS44MyAzLjc1IDMuNzUgMS44My0xLjgzeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);
+ mask-repeat: no-repeat;
+ width: 36px;
+ height: 36px;
+ }
+</style>
+<div style="position:fixed; bottom:0; right:0;">
+ <div class="pencil"></div>
+</div>
+When printed, there should be two pages. There should be a black pencil in the
+bottom right corner on both pages.
+<div style="break-before:page;">
+ Page 2.
+</div>
diff --git a/testing/web-platform/tests/css/css-page/fixedpos-010-print-ref.html b/testing/web-platform/tests/css/css-page/fixedpos-010-print-ref.html
new file mode 100644
index 0000000000..90bd5e7fc3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/fixedpos-010-print-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<style>
+ @page {
+ size: 400px;
+ margin: 0;
+ }
+ @page large {
+ size: 500px 400px;
+ }
+ body {
+ margin: 0;
+ }
+</style>
+This page should <em>not</em> have a blue box.
+<div style="page:large;">
+ <div style="float:right; margin-top:300px; width:100px; height:100px; background:blue;"></div>
+ <div style="width:400px;">
+ This page should have a blue box in the bottom right corner.
+ </div>
+ <div style="break-before:page;">
+ <div style="float:right; margin-top:300px; width:100px; height:100px; background:blue;"></div>
+ <div style="width:400px;">
+ This page should have a blue box in the bottom right corner.
+ </div>
+ </div>
+</div>
+This page should <em>not</em> have a blue box.
diff --git a/testing/web-platform/tests/css/css-page/fixedpos-010-print.html b/testing/web-platform/tests/css/css-page/fixedpos-010-print.html
new file mode 100644
index 0000000000..cdd50828d8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/fixedpos-010-print.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-position-3/#valdef-position-fixed">
+<link rel="match" href="fixedpos-010-print-ref.html">
+<style>
+ @page {
+ size: 400px;
+ margin: 0;
+ }
+ @page large {
+ size: 500px 400px;
+ }
+ body {
+ margin: 0;
+ }
+</style>
+<div style="position:fixed; right:-100px; bottom:0; width:100px; height:100px; background:blue;"></div>
+This page should <em>not</em> have a blue box.
+<div style="page:large; width:400px;">
+ This page should have a blue box in the bottom right corner.
+ <div style="break-before:page;">
+ This page should have a blue box in the bottom right corner.
+ </div>
+</div>
+This page should <em>not</em> have a blue box.
diff --git a/testing/web-platform/tests/css/css-page/page-box-000-print-ref.html b/testing/web-platform/tests/css/css-page/page-box-000-print-ref.html
new file mode 100644
index 0000000000..d39bd73850
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/page-box-000-print-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<style>
+ html {
+ box-sizing: border-box;
+ display: grid;
+ place-items: center;
+ height: 100%;
+ border: 20px solid green;
+ }
+</style>
+This page should have a green border.
diff --git a/testing/web-platform/tests/css/css-page/page-box-000-print.html b/testing/web-platform/tests/css/css-page/page-box-000-print.html
new file mode 100644
index 0000000000..aee317ab97
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/page-box-000-print.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-page-3/#page-properties">
+<link rel="match" href="page-box-000-print-ref.html">
+<style>
+ @page {
+ border: 20px solid green;
+ }
+ html {
+ display: grid;
+ place-items: center;
+ height: 100%;
+ }
+</style>
+This page should have a green border.
diff --git a/testing/web-platform/tests/css/css-page/page-size-012-print-ref.html b/testing/web-platform/tests/css/css-page/page-size-012-print-ref.html
new file mode 100644
index 0000000000..e85e5f0785
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/page-size-012-print-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<style>
+ @page {
+ size: 600px 400px;
+ margin: 0;
+ }
+ body { margin: 0; }
+</style>
+<div style="margin-left:auto; margin-right:50px; writing-mode:vertical-rl; height:400px; background:yellow;">
+ 50px to the left of page box right edge.<br>
+ Page widths larger than heights.<br>
+</div>
+<div style="break-before:page;"></div>
+<div style="margin-left:auto; margin-top:50px; writing-mode:vertical-rl; height:350px; background:yellow;">
+ 50px below the page box top edge.<br>
+</div>
diff --git a/testing/web-platform/tests/css/css-page/page-size-012-print.html b/testing/web-platform/tests/css/css-page/page-size-012-print.html
new file mode 100644
index 0000000000..737b37cbc3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-page/page-size-012-print.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<title>Test vertical writing mode with specified page size and logical margins.</title>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-page-3/#at-page-rule">
+<link rel="help" href="https://www.w3.org/TR/css-page-3/#typedef-page-size-page-size">
+<link rel="match" href="page-size-012-print-ref.html">
+<style>
+ @page {
+ size: 600px 400px;
+ margin: 0;
+ margin-inline-start: 50px;
+ }
+ @page :first {
+ margin-inline-start: 0;
+ margin-block-start: 50px;
+ }
+ html {
+ writing-mode: vertical-rl;
+ }
+ body { margin: 0; }
+</style>
+<div style="background:yellow;">
+ 50px to the left of page box right edge.<br>
+ Page widths larger than heights.<br>
+</div>
+<div style="break-before:page; background:yellow;">
+ 50px below the page box top edge.<br>
+</div>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-004.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-004.html
new file mode 100644
index 0000000000..79188e84b0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-004.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% left in a block container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% left value does not cause the scrollbar to show when shrinking the width of its overflow container.">
+
+<style>
+#scroll {
+ width: 200px;
+ height: 100px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ left: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.width = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-005.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-005.html
new file mode 100644
index 0000000000..b029e59363
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-005.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% left in a grid container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% left value does not cause the scrollbar to show when shrinking the width of its overflow container.">
+
+<style>
+#scroll {
+ display: grid;
+ width: 200px;
+ height: 100px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ left: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.width = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-006.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-006.html
new file mode 100644
index 0000000000..63fa1ebfd8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-left-006.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% left in a flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% left value does not cause the scrollbar to show when shrinking the width of its overflow container.">
+
+<style>
+#scroll {
+ display: flex;
+ width: 200px;
+ height: 100px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ left: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.width = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-002.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-002.html
new file mode 100644
index 0000000000..29833ccae0
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-002.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with auto margin in flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#staticpos-rect">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1488080">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element aligning with 'auto' margin still honors the sticky positioning.">
+
+<style>
+#container{
+ width: 100px;
+ height: 100px;
+ overflow: hidden;
+ background: red;
+}
+.flex {
+ display: flex;
+ flex-direction: column;
+ height: 500px;
+}
+.child {
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: sticky;
+ margin-top: auto;
+ bottom: 0;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="container">
+ <div class="flex">
+ <div class="child"></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-003.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-003.html
new file mode 100644
index 0000000000..2bc1a3ef25
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-margins-003.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with auto margin in block container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#staticpos-rect">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1488080">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element aligning with 'auto' margin still honors the sticky positioning.">
+
+<style>
+#container{
+ width: 100px;
+ height: 100px;
+ overflow: hidden;
+ background: red;
+}
+.block {
+ width: 500px;
+}
+.child {
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: sticky;
+ margin-left: auto;
+ right: 0;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="container">
+ <div class="block">
+ <div class="child">
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-scrolled-remove-sibling-002.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-scrolled-remove-sibling-002.html
new file mode 100644
index 0000000000..870efa417c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-scrolled-remove-sibling-002.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1612561">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that there is no vertical scrollbar after removing the sibling that overflows the scroll container">
+
+<style>
+#scroll {
+ width: 100px;
+ height: 100px;
+ overflow: auto;
+ background: green;
+}
+.sticky {
+ position: sticky;
+ width: 50px;
+ height: 100px;
+ top: 0;
+ margin-bottom: -100px;
+}
+#sibling {
+ width: 50px;
+ height: 500px;
+ background: red;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+ <div id="sibling"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").scrollTop = 200;
+ document.getElementById("sibling").remove();
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-004.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-004.html
new file mode 100644
index 0000000000..bf0b87ab36
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-004.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% top in a block container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% top value does not cause the scrollbar to show when shrinking the height of its container.">
+
+<style>
+#scroll {
+ width: 100px;
+ height: 200px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ top: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.height = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-005.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-005.html
new file mode 100644
index 0000000000..5f76a722b5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-005.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% top in a grid container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% top value does not cause the scrollbar to show when shrinking the height of its container.">
+
+<style>
+#scroll {
+ display: grid;
+ width: 100px;
+ height: 200px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ top: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.height = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-006.html b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-006.html
new file mode 100644
index 0000000000..4ac5310bf3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/sticky/position-sticky-top-006.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Position Test: Test position:sticky element with 100% top in a flex container</title>
+<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
+<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
+<link rel="help" href="https://drafts.csswg.org/css-position/#sticky-pos">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1748891">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1835705">
+<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="This test verifies that a position:sticky element with 100% top value does not cause the scrollbar to show when shrinking the height of its container.">
+
+<style>
+#scroll {
+ display: flex;
+ width: 100px;
+ height: 200px;
+ overflow: auto;
+ background: red;
+}
+.sticky {
+ position: sticky;
+ width: 100px;
+ height: 100px;
+ top: 100%;
+ background: green;
+}
+</style>
+
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="scroll">
+ <div class="sticky"></div>
+</div>
+
+<script>
+window.onload = () => {
+ document.getElementById("scroll").style.height = "100px";
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-properties-values-api/crashtests/computed-property-universal-syntax.html b/testing/web-platform/tests/css/css-properties-values-api/crashtests/computed-property-universal-syntax.html
new file mode 100644
index 0000000000..b87f03b2df
--- /dev/null
+++ b/testing/web-platform/tests/css/css-properties-values-api/crashtests/computed-property-universal-syntax.html
@@ -0,0 +1,20 @@
+<!doctype html>
+<meta charset=utf8>
+<style>
+@property --my-registered-property {
+ syntax: "<color>";
+ inherits: false;
+ initial-value: #f0f2f5;
+}
+
+.outer {
+ --unregistered-property: var(--my-registered-property);
+}
+
+.inner {
+ --unregistered-property: #c6cfdb;
+}
+</style>
+<div class="outer">
+ <div class="inner"></div>
+</div>
diff --git a/testing/web-platform/tests/css/css-properties-values-api/registered-property-computation.html b/testing/web-platform/tests/css/css-properties-values-api/registered-property-computation.html
index f4c718b139..8ca9d4499a 100644
--- a/testing/web-platform/tests/css/css-properties-values-api/registered-property-computation.html
+++ b/testing/web-platform/tests/css/css-properties-values-api/registered-property-computation.html
@@ -155,6 +155,14 @@ test_computed_value('<color>', '#badbee33', 'rgba(186, 219, 238, 0.2)');
test_computed_value('<color>', 'tomato', 'rgb(255, 99, 71)');
test_computed_value('<color>', 'plum', 'rgb(221, 160, 221)');
test_computed_value('<color>', 'currentcolor', 'currentcolor');
+test_computed_value('<color>', 'color-mix(in srgb, black, white)', 'color(srgb 0.5 0.5 0.5)');
+test_computed_value('<color>', 'color-mix(in srgb, currentcolor, red)', 'color-mix(in srgb, currentcolor, rgb(255, 0, 0))');
+test_computed_value('<color>', 'color-mix(in srgb, currentcolor, #ffffff 70%)', 'color-mix(in srgb, currentcolor 30%, rgb(255, 255, 255))');
+test_computed_value('<color>', 'color-mix(in srgb, currentcolor 20%, #ffffff 20%)', 'color-mix(in srgb, currentcolor 20%, rgb(255, 255, 255) 20%)');
+test_computed_value('<color>', 'light-dark(currentcolor, red)', 'currentcolor');
+test_computed_value('<color>', 'light-dark(lime, red)', 'rgb(0, 255, 0)');
+test_computed_value('<color>', 'color(from lime srgb g g g)', 'color(srgb 1 1 1)');
+test_computed_value('<color>', 'color(srgb 1 1 1 / calc(NaN))', 'color(srgb 1 1 1 / 0)');
// Custom ident values that look like color keywords should not be converted.
test_computed_value('*', 'tomato', 'tomato');
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002-ref.html
deleted file mode 100644
index 17629a6dba..0000000000
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002-ref.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!doctype html>
-<meta charset="utf-8">
-<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
-<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
-<style>
- main {
- font-size: 7em;
- margin: 0.5em;
- }
- main::selection {
- color: black;
- background-color: transparent;
- }
- main > .control > span::selection,
- main > .bg > span::selection {
- color: white;
- background-color: green;
- }
- main > .fg > span::selection {
- color: green;
- background-color: white;
- }
-</style>
-<p>Test passes if the words below are (respectively): white on green, green on white, white on green.
-<!--
- The element tree below is intentionally the same shape as the
- test, despite the fact that we might be able to simplify it. This
- is because multiple impls (including Gecko and Blink) split the
- background paints accordingly, which can obscure ink overflow in
- some of the highlighted text (especially “f”).
--->
-<main class="highlight_reftest"
- ><span class="control"><span>foo</span></span
- > <span class="fg"><span>b</span></span
- ><span class="fg"><span>a</span></span
- ><span class="fg"><span>r</span></span
- > <span class="bg"><span>b</span></span
- ><span class="bg"><span>a</span></span
- ><span class="bg"><span>z</span></span
- ></main>
-<script>selectNodeContents(document.querySelector("main"));</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002.html
deleted file mode 100644
index c01d3c796e..0000000000
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-002.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<!doctype html>
-<meta charset="utf-8">
-<title>CSS Pseudo-Elements Test: highlight cascade: custom properties are inherited regardless of inherits flag or inheritedness of referencing property</title>
-<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
-<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
-<link rel="match" href="highlight-cascade-002-ref.html">
-<meta name="assert" value="This test verifies that, given ::selection styles referencing custom properties, their substitution values are inherited from the parent ::selection styles, even if the property is registered with inherits set to false (--inherits-false) or the referencing property is not an inherited property (background-color). All custom properties are treated as inherited when used in highlight styles in any way.">
-<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
-<style>
- /*
- Register the custom properties, other than --unregistered,
- which would be an inherited property [css-variables-1].
- */
- @property --control {
- syntax: "<color>";
- initial-value: green;
- inherits: false;
- }
- @property --inherits-false {
- syntax: "<color>";
- initial-value: red;
- inherits: false;
- }
- @property --inherits-true {
- syntax: "<color>";
- initial-value: red;
- inherits: true;
- }
-
- main {
- font-size: 7em;
- margin: 0.5em;
- }
- main::selection {
- /*
- Don’t visibly highlight the spaces between words.
- */
- color: black;
- background-color: transparent;
- }
-
- /*
- Non-highlight control: if this text is white on red (inherit)
- rather than white on green (initial), then @property is not
- supported well enough to make this test meaningful.
- */
- main > .control {
- --control: red;
- }
- main > .control > span {
- color: white;
- background-color: var(--control);
- }
-
- main > *::selection {
- --inherits-false: green;
- --inherits-true: green;
- --unregistered: green;
- }
-
- /*
- Foreground tests: if the foreground of this text is red or
- black (initial) rather than green (inherit), then custom
- properties are not being inherited in highlight styles.
-
- color is an inherited property, but that shouldn’t matter.
- */
- main > .fg > span::selection {
- background-color: white;
- }
- main > .fg.inherits-false > span::selection {
- color: var(--inherits-false);
- }
- main > .fg.inherits-true > span::selection {
- color: var(--inherits-true);
- }
- main > .fg.unregistered > span::selection {
- color: var(--unregistered);
- }
-
- /*
- Background tests: if the background of this text is red or
- black (initial) rather than green (inherit), then custom
- properties are not being inherited in highlight styles.
-
- background-color is not an inherited property, but that
- shouldn’t matter.
- */
- main > .bg > span::selection {
- color: white;
- }
- main > .bg.inherits-false > span::selection {
- background-color: var(--inherits-false);
- }
- main > .bg.inherits-true > span::selection {
- background-color: var(--inherits-true);
- }
- main > .bg.unregistered > span::selection {
- background-color: var(--unregistered);
- }
-</style>
-<p>Test passes if the words below are (respectively): white on green, green on white, white on green.
-<main class="highlight_reftest"
- ><span class="control"><span>foo</span></span
- > <span class="fg inherits-false"><span>b</span></span
- ><span class="fg inherits-true"><span>a</span></span
- ><span class="fg unregistered"><span>r</span></span
- > <span class="bg inherits-false"><span>b</span></span
- ><span class="bg inherits-true"><span>a</span></span
- ><span class="bg unregistered"><span>z</span></span
- ></main>
-<script>
- const main = document.querySelector("main");
- selectRangeWith(range => {
- range.selectNodeContents(main);
- range.setStart(main, 2);
- range.setEnd(main, 9);
- });
-</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-008.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade-008.html
deleted file mode 100644
index 10ca924b8f..0000000000
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-008.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<title>Custom property values from the root element</title>
-<link rel="author" title="Stephen Chenney" href="mailto:schenney@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
-<link rel="match" href="highlight-cascade-008-ref.html">
-<meta name="assert" value="This test verifies that when a custom property is not found in highlight cascade, its value is taken from the root element.">
-<meta name="fuzzy" content="0-255;0-10">
-<script src="support/selections.js"></script>
-<style>
- :root {
- --background-color: green;
- --decoration-color: purple;
- }
- ::selection {
- --decoration-color: yellow;
- }
- div::selection {
- background-color: var(--background-color, red);
- text-decoration-line: underline;
- text-decoration-style: line;
- text-decoration-color: var(--decoration-color, red);
- }
- span::selection {
- --background-color: blue;
- background-color: var(--background-color, red);
- }
-</style>
-<div style="width: 300px">PASS if background-color is green when selected, <span>except this which is blue</span>, and underline is yellow.</div>
-<script>
- selectNodeContents(document.querySelector("div"));
-</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-009.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade-009.html
deleted file mode 100644
index acc48c7c36..0000000000
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-009.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html>
-<meta charset="utf-8">
-<title>CSS Pseudo-Elements Test: highlight cascade: inheritance of custom properties</title>
-<link rel="author" title="Stephen Chenney" href="mailto:schenney@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
-<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/6641">
-<meta name="assert" content="This test verifies that custom properties used in highlight pseudos are taken from the ::root if not found in the highlight inheritance chain.">
-<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<style>
- :root {
- --background-color: green;
- --decoration-color: purple;
- }
- ::selection {
- --decoration-color: green;
- }
- div::selection {
- --background-color: blue;
- background-color: var(--background-color, red);
- }
-</style>
-<body>
- <div>Some text</div>
-</body>
-<script>
- selectNodeContents(document.querySelector("body"));
-
- const body_selection = getComputedStyle(document.querySelector("body"), "::selection");
- const div_selection = getComputedStyle(document.querySelector("div"), "::selection");
- test(() => void assert_equals(body_selection.getPropertyValue("--background-color"), "green"),
- "body ::selection has the root custom property");
- test(() => void assert_equals(body_selection.getPropertyValue("--decoration-color"), "green"),
- "body ::selection uses its own custom property");
- test(() => void assert_equals(div_selection.getPropertyValue("--decoration-color"), "green"),
- "div::selection inherits a custom property");
- test(() => void assert_equals(div_selection.getPropertyValue("--background-color"), "blue"),
- "div::selection uses its own custom property");
-</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001-ref.html
index 25dbeadb2e..2a2907b10a 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001-ref.html
@@ -6,7 +6,7 @@
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
{
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001.html
index 6068a076f0..f441adf3b9 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-001.html
@@ -15,7 +15,7 @@
<meta name="assert" content="This test is an adaptation (or modified version) of Example 11 (#example-c35bf49a). The 'div &gt; span::selection' selector has an higher specificity than the 'span::selection' selector.">
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
{
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-002.html
index 50be805f01..d10bdb9b04 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-002.html
@@ -15,7 +15,7 @@
<meta name="assert" content="This test is an adaptation (or modified version) of Example 12 (#example-97480f68). In this test, &ltspan&gt; element's ::selection matches the ::selection { background-color: green; } rule and not the div#test::selection rule because '*' is implied when a tag selector is missing.">
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
{
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-004-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004-ref.html
index e755283a32..9b8507c4cc 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-004-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004-ref.html
@@ -6,7 +6,7 @@
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
{
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-004.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004.html
index 56abba7156..295321a172 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-004.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-004.html
@@ -19,7 +19,7 @@
https://www.w3.org/TR/css-pseudo-4/#highlight-cascade
-->
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
{
diff --git a/testing/web-platform/tests/css/css-pseudo/reference/cascade-highlight-005-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005-ref.html
index d1e597e05b..d1e597e05b 100644
--- a/testing/web-platform/tests/css/css-pseudo/reference/cascade-highlight-005-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005-ref.html
diff --git a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-005.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005.html
index 2c6ba60270..25ad85fe70 100644
--- a/testing/web-platform/tests/css/css-pseudo/cascade-highlight-005.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/cascade-highlight-005.html
@@ -6,7 +6,7 @@
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
<link rel="help" href="https://www.w3.org/TR/css-pseudo-4/#highlight-cascade">
- <link rel="match" href="reference/cascade-highlight-005-ref.html">
+ <link rel="match" href="cascade-highlight-005-ref.html">
<meta name="assert" content="In this test, 'background-color' has not been specified a value for the highlight pseudo-element of the span element. Since the span's parent element has an highlight pseudo-element also, then the span's background color for its highlight pseudo-element should be inherited from its parent highlight pseudo-element. Therefore the span element should have a green background color.">
@@ -28,7 +28,7 @@
https://www.w3.org/TR/css-pseudo-4/#highlight-cascade
-->
- <link rel="stylesheet" href="support/highlights.css">
+ <link rel="stylesheet" href="../support/highlights.css">
<style>
div
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001-ref.html
index a18690962f..b96ffce5ab 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001.html
index f237e9eca7..18b3635b3f 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-001.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-cascade-001-ref.html">
<meta name="assert" value="This test verifies that, given ::selection styles with both color and background-color declared as unset, both properties inherit their values from the parent ::selection styles. All properties become inherited for the purposes of deciding whether unset should mean initial or inherit.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-003-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003-ref.html
index 256c28ba0c..68964149ba 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-003-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003-ref.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<title>Initial custom property values in :root::selection rule</title>
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
:root::selection {
background-color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-003.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003.html
index 61bc46d4c5..b29f37528c 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-003.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-003.html
@@ -3,7 +3,7 @@
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
<link rel="match" href="highlight-cascade-003-ref.html">
<meta name="assert" value="This test verifies that the initial value given in a custom property registration is respected, when the property is referenced in ::selection styles but no value is defined. The initial value is not the guaranteed-invalid value, so the fallback value in var() is not used.">
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
@property --bg {
syntax: "<color>";
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-004-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004-ref.html
index f9bf83f9c1..5845e93620 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-004-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004-ref.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<title>Initial custom property values in div::selection rule</title>
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
div::selection {
background-color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-004.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004.html
index eb181096ce..f3155bcec6 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-004.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-004.html
@@ -3,7 +3,7 @@
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
<link rel="match" href="highlight-cascade-004-ref.html">
<meta name="assert" value="This test verifies that the initial value given in a custom property registration is respected, when the property is referenced in ::selection styles but no value is defined. The initial value is not the guaranteed-invalid value, so the fallback value in var() is not used.">
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
@property --bg {
syntax: "<color>";
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-005-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005-ref.html
index 20d2b0bdb3..f0ea3faa76 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-005-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005-ref.html
@@ -3,7 +3,7 @@
<title>CSS Pseudo-Elements Test: highlight cascade: inheritance with both universal and non-universal rules</title>
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
nav::selection,
span::selection,
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-005.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005.html
index 008f56aded..958bdf6544 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-005.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-005.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-cascade-005-ref.html">
<meta name="assert" content="This test verifies that, given both universal and non-universal ::selection rules, the subject of the non-universal rule has styles from both rules with the non-universal styles overriding the universal styles (due to the cascade), its descendants have styles from both rules with the universal styles overriding the non-universal styles (due to highlight inheritance), and its siblings have the universal styles only.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
/* * (universal) */::selection {
background-color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-006-ref.xhtml b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006-ref.xhtml
index df0a56123e..643dd79325 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-006-ref.xhtml
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006-ref.xhtml
@@ -2,7 +2,7 @@
<meta charset="utf-8"/>
<title>CSS Pseudo-Elements Test: highlight cascade: inheritance with both universal and namespace-universal rules</title>
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com"/>
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
main * { all: initial; display: block; }
::selection { color: green; }
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-006.xhtml b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006.xhtml
index fb6d07f8f0..4a37af7c25 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-006.xhtml
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-006.xhtml
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade"/>
<link rel="match" href="highlight-cascade-006-ref.xhtml"/>
<meta name="assert" content="This test verifies that, given both universal ::selection rules and ::selection rules that are actually non-universal due to an explicit namespace prefix or default @namespace rule, the non-universal rules are not erroneously treated as universal."/>
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
main * { all: initial; display: block; }
::selection { color: green; } /* 1. universal (* means *|* if there is no default @namespace) */
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-007.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-007.html
index de0322d910..df79d8dff5 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-007.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-007.html
@@ -5,8 +5,8 @@
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7591">
<meta name="assert" content="This test verifies that non-applicable property declarations are ignored in highlight pseudos, that the computed values of ‘font-size’ and ‘line-height’ in highlight pseudos are taken from the originating element, and that ‘text-shadow’ in highlight pseudos respects these values when given ‘em’ and ‘lh’ units.">
-<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<script src="../support/selections.js"></script>
+<link rel="stylesheet" href="../support/highlights.css">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-008-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008-ref.html
index c87ddcf93c..70b9d958b5 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-cascade-008-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008-ref.html
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<title>Custom property values from the root element</title>
-<script src="support/selections.js"></script>
+<script src="../support/selections.js"></script>
<style>
div::selection {
background-color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008.html
new file mode 100644
index 0000000000..720e2f0469
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-008.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<title>Custom property values from the originating element</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
+<link rel="match" href="highlight-cascade-008-ref.html">
+<meta name="assert" value="This test verifies that custom properties from the originating element are used to resolve var() on highlight pseudos.">
+<meta name="fuzzy" content="0-255;0-10">
+<script src="../support/selections.js"></script>
+<style>
+ :root {
+ --background-color: green;
+ --decoration-color: yellow;
+ }
+ ::selection {
+ --background-color: cyan;
+ --decoration-color: magenta;
+ }
+ div::selection {
+ background-color: var(--background-color, red);
+ text-decoration-line: underline;
+ text-decoration-style: line;
+ text-decoration-color: var(--decoration-color, red);
+ }
+ span {
+ --background-color: blue;
+ }
+ span::selection {
+ --background-color: purple;
+ background-color: var(--background-color, red);
+ }
+</style>
+<div style="width: 300px">PASS if background-color is green when selected, <span>except this which is blue</span>, and underline is yellow.</div>
+<script>
+ selectNodeContents(document.querySelector("div"));
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-009.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-009.html
new file mode 100644
index 0000000000..e95de9a781
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-cascade-009.html
@@ -0,0 +1,41 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: highlight cascade: inheritance of custom properties</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/6641">
+<meta name="assert" content="This test verifies that custom properties used in highlight pseudos are taken from the originating element.">
+<script src="../support/selections.js"></script>
+<link rel="stylesheet" href="../support/highlights.css">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ :root {
+ --background-color: green;
+ --decoration-color: green;
+ }
+ ::selection {
+ --decoration-color: purple;
+ }
+ div::selection {
+ --background-color: blue;
+ background-color: var(--background-color, red);
+ }
+</style>
+<body>
+ <div>Some text</div>
+</body>
+<script>
+ selectNodeContents(document.querySelector("body"));
+
+ const body_selection = getComputedStyle(document.querySelector("body"), "::selection");
+ const div_selection = getComputedStyle(document.querySelector("div"), "::selection");
+ test(() => void assert_equals(body_selection.getPropertyValue("--background-color"), "green"),
+ "body ::selection uses the originating custom property");
+ test(() => void assert_equals(body_selection.getPropertyValue("--decoration-color"), "green"),
+ "body ::selection does not use its own custom property");
+ test(() => void assert_equals(div_selection.getPropertyValue("--decoration-color"), "green"),
+ "div::selection uses the originating element custom property");
+ test(() => void assert_equals(div_selection.getPropertyValue("--background-color"), "green"),
+ "div::selection does not use its own custom property");
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-inheritance.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html
index d67ae82881..d67ae82881 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-inheritance.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-inheritance.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-visited.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html
index 207cb7b7dd..207cb7b7dd 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed-visited.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed-visited.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html
index 97c31809df..97c31809df 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-computed.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-computed.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001-ref.html
index 93e2002f4a..d3a3d49797 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001-ref.html
@@ -3,7 +3,7 @@
<meta charset="utf-8" />
<title>CSS Pseudo-Elements Test: Reference</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html
index 76d80d228a..efdb9016bc 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-001.html
@@ -5,7 +5,7 @@
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-painting-properties-001-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<meta name="fuzzy" content="0-50;0-150">
<style>
div {
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002-ref.html
index 11ca501065..6f9066cba8 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002-ref.html
@@ -3,7 +3,7 @@
<meta charset="utf-8" />
<title>CSS Pseudo-Elements Test: Reference</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html
index ac3677c1cf..d02dc9e8c5 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-properties-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-properties-002.html
@@ -5,7 +5,7 @@
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-painting-properties-002-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<meta name="fuzzy" content="0-50;0-150">
<style>
div {
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001-ref.html
index d6ee33cda7..1ab60db5c8 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001-ref.html
@@ -1,5 +1,5 @@
<!DOCTYPE html><meta charset="utf-8">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html
index 141556f935..c82da8c380 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-001.html
@@ -4,7 +4,7 @@
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-painting-text-shadow-001-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002-ref.html
index fb2696a55a..6452a34d0e 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002-ref.html
@@ -1,5 +1,5 @@
<!DOCTYPE html><meta charset="utf-8">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html
index 77858729af..870243f501 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-painting-text-shadow-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-painting-text-shadow-002.html
@@ -4,7 +4,7 @@
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-painting-text-shadow-002-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001-ref.html
index 794796a88f..70ce6b59a4 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001-ref.html
@@ -3,7 +3,7 @@
<meta charset="utf-8" />
<title>CSS Pseudo-Elements Test: Reference</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001.html
index a1512f014d..1869f8ab53 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-001.html
@@ -5,7 +5,7 @@
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-root-explicit-default-001-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
div {
color: lime;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002-ref.html
index 3175948317..b64b007c64 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002-ref.html
@@ -3,7 +3,7 @@
<meta charset="utf-8" />
<title>CSS Pseudo-Elements Test: Reference</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
.highlight_reftest {
color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html
index fc5698faa1..fe6d80be2e 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-explicit-default-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-explicit-default-002.html
@@ -5,7 +5,7 @@
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-text">
<link rel="match" href="highlight-currentcolor-root-explicit-default-002-ref.html">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
.highlight_reftest {
color: green;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html
index ecf787b9b4..ecf787b9b4 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-001.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-002.html
index 420cc5ba15..420cc5ba15 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-002.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-ref.html
index 67ecb8df64..67ecb8df64 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-currentcolor-root-implicit-default-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-currentcolor-root-implicit-default-ref.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001-ref.html
index 14687acb84..102b07b481 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001.html
index 09e5abf9a3..7f370238df 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-001.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-paired-cascade-001-ref.html">
<meta name="assert" value="This test verifies that setting color on ::selection suppresses any UA non-initial used value for background-color. These properties are highlight colors, which are subject to paired cascade.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002-ref.html
index 48eb9911a1..19d731af02 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002.html
index affbe95629..626fc57558 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-002.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-paired-cascade-002-ref.html">
<meta name="assert" value="This test verifies that setting background-color on ::selection suppresses any UA non-initial used value for color. These properties are highlight colors, which are subject to paired cascade.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003-ref.html
index 18885fdc89..638ae00c68 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003.html
index 250e320210..8c621cc777 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-003.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-003.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-paired-cascade-003-ref.html">
<meta name="assert" value="This test verifies that setting text-decoration on ::selection does not suppress any UA non-initial used values for color or background-color. While the former is an applicable (shorthand) property for highlight styles, it is not one of the highlight colors (color or background-color), so paired cascade does not apply.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004-notref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004-notref.html
index 63472b6758..72490b1461 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004-notref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004-notref.html
@@ -1,7 +1,7 @@
<!doctype html>
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
:link, :visited {
color: blue;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004.html
index 61e2b7d7f0..0a73d006b5 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-004.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-004.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-cascade">
<link rel="mismatch" href="highlight-paired-cascade-004-notref.html">
<meta name="assert" value="This test verifies that setting color on ::target-text suppresses any UA non-initial used value for background-color. ::target-text is a highlight pseudo with a recommended UA default background-color that is not initial (Mark), so paired cascade can be observed.">
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
:link, :visited {
color: blue;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005-ref.html
index 0ac5c02b20..862d06e6f6 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005.html
index 50677c811e..4ee6db3a09 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-005.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-005.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-paired-cascade-005-ref.html">
<meta name="assert" value="This test verifies that setting color to unset on ::selection suppresses any UA non-initial used value for background-color. The unset value is defined as both “treated as [inherit or initial depending on whether the property is inherited]” and “effectively erases all declared values occurring earlier in the cascade [(inclusive)]”, which are normally equivalent, but under paired cascade, the former wins.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006-ref.html
index 18885fdc89..638ae00c68 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006-ref.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006-ref.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<link rel="author" name="Delan Azabani" href="mailto:dazabani@igalia.com">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006.html
index 20c03282c8..bef3601ccb 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-paired-cascade-006.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-paired-cascade-006.html
@@ -6,7 +6,7 @@
<link rel="match" href="highlight-paired-cascade-006-ref.html">
<meta name="assert" value="This test verifies that setting color to revert on ::selection does not suppress any UA non-initial used value for background-color. Because the revert value rolls back the cascade, it destroys its own existence as a cascaded value, and this is also true under paired cascade.">
<script src="support/selections.js"></script>
-<link rel="stylesheet" href="support/highlights.css">
+<link rel="stylesheet" href="../support/highlights.css">
<style>
main {
font-size: 7em;
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-computed.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html
index 4a274e1bbd..4a274e1bbd 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-computed.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-computed.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html
index 84c4045a54..84c4045a54 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-inheritance-computed-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-inheritance-computed-001.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-visited-computed-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html
index a2b18effcc..a2b18effcc 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-pseudos-visited-computed-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-cascade/highlight-pseudos-visited-computed-001.html
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001-ref.html
new file mode 100644
index 0000000000..836874df05
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Pseudo Test: Dynamic Custom Properties for Highlights</title>
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@igalia.com">
+<head>
+ <style>
+ ::selection {
+ background-color: green;
+ }
+ </style>
+</head>
+<body>Green background when selected</body>
+<script>
+ window.getSelection().selectAllChildren(document.body);
+</script>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001.html
new file mode 100644
index 0000000000..836ef546fa
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-custom-properties-dynamic-001.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Pseudo Test: Dynamic Custom Properties for Highlights</title>
+<link rel="help" href="https://drafts.csswg.org/css-pseudo/#highlight-styling">
+<link rel="match" href="highlight-custom-properties-dynamic-001-ref.html">
+<link rel="author" title="Stephen Chenney" href="mailto:schenney@igalia.com">
+<meta name="assert" value="Custom property values in highlights update correctly when the property is updated.">
+<head>
+ <style>
+ div {
+ --background-color: red;
+ }
+ ::selection {
+ background-color: var(--background-color, red);
+ }
+ </style>
+</head>
+<div id="originating">Green background when selected</div>
+<script>
+ window.getSelection().selectAllChildren(document.body);
+ requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ originating.style.setProperty("--background-color", "green");
+ requestAnimationFrame(() => takeScreenshot());
+ });
+ });
+</script>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal-ref.html
new file mode 100644
index 0000000000..4ff90afb38
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal-ref.html
@@ -0,0 +1,73 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on highlights horizontal text - reference</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<style>
+ :root {
+ line-height: 1;
+ white-space: break-spaces;
+ }
+ #originating_shadow {
+ font-size: 2em;
+ color: transparent;
+ text-shadow: 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 0;
+ top: 10px;
+ left: 10px;
+ }
+ #originating_text {
+ font-size: 2em;
+ color: black;
+ position: absolute;
+ z-index: 7;
+ top: 10px;
+ left: 10px;
+ }
+ #selection_only {
+ font-size: 2em;
+ color: green;
+ text-shadow: -0.25em -0.25em rgba(0,128,0,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 5;
+ top: 10px;
+ }
+ #target {
+ font-size: 2em;
+ color: blue;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 3;
+ top: 10px;
+ }
+ #both_text {
+ font-size: 2em;
+ color: green;
+ position: absolute;
+ z-index: 4;
+ top: 10px;
+ }
+ #both_shadow {
+ font-size: 2em;
+ color: transparent;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5), -0.25em -0.25em rgba(0,128,0,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 2;
+ top: 10px;
+ }
+</style>
+<p id="originating_shadow">part</p>
+<p id="originating_text">part</p>
+<p id="selection_only">ially selected </p>
+<p id="both_text">ta</p>
+<p id="both_shadow">ta</p>
+<p id="target">rget</p>
+<script>
+ originatingCS = getComputedStyle(originating_text);
+ selection_only.style.left = (parseFloat(originatingCS.width) + parseFloat(originatingCS.left)).toString() + "px";
+ selectionCS = getComputedStyle(selection_only);
+ both_text.style.left = (parseFloat(selectionCS.width) + parseFloat(selectionCS.left)).toString() + "px";
+ both_shadow.style.left = both_text.style.left;
+ bothCS = getComputedStyle(both_text);
+ target.style.left = (parseFloat(bothCS.width) + parseFloat(bothCS.left)).toString() + "px";
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal.html b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal.html
new file mode 100644
index 0000000000..b1762e85ae
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-horizontal.html
@@ -0,0 +1,41 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on highlights horizontal text</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-painting">
+<link rel="match" href="highlight-painting-shadows-horizontal-ref.html">
+<meta name="assert" value="::selection and ::target-text both with shadows are painted in the correct order, including originating element shadows">
+<meta name="fuzzy" content="0-32;0-20">
+<script src="support/selections.js"></script>
+<style>
+ :root {
+ line-height: 1;
+ white-space: pre;
+ }
+ p {
+ font-size: 2em;
+ color: black;
+ text-shadow: 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ }
+ p::selection {
+ color: green;
+ text-shadow: -0.25em -0.25em rgba(0,128,0,0.5);
+ }
+ p::target-text {
+ color: blue;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5);
+ }
+</style>
+<p>partially selected target</p>
+<script>
+ window.location.hash = "#:~:text=target";
+ const target = document.querySelector("p");
+ selectRangeWith(range => {
+ range.selectNodeContents(target);
+ range.setStart(target.childNodes[0], 4);
+ range.setEnd(target.childNodes[0], 21);
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical-ref.html b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical-ref.html
new file mode 100644
index 0000000000..00a6f1c808
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical-ref.html
@@ -0,0 +1,70 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on highlights vertical text - reference</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+ :root {
+ font-family: Ahem;
+ writing-mode: vertical-lr;
+ line-height: 1;
+ white-space: break-spaces;
+ }
+ #originating_shadow {
+ color: transparent;
+ text-shadow: 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 0;
+ top: 10px;
+ left: 10px;
+ }
+ #originating_text {
+ color: black;
+ position: absolute;
+ z-index: 7;
+ top: 10px;
+ left: 10px;
+ }
+ #selection_only {
+ color: green;
+ text-shadow: -0.25em -0.25em rgba(0,128,0,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 5;
+ left: 10px;
+ }
+ #target {
+ color: blue;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 3;
+ left: 10px;
+ }
+ #both_text {
+ color: green;
+ position: absolute;
+ z-index: 4;
+ left: 10px;
+ }
+ #both_shadow {
+ color: transparent;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5), -0.25em -0.25em rgba(0,128,0,0.5), 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ z-index: 2;
+ left: 10px;
+ }
+</style>
+<p id="originating_shadow">part</p>
+<p id="originating_text">part</p>
+<p id="selection_only">ially selected </p>
+<p id="both_text">ta</p>
+<p id="both_shadow">ta</p>
+<p id="target">rget</p>
+<script>
+ originatingCS = getComputedStyle(originating_text);
+ selection_only.style.top = (parseFloat(originatingCS.height) + parseFloat(originatingCS.top)).toString() + "px";
+ selectionCS = getComputedStyle(selection_only);
+ both_text.style.top = (parseFloat(selectionCS.height) + parseFloat(selectionCS.top)).toString() + "px";
+ both_shadow.style.top = both_text.style.top;
+ bothCS = getComputedStyle(both_text);
+ target.style.top = (parseFloat(bothCS.height) + parseFloat(bothCS.top)).toString() + "px";
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical.html b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical.html
new file mode 100644
index 0000000000..7187c34da4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-painting-shadows-vertical.html
@@ -0,0 +1,43 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on highlights vertical text</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-painting">
+<link rel="match" href="highlight-painting-shadows-vertical-ref.html">
+<meta name="assert" value="::selection and ::target-text both with shadows are painted in the correct order, including originating element shadows">
+<meta name="fuzzy" content="0-32;0-4">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<script src="support/selections.js"></script>
+<style>
+ :root {
+ font-family: Ahem;
+ writing-mode: vertical-lr;
+ line-height: 1;
+ white-space: pre;
+ }
+ p {
+ color: black;
+ text-shadow: 0.1em 0.1em rgba(0,0,0,0.5);
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ }
+ p::selection {
+ color: green;
+ text-shadow: -0.25em -0.25em rgba(0,128,0,0.5);
+ }
+ p::target-text {
+ color: blue;
+ text-shadow: 0.25em 0.25em rgba(0,0,128,0.5);
+ }
+</style>
+<p>partially selected target</p>
+<script>
+ window.location.hash = "#:~:text=target";
+ const target = document.querySelector("p");
+ selectRangeWith(range => {
+ range.selectNodeContents(target);
+ range.setStart(target.childNodes[0], 4);
+ range.setEnd(target.childNodes[0], 21);
+ });
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-styling-001.html b/testing/web-platform/tests/css/css-pseudo/highlight-styling-001.html
index 63d8ee1eda..7fe76d1938 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-styling-001.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-styling-001.html
@@ -1,10 +1,10 @@
<!doctype html>
<meta charset="utf-8">
-<title>CSS Pseudo-Elements Test: highlight styling: custom properties are applicable properties in highlight pseudos</title>
+<title>CSS Pseudo-Elements Test: highlight styling: custom properties are not applicable properties in highlight pseudos</title>
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-styling">
<link rel="match" href="highlight-styling-001-ref.html">
-<meta name="assert" value="This test verifies that ::selection styles can set and reference custom properties.">
+<meta name="assert" value="This test verifies that ::selection styles cannot set custom properties.">
<script src="support/selections.js"></script>
<link rel="stylesheet" href="support/highlights.css">
<style>
@@ -13,9 +13,9 @@
margin: 0.5em;
}
main::selection {
- --x: green;
+ --x: red;
color: white;
- background-color: var(--x);
+ background-color: var(--x, green);
}
</style>
<p>Test passes if the text below is white on green.
diff --git a/testing/web-platform/tests/css/css-pseudo/highlight-styling-002.html b/testing/web-platform/tests/css/css-pseudo/highlight-styling-002.html
index 2f7cc29128..351eacac88 100644
--- a/testing/web-platform/tests/css/css-pseudo/highlight-styling-002.html
+++ b/testing/web-platform/tests/css/css-pseudo/highlight-styling-002.html
@@ -1,21 +1,21 @@
<!doctype html>
<meta charset="utf-8">
-<title>CSS Pseudo-Elements Test: highlight styling: originating custom property values do not affect highlight pseudos</title>
+<title>CSS Pseudo-Elements Test: highlight styling: originating custom property values are used for highlight pseudos</title>
<link rel="author" title="Delan Azabani" href="mailto:dazabani@igalia.com">
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-styling">
<link rel="match" href="highlight-styling-002-ref.html">
-<meta name="assert" value="This test verifies that custom property values set in originating elements do not participate in the substitution of those properties in ::selection styles.">
+<meta name="assert" value="This test verifies that custom property values on the originating element are used for resolving var() in a selection pseudo.">
<script src="support/selections.js"></script>
<link rel="stylesheet" href="support/highlights.css">
<style>
main {
font-size: 7em;
margin: 0.5em;
- --x: red;
+ --x: green;
}
main::selection {
color: white;
- background-color: var(--x, green);
+ background-color: var(--x, red);
}
</style>
<p>Test passes if the text below is white on green.
diff --git a/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001-ref.html b/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001-ref.html
new file mode 100644
index 0000000000..f75017d5ec
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001-ref.html
@@ -0,0 +1,12 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: selected highlight highlight painting - reference</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<style>
+ div {
+ background-color: lightblue;
+ color: green;
+ width: fit-content;
+ }
+</style>
+<div id="content">When selected, the highlight color should remain.</div>
diff --git a/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001.html b/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001.html
new file mode 100644
index 0000000000..57078cf83b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/selection-over-highlight-001.html
@@ -0,0 +1,24 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: selected highlight highlight painting</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-painting">
+<meta name="assert" value="Checks that the highlight colors persist when selected.">
+<link rel="match" href="selection-over-highlight-001-ref.html">
+<style>
+ ::selection {
+ background-color: lightblue;
+ }
+ ::highlight(green) {
+ color: green;
+ }
+</style>
+<div id="content">When selected, the highlight color should remain.</div>
+<script>
+ let range = new Range();
+ range.setStart(content, 0);
+ range.setEnd(content, 1);
+ CSS.highlights.set("green", new Highlight(range));
+
+ document.execCommand("selectAll");
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/target-text-dynamic-004.html b/testing/web-platform/tests/css/css-pseudo/target-text-dynamic-004.html
index 279ec674b4..35f2542c76 100644
--- a/testing/web-platform/tests/css/css-pseudo/target-text-dynamic-004.html
+++ b/testing/web-platform/tests/css/css-pseudo/target-text-dynamic-004.html
@@ -18,7 +18,7 @@
</style>
<p>The test passes if the following word has a magenta background.</p>
-<div>Example</div>
+<div><span>Example</span></div>
<script>
location.href = "#:~:text=Example";
diff --git a/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal-ref.html b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal-ref.html
new file mode 100644
index 0000000000..6189f844b5
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal-ref.html
@@ -0,0 +1,19 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on horizontal target text - reference</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<style>
+ :root {
+ line-height: 1;
+ }
+ p {
+ font-size: 2em;
+ color: black;
+ text-shadow: 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+ span {
+ color: green;
+ text-shadow: 0.25em 0.25em 3px rgba(0,0,128,0.5), 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+</style>
+<p>the <span>target</span> should have a shadow</p>
diff --git a/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal.html b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal.html
new file mode 100644
index 0000000000..1ded1360ff
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-horizontal.html
@@ -0,0 +1,25 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on horizontal target text</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-painting">
+<link rel="match" href="target-text-shadow-horizontal-ref.html">
+<meta name="assert" value="::target-text with a shadow is painted, including originating element shadows">
+<style>
+ :root {
+ line-height: 1;
+ }
+ p {
+ font-size: 2em;
+ color: black;
+ text-shadow: 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+ p::target-text {
+ color: green;
+ text-shadow: 0.25em 0.25em 3px rgba(0,0,128,0.5);
+ }
+</style>
+<p>the target should have a shadow</p>
+<script>
+ window.location.hash = "#:~:text=target";
+</script>
diff --git a/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical-ref.html b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical-ref.html
new file mode 100644
index 0000000000..cd9e179053
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical-ref.html
@@ -0,0 +1,20 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on vertical target text - reference</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<style>
+ :root {
+ line-height: 1;
+ writing-mode: vertical-lr;
+ }
+ p {
+ font-size: 2em;
+ color: black;
+ text-shadow: 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+ span {
+ color: green;
+ text-shadow: 0.25em 0.25em 3px rgba(0,0,128,0.5), 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+</style>
+<p>the <span>target</span> should have a shadow</p>
diff --git a/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical.html b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical.html
new file mode 100644
index 0000000000..088f6fc175
--- /dev/null
+++ b/testing/web-platform/tests/css/css-pseudo/target-text-shadow-vertical.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Pseudo-Elements Test: Shadows on vertical target text</title>
+<link rel="author" name="Stephen Chenney" href="mailto:schenney@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#highlight-painting">
+<link rel="match" href="target-text-shadow-vertical-ref.html">
+<meta name="assert" value="::target-text with a shadow is painted, including originating element shadows">
+<style>
+ :root {
+ line-height: 1;
+ writing-mode: vertical-lr;
+ }
+ p {
+ font-size: 2em;
+ color: black;
+ text-shadow: 0.1em 0.1em 3px rgba(0,0,0,0.5);
+ }
+ p::target-text {
+ color: green;
+ text-shadow: 0.25em 0.25em 3px rgba(0,0,128,0.5);
+ }
+</style>
+<p>the target should have a shadow</p>
+<script>
+ window.location.hash = "#:~:text=target";
+</script>
diff --git a/testing/web-platform/tests/css/css-ruby/line-spacing.html b/testing/web-platform/tests/css/css-ruby/line-spacing.html
index 9d3c6f23e7..4854e984c4 100644
--- a/testing/web-platform/tests/css/css-ruby/line-spacing.html
+++ b/testing/web-platform/tests/css/css-ruby/line-spacing.html
@@ -149,5 +149,16 @@ test(() => {
assert_greater_than_equal(thirdLine.top - rubyLine.top,
rubyLine.top - firstLine.top + RUBY_EMPHASIS_SIZE);
}, 'Don\'t Consume half-leading of the next line with text-emphasis');
+
+// crbug.com/336592423
+test(() => {
+ const {container, ruby, rt} = renderRuby(
+ '<div style="line-height:1;">' +
+ '<span style="display:inline-block; width:1em; height:4em; vertical-align:top"></span><br>' +
+ '<ruby>base<rt>annotation</rt></ruby></div>');
+ const firstLine = container.querySelector('span').getBoundingClientRect();
+ const rtBox = rt.getBoundingClientRect();
+ assert_greater_than_equal(rtBox.top, firstLine.bottom);
+}, 'An atomic-inline should not overlap with an annotation in the next line');
</script>
</body>
diff --git a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005-ref.html b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005-ref.html
index 03e5cabe55..79a19130ff 100644
--- a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005-ref.html
+++ b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005-ref.html
@@ -11,3 +11,12 @@
<p><rb>a</rb><rt>x</rt><rb>b</rb><rt>y</rt></p>
<p><rbc><span>a</span><rb></rb>b</rbc><rt>x</rt><rt></rt><rt>y</rt></p>
<p><rb>a</rb><rb></rb><rb>b</rb><rtc><span>x</span><rt></rt>y</rtc></p>
+
+<p>'a' and 'b c' should be paired with 'x' and 'y z' repectively:</p>
+<p><ruby>a <rt>x</rt><span style="display:block">b</span> c<rt>y z</ruby></p>
+
+<p>'a b' and 'c' should be paired with 'x y' and 'z' repectively:</p>
+<p><ruby>a <span style="display:block">b</span> <rt>x y</rt><span>c</span><rt>z</ruby></p>
+
+<p>'a b' and 'c d' should be paired with 'w x' and 'y z' repectively:</p>
+<p><ruby>a <span style="display:block">b</span> <rt>w x</rt><span>c</span> <span style="display:block">d</span><rt>y z</ruby>
diff --git a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005.html b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005.html
index a684d665c8..66f7dbdd17 100644
--- a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005.html
+++ b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-insertion-005.html
@@ -20,3 +20,12 @@
<p><rbc><span data-insert="after" data-tag="rb">a</span>b</rbc><rt>x</rt><rt></rt><rt>y</rt></p>
<!-- pseudo ruby text -->
<p><rb>a</rb><rb></rb><rb>b</rb><rtc><span data-insert="after" data-tag="rt">x</span>y</rtc></p>
+
+<p>'a' and 'b c' should be paired with 'x' and 'y z' repectively:</p>
+<p><ruby>a <span style="display:block" data-insert="before" data-tag="rt" data-text="x">b</span> c<rt>y z</ruby></p>
+
+<p>'a b' and 'c' should be paired with 'x y' and 'z' repectively:</p>
+<p><ruby>a <span style="display:block">b</span> <span data-insert="before" data-tag="rt" data-text="x y">c</span><rt>z</ruby></p>
+
+<p>'a b' and 'c d' should be paired with 'w x' and 'y z' repectively:</p>
+<p><ruby>a <span style="display:block">b</span> <span data-insert="before" data-tag="rt" data-text="w x">c</span> <span style="display:block">d</span><rt>y z</ruby>
diff --git a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003-ref.html b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003-ref.html
index 0067c014f5..113598eff2 100644
--- a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003-ref.html
+++ b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003-ref.html
@@ -18,3 +18,8 @@
<p><rbc>ab</rbc><rt>xy</rt></p>
<p><rb>ab</rb><rtc style="letter-spacing: 1px">xy</rtc></p>
+
+<p>'a b c' should be paried with 'x y z':</p>
+<p><ruby>a b <span style="display:block">c</span><rt>x y z</ruby>
+<p><ruby>a <span style="display:block">b</span> c<rt>x y z</ruby>
+<p><ruby><span style="display:block">a</span> b <span style="display:block">c</span><rt>x y z</ruby>
diff --git a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003.html b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003.html
index d35b2b968d..ff6c0b4c83 100644
--- a/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003.html
+++ b/testing/web-platform/tests/css/css-ruby/ruby-dynamic-removal-003.html
@@ -31,3 +31,9 @@
<!-- pseudo ruby text -->
<!-- letter-spacing is added here to avoid fuzzy on Windows. See bug 1111891 -->
<p><rb>ab</rb><rtc style="letter-spacing: 1px">x<rt class="remove"></rt>y</rtc></p>
+
+<p>'a b c' should be paried with 'x y z':</p>
+<!-- merge -->
+<p><ruby>a <rt class="remove">w</rt><span>b</span> <span style="display:block">c</span><rt>x y z</ruby>
+<p><ruby>a <span style="display:block">b</span> <rt class="remove">w</rt><span>c</span><rt>x y z</ruby>
+<p><ruby><span style="display:block">a</span> <rt class="remove">w</rt><span>b</span> <span style="display:block">c</span><rt>x y z</ruby>
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-001.html b/testing/web-platform/tests/css/css-scoping/font-face-001.html
index 7e47d18cba..4496786449 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-001.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-001.html
@@ -12,7 +12,7 @@
</style>
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
@font-face {
@@ -27,6 +27,8 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
+
assert_not_equals(document.getElementById('in-document').offsetWidth, 160);
assert_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face applies in the shadow tree")
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-002.html b/testing/web-platform/tests/css/css-scoping/font-face-002.html
index 2e3272c44f..3a20d0b808 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-002.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-002.html
@@ -13,7 +13,7 @@
</style>
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
#in-shadow {
@@ -24,6 +24,8 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
+
assert_not_equals(document.getElementById('in-document').offsetWidth, 160);
assert_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face from the document applies in the shadow tree");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-003.html b/testing/web-platform/tests/css/css-scoping/font-face-003.html
index d3f83e4ec3..4e8d8ff482 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-003.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-003.html
@@ -13,7 +13,7 @@
</style>
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+ promise_test(async function () {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
:host {
@@ -24,6 +24,7 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
assert_equals(document.getElementById('in-document').offsetWidth, 160);
assert_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face from document applies to :host");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-004.html b/testing/web-platform/tests/css/css-scoping/font-face-004.html
index 6ac50bd432..f68e70994f 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-004.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-004.html
@@ -14,7 +14,7 @@
</style>
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async function() {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
::slotted(#in-document) {
@@ -25,6 +25,7 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
assert_equals(document.getElementById('in-document').offsetWidth, 160);
assert_not_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face from document applies to a slotted element");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-005.html b/testing/web-platform/tests/css/css-scoping/font-face-005.html
index fdf86fb56e..de102f253e 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-005.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-005.html
@@ -12,7 +12,7 @@
</style>
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
@font-face {
@@ -27,6 +27,8 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
+
assert_not_equals(document.getElementById('in-document').offsetWidth, 160);
assert_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face should not leak out of shadow tree.");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-006.html b/testing/web-platform/tests/css/css-scoping/font-face-006.html
index 8c6e341713..e72d4ec2aa 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-006.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-006.html
@@ -16,7 +16,7 @@
</style>
<div id="host"></div>
<script>
-promise_test(async function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
:host::before, :host::after {
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-007.html b/testing/web-platform/tests/css/css-scoping/font-face-007.html
index ae669f638f..c644a54986 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-007.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-007.html
@@ -7,7 +7,7 @@
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
@font-face {
@@ -22,6 +22,8 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
+
assert_equals(document.getElementById('in-document').offsetWidth, 160);
assert_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face from shadow applies to :host");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-008.html b/testing/web-platform/tests/css/css-scoping/font-face-008.html
index a40b0247d1..52c7869f9f 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-008.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-008.html
@@ -8,7 +8,7 @@
<div id="host"><span id="in-document">1234567890</span></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
@font-face {
@@ -23,6 +23,8 @@ test(function() {
<span id="in-shadow">0123456789</span>
`;
+ await document.fonts.ready;
+
assert_equals(document.getElementById('in-document').offsetWidth, 160);
assert_not_equals(host.shadowRoot.getElementById('in-shadow').offsetWidth, 160);
}, "@font-face from shadow applies to a slotted element");
diff --git a/testing/web-platform/tests/css/css-scoping/font-face-009.html b/testing/web-platform/tests/css/css-scoping/font-face-009.html
index 5d770929ca..4e08162dcd 100644
--- a/testing/web-platform/tests/css/css-scoping/font-face-009.html
+++ b/testing/web-platform/tests/css/css-scoping/font-face-009.html
@@ -12,7 +12,7 @@
</style>
<div id="host"></div>
<script>
-test(function() {
+promise_test(async () => {
host.attachShadow({ mode: "open" }).innerHTML = `
<style>
@font-face {
@@ -27,6 +27,8 @@ test(function() {
<slot></slot>
`;
+ await document.fonts.ready;
+
//shrinkwrapped size for a default font will be a bit more than 80-90
//if the font is applied, it will be a bit more than 160
assert_greater_than(document.getElementById('host').offsetWidth, 160);
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/resources/common.js b/testing/web-platform/tests/css/css-scroll-snap-2/resources/common.js
index a3591d48ed..8dce29474d 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/resources/common.js
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/resources/common.js
@@ -26,13 +26,15 @@ async function snap_test_setup(test, scroller, event_type) {
});
}
-async function test_snap_event(test, test_data, event_type) {
+async function test_snap_event(test, test_data, event_type,
+ use_onsnap_member = false) {
await snap_test_setup(test, test_data.scroller, event_type);
let listener = test_data.scroller ==
document.scrollingElement ? document : test_data.scroller;
- const event_promise = waitForSnapEvent(listener, event_type);
+ const event_promise = waitForSnapEvent(listener, event_type, true,
+ use_onsnap_member);
await test_data.scrolling_function();
let evt = await event_promise;
@@ -45,19 +47,36 @@ async function test_snap_event(test, test_data, event_type) {
"horizontal scroll offset mismatch.");
}
-async function test_snapchanged(test, test_data) {
- await test_snap_event(test, test_data, "snapchanged");
+async function test_snapchanged(test, test_data, use_onsnap_member = false) {
+ await test_snap_event(test, test_data, "snapchanged", use_onsnap_member);
}
-function waitForEventUntil(event_target, event_type, wait_until) {
+function waitForEventUntil(event_target, event_type, wait_until,
+ use_onsnap_member = false) {
return new Promise(resolve => {
let result = null;
const listener = (evt) => {
result = evt;
};
- event_target.addEventListener(event_type, listener);
+ if (use_onsnap_member) {
+ if (event_type === "snapchanging") {
+ event_target.onsnapchanging = listener;
+ } else {
+ event_target.onsnapchanged = listener;
+ }
+ } else {
+ event_target.addEventListener(event_type, listener);
+ }
wait_until.then(() => {
- event_target.removeEventListener(event_type, listener);
+ if (use_onsnap_member) {
+ if (event_type === "snapchanging") {
+ event_target.onsnapchanging = null;
+ } else {
+ event_target.onsnapchanged = null;
+ }
+ } else {
+ event_target.removeEventListener(event_type, listener);
+ }
resolve(result);
});
});
@@ -77,30 +96,19 @@ function waitForEventsUntil(event_target, event_type, wait_until) {
});
}
-function waitForOnSnapchanging(event_target) {
- return new Promise(resolve => {
- let result = null;
- const listener = (evt) => {
- result = evt;
- };
- event_target.onsnapchanging = listener;
- waitForScrollendEventNoTimeout(event_target).then(() => {
- event_target.onsnapchanging = null;
- resolve(result);
- });
- });
-}
-
// Proxy a wait for a snap event. We want to avoid having a test
// timeout in the event of an expected snap event not firing in a particular
// test case as that would cause the entire file to fail.
// Snap events should fire before scrollend, so if a scroll should happen, wait
// for a scrollend event. Otherwise, just do a rAF-based wait.
-function waitForSnapEvent(event_target, event_type, scroll_happens = true) {
+function waitForSnapEvent(event_target, event_type, scroll_happens = true,
+ use_onsnap_member = false) {
return scroll_happens ? waitForEventUntil(event_target, event_type,
- waitForScrollendEventNoTimeout(event_target))
+ waitForScrollendEventNoTimeout(event_target),
+ use_onsnap_member)
: waitForEventUntil(event_target, event_type,
- waitForAnimationFrames(2));
+ waitForAnimationFrames(2),
+ use_onsnap_member);
}
function waitForSnapChangedEvent(event_target, scroll_happens = true) {
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/resources/programmatic-scroll-common.js b/testing/web-platform/tests/css/css-scroll-snap-2/resources/programmatic-scroll-common.js
deleted file mode 100644
index 8257b98fe3..0000000000
--- a/testing/web-platform/tests/css/css-scroll-snap-2/resources/programmatic-scroll-common.js
+++ /dev/null
@@ -1,26 +0,0 @@
-// Helper functions for snapchanged-on-programmatic-* tests.
-
-// Utility function to test that onsnapchanging is triggered for
-// snapchanging-on-programmatic-* tests which set up a similar layout in which
-// the |scroller| has 3 snap targets that form a vertical column along
-// |scroller|'s middle. onsnapchanging should be triggered by conducting a
-// programmatic scroll to the top of snap_target.
-async function test_programmatic_scroll_onsnapchanging(test,
- scroller,
- event_target,
- snap_target) {
- await snap_test_setup(test, scroller, "snapchanging");
- const expected_snap_targets = { block: snap_target, inline: null };
-
- // Scroll and wait for a snapchanging event.
- const snapchanging_promise = waitForOnSnapchanging(event_target);
- scroller.scrollTo(0, snap_target.offsetTop);
- const snapchanging_event = await snapchanging_promise;
-
- // Assert that snapchanging fired and indicated that snap_target would
- // be snapped to.
- assertSnapEvent(snapchanging_event, expected_snap_targets);
- assert_equals(scroller.scrollLeft, 0, "scrollLeft is zero");
- assert_equals(scroller.scrollTop, snap_target.offsetTop,
- "snapped to snap_target");
-}
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/resources/user-scroll-common.js b/testing/web-platform/tests/css/css-scroll-snap-2/resources/user-scroll-common.js
index 820f143816..07c1428633 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/resources/user-scroll-common.js
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/resources/user-scroll-common.js
@@ -69,32 +69,3 @@ async function test_no_snapchanged(t, scroller, delta) {
async function test_no_snapchanging(t, scroller, delta) {
await test_no_snap_event(t, scroller, delta, "snapchanging");
}
-
-// Utility function to test that onsnapchanging is triggered for
-// snapchanging-on-user-* tests which set up a similar layout in which
-// the |scroller| has 3 snap targets that form a vertical column along
-// |scroller|'s middle. onsnapchanging should be triggered by touch-dragging
-// |scroller|'s content so that |snap_target|'s top aligns to |snap_target|.
-async function test_user_scroll_onsnapchanging(test, scroller, event_target,
- snap_target) {
- await snap_test_setup(test, scroller, "snapchanging");
-
- // Compute touch positions to drag the top of snap_target to the top of
- // the scroller.
- const scroller_middle = Math.round(scroller.clientWidth / 2);
- const start_pos = { x: scroller_middle, y: snap_target.offsetTop };
- const end_pos = { x: scroller_middle, y: 0 };
- const expected_snap_targets = { block: snap_target, inline: null };
-
- // Scroll and wait for a snapchanging event.
- const snapchanging_promise = waitForOnSnapchanging(event_target);
- await snap_event_touch_scroll_helper(start_pos, end_pos);
- const snapchanging_event = await snapchanging_promise;
-
- // Assert that snapchanging fired and indicated that snap_target would
- // be snapped to.
- assertSnapEvent(snapchanging_event, expected_snap_targets);
- assert_equals(scroller.scrollLeft, 0, "scrollLeft is zero");
- assert_equals(scroller.scrollTop, snap_target.offsetTop,
- "snapped to snap_target");
-}
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html
new file mode 100644
index 0000000000..baa3efc7ba
--- /dev/null
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snap-events-with-pseudo-target.tentative.html
@@ -0,0 +1,86 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title> CSS Scroll Snap 2 Test: Snap Events with pseudo-element targets.</title>
+ <link rel="help" href="https://drafts.csswg.org/css-scroll-snap-2/#snap-events">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/resources/testdriver.js"></script>
+ <script src="/resources/testdriver-actions.js"></script>
+ <script src="/resources/testdriver-vendor.js"></script>
+ <script src="/css/css-scroll-snap-2/resources/common.js"></script>
+ <script src="/css/css-scroll-snap-2/resources/user-scroll-common.js"></script>
+ <script src="/dom/events/scrolling/scroll_support.js"></script>
+ </head>
+ <body>
+ <style>
+ .scroller {
+ overflow: scroll;
+ width: 200px;
+ height: 200px;
+ border: solid 1px black;
+ scroll-snap-type: y mandatory;
+ position: absolute;
+ resize: both;
+ }
+ .space {
+ height: 300vh;
+ width: 300vw;
+ position: absolute;
+ }
+ .scroller::before, .scroller::after {
+ scroll-snap-align: start;
+ height: 50px;
+ width: 50px;
+ color: white;
+ display: block;
+ }
+ .scroller::before {
+ content: "before";
+ background-color: blue;
+ }
+ .scroller::after {
+ content: "after";
+ background-color: orange;
+ margin-top: 100px;
+ }
+ </style>
+ <div class="scroller" id="scroller">
+ <div class="space"></div>
+ </div>
+
+ <script>
+ const start_pos = {
+ x: scroller.clientWidth / 2,
+ y: scroller.clientHeight / 2,
+ };
+ const end_pos = { x: scroller.clientWidth / 2, y: 0 };
+ // The top of the ::after pseudo element is the sum of the
+ // ::before pseudo-element's height (50) and the ::after
+ // pseudo-element's margin-top (100).
+ const after_pseudo_element_top = 50 + 100;
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ await snap_event_touch_scroll_helper(start_pos, end_pos);
+ },
+ expected_snap_targets: { block: scroller, inline: null },
+ expected_scroll_offsets: {
+ x: 0,
+ y: after_pseudo_element_top,
+ }
+ };
+
+ promise_test(async (t) => {
+ await test_snapchanged(t, test_data);
+ }, "snapTarget for snapchanged is the owning element when a snap area " +
+ "belongs to a pseudo-element");
+
+ promise_test(async (t) => {
+ await test_snap_event(t, test_data, "snapchanging");
+ }, "snapTarget for snapchanging is the owning element when a snap area " +
+ "belongs to a pseudo-element");
+ </script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html
index 98ec2e5d75..8360369422 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html
@@ -8,6 +8,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/css-scroll-snap-2/resources/common.js"></script>
+ <script src="/css/css-scroll-snap-2/resources/programmatic-scroll-common.js"></script>
<script src="/dom/events/scrolling/scroll_support.js"></script>
<script src="/web-animations/testcommon.js"></script>
</head>
@@ -61,6 +62,7 @@
<script>
let scroller = document.scrollingElement;
+ let snap_point_2 = document.getElementById("snap_point_2");
promise_test(async (t) => {
await waitForCompositorCommit();
@@ -79,6 +81,23 @@
}, "snapchanged event fires after snap target changes via scrollTo");
promise_test(async (t) => {
+ await waitForCompositorCommit();
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: () => {
+ scroller.scrollTo(snap_point_2.offsetLeft, snap_point_2.offsetTop);
+ },
+ expected_snap_targets: { block: snap_point_2, inline: snap_point_2 },
+ expected_scroll_offsets: {
+ x: snap_point_2.offsetLeft,
+ y: snap_point_2.offsetTop,
+ }
+ };
+ await test_snapchanged(t, test_data, /*use_onsnap_member*/true);
+ }, "Document.onsnapchanged event fires after snap target changes via" +
+ "scrollTo");
+
+ promise_test(async (t) => {
checkSnapEventSupport("snapchanged");
await waitForScrollReset(t, scroller);
await waitForCompositorCommit();
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html
index 9dff856f34..2b2e6a77c5 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html
@@ -8,6 +8,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/css-scroll-snap-2/resources/common.js"></script>
+ <script src="/css/css-scroll-snap-2/resources/programmatic-scroll-common.js"></script>
<script src="/dom/events/scrolling/scroll_support.js"></script>
<script src="/web-animations/testcommon.js"></script>
</head>
@@ -68,6 +69,7 @@
<script>
function runTests () {
let scroller = document.getElementById("scroller");
+ let snap_point_2 = document.getElementById("snap_point_2");
promise_test(async (t) => {
await waitForCompositorCommit();
@@ -86,6 +88,23 @@
}, "snapchanged event fires after snap target changes via scrollTo");
promise_test(async (t) => {
+ await waitForCompositorCommit();
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: () => {
+ scroller.scrollTo(snap_point_2.offsetLeft, snap_point_2.offsetTop);
+ },
+ expected_snap_targets: { block: snap_point_2, inline: snap_point_2 },
+ expected_scroll_offsets: {
+ x: snap_point_2.offsetLeft,
+ y: snap_point_2.offsetTop,
+ }
+ };
+ await test_snapchanged(t, test_data, /*use_onsnap_member*/true);
+ }, "Element.onsnapchanged event fires after snap target changes via" +
+ "scrollTo");
+
+ promise_test(async (t) => {
checkSnapEventSupport("snapchanged");
await waitForScrollReset(t, scroller);
await waitForCompositorCommit();
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html
index 127376caa2..a59d9c5859 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html
@@ -161,6 +161,29 @@
await test_snapchanged(t, test_data);
}, "snapchanged event fires after snap target changes on keydown press");
+ // Touch scroll test (onsnapchanged variant).
+ promise_test(async (t) => {
+ await waitForCompositorCommit();
+ const start_pos = {
+ x: scroller.clientWidth / 2,
+ y: scroller.clientHeight / 2,
+ };
+ const end_pos = { x: 0, y: 0 };
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ await snap_event_touch_scroll_helper(start_pos, end_pos);
+ },
+ expected_snap_targets: { block: snap_point_2, inline: snap_point_2 },
+ expected_scroll_offsets: {
+ x: offset_to_snap_point_2.x,
+ y: offset_to_snap_point_2.y,
+ }
+ };
+ await test_snapchanged(t, test_data, /*use_onsnap_memeber*/true);
+ }, "Document.snapchanged event fires after snap target changes on touch " +
+ "scroll");
+
promise_test(async (t) => {
await test_no_snapchanged(t, scroller, /*delta*/10);
}, "snapchanged is not fired if snap target doesn't change on user scroll");
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html
index 91194642b5..d2c2789c88 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html
@@ -165,6 +165,29 @@
await test_snapchanged(t, test_data);
}, "snapchanged event fires after snap target changes on keydown press");
+ // Touch scroll test (onsnapchanged variant).
+ promise_test(async (t) => {
+ await waitForCompositorCommit();
+ const start_pos = {
+ x: scroller.clientWidth / 2,
+ y: scroller.clientHeight / 2,
+ };
+ const end_pos = { x: 0, y: 0 };
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ await snap_event_touch_scroll_helper(start_pos, end_pos);
+ },
+ expected_snap_targets: { block: snap_point_2, inline: snap_point_2 },
+ expected_scroll_offsets: {
+ x: offset_to_snap_point_2.x,
+ y: offset_to_snap_point_2.y,
+ }
+ };
+ await test_snapchanged(t, test_data, /*use_onsnap_memeber*/true);
+ }, "Element.onsnapchanged event fires after snap target changes on touch " +
+ "scroll");
+
promise_test(async (t) => {
await test_no_snapchanged(t, scroller, /*delta*/10);
}, "snapchanged is not fired if snap target doesn't change on user scroll");
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html
new file mode 100644
index 0000000000..e39fc0c44e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanged/snapchanged-scrolling-non-snapping-axis.tentative.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title> CSS Scroll Snap 2 Test: snapchanged events</title>
+ <link rel="help" href="https://drafts.csswg.org/css-scroll-snap-2/#snap-events">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/resources/testdriver.js"></script>
+ <script src="/resources/testdriver-actions.js"></script>
+ <script src="/resources/testdriver-vendor.js"></script>
+ <script src="/css/css-scroll-snap-2/resources/common.js"></script>
+ <script src="/dom/events/scrolling/scroll_support.js"></script>
+ <script src="/css/css-scroll-snap/support/common.js"></script>
+ </head>
+ <body>
+ <style>
+ .scroller {
+ overflow: scroll;
+ width: 200px;
+ height: 200px;
+ border: solid 1px black;
+ scroll-snap-type: y mandatory;
+ position: absolute;
+ resize: both;
+ }
+ .snaparea {
+ scroll-snap-align: start;
+ height: 50px;
+ width: 50px;
+ color: white;
+ margin-top: 100px;
+ background-color: purple;
+ }
+ .space {
+ height: 300vh;
+ width: 300vw;
+ position: absolute;
+ }
+ </style>
+ <div class="scroller" id="scroller">
+ <div class="space"></div>
+ <div class="snaparea"> Area2</div>
+ <div class="snaparea"> Area1</div>
+ </div>
+
+ <script>
+ promise_test(async (t) => {
+ await waitForCompositorCommit();
+
+ scroller.focus();
+
+ const snapchanged_promise = waitForSnapEvent(scroller, "snapchanged");
+ await test_driver.send_keys(scroller, KEY_CODE_MAP["ArrowRight"]);
+ const snap_event = await snapchanged_promise;
+
+ assert_equals(snap_event, null, "no snapchanged event fired as " +
+ "scroller doesn't snap in the x axis");
+ }, "keyboard scroll on non-snapping axis doesn't trigger snapchanged");
+
+ promise_test(async (t) => {
+ await waitForScrollReset(t, scroller);
+ await waitForCompositorCommit();
+ scroller.focus();
+
+ const snapchanged_promise = waitForSnapEvent(scroller, "snapchanged");
+ const wheel_scroll_amount = 25;
+ new test_driver.Actions().scroll(0, 0,
+ wheel_scroll_amount,
+ 0,
+ { origin: scroller }).send();
+ const snap_event = await snapchanged_promise;
+ assert_equals(snap_event, null, "no snapchanged event fired as " +
+ "scroller doesn't snap in the x axis");
+ }, "wheel scroll on non-snapping axis doesn't trigger snapchanged");
+ </script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html
index b714a6cfb5..54c2c95c50 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-root-scroll.tentative.html
@@ -87,10 +87,22 @@
" snap targets.");
promise_test(async (t) => {
- await test_programmatic_scroll_onsnapchanging(t, scroller, document,
- snap_area_2);
- }, "programmatic scroll triggers Document.snapchanging when scrolling a " +
- "snap container");
+ await waitForCompositorCommit();
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ scroller.scrollTo(0, snap_area_2.offsetTop);
+ },
+ expected_snap_targets: { block: snap_area_2, inline: null },
+ expected_scroll_offsets: {
+ x: 0,
+ y: snap_area_2.offsetTop
+ }
+ };
+ await test_snap_event(t, test_data, "snapchanging",
+ /*use_onsnap_member*/true);
+ }, "Document.snapchanging fires on programmatic scrolls that changes a" +
+ "scroller's snap targets.");
promise_test(async (t) => {
checkSnapEventSupport("snapchanging");
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html
index 6e7b0126f7..0bd65f8e42 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-programmatic-scroll.tentative.html
@@ -94,10 +94,22 @@
" snap targets.");
promise_test(async (t) => {
- await test_programmatic_scroll_onsnapchanging(t, scroller, scroller,
- snap_area_2);
- }, "programmatic scroll triggers Element.onsnapchanging when scrolling a " +
- "snap container");
+ await waitForCompositorCommit();
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ scroller.scrollTo(0, snap_area_2.offsetTop);
+ },
+ expected_snap_targets: { block: snap_area_2, inline: null },
+ expected_scroll_offsets: {
+ x: 0,
+ y: snap_area_2.offsetTop
+ }
+ };
+ await test_snap_event(t, test_data, "snapchanging",
+ /*use_onsnap_member*/true);
+ }, "Element.onsnapchanging fires on programmatic scrolls that changes a " +
+ "scroller's snap targets.");
promise_test(async (t) => {
checkSnapEventSupport("snapchanging");
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html
index 815c3c0922..8054db548d 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-root-scroll.tentative.html
@@ -159,10 +159,26 @@
await test_snap_event(t, test_data, "snapchanging");
}, "keyboard scroll triggers snapchanging.");
+ // Touch scroll test (onsnapchanging variant).
promise_test(async (t) => {
- await test_user_scroll_onsnapchanging(t, scroller, document,
- snap_area_2);
- }, "Document.onsnapchanging fires when scrolling a snap container.");
+ await waitForCompositorCommit();
+ const scroller_middle = Math.round(scroller.clientWidth / 2);
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ const start_pos = { x: scroller_middle, y: snap_area_2.offsetTop };
+ const end_pos = { x: scroller_middle, y: 0 };
+ await snap_event_touch_scroll_helper(start_pos, end_pos);
+ },
+ expected_snap_targets: { block: snap_area_2, inline: null },
+ expected_scroll_offsets: {
+ x: 0,
+ y: snap_area_2.offsetTop
+ }
+ };
+ await test_snap_event(t, test_data, "snapchanging",
+ /*use_onsnap_memeber*/true);
+ }, "touch scrolling fires Document.onsnapchanging.");
// Touch scroll test: peek at snap_area_2 and then drag back to
// snap_area_1.
diff --git a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html
index 27f52efc71..3755369a2f 100644
--- a/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html
+++ b/testing/web-platform/tests/css/css-scroll-snap-2/snapchanging/snapchanging-on-user-scroll.tentative.html
@@ -181,10 +181,26 @@
assertSnapEvent(evts[1], { block: snap_area_1, inline: null });
}, "snapchanging fires as scroll moves through different snap targets.");
+ // Touch scroll test.
promise_test(async (t) => {
- await test_user_scroll_onsnapchanging(t, scroller, scroller,
- snap_area_2);
- }, "Element.onsnapchanging fires when scrolling a snap container.");
+ await waitForCompositorCommit();
+ const scroller_middle = Math.round(scroller.clientWidth / 2);
+ const test_data = {
+ scroller: scroller,
+ scrolling_function: async () => {
+ const start_pos = { x: scroller_middle, y: snap_area_2.offsetTop };
+ const end_pos = { x: scroller_middle, y: 0 };
+ await snap_event_touch_scroll_helper(start_pos, end_pos);
+ },
+ expected_snap_targets: { block: snap_area_2, inline: null },
+ expected_scroll_offsets: {
+ x: 0,
+ y: snap_area_2.offsetTop
+ }
+ };
+ await test_snap_event(t, test_data, "snapchanging",
+ /*use_onsnap_member*/true);
+ }, "touch scrolling fires Element.onsnapchanging.");
// snapchanging doesn't fire test.
promise_test(async (t) => {
diff --git a/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block-iframe.html b/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block-iframe.html
new file mode 100644
index 0000000000..4f4b4309fb
--- /dev/null
+++ b/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block-iframe.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html>
+ <body>
+ <style>
+ .scroller {
+ width: 200px;
+ height: 200px;
+ border: solid 1px black;
+ overflow: scroll;
+ scroll-snap-type: both mandatory;
+ position: relative;
+ resize: both;
+ }
+ .target {
+ scroll-snap-align: start;
+ width: 50px;
+ height: 50px;
+ background-color: green;
+ position: absolute;
+ }
+ .target:target {
+ background-color: blue;
+ }
+ .target:focus {
+ background-color: yellow;
+ }
+ #box1 {
+ left: 150px;
+ top: 0px;
+ }
+ #box2 {
+ left: 0px;
+ top: 150px;
+ }
+ .space {
+ width: 500%;
+ height: 500%;
+ position: absolute;
+ }
+ </style>
+ <div class="scroller" id="scroller">
+ <div tabindex="1" id="box1" class="target">Box 1</div>
+ <div tabindex="1" id="box2" class="target">Box 2</div>
+ <div class="space"></div>
+ </div>
+ </body>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html b/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html
new file mode 100644
index 0000000000..57dd52bcea
--- /dev/null
+++ b/testing/web-platform/tests/css/css-scroll-snap/snap-after-relayout/layout-follows-focused-targeted-block.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <link rel="help" href="https://drafts.csswg.org/css-scroll-snap" />
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/dom/events/scrolling/scroll_support.js"></script>
+ </head>
+ <body>
+ <style>
+ iframe {
+ width: 1000px;
+ height: 1000px;
+ }
+ </style>
+ <script>
+ let scroller;
+ let box1;
+ let box2;
+ let frame;
+
+ const iframe_load_promise = new Promise((resolve) => {
+ frame = document.createElement("iframe");
+ frame.onload = async () => {
+ scroller = frame.contentDocument.getElementById("scroller");
+ box1 = frame.contentDocument.getElementById("box1");
+ box2 = frame.contentDocument.getElementById("box2");
+ resolve();
+ };
+ frame.src = "./layout-follows-focused-targeted-block-iframe.html#box2";
+ document.body.appendChild(frame);
+ });
+
+ const displacement = 150;
+ async function test_resnap(t, target) {
+ // Save box1's position and setup the cleanup.
+ const box1_left = box1.style.left;
+ t.add_cleanup(async () => {
+ // Reset box1's position.
+ box1.style.left = box1_left;
+ // Reset scroller's writing-mode.
+ scroller.style.writingMode = "horizontal-tb";
+ // Reset scroll position.
+ await waitForScrollReset(t, scroller);
+ });
+
+ assert_equals(scroller.scrollTop, 0, "scroll top is reset");
+ assert_equals(scroller.scrollLeft, 0, "scroll left is reset");
+
+ // Move box1 outside the scrollport by translating it 150px
+ // horizontally.
+ const new_left = box1.offsetLeft + displacement;
+ box1.style.left = `${new_left}px`;
+
+ assert_equals(scroller.scrollLeft, target.offsetLeft,
+ `scroller followed ${target.id} in x axis`);
+
+ assert_equals(scroller.scrollTop, target.offsetTop,
+ `scroller followed ${target.id} in y axis`);
+ }
+
+ promise_test(async (t) => {
+ await iframe_load_promise;
+
+ box1.focus();
+ assert_equals(frame.contentDocument.activeElement, box1,
+ "sanity check that box1 is focused.");
+ assert_equals(frame.contentDocument.querySelector(":target"), box2,
+ "sanity check that box2 is targeted.");
+ // box2 is targeted but box1 is focused, so box1 should be
+ // followed.
+ await test_resnap(t, box1);
+
+ // Remove focus from box1.
+ scroller.focus();
+ }, "focused area prefered over targeted area.");
+
+ promise_test(async (t) => {
+ await iframe_load_promise;
+
+ assert_not_equals(frame.contentDocument.activeElement, box1,
+ "sanity check that box1 is not focused.");
+ assert_equals(frame.contentDocument.querySelector(":target"), box2,
+ "sanity check that box2 is targeted.");
+ // box2 is targeted and box1 is not focused, so box2 should be
+ // followed.
+ await test_resnap(t, box2);
+ }, "targeted area prefered over non-focused area.");
+
+ promise_test(async (t) => {
+ await iframe_load_promise;
+
+ // Clear the targeted element.
+ frame.contentDocument.location.hash = "";
+ assert_equals(frame.contentDocument.querySelector(":target"), null,
+ "sanity check that no box is targeted.");
+ assert_not_equals(frame.contentDocument.activeElement, box1,
+ "sanity check that box1 is not focused.");
+
+ // Neither box is targeted or focused; so, the block axis target should
+ // be followed.
+ await test_resnap(t, box1);
+ }, "block axis area is preferred.");
+
+ promise_test(async (t) => {
+ await iframe_load_promise;
+
+ scroller.style.writingMode = "vertical-lr";
+
+ // Clear the targeted element.
+ frame.contentDocument.location.hash = "";
+ assert_equals(frame.contentDocument.querySelector(":target"), null,
+ "sanity check that no box is targeted.");
+ assert_not_equals(frame.contentDocument.activeElement, box1,
+ "sanity check that box1 is not focused.");
+
+ // Neither box is targeted or focused; so, the block (x) axis target
+ // should be followed.
+ await test_resnap(t, box2);
+ }, "block axis area is preferred (vertical writing-mode).");
+ </script>
+ </body>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-shadow-parts/invalidation-part-pseudo.html b/testing/web-platform/tests/css/css-shadow-parts/invalidation-part-pseudo.html
index fca4a964dc..66df33a4b7 100644
--- a/testing/web-platform/tests/css/css-shadow-parts/invalidation-part-pseudo.html
+++ b/testing/web-platform/tests/css/css-shadow-parts/invalidation-part-pseudo.html
@@ -3,7 +3,6 @@
<link rel="help" href="https://drafts.csswg.org/css-shadow-parts" >
<link rel="help" href="https://drafts.csswg.org/selectors/#matches">
<link href="https://drafts.csswg.org/selectors/#matches" rel="help">
-<link rel="match" href="interaction-with-nested-pseudo-class-ref.html">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
diff --git a/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation-ref.html b/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation-ref.html
new file mode 100644
index 0000000000..d6db0d0e4c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation-ref.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset="utf-8">
+<div>What color am I?</div>
diff --git a/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation.html b/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation.html
new file mode 100644
index 0000000000..76beabe885
--- /dev/null
+++ b/testing/web-platform/tests/css/css-shadow-parts/part-after-combinator-invalidation.html
@@ -0,0 +1,26 @@
+<!doctype html>
+<meta charset="utf-8">
+<link rel="help" href="https://drafts.csswg.org/css-shadow-parts">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1891296">
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="match" href="part-after-combinator-invalidation-ref.html">
+<style>
+.inactive > ::part(content) {
+ color: red;
+}
+</style>
+<div class="inactive">
+ <div id="host">
+ <template shadowrootmode="open">
+ <div part="content">What color am I?</div>
+ </template>
+ </div>
+</div>
+<script>
+onload = () => {
+ host.getBoundingClientRect();
+ host.parentNode.className = "";
+ host.getBoundingClientRect();
+};
+</script>
diff --git a/testing/web-platform/tests/css/css-sizing/aspect-ratio/support/2x2-green.webm b/testing/web-platform/tests/css/css-sizing/aspect-ratio/support/2x2-green.webm
index 74af43afeb..d1c021c03d 100644
--- a/testing/web-platform/tests/css/css-sizing/aspect-ratio/support/2x2-green.webm
+++ b/testing/web-platform/tests/css/css-sizing/aspect-ratio/support/2x2-green.webm
Binary files differ
diff --git a/testing/web-platform/tests/css/css-sizing/contain-intrinsic-size/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-sizing/contain-intrinsic-size/WEB_FEATURES.yml
new file mode 100644
index 0000000000..5fc7189215
--- /dev/null
+++ b/testing/web-platform/tests/css/css-sizing/contain-intrinsic-size/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: contain-intrinsic-size
+ files: "**"
diff --git a/testing/web-platform/tests/css/css-syntax/custom-property-rule-ambiguity.html b/testing/web-platform/tests/css/css-syntax/custom-property-rule-ambiguity.html
index b1adce7f9e..04f908acde 100644
--- a/testing/web-platform/tests/css/css-syntax/custom-property-rule-ambiguity.html
+++ b/testing/web-platform/tests/css/css-syntax/custom-property-rule-ambiguity.html
@@ -47,7 +47,7 @@
assert_equals(rules[0].selectorText, 'div');
let div = rules[0];
let x = div.style.getPropertyValue('--x');
- assert_equals(x, 'hover { }\n .b { }');
+ assert_equals(x.trim(), 'hover { }\n .b { }');
let childRules = div.cssRules;
assert_equals(childRules.length, 1);
assert_equals(childRules[0].selectorText, '& .a');
diff --git a/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003-ref.html b/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003-ref.html
new file mode 100644
index 0000000000..2b19a83814
--- /dev/null
+++ b/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<link rel="author" title="David Shin" href="dshin@mozilla.com">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1871609">
+<style>
+table {
+ border-collapse: collapse;
+}
+tr {
+ border: 1px solid grey;
+}
+</style>
+<table>
+ <tr>
+ <td>X</td>
+ <td>X</td>
+ </tr>
+</table>
diff --git a/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003.html b/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003.html
new file mode 100644
index 0000000000..073f67e669
--- /dev/null
+++ b/testing/web-platform/tests/css/css-tables/collapsed-border-partial-invalidation-003.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<link rel="author" title="David Shin" href="dshin@mozilla.com">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1871609">
+<link rel="match" href="collapsed-border-partial-invalidation-003-ref.html">
+<meta name="assert" content="Invalidating part of a border-collapsed table keeps border styling correctly.">
+<style>
+table {
+ border-collapse: collapse;
+}
+tr {
+ border: 1px solid grey;
+}
+
+.foo {
+ border-right: 20px solid black;
+}
+
+</style>
+<table>
+ <tr>
+ <td id="cell" class="foo">X</td>
+ <td>X</td>
+ </tr>
+</table>
+<script>
+onload = function () {
+ cell.classList.remove("foo");
+ document.documentElement.className = "";
+}
+</script>
+</html>
diff --git a/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero-ref.html b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero-ref.html
new file mode 100644
index 0000000000..6254e4e9fc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero-ref.html
@@ -0,0 +1,9 @@
+<!doctype html>
+<style>
+ #target {
+ font-size: 100px;
+ color: rgba(0 255 0 / 0.5);
+ text-decoration: line-through;
+ }
+</style>
+<div id="target">X</div>
diff --git a/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero.html b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero.html
new file mode 100644
index 0000000000..01cb5f8684
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-near-zero.html
@@ -0,0 +1,14 @@
+<!doctype html>
+<title>Text with decoration and a text-shadow with a color with alpha close to 0</title>
+<link rel="help" href="https://drafts.csswg.org/css-text-decor/#text-shadow-property">
+<link rel="help" href="https://drafts.csswg.org/css-text-decor/#text-decoration-property">
+<link rel="match" href="basic-opacity-near-zero-ref.html">
+<style>
+ #target {
+ font-size: 100px;
+ color: rgba(0 255 0 / 0.5);
+ text-shadow: 0 2px 0 rgba(0 0 255 / 0.0001);
+ text-decoration: line-through;
+ }
+</style>
+<div id="target">X</div>
diff --git a/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero-ref.html b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero-ref.html
new file mode 100644
index 0000000000..6254e4e9fc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero-ref.html
@@ -0,0 +1,9 @@
+<!doctype html>
+<style>
+ #target {
+ font-size: 100px;
+ color: rgba(0 255 0 / 0.5);
+ text-decoration: line-through;
+ }
+</style>
+<div id="target">X</div>
diff --git a/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero.html b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero.html
new file mode 100644
index 0000000000..ff9d507853
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text-decor/text-shadow/basic-opacity-zero.html
@@ -0,0 +1,14 @@
+<!doctype html>
+<title>Text with decoration and a text-shadow with a color with alpha=0</title>
+<link rel="help" href="https://drafts.csswg.org/css-text-decor/#text-shadow-property">
+<link rel="help" href="https://drafts.csswg.org/css-text-decor/#text-decoration-property">
+<link rel="match" href="basic-opacity-zero-ref.html">
+<style>
+ #target {
+ font-size: 100px;
+ color: rgba(0 255 0 / 0.5);
+ text-shadow: 0 2px 0 rgba(255 128 0 / 0);
+ text-decoration: line-through;
+ }
+</style>
+<div id="target">X</div>
diff --git a/testing/web-platform/tests/css/css-text/hyphens/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-text/hyphens/WEB_FEATURES.yml
new file mode 100644
index 0000000000..c8270e62c6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/hyphens/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: hyphens
+ files: "**"
diff --git a/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001-ref.html b/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001-ref.html
new file mode 100644
index 0000000000..10abd537c9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001-ref.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<script src="support/variant-class.js"></script>
+<style>
+@font-face {
+ font-family: halt-font;
+ src: url('/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otf');
+}
+#container {
+ font-family: halt-font;
+ font-size: 20px;
+ text-spacing-trim: space-all;
+}
+.vrl {
+ writing-mode: vertical-rl;
+}
+halt {
+ font-feature-settings: 'halt' 1, 'vhal' 1;
+}
+</style>
+<div id="container">
+ <div>国(<halt>(</halt>国</div>
+ <div>国)<halt>(</halt>国</div>
+ <div>国<halt>)</halt>)国</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html b/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html
new file mode 100644
index 0000000000..caef2b18e4
--- /dev/null
+++ b/testing/web-platform/tests/css/css-text/text-spacing-trim/text-spacing-trim-subset-001.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="help" href="https://drafts.csswg.org/css-text-4/#text-spacing-trim-property">
+<link rel="match" href="text-spacing-trim-subset-001-ref.html">
+<meta name="variant" content="?class=halt,htb">
+<meta name="variant" content="?class=halt,vrl">
+<script src="support/variant-class.js"></script>
+<style>
+@font-face {
+ font-family: halt-font;
+ src: url('/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otf');
+}
+#container {
+ font-family: halt-font;
+ font-size: 20px;
+}
+.vrl {
+ writing-mode: vertical-rl;
+}
+</style>
+<div id="container">
+ <div>国((国</div>
+ <div>国)(国</div>
+ <div>国))国</div>
+</div>
diff --git a/testing/web-platform/tests/css/css-transitions/shadow-root-insertion.html b/testing/web-platform/tests/css/css-transitions/shadow-root-insertion.html
new file mode 100644
index 0000000000..47fc665aa3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-transitions/shadow-root-insertion.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Transitions: behavior when a shadow root is inserted while transitioning</title>
+<meta name="assert" content="Checks the addition of a shadow root does not affect an in-flight transition">
+<link rel="help" href="https://drafts.csswg.org/css-transitions/">
+
+<script src="/resources/testharness.js" type="text/javascript"></script>
+<script src="/resources/testharnessreport.js" type="text/javascript"></script>
+<script src="./support/helper.js" type="text/javascript"></script>
+
+</head>
+<body>
+<div id="log"></div>
+<script>
+test(t => {
+ // Start a 100s transition 50% of the way through
+ const div = addDiv(t, {
+ style: 'transition: height 100s -50s linear; height: 0px',
+ });
+ getComputedStyle(div).height;
+ div.style.height = '100px';
+ assert_equals(
+ getComputedStyle(div).height,
+ '50px',
+ 'Transition should be initially 50% complete'
+ );
+
+ // Add a shadow root
+ div.attachShadow({ mode: "open" });
+
+ // The transition on the height property should not have been canceled
+ assert_equals(
+ getComputedStyle(div).height,
+ '50px',
+ 'Transition should not have been canceled'
+ );
+}, 'addition of a shadow root should not cancel in-flight transitions');
+</script>
+
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-transitions/starting-style-size-container.html b/testing/web-platform/tests/css/css-transitions/starting-style-size-container.html
index 92ad6e6125..1ad609dd90 100644
--- a/testing/web-platform/tests/css/css-transitions/starting-style-size-container.html
+++ b/testing/web-platform/tests/css/css-transitions/starting-style-size-container.html
@@ -5,32 +5,58 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/css-transitions/support/helper.js"></script>
-<div id="container" style="width: 200px">
- <div id="target" style="display: none"></div>
-</div>
+<body>
+</body>
<style>
#container {
container-type: inline-size;
+ width: 100px;
}
#target {
transition-property: background-color;
transition-duration: 100s;
transition-timing-function: steps(2, start);
background-color: lime;
+ display: none;
}
@container (width > 300px) {
@starting-style {
#target { background-color: white; }
}
}
- @container (width < 300px) {
+ @container ((width > 200px) and (width < 300px)) {
+ #target {
+ display: block;
+ }
+ @starting-style {
+ #target { background-color: white; }
+ }
+ }
+ @container (width < 200px) {
@starting-style {
#target { background-color: red; }
}
}
</style>
<script>
+ function setup(test) {
+ let container = document.createElement("div");
+ container.id = "container";
+ document.body.appendChild(container);
+
+ let target = document.createElement("div");
+ target.id = "target";
+ container.appendChild(target);
+
+ test.add_cleanup(() => {
+ target.remove();
+ container.remove();
+ });
+ return [container, target];
+ }
+
promise_test(async t => {
+ let [container, target] = setup(t);
await waitForAnimationFrames(2);
assert_equals(getComputedStyle(target).backgroundColor, "rgb(0, 255, 0)",
"No transition while display:none");
@@ -38,6 +64,21 @@
target.style.display = "block";
await waitForAnimationFrames(2);
assert_equals(getComputedStyle(target).backgroundColor, "rgb(128, 255, 128)",
- "@starting-style based on the size query evaluation from the same frame");
- }, "Triggered transition from first style update based on up-to-date container query");
+ "@starting-style based on the size query evaluation from " +
+ "the same frame");
+ }, "Triggered transition from first style update based on up-to-date " +
+ "container query");
+
+ promise_test(async t => {
+ let [container, target] = setup(t);
+ await waitForAnimationFrames(2);
+ assert_equals(getComputedStyle(target).backgroundColor, "rgb(0, 255, 0)",
+ "No transition while display:none");
+ container.style.width = "250px";
+ await waitForAnimationFrames(2);
+ assert_equals(getComputedStyle(target).backgroundColor, "rgb(128, 255, 128)",
+ "@starting-style based on the size query evaluation from " +
+ "the same frame");
+ }, "Triggered transition from the display change inside the up-to-date " +
+ "container query");
</script>
diff --git a/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html b/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html
deleted file mode 100644
index 79b9f94617..0000000000
--- a/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-end.tentative.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html>
-<title>'animation-delay-end' property</title>
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#dom-stylepropertymap-get">
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#dom-stylepropertymap-set">
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#property-stle-value-normalization">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="../../resources/testhelper.js"></script>
-<script src="resources/testsuite.js"></script>
-<body>
-<div id="log"></div>
-<script>
-'use strict';
-
-runListValuedPropertyTests('animation-delay-end', [
- { syntax: '<time>' }
-]);
-
-</script>
diff --git a/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html b/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html
deleted file mode 100644
index 2fba4d8e51..0000000000
--- a/testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-start.tentative.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html>
-<title>'animation-delay-start' property</title>
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#dom-stylepropertymap-get">
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#dom-stylepropertymap-set">
-<link rel="help" href="https://drafts.css-houdini.org/css-typed-om-1/#property-stle-value-normalization">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="../../resources/testhelper.js"></script>
-<script src="resources/testsuite.js"></script>
-<body>
-<div id="log"></div>
-<script>
-'use strict';
-
-runListValuedPropertyTests('animation-delay-start', [
- { syntax: '<time>' }
-]);
-
-</script>
diff --git a/testing/web-platform/tests/css/css-ui/webkit-appearance-auto-non-html-namespace-001.html b/testing/web-platform/tests/css/css-ui/webkit-appearance-auto-non-html-namespace-001.html
new file mode 100644
index 0000000000..2756749725
--- /dev/null
+++ b/testing/web-platform/tests/css/css-ui/webkit-appearance-auto-non-html-namespace-001.html
@@ -0,0 +1,19 @@
+<!-- DO NOT EDIT THIS FILE.
+Edit the appearance-* file instead and then run:
+ ./tools/appearance-build-webkit-reftests.py
+-->
+<!DOCTYPE html>
+<title>CSS Basic User Interface Test: -webkit-appearance: auto on elements in non-HTML namespace</title>
+<link rel="match" href="nothing-below-ref.html">
+<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
+<meta name="assert" content="-webkit-appearance: auto should have no effect on non-HTML elements.">
+<style>
+ div * { -webkit-appearance: auto; display: inline-block; width: 1em; height: 1em; }
+</style>
+<p>There should be nothing below:</p>
+<div id=div></div>
+<script>
+for (var tagName of ['button', 'input', 'meter', 'progress', 'select', 'textarea']) {
+ div.appendChild(document.createElementNS('not-html', tagName));
+}
+</script>
diff --git a/testing/web-platform/tests/css/css-values/WEB_FEATURES.yml b/testing/web-platform/tests/css/css-values/WEB_FEATURES.yml
index ca3c0ff91b..dc7331ab95 100644
--- a/testing/web-platform/tests/css/css-values/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/css-values/WEB_FEATURES.yml
@@ -5,6 +5,10 @@ features:
- name: cap
files:
- cap-*
+- name: exp-functions
+ files:
+ - exp-log-*
+ - hypot-pow-sqrt-*
- name: ic
files:
- ic-*
diff --git a/testing/web-platform/tests/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html b/testing/web-platform/tests/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html
index 06277376e9..6d15c3f226 100644
--- a/testing/web-platform/tests/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html
+++ b/testing/web-platform/tests/css/css-values/calc-size/animation/calc-size-height-interpolation.tentative.html
@@ -180,7 +180,7 @@
test_interpolation({
property: 'height',
from: 'calc-size(37px, 200px)',
- to: `calc-size(37px, size * 2 + 3% + 17px)`, /* adds to 100px */
+ to: 'calc-size(37px, size * 2 + 3% + 17px)', /* adds to 100px */
}, [
{ at: -0.25, expect: '225px' },
{ at: 0, expect: '200px' },
@@ -189,4 +189,43 @@
{ at: 1.25, expect: '75px' },
]);
+ test_interpolation({
+ property: 'height',
+ from: 'calc-size(auto, size)',
+ to: '50%',
+ }, [
+ { at: -0.25, expect: '87.5px' },
+ { at: 0, expect: '100px' },
+ { at: 0.75, expect: '137.5px' },
+ { at: 1, expect: '150px' },
+ { at: 1.25, expect: '162.5px' },
+ ]);
+
+ // Rerun roughly the same test with an auto height container.
+ let auto_style_text = `
+ .parent {
+ height: auto;
+ }
+ `;
+ let auto_style_element = document.createElement("style");
+ auto_style_element.append(document.createTextNode(auto_style_text));
+ document.head.append(auto_style_element);
+
+ test_interpolation({
+ property: 'height',
+ from: 'calc-size(auto, size * 2)',
+ to: '50%',
+ }, [
+ { at: -0.25, expect: '250px' },
+ { at: 0, expect: '200px' },
+ { at: 0.75, expect: '50px' },
+ /* TODO(https://crbug.com/40339056): It's questionable whether this should
+ * be the case, particularly for transitions. Perhaps the value at the
+ * end should have its percentage-ness back and be 100px here? */
+ { at: 1, expect: '0px' },
+ { at: 1.25, expect: '0px' },
+ ]);
+
+ auto_style_element.remove();
+
</script>
diff --git a/testing/web-platform/tests/css/css-values/calc-size/calc-size-parsing.tentative.html b/testing/web-platform/tests/css/css-values/calc-size/calc-size-parsing.tentative.html
index afcb200424..422ab3c33e 100644
--- a/testing/web-platform/tests/css/css-values/calc-size/calc-size-parsing.tentative.html
+++ b/testing/web-platform/tests/css/css-values/calc-size/calc-size-parsing.tentative.html
@@ -70,4 +70,16 @@ test_valid_value("width", "calc-size(calc-size(min-content, size), size)");
test_invalid_value("height", "calc(12% + calc-size(any, 31%))");
+// Based on the discussion in https://github.com/w3c/csswg-drafts/issues/10259
+// this presumes parse-time conversion of the one-argument form to the
+// two-argument form, but this isn't yet specified.
+test_valid_value("width", "calc-size(30px)", "calc-size(any, 30px)");
+test_valid_value("width", "calc-size(min(30px, 2em))", "calc-size(any, min(30px, 2em))");
+test_invalid_value("width", "calc-size(any)");
+test_valid_value("width", "calc-size(calc-size(any, 30px))", "calc-size(calc-size(any, 30px), size)");
+test_invalid_value("width", "calc-size(size)");
+test_valid_value("width", "calc-size(fit-content)", "calc-size(fit-content, size)");
+test_valid_value("width", "calc-size(calc-size(fit-content, size * 2))", "calc-size(calc-size(fit-content, size * 2), size)");
+test_valid_value("width", "calc-size(calc-size(30px))", "calc-size(calc-size(any, 30px), size)");
+
</script>
diff --git a/testing/web-platform/tests/css/css-values/container-progress-computed.tentative.html b/testing/web-platform/tests/css/css-values/container-progress-computed.tentative.html
index 9ab537cad6..5c8d12f9cd 100644
--- a/testing/web-platform/tests/css/css-values/container-progress-computed.tentative.html
+++ b/testing/web-platform/tests/css/css-values/container-progress-computed.tentative.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="help" href="https://drafts.csswg.org/css-values-5/#container-progress-func">
<link rel="author" title="sakhapov@chromium.org">
<script src="/resources/testharness.js"></script>
@@ -15,6 +16,8 @@
<style>
:root {
font-size: 10px;
+ width: 100vw;
+ height: 100vh;
}
#out-of-scope-container {
container: my-container-3 / size;
@@ -42,8 +45,9 @@
</style>
<script>
-let width = window.innerWidth;
-let height = window.innerHeight;
+// innerWidth and innerHeight have lossy precision, see
+// https://github.com/w3c/csswg-drafts/issues/5260.
+let { width, height } = document.documentElement.getBoundingClientRect();
let extraWidth = 5051;
let extraHeight = 1337;
@@ -68,10 +72,10 @@ test_math_used('calc(container-progress(width of my-container from 0px to 50px)
test_math_used('calc(container-progress(height of my-container from 10px to sign(50px - 500em) * 10px))', (outerHeight - 10) / (-10 - 10), {type:'number'});
// Fallback
-test_math_used('container-progress(width of non-existing-container from 0px to 1px)', width, {type:'number'});
-test_math_used('container-progress(height of non-existing-container from 0px to 1px)', height, {type:'number'});
-test_math_used('container-progress(width of out-of-scope-container from 0px to 1px)', width, {type:'number'});
-test_math_used('container-progress(height of out-of-scope-container from 0px to 1px)', height, {type:'number'});
+test_math_used('container-progress(width of non-existing-container from 0px to 1px)', width, {type:'number', msg: 'container-progress() width fallback for non-existing container name'});
+test_math_used('container-progress(height of non-existing-container from 0px to 1px)', height, {type:'number', msg: 'container-progress() height fallback for non-existing container names'});
+test_math_used('container-progress(width of out-of-scope-container from 0px to 1px)', width, {type:'number', msg: 'container-progress() width fallback for out of scope container'});
+test_math_used('container-progress(height of out-of-scope-container from 0px to 1px)', height, {type:'number', msg: 'container-progress() height fallback for out of scope container'});
// Type checking
test_math_used('calc(container-progress(width from 0px to 1px) * 1px)', innerWidth + 'px');
diff --git a/testing/web-platform/tests/css/css-view-transitions/3d-transform-incoming.html b/testing/web-platform/tests/css/css-view-transitions/3d-transform-incoming.html
index 983ba1d861..4b1411f25d 100644
--- a/testing/web-platform/tests/css/css-view-transitions/3d-transform-incoming.html
+++ b/testing/web-platform/tests/css/css-view-transitions/3d-transform-incoming.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="3d-transform-incoming-ref.html">
-<meta name=fuzzy content="3d-transform-incoming-ref.html:0-255;0-515">
+<meta name=fuzzy content="maxDifference=0-255; totalPixels=0-515">
<script src="/common/reftest-wait.js"></script>
<style>
div { box-sizing: border-box; will-change: transform }
diff --git a/testing/web-platform/tests/css/css-view-transitions/3d-transform-outgoing.html b/testing/web-platform/tests/css/css-view-transitions/3d-transform-outgoing.html
index 398fa97ca9..2fe4887bb1 100644
--- a/testing/web-platform/tests/css/css-view-transitions/3d-transform-outgoing.html
+++ b/testing/web-platform/tests/css/css-view-transitions/3d-transform-outgoing.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="3d-transform-outgoing-ref.html">
-<meta name=fuzzy content="3d-transform-outgoing-ref.html:0-255;0-1200">
+<meta name=fuzzy content="maxDifference=0-255; totalPixels=0-1200">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/block-with-overflowing-text.html b/testing/web-platform/tests/css/css-view-transitions/block-with-overflowing-text.html
index b3f8f42cfd..15d1653bfc 100644
--- a/testing/web-platform/tests/css/css-view-transitions/block-with-overflowing-text.html
+++ b/testing/web-platform/tests/css/css-view-transitions/block-with-overflowing-text.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="block-with-overflowing-text-ref.html">
-<meta name="fuzzy" content="block-with-overflowing-text-ref.html:maxDifference=0-2;totalPixels=0-1200">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-1200">
<script src="/common/reftest-wait.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/break-inside-avoid-child.html b/testing/web-platform/tests/css/css-view-transitions/break-inside-avoid-child.html
index 7b2a83c776..87d56d33af 100644
--- a/testing/web-platform/tests/css/css-view-transitions/break-inside-avoid-child.html
+++ b/testing/web-platform/tests/css/css-view-transitions/break-inside-avoid-child.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="break-inside-avoid-child-ref.html">
-<meta name="fuzzy" content="break-inside-avoid-child-ref.html:0-5;0-1600">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-1600">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/capture-with-offscreen-child.html b/testing/web-platform/tests/css/css-view-transitions/capture-with-offscreen-child.html
index 8588968d8a..7f8085cae2 100644
--- a/testing/web-platform/tests/css/css-view-transitions/capture-with-offscreen-child.html
+++ b/testing/web-platform/tests/css/css-view-transitions/capture-with-offscreen-child.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="capture-with-offscreen-child-ref.html">
-<meta name="fuzzy" content="capture-with-offscreen-child-ref.html:0-5;0-200">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-200">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/capture-with-opacity-zero-child.html b/testing/web-platform/tests/css/css-view-transitions/capture-with-opacity-zero-child.html
index 888d0d1720..2b0563ea31 100644
--- a/testing/web-platform/tests/css/css-view-transitions/capture-with-opacity-zero-child.html
+++ b/testing/web-platform/tests/css/css-view-transitions/capture-with-opacity-zero-child.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="capture-with-visibility-hidden-child-ref.html">
-<meta name="fuzzy" content="capture-with-visibility-hidden-child-ref.html:0-5;0-300">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-300">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html b/testing/web-platform/tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html
index 462d267b94..3a4811ada1 100644
--- a/testing/web-platform/tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html
+++ b/testing/web-platform/tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="capture-with-visibility-mixed-descendants-ref.html">
-<meta name=fuzzy content="capture-with-visibility-mixed-descendants-ref.html:0-5;0-500">
+<meta name=fuzzy content="maxDifference=0-5; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html b/testing/web-platform/tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html
index 4cde9cb586..4a26c50ef8 100644
--- a/testing/web-platform/tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html
+++ b/testing/web-platform/tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="clip-path-larger-than-border-box-on-child-of-named-element-ref.html">
-<meta name="fuzzy" content="clip-path-larger-than-border-box-on-child-of-named-element-ref.html:maxDifference=0-255;totalPixels=0-400">
+<meta name="fuzzy" content="maxDifference=0-255;totalPixels=0-400">
<script src="/common/reftest-wait.js"></script>
<style>
.target {
diff --git a/testing/web-platform/tests/css/css-view-transitions/content-with-transform-new-image.html b/testing/web-platform/tests/css/css-view-transitions/content-with-transform-new-image.html
index f86f64843c..a6c444917a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/content-with-transform-new-image.html
+++ b/testing/web-platform/tests/css/css-view-transitions/content-with-transform-new-image.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="content-with-transform-ref.html">
-<meta name="fuzzy" content="content-with-transform-ref.html:0-1;0-500">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/content-with-transform-old-image.html b/testing/web-platform/tests/css/css-view-transitions/content-with-transform-old-image.html
index 3755910a1b..c6fda7f988 100644
--- a/testing/web-platform/tests/css/css-view-transitions/content-with-transform-old-image.html
+++ b/testing/web-platform/tests/css/css-view-transitions/content-with-transform-old-image.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="content-with-transform-ref.html">
-<meta name="fuzzy" content="content-with-transform-ref.html:0-1;0-400">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-400">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/css-tags-paint-order-with-entry.html b/testing/web-platform/tests/css/css-view-transitions/css-tags-paint-order-with-entry.html
index 2ba73758e2..c8d92ed33f 100644
--- a/testing/web-platform/tests/css/css-view-transitions/css-tags-paint-order-with-entry.html
+++ b/testing/web-platform/tests/css/css-view-transitions/css-tags-paint-order-with-entry.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="css-tags-paint-order-with-entry-ref.html">
-<meta name="fuzzy" content="css-tags-paint-order-with-entry-ref.html:0-120;0-300">
+<meta name="fuzzy" content="maxDifference=0-120; totalPixels=0-300">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/dialog-in-rtl-iframe.html b/testing/web-platform/tests/css/css-view-transitions/dialog-in-rtl-iframe.html
index f5959bf434..05bc98dca9 100644
--- a/testing/web-platform/tests/css/css-view-transitions/dialog-in-rtl-iframe.html
+++ b/testing/web-platform/tests/css/css-view-transitions/dialog-in-rtl-iframe.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="dialog-in-rtl-iframe-ref.html">
- <meta name=fuzzy content="dialog-in-rtl-iframe-ref.html:0-80;0-500">
+ <meta name=fuzzy content="maxDifference=0-80; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
iframe {
diff --git a/testing/web-platform/tests/css/css-view-transitions/event-pseudo-name.html b/testing/web-platform/tests/css/css-view-transitions/event-pseudo-name.html
index a57c1d5108..d77c817345 100644
--- a/testing/web-platform/tests/css/css-view-transitions/event-pseudo-name.html
+++ b/testing/web-platform/tests/css/css-view-transitions/event-pseudo-name.html
@@ -2,7 +2,6 @@
<title>View transitions: event pseudo name</title>
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
-<link rel="match" href="web-animations-api-ref.html">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/far-away-capture.html b/testing/web-platform/tests/css/css-view-transitions/far-away-capture.html
index 97ad9dfb44..9ac1621639 100644
--- a/testing/web-platform/tests/css/css-view-transitions/far-away-capture.html
+++ b/testing/web-platform/tests/css/css-view-transitions/far-away-capture.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="far-away-capture-ref.html">
-<meta name="fuzzy" content="far-away-capture-ref.html:0-1;0-5">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-5">
<script src="/common/reftest-wait.js"></script>
<style>
.flex {
diff --git a/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html b/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html
index e50e6654a7..14371aca3f 100644
--- a/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html
@@ -6,7 +6,7 @@
<link rel="match" href="fractional-box-with-overflow-children-ref.html">
<!-- subpixel differences are ok in this test (in highdpi), but channel difference
should not be perceptible -->
-<meta name=fuzzy content="fractional-box-with-overflow-children-ref.html:0-3;0-100">
+<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html b/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html
index acf72e20df..0d19bf9c29 100644
--- a/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html
@@ -6,7 +6,7 @@
<link rel="match" href="fractional-box-with-overflow-children-ref.html">
<!-- subpixel differences are ok in this test (in highdpi), but channel difference
should not be perceptible -->
-<meta name=fuzzy content="fractional-box-with-overflow-children-ref.html:0-3;0-100">
+<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-ref.html
new file mode 100644
index 0000000000..86bc2a4a36
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+body {
+ background: lightgreen;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: lightblue;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html
new file mode 100644
index 0000000000..89360c0dcc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-new-main-new-iframe-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+/* Keep showing the live state for the main frame so we can assert the state of
+ screenshots in the iframe */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 0;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 1;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+ /* The iframe is showing new live DOM */
+ ::view-transition-group(root) {
+ animation-duration: 300s;
+ }
+ ::view-transition-new(root) {
+ animation: unset;
+ opacity: 1;
+ }
+ ::view-transition-old(root) {
+ animation: unset;
+ opacity: 0;
+ }
+</style>
+<body></body>
+"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor) {
+ document.documentElement.style.background = oldColor;
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ }).ready;
+ }
+
+ async function runTest() {
+ await startTransition(document, "green", "lightgreen");
+
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue");
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-ref.html
new file mode 100644
index 0000000000..baafea3656
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+body {
+ background: lightgreen;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: blue;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html
new file mode 100644
index 0000000000..7a9c53ffc1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-new-main-old-iframe-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+/* Keep showing the live state for the main frame so we can assert the state of
+ screenshots in the iframe */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 0;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 1;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+ /* The iframe is showing old screenshots */
+ ::view-transition-group(root) {
+ animation-duration: 300s;
+ }
+ ::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+ }
+ ::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+ }
+</style>
+<body></body>
+"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor) {
+ document.documentElement.style.background = oldColor;
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ }).ready;
+ }
+
+ async function runTest() {
+ await startTransition(document, "green", "lightgreen");
+
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue");
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-ref.html
new file mode 100644
index 0000000000..7033cd9d21
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+body {
+ background: green;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: lightblue;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html
new file mode 100644
index 0000000000..d3681aa434
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html
@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-old-main-new-iframe-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+/* Keep showing the screenshot for the main frame */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+ /* The iframe is showing live DOM */
+ ::view-transition-group(root) {
+ animation-duration: 300s;
+ }
+ ::view-transition-new(root) {
+ animation: unset;
+ opacity: 1;
+ }
+ ::view-transition-old(root) {
+ animation: unset;
+ opacity: 0;
+ }
+</style>
+<body></body>
+"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor) {
+ document.documentElement.style.background = oldColor;
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ }).ready;
+ }
+
+ async function runTest() {
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue");
+
+ await startTransition(document, "green", "lightgreen");
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-ref.html
new file mode 100644
index 0000000000..2824884c4f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+body {
+ background: green;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: blue;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html
new file mode 100644
index 0000000000..bcdc566a26
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html
@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-old-main-old-iframe-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+/* Keep showing the screenshot for the main frame */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+ /* The iframe is showing an old screenshot */
+ ::view-transition-group(root) {
+ animation-duration: 300s;
+ }
+ ::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+ }
+ ::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+ }
+</style>
+<body></body>
+"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor) {
+ document.documentElement.style.background = oldColor;
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ }).ready;
+ }
+
+ async function runTest() {
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue");
+
+ await startTransition(document, "green", "lightgreen");
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-ref.html
new file mode 100644
index 0000000000..9253bb5f21
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+body {
+ background: green;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: orange;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html
new file mode 100644
index 0000000000..bd58368645
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-old-main-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+}
+
+/* The main frame is showing the old screenshot */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+ body {
+ background: orange;
+ }
+</style>
+<body></body>"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor) {
+ document.documentElement.style.background = oldColor;
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ }).ready;
+ }
+
+ async function runTest() {
+ await startTransition(document, "green", "lightgreen");
+
+ // Start an iframe transition while the main frame transition is showing the
+ // old screenshot. This change shouldn't show up visually because the old
+ // screenshot on the main frame still has the iframe's old content.
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue");
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-ref.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-ref.html
new file mode 100644
index 0000000000..94bd3bdac3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<title>View transitions: iframe and main frame transition at the same time with name on iframe (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+ border: 1px solid orange;
+}
+
+body {
+ background: green;
+}
+</style>
+
+<iframe srcdoc="
+<style>
+body {
+ background: blue;
+}
+</style>
+"></iframe>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html
new file mode 100644
index 0000000000..f948e89dc7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html
@@ -0,0 +1,93 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: iframe and main frame transition at the same time with name on iframe</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:khushalsagar@chromium.org">
+<link rel="match" href="iframe-and-main-frame-transition-with-name-on-iframe-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+iframe {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 50vw;
+ height: 50vh;
+ view-transition-name: inner;
+}
+
+.old {
+ border: 1px solid black;
+}
+
+.new {
+ border: 1px solid orange;
+}
+
+/* The main frame is showing the old screenshot for the root */
+::view-transition-group(root) {
+ animation-duration: 300s;
+}
+::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+}
+::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+}
+
+/* The iframe is showing the live screenshot */
+::view-transition-new(inner) {
+ animation: unset;
+ opacity: 1;
+}
+::view-transition-old(inner) {
+ animation: unset;
+ opacity: 0;
+}
+
+</style>
+
+<iframe id="inner" srcdoc="
+<style>
+ /* The iframe document itself is showing an old screenshot */
+ ::view-transition-group(root) {
+ animation-duration: 300s;
+ }
+ ::view-transition-new(root) {
+ animation: unset;
+ opacity: 0;
+ }
+ ::view-transition-old(root) {
+ animation: unset;
+ opacity: 1;
+ }
+</style>
+<body></body>"></iframe>
+<script>
+ onload = runTest;
+
+ async function startTransition(document, oldColor, newColor, nestedFrame) {
+ document.documentElement.style.background = oldColor;
+ if (nestedFrame != null)
+ nestedFrame.classList.add("old");
+
+ await document.startViewTransition(() => {
+ document.documentElement.style.background = newColor;
+ if (nestedFrame != null) {
+ nestedFrame.classList.remove("old");
+ nestedFrame.classList.add("new");
+ }
+ }).ready;
+ }
+
+ async function runTest() {
+ await startTransition(document, "green", "lightgreen", document.getElementById("inner"));
+
+ const iframeDocument = document.querySelector("iframe").contentDocument;
+ await startTransition(iframeDocument, "blue", "lightblue", null);
+
+ takeScreenshot();
+ }
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-new-has-scrollbar.html b/testing/web-platform/tests/css/css-view-transitions/iframe-new-has-scrollbar.html
index 67a57bb885..81072ac38a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/iframe-new-has-scrollbar.html
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-new-has-scrollbar.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="iframe-new-has-scrollbar-ref.html">
- <meta name=fuzzy content="iframe-new-has-scrollbar-ref.html:0-80;0-500">
+ <meta name=fuzzy content="maxDifference=0-80; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
iframe {
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-old-has-scrollbar.html b/testing/web-platform/tests/css/css-view-transitions/iframe-old-has-scrollbar.html
index 96dd75a3df..5d26633398 100644
--- a/testing/web-platform/tests/css/css-view-transitions/iframe-old-has-scrollbar.html
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-old-has-scrollbar.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="iframe-old-has-scrollbar-ref.html">
- <meta name=fuzzy content="iframe-old-has-scrollbar-ref.html:0-80;0-500">
+ <meta name=fuzzy content="maxDifference=0-80; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
iframe {
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html b/testing/web-platform/tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html
index 31f6a10ed6..13e743c3a1 100644
--- a/testing/web-platform/tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html
@@ -1,18 +1,17 @@
<!DOCTYPE html>
-<html class=reftest-wait>
+<html class=test-wait>
<title>View transitions: crash test</title>
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
-<script src="/common/reftest-wait.js"></script>
<html>
<head>
<script>
function eventhandler1() {
- var var00106 = htmlvar00011.contentDocument;
- var var00228 = var00106.startViewTransition();
+ var iframeDoc = iframe.contentDocument;
+ var viewTransition = iframeDoc.startViewTransition();
requestAnimationFrame(() => {
requestAnimationFrame(() => {
- requestAnimationFrame(takeScreenshot);
+ requestAnimationFrame(() => document.documentElement.classList.remove("test-wait"));
})
});
}
@@ -20,8 +19,7 @@ function eventhandler1() {
</script>
</head>
<body>
-<iframe id="htmlvar00011" onunload="eventhandler3()" border="0" srcdoc="A#:^;&lt;gV&lt;&gt;8" style=":{,J" referrerpolicy="unsafe-url" background="!xp&gt;" nohref="nohref" nonce="nonce" inputEncoding="s" offsetX="0.3538512271910753">:+j&amp;;&amp;-^&gt;.7xf\jZ1,xb</iframe>
-<style id="htmlvar00014" nonce="nonce" media="screen and (min-width:0px)" onerror="eventhandler1()" onload="eventhandler1()" dir="N5!" updateRangeEnd="0" abbr="4IvGMN[Wxd" symbols="=d##y#)DA4V8ya}KO.cv" frameBorder="^b*]&amp;:|#lB:" search="N">ynFXo*</style>
+<iframe id="iframe" onunload="eventhandler3()" border="0" srcdoc="A#:^;&lt;gV&lt;&gt;8" style=":{,J" referrerpolicy="unsafe-url" background="!xp&gt;" nohref="nohref" nonce="nonce" inputEncoding="s" offsetX="0.3538512271910753">:+j&amp;;&amp;-^&gt;.7xf\jZ1,xb</iframe>
+<style nonce="nonce" media="screen and (min-width:0px)" onerror="eventhandler1()" onload="eventhandler1()" dir="N5!" updateRangeEnd="0" abbr="4IvGMN[Wxd" symbols="=d##y#)DA4V8ya}KO.cv" frameBorder="^b*]&amp;:|#lB:" search="N">ynFXo*</style>
</body>
</html>
-
diff --git a/testing/web-platform/tests/css/css-view-transitions/iframe-transition.sub.html b/testing/web-platform/tests/css/css-view-transitions/iframe-transition.sub.html
index 8fa361b0fc..5f26a494b2 100644
--- a/testing/web-platform/tests/css/css-view-transitions/iframe-transition.sub.html
+++ b/testing/web-platform/tests/css/css-view-transitions/iframe-transition.sub.html
@@ -6,7 +6,7 @@
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="iframe-transition-ref.html">
<meta name="assert" content="Ensure that iframe root capture is sized and displayed correctly">
-<meta name=fuzzy content="iframe-transition-ref.html:0-200;0-200">
+<meta name=fuzzy content="maxDifference=0-200; totalPixels=0-200">
<script src="/common/reftest-wait.js"></script>
<style>
iframe { width: 500px; height: 500px }
diff --git a/testing/web-platform/tests/css/css-view-transitions/inline-with-offset-from-containing-block.html b/testing/web-platform/tests/css/css-view-transitions/inline-with-offset-from-containing-block.html
index 8640899814..026ecb240a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/inline-with-offset-from-containing-block.html
+++ b/testing/web-platform/tests/css/css-view-transitions/inline-with-offset-from-containing-block.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="inline-with-offset-from-containing-block-ref.html">
-<meta name="fuzzy" content="inline-with-offset-from-containing-block-ref.html:0-255;0-1400">
+<meta name="fuzzy" content="maxDifference=0-255; totalPixels=0-1400">
<script src="/common/reftest-wait.js"></script>
<script src="/common/rendering-utils.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html
index 23f5fc22cf..65b14a6c4b 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-and-on-top-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-and-on-top-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html
index fbc8edadc0..b35222c24a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-and-on-top-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-and-on-top-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-700">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html
index 611d4da21a..a122cd4b3b 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-viewport-offscreen-ref.html:maxDifference=0-3;totalPixels=0-950">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-950">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html
index bda3ebf1b1..567819fadf 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-viewport-offscreen-ref.html:maxDifference=0-2;totalPixels=0-445">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-445">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html
index e881e19622..42f97555f5 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html
index c8c3c53082..87b9a20795 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-below-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-below-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-445">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-1600">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html
index c8471032a4..97a3cb41ff 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-left-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-left-of-viewport-offscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html
index 04ab58f3aa..a41a738826 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-left-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-left-of-viewport-offscreen-ref.html:maxDifference=0-3;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html
index 15cc94ffe7..accd909158 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-left-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-left-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html
index 0d2aeec59d..e16806e8f3 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-left-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-left-of-viewport-partially-onscreen-ref.html:maxDifference=0-3;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html
index 6ef8edd3b0..24edbc1ec7 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-on-top-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-on-top-of-viewport-offscreen-ref.html:maxDifference=0-6;totalPixels=0-920">
+<meta name="fuzzy" content="maxDifference=0-6;totalPixels=0-920">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html
index 5e303e8286..8dfc8eefe1 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-on-top-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-on-top-of-viewport-offscreen-ref.html:maxDifference=0-3;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html
index a9e5f5842a..c301e47099 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-on-top-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-on-top-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html
index 41dc622914..1f810af745 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-on-top-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-on-top-of-viewport-partially-onscreen-ref.html:maxDifference=0-3;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html
index 719701fe88..426751d093 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-and-left-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-and-left-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html
index e8eeec3f26..ea10e2471b 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-and-left-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-and-left-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-700">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html
index 89d00a53a8..53749f29b2 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-of-viewport-offscreen-ref.html:maxDifference=0-2;totalPixels=0-445">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-445">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html
index 04247af18e..b5337c4491 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-of-viewport-offscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-of-viewport-offscreen-ref.html:maxDifference=0-3;totalPixels=0-445">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-445">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html
index a7b599e5eb..ac3fe48a0a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-of-viewport-partially-onscreen-ref.html:maxDifference=0-2;totalPixels=0-330">
+<meta name="fuzzy" content="maxDifference=0-2;totalPixels=0-330">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html
index 2498f2e1f1..2626910d78 100644
--- a/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html
+++ b/testing/web-platform/tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="massive-element-right-of-viewport-partially-onscreen-ref.html">
-<meta name="fuzzy" content="massive-element-right-of-viewport-partially-onscreen-ref.html:maxDifference=0-3;totalPixels=0-445">
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-445">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html b/testing/web-platform/tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html
index e166b3c9df..8fff184b2a 100644
--- a/testing/web-platform/tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html
+++ b/testing/web-platform/tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="multiline-span-with-overflowing-text-and-box-decorations-ref.html">
-<meta name="fuzzy" content="multiline-span-with-overflowing-text-and-box-decorations-ref.html:maxDifference=0-3;totalPixels=0-4900">
+<meta name="fuzzy" content="maxDifference=0-3; totalPixels=0-4900">
<script src="/common/reftest-wait.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-and-old-sizes-match.html b/testing/web-platform/tests/css/css-view-transitions/new-and-old-sizes-match.html
index 094d6963bf..70b6515fb5 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-and-old-sizes-match.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-and-old-sizes-match.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="new-and-old-sizes-match-ref.html">
-<meta name="fuzzy" content="new-and-old-sizes-match-ref.html:0-1;0-300">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-300">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped-ref.html b/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped-ref.html
new file mode 100644
index 0000000000..caa99f2807
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped-ref.html
@@ -0,0 +1,34 @@
+<!doctype HTML>
+<html>
+<head>
+<style>
+html {
+ background: lightpink;
+}
+div {
+ position: relative;
+ width: 200px;
+ height: 200px;
+}
+
+.outer {
+ background-color: blue;
+ box-shadow: -50px -50px 0px 0px rgba(0,0,0,1);
+ left: 100px;
+ top: 100px;
+}
+
+.inner {
+ background-color: red;
+ left: 50px;
+ top: 50px;
+}
+
+</style>
+</head>
+<body>
+</body>
+<div class="outer">
+ <div class="inner"></div>
+</div>
+</html>
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped.html b/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped.html
new file mode 100644
index 0000000000..69a8de5f52
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-ancestor-clipped.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<title>View transitions: capture opacity elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:mattwoodrow@apple.com">
+<link rel="match" href="new-content-ancestor-clipped-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+.outer {
+ background-color: blue;
+ overflow: hidden;
+ box-shadow: -50px -50px 0px 0px rgba(0,0,0,1);
+ position: relative;
+ left: 100px;
+ top: 100px;
+ width: 200px;
+ height: 200px;
+ view-transition-name: outer;
+}
+.inner {
+ background-color: red;
+ position: relative;
+ left: 50px;
+ top: 50px;
+ width: 200px;
+ height: 200px;
+ view-transition-name: inner;
+}
+/* We're verifying what we capture, so just display the new contents for 5 minutes. */
+html::view-transition-group(*) { animation-duration: 300s; }
+html::view-transition-new(*) { animation: unset; opacity: 1; }
+html::view-transition-old(*) { animation: unset; opacity: 0; }
+/* hide the root so we show transition background to ensure we're in a transition */
+html::view-transition-group(root) { animation: unset; opacity: 0; }
+html::view-transition { background: lightpink; }
+</style>
+<div class="outer">
+ <div class="inner"></div>
+</div>
+<script>
+failIfNot(document.startViewTransition, "Missing document.startViewTransition");
+
+async function runTest() {
+ let t = document.startViewTransition(() => {
+ requestAnimationFrame(() => requestAnimationFrame(takeScreenshot));
+ });
+}
+onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
+</script>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-clip-path.html b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-clip-path.html
index 702bb09bc3..19af2493d0 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-clip-path.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-clip-path.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="new-content-captures-clip-path-ref.html">
-<meta name="fuzzy" content="new-content-captures-clip-path-ref.html:0-1;0-500">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-different-size.html b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-different-size.html
index 740199675d..18f323c320 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-different-size.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-different-size.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="new-content-captures-different-size-ref.html">
-<meta name=fuzzy content="new-content-captures-different-size-ref.html:0-40;0-30000">
+<meta name=fuzzy content="maxDifference=0-40; totalPixels=0-30000">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-spans.html b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-spans.html
index 94bef1d6dd..5f4807404c 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-captures-spans.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-captures-spans.html
@@ -4,6 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="new-content-captures-spans-ref.html">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-400">
<script src="/common/reftest-wait.js"></script>
<style>
span {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left-ref.html b/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left-ref.html
new file mode 100644
index 0000000000..e86e5197da
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<title>View transitions: capture elements and then change overflow (ref)</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<style>
+body { background: pink }
+#target {
+ position: relative;
+ background: green;
+ left: 10px;
+ width: 100px;
+ height: 100px;
+ view-transition-name: target;
+}
+#target.toggle {
+ outline: 300px solid transparent;
+}
+</style>
+
+<div id=target class=toggle></div>
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left.html b/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left.html
new file mode 100644
index 0000000000..e362dce76a
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-changes-overflow-left.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<meta name="timeout" content="long">
+<html class=reftest-wait>
+<title>View transitions: capture elements and then change overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:vmpstr@chromium.org">
+<link rel="author" href="mailto:mattwoodrow@apple.com">
+<link rel="match" href="new-content-changes-overflow-left-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+#target {
+ position: relative;
+ background: green;
+ left: 10px;
+ width: 100px;
+ height: 100px;
+ view-transition-name: target;
+}
+#target.toggle {
+ outline: 300px solid transparent;
+}
+
+html::view-transition-group(*) { animation-duration: 300s; }
+html::view-transition-new(*) { animation: unset; opacity: 1; }
+html::view-transition-old(*) { animation: unset; opacity: 0; }
+html::view-transition-group(root) { animation: unset; opacity: 0; }
+html::view-transition { background: pink; }
+</style>
+
+<div id=target></div>
+<script>
+
+async function runTest() {
+ document.startViewTransition().ready.then(() => {
+ requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ target.classList.add("toggle");
+ requestAnimationFrame(takeScreenshot);
+ });
+ });
+ });
+}
+onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
+</script>
+
+
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-has-scrollbars.html b/testing/web-platform/tests/css/css-view-transitions/new-content-has-scrollbars.html
index 3246a7e76f..834d0e8f45 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-has-scrollbars.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-has-scrollbars.html
@@ -6,7 +6,7 @@
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7859">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="new-content-has-scrollbars-ref.html">
-<meta name=fuzzy content="new-content-has-scrollbars-ref.html:0-40;0-30000">
+<meta name=fuzzy content="maxDifference=0-40; totalPixels=0-30000">
<script src="/common/reftest-wait.js"></script>
<style>
html, body {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-is-inline.html b/testing/web-platform/tests/css/css-view-transitions/new-content-is-inline.html
index 46c96acb04..81b261a9bf 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-is-inline.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-is-inline.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="new-content-is-inline-ref.html">
-<meta name="fuzzy" content="new-content-is-inline-ref.html:0-255;0-1000">
+<meta name="fuzzy" content="maxDifference=0-255; totalPixels=0-1000">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-object-fit-fill.html b/testing/web-platform/tests/css/css-view-transitions/new-content-object-fit-fill.html
index 04a80409c5..a610d68802 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-object-fit-fill.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-object-fit-fill.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="content-object-fit-fill-ref.html">
-<meta name="fuzzy" content="content-object-fit-fill-ref.html:0-60;0-20">
+<meta name="fuzzy" content="maxDifference=0-60; totalPixels=0-20">
<script src="/common/reftest-wait.js"></script>
<style>
#target {
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-scaling.html b/testing/web-platform/tests/css/css-view-transitions/new-content-scaling.html
index bccb760fb5..376b7fd11f 100644
--- a/testing/web-platform/tests/css/css-view-transitions/new-content-scaling.html
+++ b/testing/web-platform/tests/css/css-view-transitions/new-content-scaling.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="new-content-scaling-ref.html">
-<meta name="fuzzy" content="new-content-scaling-ref.html:maxDifference=0-16;totalPixels=0-400">
+<meta name="fuzzy" content="maxDifference=0-16; totalPixels=0-400">
<script src="/common/reftest-wait.js"></script>
<style>
.shared {
diff --git a/testing/web-platform/tests/css/css-view-transitions/object-view-box-old-image.html b/testing/web-platform/tests/css/css-view-transitions/object-view-box-old-image.html
index 335e48fa70..793dfd46c9 100644
--- a/testing/web-platform/tests/css/css-view-transitions/object-view-box-old-image.html
+++ b/testing/web-platform/tests/css/css-view-transitions/object-view-box-old-image.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="object-view-box-ref.html">
-<meta name="fuzzy" content="object-view-box-ref.html:0-1;0-300">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-300">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-clip-path.html b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-clip-path.html
index 7ed5e1ca15..67aa5bf32f 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-clip-path.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-clip-path.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-captures-clip-path-ref.html">
-<meta name="fuzzy" content="old-content-captures-clip-path-ref.html:0-1;0-500">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-different-size.html b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-different-size.html
index 392247bc95..7f3be742b0 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-different-size.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-different-size.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-captures-different-size-ref.html">
-<meta name=fuzzy content="old-content-captures-different-size-ref.html:0-40;0-30000">
+<meta name=fuzzy content="maxDifference=0-40; totalPixels=0-30000">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-opacity.html b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-opacity.html
index cd71c9dfaf..97b8911644 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-opacity.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-opacity.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-captures-opacity-ref.html">
-<meta name=fuzzy content="old-content-captures-opacity-ref.html:0-1;0-50000">
+<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-50000">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-root.html b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-root.html
index 51a22bc136..a1cb332942 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-captures-root.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-captures-root.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-captures-root-ref.html">
-<meta name="fuzzy" content="old-content-captures-root-ref.html:0-1;0-500">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
.box {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-has-scrollbars.html b/testing/web-platform/tests/css/css-view-transitions/old-content-has-scrollbars.html
index 13e26c702d..b9638ebb10 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-has-scrollbars.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-has-scrollbars.html
@@ -6,7 +6,7 @@
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7859">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="old-content-has-scrollbars-ref.html">
-<meta name=fuzzy content="old-content-has-scrollbars-ref.html:0-40;0-30000">
+<meta name=fuzzy content="maxDifference=0-40; totalPixels=0-30000">
<script src="/common/reftest-wait.js"></script>
<style>
html, body {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-is-inline.html b/testing/web-platform/tests/css/css-view-transitions/old-content-is-inline.html
index 70ff67c0e0..3333a07a02 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-is-inline.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-is-inline.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="old-content-is-inline-ref.html">
-<meta name="fuzzy" content="old-content-is-inline-ref.html:0-255;0-500">
+<meta name="fuzzy" content="maxDifference=0-255; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-object-fit-fill.html b/testing/web-platform/tests/css/css-view-transitions/old-content-object-fit-fill.html
index 0652b30a07..51023fa27b 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-object-fit-fill.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-object-fit-fill.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="content-object-fit-fill-ref.html">
-<meta name="fuzzy" content="content-object-fit-fill-ref.html:0-60;0-20">
+<meta name="fuzzy" content="maxDifference=0-60; totalPixels=0-20">
<script src="/common/reftest-wait.js"></script>
<style>
#target {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path-reference.html b/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path-reference.html
index 5e6969d9cc..827ca027dd 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path-reference.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path-reference.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-object-view-box-clip-path-reference-ref.html">
-<meta name="fuzzy" content="old-content-object-view-box-clip-path-reference-ref.html:0-1;0-100">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
.target {
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path.html b/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path.html
index f894555154..d0d26b9790 100644
--- a/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path.html
+++ b/testing/web-platform/tests/css/css-view-transitions/old-content-object-view-box-clip-path.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-object-view-box-clip-path-ref.html">
-<meta name="fuzzy" content="old-content-object-view-box-clip-path-ref.html:0-1;0-30">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-30">
<script src="/common/reftest-wait.js"></script>
<style>
.target {
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden-ref.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden-ref.html
new file mode 100644
index 0000000000..02bcb5bb49
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html style="background:pink">
+<title>View transitions: overflow:hidden is respected on pseudo elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<style>
+body {
+ margin: 0px;
+}
+div {
+ width: 200px;
+ height: 200px;
+}
+#target {
+ position: absolute;
+ width: 200px;
+ height: 200px;
+ background: green;
+ overflow: hidden;
+}
+#inner {
+ position: relative;
+ left: 100px;
+ top: 100px;
+ background: blue;
+}
+.offset {
+ left: 400px;
+}
+</style>
+
+<div id="target"><div id="inner"></div></div>
+<div id="target" class="offset"><div id="inner"></div></div>
+</html>
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden.html
new file mode 100644
index 0000000000..e40df4f6a8
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-overflow-hidden.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<title>View transitions: overflow:hidden is respected on pseudo elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:mattwoodrow@apple.com">
+<link rel="match" href="pseudo-element-overflow-hidden-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+body {
+ margin: 0px;
+}
+div {
+ width: 200px;
+ height: 200px;
+}
+#target {
+ width: 200px;
+ height: 200px;
+ background: green;
+ view-transition-name: target;
+}
+#inner {
+ position: relative;
+ left: 100px;
+ top: 100px;
+ background: blue;
+}
+
+/* We're verifying what we capture, so just display both of the captures for 5 minutes. */
+html::view-transition-group(*) { animation-duration: 300s; }
+html::view-transition-new(*) { animation: unset; opacity: 1; }
+html::view-transition-old(*) { animation: unset; opacity: 1; }
+/* hide the root so we show transition background to ensure we're in a transition */
+html::view-transition-group(root) { animation: unset; opacity: 0; }
+html::view-transition { background: pink; }
+
+html::view-transition-new(target) {
+ overflow:hidden;
+}
+html::view-transition-old(target) {
+ left: 400px;
+ overflow: hidden;
+}
+</style>
+
+<div id="target"><div id="inner"></div></div>
+<script>
+failIfNot(document.startViewTransition, "Missing document.startViewTransition");
+
+async function runTest() {
+ let t = document.startViewTransition();
+ t.ready.then(takeScreenshot);
+}
+onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
+</script>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d-ref.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d-ref.html
new file mode 100644
index 0000000000..1eefed24b3
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<title>View transitions: transform-style: preserve-3d is respected on pseudo elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+
+<style>
+body {
+ background: pink;
+}
+div {
+ width: 200px;
+ height: 200px;
+ background: green;
+}
+
+</style>
+
+<div id="target"></div>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d.html
new file mode 100644
index 0000000000..474f743e1c
--- /dev/null
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-element-preserve-3d.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<title>View transitions: transform-style: preserve-3d is respected on pseudo elements</title>
+<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
+<link rel="author" href="mailto:mattwoodrow@apple.com">
+<link rel="match" href="pseudo-element-preserve-3d-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+div {
+ width: 200px;
+ height: 200px;
+ background: green;
+ view-transition-name: target;
+}
+
+/* We're verifying what we capture, so just display the old contents for 5 minutes. */
+html::view-transition-group(*) { animation-duration: 300s; }
+html::view-transition-group(target) { background: green; }
+html::view-transition-new(*) { animation: unset; opacity: 0; }
+html::view-transition-old(*) { animation: unset; opacity: 1; }
+/* hide the root so we show transition background to ensure we're in a transition */
+html::view-transition-group(root) { animation: unset; opacity: 0; }
+html::view-transition { background: pink; }
+html::view-transition-image-pair(target) {
+ transform: rotateX(90deg);
+ transform-style: preserve-3d;
+}
+html::view-transition-old(target) {
+ transform: rotateX(90deg);
+}
+</style>
+
+<div id="target"></div>
+<script>
+failIfNot(document.startViewTransition, "Missing document.startViewTransition");
+
+async function runTest() {
+ let t = document.startViewTransition();
+ t.ready.then(takeScreenshot);
+}
+onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
+</script>
+
+</html>
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-rendering-invalidation.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-rendering-invalidation.html
index e1f1718618..4d492c40d8 100644
--- a/testing/web-platform/tests/css/css-view-transitions/pseudo-rendering-invalidation.html
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-rendering-invalidation.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="pseudo-rendering-invalidation-ref.html">
-<meta name="fuzzy" content="pseudo-rendering-invalidation-ref.html:0-20;0-300">
+<meta name="fuzzy" content="maxDifference=0-20; totalPixels=0-300">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildard.html b/testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildcard.html
index 13490d5878..13490d5878 100644
--- a/testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildard.html
+++ b/testing/web-platform/tests/css/css-view-transitions/pseudo-with-classes-match-wildcard.html
diff --git a/testing/web-platform/tests/css/css-view-transitions/root-captured-as-different-tag.html b/testing/web-platform/tests/css/css-view-transitions/root-captured-as-different-tag.html
index a4d6f11ad4..1d4d1610d1 100644
--- a/testing/web-platform/tests/css/css-view-transitions/root-captured-as-different-tag.html
+++ b/testing/web-platform/tests/css/css-view-transitions/root-captured-as-different-tag.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="old-content-captures-root-ref.html">
-<meta name="fuzzy" content="old-content-captures-root-ref.html:0-1;0-500">
+<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
:root { view-transition-name: another-root; }
diff --git a/testing/web-platform/tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html b/testing/web-platform/tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html
index b9c384d94a..d67bb256fd 100644
--- a/testing/web-platform/tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html
+++ b/testing/web-platform/tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html
@@ -1,10 +1,9 @@
<!DOCTYPE html>
-<html class=reftest-wait>
+<html class=test-wait>
<title>View transitions: entry animation from root display none</title>
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
-<script src="/common/reftest-wait.js"></script>
<style>
.hidden {
display: none;
@@ -15,16 +14,14 @@
</style>
<script>
-failIfNot(document.startViewTransition, "Missing document.startViewTransition");
-
async function runTest() {
transition = document.startViewTransition();
- transition.ready.then(
+ transition.ready.then(() => {
requestAnimationFrame(() => {
document.documentElement.classList.toggle("hidden");
- }));
- transition.finished.then(takeScreenshot);
+ });
+ });
+ transition.finished.then(() => document.documentElement.classList.remove("test-wait"));
}
onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
</script>
-
diff --git a/testing/web-platform/tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html b/testing/web-platform/tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html
index 2fa0132727..3c3429412b 100644
--- a/testing/web-platform/tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html
+++ b/testing/web-platform/tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html
@@ -4,6 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="root-scrollbar-with-fixed-background-ref.html">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-4500">
<script src="/common/rendering-utils.js"></script>
<script src="/common/reftest-wait.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html b/testing/web-platform/tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html
index df0ec1a9d8..6044ba2636 100644
--- a/testing/web-platform/tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html
+++ b/testing/web-platform/tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html
@@ -10,4 +10,4 @@ body {
padding: 0;
margin: 0;
}
-
+</style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/rotated-cat-off-top-edge.html b/testing/web-platform/tests/css/css-view-transitions/rotated-cat-off-top-edge.html
index c7179b7a01..f61b916caa 100644
--- a/testing/web-platform/tests/css/css-view-transitions/rotated-cat-off-top-edge.html
+++ b/testing/web-platform/tests/css/css-view-transitions/rotated-cat-off-top-edge.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="rotated-cat-off-top-edge-ref.html">
-<meta name="fuzzy" content="rotated-cat-off-top-edge-ref.html:0-5;0-1500">
+<meta name="fuzzy" content="maxDifference=0-70; totalPixels=0-22000">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/scroller-child-abspos.html b/testing/web-platform/tests/css/css-view-transitions/scroller-child-abspos.html
index 3b94ffa7bb..d04f87215e 100644
--- a/testing/web-platform/tests/css/css-view-transitions/scroller-child-abspos.html
+++ b/testing/web-platform/tests/css/css-view-transitions/scroller-child-abspos.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="scroller-child-abspos-ref.html">
-<meta name="fuzzy" content="scroller-child-abspos-ref.html:0-5;0-800">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-800">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/scroller-child.html b/testing/web-platform/tests/css/css-view-transitions/scroller-child.html
index 5cb2f03e70..7d4368fe57 100644
--- a/testing/web-platform/tests/css/css-view-transitions/scroller-child.html
+++ b/testing/web-platform/tests/css/css-view-transitions/scroller-child.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="scroller-child-ref.html">
-<meta name="fuzzy" content="scroller-child-ref.html:0-5;0-800">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-800">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/scroller.html b/testing/web-platform/tests/css/css-view-transitions/scroller.html
index e61d13b316..9d82046891 100644
--- a/testing/web-platform/tests/css/css-view-transitions/scroller.html
+++ b/testing/web-platform/tests/css/css-view-transitions/scroller.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="scroller-ref.html">
-<meta name="fuzzy" content="scroller-ref.html:0-5;0-10">
+<meta name="fuzzy" content="maxDifference=0-5; totalPixels=0-10">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/set-current-time.html b/testing/web-platform/tests/css/css-view-transitions/set-current-time.html
index f7e802d79b..efe561c6ea 100644
--- a/testing/web-platform/tests/css/css-view-transitions/set-current-time.html
+++ b/testing/web-platform/tests/css/css-view-transitions/set-current-time.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="author" href="mailto:vmpstr@chromium.org">
<link rel="match" href="set-current-time-ref.html">
-<meta name="fuzzy" content="set-current-time-ref.html:0-2;0-40000">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-40000">
<script src="/common/reftest-wait.js"></script>
<style>
:root { view-transition-name: unset; }
diff --git a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-absolute.html b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-absolute.html
index 4a619f29cc..91b71f7eec 100644
--- a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-absolute.html
+++ b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-absolute.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="snapshot-containing-block-absolute-ref.html">
-<meta name="fuzzy" content="snapshot-containing-block-absolute-ref.html:0-20;0-100">
+<meta name="fuzzy" content="maxDifference=0-20; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-includes-scrollbar-gutter.html b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-includes-scrollbar-gutter.html
index 8e47a056bd..40feea46ef 100644
--- a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-includes-scrollbar-gutter.html
+++ b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-includes-scrollbar-gutter.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="snapshot-containing-block-includes-scrollbar-gutter-ref.html">
-<meta name="fuzzy" content="snapshot-containing-block-includes-scrollbar-gutter-ref.html:0-20;0-100">
+<meta name="fuzzy" content="maxDifference=0-20; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
:root {
diff --git a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-static.html b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-static.html
index fc0c7033c9..44fe4cfc5e 100644
--- a/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-static.html
+++ b/testing/web-platform/tests/css/css-view-transitions/snapshot-containing-block-static.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="snapshot-containing-block-static-ref.html">
-<meta name="fuzzy" content="snapshot-containing-block-static-ref.html:0-20;0-100">
+<meta name="fuzzy" content="maxDifference=0-20; totalPixels=0-100">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text-and-box-decorations.html b/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text-and-box-decorations.html
index a2bf59ecb0..262970ad5f 100644
--- a/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text-and-box-decorations.html
+++ b/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text-and-box-decorations.html
@@ -4,8 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="span-with-overflowing-text-and-box-decorations-ref.html">
-<meta name="fuzzy" content="span-with-overflowing-text-and-box-decorations-ref.html:maxDifference=0-3;totalPixels=0-4900">
-
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-4900">
<script src="/common/reftest-wait.js"></script>
<script src="/common/rendering-utils.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text.html b/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text.html
index f3f0f534e9..5a6268ddf0 100644
--- a/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text.html
+++ b/testing/web-platform/tests/css/css-view-transitions/span-with-overflowing-text.html
@@ -4,8 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="span-with-overflowing-text-ref.html">
-<meta name="fuzzy" content="span-with-overflowing-text-ref.html:maxDifference=0-3;totalPixels=0-1100">
-
+<meta name="fuzzy" content="maxDifference=0-3;totalPixels=0-1100">
<script src="/common/reftest-wait.js"></script>
<script src="/common/rendering-utils.js"></script>
diff --git a/testing/web-platform/tests/css/css-view-transitions/transition-in-empty-iframe.html b/testing/web-platform/tests/css/css-view-transitions/transition-in-empty-iframe.html
index 7cd621fbfd..101f7c2a63 100644
--- a/testing/web-platform/tests/css/css-view-transitions/transition-in-empty-iframe.html
+++ b/testing/web-platform/tests/css/css-view-transitions/transition-in-empty-iframe.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:bokan@chromium.org">
<link rel="match" href="transition-in-empty-iframe-ref.html">
- <meta name=fuzzy content="transition-in-empty-iframe-ref.html:0-80;0-1000">
+ <meta name=fuzzy content="maxDifference=0-80; totalPixels=0-1000">
<script src="/common/reftest-wait.js"></script>
<style>
iframe {
diff --git a/testing/web-platform/tests/css/css-view-transitions/web-animations-api-parse-pseudo-argument.html b/testing/web-platform/tests/css/css-view-transitions/web-animations-api-parse-pseudo-argument.html
index 40c9a0d0c2..dfaac62c17 100644
--- a/testing/web-platform/tests/css/css-view-transitions/web-animations-api-parse-pseudo-argument.html
+++ b/testing/web-platform/tests/css/css-view-transitions/web-animations-api-parse-pseudo-argument.html
@@ -3,7 +3,7 @@
<title>View transitions with web-animation API: full parsing of argument</title>
<link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/">
<link rel="match" href="web-animations-api-ref.html">
-<meta name="fuzzy" content="web-animations-api-ref.html:0-2;0-500">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-500">
<meta name="variant" content="?first-pseudo=::view-transition-group( first)">
<meta name="variant" content="?first-pseudo=::view-transition-group(first)">
<meta name="variant" content="?first-pseudo=::view-transition-group( first">
diff --git a/testing/web-platform/tests/css/css-view-transitions/web-animations-api.html b/testing/web-platform/tests/css/css-view-transitions/web-animations-api.html
index c739e416c8..23b1504b24 100644
--- a/testing/web-platform/tests/css/css-view-transitions/web-animations-api.html
+++ b/testing/web-platform/tests/css/css-view-transitions/web-animations-api.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
<link rel="author" href="mailto:khushalsagar@chromium.org">
<link rel="match" href="web-animations-api-ref.html">
-<meta name="fuzzy" content="web-animations-api-ref.html:0-2;0-500">
+<meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-500">
<script src="/common/reftest-wait.js"></script>
<style>
diff --git a/testing/web-platform/tests/css/zoom/iframe-zoom-nested.html b/testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom-nested.html
index 22a491eb0b..22a491eb0b 100644
--- a/testing/web-platform/tests/css/zoom/iframe-zoom-nested.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom-nested.html
diff --git a/testing/web-platform/tests/css/zoom/iframe-zoom.sub.html b/testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom.sub.html
index 82a202161b..a27fb91619 100644
--- a/testing/web-platform/tests/css/zoom/iframe-zoom.sub.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/iframe-zoom.sub.html
@@ -35,7 +35,7 @@
</div>
<div id="another_with_zoom" style="zoom: 3;">
- <iframe src="http://{{hosts[alt][]}}:{{ports[http][0]}}/css/zoom/tentative/resources/iframe_content.html"></iframe>
+ <iframe src="http://{{hosts[alt][]}}:{{ports[http][0]}}/css-viewport/zoom/resources/iframe_content.html"></iframe>
</div>
</body>
diff --git a/testing/web-platform/tests/css/zoom/reference/iframe-zoom-nested-ref.html b/testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-nested-ref.html
index b855278516..b855278516 100644
--- a/testing/web-platform/tests/css/zoom/reference/iframe-zoom-nested-ref.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-nested-ref.html
diff --git a/testing/web-platform/tests/css/zoom/reference/iframe-zoom-ref.html b/testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-ref.html
index 43bc3e24cf..43bc3e24cf 100644
--- a/testing/web-platform/tests/css/zoom/reference/iframe-zoom-ref.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/reference/iframe-zoom-ref.html
diff --git a/testing/web-platform/tests/css/zoom/resources/iframe_content.html b/testing/web-platform/tests/css/css-viewport/zoom/resources/iframe_content.html
index 58c4d03a46..58c4d03a46 100644
--- a/testing/web-platform/tests/css/zoom/resources/iframe_content.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/resources/iframe_content.html
diff --git a/testing/web-platform/tests/css/zoom/resources/nested-iframe-no-zoom.html b/testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-no-zoom.html
index 60b1fd6481..60b1fd6481 100644
--- a/testing/web-platform/tests/css/zoom/resources/nested-iframe-no-zoom.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-no-zoom.html
diff --git a/testing/web-platform/tests/css/zoom/resources/nested-iframe-with-zoom.html b/testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-with-zoom.html
index e7de64aafb..e7de64aafb 100644
--- a/testing/web-platform/tests/css/zoom/resources/nested-iframe-with-zoom.html
+++ b/testing/web-platform/tests/css/css-viewport/zoom/resources/nested-iframe-with-zoom.html
diff --git a/testing/web-platform/tests/css/css-viewport/zoom/scroll-top-test-with-zoom.html b/testing/web-platform/tests/css/css-viewport/zoom/scroll-top-test-with-zoom.html
new file mode 100644
index 0000000000..9656fe120e
--- /dev/null
+++ b/testing/web-platform/tests/css/css-viewport/zoom/scroll-top-test-with-zoom.html
@@ -0,0 +1,33 @@
+<!doctype html>
+<title>Scroll Top Test with Zoom</title>
+<link rel="help" href="https://drafts.csswg.org/css-viewport/#zoom-property">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #container {
+ width: 200px;
+ height: 100px;
+ border: solid thick;
+ overflow: auto;
+ }
+</style>
+<div id="container">
+ <div style="width: 100px; height: 2000px"></div>
+</div>
+
+<script>
+ var container = document.getElementById('container');
+ container.scrollTop = 77;
+ test(function() {
+ assert_equals(container.scrollTop, 77, "Initial scrollTop should be 77");
+ }, "Initial scrollTop with no zoom");
+
+ document.body.style.zoom = 1.2;
+ document.body.offsetTop;
+
+ document.body.style.zoom = 1;
+ test(function() {
+ assert_equals(container.scrollTop, 77, "scrollTop should remain consistent after resetting zoom");
+ }, "scrollTop after resetting zoom");
+ done();
+</script>
diff --git a/testing/web-platform/tests/css/cssom-view/WEB_FEATURES.yml b/testing/web-platform/tests/css/cssom-view/WEB_FEATURES.yml
index a545dbadcb..d5352fb4a1 100644
--- a/testing/web-platform/tests/css/cssom-view/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/cssom-view/WEB_FEATURES.yml
@@ -1,4 +1,7 @@
features:
+- name: check-visibility
+ files:
+ - checkVisibility.html
- name: scroll-into-view
files:
- scrollIntoView-*
diff --git a/testing/web-platform/tests/css/cssom-view/offsetTop-offsetLeft-with-zoom.html b/testing/web-platform/tests/css/cssom-view/offsetTop-offsetLeft-with-zoom.html
index a60a18a431..b0f11ea02e 100644
--- a/testing/web-platform/tests/css/cssom-view/offsetTop-offsetLeft-with-zoom.html
+++ b/testing/web-platform/tests/css/cssom-view/offsetTop-offsetLeft-with-zoom.html
@@ -24,7 +24,6 @@
margin: 1px;
top:10x;
left: 10x;
-
}
.one {
position: relative;
@@ -36,7 +35,7 @@
top: 20px;
left: 20px;
zoom: 2;
- }
+ }
.three {
position: absolute;
@@ -54,18 +53,18 @@
<div id="unzoomed_two" class="square two"></div>
<div id="unzoomed_three" class="square three"></div>
</div>
-<div style="zoom:3" class=outer_div>
+<div style="zoom:3" class="outer_div">
<div id="zoomed_one" class="square one"></div>
<div id="zoomed_two" class="square two"></div>
<div id="zoomed_three" class="square three"></div>
</div>
-<div class ="outer_div" style="margin: 30px;" id="outer_div">
+<div class="outer_div" style="margin: 30px;" id="outer_div">
<div id="zoomed_middle" style="margin: 10px; zoom:2">
<div class="square" id="unzoomed_inner"></div>
</div>
</div>
-<div class = outer_div style="margin: 30px;">
+<div class="outer_div" style="margin: 30px;">
<div id="unzoomed_middle">
<div class="square" id="zoomed_inner" style="zoom:2; width: 100px; height: 100px; border: 1px solid black;"></div>
</div>
@@ -90,12 +89,12 @@ test(() => {
assert_equals(unzoomed_inner.offsetLeft, 11, 'unzoomed_inner.offsetLeft');
assert_equals(zoomed_inner.offsetTop, 0, 'zoomed_inner.offsetTop');
assert_equals(zoomed_inner.offsetLeft, 1, 'zoomed_inner.offsetLeft');
+}, 'Verifies that offsetTop and offsetLeft find the right OffsetParent and return values excluding the target zoom');
- // check that offset is equal between elements when one of them has css zoom
+test(() => {
assert_equals(unzoomed_one.offsetWidth, zoomed_one.offsetWidth, "offsetWidth");
assert_equals(unzoomed_one.offsetHeight, zoomed_one.offsetHeight, "offsetHeight");
assert_equals(zoomed_inner.offsetWidth, outer_div.offsetWidth, "offsetWidth for nested element");
assert_equals(zoomed_inner.offsetHeight, outer_div.offsetHeight, "offsetHeight for nested element");
-
-}, 'Verifies that offsetTop and offsetLeft find the right OffsetParent and return values excluding the target zoom');
+}, 'check that offset is equal between elements when one of them has css zoom');
</script>
diff --git a/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.html b/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.html
new file mode 100644
index 0000000000..d0f0f828b0
--- /dev/null
+++ b/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<title>CSSStyleSheet baseURL</title>
+<link rel="author" title="Erik Nordin" href="mailto:enordin@mozilla.com">
+<link rel="help" href="https://drafts.csswg.org/cssom-1/#dom-cssstylesheetinit-baseurl">
+<div id="target"></div>
+<script src='/resources/testharness.js'></script>
+<script src='/resources/testharnessreport.js'></script>
+<script>
+
+function currentLocation() {
+ const sections = location.href.split("/")
+ sections.pop();
+ return sections.join("/");
+}
+
+test(() => {
+ const span = document.createElement("span");
+ target.appendChild(span);
+ span.attachShadow({ mode: "open" })
+ const shadowDiv = document.createElement("div");
+ span.shadowRoot.appendChild(shadowDiv);
+
+ const fileName = "example.png"
+ const baseURL = `${location.origin}/custom/path/`;
+ const fullURL = `${baseURL}${fileName}`;
+
+ const sheet = new CSSStyleSheet({ baseURL });
+ span.shadowRoot.adoptedStyleSheets = [sheet];
+
+ sheet.replaceSync(`* { background-image: url("${fileName}"); }`);
+ const styleFromRelative = getComputedStyle(shadowDiv).backgroundImage;
+
+ sheet.replaceSync(`* { background-image: url("${fullURL}"); }`);
+ const styleFromFull = getComputedStyle(shadowDiv).backgroundImage;
+
+ assert_equals(styleFromRelative, styleFromFull);
+}, "Constructing sheet with custom base URL ueses that URL for CSS rules");
+
+test(() => {
+ const span = document.createElement("span");
+ target.appendChild(span);
+ span.attachShadow({ mode: "open" })
+ const shadowDiv = document.createElement("div");
+ span.shadowRoot.appendChild(shadowDiv);
+
+ const fileName = "example.png"
+ const baseURL = "custom/path/";
+ const fullURL = `${currentLocation()}/${baseURL}${fileName}`;
+
+ const sheet = new CSSStyleSheet({ baseURL });
+ span.shadowRoot.adoptedStyleSheets = [sheet];
+
+ sheet.replaceSync(`* { background-image: url("${fileName}"); }`);
+ const styleFromRelative = getComputedStyle(shadowDiv).backgroundImage;
+
+ sheet.replaceSync(`* { background-image: url("${fullURL}"); }`);
+ const styleFromFull = getComputedStyle(shadowDiv).backgroundImage;
+
+ assert_equals(styleFromRelative, styleFromFull);
+}, "Constructing sheet with relative URL adds to the constructor document's base URL");
+
+test(() => {
+ assert_throws_dom("NotAllowedError", () => { new CSSStyleSheet({ baseURL: "https://test:test/"}) });
+}, "Constructing sheet with invalid base URL throws a NotAllowedError");
+
+</script>
diff --git a/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html b/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html
deleted file mode 100644
index 8997a59e9c..0000000000
--- a/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable-baseURL.tentative.html
+++ /dev/null
@@ -1,66 +0,0 @@
-<!DOCTYPE html>
-<title>CSSStyleSheet baseURL</title>
-<link rel="author" title="Erik Nordin" href="mailto:enordin@mozilla.com">
-<link rel="help" href="https://github.com/WICG/construct-stylesheets/issues/95#issuecomment-593545252">
-<div id="target"></div>
-<script src='/resources/testharness.js'></script>
-<script src='/resources/testharnessreport.js'></script>
-<script>
-
-function currentLocation() {
- const sections = location.href.split("/")
- sections.pop();
- return sections.join("/");
-}
-
-test(() => {
- const span = document.createElement("span");
- target.appendChild(span);
- span.attachShadow({ mode: "open" })
- const shadowDiv = document.createElement("div");
- span.shadowRoot.appendChild(shadowDiv);
-
- const fileName = "example.png"
- const baseURL = `${location.origin}/custom/path/`;
- const fullURL = `${baseURL}${fileName}`;
-
- const sheet = new CSSStyleSheet({ baseURL });
- span.shadowRoot.adoptedStyleSheets = [sheet];
-
- sheet.replaceSync(`* { background-image: url("${fileName}"); }`);
- const styleFromRelative = getComputedStyle(shadowDiv).backgroundImage;
-
- sheet.replaceSync(`* { background-image: url("${fullURL}"); }`);
- const styleFromFull = getComputedStyle(shadowDiv).backgroundImage;
-
- assert_equals(styleFromRelative, styleFromFull);
-}, "Constructing sheet with custom base URL ueses that URL for CSS rules");
-
-test(() => {
- const span = document.createElement("span");
- target.appendChild(span);
- span.attachShadow({ mode: "open" })
- const shadowDiv = document.createElement("div");
- span.shadowRoot.appendChild(shadowDiv);
-
- const fileName = "example.png"
- const baseURL = "custom/path/";
- const fullURL = `${currentLocation()}/${baseURL}${fileName}`;
-
- const sheet = new CSSStyleSheet({ baseURL });
- span.shadowRoot.adoptedStyleSheets = [sheet];
-
- sheet.replaceSync(`* { background-image: url("${fileName}"); }`);
- const styleFromRelative = getComputedStyle(shadowDiv).backgroundImage;
-
- sheet.replaceSync(`* { background-image: url("${fullURL}"); }`);
- const styleFromFull = getComputedStyle(shadowDiv).backgroundImage;
-
- assert_equals(styleFromRelative, styleFromFull);
-}, "Constructing sheet with relative URL adds to the constructor document's base URL");
-
-test(() => {
- assert_throws_dom("NotAllowedError", () => { new CSSStyleSheet({ baseURL: "https://test:test/"}) });
-}, "Constructing sheet with invalid base URL throws a NotAllowedError");
-
-</script>
diff --git a/testing/web-platform/tests/css/cssom/WEB_FEATURES.yml b/testing/web-platform/tests/css/cssom/WEB_FEATURES.yml
new file mode 100644
index 0000000000..def314c45c
--- /dev/null
+++ b/testing/web-platform/tests/css/cssom/WEB_FEATURES.yml
@@ -0,0 +1,7 @@
+features:
+- name: constructed-stylesheets
+ files:
+ - adoptedstylesheets-observablearray.html
+ - CSSStyleSheet-constructable-*
+ - CSSStyleSheet-constructable.html
+ - CSSStyleSheet-template-adoption.html
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html
new file mode 100644
index 0000000000..6be85d5cf2
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-backdrop-filter.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>backdrop-filter: The backdrop root concept</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropRoot">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+<link rel="match" href="backdrop-filter-backdrop-root-ref.html">
+
+<!-- A Backdrop Root is formed, anywhere in the document, by:
+ - An element with a backdrop-filter value other than "none".
+ - An element with a will-change value specifying any property that would create a Backdrop Root on non-initial value. -->
+<div class=container>
+ <div class=testcase>
+ <div style="backdrop-filter: invert(0);"><div></div></div>
+ </div>
+ <div class=testcase>
+ <div style="will-change:backdrop-filter;"><div></div></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path-ref.html
new file mode 100644
index 0000000000..08a2ad4fc5
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path-ref.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+
+<div class=container>
+ <div class=testcase style="clip-path: xywh(5px 5px 40px 40px);">
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+ <div class=testcase>
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+</div>
+
+<style>
+.box2 {
+ top:-50px;
+ left: 50px;
+ border: 1px solid black;
+}
+</style>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html
new file mode 100644
index 0000000000..172d07be93
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-clip-path.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>backdrop-filter: The backdrop root concept</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropRoot">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+<link rel="match" href="backdrop-filter-backdrop-root-clip-path-ref.html">
+
+<!-- A Backdrop Root is formed, anywhere in the document, by:
+ - An element with mask, mask-image, mask-border, or clip-path properties with values other than “none”.
+ - An element with a will-change value specifying any property that would create a Backdrop Root on non-initial value. -->
+<div class=container>
+ <div class=testcase>
+ <div style="clip-path: inset(10%);"><div></div></div>
+ </div>
+ <div class=testcase>
+ <div style="will-change:clip-path;"><div></div></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter-ref.html
new file mode 100644
index 0000000000..ffa4dfcf0e
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter-ref.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+
+<div class=container>
+ <div class=testcase>
+ <div style="filter: invert(0.1)"></div>
+ <div class="box2" style="border-color: #1A1A1A; background: #00ffff;"></div>
+ </div>
+ <div class=testcase>
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+</div>
+
+<style>
+.box2 {
+ top:-50px;
+ left: 50px;
+ border: 1px solid black;
+}
+</style>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter.html
new file mode 100644
index 0000000000..e988b479ce
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-filter.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>backdrop-filter: The backdrop root concept</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropRoot">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+<link rel="match" href="backdrop-filter-backdrop-root-filter-ref.html">
+<meta name="fuzzy" content="maxDifference=0-5;totalPixels=0-500">
+
+<!-- A Backdrop Root is formed, anywhere in the document, by:
+ - An element with a filter property other than "none".
+ - An element with a will-change value specifying any property that would create a Backdrop Root on non-initial value. -->
+<div class=container>
+ <div class=testcase>
+ <div style="filter: invert(0.1);"><div></div></div>
+ </div>
+ <div class=testcase>
+ <div style="will-change:filter;"><div></div></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html
new file mode 100644
index 0000000000..2d77b61b84
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-mix-blend-mode.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>backdrop-filter: The backdrop root concept</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropRoot">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+<link rel="match" href="backdrop-filter-backdrop-root-ref.html">
+
+<!-- A Backdrop Root is formed, anywhere in the document, by:
+ - An element with a mix-blend-mode value other than "normal".
+ - An element with a will-change value specifying any property that would create a Backdrop Root on non-initial value. -->
+<div class=container>
+ <div class=testcase>
+ <div style="mix-blend-mode:darken;"><div></div></div>
+ </div>
+ <div class=testcase>
+ <div style="will-change:mix-blend-mode;"><div></div></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity-ref.html
new file mode 100644
index 0000000000..76d4854df6
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+
+<div class=container>
+ <div class=testcase>
+ <div style="opacity:0.9"></div>
+ <div class="box2" style="border-color: #021919; background: #00ffff;"></div>
+ </div>
+ <div class=testcase>
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+</div>
+
+<style>
+.box2 {
+ top:-50px;
+ left: 50px;
+ border: 1px solid black;
+}
+</style>
+
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity.html
new file mode 100644
index 0000000000..b11d064cb3
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-opacity.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>backdrop-filter: The backdrop root concept</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropRoot">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+<link rel="match" href="backdrop-filter-backdrop-root-opacity-ref.html">
+<meta name="fuzzy" content="maxDifference=0-5;totalPixels=0-500">
+
+<!-- A Backdrop Root is formed, anywhere in the document, by:
+ - An element with an opacity value less than 1.
+ - An element with a will-change value specifying any property that would create a Backdrop Root on non-initial value. -->
+<div class=container>
+ <div class=testcase>
+ <div style="opacity: 0.9;"><div></div></div>
+ </div>
+ <div class=testcase>
+ <div style="will-change:opacity;"><div></div></div>
+ </div>
+</div>
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-ref.html
new file mode 100644
index 0000000000..934e08acb9
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-backdrop-root-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel=stylesheet href="resources/backdrop-filter-backdrop-root.css">
+
+<div class=container>
+ <div class=testcase>
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+ <div class=testcase>
+ <div></div>
+ <div class="box2" style="background: #00ffff;"></div>
+ </div>
+</div>
+
+<style>
+.box2 {
+ top:-50px;
+ left: 50px;
+ border: 1px solid black;
+}
+</style>
+
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation-ref.html
deleted file mode 100644
index fc2bccc36c..0000000000
--- a/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation-ref.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>backdrop-filter: Should not filter outside parent stacking context.</title>
-<link rel="author" href="mailto:masonf@chromium.org">
-
-
-
-<div>
- <p>Expected: Two green boxes overlapped by a yellow box. The overlapped region<br>
- of the right-hand box ONLY should be inverted (pink).</p>
-</div>
-<div class="box outside">
- <div class="box stacking-context">
- <div class="box filter">
- </div>
- </div>
-</div>
-<div class="box overlay"></div>
-<style>
-.box {
- position: absolute;
- width: 100px;
- height: 100px;
- background: green;
-}
-.outside {
- top: 110px;
- left: 10px;
-}
-.stacking-context {
- will-change: transform;
- top: 0px;
- left: 120px;
-}
-.filter {
- width: 160px;
- height: 160px;
- top: 30px;
- left: -90px;
- will-change: transform;
- background: #ff08;
-}
-.overlay {
- background:#ffc377;
- width:70px;
- height:70px;
- top:140px;
- left:130px;
-}
-</style>
-
diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation.html
deleted file mode 100644
index 06791f73d2..0000000000
--- a/testing/web-platform/tests/css/filter-effects/backdrop-filter-isolation.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>backdrop-filter: Should not filter outside parent stacking context.</title>
-<link rel="author" href="mailto:masonf@chromium.org">
-<link rel="help" href="https://drafts.fxtf.org/filter-effects-2/#BackdropFilterProperty">
-<link rel="match" href="backdrop-filter-isolation-ref.html">
-
-<div>
- <p>Expected: Two green boxes overlapped by a yellow box. The overlapped region<br>
- of the right-hand box ONLY should be inverted (pink).</p>
-</div>
-<div class="box outside">
- <div class="box stacking-context">
- <div class="box filter">
- </div>
- </div>
-</div>
-
-<style>
-.box {
- position: absolute;
- width: 100px;
- height: 100px;
- background: green;
-}
-.outside {
- top: 110px;
- left: 10px;
-}
-.stacking-context {
- opacity: 0.9999;
- top: 0px;
- left: 120px;
-}
-.filter {
- width: 160px;
- height: 160px;
- top: 30px;
- left: -90px;
- backdrop-filter: invert(1);
- background: #ff08;
-}
-</style>
-
diff --git a/testing/web-platform/tests/css/filter-effects/resources/backdrop-filter-backdrop-root.css b/testing/web-platform/tests/css/filter-effects/resources/backdrop-filter-backdrop-root.css
new file mode 100644
index 0000000000..635e497cdf
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/resources/backdrop-filter-backdrop-root.css
@@ -0,0 +1,30 @@
+.container {
+ display: flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+ width: 250px;
+ height: 100px;
+ align-content: flex-start;
+ background:#00ffff;
+}
+.testcase {
+ width: 100px;
+ height: 50px;
+}
+.testcase div {
+ width: 50px;
+ height: 50px;
+ position: relative;
+}
+.testcase>div {
+ background: green;
+}
+.testcase>div>div {
+ left: 50px;
+ backdrop-filter: invert(1);
+ background: transparent;
+ border: 1px solid black;
+}
+* {
+ box-sizing: border-box;
+}
diff --git a/testing/web-platform/tests/css/filter-effects/support/hueRotate.svg b/testing/web-platform/tests/css/filter-effects/support/hueRotate.svg
index ed294041e1..0ddcb37d70 100644
--- a/testing/web-platform/tests/css/filter-effects/support/hueRotate.svg
+++ b/testing/web-platform/tests/css/filter-effects/support/hueRotate.svg
@@ -1,6 +1,6 @@
<svg width="0" height="0" xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
- <filter id="MyFilter">
+ <filter id="MyFilter" color-interpolation-filters="sRGB">
<feColorMatrix type="hueRotate" values="90"/>
</filter>
</defs>
diff --git a/testing/web-platform/tests/css/mediaqueries/WEB_FEATURES.yml b/testing/web-platform/tests/css/mediaqueries/WEB_FEATURES.yml
new file mode 100644
index 0000000000..88f1510e1b
--- /dev/null
+++ b/testing/web-platform/tests/css/mediaqueries/WEB_FEATURES.yml
@@ -0,0 +1,5 @@
+features:
+- name: prefers-color-scheme
+ files:
+ - prefers-color-scheme.html
+ - prefers-color-scheme-*
diff --git a/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image-ref.html b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image-ref.html
new file mode 100644
index 0000000000..012513ef9f
--- /dev/null
+++ b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image-ref.html
@@ -0,0 +1,19 @@
+<!doctype html>
+<head>
+ <title>prefers-color-scheme inside an SVG image</title>
+ <link rel="help" href="https://www.w3.org/TR/mediaqueries-5/#descdef-media-prefers-color-scheme">
+</head>
+<style>
+ div {
+ background-color: blue;
+ height: 32px;
+ width: 32px;
+ }
+ @media (prefers-color-scheme: dark) {
+ div {
+ background-color: purple;
+ }
+ }
+</style>
+<p>There should be a purple square below when the preferred color-scheme is dark, and blue otherwise.</p>
+<div></div>
diff --git a/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image.html b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image.html
new file mode 100644
index 0000000000..65d6556f7a
--- /dev/null
+++ b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme-svg-as-image.html
@@ -0,0 +1,8 @@
+<!doctype html>
+<head>
+ <title>prefers-color-scheme inside an SVG image</title>
+ <link rel="help" href="https://www.w3.org/TR/mediaqueries-5/#descdef-media-prefers-color-scheme">
+ <link rel="match" href="prefers-color-scheme-svg-as-image-ref.html">
+</head>
+<p>There should be a purple square below when the preferred color-scheme is dark, and blue otherwise.</p>
+<img src='resources/prefers-color-scheme.svg'>
diff --git a/testing/web-platform/tests/css/motion/WEB_FEATURES.yml b/testing/web-platform/tests/css/motion/WEB_FEATURES.yml
new file mode 100644
index 0000000000..0a436801cb
--- /dev/null
+++ b/testing/web-platform/tests/css/motion/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: motion-path
+ files: "**"
diff --git a/testing/web-platform/tests/css/motion/animation/offset-rotate-interpolation.html b/testing/web-platform/tests/css/motion/animation/offset-rotate-interpolation.html
index 55845108eb..10c337244f 100644
--- a/testing/web-platform/tests/css/motion/animation/offset-rotate-interpolation.html
+++ b/testing/web-platform/tests/css/motion/animation/offset-rotate-interpolation.html
@@ -163,15 +163,6 @@
{at: 1.5, expect: '70deg'},
]);
- // Regression test for crbug.com/918430.
- test_interpolation({
- property: 'offset-rotate',
- from: '800deg',
- to: '900deg'
- }, [
- {at: -3.40282e+38, expect: '-3.40282e+38deg'},
- ]);
-
// Interpolation between auto angles.
test_interpolation({
property: 'offset-rotate',
diff --git a/testing/web-platform/tests/css/selectors/WEB_FEATURES.yml b/testing/web-platform/tests/css/selectors/WEB_FEATURES.yml
index 47cf05a2c0..2449bf4808 100644
--- a/testing/web-platform/tests/css/selectors/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/selectors/WEB_FEATURES.yml
@@ -5,3 +5,10 @@ features:
- name: has
files:
- has-*
+- name: read-write-pseudos
+ files:
+ - selector-read-write-*
+- name: user-pseudos
+ files:
+ - user-invalid.html
+ - user-valid.html
diff --git a/testing/web-platform/tests/css/selectors/focus-visible-028.html b/testing/web-platform/tests/css/selectors/focus-visible-028.html
new file mode 100644
index 0000000000..a8b704838b
--- /dev/null
+++ b/testing/web-platform/tests/css/selectors/focus-visible-028.html
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8" />
+ <title>CSS Test (Selectors): Programmatic focus causes :focus-visible to match after keyboard usage when preventDefault() is used</title>
+ <link rel="author" title="Tyler Jones" href="tylerjdev@github.com" />
+ <link rel="help" href="https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo" />
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/resources/testdriver.js"></script>
+ <script src="/resources/testdriver-vendor.js"></script>
+ <style>
+ @supports not selector(:focus-visible) {
+ :focus {
+ outline: red solid 5px;
+ background-color: red;
+ }
+ }
+
+ :focus-visible {
+ outline: blue solid 5px;
+ }
+
+ :focus:not(:focus-visible) {
+ outline: 0;
+ background-color: lime;
+ }
+ </style>
+</head>
+<body>
+ This test checks that programmatically focusing an element after a click and using keyboard afterwards triggers <code>:focus-visible</code> matching.
+ <ol id="instructions">
+ <li>If the user-agent does not claim to support the <code>:focus-visible</code> pseudo-class then SKIP this test.</li>
+ <li>Click the button below that says "Click me".</li>
+ <li>Once focused on the button that says "I will be focused programmatically", use "Left" or "Right" arrow keys to navigate through the button group</li>
+ <li>If any button within the group has a blue outline after using either arrow key, then the test result is SUCCESS. If the element has a green background after using either arrow key, then the test result is FAILURE.</li>
+ </ol>
+ <br />
+ <button id="button">Click me</button>
+ <div id="container">
+ <button id="btn1">I will be focused programmatically.</button>
+ <button id="btn2">Button 2</button>
+ <button id="btn3">Button 3</button>
+ </div>
+ <script>
+ button.addEventListener("click", () => {
+ btn1.focus();
+ });
+
+ focusTrap(document.querySelector('#container'));
+
+ function focusTrap(container) {
+ container.addEventListener('keydown', (e) => {
+ if (e.key !== 'ArrowRight' && e.key !== 'ArrowLeft') return;
+ e.preventDefault();
+
+ const btns = container.querySelectorAll('button');
+ const currentIndex = Array.from(btns).indexOf(document.activeElement);
+ let nextIndex;
+
+ if (e.key === 'ArrowRight') {
+ nextIndex = (currentIndex + 1) % btns.length;
+ } else if (e.key === 'ArrowLeft') {
+ nextIndex = (currentIndex - 1 + btns.length) % btns.length;
+ }
+
+ btns[nextIndex].focus();
+ });
+ }
+
+ promise_test(async t => {
+ const arrow_right = "\uE014";
+ btn2.addEventListener("focus", t.step_func_done((e) => {
+ assert_equals(getComputedStyle(btn2).outlineColor, "rgb(0, 0, 255)", `outlineColor for ${btn2.tagName}#${btn2.id} is blue`);
+ assert_not_equals(getComputedStyle(btn2).backgroundColor, "rgb(0, 255, 0)", `backgroundColor for ${btn2.tagName}#${btn2.id} is NOT lime`);
+ }));
+
+ await test_driver.click(button);
+ assert_equals(document.activeElement, btn1);
+ await test_driver.send_keys(btn1, arrow_right);
+ }, "Programmatic focus after click and keyboard interaction should match :focus-visible");
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/css/selectors/invalidation/WEB_FEATURES.yml b/testing/web-platform/tests/css/selectors/invalidation/WEB_FEATURES.yml
index 4eaa2f3931..5e6a6d0d5c 100644
--- a/testing/web-platform/tests/css/selectors/invalidation/WEB_FEATURES.yml
+++ b/testing/web-platform/tests/css/selectors/invalidation/WEB_FEATURES.yml
@@ -4,3 +4,6 @@ features:
- has-*
- "*-in-has.*"
- "*-in-has-*"
+- name: user-pseudos
+ files:
+ - user-valid-user-invalid.html
diff --git a/testing/web-platform/tests/css/selectors/user-invalid.html b/testing/web-platform/tests/css/selectors/user-invalid.html
index 5f8fa5811a..c57e764831 100644
--- a/testing/web-platform/tests/css/selectors/user-invalid.html
+++ b/testing/web-platform/tests/css/selectors/user-invalid.html
@@ -29,6 +29,7 @@
<input placeholder="Required field" required id="required-input"><br>
<textarea placeholder="Required field" required id="required-textarea"></textarea><br>
<input type="checkbox" required id="required-checkbox"><br>
+ <input type="date" required id="required-date"><br>
<input type="submit" id="submit-button">
<input type="reset" id="reset-button">
</form>
@@ -80,12 +81,14 @@ promise_test(async () => {
const requiredInput = document.querySelector("#required-input");
const requiredTextarea = document.querySelector("#required-textarea");
const requiredCheckbox = document.querySelector("#required-checkbox");
+ const requiredDate = document.querySelector("#required-date");
const submitButton = document.querySelector("#submit-button");
const resetButton = document.querySelector("#reset-button");
assert_false(requiredInput.validity.valid);
assert_false(requiredTextarea.validity.valid);
assert_false(requiredCheckbox.validity.valid);
+ assert_false(requiredDate.validity.valid);
// The selector can't match because no interaction has happened.
assert_false(requiredInput.matches(":user-valid"), "Initially does not match :user-valid");
assert_false(requiredInput.matches(":user-invalid"), "Initially does not match :user-invalid");
@@ -96,6 +99,9 @@ promise_test(async () => {
assert_false(requiredCheckbox.matches(":user-valid"), "Initially does not match :user-valid");
assert_false(requiredCheckbox.matches(":user-invalid"), "Initially does not match :user-invalid");
+ assert_false(requiredDate.matches(":user-valid"), "Initially does not match :user-valid");
+ assert_false(requiredDate.matches(":user-invalid"), "Initially does not match :user-invalid");
+
submitButton.click();
assert_true(requiredInput.matches(":user-invalid"), "Submitted the form, input is validated");
@@ -107,6 +113,9 @@ promise_test(async () => {
assert_true(requiredCheckbox.matches(":user-invalid"), "Submitted the form, checkbox is validated");
assert_false(requiredCheckbox.matches(":user-valid"), "Submitted the form, checkbox is validated");
+ assert_true(requiredDate.matches(":user-invalid"), "Submitted the form, date input is validated");
+ assert_false(requiredDate.matches(":user-valid"), "Submitted the form, date input is validated");
+
resetButton.click();
assert_false(requiredInput.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
@@ -118,6 +127,9 @@ promise_test(async () => {
assert_false(requiredCheckbox.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
assert_false(requiredCheckbox.matches(":user-invalid"), "Reset the form, user-interacted flag is reset");
+ assert_false(requiredDate.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
+ assert_false(requiredDate.matches(":user-invalid"), "Reset the form, user-interacted flag is reset");
+
// Test programmatic form submission with constraint validation.
form.requestSubmit();
@@ -129,6 +141,9 @@ promise_test(async () => {
assert_true(requiredCheckbox.matches(":user-invalid"), "Called form.requestSubmit(), checkbox is validated");
assert_false(requiredCheckbox.matches(":user-valid"), "Called form.requestSubmit(), checkbox is validated");
+
+ assert_true(requiredDate.matches(":user-invalid"), "Called form.requestSubmit(), date input is validated");
+ assert_false(requiredDate.matches(":user-valid"), "Called form.requestSubmit(), date input is validated");
}, ":user-invalid selector properly interacts with submit & reset buttons");
// historical: https://github.com/w3c/csswg-drafts/issues/1329
@@ -193,4 +208,38 @@ promise_test(async () => {
assert_true(checkbox.matches(':user-invalid'),
'Checkbox should match :user-invalid after clicking twice.');
}, 'A required checkbox should match :user-invalid if the user unchecks it and blurs.');
+
+promise_test(async () => {
+ const date = document.getElementById('required-date');
+
+ const resetButton = document.getElementById('reset-button');
+ resetButton.click();
+ assert_false(date.matches(':user-invalid'),
+ 'date input should not match :user-invalid at the start of the test.');
+ assert_equals(date.value, '',
+ 'date input should not have a value at the start of the test.');
+
+ date.value = '2024-04-15';
+ assert_false(date.matches(':user-invalid'),
+ 'date should not match :user-invalid after programatically changing value.');
+ date.value = '';
+ assert_false(date.matches(':user-invalid'),
+ 'date should not match :user-invalid after programatically changing value.');
+
+ const tabKey = '\uE004';
+ const backspace = '\uE003';
+ date.focus();
+ // Press tab twice at the end to make sure that focus has left the input.
+ await test_driver.send_keys(date, `1${tabKey}1${tabKey}1234${tabKey}${tabKey}`);
+ assert_not_equals(document.activeElement, date,
+ 'Pressing tab twice after typing in the date should have blurred the input.');
+ assert_equals(date.value, '1234-01-01',
+ 'Date input value should match the testdriver input.');
+ date.focus();
+ await test_driver.send_keys(date, backspace);
+ assert_equals(date.value, '',
+ 'Date input value should be cleared when deleting one of the sub-values.');
+ assert_true(date.matches(':user-invalid'),
+ 'Date input should match :user-invalid after typing in an invalid value.');
+}, 'A required date should match :user-invalid if the user unchecks it and blurs.');
</script>
diff --git a/testing/web-platform/tests/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html b/testing/web-platform/tests/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html
new file mode 100644
index 0000000000..d6358ea269
--- /dev/null
+++ b/testing/web-platform/tests/css/selectors/user-valid-user-invalid-multifield-inputs.tentative.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/selectors/#user-pseudos">
+<link rel="help" href="https://html.spec.whatwg.org/#selector-user-invalid">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<!-- This test asserts specifics of keyboard behavior in multifield inputs,
+ like type=date and type=time, in ways that are not specified. -->
+
+<form>
+ <input id=date type=date required>
+ <input id=time type=time required>
+ <input id=datetime-local type=datetime-local required>
+</form>
+
+<script>
+const tabKey = '\uE004';
+const backspace = '\uE003';
+
+promise_test(async () => {
+ const date = document.getElementById('date');
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid at the start of the test.');
+ assert_false(date.matches(':user-invalid'),
+ 'Date input should not match :user-invalid at the start of the test.');
+ assert_equals(date.value, '',
+ 'Date input should not have a value at the start of the test.');
+
+ date.focus();
+ await test_driver.send_keys(date, `1${tabKey}`);
+ assert_equals(date.value, '',
+ 'Date input value should not be set after partially inputting the date.');
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid after partially inputting the date.');
+ assert_false(date.matches(':user-invalid'),
+ 'Date input should not match :user-invalid after partially inputting the date.');
+
+ await test_driver.send_keys(date, `1${tabKey}1234${tabKey}`);
+ assert_equals(date.value, '1234-01-01',
+ 'Date input value should match the testdriver input.');
+ assert_true(date.matches(':user-valid'),
+ 'Date input should match :user-valid after typing in a complete value.');
+ assert_false(date.matches(':user-invalid'),
+ 'Date input should not match :user-invalid after typing in a complete value.');
+
+ date.blur();
+ date.focus();
+ await test_driver.send_keys(date, backspace);
+ assert_equals(date.value, '',
+ 'Date input value should be cleared when deleting one of the sub-values.');
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid after typing in an invalid value.');
+ assert_true(date.matches(':user-invalid'),
+ 'Date input should match :user-invalid after typing in an invalid value.');
+}, '<input type=date> keyboard behavior for :user-valid/:user-invalid.');
+
+promise_test(async () => {
+ const time = document.getElementById('time');
+ assert_false(time.matches(':user-valid'),
+ 'Time input should not match :user-valid at the start of the test.');
+ assert_false(time.matches(':user-invalid'),
+ 'Time input should not match :user-invalid at the start of the test.');
+ assert_equals(time.value, '',
+ 'Time input should not have a value at the start of the test.');
+
+ time.focus();
+ await test_driver.send_keys(time, `1${tabKey}`);
+ assert_equals(time.value, '',
+ 'Time input value should not be set after partially inputting the time.');
+ assert_false(time.matches(':user-valid'),
+ 'Time input should not match :user-valid after partially inputting the time.');
+ assert_false(time.matches(':user-invalid'),
+ 'Time input should not match :user-invalid after partially inputting the time.');
+
+ await test_driver.send_keys(time, `2${tabKey}a${tabKey}`);
+ assert_equals(time.value, '01:02',
+ 'Time input value should match the testdriver input.');
+ assert_true(time.matches(':user-valid'),
+ 'Time input should match :user-valid after typing in a complete value.');
+ assert_false(time.matches(':user-invalid'),
+ 'Time input should not match :user-invalid after typing in a complete value.');
+
+ time.blur();
+ time.focus();
+ await test_driver.send_keys(time, backspace);
+ assert_equals(time.value, '',
+ 'Time input value should be cleared when deleting one of the sub-values.');
+ assert_false(time.matches(':user-valid'),
+ 'Time input should not match :user-valid after typing in an invalid value.');
+ assert_true(time.matches(':user-invalid'),
+ 'Time input should match :user-invalid after typing in an invalid value.');
+}, '<input type=time> keyboard behavior for :user-valid/:user-invalid.');
+
+promise_test(async () => {
+ const dateTimeLocal = document.getElementById('datetime-local');
+ assert_false(dateTimeLocal.matches(':user-valid'),
+ 'Datetime input should not match :user-valid at the start of the test.');
+ assert_false(dateTimeLocal.matches(':user-invalid'),
+ 'Datetime input should not match :user-invalid at the start of the test.');
+ assert_equals(dateTimeLocal.value, '',
+ 'Datetime input should not have a value at the start of the test.');
+
+ dateTimeLocal.focus();
+ await test_driver.send_keys(dateTimeLocal, `1${tabKey}`);
+ assert_equals(dateTimeLocal.value, '',
+ 'Datetime input value should not be set after partially inputting the dateTimeLocal.');
+ assert_false(dateTimeLocal.matches(':user-valid'),
+ 'Datetime input should not match :user-valid after partially inputting the dateTimeLocal.');
+ assert_false(dateTimeLocal.matches(':user-invalid'),
+ 'Datetime input should not match :user-invalid after partially inputting the dateTimeLocal.');
+
+ await test_driver.send_keys(dateTimeLocal, `1${tabKey}1234${tabKey}1${tabKey}2${tabKey}a${tabKey}`);
+ assert_equals(dateTimeLocal.value, '1234-01-01T01:02',
+ 'Datetime input value should match the testdriver input.');
+ assert_true(dateTimeLocal.matches(':user-valid'),
+ 'Datetime input should match :user-valid after typing in a complete value.');
+ assert_false(dateTimeLocal.matches(':user-invalid'),
+ 'Datetime input should not match :user-invalid after typing in a complete value.');
+
+ dateTimeLocal.blur();
+ dateTimeLocal.focus();
+ await test_driver.send_keys(dateTimeLocal, backspace);
+ assert_equals(dateTimeLocal.value, '',
+ 'Datetime input value should be cleared when deleting one of the sub-values.');
+ assert_false(dateTimeLocal.matches(':user-valid'),
+ 'Datetime input should not match :user-valid after typing in an invalid value.');
+ assert_true(dateTimeLocal.matches(':user-invalid'),
+ 'Datetime input should match :user-invalid after typing in an invalid value.');
+}, '<input type=datetime-local> keyboard behavior for :user-valid/:user-invalid.');
+</script>
diff --git a/testing/web-platform/tests/css/selectors/user-valid.html b/testing/web-platform/tests/css/selectors/user-valid.html
index 7a12eb237d..402003ba5e 100644
--- a/testing/web-platform/tests/css/selectors/user-valid.html
+++ b/testing/web-platform/tests/css/selectors/user-valid.html
@@ -29,6 +29,7 @@
<input placeholder="Optional field" id="optional-input"><br>
<textarea placeholder="Optional field" id="optional-textarea"></textarea><br>
<input type="checkbox" id="optional-checkbox"><br>
+ <input type="date" id="optional-date"><br>
<input required placeholder="Required field"> <!-- Prevent the form from navigating with this invalid input -->
<input type="submit" id="submit-button">
<input type="reset" id="reset-button">
@@ -77,12 +78,14 @@ promise_test(async () => {
const optionalInput = document.querySelector("#optional-input");
const optionalTextarea = document.querySelector("#optional-textarea");
const optionalCheckbox = document.querySelector("#optional-checkbox");
+ const optionalDate = document.querySelector("#optional-date");
const submitButton = document.querySelector("#submit-button");
const resetButton = document.querySelector("#reset-button");
assert_true(optionalInput.validity.valid);
assert_true(optionalTextarea.validity.valid);
assert_true(optionalCheckbox.validity.valid);
+ assert_true(optionalDate.validity.valid);
// The selector can't match because no interaction has happened.
assert_false(optionalInput.matches(":user-valid"), "Initially does not match :user-valid");
assert_false(optionalInput.matches(":user-invalid"), "Initially does not match :user-invalid");
@@ -93,6 +96,9 @@ promise_test(async () => {
assert_false(optionalCheckbox.matches(":user-valid"), "Initially does not match :user-valid");
assert_false(optionalCheckbox.matches(":user-invalid"), "Initially does not match :user-invalid");
+ assert_false(optionalDate.matches(":user-valid"), "Initially does not match :user-valid");
+ assert_false(optionalDate.matches(":user-invalid"), "Initially does not match :user-invalid");
+
submitButton.click();
assert_true(optionalInput.matches(":user-valid"), "Submitted the form, input is validated");
@@ -104,6 +110,9 @@ promise_test(async () => {
assert_true(optionalCheckbox.matches(":user-valid"), "Submitted the form, checkbox is validated");
assert_false(optionalCheckbox.matches(":user-invalid"), "Submitted the form, checkbox is validated");
+ assert_true(optionalDate.matches(":user-valid"), "Submitted the form, date is validated");
+ assert_false(optionalDate.matches(":user-invalid"), "Submitted the form, date is validated");
+
resetButton.click();
assert_false(optionalInput.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
@@ -115,6 +124,9 @@ promise_test(async () => {
assert_false(optionalCheckbox.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
assert_false(optionalCheckbox.matches(":user-invalid"), "Reset the form, user-interacted flag is reset");
+ assert_false(optionalDate.matches(":user-valid"), "Reset the form, user-interacted flag is reset");
+ assert_false(optionalDate.matches(":user-invalid"), "Reset the form, user-interacted flag is reset");
+
// Test programmatic form submission with constraint validation.
form.requestSubmit();
@@ -126,6 +138,9 @@ promise_test(async () => {
assert_true(optionalCheckbox.matches(":user-valid"), "Called form.requestSubmit(), checkbox is validated");
assert_false(optionalCheckbox.matches(":user-invalid"), "Called form.requestSubmit(), checkbox is validated");
+
+ assert_true(optionalDate.matches(":user-valid"), "Called form.requestSubmit(), date is validated");
+ assert_false(optionalDate.matches(":user-invalid"), "Called form.requestSubmit(), date is validated");
}, ":user-valid selector properly interacts with submit & reset buttons");
promise_test(async () => {
@@ -151,4 +166,33 @@ promise_test(async () => {
assert_true(checkbox.matches(':user-valid'),
'Checkbox should match :user-valid after clicking once.');
}, 'Checkboxes should match :user-valid after the user clicks on it.');
+
+promise_test(async () => {
+ const date = document.getElementById('optional-date');
+
+ const resetButton = document.getElementById('reset-button');
+ resetButton.click();
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid at the start of the test.');
+ assert_equals(date.value, '',
+ 'Date input should not have a value at the start of the test.');
+
+ date.value = '2024-04-15';
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid after programatically changing value.');
+ date.value = '';
+ assert_false(date.matches(':user-valid'),
+ 'Date input should not match :user-valid after programatically changing value.');
+
+ const tabKey = '\uE004';
+ date.focus();
+ // Press tab twice at the end to make sure that focus has left the input.
+ await test_driver.send_keys(date, `1${tabKey}1${tabKey}1234${tabKey}${tabKey}`);
+ assert_not_equals(document.activeElement, date,
+ 'Pressing tab twice after typing in the date should have blurred the input.');
+ assert_equals(date.value, '1234-01-01',
+ 'Date input value should match the testdriver input.');
+ assert_true(date.matches(':user-valid'),
+ 'Date input should match :user-valid after typing in a value.');
+}, 'Date inputs should match :user-valid after the user types a value into it.');
</script>
diff --git a/testing/web-platform/tests/custom-elements/form-associated/form-associated-callback.html b/testing/web-platform/tests/custom-elements/form-associated/form-associated-callback.html
index 7feec50fef..329c4d7593 100644
--- a/testing/web-platform/tests/custom-elements/form-associated/form-associated-callback.html
+++ b/testing/web-platform/tests/custom-elements/form-associated/form-associated-callback.html
@@ -122,7 +122,7 @@ test(() => {
}
}
customElements.define('will-be-defined', WillBeDefined);
- customElements.upgrade(container);
+ customElements.upgrade($('#container'));
controls = $('#form1').elements;
assert_equals(controls.length, 3, 'form.elements.length');
diff --git a/testing/web-platform/tests/deprecation-reporting/__dir__.ini b/testing/web-platform/tests/deprecation-reporting/__dir__.ini
new file mode 100644
index 0000000000..79ef6f271a
--- /dev/null
+++ b/testing/web-platform/tests/deprecation-reporting/__dir__.ini
@@ -0,0 +1 @@
+implementation-status: not-implementing \ No newline at end of file
diff --git a/testing/web-platform/tests/device-posture/device-posture-change-event.https.html b/testing/web-platform/tests/device-posture/device-posture-change-event.https.html
new file mode 100644
index 0000000000..eb2fc2d96f
--- /dev/null
+++ b/testing/web-platform/tests/device-posture/device-posture-change-event.https.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script>
+'use strict';
+
+promise_test(async (t) => {
+ t.add_cleanup(async () => {
+ await test_driver.clear_device_posture();
+ });
+ const watcher = new EventWatcher(t, navigator.devicePosture, ['change']);
+ const postures = ['folded', 'continuous', 'folded'];
+ for (const posture of postures) {
+ await Promise.all([
+ watcher.wait_for('change'),
+ test_driver.set_device_posture(posture)
+ ]);
+ assert_equals(posture, navigator.devicePosture.type);
+ }
+}, 'Tests the Device Posture API change event handler.');
+</script>
diff --git a/testing/web-platform/tests/device-posture/device-posture-clear.https.html b/testing/web-platform/tests/device-posture/device-posture-clear.https.html
new file mode 100644
index 0000000000..319cd7266a
--- /dev/null
+++ b/testing/web-platform/tests/device-posture/device-posture-clear.https.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script>
+'use strict';
+
+promise_test(async (t) => {
+ t.add_cleanup(async () => {
+ await test_driver.clear_device_posture();
+ });
+ const originalPosture = navigator.devicePosture.type;
+ const posture = originalPosture ? 'folded' : 'continuous';
+
+ const watcher = new EventWatcher(t, navigator.devicePosture, ['change']);
+ await Promise.all([
+ watcher.wait_for('change'),
+ test_driver.set_device_posture(posture)
+ ]);
+ assert_equals(navigator.devicePosture.type, posture);
+
+ await Promise.all([
+ watcher.wait_for('change'),
+ test_driver.clear_device_posture()
+ ]);
+ assert_equals(navigator.devicePosture.type, originalPosture);
+}, 'Tests that device posture override can be removed.');
+</script>
diff --git a/testing/web-platform/tests/device-posture/device-posture-event-listener.https.html b/testing/web-platform/tests/device-posture/device-posture-event-listener.https.html
new file mode 100644
index 0000000000..f4e21c89cc
--- /dev/null
+++ b/testing/web-platform/tests/device-posture/device-posture-event-listener.https.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script>
+'use strict';
+
+promise_test(async (t) => {
+ t.add_cleanup(async () => {
+ await test_driver.clear_device_posture();
+ });
+ assert_equals(navigator.devicePosture.type, 'continuous');
+
+ const promise = new Promise(resolve => {
+ navigator.devicePosture.addEventListener(
+ 'change',
+ () => { resolve(navigator.devicePosture.type); },
+ { once: true }
+ );
+ });
+ await test_driver.set_device_posture('folded');
+ assert_equals(await promise, 'folded');
+}, 'Tests the Device Posture API addEventListener change event handler.');
+</script>
diff --git a/testing/web-platform/tests/device-posture/device-posture-media-queries.https.html b/testing/web-platform/tests/device-posture/device-posture-media-queries.https.html
new file mode 100644
index 0000000000..e4dbd2e7d8
--- /dev/null
+++ b/testing/web-platform/tests/device-posture/device-posture-media-queries.https.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script>
+'use strict';
+
+promise_test(async (t) => {
+ t.add_cleanup(async () => {
+ await test_driver.clear_device_posture();
+ });
+ assert_equals(navigator.devicePosture.type, 'continuous');
+ assert_true(matchMedia('(device-posture: continuous)').matches);
+
+ const foldedMQL = window.matchMedia('(device-posture: folded)');
+ const promise = new Promise(resolve => {
+ foldedMQL.addEventListener(
+ 'change',
+ () => { resolve(foldedMQL.matches); },
+ { once: true }
+ );
+ });
+ await test_driver.set_device_posture('folded');
+ assert_true(await promise);
+}, 'Tests the Device Posture API Media Query change event handler.');
+</script>
diff --git a/testing/web-platform/tests/docs/admin/pywebsocket3.rst b/testing/web-platform/tests/docs/admin/pywebsocket3.rst
index af768d6b35..3f742958b3 100644
--- a/testing/web-platform/tests/docs/admin/pywebsocket3.rst
+++ b/testing/web-platform/tests/docs/admin/pywebsocket3.rst
@@ -4,88 +4,88 @@ pywebsocket3: A Standalone WebSocket Server for testing purposes
.. contents::
:local:
-:mod:`mod_pywebsocket`
+:mod:`pywebsocket3`
---------------------------------------------
-.. automodule:: mod_pywebsocket
+.. automodule:: pywebsocket3
:members:
-:mod:`mod_pywebsocket.common`
+:mod:`pywebsocket3.common`
---------------------------------------------
-.. automodule:: mod_pywebsocket.common
+.. automodule:: pywebsocket3.common
:members:
-:mod:`mod_pywebsocket.dispatch`
+:mod:`pywebsocket3.dispatch`
---------------------------------------------
-.. automodule:: mod_pywebsocket.dispatch
+.. automodule:: pywebsocket3.dispatch
:members:
-:mod:`mod_pywebsocket.extensions`
+:mod:`pywebsocket3.extensions`
---------------------------------------------
-.. automodule:: mod_pywebsocket.extensions
+.. automodule:: pywebsocket3.extensions
:members:
-:mod:`mod_pywebsocket.handshake`
+:mod:`pywebsocket3.handshake`
---------------------------------------------
-.. automodule:: mod_pywebsocket.handshake
+.. automodule:: pywebsocket3.handshake
:members:
:imported-members:
-:mod:`mod_pywebsocket.request_handler`
+:mod:`pywebsocket3.request_handler`
---------------------------------------------
-.. automodule:: mod_pywebsocket.request_handler
+.. automodule:: pywebsocket3.request_handler
:members:
-:mod:`mod_pywebsocket.stream`
+:mod:`pywebsocket3.stream`
---------------------------------------------
-.. automodule:: mod_pywebsocket.stream
+.. automodule:: pywebsocket3.stream
:members:
:imported-members:
-:mod:`mod_pywebsocket.http_header_util`
+:mod:`pywebsocket3.http_header_util`
---------------------------------------------
-.. automodule:: mod_pywebsocket.http_header_util
+.. automodule:: pywebsocket3.http_header_util
:members:
-:mod:`mod_pywebsocket.msgutil`
+:mod:`pywebsocket3.msgutil`
---------------------------------------------
-.. automodule:: mod_pywebsocket.msgutil
+.. automodule:: pywebsocket3.msgutil
:members:
-:mod:`mod_pywebsocket.util`
+:mod:`pywebsocket3.util`
---------------------------------------------
-.. automodule:: mod_pywebsocket.util
+.. automodule:: pywebsocket3.util
:members:
-:mod:`mod_pywebsocket.memorizingfile`
+:mod:`pywebsocket3.memorizingfile`
---------------------------------------------
-.. automodule:: mod_pywebsocket.memorizingfile
+.. automodule:: pywebsocket3.memorizingfile
:members:
-:mod:`mod_pywebsocket.websocket_server`
+:mod:`pywebsocket3.websocket_server`
---------------------------------------------
-.. automodule:: mod_pywebsocket.websocket_server
+.. automodule:: pywebsocket3.websocket_server
:members:
-:mod:`mod_pywebsocket.server_util`
+:mod:`pywebsocket3.server_util`
---------------------------------------------
-.. automodule:: mod_pywebsocket.server_util
+.. automodule:: pywebsocket3.server_util
:members:
-:mod:`mod_pywebsocket.standalone`
+:mod:`pywebsocket3.standalone`
---------------------------------------------
-.. automodule:: mod_pywebsocket.standalone
+.. automodule:: pywebsocket3.standalone
:members:
diff --git a/testing/web-platform/tests/docs/running-tests/from-local-system.md b/testing/web-platform/tests/docs/running-tests/from-local-system.md
index 89533ee210..0d524ea356 100644
--- a/testing/web-platform/tests/docs/running-tests/from-local-system.md
+++ b/testing/web-platform/tests/docs/running-tests/from-local-system.md
@@ -16,7 +16,7 @@ cd wpt
Running the tests requires `python` and `pip` as well as updating the
system `hosts` file.
-WPT requires Python 3.7 or higher.
+WPT requires Python 3.8 or higher.
The required setup is different depending on your operating system.
diff --git a/testing/web-platform/tests/docs/writing-tests/file-names.md b/testing/web-platform/tests/docs/writing-tests/file-names.md
index 96296c4ff6..5336bfb528 100644
--- a/testing/web-platform/tests/docs/writing-tests/file-names.md
+++ b/testing/web-platform/tests/docs/writing-tests/file-names.md
@@ -11,10 +11,10 @@ These are individually documented for each flag that supports it.
### Test Type
-These flags must be the last element in the filename before the
-extension e.g. `foo-manual.html` will indicate a manual test, but
-`foo-manual-other.html` will not. Unlike test features, test types
-are mutually exclusive.
+These flags are preceded by a `-` and followed by a `.`, and must be the
+last such element in the filename, e.g. `foo-manual.html` will indicate
+a manual test, but `foo-manual-other.html` will not. Unlike test features,
+test types are mutually exclusive.
`-manual`
@@ -26,8 +26,8 @@ are mutually exclusive.
### Test Features
-These flags are preceded by a `.` in the filename, and must
-themselves precede any test type flag, but are otherwise unordered.
+These flags are preceded and followed by a `.` in the filename, and must themselves
+go after any test type flag, but are otherwise unordered.
`.https`
diff --git a/testing/web-platform/tests/docs/writing-tests/testdriver.md b/testing/web-platform/tests/docs/writing-tests/testdriver.md
index 73af3bb3c8..fcf0199bad 100644
--- a/testing/web-platform/tests/docs/writing-tests/testdriver.md
+++ b/testing/web-platform/tests/docs/writing-tests/testdriver.md
@@ -119,6 +119,12 @@ the global scope.
.. js:autofunction:: test_driver.get_virtual_sensor_information
```
+### Device Posture ###
+```eval_rst
+.. js:autofunction:: test_driver.set_device_posture
+.. js:autofunction:: test_driver.clear_device_posture
+```
+
### Using test_driver in other browsing contexts ###
Testdriver can be used in browsing contexts (i.e. windows or frames)
diff --git a/testing/web-platform/tests/dom/events/scrolling/WEB_FEATURES.yml b/testing/web-platform/tests/dom/events/scrolling/WEB_FEATURES.yml
new file mode 100644
index 0000000000..e4fba841b6
--- /dev/null
+++ b/testing/web-platform/tests/dom/events/scrolling/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: scrollend
+ files:
+ - scrollend-*
diff --git a/testing/web-platform/tests/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html b/testing/web-platform/tests/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html
index d247797603..e80e3b45b6 100644
--- a/testing/web-platform/tests/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html
+++ b/testing/web-platform/tests/dom/nodes/insertion-removing-steps/Node-append-meta-referrer-and-script-from-fragment.tentative.html
@@ -5,25 +5,37 @@
<script src=/resources/testharnessreport.js></script>
<script>
promise_test(async t => {
- const script = document.createElement("script");
- const meta = document.createElement("meta");
- meta.name = "referrer";
- meta.content = "no-referrer";
- const fragment = new DocumentFragment();
- const done = new Promise(resolve => {
- window.didFetch = resolve;
- });
- script.textContent = `
- (async function() {
- const response = await fetch("/html/infrastructure/urls/terminology-0/resources/echo-referrer-text.py")
- const text = await response.text();
- window.didFetch(text);
- })();
- `;
- fragment.append(script, meta);
- document.head.append(fragment);
- const result = await done;
- assert_equals(result, "");
-}, "<meta name=referrer> should apply before script, as it is an insertion step " +
- "and not a post-insertion step");
+ const preMetaScript = document.createElement("script");
+ preMetaScript.textContent = `
+ window.preMetaScriptPromise = fetch('/html/infrastructure/urls/terminology-0/resources/echo-referrer-text.py')
+ .then(response => response.text());
+ `;
+
+ const meta = document.createElement("meta");
+ meta.name = "referrer";
+ meta.content = "no-referrer";
+
+ const postMetaScript = document.createElement("script");
+ postMetaScript.textContent = `
+ window.postMetaScriptPromise = fetch('/html/infrastructure/urls/terminology-0/resources/echo-referrer-text.py')
+ .then(response => response.text());
+ `;
+
+ const fragment = new DocumentFragment();
+ fragment.append(preMetaScript, meta, postMetaScript);
+ document.head.append(fragment);
+
+ const preMetaReferrer = await window.preMetaScriptPromise;
+ assert_equals(preMetaReferrer, location.href,
+ "preMetaReferrer is the full URL; by the time the first script runs in " +
+ "its post-insertion steps, the later-inserted meta tag has not run its " +
+ "post-insertion steps, which is where meta tags are processed");
+
+ const postMetaReferrer = await window.postMetaScriptPromise;
+ assert_equals(postMetaReferrer, "",
+ "postMetaReferrer is empty; by the time the second script runs in " +
+ "its post-insertion steps, the later-inserted meta tag has run its " +
+ "post-insertion steps, and observes the meta tag's effect");
+}, "<meta name=referrer> gets processed and applied in the post-insertion " +
+ "steps");
</script>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/Node-moveBefore.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/Node-moveBefore.html
new file mode 100644
index 0000000000..8a1db6f93b
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/Node-moveBefore.html
@@ -0,0 +1,297 @@
+<!DOCTYPE html>
+<title>Node.moveBefore</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id="log"></div>
+<!-- First test shared pre-insertion checks that work similarly for replaceChild
+ and moveBefore -->
+<script>
+ var insertFunc = Node.prototype.moveBefore;
+</script>
+<script src="../../pre-insertion-validation-notfound.js"></script>
+<script src="../../pre-insertion-validation-hierarchy.js"></script>
+<script>
+preInsertionValidateHierarchy("moveBefore");
+
+function testLeafNode(nodeName, createNodeFunction) {
+ test(function() {
+ var node = createNodeFunction();
+ assert_throws_js(TypeError, function() { node.moveBefore(null, null) })
+ }, "Calling moveBefore with a non-Node first argument on a leaf node " + nodeName + " must throw TypeError.")
+ test(function() {
+ var node = createNodeFunction();
+ assert_throws_dom("HIERARCHY_REQUEST_ERR", function() { node.moveBefore(document.createTextNode("fail"), null) })
+ // Would be step 2.
+ assert_throws_dom("HIERARCHY_REQUEST_ERR", function() { node.moveBefore(node, null) })
+ // Would be step 3.
+ assert_throws_dom("HIERARCHY_REQUEST_ERR", function() { node.moveBefore(node, document.createTextNode("child")) })
+ }, "Calling moveBefore an a leaf node " + nodeName + " must throw HIERARCHY_REQUEST_ERR.")
+}
+
+test(function() {
+ // WebIDL: first argument.
+ assert_throws_js(TypeError, function() { document.body.moveBefore(null, null) })
+ assert_throws_js(TypeError, function() { document.body.moveBefore(null, document.body.firstChild) })
+ assert_throws_js(TypeError, function() { document.body.moveBefore({'a':'b'}, document.body.firstChild) })
+}, "Calling moveBefore with a non-Node first argument must throw TypeError.")
+
+test(function() {
+ // WebIDL: second argument.
+ assert_throws_js(TypeError, function() { document.body.moveBefore(document.createTextNode("child")) })
+ assert_throws_js(TypeError, function() { document.body.moveBefore(document.createTextNode("child"), {'a':'b'}) })
+}, "Calling moveBefore with second argument missing, or other than Node, null, or undefined, must throw TypeError.")
+
+testLeafNode("DocumentType", function () { return document.doctype; } )
+testLeafNode("Text", function () { return document.createTextNode("Foo") })
+testLeafNode("Comment", function () { return document.createComment("Foo") })
+testLeafNode("ProcessingInstruction", function () { return document.createProcessingInstruction("foo", "bar") })
+
+test(function() {
+ // Step 2.
+ assert_throws_dom("HIERARCHY_REQUEST_ERR", function() { document.body.moveBefore(document.body, document.getElementById("log")) })
+ assert_throws_dom("HIERARCHY_REQUEST_ERR", function() { document.body.moveBefore(document.documentElement, document.getElementById("log")) })
+}, "Calling moveBefore with an inclusive ancestor of the context object must throw HIERARCHY_REQUEST_ERR.")
+
+// Step 3.
+test(function() {
+ var a = document.createElement("div");
+ var b = document.createElement("div");
+ var c = document.createElement("div");
+ assert_throws_dom("NotFoundError", function() {
+ a.moveBefore(b, c);
+ });
+}, "Calling moveBefore with a reference child whose parent is not the context node must throw a NotFoundError.")
+
+// Step 4.1.
+test(function() {
+ var doc = document.implementation.createHTMLDocument("title");
+ var doc2 = document.implementation.createHTMLDocument("title2");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doc2, doc.documentElement);
+ });
+
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doc.createTextNode("text"), doc.documentElement);
+ });
+}, "If the context node is a document, inserting a document or text node should throw a HierarchyRequestError.")
+
+// Step 4.2.1.
+test(function() {
+ var doc = document.implementation.createHTMLDocument("title");
+ doc.removeChild(doc.documentElement);
+
+ var df = doc.createDocumentFragment();
+ df.appendChild(doc.createElement("a"));
+ df.appendChild(doc.createElement("b"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.firstChild);
+ });
+
+ df = doc.createDocumentFragment();
+ df.appendChild(doc.createTextNode("text"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.firstChild);
+ });
+
+ df = doc.createDocumentFragment();
+ df.appendChild(doc.createComment("comment"));
+ df.appendChild(doc.createTextNode("text"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.firstChild);
+ });
+}, "If the context node is a document, inserting a DocumentFragment that contains a text node or too many elements should throw a HierarchyRequestError.")
+
+// Step 4.2.2.
+test(function() {
+ // The context node has an element child.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.appendChild(doc.createComment("foo"));
+ assert_array_equals(doc.childNodes, [doc.doctype, doc.documentElement, comment]);
+
+ var df = doc.createDocumentFragment();
+ df.appendChild(doc.createElement("a"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.doctype);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.documentElement);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, comment);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, null);
+ });
+}, "If the context node is a document, inserting a DocumentFragment with an element if there already is an element child should throw a HierarchyRequestError.")
+test(function() {
+ // /child/ is a doctype.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.moveBefore(doc.createComment("foo"), doc.firstChild);
+ doc.removeChild(doc.documentElement);
+ assert_array_equals(doc.childNodes, [comment, doc.doctype]);
+
+ var df = doc.createDocumentFragment();
+ df.appendChild(doc.createElement("a"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, doc.doctype);
+ });
+}, "If the context node is a document and a doctype is following the reference child, inserting a DocumentFragment with an element should throw a HierarchyRequestError.")
+test(function() {
+ // /child/ is not null and a doctype is following /child/.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.moveBefore(doc.createComment("foo"), doc.firstChild);
+ doc.removeChild(doc.documentElement);
+ assert_array_equals(doc.childNodes, [comment, doc.doctype]);
+
+ var df = doc.createDocumentFragment();
+ df.appendChild(doc.createElement("a"));
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(df, comment);
+ });
+}, "If the context node is a document, inserting a DocumentFragment with an element before the doctype should throw a HierarchyRequestError.")
+
+// Step 4.3.
+test(function() {
+ // The context node has an element child.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.appendChild(doc.createComment("foo"));
+ assert_array_equals(doc.childNodes, [doc.doctype, doc.documentElement, comment]);
+
+ var a = doc.createElement("a");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, doc.doctype);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, doc.documentElement);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, comment);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, null);
+ });
+}, "If the context node is a document, inserting an element if there already is an element child should throw a HierarchyRequestError.")
+test(function() {
+ // /child/ is a doctype.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.moveBefore(doc.createComment("foo"), doc.firstChild);
+ doc.removeChild(doc.documentElement);
+ assert_array_equals(doc.childNodes, [comment, doc.doctype]);
+
+ var a = doc.createElement("a");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, doc.doctype);
+ });
+}, "If the context node is a document, inserting an element before the doctype should throw a HierarchyRequestError.")
+test(function() {
+ // /child/ is not null and a doctype is following /child/.
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.moveBefore(doc.createComment("foo"), doc.firstChild);
+ doc.removeChild(doc.documentElement);
+ assert_array_equals(doc.childNodes, [comment, doc.doctype]);
+
+ var a = doc.createElement("a");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(a, comment);
+ });
+}, "If the context node is a document and a doctype is following the reference child, inserting an element should throw a HierarchyRequestError.")
+
+// Step 4.4.
+test(function() {
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.moveBefore(doc.createComment("foo"), doc.firstChild);
+ assert_array_equals(doc.childNodes, [comment, doc.doctype, doc.documentElement]);
+
+ var doctype = document.implementation.createDocumentType("html", "", "");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, comment);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, doc.doctype);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, doc.documentElement);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, null);
+ });
+}, "If the context node is a document, inserting a doctype if there already is a doctype child should throw a HierarchyRequestError.")
+test(function() {
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.appendChild(doc.createComment("foo"));
+ doc.removeChild(doc.doctype);
+ assert_array_equals(doc.childNodes, [doc.documentElement, comment]);
+
+ var doctype = document.implementation.createDocumentType("html", "", "");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, comment);
+ });
+}, "If the context node is a document, inserting a doctype after the document element should throw a HierarchyRequestError.")
+test(function() {
+ var doc = document.implementation.createHTMLDocument("title");
+ var comment = doc.appendChild(doc.createComment("foo"));
+ doc.removeChild(doc.doctype);
+ assert_array_equals(doc.childNodes, [doc.documentElement, comment]);
+
+ var doctype = document.implementation.createDocumentType("html", "", "");
+ assert_throws_dom("HierarchyRequestError", function() {
+ doc.moveBefore(doctype, null);
+ });
+}, "If the context node is a document with and element child, appending a doctype should throw a HierarchyRequestError.")
+
+// Step 5.
+test(function() {
+ var df = document.createDocumentFragment();
+ var a = df.appendChild(document.createElement("a"));
+
+ var doc = document.implementation.createHTMLDocument("title");
+ assert_throws_dom("HierarchyRequestError", function() {
+ df.moveBefore(doc, a);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ df.moveBefore(doc, null);
+ });
+
+ var doctype = document.implementation.createDocumentType("html", "", "");
+ assert_throws_dom("HierarchyRequestError", function() {
+ df.moveBefore(doctype, a);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ df.moveBefore(doctype, null);
+ });
+}, "If the context node is a DocumentFragment, inserting a document or a doctype should throw a HierarchyRequestError.")
+test(function() {
+ var el = document.createElement("div");
+ var a = el.appendChild(document.createElement("a"));
+
+ var doc = document.implementation.createHTMLDocument("title");
+ assert_throws_dom("HierarchyRequestError", function() {
+ el.moveBefore(doc, a);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ el.moveBefore(doc, null);
+ });
+
+ var doctype = document.implementation.createDocumentType("html", "", "");
+ assert_throws_dom("HierarchyRequestError", function() {
+ el.moveBefore(doctype, a);
+ });
+ assert_throws_dom("HierarchyRequestError", function() {
+ el.moveBefore(doctype, null);
+ });
+}, "If the context node is an element, inserting a document or a doctype should throw a HierarchyRequestError.")
+
+// Step 7.
+test(function() {
+ var a = document.createElement("div");
+ var b = document.createElement("div");
+ var c = document.createElement("div");
+ a.appendChild(b);
+ a.appendChild(c);
+ assert_array_equals(a.childNodes, [b, c]);
+ assert_equals(a.moveBefore(b, b), b);
+ assert_array_equals(a.childNodes, [b, c]);
+ assert_equals(a.moveBefore(c, c), c);
+ assert_array_equals(a.childNodes, [b, c]);
+}, "Inserting a node before itself should not move the node");
+</script>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/chrome-338071841-crash.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/chrome-338071841-crash.html
new file mode 100644
index 0000000000..26adfb1cbf
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/chrome-338071841-crash.html
@@ -0,0 +1,6 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/338071841">
+<div id="p"><span></span><!-- comment --></div>
+<script>
+ p.moveBefore(p.lastChild, p.firstChild);
+</script>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-left.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-left.html
new file mode 100644
index 0000000000..8c7f73e3c9
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-left.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS animation state (left)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ @keyframes anim {
+ from {
+ left: 100px;
+ }
+
+ to {
+ left: 400px;
+ }
+ }
+
+ section {
+ position: absolute;
+ }
+
+ #item {
+ position: relative;
+ width: 100px;
+ height: 100px;
+ background: green;
+ animation: 1s linear infinite alternate anim;
+ animation-delay: 100ms;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ let num_events = 0;
+ await new Promise(resolve => addEventListener("animationstart", () => {
+ num_events++;
+ resolve();
+ }));
+
+ // Reparent item
+ document.body.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_equals(num_events, 1);
+ assert_not_equals(getComputedStyle(item).left, "0px");
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html
new file mode 100644
index 0000000000..e7a285893a
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-animation-transform.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS animation state (transform)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ @keyframes anim {
+ from {
+ transform: translateX(100px);
+ }
+
+ to {
+ transform: translateX(400px);
+ }
+ }
+
+ #item {
+ position: relative;
+ width: 100px;
+ height: 100px;
+ background: green;
+ animation: 1s linear infinite alternate anim;
+ animation-delay: 100ms;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ let num_events = 0;
+ await new Promise(resolve => addEventListener("animationstart", () => {
+ num_events++;
+ resolve();
+ }));
+
+ // Reparent item
+ document.body.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_equals(num_events, 1);
+ assert_not_equals(getComputedStyle(item).transform, "none");
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html
new file mode 100644
index 0000000000..fa51b16887
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left-pseudo.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS transition state on pseudo-elements (left)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ left: 0;
+ }
+
+ #item::before {
+ content: "Foo";
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 60s steps(1, jump-both);
+ left: 0px;
+ position: absolute;
+ }
+
+ #item.big::before {
+ left: 400px;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.classList.add("big");
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_equals(getComputedStyle(item, "::before").left, "200px");
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left.html
new file mode 100644
index 0000000000..2b8e04b26e
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-left.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS transition state (left)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s;
+ position: absolute;
+ left: 0;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.style.left = "400px";
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_less_than(item.getBoundingClientRect().x, 399);
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html
new file mode 100644
index 0000000000..d02c72561c
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform-pseudo.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS transition state on pseudo-elements (transform)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ position: absolute;
+ left: 0;
+ }
+
+ #item::before {
+ content: "Foo";
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: transform 60s steps(1, jump-both);
+ transform: none;
+ position: absolute;
+ }
+
+ #item.big::before {
+ transform: translateX(400px);
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.classList.add("big");
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_not_equals(getComputedStyle(item, "::before").transform, "none");
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html
new file mode 100644
index 0000000000..f09edca144
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/continue-css-transition-transform.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should preserve CSS transition state (transform)</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: transform 60s steps(1, jump-both);
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.style.transform = "translateX(400px)";
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_equals(item.getBoundingClientRect().x, 200);
+ assert_equals(item.getAnimations().length, 1);
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html
new file mode 100644
index 0000000000..86bb7c33e4
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-animation-commit-styles.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<title>Calling commitStyles after Node.moveBefore should commit mid-transition value</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ @keyframes anim {
+ from {
+ transform: translateX(100px);
+ }
+
+ to {
+ transform: translateX(400px);
+ }
+ }
+
+ #item {
+ position: relative;
+ width: 100px;
+ height: 100px;
+ background: green;
+ animation: 1s linear infinite alternate anim;
+ animation-delay: 100ms;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ await new Promise(resolve => item.addEventListener("animationstart", resolve));
+
+ // Reparent item
+ document.body.querySelector("#new-parent").moveBefore(item, null);
+
+ item.getAnimations()[0].commitStyles();
+ assert_true("transform" in item.style);
+ assert_not_equals(item.style.transform, "none");
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-document.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-document.html
new file mode 100644
index 0000000000..f3c8fafbfa
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-document.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should not preserve CSS transition state when crossing document boundaries</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <iframe id="iframe">
+ </iframe>
+ <section id="new-parent">
+ </section>
+ <style id="style">
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s;
+ position: absolute;
+ left: 0;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const iframe = document.querySelector("#iframe");
+ const style = document.querySelector("#style");
+ iframe.contentDocument.head.append(style.cloneNode(true));
+ const item = iframe.contentDocument.createElement("div");
+ item.id = "item";
+ iframe.contentDocument.body.append(item);
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.style.left = "400px";
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_greater_than(item.getBoundingClientRect().x, 399);
+ }, "Moving a transition across documents should reset its state");
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html
new file mode 100644
index 0000000000..145f40ba50
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-cross-shadow.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should not preserve CSS transition state when crossing shadow boundaries</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <div id="shadow-container">
+ <template shadowrootmode="open">
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s;
+ position: absolute;
+ left: 0;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <section id="new-parent">
+ </section>
+ </template>
+ </div>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s;
+ position: absolute;
+ left: 0;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.style.left = "400px";
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ const shadowContainer = document.querySelector("#shadow-container");
+ shadowContainer.shadowRoot.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_greater_than(item.getBoundingClientRect().x, 399);
+ }, "Moving an element with a transition across shadow boundaries should reset the transition");
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html
new file mode 100644
index 0000000000..537edfe9b6
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-to-disconnected-document.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should act like insertBefore when moving to a disconnected document</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s;
+ position: absolute;
+ left: 0;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ item.style.left = "400px";
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ const doc = document.implementation.createHTMLDocument();
+ doc.body.moveBefore(item, null);
+ await new Promise(resolve => requestAnimationFrame(() => resolve()));
+ assert_equals(item.getBoundingClientRect().x, 0);
+ }, "Moving an element with a transition to a disconnected document should reset the transitionm state");
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-trigger.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-trigger.html
new file mode 100644
index 0000000000..0cb5608a69
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/css-transition-trigger.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<title>Node.moveBefore should trigger CSS transition state (left) if needed</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+ <section id="old-parent">
+ <div id="item"></div>
+ </section>
+ <section id="new-parent">
+ </section>
+ <style>
+ #item {
+ width: 100px;
+ height: 100px;
+ background: green;
+ transition: left 10s steps(1, jump-both);
+ position: absolute;
+ left: 0;
+ }
+
+ #new-parent #item {
+ left: 400px;
+ }
+
+ section {
+ position: relative;
+ }
+
+ body {
+ margin-left: 0;
+ }
+ </style>
+ <script>
+ promise_test(async t => {
+ const item = document.querySelector("#item");
+ assert_equals(item.getBoundingClientRect().x, 0);
+ document.querySelector("#new-parent").moveBefore(item, null);
+ await new Promise(resolve => item.addEventListener("transitionstart", resolve));
+ assert_equals(item.getBoundingClientRect().x, 200);
+ });
+ </script>
+</body>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/focus-preserve.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/focus-preserve.html
new file mode 100644
index 0000000000..a00e8b7788
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/focus-preserve.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<title>moveBefore should not automatically clear focus</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+<section id="old_parent">
+<button id="button" tabindex="1">Button</button>
+</section>
+<section id="new_parent">
+</section>
+<section id="inert_parent" inert>
+</section>
+<section id="hidden_parent" hidden>
+</section>
+<script>
+
+function eventually_blurred(t, item, timeout = 1000) {
+ return new Promise((resolve, reject) => {
+ function onblur() {
+ resolve();
+ item.removeEventListener("blur", onblur);
+ }
+ item.addEventListener("blur", onblur);
+ t.step_timeout(reject, timeout);
+ });
+}
+
+test(t => {
+ const old_parent = document.querySelector("#old_parent");
+ const button = document.querySelector("#button");
+ t.add_cleanup(() => old_parent.append(button));
+ button.focus();
+ assert_equals(document.activeElement, button);
+ new_parent.moveBefore(button, null);
+ assert_equals(document.activeElement, button);
+}, "when reparenting an element, don't automatically reset the document focus");
+
+promise_test(async t => {
+ const old_parent = document.querySelector("#old_parent");
+ const button = document.querySelector("#button");
+ t.add_cleanup(() => old_parent.append(button));
+ const inert_parent = document.querySelector("#inert_parent");
+ button.focus();
+ assert_equals(document.activeElement, button);
+ inert_parent.moveBefore(button, null);
+
+ // The button will still be considered the active element. It will blur asynchronously.
+ assert_equals(document.activeElement, button);
+ await eventually_blurred(t, button);
+ assert_equals(document.activeElement, document.body);
+}, "when reparenting a focused element into an inert parent, reset the document focus");
+
+
+promise_test(async t => {
+ const old_parent = document.querySelector("#old_parent");
+ const button = document.querySelector("#button");
+ t.add_cleanup(() => old_parent.append(button));
+ const hidden_parent = document.querySelector("#hidden_parent");
+ button.focus();
+ assert_equals(document.activeElement, button);
+ hidden_parent.moveBefore(button, null);
+
+ // The button will still be considered the active element. It will blur asynchronously.
+ // This is similar to other operations that can cause a blur due to change in inert trees,
+ // e.g. a style change that makes an ancestor `display: none`.
+ assert_equals(document.activeElement, button);
+ await eventually_blurred(t, button);
+ assert_equals(document.activeElement, document.body);
+}, "when reparenting a focused element into a hidden parent, reset the document focus");
+
+promise_test(async t => {
+ const old_parent = document.querySelector("#old_parent");
+ const button = document.querySelector("#button");
+ t.add_cleanup(() => document.body.append(old_parent));
+ const hidden_parent = document.querySelector("#hidden_parent");
+ button.focus();
+ assert_equals(document.activeElement, button);
+ hidden_parent.moveBefore(old_parent, null);
+
+ // The button will still be considered the active element. It will blur asynchronously.
+ assert_equals(document.activeElement, button);
+ await eventually_blurred(t, button);
+ assert_equals(document.activeElement, document.body);
+}, "when reparenting an ancestor of an focused element into a hidden parent, reset the document focus");
+</script>
diff --git a/testing/web-platform/tests/dom/nodes/moveBefore/tentative/fullscreen-preserve.html b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/fullscreen-preserve.html
new file mode 100644
index 0000000000..810eeac9af
--- /dev/null
+++ b/testing/web-platform/tests/dom/nodes/moveBefore/tentative/fullscreen-preserve.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<title>Document#fullscreenElement</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/fullscreen/trusted-click.js"></script>
+<section id="old_parent">
+ <div id="item"></div>
+</section>
+<section id="new_parent">
+ <div id="item"></div>
+</section>
+<script>
+ promise_test(async function (t) {
+ const item = document.querySelector("#item");
+
+ await trusted_click();
+
+ assert_equals(
+ document.fullscreenElement,
+ null,
+ "fullscreenElement before requestFullscreen()"
+ );
+
+ await item.requestFullscreen();
+ assert_equals(
+ document.fullscreenElement,
+ item,
+ "fullscreenElement before moveBefore()"
+ );
+
+ document.querySelector("#new_parent").moveBefore(item, null);
+
+ assert_equals(
+ document.fullscreenElement,
+ item,
+ "fullscreenElement after moveBefore()"
+ );
+
+ await Promise.all([document.exitFullscreen(), fullScreenChange()]);
+
+ assert_equals(
+ document.fullscreenElement,
+ null,
+ "fullscreenElement after exiting fullscreen"
+ );
+ });
+</script>
diff --git a/testing/web-platform/tests/dom/observable/tentative/observable-every.any.js b/testing/web-platform/tests/dom/observable/tentative/observable-every.any.js
new file mode 100644
index 0000000000..74a344b8f7
--- /dev/null
+++ b/testing/web-platform/tests/dom/observable/tentative/observable-every.any.js
@@ -0,0 +1,250 @@
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.next("good");
+ subscriber.next("good");
+ subscriber.next("good");
+ subscriber.complete();
+ });
+
+ const result = await source.every((value) => value === "good");
+
+ assert_true(result, "Promise resolves with true if all values pass the predicate");
+}, "every(): Promise resolves to true if all values pass the predicate");
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.next("good");
+ subscriber.next("good");
+ subscriber.next("bad");
+ subscriber.complete();
+ });
+
+ const result = await source.every((value) => value === "good");
+
+ assert_false(result, "Promise resolves with false if any value fails the predicate");
+}, "every(): Promise resolves to false if any value fails the predicate");
+
+promise_test(async () => {
+ let tornDown = false;
+ let subscriberActiveAfterFailingPredicate = true;
+ const source = new Observable(subscriber => {
+ subscriber.addTeardown(() => tornDown = true);
+ subscriber.next("good");
+ subscriber.next("good");
+ subscriber.next("bad");
+ subscriberActiveAfterFailingPredicate = subscriber.active;
+ subscriber.next("good");
+ subscriber.complete();
+ });
+
+ const result = await source.every((value) => value === "good");
+
+ assert_false(result, "Promise resolves with false if any value fails the predicate");
+ assert_false(subscriberActiveAfterFailingPredicate,
+ "Subscriber becomes inactive because every() unsubscribed");
+}, "every(): Abort the subscription to the source if the predicate does not pass");
+
+promise_test(async () => {
+ const logs = [];
+
+ const source = createTestSubject({
+ onSubscribe: () => logs.push("subscribed to source"),
+ onTeardown: () => logs.push("teardown"),
+ });
+
+ const resultPromise = source.every((value, index) => {
+ logs.push(`Predicate called with ${value}, ${index}`);
+ return true;
+ });
+
+ let promiseResolved = false;
+
+ resultPromise.then(() => promiseResolved = true);
+
+ assert_array_equals(logs, ["subscribed to source"],
+ "calling every() subscribes to the source immediately");
+
+ source.next("a");
+ assert_array_equals(logs, [
+ "subscribed to source",
+ "Predicate called with a, 0"
+ ], "Predicate called with the value and the index");
+
+ source.next("b");
+ assert_array_equals(logs, [
+ "subscribed to source",
+ "Predicate called with a, 0",
+ "Predicate called with b, 1",
+ ], "Predicate called with the value and the index");
+
+ // wait a tick, just to prove that you have to wait for complete to be called.
+ await Promise.resolve();
+
+ assert_false(promiseResolved,
+ "Promise should not resolve until after the source completes");
+
+ source.complete();
+ assert_array_equals(logs, [
+ "subscribed to source",
+ "Predicate called with a, 0",
+ "Predicate called with b, 1",
+ "teardown",
+ ], "Teardown function called immediately after the source completes");
+
+ const result = await resultPromise;
+
+ assert_true(result,
+ "Promise resolves with true if all values pass the predicate");
+}, "every(): Lifecycle checks when all values pass the predicate");
+
+promise_test(async () => {
+ const logs = [];
+
+ const source = createTestSubject({
+ onSubscribe: () => logs.push("subscribed to source"),
+ onTeardown: () => logs.push("teardown"),
+ });
+
+ const resultPromise = source.every((value, index) => {
+ logs.push(`Predicate called with ${value}, ${index}`);
+ return value === "good";
+ });
+
+ let promiseResolved = false;
+
+ resultPromise.then(() => promiseResolved = true);
+
+ assert_array_equals(logs, ["subscribed to source"],
+ "calling every() subscribes to the source immediately");
+
+ source.next("good");
+ source.next("good");
+ assert_array_equals(logs, [
+ "subscribed to source",
+ "Predicate called with good, 0",
+ "Predicate called with good, 1",
+ ], "Predicate called with the value and the index");
+
+ assert_false(promiseResolved, "Promise should not resolve until after the predicate fails");
+
+ source.next("bad");
+ assert_array_equals(logs, [
+ "subscribed to source",
+ "Predicate called with good, 0",
+ "Predicate called with good, 1",
+ "Predicate called with bad, 2",
+ "teardown",
+ ], "Predicate called with the value and the index, failing predicate immediately aborts subscription to source");
+
+ const result = await resultPromise;
+
+ assert_false(result, "Promise resolves with false if any value fails the predicate");
+}, "every(): Lifecycle checks when any value fails the predicate");
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.complete();
+ });
+
+ const result = await source.every(() => true);
+
+ assert_true(result,
+ "Promise resolves with true if the observable completes without " +
+ "emitting a value");
+}, "every(): Resolves with true if the observable completes without " +
+ "emitting a value");
+
+promise_test(async t => {
+ const error = new Error("error from source");
+ const source = new Observable(subscriber => {
+ subscriber.error(error);
+ });
+
+ promise_rejects_exactly(t, error, source.every(() => true),
+ "Promise rejects with the error emitted from the source observable");
+}, "every(): Rejects with any error emitted from the source observable");
+
+promise_test(async t => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ const error = new Error("bad value");
+ const promise = source.every(value => {
+ if (value <= 2) return true;
+ throw error;
+ });
+
+ promise_rejects_exactly(t, error, promise, "Promise rejects with the " +
+ "error thrown from the predicate");
+}, "every(): Rejects with any error thrown from the predicate");
+
+promise_test(async () => {
+ const indices = [];
+
+ const source = new Observable(subscriber => {
+ subscriber.next("a");
+ subscriber.next("b");
+ subscriber.next("c");
+ subscriber.complete();
+ });
+
+ const value = await source.every((value, index) => {
+ indices.push(index);
+ return true;
+ });
+
+ assert_array_equals(indices, [0, 1, 2]);
+
+ assert_true(value,
+ "Promise resolves with true if all values pass the predicate");
+}, "every(): Index is passed into the predicate");
+
+promise_test(async t => {
+ const source = new Observable(subscriber => {});
+
+ const controller = new AbortController();
+ const promise = source.every(() => true, { signal: controller.signal });
+ controller.abort();
+
+ promise_rejects_dom(t, 'AbortError', promise, "Promise rejects with a " +
+ "DOMException if the source Observable is aborted");
+}, "every(): Rejects with a DOMException if the source Observable is aborted");
+
+function createTestSubject(options) {
+ const onTeardown = options?.onTeardown;
+
+ const subscribers = new Set();
+ const subject = new Observable(subscriber => {
+ options?.onSubscribe?.();
+ subscribers.add(subscriber);
+ subscriber.addTeardown(() => subscribers.delete(subscriber));
+ if (onTeardown) {
+ subscriber.addTeardown(onTeardown);
+ }
+ });
+
+ subject.next = (value) => {
+ for (const subscriber of Array.from(subscribers)) {
+ subscriber.next(value);
+ }
+ };
+ subject.error = (error) => {
+ for (const subscriber of Array.from(subscribers)) {
+ subscriber.error(error);
+ }
+ };
+ subject.complete = () => {
+ for (const subscriber of Array.from(subscribers)) {
+ subscriber.complete();
+ }
+ };
+ subject.subscriberCount = () => {
+ return subscribers.size;
+ };
+
+ return subject;
+}
diff --git a/testing/web-platform/tests/dom/observable/tentative/observable-filter.any.js b/testing/web-platform/tests/dom/observable/tentative/observable-filter.any.js
index 8a49bcf467..3c1a7d7824 100644
--- a/testing/web-platform/tests/dom/observable/tentative/observable-filter.any.js
+++ b/testing/web-platform/tests/dom/observable/tentative/observable-filter.any.js
@@ -103,3 +103,15 @@ test(() => {
['source teardown', 'source abort event', 'filter observable complete']);
}, "filter(): Upon source completion, source Observable teardown sequence " +
"happens after downstream filter complete() is called");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next('value1');
+ subscriber.next('value2');
+ subscriber.next('value3');
+ });
+
+ const indices = [];
+ source.filter((value, index) => indices.push(index)).subscribe();
+ assert_array_equals(indices, [0, 1, 2]);
+}, "filter(): Index is passed correctly to predicate");
diff --git a/testing/web-platform/tests/dom/observable/tentative/observable-find.any.js b/testing/web-platform/tests/dom/observable/tentative/observable-find.any.js
new file mode 100644
index 0000000000..0e09060fc5
--- /dev/null
+++ b/testing/web-platform/tests/dom/observable/tentative/observable-find.any.js
@@ -0,0 +1,85 @@
+promise_test(async () => {
+ let inactiveAfterB = false;
+ const source = new Observable(subscriber => {
+ subscriber.next("a");
+ subscriber.next("b");
+ inactiveAfterB = !subscriber.active;
+ subscriber.next("c");
+ subscriber.complete();
+ });
+
+ const value = await source.find((value) => value === "b");
+
+ assert_equals(value, "b", "Promise resolves with the first value that passes the predicate");
+
+ assert_true(inactiveAfterB, "subscriber is inactive after the first value that passes the predicate");
+}, "find(): Promise resolves with the first value that passes the predicate");
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.next("a");
+ subscriber.next("b");
+ subscriber.next("c");
+ subscriber.complete();
+ });
+
+ const value = await source.find(() => false);
+
+ assert_equals(value, undefined, "Promise resolves with undefined if no value passes the predicate");
+}, "find(): Promise resolves with undefined if no value passes the predicate");
+
+promise_test(async t => {
+ const error = new Error("error from source");
+ const source = new Observable(subscriber => {
+ subscriber.error(error);
+ });
+
+ promise_rejects_exactly(t, error, source.find(() => true), "Promise " +
+ "rejects with the error emitted from the source Observable");
+}, "find(): Promise rejects with the error emitted from the source Observable");
+
+promise_test(async t => {
+ const source = new Observable(subscriber => {
+ subscriber.next("ignored");
+ });
+
+ const error = new Error("thrown from predicate");
+ promise_rejects_exactly(t, error, source.find(() => {throw error}),
+ "Promise rejects with any error thrown from the predicate");
+}, "find(): Promise rejects with any error thrown from the predicate");
+
+promise_test(async () => {
+ let indices = [];
+
+ const source = new Observable(subscriber => {
+ subscriber.next("a");
+ subscriber.next("b");
+ subscriber.next("c");
+ subscriber.complete();
+ });
+
+ const value = await source.find((value, index) => {
+ indices.push(index);
+ return false;
+ });
+
+ assert_equals(value, undefined, "Promise resolves with undefined if no value passes the predicate");
+
+ assert_array_equals(indices, [0, 1, 2], "find(): Passes the index of the value to the predicate");
+}, "find(): Passes the index of the value to the predicate");
+
+promise_test(async t => {
+ const controller = new AbortController();
+ const source = new Observable(subscriber => {
+ subscriber.next("a");
+ subscriber.next("b");
+ subscriber.next("c");
+ subscriber.complete();
+ });
+
+ controller.abort();
+ const promise = source.find(() => true, { signal: controller.signal });
+
+ promise_rejects_dom(t, 'AbortError', promise, "Promise rejects with " +
+ "DOMException when the signal is aborted");
+}, "find(): Rejects with AbortError when the signal is aborted");
diff --git a/testing/web-platform/tests/dom/observable/tentative/observable-inspect.any.js b/testing/web-platform/tests/dom/observable/tentative/observable-inspect.any.js
new file mode 100644
index 0000000000..8aff741d26
--- /dev/null
+++ b/testing/web-platform/tests/dom/observable/tentative/observable-inspect.any.js
@@ -0,0 +1,412 @@
+// Because we test that the global error handler is called at various times.
+setup({ allow_uncaught_exception: true });
+
+test(() => {
+ const results = [];
+ let sourceSubscriptionCall = 0;
+ const source = new Observable(subscriber => {
+ sourceSubscriptionCall++;
+ results.push(`source subscribe ${sourceSubscriptionCall}`);
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ let inspectSubscribeCall = 0;
+ const result = source.inspect({
+ subscribe: () => {
+ inspectSubscribeCall++;
+ results.push(`inspect() subscribe ${inspectSubscribeCall}`);
+ },
+ next: (value) => results.push(`inspect() next ${value}`),
+ error: (e) => results.push(`inspect() error ${e.message}`),
+ complete: () => results.push(`inspect() complete`),
+ });
+
+ result.subscribe({
+ next: (value) => results.push(`result next ${value}`),
+ error: (e) => results.push(`result error ${e.message}`),
+ complete: () => results.push(`result complete`),
+ });
+
+ result.subscribe({
+ next: (value) => results.push(`result next ${value}`),
+ error: (e) => results.push(`result error ${e.message}`),
+ complete: () => results.push(`result complete`),
+ });
+
+ assert_array_equals(results,
+ [
+ "inspect() subscribe 1",
+ "source subscribe 1",
+ "inspect() next 1",
+ "result next 1",
+ "inspect() next 2",
+ "result next 2",
+ "inspect() next 3",
+ "result next 3",
+ "inspect() complete",
+ "result complete",
+ "inspect() subscribe 2",
+ "source subscribe 2",
+ "inspect() next 1",
+ "result next 1",
+ "inspect() next 2",
+ "result next 2",
+ "inspect() next 3",
+ "result next 3",
+ "inspect() complete",
+ "result complete",
+ ]);
+}, "inspect(): Provides a pre-subscription subscribe callback");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ const results = [];
+
+ const result = source.inspect({
+ next: value => results.push(value),
+ error: e => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ result.subscribe();
+ result.subscribe();
+
+ assert_array_equals(results, [1, 2, 3, "complete", 1, 2, 3, "complete"]);
+}, "inspect(): Provides a way to tap into the values and completions of the " +
+ "source observable using an observer");
+
+test(() => {
+ const error = new Error("error from source");
+ const source = new Observable(subscriber => subscriber.error(error));
+
+ const results = [];
+
+ const result = source.inspect({
+ next: value => results.push(value),
+ error: e => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ let errorReported = null;
+ self.addEventListener('error', e => errorReported = e.error, {once: true});
+ result.subscribe();
+
+ assert_array_equals(results, [error]);
+ assert_equals(errorReported, error,
+ "errorReported to global matches error from source Observable");
+}, "inspect(): Error handler does not stop error from being reported to the " +
+ "global, when subscriber does not pass error handler");
+
+test(() => {
+ const error = new Error("error from source");
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.error(error);
+ });
+
+ const results = [];
+
+ const result = source.inspect({
+ next: value => results.push(value),
+ error: e => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ const observer = {
+ error: e => results.push(e),
+ };
+ result.subscribe(observer);
+ result.subscribe(observer);
+
+ assert_array_equals(results, [1, 2, 3, error, error, 1, 2, 3, error, error]);
+}, "inspect(): Provides a way to tap into the values and errors of the " +
+ "source observable using an observer. Errors are passed through");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ const results = [];
+
+ const result = source.inspect(value => results.push(value));
+
+ result.subscribe();
+ result.subscribe();
+
+ assert_array_equals(results, [1, 2, 3, 1, 2, 3]);
+}, "inspect(): ObserverCallback passed in");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ });
+
+ const error = new Error("error from inspect() next handler");
+ const result = source.inspect({
+ next: (value) => {
+ if (value === 2) {
+ throw error;
+ }
+ },
+ });
+
+ const results1 = [];
+ result.subscribe({
+ next: (value) => results1.push(value),
+ error: (e) => results1.push(e),
+ complete: () => results1.push("complete"),
+ });
+
+ const results2 = [];
+ result.subscribe({
+ next: (value) => results2.push(value),
+ error: (e) => results2.push(e),
+ complete: () => results2.push("complete"),
+ });
+
+ assert_array_equals(results1, [1, error]);
+ assert_array_equals(results2, [1, error]);
+}, "inspect(): Throwing an error in the observer next handler is caught and " +
+ "sent to the error callback of the result observable");
+
+test(() => {
+ const sourceError = new Error("error from source");
+ const inspectError = new Error("error from inspect() error handler");
+
+ const source = new Observable(subscriber => {
+ subscriber.error(sourceError);
+ });
+
+ const result = source.inspect({
+ error: () => {
+ throw inspectError;
+ },
+ });
+
+ const results = [];
+ result.subscribe({
+ next: () => results.push("next"),
+ error: (e) => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ assert_array_equals(results, [inspectError]);
+}, "inspect(): Throwing an error in the observer error handler in " +
+ "inspect() is caught and sent to the error callback of the result " +
+ "observable");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ const error = new Error("error from inspect() complete handler");
+ const result = source.inspect({
+ complete: () => {
+ throw error;
+ },
+ });
+
+ const results = [];
+ result.subscribe({
+ next: (value) => results.push(value),
+ error: (e) => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ assert_array_equals(results, [1, 2, 3, error]);
+}, "inspect(): Throwing an error in the observer complete handler is caught " +
+ "and sent to the error callback of the result observable");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ });
+
+ const error = new Error("error from inspect() next handler");
+ const result = source.inspect({
+ next: (value) => {
+ if (value === 2) {
+ throw error;
+ }
+ },
+ });
+
+ const results = [];
+ result.subscribe({
+ next: (value) => results.push(value),
+ error: (e) => results.push(e),
+ complete: () => results.push("complete"),
+ });
+
+ assert_array_equals(results, [1, error]);
+}, "inspect(): Throwing an error in the next handler function in do should " +
+ "be caught and sent to the error callback of the result observable");
+
+test(() => {
+ const source = new Observable(subscriber => {});
+
+ const result = source.inspect({
+ subscribe: () => {
+ throw new Error("error from do subscribe handler");
+ },
+ });
+
+ const results = [];
+ result.subscribe({
+ next: () => results.push("next"),
+ error: (e) => results.push(e.message),
+ complete: () => results.push("complete"),
+ });
+
+ assert_array_equals(results, ["error from do subscribe handler"]);
+}, "inspect(): Errors thrown in subscribe() Inspector handler subscribe " +
+ "handler are caught and sent to error callback");
+
+test(() => {
+ const results = [];
+ let sourceTeardownCall = 0;
+ const source = new Observable(subscriber => {
+ subscriber.addTeardown(() => {
+ sourceTeardownCall++;
+ results.push(`source teardown ${sourceTeardownCall}`);
+ });
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ let doUnsubscribeCall = 0;
+ const result = source.inspect({
+ abort: (reason) => {
+ doUnsubscribeCall++;
+ results.push(`inspect() abort ${doUnsubscribeCall} ${reason}`);
+ },
+ next: (value) => results.push(`inspect() next ${value}`),
+ error: (e) => results.push(`inspect() error ${e.message}`),
+ complete: () => results.push(`inspect() complete`),
+ });
+
+ const controller = new AbortController();
+ result.subscribe({
+ next: (value) => {
+ results.push(`result next ${value}`);
+ if (value === 2) {
+ controller.abort("abort reason");
+ }
+ },
+ error: (e) => results.push(`result error ${e.message}`),
+ complete: () => results.push(`result complete`),
+ }, { signal: controller.signal });
+
+ assert_array_equals(results, [
+ "inspect() next 1",
+ "result next 1",
+ "inspect() next 2",
+ "result next 2",
+ "inspect() abort 1 abort reason",
+ "source teardown 1",
+ ]);
+}, "inspect(): Provides a way to tap into the moment a source observable is unsubscribed from");
+
+test(() => {
+ const results = [];
+ let sourceTeardownCall = 0;
+ const source = new Observable(subscriber => {
+ subscriber.addTeardown(() => {
+ sourceTeardownCall++;
+ results.push(`source teardown ${sourceTeardownCall}`);
+ });
+ subscriber.next(1);
+ subscriber.next(2);
+ subscriber.next(3);
+ subscriber.complete();
+ });
+
+ let inspectUnsubscribeCall = 0;
+ const result = source.inspect({
+ next: (value) => results.push(`inspect() next ${value}`),
+ complete: () => results.push(`inspect() complete`),
+ abort: (reason) => {
+ inspectUnsubscribeCall++;
+ results.push(`inspect() abort ${inspectUnsubscribeCall} ${reason}`);
+ },
+ });
+
+ result.subscribe({
+ next: (value) => results.push(`result next ${value}`),
+ complete: () => results.push(`result complete`),
+ });
+
+ assert_array_equals(results, [
+ "inspect() next 1",
+ "result next 1",
+ "inspect() next 2",
+ "result next 2",
+ "inspect() next 3",
+ "result next 3",
+ "source teardown 1",
+ "inspect() complete",
+ "result complete",
+ ]);
+}, "inspect(): Inspector abort() handler is not called if the source " +
+ "completes before the result is unsubscribed from");
+
+test(() => {
+ const source = new Observable(subscriber => {
+ subscriber.next(1);
+ });
+
+ const results = [];
+
+ const result = source.inspect({
+ abort: () => {
+ results.push('abort() handler run');
+ throw new Error("error from inspect() subscribe handler");
+ },
+ });
+
+ const controller = new AbortController();
+
+ self.on('error').take(1).subscribe(e =>
+ results.push(e.message + ', from report exception'));
+
+ result.subscribe({
+ next: (value) => {
+ results.push(value);
+ controller.abort();
+ },
+ // This should not be invoked at all!!
+ error: (e) => results.push(e.message + ', from Observer#error()'),
+ complete: () => results.push("complete"),
+ }, {signal: controller.signal});
+
+ assert_array_equals(results, [1, "abort() handler run",
+ "Uncaught Error: error from inspect() subscribe handler, from report " +
+ "exception"]);
+}, "inspect(): Errors thrown from inspect()'s abort() handler are caught " +
+ "and reported to the global, because the subscription is already closed " +
+ "by the time the handler runs");
diff --git a/testing/web-platform/tests/dom/observable/tentative/observable-some.any.js b/testing/web-platform/tests/dom/observable/tentative/observable-some.any.js
new file mode 100644
index 0000000000..b692610df3
--- /dev/null
+++ b/testing/web-platform/tests/dom/observable/tentative/observable-some.any.js
@@ -0,0 +1,96 @@
+promise_test(async () => {
+ let inactiveAfterFirstGood = true;
+
+ const source = new Observable(subscriber => {
+ subscriber.next("good");
+ inactiveAfterFirstGood = !subscriber.active;
+ subscriber.next("good");
+ subscriber.next("good");
+ subscriber.complete();
+ });
+
+ const result = await source.some((value) => value === "good");
+
+ assert_true(result, "Promise resolves with true if any value passes the predicate");
+
+ assert_true(inactiveAfterFirstGood,
+ "subscriber is inactive after the first value that passes the " +
+ "predicate, because the source was unsubscribed from");
+}, "some(): subscriber is inactive after the first value that passes the predicate, because the source was unsubscribed from");
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.next("bad");
+ subscriber.next("bad");
+ subscriber.next("bad");
+ subscriber.complete();
+ });
+
+ const result = await source.some((value) => value === "good");
+
+ assert_false(result, "some(): Promise resolves with false if no value passes the predicate");
+});
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.next("bad");
+ subscriber.next("bad");
+ subscriber.next("good");
+ subscriber.complete();
+ });
+
+ const result = await source.some((value) => value === "good");
+
+ assert_true(result, "some(): Promise resolves with true if any value passes the predicate");
+});
+
+promise_test(async t => {
+ const source = new Observable(subscriber => {
+ subscriber.next("not used");
+ });
+
+ const error = new Error("thrown from predicate");
+ promise_rejects_exactly(t, error, source.some(() => {throw error}),
+ "The returned promise rejects with an error if the predicate errors");
+}, "some(): The returned promise rejects with an error if the predicate errors");
+
+promise_test(async t => {
+ const error = new Error("error from source");
+ const source = new Observable(subscriber => {
+ subscriber.error(error);
+ });
+
+ promise_rejects_exactly(t, error, source.some(() => true),
+ "The returned promise rejects with an error if the source observable errors");
+}, "some(): The returned promise rejects with an error if the source observable errors");
+
+promise_test(async () => {
+ const source = new Observable(subscriber => {
+ subscriber.complete();
+ });
+
+ const result = await source.some(() => true);
+
+ assert_false(result,
+ "The returned promise resolves as false if the source observable " +
+ "completes without emitting a value");
+}, "some(): The returned promise resolves as false if the source observable " +
+ "completes without emitting a value");
+
+promise_test(async t => {
+ let teardownCalled = false;
+ const source = new Observable(subscriber => {
+ subscriber.addTeardown(() => {
+ teardownCalled = true;
+ });
+ });
+
+ const controller = new AbortController();
+ const promise = source.some(() => true, { signal: controller.signal });
+
+ controller.abort();
+
+ promise_rejects_dom(t, 'AbortError', promise);
+ assert_true(teardownCalled,
+ "The teardown function is called when the signal is aborted");
+}, "some(): The return promise rejects with a DOMException if the signal is aborted");
diff --git a/testing/web-platform/tests/dom/ranges/Range-isPointInRange-shadowdom.tentative.html b/testing/web-platform/tests/dom/ranges/Range-isPointInRange-shadowdom.tentative.html
new file mode 100644
index 0000000000..a90ddcf584
--- /dev/null
+++ b/testing/web-platform/tests/dom/ranges/Range-isPointInRange-shadowdom.tentative.html
@@ -0,0 +1,75 @@
+<!doctype html>
+<title>Range.isPointInRange() with ShadowDOM selection tests</title>
+<link rel="author" title="Sean Feng" href=sefeng@mozilla.com>
+<div id=log></div>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<span id="start">Start</span>
+<div id="host">
+ <template shadowrootmode="open">
+ <span id="inner1">Inner1</span>
+ <span id="inner2">Inner2</span>
+ </template>
+</div>
+<span id="end">End</span>
+<script>
+"use strict";
+
+test(function() {
+ assert_implements(window.getSelection().getComposedRanges, "GetComposedRanges is not supported");
+ const start = document.getElementById("start");
+ const shadowRoot = document.getElementById("host").shadowRoot;
+
+ const end = shadowRoot.getElementById("inner2");
+ const inner1 = shadowRoot.getElementById("inner1");
+
+ window.getSelection().setBaseAndExtent(start.firstChild, 3, end.firstChild, 3);
+
+ const composedRange = window.getSelection().getComposedRanges(shadowRoot)[0];
+ // Sanity check to make sure we have selected something across the shadow boundary.
+ assert_true(composedRange.startContainer == start.firstChild);
+ assert_true(composedRange.startOffset == 3);
+ assert_true(composedRange.endContainer == end.firstChild);
+ assert_true(composedRange.endOffset == 3);
+
+ assert_true(window.getSelection().isCollapsed, "Selection should be collapsed");
+
+ const range = window.getSelection().getRangeAt(0);
+ assert_false(range.isPointInRange(inner1, 0), "inner1 is in the shadow tree, should not be in the range");
+ assert_true(range.comparePoint(inner1, 0) == -1, "inner1 is in the shadow tree, should return -1 for comparison");
+}, "isPointInRange() test for collapsed selection");
+
+test(function() {
+ assert_implements(window.getSelection().getComposedRanges, "GetComposedRanges is not supported");
+ const start = document.getElementById("start");
+ const shadowRoot = document.getElementById("host").shadowRoot;
+
+ const end = document.getElementById("end");
+ const inner1 = shadowRoot.getElementById("inner1");
+
+ window.getSelection().setBaseAndExtent(start.firstChild, 3, end.firstChild, 3);
+
+ const composedRange = window.getSelection().getRangeAt(0);
+ // Sanity check to make sure we have selected something
+ assert_true(composedRange.startContainer == start.firstChild);
+ assert_true(composedRange.startOffset == 3);
+ assert_true(composedRange.endContainer == end.firstChild);
+ assert_true(composedRange.endOffset == 3);
+
+ assert_false(window.getSelection().isCollapsed, "Range should not be collapsed");
+
+ const range = window.getSelection().getRangeAt(0);
+
+ assert_false(range.isPointInRange(inner1, 0), "inner1 is in the shadow tree, should not be in the range");
+
+ // The selection is not collapsed so inner1 is not in the same tree as the selection.
+ assert_throws_dom("WrongDocumentError", function() {
+ range.comparePoint(inner1, 0);
+ });
+
+ const host = document.getElementById("host");
+ assert_true(range.isPointInRange(host, 0), "host is not in the shadow tree, should be in the range");
+ assert_true(range.comparePoint(host, 0) == 0, "host is not in the shadow tree, should return 0 for comparison");
+}, "isPointInRange() test for non-collapsed selection");
+
+</script>
diff --git a/testing/web-platform/tests/dom/xslt/resources/xml2html.xsl b/testing/web-platform/tests/dom/xslt/resources/xml2html.xsl
index 07b967500f..88b74a9620 100644
--- a/testing/web-platform/tests/dom/xslt/resources/xml2html.xsl
+++ b/testing/web-platform/tests/dom/xslt/resources/xml2html.xsl
@@ -5,7 +5,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
- <h2>My CD Collection</h2>
+ <h2 style="margin-top:0">My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
diff --git a/testing/web-platform/tests/dpub-aam/role/roles.html b/testing/web-platform/tests/dpub-aam/role/roles.html
index b9840976e1..62e33b95fa 100644
--- a/testing/web-platform/tests/dpub-aam/role/roles.html
+++ b/testing/web-platform/tests/dpub-aam/role/roles.html
@@ -28,6 +28,7 @@ AriaUtils.assignAndVerifyRolesByRoleNames([
"doc-colophon",
"doc-conclusion",
"doc-cover",
+ "doc-credit",
"doc-credits",
"doc-dedication",
// "doc-endnote", // deprecated
@@ -60,4 +61,5 @@ AriaUtils.assignAndVerifyRolesByRoleNames([
</script>
</body>
-</html> \ No newline at end of file
+</html>
+
diff --git a/testing/web-platform/tests/editing/data/delete.js b/testing/web-platform/tests/editing/data/delete.js
index 131c99b1d5..c4d1225ef3 100644
--- a/testing/web-platform/tests/editing/data/delete.js
+++ b/testing/web-platform/tests/editing/data/delete.js
@@ -2044,12 +2044,12 @@ var browserTests = [
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"delete":[false,false,"",false,false,""]}],
["foo<br><br>{<p>]bar</p>",
[["defaultparagraphseparator","div"],["delete",""]],
- "foo<br>{}bar",
+ "foo<br><p>bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"delete":[false,false,"",false,false,""]}],
["foo<br><br>{<p>]bar</p>",
[["defaultparagraphseparator","p"],["delete",""]],
- "foo<br>{}bar",
+ "foo<br><p>bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"delete":[false,false,"",false,false,""]}],
["<p>foo<br>{</p><p>}bar</p>",
@@ -2359,7 +2359,7 @@ var browserTests = [
{"delete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>[bar<ol><li>]baz</ol>",
[["delete",""]],
- "<ol><li>foo</li></ol>{}baz",
+ "<ol><li>foo</li></ol><ol><li>baz</li></ol>",
[true],
{"delete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>[bar<ol><li>]baz</ol>",
diff --git a/testing/web-platform/tests/editing/data/forwarddelete.js b/testing/web-platform/tests/editing/data/forwarddelete.js
index ea590a4fbb..a881fb6ccf 100644
--- a/testing/web-platform/tests/editing/data/forwarddelete.js
+++ b/testing/web-platform/tests/editing/data/forwarddelete.js
@@ -2009,12 +2009,12 @@ var browserTests = [
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"forwarddelete":[false,false,"",false,false,""]}],
["foo<br><br>{<p>]bar</p>",
[["defaultparagraphseparator","div"],["forwarddelete",""]],
- "foo<br>{}bar",
+ "foo<br><p>bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"forwarddelete":[false,false,"",false,false,""]}],
["foo<br><br>{<p>]bar</p>",
[["defaultparagraphseparator","p"],["forwarddelete",""]],
- "foo<br>{}bar",
+ "foo<br><p>bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"forwarddelete":[false,false,"",false,false,""]}],
["<p>foo<br>{</p><p>}bar</p>",
@@ -2184,7 +2184,7 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>{}<br><ol><li>bar</ol>",
[["forwarddelete",""]],
- "<ol><li>foo</li></ol>{}bar",
+ "<ol><li>foo</li></ol><ol><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>{}<br></p><ol><li>bar</ol>",
@@ -2199,22 +2199,22 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol id=a><li>foo</ol>{}<br><ol><li>bar</ol>",
[["forwarddelete",""]],
- "<ol id=\"a\"><li>foo</li></ol>{}bar",
+ "<ol id=\"a\"><li>foo</li></ol><ol><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>{}<br><ol id=b><li>bar</ol>",
[["forwarddelete",""]],
- "<ol><li>foo</li></ol>{}bar",
+ "<ol><li>foo</li></ol><ol id=\"b\"><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol id=a><li>foo</ol>{}<br><ol id=b><li>bar</ol>",
[["forwarddelete",""]],
- "<ol id=\"a\"><li>foo</li></ol>{}bar",
+ "<ol id=\"a\"><li>foo</li></ol><ol id=\"b\"><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol class=a><li>foo</ol>{}<br><ol class=b><li>bar</ol>",
[["forwarddelete",""]],
- "<ol class=\"a\"><li>foo</li></ol>{}bar",
+ "<ol class=\"a\"><li>foo</li></ol><ol class=\"b\"><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><ol><li>foo</ol><li>{}<br><ol><li>bar</ol></ol>",
@@ -2259,7 +2259,7 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>[bar<ol><li>]baz</ol>",
[["forwarddelete",""]],
- "<ol><li>foo</li></ol>{}baz",
+ "<ol><li>foo</li></ol><ol><li>baz</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>[bar<ol><li>]baz</ol>",
@@ -2269,12 +2269,12 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>[bar<ol><li><p>]baz</ol>",
[["defaultparagraphseparator","div"],["forwarddelete",""]],
- "<ol><li>foo</li></ol><p>{}baz</p>",
+ "<ol><li>foo</li></ol><ol><li><p>{}baz</p></li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>[bar<ol><li><p>]baz</ol>",
[["defaultparagraphseparator","p"],["forwarddelete",""]],
- "<ol><li>foo</li></ol><p>{}baz</p>",
+ "<ol><li>foo</li></ol><ol><li><p>{}baz</p></li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><ol><li>[]bar</ol>",
@@ -2289,7 +2289,7 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ul><li>foo</ul>{}<br><ul><li>bar</ul>",
[["forwarddelete",""]],
- "<ul><li>foo</li></ul>{}bar",
+ "<ul><li>foo</li></ul><ul><li>bar</li></ul>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ul><li>foo</ul><p>{}<br></p><ul><li>bar</ul>",
@@ -2304,7 +2304,7 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>{}<br><ul><li>bar</ul>",
[["forwarddelete",""]],
- "<ol><li>foo</li></ol>{}bar",
+ "<ol><li>foo</li></ol><ul><li>bar</li></ul>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ol><li>foo</ol><p>{}<br></p><ul><li>bar</ul>",
@@ -2314,7 +2314,7 @@ var browserTests = [
{"forwarddelete":[false,false,"",false,false,""]}],
["<ul><li>foo</ul>{}<br><ol><li>bar</ol>",
[["forwarddelete",""]],
- "<ul><li>foo</li></ul>{}bar",
+ "<ul><li>foo</li></ul><ol><li>bar</li></ol>",
[true],
{"forwarddelete":[false,false,"",false,false,""]}],
["<ul><li>foo</ul><p>{}<br></p><ol><li>bar</ol>",
diff --git a/testing/web-platform/tests/editing/edit-context/WEB_FEATURES.yml b/testing/web-platform/tests/editing/edit-context/WEB_FEATURES.yml
new file mode 100644
index 0000000000..284280066a
--- /dev/null
+++ b/testing/web-platform/tests/editing/edit-context/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: edit-context
+ files: "**"
diff --git a/testing/web-platform/tests/editing/include/editor-test-utils.js b/testing/web-platform/tests/editing/include/editor-test-utils.js
index d0d50d22a6..b180f3343f 100644
--- a/testing/web-platform/tests/editing/include/editor-test-utils.js
+++ b/testing/web-platform/tests/editing/include/editor-test-utils.js
@@ -424,4 +424,79 @@ class EditorTestUtils {
);
}
}
+
+ static getRangeArrayDescription(arrayOfRanges) {
+ if (arrayOfRanges === null) {
+ return "null";
+ }
+ if (arrayOfRanges === undefined) {
+ return "undefined";
+ }
+ if (!Array.isArray(arrayOfRanges)) {
+ return "Unknown Object";
+ }
+ if (arrayOfRanges.length === 0) {
+ return "[]";
+ }
+ let result = "";
+ for (let range of arrayOfRanges) {
+ if (result === "") {
+ result = "[";
+ } else {
+ result += ",";
+ }
+ result += `{${EditorTestUtils.getRangeDescription(range)}}`;
+ }
+ result += "]";
+ return result;
+ }
+
+ static getNodeDescription(node) {
+ if (!node) {
+ return "null";
+ }
+ switch (node.nodeType) {
+ case Node.TEXT_NODE:
+ case Node.COMMENT_NODE:
+ case Node.CDATA_SECTION_NODE:
+ return `${node.nodeName} "${node.data.replaceAll("\n", "\\\\n")}"`;
+ case Node.ELEMENT_NODE:
+ return `<${node.nodeName.toLowerCase()}${
+ node.hasAttribute("id") ? ` id="${node.getAttribute("id")}"` : ""
+ }${
+ node.hasAttribute("class") ? ` class="${node.getAttribute("class")}"` : ""
+ }${
+ node.hasAttribute("contenteditable")
+ ? ` contenteditable="${node.getAttribute("contenteditable")}"`
+ : ""
+ }${
+ node.inert ? ` inert` : ""
+ }${
+ node.hidden ? ` hidden` : ""
+ }${
+ node.readonly ? ` readonly` : ""
+ }${
+ node.disabled ? ` disabled` : ""
+ }>`;
+ default:
+ return `${node.nodeName}`;
+ }
+ }
+
+ static getRangeDescription(range) {
+ if (range === null) {
+ return "null";
+ }
+ if (range === undefined) {
+ return "undefined";
+ }
+ return range.startContainer == range.endContainer &&
+ range.startOffset == range.endOffset
+ ? `(${EditorTestUtils.getNodeDescription(range.startContainer)}, ${range.startOffset})`
+ : `(${EditorTestUtils.getNodeDescription(range.startContainer)}, ${
+ range.startOffset
+ }) - (${EditorTestUtils.getNodeDescription(range.endContainer)}, ${range.endOffset})`;
+ }
+
+
}
diff --git a/testing/web-platform/tests/editing/other/delete-without-unwrapping-first-line-of-child-block.html b/testing/web-platform/tests/editing/other/delete-without-unwrapping-first-line-of-child-block.html
new file mode 100644
index 0000000000..99f8f05888
--- /dev/null
+++ b/testing/web-platform/tests/editing/other/delete-without-unwrapping-first-line-of-child-block.html
@@ -0,0 +1,1020 @@
+<!doctype html>
+<html>
+<head>
+<meta charset="utf-8">
+<meta name="timeout" content="long">
+<meta name="variant" content="?method=BackspaceKey&lineBreak=br">
+<meta name="variant" content="?method=DeleteKey&lineBreak=br">
+<meta name="variant" content="?method=deleteCommand&lineBreak=br">
+<meta name="variant" content="?method=forwardDeleteCommand&lineBreak=br">
+<meta name="variant" content="?method=BackspaceKey&lineBreak=preformat">
+<meta name="variant" content="?method=DeleteKey&lineBreak=preformat">
+<meta name="variant" content="?method=deleteCommand&lineBreak=preformat">
+<meta name="variant" content="?method=forwardDeleteCommand&lineBreak=preformat">
+<title>Tests for deleting preceding lines of right child block if range ends at start of the right child</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="../include/editor-test-utils.js"></script>
+<script>
+"use strict";
+
+/**
+ * Browsers delete only preceding lines (and selected content in the child
+ * block) when the deleting range starts from a line and ends in a child block
+ * without unwrapping the (new) first line of the child block at end. Note that
+ * this is a special handling for the above case, i.e., if the range starts from
+ * a middle of a preceding line of the child block, the first line of the child
+ * block should be unwrapped and merged into the preceding line. This is also
+ * applied when the range is directly replaced with new content like typing a
+ * character. Finally, selection should be collapsed at start of the child
+ * block and new content should be inserted at start of the child block.
+ *
+ * This file also tests getTargetRanges() of `beforeinput` of at deletion and
+ * replacing the selection directly. In the former case, if the range ends at
+ * start of the child block, browsers do not touch the child block. Therefore,
+ * the target ranges should the a range deleting the preceding lines, i.e.,
+ * should be end at the child block. When the range is replaced directly, the
+ * content will be inserted at start of the child block, and also when the range
+ * selects some content in the child block, browsers touch the child block.
+ * Therefore, the target range should end at the next insertion point.
+ */
+
+const searchParams = new URLSearchParams(document.location.search);
+const testUserInput = searchParams.get("method") == "BackspaceKey" || searchParams.get("method") == "DeleteKey";
+const testBackward = searchParams.get("method") == "BackspaceKey" || searchParams.get("method") == "deleteCommand";
+const deleteMethod =
+ testUserInput
+ ? testBackward ? "Backspace" : "Delete"
+ : `document.execCommand("${testBackward ? "delete" : "forwarddelete"}")`;
+const insertTextMethod = testUserInput ? "Typing \"X\"" : "document.execCommand(\"insertText\", false, \"X\")";
+const lineBreak = searchParams.get("lineBreak") == "br" ? "<br>" : "\n";
+const lineBreakIsBR = lineBreak == "<br>";
+
+function run(editorUtils) {
+ if (testUserInput) {
+ return testBackward ? editorUtils.sendBackspaceKey() : editorUtils.sendDeleteKey();
+ }
+ editorUtils.document.execCommand(testBackward ? "delete" : "forwardDelete");
+}
+
+function typeCharacter(editorUtils, ch) {
+ if (testUserInput) {
+ return editorUtils.sendKey(ch);
+ }
+ document.execCommand("insertText", false, ch);
+}
+
+async function runDeleteTest(
+ runningTest,
+ testUtils,
+ initialInnerHTML,
+ expectedAfterDeletion,
+ whatShouldHappenAfterDeletion,
+ expectedAfterDeletionAndInsertion,
+ whatShouldHappenAfterDeletionAndInsertion,
+ expectedTargetRangesAtDeletion,
+ whatGetTargetRangesShouldReturn
+) {
+ let targetRanges = [];
+ if (testUserInput) {
+ testUtils.editingHost.addEventListener(
+ "beforeinput",
+ event => targetRanges = event.getTargetRanges(),
+ {once: true}
+ );
+ }
+ await run(testUtils);
+ (Array.isArray(expectedAfterDeletion) ? assert_in_array : assert_equals)(
+ testUtils.editingHost.innerHTML,
+ expectedAfterDeletion,
+ `${runningTest.name} ${whatShouldHappenAfterDeletion}`
+ );
+ if (testUserInput) {
+ test(() => {
+ const arrayOfStringifiedExpectedTargetRanges = (() => {
+ let arrayOfTargetRanges = [];
+ for (const expectedTargetRanges of expectedTargetRangesAtDeletion) {
+ arrayOfTargetRanges.push(
+ EditorTestUtils.getRangeArrayDescription(expectedTargetRanges)
+ );
+ }
+ return arrayOfTargetRanges;
+ })();
+ assert_in_array(
+ EditorTestUtils.getRangeArrayDescription(targetRanges),
+ arrayOfStringifiedExpectedTargetRanges
+ );
+ }, `getTargetRanges() for ${runningTest.name} ${whatGetTargetRangesShouldReturn}`);
+ }
+ await typeCharacter(testUtils, "X");
+ (Array.isArray(expectedAfterDeletionAndInsertion) ? assert_in_array : assert_equals)(
+ testUtils.editingHost.innerHTML,
+ expectedAfterDeletionAndInsertion,
+ `${insertTextMethod} after ${runningTest.name} ${whatShouldHappenAfterDeletionAndInsertion}`
+ );
+}
+
+async function runReplacingTest(
+ runningTest,
+ testUtils,
+ initialInnerHTML,
+ expectedAfterReplacing,
+ whatShouldHappenAfterReplacing,
+ expectedTargetRangesAtReplace,
+ whatGetTargetRangesShouldReturn
+) {
+ let targetRanges = [];
+ if (testUserInput) {
+ testUtils.editingHost.addEventListener(
+ "beforeinput",
+ event => targetRanges = event.getTargetRanges(),
+ {once: true}
+ );
+ }
+ await typeCharacter(testUtils, "X");
+ (Array.isArray(expectedAfterReplacing) ? assert_in_array : assert_equals)(
+ testUtils.editingHost.innerHTML,
+ expectedAfterReplacing,
+ `${runningTest.name} ${whatShouldHappenAfterReplacing}`
+ );
+ if (testUserInput) {
+ test(() => {
+ const arrayOfStringifiedExpectedTargetRanges = (() => {
+ let arrayOfTargetRanges = [];
+ for (const expectedTargetRanges of expectedTargetRangesAtReplace) {
+ arrayOfTargetRanges.push(
+ EditorTestUtils.getRangeArrayDescription(expectedTargetRanges)
+ );
+ }
+ return arrayOfTargetRanges;
+ })();
+ assert_in_array(
+ EditorTestUtils.getRangeArrayDescription(targetRanges),
+ arrayOfStringifiedExpectedTargetRanges
+ );
+ }, `getTargetRanges() for ${runningTest.name} ${whatGetTargetRangesShouldReturn}`);
+ }
+}
+
+addEventListener("load", () => {
+ const editingHost = document.querySelector("div[contenteditable]");
+ const selStart = lineBreakIsBR ? "{" : "[";
+ const selCollapsed = lineBreakIsBR ? "{}" : "[]";
+ editingHost.style.whiteSpace = lineBreakIsBR ? "normal" : "pre";
+ const testUtils = new EditorTestUtils(editingHost);
+ (() => {
+ const initialInnerHTML =
+ `abc${lineBreak}${selStart}${lineBreak}<div id="child">]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">def<br>ghi</div>`,
+ `abc<div id="child">def<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div>",
+ [
+ `abc${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ `abc<div id="child">Xdef<br>ghi</div>`,
+ ],
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 2, endContainer: editingHost, endOffset: 3 }],
+ // abc{<br><br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 3 }],
+ // abc[<br><br>}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 3 }],
+ ]
+ : [
+ // abc\n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost, endOffset: 1 }],
+ // abc[\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 1 }],
+ // abc\n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ // abc[\n\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ `abc<div id="child">Xdef<br>ghi</div>`,
+ ],
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br><div>]def
+ [{ startContainer: editingHost, startOffset: 2, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ // abc{<br><br><div>]def
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ // abc[<br><br><div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ]
+ : [
+ // abc\n[\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ // abc[\n\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ],
+ "should return a range ending in the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}[abc${lineBreak}<div id="child">]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>[abc<br>}<div>
+ [{ startContainer: editingHost.firstChild.nextSibling, startOffset: 0, endContainer: editingHost, endOffset: 3 }],
+ ]
+ : [
+ // \n[abc\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost, endOffset: 1 }],
+ // \n[abc\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost.firstChild, endOffset: "\nabc\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>[abc<br><div>]def
+ [{ startContainer: editingHost.firstChild.nextSibling, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ]
+ : [
+ // \n[abc\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ],
+ "should return a range ending in the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}${selStart}${lineBreak}<div id="child">]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 2 }],
+ ]
+ : [
+ // \n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost, endOffset: 1 }],
+ // \n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost.firstChild, endOffset: "\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br><div>]def
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ]
+ : [
+ // \n[\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ],
+ "should return a range ending in the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${selStart}${lineBreak}${lineBreak}<div id="child">]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br><br>}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 2 }],
+ ]
+ : [
+ // [\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost.firstChild, endOffset: "\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br><br><div>]def
+ [{ startContainer: editingHost, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ]
+ : [
+ // [\n\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ],
+ "should return a range ending in the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `[abc${lineBreak}${lineBreak}<div id="child">]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // [abc<br><br>}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost, endOffset: 3 }],
+ ]
+ : [
+ // {abc\n\n}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [abc\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [abc\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // [abc<br><div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ]
+ : [
+ // [abc\n<div>]def
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 0 }],
+ ],
+ "should return a range ending in the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `abc${lineBreak}${selStart}${lineBreak}<div id="child">d]ef<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">ef<br>ghi</div>`,
+ `abc<div id="child">ef<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div> and selected text in the <div>",
+ [
+ `abc${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ `abc<div id="child">Xef<br>ghi</div>`,
+ ],
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 2, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc{<br><br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc[<br><br><div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // abc\n[\n}<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc[\n\n}<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ `abc<div id="child">Xef<br>ghi</div>`,
+ ],
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 2, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc{<br><br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc[<br><br><div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // abc\n[\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ // abc[\n\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}[abc${lineBreak}<div id="child">d]ef<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">ef<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div> and the selected content in the <div>",
+ `${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>[abc<br><div>d]ef
+ [{ startContainer: editingHost.firstChild.nextSibling, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // \n[abc\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>[abc<br><div>d]ef
+ [{ startContainer: editingHost.firstChild.nextSibling, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // \n[abc\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}${selStart}${lineBreak}<div id="child">d]ef<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">ef<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div> and selected content in the <div>",
+ `${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // \n[\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">Xef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 1, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // \n[\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${selStart}${lineBreak}${lineBreak}<div id="child">d]ef<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">ef<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div> and selected content in the <div>",
+ `<div id="child">Xef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br><br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // [\n\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">Xef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br><br><div>d]ef
+ [{ startContainer: editingHost, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // [\n\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `[abc${lineBreak}${lineBreak}<div id="child">d]ef<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">ef<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div> and selected content in the <div>",
+ `<div id="child">Xef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // [abc<br><br><div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // [abc\n\n}<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const firstTextInChildDiv = editingHost.querySelector("div").firstChild;
+ await runReplacingTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">Xef<br>ghi</div>`,
+ "should not unwrap the first line of the child <div>",
+ lineBreakIsBR
+ ? [
+ // [abc<br><div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ]
+ : [
+ // [abc\n<div>d]ef
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: firstTextInChildDiv, endOffset: 1 }],
+ ],
+ "should return a range ends at start of the child <div>"
+ );
+ }, `${insertTextMethod} at ${initialInnerHTML.replaceAll("\n", "\\n")}`);
+ })();
+
+ (function test_BackspaceForCollapsedSelection() {
+ if (!testBackward) {
+ return;
+ }
+ (() => {
+ const initialInnerHTML =
+ `abc${lineBreak}${lineBreak}<div id="child">[]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">def<br>ghi</div>`,
+ `abc<div id="child">def<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div>",
+ [
+ `abc${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ `abc<div id="child">Xdef<br>ghi</div>`,
+ ],
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 2, endContainer: editingHost, endOffset: 3 }],
+ // abc{<br><br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 3 }],
+ // abc[<br><br>}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 3 }],
+ ]
+ : [
+ // abc\n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost, endOffset: 1 }],
+ // abc[\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 1 }],
+ // abc\n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ // abc[\n\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}${lineBreak}<div id="child">[]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 2 }],
+ ]
+ : [
+ // \n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost, endOffset: 1 }],
+ // \n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost.firstChild, endOffset: "\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}<div id="child">[]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br>}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ ]
+ : [
+ // {\n}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost.firstChild, endOffset: "\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `<b>abc${lineBreak}${lineBreak}</b></b><div id="child">[]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const b = editingHost.querySelector("b");
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `<b>abc${lineBreak}</b><div id="child">def<br>ghi</div>`,
+ `<b>abc</b><div id="child">def<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div> (<b> should stay)",
+ [
+ `<b>abc${lineBreak}</b><div id="child">Xdef<br>ghi</div>`,
+ `<b>abc</b><div id="child">Xdef<br>ghi</div>`,
+ `<b>abc${lineBreak}</b><div id="child"><b>X</b>def<br>ghi</div>`,
+ `<b>abc</b><div id="child"><b>X</b>def<br>ghi</div>`,
+ ],
+ "should insert text into the child <div> with or without <b>",
+ lineBreakIsBR
+ ? [
+ // <b>abc<br>{<br>}</b><div>
+ [{ startContainer: b, startOffset: 2, endContainer: b, endOffset: 3 }],
+ // <b>abc{<br><br>}</b><div>
+ [{ startContainer: b, startOffset: 1, endContainer: b, endOffset: 3 }],
+ // <b>abc[<br><br>}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b, endOffset: 3 }],
+ ]
+ : [
+ // <b>abc\n[\n}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc\n".length, endContainer: b, endOffset: 1 }],
+ // <b>abc[\n\n}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b, endOffset: 1 }],
+ // <b>abc\n[\n]</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc\n".length, endContainer: b.firstChild, endOffset: "abc\n\n".length }],
+ // <b>abc[\n\n]</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `<b>${lineBreak}</b><div id="child">[]def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line (including the <b>) of the child <div>",
+ [
+ `<div id="child">Xdef<br>ghi</div>`,
+ `<div id="child"><b>X</b>def<br>ghi</div>`,
+ ],
+ "should insert text into the child <div> with or without <b>",
+ [
+ // {<b><br></b>}<div> or {<b>\n</b>}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+ })();
+
+ (function test_ForwardDeleteForCollapsedSelection() {
+ if (testBackward) {
+ return;
+ }
+ (() => {
+ const initialInnerHTML =
+ `abc${lineBreak}${selCollapsed}${lineBreak}<div id="child">def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `abc${lineBreak}<div id="child">def<br>ghi</div>`,
+ `abc<div id="child">def<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div>",
+ [
+ `abc${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ `abc<div id="child">Xdef<br>ghi</div>`,
+ ],
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // abc<br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 2, endContainer: editingHost, endOffset: 3 }],
+ // abc{<br><br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 3 }],
+ // abc[<br><br>}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 3 }],
+ ]
+ : [
+ // abc\n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost, endOffset: 1 }],
+ // abc[\n\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost, endOffset: 1 }],
+ // abc\n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc\n".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ // abc[\n\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "abc".length, endContainer: editingHost.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${lineBreak}${selCollapsed}${lineBreak}<div id="child">def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `${lineBreak}<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `${lineBreak}<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // <br>{<br>}<div>
+ [{ startContainer: editingHost, startOffset: 1, endContainer: editingHost, endOffset: 2 }],
+ ]
+ : [
+ // \n[\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost, endOffset: 1 }],
+ // \n[\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: "\n".length, endContainer: editingHost.firstChild, endOffset: "\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `${selCollapsed}${lineBreak}<div id="child">def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line of the child <div>",
+ `<div id="child">Xdef<br>ghi</div>`,
+ "should insert text into the child <div>",
+ lineBreakIsBR
+ ? [
+ // {<br>}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ ]
+ : [
+ // {\n}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [\n}<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ // [\n]<div>
+ [{ startContainer: editingHost.firstChild, startOffset: 0, endContainer: editingHost.firstChild, endOffset: "\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `<b>abc${lineBreak}${selCollapsed}${lineBreak}</b></b><div id="child">def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ const b = editingHost.querySelector("b");
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ [
+ `<b>abc${lineBreak}</b><div id="child">def<br>ghi</div>`,
+ `<b>abc</b><div id="child">def<br>ghi</div>`,
+ ],
+ "should delete only the preceding empty line of the child <div> (<b> should stay)",
+ [
+ `<b>abc${lineBreak}</b><div id="child">Xdef<br>ghi</div>`,
+ `<b>abc</b><div id="child">Xdef<br>ghi</div>`,
+ `<b>abc${lineBreak}</b><div id="child"><b>X</b>def<br>ghi</div>`,
+ `<b>abc</b><div id="child"><b>X</b>def<br>ghi</div>`,
+ ],
+ "should insert text into the child <div> with or without <b>",
+ lineBreakIsBR
+ ? [
+ // <b>abc<br>{<br>}</b><div>
+ [{ startContainer: b, startOffset: 2, endContainer: b, endOffset: 3 }],
+ // <b>abc{<br><br>}</b><div>
+ [{ startContainer: b, startOffset: 1, endContainer: b, endOffset: 3 }],
+ // <b>abc[<br><br>}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b, endOffset: 3 }],
+ ]
+ : [
+ // <b>abc\n[\n}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc\n".length, endContainer: b, endOffset: 1 }],
+ // <b>abc[\n\n}</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b, endOffset: 1 }],
+ // <b>abc\n[\n]</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc\n".length, endContainer: b.firstChild, endOffset: "abc\n\n".length }],
+ // <b>abc[\n\n]</b><div>
+ [{ startContainer: b.firstChild, startOffset: "abc".length, endContainer: b.firstChild, endOffset: "abc\n\n".length }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+
+ (() => {
+ const initialInnerHTML =
+ `<b>${selCollapsed}${lineBreak}</b><div id="child">def<br>ghi</div>`;
+ promise_test(async t => {
+ testUtils.setupEditingHost(initialInnerHTML);
+ await runDeleteTest(
+ t, testUtils, initialInnerHTML,
+ `<div id="child">def<br>ghi</div>`,
+ "should delete only the preceding empty line (including the <b>) of the child <div>",
+ [
+ `<div id="child">Xdef<br>ghi</div>`,
+ `<div id="child"><b>X</b>def<br>ghi</div>`,
+ ],
+ "should insert text into the child <div> with or without <b>",
+ [
+ // {<b><br></b>}<div> or {<b>\n</b>}<div>
+ [{ startContainer: editingHost, startOffset: 0, endContainer: editingHost, endOffset: 1 }],
+ ],
+ "should return a range before the child <div>"
+ );
+ }, `${deleteMethod} at ${initialInnerHTML.replaceAll("\n", "\\\\n")}`);
+ })();
+ })();
+}, {once: true});
+</script>
+</head>
+<body><div contenteditable></div></body>
+</html>
diff --git a/testing/web-platform/tests/encoding/encodeInto.any.js b/testing/web-platform/tests/encoding/encodeInto.any.js
index 69d7089006..9ea36d23d0 100644
--- a/testing/web-platform/tests/encoding/encodeInto.any.js
+++ b/testing/web-platform/tests/encoding/encodeInto.any.js
@@ -129,6 +129,7 @@
"Uint8ClampedArray",
"BigInt64Array",
"BigUint64Array",
+ "Float16Array",
"Float32Array",
"Float64Array"].forEach(type => {
["ArrayBuffer", "SharedArrayBuffer"].forEach((arrayBufferOrSharedArrayBuffer) => {
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html
new file mode 100644
index 0000000000..9c1d47d050
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-content-initiated.https.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true,
+ origin: get_host_info().HTTPS_ORIGIN
+ });
+ // Perform a cross-origin navigation. Since the navigation is
+ // content-initiated, the fenced frame reporting metadata will persist.
+ await navigateFrameContext(fencedframe, {
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await fencedframe.execute(() => {
+ // This page will call reportEvent() twice. Once for a destination enum
+ // event (i.e. an event with an eventType/eventData specified), and once for
+ // a destination URL event (i.e. an event with a destinationURL specified).
+ const destination_enum_event = {
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_enum_event);
+
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ const destination_url_event = {
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_url_event);
+ });
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a content-initiated cross-origin navigation');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html
new file mode 100644
index 0000000000..7d0544a5ad
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested-urn-iframe.https.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from nested cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ // This test creates the following frame setup:
+ // ┌(test)─────────────────┐
+ // │┌(a.com)───[iframe]───┐│
+ // ││┌(b.com)──[iframe]──┐││
+ // │││┌(b.com)─[iframe]─┐│││
+ // ││││reportEvent(); ││││
+ // │││└─────────────────┘│││
+ // ││└───────────────────┘││
+ // │└─────────────────────┘│
+ // └───────────────────────┘
+ const fencedframe = await attachIFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await fencedframe.execute(async () => {
+ const iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(async () => {
+ const nested_iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await nested_iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ });
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a nested cross-origin subframe of a URN ' +
+ 'iframe');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested.https.html
new file mode 100644
index 0000000000..4d1262f4b1
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-nested.https.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from nested cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ // This test creates the following frame setup:
+ // ┌(test)──────────────────────┐
+ // │┌(a.com)───[fencedframe]───┐│
+ // ││┌(b.com)──[iframe]───────┐││
+ // │││┌(b.com)─[iframe]──────┐│││
+ // ││││reportEvent(); ││││
+ // │││└──────────────────────┘│││
+ // ││└────────────────────────┘││
+ // │└──────────────────────────┘│
+ // └────────────────────────────┘
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await fencedframe.execute(async () => {
+ const iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(async () => {
+ const nested_iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await nested_iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ });
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a nested cross-origin subframe');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html
new file mode 100644
index 0000000000..d8fa5133cd
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-embedder-opt-in.https.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'false'
+ ]],
+ register_beacon: true
+ });
+ // Perform a cross-origin navigation. Since the navigation is
+ // content-initiated, the fenced frame reporting metadata will persist.
+ await navigateFrameContext(fencedframe, {
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await fencedframe.execute(() => {
+ // This page will call reportEvent() twice. Once for a destination enum
+ // event (i.e. an event with an eventType/eventData specified), and once for
+ // a destination URL event (i.e. an event with a destinationURL specified).
+ const destination_enum_event = {
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_enum_event);
+
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ const destination_url_event = {
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_url_event);
+ });
+ await verifyBeaconData("click", "enum", false, t);
+ await verifyBeaconData("url", "<No data>", false, t);
+}, 'Cross-origin window.fence.reportEvent without embedder opt-in');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html
new file mode 100644
index 0000000000..2b054c1837
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-no-subframe-opt-in.https.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await fencedframe.execute(async () => {
+ const iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: false
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: false
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await verifyBeaconData("click", "enum", false, t);
+ await verifyBeaconData("url", "<No data>", false, t);
+}, 'Cross-origin window.fence.reportEvent without subframe opt-in');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html
new file mode 100644
index 0000000000..21c9ea1a43
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-content-initiated.https.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const iframe = await attachIFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true,
+ origin: get_host_info().HTTPS_ORIGIN
+ });
+ // Perform a cross-origin navigation. Since the navigation is
+ // content-initiated, the fenced frame reporting metadata will persist.
+ await navigateFrameContext(iframe, {
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(() => {
+ // This page will call reportEvent() twice. Once for a destination enum
+ // event (i.e. an event with an eventType/eventData specified), and once for
+ // a destination URL event (i.e. an event with a destinationURL specified).
+ const destination_enum_event = {
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_enum_event);
+
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ const destination_url_event = {
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_url_event);
+ });
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a content-initiated cross-origin navigation');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html
new file mode 100644
index 0000000000..5d368fe7f1
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-embedder-opt-in.https.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const iframe = await attachIFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'false'
+ ]],
+ register_beacon: true
+ });
+ // Perform a cross-origin navigation. Since the navigation is
+ // content-initiated, the fenced frame reporting metadata will persist.
+ await navigateFrameContext(iframe, {
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(() => {
+ // This page will call reportEvent() twice. Once for a destination enum
+ // event (i.e. an event with an eventType/eventData specified), and once for
+ // a destination URL event (i.e. an event with a destinationURL specified).
+ const destination_enum_event = {
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_enum_event);
+
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ const destination_url_event = {
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ }
+ window.fence.reportEvent(destination_url_event);
+ });
+ await verifyBeaconData("click", "enum", false, t);
+ await verifyBeaconData("url", "<No data>", false, t);
+}, 'Cross-origin window.fence.reportEvent without embedder opt-in');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html
new file mode 100644
index 0000000000..df22749a9e
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe-no-subframe-opt-in.https.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const outer_iframe = await attachIFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await outer_iframe.execute(async () => {
+ const inner_iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await inner_iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: false
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: false
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await verifyBeaconData("click", "enum", false, t);
+ await verifyBeaconData("url", "<No data>", false, t);
+}, 'Cross-origin window.fence.reportEvent without subframe opt-in');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html
new file mode 100644
index 0000000000..b37fec812d
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin-urn-iframe.https.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const outer_iframe = await attachIFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await outer_iframe.execute(async () => {
+ const inner_iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await inner_iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a cross-origin iframe');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin.https.html
new file mode 100644
index 0000000000..df7ae776ab
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-cross-origin.https.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from cross-origin subframes.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await fencedframe.execute(async () => {
+ const iframe = await attachIFrameContext({
+ origin: get_host_info().HTTPS_REMOTE_ORIGIN,
+ });
+ await iframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await nextBeacon("click", "enum");
+ await nextBeacon("url", "<No data>");
+}, 'window.fence.reportEvent from a cross-origin subframe');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/fence-report-event-sub-fencedframe.https.html b/testing/web-platform/tests/fenced-frame/fence-report-event-sub-fencedframe.https.html
new file mode 100644
index 0000000000..0b3231ca92
--- /dev/null
+++ b/testing/web-platform/tests/fenced-frame/fence-report-event-sub-fencedframe.https.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<title>Test window.fence.reportEvent from nested fenced frames.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/common/dispatcher/dispatcher.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/automatic-beacon-helper.js"></script>
+<script src="resources/utils.js"></script>
+
+<body>
+<script>
+promise_test(async(t) => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'fledge',
+ headers: [[
+ 'Allow-Cross-Origin-Event-Reporting', 'true'
+ ]],
+ register_beacon: true
+ });
+ await fencedframe.execute(async () => {
+ const fencedframe = await attachFencedFrameContext({
+ generator_api: 'sharedstorage'
+ });
+ await fencedframe.execute(() => {
+ const destination_url = new URL(BEACON_URL + "?type=url",
+ get_host_info().HTTPS_ORIGIN);
+ window.fence.reportEvent({
+ eventType: "click",
+ eventData: "enum",
+ destination: ["buyer"],
+ crossOriginExposed: true
+ });
+ window.fence.reportEvent({
+ destinationURL: destination_url,
+ crossOriginExposed: true
+ });
+ });
+ });
+ // Check that both the destination enum and destination URL events were
+ // reported.
+ await verifyBeaconData("click", "enum", false, t);
+ await verifyBeaconData("url", "<No data>", false, t);
+}, 'window.fence.reportEvent should not work in a nested fenced frame');
+</script>
+</body>
diff --git a/testing/web-platform/tests/fenced-frame/resources/utils.js b/testing/web-platform/tests/fenced-frame/resources/utils.js
index 462bda37fc..4914802518 100644
--- a/testing/web-platform/tests/fenced-frame/resources/utils.js
+++ b/testing/web-platform/tests/fenced-frame/resources/utils.js
@@ -162,8 +162,8 @@ async function generateURNFromFledgeRawURL(
// @param {boolean} [ad_with_size = false] - Determines whether the auction is
// run with ad sizes specified.
// @param {boolean} [register_beacon = false] - If true, FLEDGE logic will
-// register reporting beacons
-// after completion.
+// register reporting beacons after
+// completion.
async function generateURNFromFledge(
href, keylist, nested_urls = [], resolve_to_config = false,
ad_with_size = false, requested_size = null, register_beacon = false) {
@@ -347,6 +347,19 @@ function attachFrameContext(
num_components);
}
+// Performs a content-initiated navigation of a frame proxy. This navigated page
+// uses a new urn:uuid as its communication channel to prevent potential clashes
+// with the currently loaded document.
+async function navigateFrameContext(frame_proxy, {headers = [], origin = ''}) {
+ const [uuid, url] = generateRemoteContextURL(headers, origin);
+ frame_proxy.execute((url) => {
+ window.executor.suspend(() => {
+ window.location = url;
+ });
+ }, [url])
+ frame_proxy.context_id = uuid;
+}
+
function replaceFrameContext(frame_proxy, {
generator_api = '',
resolve_to_config = false,
diff --git a/testing/web-platform/tests/fenced-frame/setting-null-config-navigates-to-about-blank.https.html b/testing/web-platform/tests/fenced-frame/setting-null-config-navigates-to-about-blank.https.html
index 2595fd64c9..c8322dab19 100644
--- a/testing/web-platform/tests/fenced-frame/setting-null-config-navigates-to-about-blank.https.html
+++ b/testing/web-platform/tests/fenced-frame/setting-null-config-navigates-to-about-blank.https.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name=timeout content=long>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/utils.js"></script>
@@ -11,13 +12,13 @@
<script>
promise_test(async (t) => {
- var frame_context = attachFencedFrameContext();
+ var frame_context = await attachFencedFrameContext();
// Ensure remote context responds.
let alive_indicator = await Promise.race([
frame_context.execute(() => 'alive'),
new Promise((resolve, reject) => t.step_timeout(
- () => reject('timed_out'), 3000))
+ () => reject('timed_out'), 1500))
]);
assert_equals(alive_indicator, 'alive');
@@ -28,14 +29,20 @@
// removed.
frame_context.element.config = null;
+ let fenced_frame_alive_promise = async (resolve) => {
+ await frame_context.execute(() => {});
+ resolve('alive');
+ };
+
// This call should not succeed, because we should have navigated to
// about:blank. Note that because the code has been deleted as described
// above, we can't actually inspect the URL to determine it is
// about:blank; we have to use our timeout as a proxy.
let timeout_indicator = await Promise.any([
- frame_context.execute(() => 'alive'),
new Promise(resolve => t.step_timeout(
- () => resolve('timed_out'), 3000))
+ () => fenced_frame_alive_promise(resolve), 500)),
+ new Promise(resolve => t.step_timeout(
+ () => resolve('timed_out'), 1500))
]);
assert_equals(timeout_indicator, 'timed_out');
}, "Test that a fenced frame with a config explicitly set to null navigates to about:blank");
diff --git a/testing/web-platform/tests/fetch/api/basic/request-headers.any.js b/testing/web-platform/tests/fetch/api/basic/request-headers.any.js
index ac54256e4c..8d2ad31e70 100644
--- a/testing/web-platform/tests/fetch/api/basic/request-headers.any.js
+++ b/testing/web-platform/tests/fetch/api/basic/request-headers.any.js
@@ -54,6 +54,7 @@ requestHeaders("Fetch with POST with Blob body", url, "POST", new Blob(["Test"])
requestHeaders("Fetch with POST with ArrayBuffer body", url, "POST", new ArrayBuffer(4), location.origin, "4");
requestHeaders("Fetch with POST with Uint8Array body", url, "POST", new Uint8Array(4), location.origin, "4");
requestHeaders("Fetch with POST with Int8Array body", url, "POST", new Int8Array(4), location.origin, "4");
+requestHeaders("Fetch with POST with Float16Array body", url, "POST", new Float16Array(1), location.origin, "2");
requestHeaders("Fetch with POST with Float32Array body", url, "POST", new Float32Array(1), location.origin, "4");
requestHeaders("Fetch with POST with Float64Array body", url, "POST", new Float64Array(1), location.origin, "8");
requestHeaders("Fetch with POST with DataView body", url, "POST", new DataView(new ArrayBuffer(8), 0, 4), location.origin, "4");
diff --git a/testing/web-platform/tests/fetch/api/basic/request-upload.any.js b/testing/web-platform/tests/fetch/api/basic/request-upload.any.js
index 9168aa1154..0c4813bb53 100644
--- a/testing/web-platform/tests/fetch/api/basic/request-upload.any.js
+++ b/testing/web-platform/tests/fetch/api/basic/request-upload.any.js
@@ -60,6 +60,10 @@ testUpload("Fetch with POST with Int8Array body", url,
"POST",
() => new Int8Array(4),
"\0\0\0\0");
+testUpload("Fetch with POST with Float16Array body", url,
+ "POST",
+ () => new Float16Array(2),
+ "\0\0\0\0");
testUpload("Fetch with POST with Float32Array body", url,
"POST",
() => new Float32Array(1),
diff --git a/testing/web-platform/tests/fetch/api/crashtests/huge-fetch.any.js b/testing/web-platform/tests/fetch/api/crashtests/huge-fetch.any.js
new file mode 100644
index 0000000000..1b09925d85
--- /dev/null
+++ b/testing/web-platform/tests/fetch/api/crashtests/huge-fetch.any.js
@@ -0,0 +1,16 @@
+// META: global=window,worker
+
+'use strict';
+
+promise_test(async t => {
+ const response = await fetch('../resources/huge-response.py');
+ const reader = response.body.getReader();
+ // Read one chunk just to show willing.
+ const { value, done } = await reader.read();
+ assert_false(done, 'there should be some data');
+ assert_greater_than(value.byteLength, 0, 'the chunk should be non-empty');
+ // Wait 2 seconds to give it a chance to crash.
+ await new Promise(resolve => t.step_timeout(resolve, 2000));
+ // If we get here without crashing we passed the test.
+ reader.cancel();
+}, 'fetching a huge cacheable file but not reading it should not crash');
diff --git a/testing/web-platform/tests/fetch/api/request/request-bad-port.any.js b/testing/web-platform/tests/fetch/api/request/request-bad-port.any.js
index 5c29823eaa..915063bab5 100644
--- a/testing/web-platform/tests/fetch/api/request/request-bad-port.any.js
+++ b/testing/web-platform/tests/fetch/api/request/request-bad-port.any.js
@@ -89,6 +89,6 @@ var BLOCKED_PORTS_LIST = [
BLOCKED_PORTS_LIST.map(function(a){
promise_test(function(t){
- return promise_rejects_js(t, TypeError, fetch("http://example.com:" + a))
+ return promise_rejects_js(t, TypeError, fetch(`${location.origin}:${a}`))
}, 'Request on bad port ' + a + ' should throw TypeError.');
});
diff --git a/testing/web-platform/tests/fetch/api/resources/huge-response.py b/testing/web-platform/tests/fetch/api/resources/huge-response.py
new file mode 100644
index 0000000000..16a60078e5
--- /dev/null
+++ b/testing/web-platform/tests/fetch/api/resources/huge-response.py
@@ -0,0 +1,22 @@
+# A Python script that generates a huge response. Implemented as a script to
+# avoid needing to add a huge file to the repository.
+
+TOTAL_SIZE = 8 * 1024 * 1024 * 1024 # 8 GB
+CHUNK_SIZE = 1024 * 1024 # 1 MB
+
+assert TOTAL_SIZE % CHUNK_SIZE == 0
+
+
+def main(request, response):
+ response.headers.set(b"Content-type", b"text/plain")
+ response.headers.set(b"Content-Length", str(TOTAL_SIZE).encode())
+ response.headers.set(b"Cache-Control", b"max-age=86400")
+ response.write_status_headers()
+
+ chunk = bytes(CHUNK_SIZE)
+ total_sent = 0
+
+ while total_sent < TOTAL_SIZE:
+ if not response.writer.write(chunk):
+ break
+ total_sent += CHUNK_SIZE
diff --git a/testing/web-platform/tests/fetch/api/response/response-clone.any.js b/testing/web-platform/tests/fetch/api/response/response-clone.any.js
index f5cda75149..c0c844948d 100644
--- a/testing/web-platform/tests/fetch/api/response/response-clone.any.js
+++ b/testing/web-platform/tests/fetch/api/response/response-clone.any.js
@@ -135,6 +135,7 @@ testReadableStreamClone(new Uint16Array(arrayBuffer, 2), "Uint16Array");
testReadableStreamClone(new Uint32Array(arrayBuffer), "Uint32Array");
testReadableStreamClone(typeof BigInt64Array === "function" ? new BigInt64Array(arrayBuffer) : undefined, "BigInt64Array");
testReadableStreamClone(typeof BigUint64Array === "function" ? new BigUint64Array(arrayBuffer) : undefined, "BigUint64Array");
+testReadableStreamClone(typeof Float16Array === "function" ? new Float16Array(arrayBuffer) : undefined, "Float16Array");
testReadableStreamClone(new Float32Array(arrayBuffer), "Float32Array");
testReadableStreamClone(new Float64Array(arrayBuffer), "Float64Array");
testReadableStreamClone(new DataView(arrayBuffer, 2, 8), "DataView");
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html
new file mode 100644
index 0000000000..c8bcf7fdf1
--- /dev/null
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cache.tentative.https.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<head>
+<meta charset="utf-8">
+<meta name="timeout" content="long"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="./resources/compression-dictionary-util.js"></script>
+</head>
+<body>
+<script>
+
+compression_dictionary_promise_test(async (t) => {
+ const dict = await (await fetch(kRegisterDictionaryPath)).text();
+ // Wait until `available-dictionary` header is available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {}),
+ kDefaultDictionaryHashBase64);
+ // Clear site data.
+ assert_equals(await clearSiteData(/*directive=*/'cache'), 'OK');
+ // Check if `available-dictionary` header is not available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
+ '"available-dictionary" header is not available');
+}, 'Clear-Site-Data with "cache" directive must unregister dictionary');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html
new file mode 100644
index 0000000000..aa1673e88c
--- /dev/null
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-cookies.tentative.https.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<head>
+<meta charset="utf-8">
+<meta name="timeout" content="long"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="./resources/compression-dictionary-util.js"></script>
+</head>
+<body>
+<script>
+
+compression_dictionary_promise_test(async (t) => {
+ const dict = await (await fetch(kRegisterDictionaryPath)).text();
+ // Wait until `available-dictionary` header is available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {}),
+ kDefaultDictionaryHashBase64);
+ // Clear site data.
+ assert_equals(await clearSiteData(/*directive=*/'cookies'), 'OK');
+ // Check if `available-dictionary` header is not available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
+ '"available-dictionary" header is not available');
+}, 'Clear-Site-Data with "cookies" directive must unregister dictionary');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html
new file mode 100644
index 0000000000..22747eb656
--- /dev/null
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data-storage.tentative.https.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<head>
+<meta charset="utf-8">
+<meta name="timeout" content="long"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="./resources/compression-dictionary-util.js"></script>
+</head>
+<body>
+<script>
+
+compression_dictionary_promise_test(async (t) => {
+ const dict = await (await fetch(kRegisterDictionaryPath)).text();
+ // Wait until `available-dictionary` header is available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {}),
+ kDefaultDictionaryHashBase64);
+ // Clear site data.
+ assert_equals(await clearSiteData(/*directive=*/'storage'), 'OK');
+ // Check if `available-dictionary` header is not available.
+ assert_equals(
+ await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
+ kDefaultDictionaryHashBase64);
+}, 'Clear-Site-Data with "storage" directive must not unregister dictionary');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html
deleted file mode 100644
index b583834831..0000000000
--- a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-clear-site-data.tentative.https.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<head>
-<meta charset="utf-8">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="./resources/compression-dictionary-util.js"></script>
-</head>
-<body>
-<script>
-
-compression_dictionary_promise_test(async (t) => {
- const dict = await (await fetch(kRegisterDictionaryPath)).text();
- // Wait until `available-dictionary` header is available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {}),
- kDefaultDictionaryHashBase64);
- // Clear site data.
- assert_equals(await clearSiteData(/*directive=*/'cache'), 'OK');
- // Check if `available-dictionary` header is not available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
- '"available-dictionary" header is not available');
-}, 'Clear-Site-Data with "cache" directive must unregister dictionary');
-
-compression_dictionary_promise_test(async (t) => {
- const dict = await (await fetch(kRegisterDictionaryPath)).text();
- // Wait until `available-dictionary` header is available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {}),
- kDefaultDictionaryHashBase64);
- // Clear site data.
- assert_equals(await clearSiteData(/*directive=*/'cookies'), 'OK');
- // Check if `available-dictionary` header is not available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
- '"available-dictionary" header is not available');
-}, 'Clear-Site-Data with "cookies" directive must unregister dictionary');
-
-compression_dictionary_promise_test(async (t) => {
- const dict = await (await fetch(kRegisterDictionaryPath)).text();
- // Wait until `available-dictionary` header is available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {}),
- kDefaultDictionaryHashBase64);
- // Clear site data.
- assert_equals(await clearSiteData(/*directive=*/'storage'), 'OK');
- // Check if `available-dictionary` header is not available.
- assert_equals(
- await waitUntilAvailableDictionaryHeader(t, {max_retry: 0}),
- kDefaultDictionaryHashBase64);
-}, 'Clear-Site-Data with "storage" directive must not unregister dictionary');
-
-</script>
-</body>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-decompression.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-decompression.tentative.https.html
index cd20625816..c7b3b7c3a5 100644
--- a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-decompression.tentative.https.html
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-decompression.tentative.https.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<head>
<meta charset="utf-8">
+<meta name="timeout" content="long"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/get-host-info.sub.js"></script>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-element.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-element.tentative.https.html
index 71a9b1c050..23a271d481 100644
--- a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-element.tentative.https.html
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-element.tentative.https.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<head>
<meta charset="utf-8">
+<meta name="timeout" content="long"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/get-host-info.sub.js"></script>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-header.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-header.tentative.https.html
index a3ffd8ba74..6f6a792ade 100644
--- a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-header.tentative.https.html
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-fetch-with-link-header.tentative.https.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<head>
<meta charset="utf-8">
+<meta name="timeout" content="long"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/get-host-info.sub.js"></script>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-registration.tentative.https.html b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-registration.tentative.https.html
index 7921b12946..f0782aff3b 100644
--- a/testing/web-platform/tests/fetch/compression-dictionary/dictionary-registration.tentative.https.html
+++ b/testing/web-platform/tests/fetch/compression-dictionary/dictionary-registration.tentative.https.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<head>
<meta charset="utf-8">
+<meta name="timeout" content="long"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="./resources/compression-dictionary-util.js"></script>
diff --git a/testing/web-platform/tests/fetch/compression-dictionary/resources/compression-dictionary-util.js b/testing/web-platform/tests/fetch/compression-dictionary/resources/compression-dictionary-util.js
index 46d95041d8..7d86f594a8 100644
--- a/testing/web-platform/tests/fetch/compression-dictionary/resources/compression-dictionary-util.js
+++ b/testing/web-platform/tests/fetch/compression-dictionary/resources/compression-dictionary-util.js
@@ -6,8 +6,8 @@ const kRegisterDictionaryPath = './resources/register-dictionary.py';
const kCompressedDataPath = './resources/compressed-data.py';
const kExpectedCompressedData =
`This is compressed test data using a test dictionary`;
-const kCheckAvailableDictionaryHeaderMaxRetry = 5;
-const kCheckAvailableDictionaryHeaderRetryTimeout = 100;
+const kCheckAvailableDictionaryHeaderMaxRetry = 10;
+const kCheckAvailableDictionaryHeaderRetryTimeout = 200;
const kCheckPreviousRequestHeadersMaxRetry = 5;
const kCheckPreviousRequestHeadersRetryTimeout = 250;
diff --git a/testing/web-platform/tests/fetch/metadata/WEB_FEATURES.yml b/testing/web-platform/tests/fetch/metadata/WEB_FEATURES.yml
new file mode 100644
index 0000000000..fb48eaa311
--- /dev/null
+++ b/testing/web-platform/tests/fetch/metadata/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: fetch-metadata
+ files: "**"
diff --git a/testing/web-platform/tests/fetch/metadata/generated/appcache-manifest.https.sub.html b/testing/web-platform/tests/fetch/metadata/generated/appcache-manifest.https.sub.html
deleted file mode 100644
index cf322fd34b..0000000000
--- a/testing/web-platform/tests/fetch/metadata/generated/appcache-manifest.https.sub.html
+++ /dev/null
@@ -1,341 +0,0 @@
-<!DOCTYPE html>
-<!--
-This test was procedurally generated. Please do not modify it directly.
-Sources:
-- fetch/metadata/tools/fetch-metadata.conf.yml
-- fetch/metadata/tools/templates/appcache-manifest.sub.https.html
--->
-<html lang="en">
- <meta charset="utf-8">
- <title>HTTP headers on request for Appcache manifest</title>
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/fetch/metadata/resources/helper.sub.js"></script>
- <body>
- <script>
- 'use strict';
-
- function induceRequest(url) {
- const iframe = document.createElement('iframe');
- iframe.src =
- '/fetch/metadata/resources/appcache-iframe.sub.html?manifest=' + encodeURIComponent(url);
-
- return new Promise((resolve) => {
- addEventListener('message', function onMessage(event) {
- if (event.source !== iframe.contentWindow) {
- return;
- }
- removeEventListener('message', onMessage);
- resolve(event.data);
- });
-
- document.body.appendChild(iframe);
- })
- .then((message) => {
- if (message !== 'okay') {
- throw message;
- }
- })
- .then(() => iframe.remove());
- }
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-origin']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same origin');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsCrossSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Cross-site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsSameSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-site');
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - HTTPS downgrade (header not sent)');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpOrigin', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - HTTPS upgrade');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpOrigin', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - HTTPS downgrade-upgrade');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpsCrossSite', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Origin -> Cross-Site -> Same-Origin redirect');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpsSameSite', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Origin -> Same-Site -> Same-Origin redirect');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsCrossSite', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Cross-Site -> Same Origin');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsCrossSite', 'httpsSameSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Cross-Site -> Same-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsCrossSite', 'httpsCrossSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Cross-Site -> Cross-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-origin']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Origin -> Same Origin');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpsSameSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Origin -> Same-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsOrigin', 'httpsCrossSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Origin -> Cross-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsSameSite', 'httpsOrigin']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Site -> Same Origin');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsSameSite', 'httpsSameSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['same-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Site -> Same-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, ['httpsSameSite', 'httpsCrossSite']))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-site');
- assert_array_equals(headers['sec-fetch-site'], ['cross-site']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-site - Same-Site -> Cross-Site');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, []))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-mode');
- assert_array_equals(headers['sec-fetch-mode'], ['no-cors']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-mode');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, []))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_own_property(headers, 'sec-fetch-dest');
- assert_array_equals(headers['sec-fetch-dest'], ['empty']);
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-dest');
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, []))
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-user');
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, 'sec-fetch-user');
- </script>
- </body>
-</html>
diff --git a/testing/web-platform/tests/fetch/metadata/generated/worker-dedicated-constructor.sub.html b/testing/web-platform/tests/fetch/metadata/generated/worker-dedicated-constructor.sub.html
index 69ac7682a5..65b1837c63 100644
--- a/testing/web-platform/tests/fetch/metadata/generated/worker-dedicated-constructor.sub.html
+++ b/testing/web-platform/tests/fetch/metadata/generated/worker-dedicated-constructor.sub.html
@@ -40,36 +40,6 @@ Sources:
const key = '{{uuid()}}';
const url = makeRequestURL(
key,
- ['httpSameSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-site');
- });
- }, 'sec-fetch-site - Not sent to non-trustworthy same-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
- ['httpCrossSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-site');
- });
- }, 'sec-fetch-site - Not sent to non-trustworthy cross-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
['httpOrigin'],
{ mime: 'application/javascript', body: 'postMessage("")' }
);
@@ -85,36 +55,6 @@ Sources:
const key = '{{uuid()}}';
const url = makeRequestURL(
key,
- ['httpSameSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-mode');
- });
- }, 'sec-fetch-mode - Not sent to non-trustworthy same-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
- ['httpCrossSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-mode');
- });
- }, 'sec-fetch-mode - Not sent to non-trustworthy cross-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
['httpOrigin'],
{ mime: 'application/javascript', body: 'postMessage("")' }
);
@@ -130,36 +70,6 @@ Sources:
const key = '{{uuid()}}';
const url = makeRequestURL(
key,
- ['httpSameSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-dest');
- });
- }, 'sec-fetch-dest - Not sent to non-trustworthy same-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
- ['httpCrossSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-dest');
- });
- }, 'sec-fetch-dest - Not sent to non-trustworthy cross-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
['httpOrigin'],
{ mime: 'application/javascript', body: 'postMessage("")' }
);
@@ -170,35 +80,5 @@ Sources:
assert_not_own_property(headers, 'sec-fetch-user');
});
}, 'sec-fetch-user - Not sent to non-trustworthy same-origin destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
- ['httpSameSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-user');
- });
- }, 'sec-fetch-user - Not sent to non-trustworthy same-site destination, no options');
-
- promise_test(() => {
- const key = '{{uuid()}}';
- const url = makeRequestURL(
- key,
- ['httpCrossSite'],
- { mime: 'application/javascript', body: 'postMessage("")' }
- );
-
- return induceRequest(url)
- .then(() => retrieve(key))
- .then((headers) => {
- assert_not_own_property(headers, 'sec-fetch-user');
- });
- }, 'sec-fetch-user - Not sent to non-trustworthy cross-site destination, no options');
</script>
</html>
diff --git a/testing/web-platform/tests/fetch/metadata/tools/fetch-metadata.conf.yml b/testing/web-platform/tests/fetch/metadata/tools/fetch-metadata.conf.yml
index b277bcb7b5..b96bd2fd7b 100644
--- a/testing/web-platform/tests/fetch/metadata/tools/fetch-metadata.conf.yml
+++ b/testing/web-platform/tests/fetch/metadata/tools/fetch-metadata.conf.yml
@@ -43,10 +43,8 @@ cases:
origins: [httpCrossSite]
description: Not sent to non-trustworthy cross-site destination
template_axes:
- # Unused
- appcache-manifest.sub.https.html: []
- # The `audioWorklet` interface is only available in secure contexts
- # https://webaudio.github.io/web-audio-api/#BaseAudioContext
+ # The `AudioWorklet` interface is only available in secure contexts
+ # https://webaudio.github.io/web-audio-api/#AudioWorklet
audioworklet.https.sub.html: []
# Service workers are only available in secure context
fetch-via-serviceworker.https.sub.html: []
@@ -91,6 +89,62 @@ cases:
svg-image.sub.html: [{}]
window-history.sub.html: [{}]
worker-dedicated-importscripts.sub.html: [{}]
+ # `new Worker()` only makes same-origin requests, therefore we split it
+ # out into the next block.
+ worker-dedicated-constructor.sub.html: []
+
+ - all_subtests:
+ expected: NULL
+ filename_flags: []
+ common_axis:
+ - headerName: sec-fetch-site
+ origins: [httpOrigin]
+ description: Not sent to non-trustworthy same-origin destination
+ - headerName: sec-fetch-mode
+ origins: [httpOrigin]
+ description: Not sent to non-trustworthy same-origin destination
+ - headerName: sec-fetch-dest
+ origins: [httpOrigin]
+ description: Not sent to non-trustworthy same-origin destination
+ - headerName: sec-fetch-user
+ origins: [httpOrigin]
+ description: Not sent to non-trustworthy same-origin destination
+ template_axes:
+ # All the templates in this block are unused with the exception of
+ # `worker-dedicated-constructor`
+ audioworklet.https.sub.html: []
+ fetch-via-serviceworker.https.sub.html: []
+ serviceworker.https.sub.html: []
+ css-images.sub.html: []
+ css-font-face.sub.html: []
+ element-a.sub.html: []
+ element-area.sub.html: []
+ element-audio.sub.html: []
+ element-embed.sub.html: []
+ element-frame.sub.html: []
+ element-iframe.sub.html: []
+ element-img.sub.html: []
+ element-img-environment-change.sub.html: []
+ element-input-image.sub.html: []
+ element-link-icon.sub.html: []
+ element-link-prefetch.optional.sub.html: []
+ element-meta-refresh.optional.sub.html: []
+ element-picture.sub.html: []
+ element-script.sub.html: []
+ element-video.sub.html: []
+ element-video-poster.sub.html: []
+ fetch.sub.html: []
+ form-submission.sub.html: []
+ header-link.sub.html: []
+ header-refresh.optional.sub.html: []
+ window-location.sub.html: []
+ script-module-import-dynamic.sub.html: []
+ script-module-import-static.sub.html: []
+ svg-image.sub.html: []
+ window-history.sub.html: []
+ worker-dedicated-importscripts.sub.html: []
+ # `new Worker()` only makes same-origin requests, so we populate its
+ # generated tests here.
worker-dedicated-constructor.sub.html: [{}]
# Sec-Fetch-Site - direct requests
@@ -117,7 +171,6 @@ cases:
# https://html.spec.whatwg.org/#fetch-a-single-module-script
worker-dedicated-constructor.sub.html: []
- appcache-manifest.sub.https.html: [{}]
audioworklet.https.sub.html: [{}]
css-images.sub.html:
- filename_flags: [tentative]
@@ -176,8 +229,8 @@ cases:
expected: cross-site
template_axes:
# Unused
- # The `audioWorklet` interface is only available in secure contexts
- # https://webaudio.github.io/web-audio-api/#BaseAudioContext
+ # The `AudioWorklet` interface is only available in secure contexts
+ # https://webaudio.github.io/web-audio-api/#AudioWorklet
audioworklet.https.sub.html: []
# Service workers are only available in secure context
fetch-via-serviceworker.https.sub.html: []
@@ -196,7 +249,6 @@ cases:
# https://html.spec.whatwg.org/#fetch-a-single-module-script
worker-dedicated-constructor.sub.html: []
- appcache-manifest.sub.https.html: [{}]
css-images.sub.html:
- filename_flags: [tentative]
css-font-face.sub.html:
@@ -289,7 +341,6 @@ cases:
# https://html.spec.whatwg.org/#fetch-a-single-module-script
worker-dedicated-constructor.sub.html: []
- appcache-manifest.sub.https.html: [{}]
audioworklet.https.sub.html: [{}]
css-images.sub.html:
- filename_flags: [tentative]
@@ -377,7 +428,6 @@ cases:
worker-dedicated-constructor.sub.html: []
worker-dedicated-importscripts.sub.html: []
# Avoid duplicate subtest for 'sec-fetch-site - HTTPS downgrade-upgrade'
- appcache-manifest.sub.https.html: []
css-images.sub.html:
- filename_flags: [tentative]
element-a.sub.html: [{}]
@@ -409,8 +459,6 @@ cases:
filename_flags: [https]
origins: []
template_axes:
- appcache-manifest.sub.https.html:
- - expected: no-cors
audioworklet.https.sub.html:
# https://html.spec.whatwg.org/multipage/webappapis.html#fetch-a-single-module-script
- expected: cors
@@ -586,8 +634,6 @@ cases:
filename_flags: [https]
origins: []
template_axes:
- appcache-manifest.sub.https.html:
- - expected: empty
audioworklet.https.sub.html:
# https://github.com/WebAudio/web-audio-api/issues/2203
- expected: audioworklet
@@ -709,8 +755,6 @@ cases:
filename_flags: [https]
origins: []
template_axes:
- appcache-manifest.sub.https.html:
- - expected: NULL
audioworklet.https.sub.html:
- expected: NULL
css-images.sub.html:
diff --git a/testing/web-platform/tests/fetch/metadata/tools/templates/appcache-manifest.sub.https.html b/testing/web-platform/tests/fetch/metadata/tools/templates/appcache-manifest.sub.https.html
deleted file mode 100644
index 0dfc084f2e..0000000000
--- a/testing/web-platform/tests/fetch/metadata/tools/templates/appcache-manifest.sub.https.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-<!--
-[%provenance%]
--->
-<html lang="en">
- <meta charset="utf-8">
- <title>HTTP headers on request for Appcache manifest</title>
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/fetch/metadata/resources/helper.sub.js"></script>
- <body>
- <script>
- 'use strict';
-
- function induceRequest(url) {
- const iframe = document.createElement('iframe');
- iframe.src =
- '/fetch/metadata/resources/appcache-iframe.sub.html?manifest=' + encodeURIComponent(url);
-
- return new Promise((resolve) => {
- addEventListener('message', function onMessage(event) {
- if (event.source !== iframe.contentWindow) {
- return;
- }
- removeEventListener('message', onMessage);
- resolve(event.data);
- });
-
- document.body.appendChild(iframe);
- })
- .then((message) => {
- if (message !== 'okay') {
- throw message;
- }
- })
- .then(() => iframe.remove());
- }
-
- {%- for subtest in subtests %}
-
- async_test((t) => {
- const key = '{{uuid()}}';
- assert_implements_optional(
- !!window.applicationCache, 'Application Cache supported.'
- );
-
- induceRequest(makeRequestURL(key, [% subtest.origins %]))
- .then(() => retrieve(key))
- .then((headers) => {
- {%- if subtest.expected == none %}
- assert_not_own_property(headers, '[%subtest.headerName%]');
- {%- else %}
- assert_own_property(headers, '[%subtest.headerName%]');
- assert_array_equals(headers['[%subtest.headerName%]'], ['[%subtest.expected%]']);
- {%- endif %}
- })
- .then(() => t.done(), t.step_func((error) => { throw error; }));
- }, '[%subtest.headerName%][%subtest.description | pad("start", " - ")%]');
-
- {%- endfor %}
- </script>
- </body>
-</html>
diff --git a/testing/web-platform/tests/fledge/tentative/TODO b/testing/web-platform/tests/fledge/tentative/TODO
index 6fd378c035..8760e59d21 100644
--- a/testing/web-platform/tests/fledge/tentative/TODO
+++ b/testing/web-platform/tests/fledge/tentative/TODO
@@ -79,7 +79,13 @@ Need tests for (likely not a complete list):
origins, and between generateBid() and reportWin().
* Test Content-Type headers allowed in responess for script/wasm/JSON fetches.
* Test WASM support, updating createBiddingWasmHelperURL().
-
+* Remaining interest group updates.
+ * Check that an update with one valid field and one invalid one fails.
+ * Test that an update works if owner and/or name match those in the interest group.
+ * Test updating the update URL and bidding script URL so they are all the same origin (requires updating test fixture to handle multiple updates).
+ * Test when Ads is null.
+ * Test updating a cross origin interest group.
+ * Test fields that are updatable but do not make it to 'generateBid'.
If possible:
* Aggregate reporting.
* Join/leave permission delegation via .well-known files
diff --git a/testing/web-platform/tests/fledge/tentative/auction-config-passed-to-worklets.https.window.js b/testing/web-platform/tests/fledge/tentative/auction-config-passed-to-worklets.https.window.js
index 9b12d077ba..7780957739 100644
--- a/testing/web-platform/tests/fledge/tentative/auction-config-passed-to-worklets.https.window.js
+++ b/testing/web-platform/tests/fledge/tentative/auction-config-passed-to-worklets.https.window.js
@@ -81,6 +81,18 @@ makeTest({
});
makeTest({
+ name: 'AuctionConfig.deprecatedRenderURLReplacements with brackets.',
+ fieldName: 'deprecatedRenderURLReplacements',
+ fieldValue: {'${EXAMPLE_MACRO}': 'SSP'},
+});
+
+makeTest({
+ name: 'AuctionConfig.deprecatedRenderURLReplacements with percents.',
+ fieldName: 'deprecatedRenderURLReplacements',
+ fieldValue: {'%%EXAMPLE_MACRO%%': 'SSP'},
+});
+
+makeTest({
name: 'AuctionConfig.seller is URL.',
fieldName: 'seller',
fieldValue: OTHER_ORIGIN1,
diff --git a/testing/web-platform/tests/fledge/tentative/auction-config.https.window.js b/testing/web-platform/tests/fledge/tentative/auction-config.https.window.js
index 5fa4fa252f..057b4d7f78 100644
--- a/testing/web-platform/tests/fledge/tentative/auction-config.https.window.js
+++ b/testing/web-platform/tests/fledge/tentative/auction-config.https.window.js
@@ -12,7 +12,10 @@
// META: variant=?31-35
// META: variant=?36-40
// META: variant=?40-45
-// META: variant=?46-last
+// META: variant=?46-50
+// META: variant=?51-55
+// META: variant=?56-60
+// META: variant=?61-last
"use strict;"
@@ -110,6 +113,62 @@ const EXPECT_PROMISE_ERROR = auctionResult => {
}
makeTest({
+ name: 'deprecatedRenderURLReplacements without end bracket is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'${No_End_Bracket': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements without percents and brackets.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'No_Wrapper': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements without dollar sign.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'{No_Dollar_Sign}': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements without start bracket is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'$No_Start_Bracket}': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements mix and match is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'${Bracket_And_Percent%%': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements missing start percent is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'%Missing_Start_Percents%%': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements single percents is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'%Single_Percents%': 'SSP'}}
+});
+
+makeTest({
+ name: 'deprecatedRenderURLReplacements without end percents is invalid.',
+ expect: EXPECT_PROMISE_ERROR,
+ expectPromiseError: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {deprecatedRenderURLReplacements: {'%%No_End_Percents': 'SSP'}}
+});
+
+makeTest({
name: 'no buyers => no winners',
expect: EXPECT_NO_WINNER,
auctionConfigOverrides: {interestGroupBuyers: []},
@@ -445,6 +504,60 @@ makeTest({
{width: '200furlongs', height: '200'}]}
});
+makeTest({
+ name: 'sellerRealTimeReportingConfig has default local reporting type',
+ expect: EXPECT_WINNER,
+ auctionConfigOverrides: {sellerRealTimeReportingConfig:
+ {type: 'default-local-reporting'}}
+});
+
+makeTest({
+ name: 'sellerRealTimeReportingConfig has no type',
+ expect: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {sellerRealTimeReportingConfig:
+ {notType: 'default-local-reporting'}}
+});
+
+makeTest({
+ name: 'sellerRealTimeReportingConfig has unknown type',
+ expect: EXPECT_WINNER,
+ auctionConfigOverrides: {sellerRealTimeReportingConfig: {type: 'unknown type'}}
+});
+
+makeTest({
+ name: 'perBuyerRealTimeReportingConfig',
+ expect: EXPECT_WINNER,
+ auctionConfigOverrides: {perBuyerRealTimeReportingConfig:
+ {"https://example.com": {type: 'default-local-reporting'}}}
+});
+
+makeTest({
+ name: 'perBuyerRealTimeReportingConfig has no entry',
+ expect: EXPECT_WINNER,
+ auctionConfigOverrides: {perBuyerRealTimeReportingConfig: {}}
+});
+
+makeTest({
+ name: 'perBuyerRealTimeReportingConfig has invalid buyer',
+ expect: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {perBuyerRealTimeReportingConfig:
+ {"http://example.com": {type: 'default-local-reporting'}}}
+});
+
+makeTest({
+ name: 'perBuyerRealTimeReportingConfig has no type',
+ expect: EXPECT_EXCEPTION(TypeError),
+ auctionConfigOverrides: {perBuyerRealTimeReportingConfig:
+ {"https://example.com": {notType: 'default-local-reporting'}}}
+});
+
+makeTest({
+ name: 'perBuyerRealTimeReportingConfig has unknown type',
+ expect: EXPECT_WINNER,
+ auctionConfigOverrides: {perBuyerRealTimeReportingConfig:
+ {"https://example.com": {type: 'unknown type'}}}
+});
+
subsetTest(promise_test, async test => {
const uuid = generateUuid(test);
diff --git a/testing/web-platform/tests/fledge/tentative/component-ads.https.window.js b/testing/web-platform/tests/fledge/tentative/component-ads.https.window.js
index 6b22585d57..8493025429 100644
--- a/testing/web-platform/tests/fledge/tentative/component-ads.https.window.js
+++ b/testing/web-platform/tests/fledge/tentative/component-ads.https.window.js
@@ -44,13 +44,25 @@ function createComponentAdRenderURL(uuid, id) {
//
// If "adMetadata" is true, metadata is added to each component ad. Only integer metadata
// is used, relying on renderURL tests to cover other types of renderURL metadata.
+//
+// If "deprecatedRenderURLReplacements" is passed, the matches and replacements will be
+// used in the trackingURLs and the object will be passed into the auctionConfig, to
+// replace matching macros within the renderURLs.
async function runComponentAdLoadingTest(test, uuid, numComponentAdsInInterestGroup,
- componentAdsInBid, componentAdsToLoad,
- adMetadata = false) {
+ componentAdsInBid, componentAdsToLoad,
+ adMetadata = false, deprecatedRenderURLReplacements = null) {
let interestGroupAdComponents = [];
+ // These are used within the URLs for deprecatedRenderURLReplacement tests.
+ const renderURLReplacementsStrings = createStringBeforeAndAfterReplacements(deprecatedRenderURLReplacements);
+ const beforeReplacementsString= renderURLReplacementsStrings.beforeReplacements;
+ const afterReplacementsString = renderURLReplacementsStrings.afterReplacements;
+
for (let i = 0; i < numComponentAdsInInterestGroup; ++i) {
- const componentRenderURL = createComponentAdRenderURL(uuid, i);
- let adComponent = {renderURL: componentRenderURL};
+ let componentRenderURL = createComponentAdRenderURL(uuid, i);
+ if (deprecatedRenderURLReplacements !== null) {
+ componentRenderURL = createTrackerURL(window.location.origin, uuid, 'track_get', beforeReplacementsString);
+ }
+ let adComponent = { renderURL: componentRenderURL };
if (adMetadata)
adComponent.metadata = i;
interestGroupAdComponents.push(adComponent);
@@ -74,7 +86,7 @@ async function runComponentAdLoadingTest(test, uuid, numComponentAdsInInterestGr
eventData: status,
destination: ["buyer"]});`);
- let bid = {bid:1, render: renderURL};
+ let bid = {bid:1, render:renderURL};
if (componentAdsInBid) {
bid.adComponents = [];
for (let index of componentAdsInBid) {
@@ -89,8 +101,13 @@ async function runComponentAdLoadingTest(test, uuid, numComponentAdsInInterestGr
// to "expectedTrackerURLs".
if (componentAdsToLoad && bid.adComponents) {
for (let index of componentAdsToLoad) {
+ let expectedURL = createComponentAdTrackerURL(uuid, componentAdsInBid[index]);
+ if (deprecatedRenderURLReplacements != null) {
+ expectedURL = createTrackerURL(window.location.origin, uuid, 'track_get',
+ afterReplacementsString);
+ }
if (index < componentAdsInBid.length)
- expectedTrackerURLs.push(createComponentAdTrackerURL(uuid, componentAdsInBid[index]));
+ expectedTrackerURLs.push(expectedURL);
}
}
@@ -127,11 +144,13 @@ async function runComponentAdLoadingTest(test, uuid, numComponentAdsInInterestGr
test, uuid,
{decisionLogicURL: createDecisionScriptURL(
uuid,
- { scoreAd:
+ { scoreAd:
`if (JSON.stringify(browserSignals.adComponents) !==
'${JSON.stringify(bid.adComponents)}') {
throw "Unexpected adComponents: " + JSON.stringify(browserSignals.adComponents);
- }`})});
+ }`}),
+ deprecatedRenderURLReplacements: deprecatedRenderURLReplacements
+ });
}
await waitForObservedRequests(uuid, expectedTrackerURLs);
@@ -447,3 +466,27 @@ subsetTest(promise_test, async test => {
}, 'Reports not sent from component ad.');
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ await runComponentAdLoadingTest(test, uuid, /*numComponentAdsInInterestGroup=*/1,
+ /*componentAdsInBid=*/[0], /*componentAdsToLoad=*/[0], false, { '%%EXAMPLE-MACRO%%': 'SSP' });
+}, 'component ad with render url replacements with percents.');
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ await runComponentAdLoadingTest(test, uuid, /*numComponentAdsInInterestGroup=*/1,
+ /*componentAdsInBid=*/[0], /*componentAdsToLoad=*/[0], false, { '${EXAMPLE-MACRO}': 'SSP' });
+}, 'component ad with render url replacements with brackets.');
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ await runComponentAdLoadingTest(test, uuid, /*numComponentAdsInInterestGroup=*/1,
+ /*componentAdsInBid=*/[0], /*componentAdsToLoad=*/[0], false, { '${EXAMPLE-MACRO-1}': 'SSP-1', '%%EXAMPLE-MACRO-2%%': 'SSP-2' });
+}, 'component ad with render url replacements with multiple replacements.');
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ await runComponentAdLoadingTest(test, uuid, /*numComponentAdsInInterestGroup=*/3,
+ /*componentAdsInBid=*/[0,1,2], /*componentAdsToLoad=*/[0,1,2], false, { '${EXAMPLE-MACRO-1}': 'SSP-1', '%%EXAMPLE-MACRO-2%%': 'SSP-2' });
+}, 'component ad with render url replacements with multiple replacements, and multiple component ads.');
diff --git a/testing/web-platform/tests/fledge/tentative/component-auction.https.window.js b/testing/web-platform/tests/fledge/tentative/component-auction.https.window.js
index 015c20a5c2..bf804e6857 100644
--- a/testing/web-platform/tests/fledge/tentative/component-auction.https.window.js
+++ b/testing/web-platform/tests/fledge/tentative/component-auction.https.window.js
@@ -11,18 +11,21 @@
"use strict";
// Creates an AuctionConfig with a single component auction.
-function createComponentAuctionConfig(uuid) {
+function createComponentAuctionConfig(uuid, auctionConfigOverrides = {},
+ deprecatedRenderURLReplacements = {}) {
let componentAuctionConfig = {
seller: window.location.origin,
decisionLogicURL: createDecisionScriptURL(uuid),
- interestGroupBuyers: [window.location.origin]
+ interestGroupBuyers: [window.location.origin],
+ deprecatedRenderURLReplacements: deprecatedRenderURLReplacements
};
return {
seller: window.location.origin,
decisionLogicURL: createDecisionScriptURL(uuid),
interestGroupBuyers: [],
- componentAuctions: [componentAuctionConfig]
+ componentAuctions: [componentAuctionConfig],
+ ...auctionConfigOverrides
};
}
@@ -717,3 +720,118 @@ subsetTest(promise_test, async test => {
uuid,
[bidderReportURL1, seller1ReportURL, bidderReportURL2, seller2ReportURL]);
}, `Component auction prevWinsMs and numBids updating in one component seller's auction, read in another's.`);
+
+
+const makeDeprecatedRenderURLReplacementTest = ({
+ name,
+ deprecatedRenderURLReplacements,
+}) => {
+ subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+
+ let bidderReportURL = createBidderReportURL(uuid);
+ let componentSellerReportURL = createSellerReportURL(uuid, /*id=*/"component");
+ let topLevelSellerReportURL = createSellerReportURL(uuid, /*id=*/"top");
+
+ // These are used within the URLs for deprecatedRenderURLReplacement tests.
+ const renderURLReplacementsStrings = createStringBeforeAndAfterReplacements(deprecatedRenderURLReplacements);
+ const beforeReplacementsString = renderURLReplacementsStrings.beforeReplacements;
+ const afterReplacementsString = renderURLReplacementsStrings.afterReplacements;
+ const renderURLBeforeReplacements = createTrackerURL(window.location.origin, uuid, 'track_get', beforeReplacementsString);
+ const renderURLAfterReplacements = createTrackerURL(window.location.origin, uuid, 'track_get', afterReplacementsString);
+
+ await joinInterestGroup(
+ test, uuid,
+ {
+ ads: [{ renderURL: renderURLBeforeReplacements }],
+ biddingLogicURL: createBiddingScriptURL(
+ {
+ allowComponentAuction: true,
+ bid: 5,
+ reportWin:
+ `if (browserSignals.bid !== 5)
+ throw "Unexpected bid: " + browserSignals.bid;
+ sendReportTo("${bidderReportURL}");`
+ })
+ });
+
+ let auctionConfig = createComponentAuctionConfig(uuid, {}, deprecatedRenderURLReplacements);
+
+ auctionConfig.componentAuctions[0].decisionLogicURL =
+ createDecisionScriptURL(
+ uuid,
+ {
+ scoreAd:
+ `if (bid !== 5)
+ throw "Unexpected component bid: " + bid`,
+ reportResult:
+ `if (browserSignals.bid !== 5)
+ throw "Unexpected component bid: " + browserSignals.bid;
+ if (browserSignals.modifiedBid !== undefined)
+ throw "Unexpected component modifiedBid: " + browserSignals.modifiedBid;
+ sendReportTo("${componentSellerReportURL}");`
+ });
+
+ auctionConfig.decisionLogicURL =
+ createDecisionScriptURL(
+ uuid,
+ {
+ scoreAd:
+ `if (bid !== 5)
+ throw "Unexpected top-level bid: " + bid`,
+ reportResult:
+ `if (browserSignals.bid !== 5)
+ throw "Unexpected top-level bid: " + browserSignals.bid;
+ if (browserSignals.modifiedBid !== undefined)
+ throw "Unexpected top-level modifiedBid: " + browserSignals.modifiedBid;
+ sendReportTo("${topLevelSellerReportURL}");`
+ });
+
+ await runBasicFledgeAuctionAndNavigate(test, uuid, auctionConfig);
+ await waitForObservedRequests(
+ uuid,
+ [bidderReportURL, componentSellerReportURL, topLevelSellerReportURL, renderURLAfterReplacements]);
+ }, name);
+};
+
+makeDeprecatedRenderURLReplacementTest({
+ name: 'Replacements with brackets.',
+ deprecatedRenderURLReplacements: { '${EXAMPLE-MACRO}': 'SSP' }
+});
+
+makeDeprecatedRenderURLReplacementTest({
+ name: 'Replacements with percents.',
+ deprecatedRenderURLReplacements: { '%%EXAMPLE-MACRO%%': 'SSP' }
+});
+
+makeDeprecatedRenderURLReplacementTest({
+ name: 'Replacements with multiple replacements.',
+ deprecatedRenderURLReplacements: { '${EXAMPLE-MACRO1}': 'SSP1', '%%EXAMPLE-MACRO2%%': 'SSP2' }
+});
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ let deprecatedRenderURLReplacements = { '${EXAMPLE-MACRO1}': 'SSP1', '%%EXAMPLE-MACRO2%%': 'SSP2' };
+ const renderURLReplacementsStrings = createStringBeforeAndAfterReplacements(deprecatedRenderURLReplacements);
+ let beforeReplacementsString = renderURLReplacementsStrings.beforeReplacements;
+
+ await joinInterestGroup(
+ test, uuid,
+ {
+ ads: [{ renderURL: createTrackerURL(window.location.origin, uuid, 'track_get', beforeReplacementsString) }],
+ biddingLogicURL: createBiddingScriptURL({allowComponentAuction: true})
+ });
+ let auctionConfigOverride = {deprecatedRenderURLReplacements: deprecatedRenderURLReplacements }
+ let auctionConfig = createComponentAuctionConfig(uuid,/*auctionConfigOverride=*/auctionConfigOverride,
+ /*deprecatedRenderURLReplacements=*/deprecatedRenderURLReplacements);
+
+ auctionConfig.componentAuctions[0].decisionLogicURL = createDecisionScriptURL(uuid);
+
+ try {
+ await runBasicFledgeAuction(test, uuid, auctionConfig);
+ } catch (exception) {
+ assert_true(exception instanceof TypeError, "did not get expected error: " + exception);
+ return;
+ }
+ throw 'Exception unexpectedly not thrown.'
+}, "deprecatedRenderURLReplacements cause error if passed in top level auction and component auction.");
diff --git a/testing/web-platform/tests/fledge/tentative/deprecated-render-url-replacements.https.window.js b/testing/web-platform/tests/fledge/tentative/deprecated-render-url-replacements.https.window.js
new file mode 100644
index 0000000000..4f8bc1cc7f
--- /dev/null
+++ b/testing/web-platform/tests/fledge/tentative/deprecated-render-url-replacements.https.window.js
@@ -0,0 +1,196 @@
+// META: script=/resources/testdriver.js
+// META: script=/common/utils.js
+// META: script=resources/fledge-util.sub.js
+// META: script=/common/subset-tests.js
+// META: timeout=long
+// META: variant=?1-5
+// META: variant=?6-10
+// META: variant=?11-15
+// META: variant=?16-last
+
+
+"use strict;"
+
+// This test ensures proper handling of deprecatedRenderURLReplacements within auctionConfigOverrides.
+// It validates that these replacements are correctly applied to the winning bid's renderURL by
+// injecting a URL with matching macros into an interest group and ensuring that a new url with
+// the replacements in it, is tracked and observed.
+const makeTest = ({
+ // Test name
+ name,
+ // Overrides to the interest group.
+ interestGroupOverrides = {},
+ // Overrides to the auction config.
+ auctionConfigOverrides = {},
+ // This is what goes into the renderURL and is expected to be replaced.
+ beforeReplacements,
+ // This is what's expected when 'beforeReplacements' is replaced.
+ afterReplacements,
+}) => {
+ subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ let urlBeforeReplacements = createTrackerURL(window.location.origin, uuid, 'track_get', beforeReplacements);
+ let urlAfterReplacements = createTrackerURL(window.location.origin, uuid, 'track_get', afterReplacements);
+ interestGroupOverrides.ads = [{ renderURL: urlBeforeReplacements }];
+ await joinInterestGroup(test, uuid, interestGroupOverrides);
+
+ await runBasicFledgeAuctionAndNavigate(test, uuid, auctionConfigOverrides);
+ await waitForObservedRequests(
+ uuid,
+ [urlAfterReplacements, createSellerReportURL(uuid), createBidderReportURL(uuid)]);
+ }, name);
+};
+
+makeTest({
+ name: 'Replacements with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${EXAMPLE-MACRO}': 'SSP' }
+ },
+ beforeReplacements: "${EXAMPLE-MACRO}",
+ afterReplacements: 'SSP',
+
+});
+
+makeTest({
+ name: 'Replacements with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%EXAMPLE-MACRO%%': 'SSP' }
+ },
+ beforeReplacements: "%%EXAMPLE-MACRO%%",
+ afterReplacements: 'SSP',
+});
+
+makeTest({
+ name: 'Multiple replacements within a URL.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${EXAMPLE-MACRO1}': 'SSP1', '%%EXAMPLE-MACRO2%%': 'SSP2' }
+ },
+ beforeReplacements: "${EXAMPLE-MACRO1}/%%EXAMPLE-MACRO2%%",
+ afterReplacements: 'SSP1/SSP2',
+});
+
+makeTest({
+ name: 'Recursive and reduce size with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${1}': '1' }
+ },
+ beforeReplacements: "${${${1}}}",
+ afterReplacements: "${${1}}"
+});
+
+makeTest({
+ name: 'Recursive and increase size with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${1}': '${${1}}' }
+ },
+ beforeReplacements: "${1}",
+ afterReplacements: "${${1}}"
+});
+
+makeTest({
+ name: 'Replacements use a single pass with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${1}': '${2}', '${2}': '${1}' }
+ },
+ beforeReplacements: "${1}${2}",
+ afterReplacements: "${2}${1}"
+});
+
+makeTest({
+ name: 'Multiple instances of same substitution string with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${1}': '${2}' }
+ },
+ beforeReplacements: "{${1}${1}}",
+ afterReplacements: "{${2}${2}}"
+});
+
+makeTest({
+ name: 'Mismatched replacement with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${2}': '${1}' }
+ },
+ beforeReplacements: "${1}",
+ afterReplacements: "${1}"
+});
+
+makeTest({
+ name: 'Recursive and reduce size with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%1%%': '1' }
+ },
+ beforeReplacements: "%%%%1%%%%",
+ afterReplacements: "%%1%%"
+});
+
+makeTest({
+ name: 'Recursive and increase size with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%1%%': '%%%%1%%%%' }
+ },
+ beforeReplacements: "%%1%%",
+ afterReplacements: "%%%%1%%%%"
+});
+
+makeTest({
+ name: 'Replacements use a single pass with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%1%%': '%%2%%', '%%2%%': '%%1%%' }
+ },
+ beforeReplacements: "%%1%%%%2%%",
+ afterReplacements: "%%2%%%%1%%"
+});
+
+makeTest({
+ name: 'Multiple instances of same substitution string with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%1%%': '%%2%%' }
+ },
+ beforeReplacements: "%%1%%%%1%%",
+ afterReplacements: "%%2%%%%2%%"
+});
+
+makeTest({
+ name: 'Mismatched replacement with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%2%%': '%%1%%' }
+ },
+ beforeReplacements: "%%1%%",
+ afterReplacements: "%%1%%"
+});
+
+makeTest({
+ name: 'Case sensativity.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%foo%%': '%%bar%%' }
+ },
+ beforeReplacements: "%%FOO%%%%foo%%",
+ afterReplacements: "%%FOO%%%%bar%%"
+});
+
+makeTest({
+ name: 'Super macro, a macro with a macro inside it basically, with percents.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '%%%%foo%%%%': 'foo' }
+ },
+ beforeReplacements: "%%%%foo%%%%",
+ afterReplacements: "foo"
+});
+
+makeTest({
+ name: 'Super macro, with brackets.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${${foo}}': 'foo' }
+ },
+ beforeReplacements: "${${foo}}",
+ afterReplacements: "foo"
+});
+
+makeTest({
+ name: 'Super macro, with both.',
+ auctionConfigOverrides: {
+ deprecatedRenderURLReplacements: { '${%%foo%%}': 'foo', '%%${bar}%%':'bar' }
+ },
+ beforeReplacements: "${%%foo%%}%%${bar}%%",
+ afterReplacements: "foobar"
+});
diff --git a/testing/web-platform/tests/fledge/tentative/interest-group-update.https.window.js b/testing/web-platform/tests/fledge/tentative/interest-group-update.https.window.js
new file mode 100644
index 0000000000..59b3736b09
--- /dev/null
+++ b/testing/web-platform/tests/fledge/tentative/interest-group-update.https.window.js
@@ -0,0 +1,406 @@
+// META: script=/resources/testdriver.js
+// META: script=/common/utils.js
+// META: script=resources/fledge-util.sub.js
+// META: script=/common/subset-tests.js
+// META: timeout=long
+// META: variant=?1-4
+// META: variant=?5-9
+// META: variant=?10-14
+// META: variant=?15-19
+// META: variant=?20-last
+
+"use strict;"
+
+// This test repeatedly runs auctions to verify an update. A modified bidding script
+// continuously throws errors until it detects the expected change in the interest group
+// field. This update then stops the auction cycle.
+const makeTestForUpdate = ({
+ // Test name
+ name,
+ // fieldname that is getting updated
+ interestGroupFieldName,
+ // This is used to check if update has happened.
+ expectedValue,
+ // This is used to create the update response, by default it will always send
+ // back the `expectedValue`. Extra steps to make a deep copy.
+ responseOverride = expectedValue,
+ // Overrides to the interest group.
+ interestGroupOverrides = {},
+ // Overrides to the auction config.
+ auctionConfigOverrides = {},
+}) => {
+ subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ extraBiddingLogic = ``;
+
+ let replacePlaceholders = (ads) => ads.forEach(element => {
+ element.renderURL = element.renderURL.replace(`UUID-PLACEHOLDER`, uuid);
+ });
+
+ // Testing 'ads' requires some additional setup due to it's reliance
+ // on createRenderURL, specifically the bidding script used checks to make
+ // sure the `uuid` is the correct one for the test. We use a renderURL
+ // with a placeholder 'UUID-PLACEHOLDER' and make sure to replace it
+ // before moving on to the test.
+ if (interestGroupFieldName === `ads`) {
+ if (interestGroupFieldName in interestGroupOverrides) {
+ replacePlaceholders(interestGroupOverrides[interestGroupFieldName]);
+ }
+ replacePlaceholders(responseOverride);
+ replacePlaceholders(expectedValue);
+ }
+ // When checking the render URL, both the deprecated 'renderUrl' and the updated 'renderURL' might exist
+ // in the interest group simultaneously, so this test deletes the 'renderUrl' to ensure a
+ // clean comparison with deepEquals.
+ if (interestGroupFieldName === `ads` || interestGroupFieldName === `adComponents`) {
+ extraBiddingLogic = `
+ interestGroup.${interestGroupFieldName}.forEach(element => {
+ delete element.renderUrl;
+ });`
+ }
+
+ let expectedValueJSON = JSON.stringify(expectedValue);
+ // When the update has not yet been seen, throw an error which will cause the
+ // auction not to have a result.
+ interestGroupOverrides.biddingLogicURL = createBiddingScriptURL({
+ generateBid: `
+ ${extraBiddingLogic}
+ if (!deepEquals(interestGroup.${interestGroupFieldName}, ${expectedValueJSON})) {
+ throw '${interestGroupFieldName} is ' +
+ JSON.stringify(interestGroup.${interestGroupFieldName}) +
+ ' instead of ' + '${expectedValueJSON}';
+ }`
+ });
+
+ let responseBody = {};
+ responseBody[interestGroupFieldName] = responseOverride;
+ let updateParams = {
+ body: JSON.stringify(responseBody),
+ uuid: uuid
+ };
+ interestGroupOverrides.updateURL = createUpdateURL(updateParams);
+ await joinInterestGroup(test, uuid, interestGroupOverrides);
+
+ // Run an auction until there's a winner, which means update occurred.
+ let auctionResult = await runBasicFledgeAuction(test, uuid, auctionConfigOverrides);
+ expectNoWinner(auctionResult);
+ while (!auctionResult) {
+ auctionResult = await runBasicFledgeAuction(test, uuid, auctionConfigOverrides);
+ }
+ }, name);
+};
+
+// In order to test the update process does not update certain fields, this test uses two interest groups:
+
+// * `failedUpdateGroup`: Receives an invalid update, and will continue to throw errors until the update
+// occurs (which shouldn't happen). This group will have a high bid to ensure if
+// there was ever a tie, it would win.
+// * `successUpdateGroup`: A hard-coded interest group that receives a update and will signal the change
+// by throwing an error.
+
+// By tracking render URLs, this test guarantees that only the URL associated with the correct update
+// (`goodUpdateRenderURL`) is used, and the incorrect URL (`badUpdateRenderURL`) isn't. The test runs
+// auctions repeatedly until the update in `successUpdateGroup` stops an auction from producing a winner.
+// It then will run one final auction. If there's still no winner, it can infer that `failedUpdateGroup`
+// would have received the update if it were propagating correctly.
+
+// If there was a bug in the implementation, a possible case can occur and manifest as a flaky test.
+// In this scenerio with the current structure of the Protected Audience API, the `successUpdateGroup`
+// updates, and so does the `failedUpdateGroup`, but the `failedUpdateGroup` update happens significantly
+// after the `successUpdateGroup`'s update. In an effort to combat this, after the while loop we run
+// another auction to ensure there is no winner (both cases should throw), but depending how slow the
+// update takes, this flaky issue still can **possibly** occur.
+const makeTestForNoUpdate = ({
+ // Test name
+ name,
+ // fieldname that is should not be getting updated
+ interestGroupFieldName,
+ // this is used to create the update response and check if it did not happen.
+ responseOverride,
+ // Overrides to the auction config.
+ auctionConfigOverrides = {},
+ // Overrides to the interest group.
+ failedUpdateGroup = {},
+}) => {
+ subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+ // successUpdateGroup
+
+ // These are used in `successUpdateGroup` in order to get a proper update.
+ let successUpdateGroup = {};
+ let successUpdateField = `userBiddingSignals`;
+ let successUpdateFieldExpectedValue = { 'test': 20 };
+
+ const goodUpdateRenderURL = createTrackerURL(window.location.origin, uuid, 'track_get', 'good_update');
+ successUpdateGroup.ads = [{ 'renderURL': goodUpdateRenderURL }];
+ successUpdateGroup.biddingLogicURL = createBiddingScriptURL({
+ generateBid: `
+ if (deepEquals(interestGroup.${successUpdateField}, ${JSON.stringify(successUpdateFieldExpectedValue)})){
+ throw '${successUpdateField} has updated and is ' +
+ '${JSON.stringify(successUpdateFieldExpectedValue)}.'
+ }`,
+ bid: 5
+ });
+
+ let successResponseBody = {};
+ successResponseBody[successUpdateField] = successUpdateFieldExpectedValue;
+ let successUpdateParams = {
+ body: JSON.stringify(successResponseBody),
+ uuid: uuid
+ };
+ successUpdateGroup.updateURL = createUpdateURL(successUpdateParams);
+ await joinInterestGroup(test, uuid, successUpdateGroup);
+ ///////////////////////// successUpdateGroup
+
+ // failedUpdateGroup
+ const badUpdateRenderURL = createTrackerURL(window.location.origin, uuid, `track_get`, `bad_update`);
+ // Name needed so we don't have two IGs with same name.
+ failedUpdateGroup.name = failedUpdateGroup.name ? failedUpdateGroup.name : `IG name`
+ failedUpdateGroup.ads = [{ 'renderURL': badUpdateRenderURL }];
+ failedUpdateGroup.biddingLogicURL = createBiddingScriptURL({
+ generateBid: `
+ if (!deepEquals(interestGroup.${interestGroupFieldName}, ${JSON.stringify(responseOverride)})){
+ throw '${interestGroupFieldName} is as expected: '+
+ JSON.stringify(interestGroup.${interestGroupFieldName});
+ }`,
+ bid: 1000
+ });
+ let failedResponseBody = {};
+ failedResponseBody[interestGroupFieldName] = responseOverride;
+
+ let failedUpdateParams = {
+ body: JSON.stringify(failedResponseBody),
+ uuid: uuid
+ };
+
+ failedUpdateGroup.updateURL = createUpdateURL(failedUpdateParams);
+ await joinInterestGroup(test, uuid, failedUpdateGroup);
+ ///////////////////////// failedUpdateGroup
+
+ // First result should be not be null, `successUpdateGroup` throws when update is detected so until then,
+ // run and observe the requests to ensure only `goodUpdateRenderURL` is fetched.
+ let auctionResult = await runBasicFledgeTestExpectingWinner(test, uuid, auctionConfigOverrides);
+ while (auctionResult) {
+ createAndNavigateFencedFrame(test, auctionResult);
+ await waitForObservedRequests(
+ uuid,
+ [goodUpdateRenderURL, createSellerReportURL(uuid)]);
+ await fetch(createCleanupURL(uuid));
+ auctionResult = await runBasicFledgeAuction(test, uuid, auctionConfigOverrides);
+ }
+ // Re-run to ensure null because:
+ // `successUpdateGroup` should be throwing since update occurred.
+ // `failedUpdateGroup` should be throwing since update did not occur.
+ await runBasicFledgeTestExpectingNoWinner(test, uuid, auctionConfigOverrides);
+ }, name);
+};
+
+// Helper to eliminate rewriting a long call to createRenderURL().
+// Only thing to change would be signalParams to differentiate between URLs.
+const createTempRenderURL = (signalsParams = null) => {
+ return createRenderURL(/*uuid=*/`UUID-PLACEHOLDER`,/*script=*/ null,/*signalParams=*/ signalsParams,/*origin=*/ null);
+};
+
+makeTestForUpdate({
+ name: 'userBiddingSignals update overwrites everything in the field.',
+ interestGroupFieldName: 'userBiddingSignals',
+ expectedValue: { 'test': 20 },
+ interestGroupOverrides: {
+ userBiddingSignals: { 'test': 10, 'extra_value': true },
+ }
+});
+
+makeTestForUpdate({
+ name: 'userBiddingSignals updated multi-type',
+ interestGroupFieldName: 'userBiddingSignals',
+ expectedValue: { 'test': 20, 5: [1, [false, false, true], 3, 'Hello'] },
+ interestGroupOverrides: {
+ userBiddingSignals: { 'test': 10 },
+ }
+});
+
+makeTestForUpdate({
+ name: 'userBiddingSignals updated to non object',
+ interestGroupFieldName: 'userBiddingSignals',
+ expectedValue: 5,
+ interestGroupOverrides: {
+ userBiddingSignals: { 'test': 10 },
+ }
+});
+
+makeTestForUpdate({
+ name: 'userBiddingSignals updated to null',
+ interestGroupFieldName: 'userBiddingSignals',
+ expectedValue: null,
+ interestGroupOverrides: {
+ userBiddingSignals: { 'test': 10 },
+ }
+});
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsKeys updated correctly',
+ interestGroupFieldName: 'trustedBiddingSignalsKeys',
+ expectedValue: ['new_key', 'old_key'],
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['old_key'],
+ }
+});
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsKeys updated to empty array.',
+ interestGroupFieldName: 'trustedBiddingSignalsKeys',
+ expectedValue: [],
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['old_key'],
+ }
+});
+
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsSlotSizeMode updated to slot-size',
+ interestGroupFieldName: 'trustedBiddingSignalsSlotSizeMode',
+ expectedValue: 'slot-size',
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['key'],
+ trustedBiddingSignalsSlotSizeMode: 'none',
+ }
+});
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsSlotSizeMode updated to all-slots-requested-sizes',
+ interestGroupFieldName: 'trustedBiddingSignalsSlotSizeMode',
+ expectedValue: 'all-slots-requested-sizes',
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['key'],
+ trustedBiddingSignalsSlotSizeMode: 'slot-size',
+ }
+});
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsSlotSizeMode updated to none',
+ interestGroupFieldName: 'trustedBiddingSignalsSlotSizeMode',
+ expectedValue: 'none',
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['key'],
+ trustedBiddingSignalsSlotSizeMode: 'slot-size',
+ }
+});
+
+makeTestForUpdate({
+ name: 'trustedBiddingSignalsSlotSizeMode updated to unknown, defaults to none',
+ interestGroupFieldName: 'trustedBiddingSignalsSlotSizeMode',
+ expectedValue: 'none',
+ responseOverride: 'unknown-type',
+ interestGroupOverrides: {
+ trustedBiddingSignalsKeys: ['key'],
+ trustedBiddingSignalsSlotSizeMode: 'slot-size',
+ }
+});
+
+makeTestForUpdate({
+ name: 'ads updated from 2 ads to 1.',
+ interestGroupFieldName: 'ads',
+ expectedValue: [
+ { renderURL: createTempRenderURL('new_url1'), metadata: 'test1-new' },
+ ],
+ interestGroupOverrides: {
+ ads: [{ renderURL: createTempRenderURL() },
+ { renderURL: createTempRenderURL() }]
+ }
+});
+
+makeTestForUpdate({
+ name: 'ads updated from 1 ad to 2.',
+ interestGroupFieldName: 'ads',
+ expectedValue: [{ renderURL: createTempRenderURL('new_url1'), metadata: 'test1-new' },
+ { renderURL: createTempRenderURL('new_url2'), metadata: 'test2-new' }],
+ interestGroupOverrides: {
+ ads: [{ renderURL: createTempRenderURL() }]
+ }
+});
+
+makeTestForUpdate({
+ name: 'adComponents updated from 1 adComponent to 2.',
+ interestGroupFieldName: 'adComponents',
+ expectedValue: [{ renderURL: createTempRenderURL('new_url1'), metadata: 'test1-new' },
+ { renderURL: createTempRenderURL('new_url2'), metadata: 'test2' }],
+ interestGroupOverrides: {
+ adComponents: [{ renderURL: createTempRenderURL(), metadata: 'test1' }]
+ },
+});
+
+makeTestForUpdate({
+ name: 'adComponents updated from 2 adComponents to 1.',
+ interestGroupFieldName: 'adComponents',
+ expectedValue: [{ renderURL: createTempRenderURL('new_url1'), metadata: 'test1-new' }],
+ interestGroupOverrides: {
+ adComponents: [{ renderURL: createTempRenderURL() },
+ { renderURL: createTempRenderURL() }]
+ },
+});
+
+makeTestForUpdate({
+ name: 'executionMode updated to frozen context',
+ interestGroupFieldName: 'executionMode',
+ expectedValue: 'frozen-context',
+ interestGroupOverrides: {
+ executionMode: 'compatibility',
+ }
+});
+
+makeTestForUpdate({
+ name: 'executionMode updated to compatibility',
+ interestGroupFieldName: 'executionMode',
+ expectedValue: 'compatibility',
+ interestGroupOverrides: {
+ executionMode: 'frozen-context',
+ }
+});
+
+makeTestForUpdate({
+ name: 'executionMode updated to group by origin',
+ interestGroupFieldName: 'executionMode',
+ expectedValue: 'group-by-origin',
+ interestGroupOverrides: {
+ executionMode: 'compatibility',
+ }
+});
+
+makeTestForNoUpdate({
+ name: 'executionMode updated with invalid input',
+ interestGroupFieldName: 'executionMode',
+ responseOverride: 'unknown-type',
+});
+
+makeTestForNoUpdate({
+ name: 'owner cannot be updated.',
+ interestGroupFieldName: 'owner',
+ responseOverride: OTHER_ORIGIN1,
+ auctionConfigOverrides: {
+ interestGroupBuyers: [OTHER_ORIGIN1, window.location.origin]
+ }
+});
+
+makeTestForNoUpdate({
+ name: 'name cannot be updated.',
+ interestGroupFieldName: 'name',
+ responseOverride: 'new_name',
+ failedUpdateGroup: { name: 'name2' },
+});
+
+makeTestForNoUpdate({
+ name: 'executionMode not updated when unknown type.',
+ interestGroupFieldName: 'executionMode',
+ responseOverride: 'unknown-type',
+ failedUpdateGroup: { executionMode: 'compatibility' },
+});
+
+makeTestForNoUpdate({
+ name: 'trustedBiddingSignalsKeys not updated when bad value.',
+ interestGroupFieldName: 'trustedBiddingSignalsKeys',
+ responseOverride: 5,
+ failedUpdateGroup: {
+ trustedBiddingSignalsKeys: ['key'],
+ },
+});
+
diff --git a/testing/web-platform/tests/fledge/tentative/resources/fledge-util.sub.js b/testing/web-platform/tests/fledge/tentative/resources/fledge-util.sub.js
index 7be02e34ff..a7d0f63830 100644
--- a/testing/web-platform/tests/fledge/tentative/resources/fledge-util.sub.js
+++ b/testing/web-platform/tests/fledge/tentative/resources/fledge-util.sub.js
@@ -77,6 +77,15 @@ function createDirectFromSellerSignalsURL(origin = window.location.origin) {
return url.toString();
}
+function createUpdateURL(params = {}) {
+ let origin = window.location.origin;
+ let url = new URL(`${origin}${RESOURCE_PATH}update-url.py`);
+ url.searchParams.append('body', params.body);
+ url.searchParams.append('uuid', params.uuid);
+
+ return url.toString();
+}
+
// Generates a UUID and registers a cleanup method with the test fixture to
// request a URL from the request tracking script that clears all data
// associated with the generated uuid when requested.
@@ -142,19 +151,21 @@ async function waitForObservedRequests(uuid, expectedRequests, filter) {
trackedRequests = trackedRequests.filter(filter);
}
- // If expected number of requests have been observed, compare with list of
- // all expected requests and exit.
- if (trackedRequests.length >= expectedRequests.length) {
- assert_array_equals(trackedRequests, expectedRequests);
- break;
- }
-
// If fewer than total number of expected requests have been observed,
// compare what's been received so far, to have a greater chance to fail
// rather than hang on error.
for (const trackedRequest of trackedRequests) {
assert_in_array(trackedRequest, expectedRequests);
}
+
+ // If expected number of requests have been observed, compare with list of
+ // all expected requests and exit. This check was previously before the for loop,
+ // but was swapped in order to avoid flakiness with failing tests and their
+ // respective *-expected.txt.
+ if (trackedRequests.length >= expectedRequests.length) {
+ assert_array_equals(trackedRequests, expectedRequests);
+ break;
+ }
}
}
@@ -830,3 +841,21 @@ let additionalBidHelper = function() {
fetchAdditionalBids: fetchAdditionalBids
};
}();
+
+
+// DeprecatedRenderURLReplacements helper function.
+// Returns an object containing sample strings both before and after the
+// replacements in 'replacements' have been applied by
+// deprecatedRenderURLReplacements. All substitution strings will appear
+// only once in the output strings.
+function createStringBeforeAndAfterReplacements(deprecatedRenderURLReplacements) {
+ let beforeReplacements = '';
+ let afterReplacements = '';
+ if(deprecatedRenderURLReplacements){
+ for (const [match, replacement] of Object.entries(deprecatedRenderURLReplacements)) {
+ beforeReplacements += match + "/";
+ afterReplacements += replacement + "/";
+ }
+ }
+ return { beforeReplacements, afterReplacements };
+}
diff --git a/testing/web-platform/tests/fledge/tentative/resources/trusted-bidding-signals.py b/testing/web-platform/tests/fledge/tentative/resources/trusted-bidding-signals.py
index f9ca9031f1..955a7c0bdf 100644
--- a/testing/web-platform/tests/fledge/tentative/resources/trusted-bidding-signals.py
+++ b/testing/web-platform/tests/fledge/tentative/resources/trusted-bidding-signals.py
@@ -1,3 +1,4 @@
+import collections
import json
from urllib.parse import unquote_plus
@@ -47,7 +48,8 @@ def main(request, response):
response.status = (200, b"OK")
# The JSON representation of this is used as the response body. This does
- # not currently include a "perInterestGroupData" object.
+ # not currently include a "perInterestGroupData" object except for
+ # updateIfOlderThanMs.
responseBody = {"keys": {}}
# Set when certain special keys are observed, used in place of the JSON
@@ -117,6 +119,22 @@ def main(request, response):
if "data-version" in interestGroupNames:
dataVersion = "4"
+ per_interest_group_data = collections.defaultdict(dict)
+ for name in interestGroupNames:
+ if name == "use-update-if-older-than-ms":
+ # One hour in milliseconds.
+ per_interest_group_data[name]["updateIfOlderThanMs"] = 3_600_000
+ elif name == "use-update-if-older-than-ms-small":
+ # A value less than the minimum of 10 minutes.
+ per_interest_group_data[name]["updateIfOlderThanMs"] = 1
+ elif name == "use-update-if-older-than-ms-zero":
+ per_interest_group_data[name]["updateIfOlderThanMs"] = 0
+ elif name == "use-update-if-older-than-ms-negative":
+ per_interest_group_data[name]["updateIfOlderThanMs"] = -1
+
+ if per_interest_group_data:
+ responseBody["perInterestGroupData"] = dict(per_interest_group_data)
+
if contentType:
response.headers.set("Content-Type", contentType)
if adAuctionAllowed:
diff --git a/testing/web-platform/tests/fledge/tentative/resources/update-url.py b/testing/web-platform/tests/fledge/tentative/resources/update-url.py
new file mode 100644
index 0000000000..7de89e0f8f
--- /dev/null
+++ b/testing/web-platform/tests/fledge/tentative/resources/update-url.py
@@ -0,0 +1,6 @@
+def main(request, response):
+ response.status = (200, b"OK")
+ response.headers.set(b"Ad-Auction-Allowed", b"true")
+ response.headers.set(b"Content-Type", b"application/json")
+ body = request.GET.first(b"body", None)
+ return body \ No newline at end of file
diff --git a/testing/web-platform/tests/fledge/tentative/score-ad-browser-signals.https.window.js b/testing/web-platform/tests/fledge/tentative/score-ad-browser-signals.https.window.js
new file mode 100644
index 0000000000..f20412cfc7
--- /dev/null
+++ b/testing/web-platform/tests/fledge/tentative/score-ad-browser-signals.https.window.js
@@ -0,0 +1,57 @@
+// META: script=/resources/testdriver.js
+// META: script=/common/utils.js
+// META: script=resources/fledge-util.sub.js
+// META: script=/common/subset-tests.js
+// META: timeout=long
+
+"use strict;"
+
+// These tests focus on the browserSignals argument passed to scoreAd().
+
+subsetTest(promise_test, async test => {
+ const uuid = generateUuid(test);
+
+ let biddingLogicURL = createBiddingScriptURL(
+ {
+ generateBid:
+ `
+ return {
+ bid: 1,
+ render: { url: interestGroup.ads[0].renderURL,
+ width: '100sw',
+ height: '50px' }
+ };
+ `
+ });
+
+ let decisionLogicURL = createDecisionScriptURL(uuid,
+ {
+ scoreAd:
+ `
+ if (!browserSignals.hasOwnProperty('renderSize')) {
+ throw 'Missing renderSize member in browserSignals.';
+ }
+ if (browserSignals.renderSize.width !== '100sw' ||
+ browserSignals.renderSize.height !== '50px') {
+ throw 'Incorrect renderSize width or height.';
+ }
+ `
+ }
+ );
+
+ await joinGroupAndRunBasicFledgeTestExpectingWinner(
+ test,
+ {
+ uuid: uuid,
+ interestGroupOverrides: {
+ name: uuid,
+ biddingLogicURL: biddingLogicURL,
+ ads: [{ renderURL: createRenderURL(uuid), sizeGroup: 'group1' }],
+ adSizes: { 'size1': { width: '100sw', height: '50px' } },
+ sizeGroups: { 'group1': ['size1'] }
+ },
+ auctionConfigOverrides: {
+ decisionLogicURL: decisionLogicURL
+ }
+ });
+}, 'ScoreAd browserSignals renderSize test.');
diff --git a/testing/web-platform/tests/fledge/tentative/trusted-bidding-signals.https.window.js b/testing/web-platform/tests/fledge/tentative/trusted-bidding-signals.https.window.js
index d0b9a82086..905abf8381 100644
--- a/testing/web-platform/tests/fledge/tentative/trusted-bidding-signals.https.window.js
+++ b/testing/web-platform/tests/fledge/tentative/trusted-bidding-signals.https.window.js
@@ -17,7 +17,8 @@
// META: variant=?56-60
// META: variant=?61-65
// META: variant=?66-70
-// META: variant=?71-last
+// META: variant=?71-75
+// META: variant=?76-last
"use strict";
@@ -938,4 +939,44 @@ subsetTest(promise_test, async test => {
]
);
runBasicFledgeTestExpectingWinner(test, uuid);
-}, 'Trusted bidding signals splits the request if the combined URL length exceeds the limit of small value.'); \ No newline at end of file
+}, 'Trusted bidding signals splits the request if the combined URL length exceeds the limit of small value.');
+
+/////////////////////////////////////////////////////////////////////////////
+// updateIfOlderThanMs tests
+//
+// NOTE: Due to the lack of mock time in wpt, these test just exercise the code
+// paths and ensure that no crash occurs -- they don't otherwise verify
+// behavior.
+/////////////////////////////////////////////////////////////////////////////
+
+subsetTest(promise_test, async test => {
+ await runTrustedBiddingSignalsTest(
+ test,
+ 'true',
+ { name: 'use-update-if-older-than-ms',
+ trustedBiddingSignalsURL: TRUSTED_BIDDING_SIGNALS_URL });
+}, 'Trusted bidding signals response has updateIfOlderThanMs > 10 min.');
+
+subsetTest(promise_test, async test => {
+ await runTrustedBiddingSignalsTest(
+ test,
+ 'true',
+ { name: 'use-update-if-older-than-ms-small',
+ trustedBiddingSignalsURL: TRUSTED_BIDDING_SIGNALS_URL });
+}, 'Trusted bidding signals response has updateIfOlderThanMs == 1 ms.');
+
+subsetTest(promise_test, async test => {
+ await runTrustedBiddingSignalsTest(
+ test,
+ 'true',
+ { name: 'use-update-if-older-than-ms-zero',
+ trustedBiddingSignalsURL: TRUSTED_BIDDING_SIGNALS_URL });
+}, 'Trusted bidding signals response has updateIfOlderThanMs == 0 ms.');
+
+subsetTest(promise_test, async test => {
+ await runTrustedBiddingSignalsTest(
+ test,
+ 'true',
+ { name: 'use-update-if-older-than-ms-negative',
+ trustedBiddingSignalsURL: TRUSTED_BIDDING_SIGNALS_URL });
+}, 'Trusted bidding signals response has updateIfOlderThanMs == -1 ms.');
diff --git a/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html b/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html
index 35844bc91f..1b84b43f1c 100644
--- a/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html
+++ b/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html
@@ -20,36 +20,32 @@ function runTest() {
const innerIFrame = outerIFrame.contentDocument.createElement("iframe");
- window.onmessage = function() {
+ window.onmessage = function(event) {
+ if (event.data != "ready") {
+ return;
+ }
+
+ // We receive an message when the innerIFrame is ready and its input is focused.
+ // outerIframe is the ancestor of inner iframe, so the activeElement of
+ // it should be the inner iframe.
+ assert_equals(outerIFrame.contentDocument.activeElement, innerIFrame,
+ "The activeElement of the outer iframe should be the inner iframe");
+
+ // Now we focus the input in the top level
+ document.querySelector("input").focus();
+
// Wait for a bit to let whatever the code that might change the focus to run
window.requestAnimationFrame(function() {
window.requestAnimationFrame(function() {
window.requestAnimationFrame(function() {
-
- // We receive an message when the innerIFrame is ready and its input is focused.
- // outerIframe is the ancestor of inner iframe, so the activeElement of
- // it should be the inner iframe.
- assert_equals(outerIFrame.contentDocument.activeElement, innerIFrame,
- "The activeElement of the outer iframe should be the inner iframe");
-
- // Now we focus the input in the top level
- document.querySelector("input").focus();
-
- // Wait for a bit to let whatever the code that might change the focus to run
- window.requestAnimationFrame(function() {
- window.requestAnimationFrame(function() {
- window.requestAnimationFrame(function() {
- // Since inner iframe lost its focus, the activeElement of outer iframe
- // should be cleared as well, hence <body> should be focused.
- assert_equals(outerIFrame.contentDocument.activeElement, outerIFrame.contentDocument.body,
- "The activeElement of the outer iframe should be reverted back to <body>");
- assert_equals(document.activeElement, document.querySelector("input"),
- "The activeElement of the top-level document should the input");
- done();
- });
- });
- });
- });
+ // Since inner iframe lost its focus, the activeElement of outer iframe
+ // should be cleared as well, hence <body> should be focused.
+ assert_equals(outerIFrame.contentDocument.activeElement, outerIFrame.contentDocument.body,
+ "The activeElement of the outer iframe should be reverted back to <body>");
+ assert_equals(document.activeElement, document.querySelector("input"),
+ "The activeElement of the top-level document should the input");
+ done();
+ })
});
});
}
diff --git a/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html b/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html
index 83d39d5c70..fe96614517 100644
--- a/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html
+++ b/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html
@@ -2,8 +2,10 @@
<body>
<input />
<script>
- document.querySelector("input").focus();
- window.parent.parent.postMessage("ready", '*');
+ window.onload = function() {
+ document.querySelector("input").focus();
+ window.parent.parent.postMessage("ready", '*');
+ }
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/fonts/math/stretchy.woff b/testing/web-platform/tests/fonts/math/stretchy.woff
index eb67181e1e..ac7d908f6e 100644
--- a/testing/web-platform/tests/fonts/math/stretchy.woff
+++ b/testing/web-platform/tests/fonts/math/stretchy.woff
Binary files differ
diff --git a/testing/web-platform/tests/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otf b/testing/web-platform/tests/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otf
new file mode 100644
index 0000000000..1ec5a7dbea
--- /dev/null
+++ b/testing/web-platform/tests/fonts/noto/cjk/NotoSansCJKjp-Regular-subset-halt-min.otf
Binary files differ
diff --git a/testing/web-platform/tests/fonts/noto/cjk/README.md b/testing/web-platform/tests/fonts/noto/cjk/README.md
index a14fa64b42..c053ea8359 100644
--- a/testing/web-platform/tests/fonts/noto/cjk/README.md
+++ b/testing/web-platform/tests/fonts/noto/cjk/README.md
@@ -4,26 +4,16 @@ Fonts in this directory help testing the `text-spacing-trim` property.
## NotoSansCJKjp-Regular-subset-halt.otf
-This font is generated by the following command:
-```
-pyftsubset NotoSansCJKjp-Regular.otf \
- --unicodes=20-7E,2018-201F,56FD,6C34,3000-301F,30FB,FF01-FF1F,FF5B-FF65 \
- --layout-features+=halt,fwid,hwid,palt,pwid,vhal,vpal \
- --output-file=NotoSansCJKjp-Regular-subset-halt.otf
-```
-where `pyftsubset` comes from https://github.com/fonttools/fonttools
+Please see `subset.sh` to generate.
## NotoSansCJKjp-Regular-subset-chws.otf
This font has `chws` and `vchw` in addition to the font above.
-This font is generated by the following command:
-```
-pyftsubset NotoSansCJKjp-Regular.otf \
- --unicodes=20-7E,2018-201F,56FD,6C34,3000-301F,30FB,FF01-FF1F,FF5B-FF65 \
- --layout-features+=halt,fwid,hwid,palt,pwid,vhal,vpal,chws,vchw \
- --output-file=NotoSansCJKjp-Regular-subset-chws.otf
-```
Note there are two variants of Noto CJK; one with `chws` and one without.
The input font for this command must be the one with `chws`, processed by the
[chws_tool](https://github.com/googlefonts/chws_tool).
+
+## NotoSansCJKjp-Regular-subset-halt-min.otf
+
+This font is to test web fonts scenario where not all glyphs are available.
diff --git a/testing/web-platform/tests/fonts/noto/cjk/subset.sh b/testing/web-platform/tests/fonts/noto/cjk/subset.sh
new file mode 100755
index 0000000000..c348406676
--- /dev/null
+++ b/testing/web-platform/tests/fonts/noto/cjk/subset.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+#
+# Produces subset font files for testing the `text-spacing-trim` property.
+#
+# Requires `pyftsubset` from <https://github.com/fonttools/fonttools>.
+#
+range="--unicodes=20-7E,2018-201F,56FD,6C34,3000-301F,30FB,FF01-FF1F,FF5B-FF65"
+subrange="--unicodes=20-7E,56FD,FF08-FF09"
+features="--layout-features+=halt,fwid,hwid,palt,pwid,vhal,vpal"
+features_chws="$features,chws,vchw"
+for path in "$@"; do
+ filename="$(basename -- "$path")"
+ stem="${filename%.*}"
+ output_halt="$stem-subset-halt.otf"
+ output_chws="$stem-subset-chws.otf"
+ output_min="$stem-subset-halt-min.otf"
+ (set -x;
+ pyftsubset "$path" $range $features --output-file="$output_halt"
+ pyftsubset "$path" $range $features_chws --output-file="$output_chws"
+ pyftsubset "$output_halt" $subrange $features --output-file="$output_min"
+ )
+done
diff --git a/testing/web-platform/tests/gamepad/gamepad-dual-rumble-effect-manual.https.html b/testing/web-platform/tests/gamepad/gamepad-dual-rumble-effect-manual.https.html
new file mode 100644
index 0000000000..4a1c5ba8c5
--- /dev/null
+++ b/testing/web-platform/tests/gamepad/gamepad-dual-rumble-effect-manual.https.html
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title></title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <p>
+ This test requires a gamepad device to be connected. Please interact with
+ the gamepad for it to be recognized. The "Dual rumble!" button will be
+ enabled after that.
+ </p>
+ <p>
+ After pressing the "Dual rumble!" button below, you should expect all the
+ "dual-rumble" compatible gamepads to vibrate for one second.
+ </p>
+ <p>
+ Please press the "Confirm effect has played" button to conclude
+ the test.
+ </p>
+ <button id="play_dual_rumble_button" disabled>No dual-rumble gamepads detected</button>
+ <button id="confirm_effect_button" disabled>Confirm effect has played</button>
+ <script>
+ async_test(t => {
+ let connectedDualRumbleGamepads = {};
+ playEffectButton = document.getElementById('play_dual_rumble_button');
+
+ function isDualRumbleSupported(gamepad) {
+ return gamepad.vibrationActuator.effects.includes('dual-rumble');
+ }
+
+ window.addEventListener('gamepadconnected', (e) => {
+ if (!e.gamepad || !e.gamepad.vibrationActuator || !e.gamepad.vibrationActuator.effects) {
+ return;
+ }
+
+ if (isDualRumbleSupported(e.gamepad)) {
+ connectedDualRumbleGamepads[e.gamepad.index] = e.gamepad;
+
+ if (playEffectButton.disabled) {
+ playEffectButton.disabled = false;
+ playEffectButton.innerText = 'Dual rumble!'
+ }
+ }
+ });
+
+ window.addEventListener('gamepaddisconnected', (e) => {
+ delete connectedDualRumbleGamepads[e.gamepad.index];
+
+ let anyDualRumbleGamepad = false;
+ for (let index in connectedDualRumbleGamepads){
+ const gamepad = connectedDualRumbleGamepads[index];
+ if (!gamepad || !gamepad.vibrationActuator || !gamepad.vibrationActuator.effects) {
+ continue;
+ }
+
+ if (isDualRumbleSupported(gamepad)){
+ anyDualRumbleGamepad = true;
+ break;
+ }
+ }
+
+ if (!anyDualRumbleGamepad && !playEffectButton.disabled) {
+ playEffectButton.disabled = true;
+ playEffectButton.innerText = "No dual-rumble gamepads detected";
+ }
+ });
+
+ playEffectButton.addEventListener("click", () => {
+ let gamepads = navigator.getGamepads();
+ for (const gamepad of gamepads) {
+ if (gamepad && isDualRumbleSupported(gamepad)) {
+ gamepad.vibrationActuator.playEffect("dual-rumble", {
+ duration: 1000,
+ strongMagnitude: 1.0,
+ weakMagnitude: 1.0,
+ });
+ }
+ }
+
+ const confirmButton = document.getElementById("confirm_effect_button");
+ if (confirmButton.disabled) {
+ confirmButton.disabled = false;
+ }
+ confirmButton.addEventListener('click', () => {
+ t.done();
+ });
+ });
+ }, "Gamepads with dual-rumble capabilities should have the body's motors activated.");
+ </script>
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/gamepad/gamepad-trigger-rumble-effect-manual.https.html b/testing/web-platform/tests/gamepad/gamepad-trigger-rumble-effect-manual.https.html
new file mode 100644
index 0000000000..f436a60aac
--- /dev/null
+++ b/testing/web-platform/tests/gamepad/gamepad-trigger-rumble-effect-manual.https.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title></title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <p>
+ This test requires a gamepad device to be connected. Please interact with
+ the gamepad for it to be recognized. The "Trigger rumble!" button will be
+ enabled after that.
+ </p>
+ <p>
+ After pressing the "Trigger rumble!" button below, you should expect to
+ feel a localized vibration in both triggers of all connected
+ trigger-rumble compatible gamepads for one second.
+ </p>
+ <p>
+ Please press the "Confirm effect has played" button to conclude
+ the test.
+ </p>
+ <button id="play_trigger_rumble_button" disabled>No trigger-rumble gamepads detected</button>
+ <button id="confirm_effect_button" disabled>Confirm effect has played</button>
+ <script>
+ async_test(t => {
+ let connectedTriggerRumbleGamepads = {};
+ playEffectButton = document.getElementById('play_trigger_rumble_button');
+
+ function isTriggerRumbleSupported(gamepad) {
+ return gamepad.vibrationActuator.effects.includes('trigger-rumble');
+ }
+
+ window.addEventListener('gamepadconnected', (e) => {
+ if (!e.gamepad || !e.gamepad.vibrationActuator || !e.gamepad.vibrationActuator.effects) {
+ return;
+ }
+
+ if (isTriggerRumbleSupported(e.gamepad)) {
+ connectedTriggerRumbleGamepads[e.gamepad.index] = e.gamepad;
+
+ if (playEffectButton.disabled) {
+ playEffectButton.disabled = false;
+ playEffectButton.innerText = 'Trigger rumble!'
+ }
+ }
+ });
+
+ window.addEventListener('gamepaddisconnected', (e) => {
+ delete connectedTriggerRumbleGamepads[e.gamepad.index];
+
+ let anyTriggerRumbleGamepad = false;
+ for (let index in connectedTriggerRumbleGamepads){
+ const gamepad = connectedTriggerRumbleGamepads[index];
+ if (!gamepad || !gamepad.vibrationActuator || !gamepad.vibrationActuator.effects) {
+ continue;
+ }
+
+ if (isTriggerRumbleSupported(gamepad)){
+ anyTriggerRumbleGamepad = true;
+ break;
+ }
+ }
+
+ if (!anyTriggerRumbleGamepad && !playEffectButton.disabled) {
+ playEffectButton.disabled = true;
+ playEffectButton.innerText = "No trigger-rumble gamepads detected";
+ }
+ });
+
+ playEffectButton.addEventListener("click", () => {
+ let gamepads = navigator.getGamepads();
+ for (const gamepad of gamepads) {
+ if (gamepad && isTriggerRumbleSupported(gamepad)) {
+ gamepad.vibrationActuator.playEffect("trigger-rumble", {
+ duration: 1000,
+ leftTrigger: 1.0,
+ rightTrigger: 1.0,
+ });
+ }
+ }
+
+ const confirmButton = document.getElementById("confirm_effect_button");
+ if (confirmButton.disabled) {
+ confirmButton.disabled = false;
+ }
+ confirmButton.addEventListener('click', () => {
+ t.done();
+ });
+ });
+ }, "Gamepads with trigger-rumble capabilities should have the triggers' motors activated.");
+ </script>
+ </body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/geolocation-API/disabled-by-permissions-policy.https.sub.html b/testing/web-platform/tests/geolocation-API/disabled-by-permissions-policy.https.sub.html
index 6bd3e3500b..d3d94e1d3d 100644
--- a/testing/web-platform/tests/geolocation-API/disabled-by-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/geolocation-API/disabled-by-permissions-policy.https.sub.html
@@ -12,14 +12,13 @@
const same_origin_src =
"/permissions-policy/resources/permissions-policy-geolocation.html";
const cross_origin_src =
- "https://{{hosts[][]}}:{{ports[https][0]}}" + same_origin_src;
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
- promise_test(async (t) => {
- await test_driver.set_permission(
- { name: "geolocation" },
- "granted"
- );
+ promise_setup(async () => {
+ await test_driver.set_permission({ name: "geolocation" }, "granted");
+ });
+ promise_test(async (test) => {
const posError = await new Promise((resolve, reject) => {
navigator.geolocation.getCurrentPosition(reject, resolve);
});
@@ -49,22 +48,25 @@
);
}, "Permissions-Policy header geolocation=() disallows the top-level document.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- same_origin_src,
- expect_feature_unavailable_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=() disallows same-origin iframes.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- cross_origin_src,
- expect_feature_unavailable_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ feature_name: "geolocation",
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=() disallows cross-origin iframes.");
</script>
</body>
diff --git a/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html b/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html
index 864fb5e761..d25afa52bb 100644
--- a/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html
+++ b/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute-redirect-on-load.https.sub.html
@@ -1,36 +1,36 @@
<!DOCTYPE html>
<body>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/permissions-policy/resources/permissions-policy.js"></script>
-<script>
- "use strict";
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/permissions-policy/resources/permissions-policy.js"></script>
+ <script>
+ "use strict";
- const relative_path = "/permissions-policy/resources/permissions-policy-geolocation.html";
- const base_src = "/permissions-policy/resources/redirect-on-load.html#";
- const same_origin_src = base_src + relative_path;
- const cross_origin_src =
- `${base_src}https://{{hosts[][]}}:{{ports[https][0]}}${relative_path}`;
+ const relative_path =
+ "/permissions-policy/resources/permissions-policy-geolocation.html";
+ const base_src = "/permissions-policy/resources/redirect-on-load.html#";
+ const same_origin_src = base_src + relative_path;
+ const cross_origin_src = `${base_src}https://{{hosts[alt][]}}:{{ports[https][0]}}${relative_path}`;
- async_test(t => {
- test_feature_availability(
- 'geolocation',
- t,
- same_origin_src,
- expect_feature_available_default,
- "geolocation"
- );
- }, 'Permissions-Policy allow="geolocation" allows same-origin relocation');
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ });
+ }, 'Permissions-Policy allow="geolocation" allows same-origin redirection');
- async_test(t => {
- test_feature_availability(
- 'geolocation',
- t,
- cross_origin_src,
- expect_feature_available_default,
- "geolocation"
- );
- }, 'Permissions-Policy allow="geolocation" allows cross-origin relocation');
-
-</script>
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ feature_name: "geolocation",
+ });
+ }, 'Permissions-Policy allow="geolocation" allows cross-origin redirection');
+ </script>
</body>
diff --git a/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute.https.sub.html b/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute.https.sub.html
index 018409b829..50b8475b81 100644
--- a/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute.https.sub.html
+++ b/testing/web-platform/tests/geolocation-API/enabled-by-permission-policy-attribute.https.sub.html
@@ -9,7 +9,7 @@
const same_origin_src =
"/permissions-policy/resources/permissions-policy-geolocation.html";
const cross_origin_src =
- "https://{{hosts[][]}}:{{ports[https][0]}}" + same_origin_src;
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
async_test(t => {
test_feature_availability(
diff --git a/testing/web-platform/tests/geolocation-API/enabled-by-permissions-policy.https.sub.html b/testing/web-platform/tests/geolocation-API/enabled-by-permissions-policy.https.sub.html
index 007f79ab9c..332e4cea16 100644
--- a/testing/web-platform/tests/geolocation-API/enabled-by-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/geolocation-API/enabled-by-permissions-policy.https.sub.html
@@ -10,36 +10,42 @@
const same_origin_src =
"/permissions-policy/resources/permissions-policy-geolocation.html";
const cross_origin_src =
- "https://{{hosts[][]}}:{{ports[https][0]}}" + same_origin_src;
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
- promise_test(async (t) => {
+ promise_setup(async () => {
await test_driver.set_permission({ name: "geolocation" }, "granted");
- const result = await new Promise((resolve, reject) => {
+ });
+
+ promise_test(async (test) => {
+ const position = await new Promise((resolve, reject) => {
navigator.geolocation.getCurrentPosition(resolve, reject);
});
assert_true(
- result instanceof GeolocationPosition,
+ position instanceof GeolocationPosition,
"Expected a GeolocationPosition"
);
}, "Permissions-Policy header geolocation=* allows the top-level document.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- same_origin_src,
- expect_feature_available_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=* allows same-origin iframes.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- cross_origin_src,
- expect_feature_available_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ feature_name: "geolocation",
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=* allows cross-origin iframes.");
</script>
</body>
diff --git a/testing/web-platform/tests/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html b/testing/web-platform/tests/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html
index d879c1c543..5940888b35 100644
--- a/testing/web-platform/tests/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/geolocation-API/enabled-on-self-origin-by-permissions-policy.https.sub.html
@@ -12,31 +12,42 @@
const same_origin_src =
"/permissions-policy/resources/permissions-policy-geolocation.html";
const cross_origin_src =
- "https://{{hosts[][]}}:{{ports[https][0]}}" + same_origin_src;
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
- promise_test(async (t) => {
+
+ promise_setup(async () => {
await test_driver.set_permission({ name: "geolocation" }, "granted");
- await new Promise((resolve, reject) => {
+ });
+
+ promise_test(async (t) => {
+ const position = await new Promise((resolve, reject) => {
navigator.geolocation.getCurrentPosition(resolve, reject);
});
+ assert_true(
+ position instanceof GeolocationPosition,
+ "Expected a GeolocationPosition"
+ );
}, "Permissions-Policy header geolocation=(self) allows the top-level document.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- same_origin_src,
- expect_feature_available_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=(self) allows same-origin iframes.");
- async_test((t) => {
- test_feature_availability(
- "geolocation",
- t,
- cross_origin_src,
- expect_feature_unavailable_default
- );
+ promise_test(async (test) => {
+ await test_feature_availability({
+ feature_description: "Geolocation API",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ feature_name: "geolocation",
+ is_promise_test: true,
+ });
}, "Permissions-Policy header geolocation=(self) disallows cross-origin iframes.");
</script>
</body>
diff --git a/testing/web-platform/tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-position-inline-nearest.html b/testing/web-platform/tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-position-inline-nearest.html
new file mode 100644
index 0000000000..4aab0aa5e5
--- /dev/null
+++ b/testing/web-platform/tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-position-inline-nearest.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html style="writing-mode: vertical-lr;">
+<head>
+<meta charset="UTF-8">
+<title>Fragment Navigation: inline start position should not scroll out of content range</title>
+<link rel="help" href="https://html.spec.whatwg.org/multipage/#scroll-to-the-fragment-identifier">
+<link rel="author" href="mailto:mrobinson@igalia.com" title="Martin Robinson">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+</head>
+<body>
+ <!-- When scrolling to this fragment the viewport inline position should not
+ change because, it is already fully enclosed by the viewport and page width. -->
+ <div id="test1" style="position: absolute; top: 5000px; left: 100px; height: 100px; width: 100px;"></div>
+<script>
+
+var t = async_test("ScrollToFragment");
+t.step(() => {
+ location.hash = "test1";
+ setTimeout(t.step_func(() => {
+ assert_true(window.scrollY > 0);
+ assert_true(window.scrollY < 5000);
+ assert_equals(window.scrollX, 0);
+ t.done();
+ }));
+});
+
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html
deleted file mode 100644
index 59d66c383c..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsl-clamp-1</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsl-clamp-1</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsl-clamp-1.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsl(120, 200%, 50%)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,255,0,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html
deleted file mode 100644
index 1a1939e47a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsl-clamp-2</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsl-clamp-2</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsl-clamp-2.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsl(120, -200%, 49.9%)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 127,127,127,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html
deleted file mode 100644
index 56f3a0a8b5..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsl-clamp-3</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsl-clamp-3</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsl-clamp-3.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsl(120, 100%, 200%)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 255,255,255,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.png
deleted file mode 100644
index bf48767a88..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-3.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html
deleted file mode 100644
index af9d11e678..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsl-clamp-4</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsl-clamp-4</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsl-clamp-4.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsl(120, 100%, -200%)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,0,0,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.png
deleted file mode 100644
index d638d03386..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-4.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html
new file mode 100644
index 0000000000..65440c6228
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.fillStyle.parse.hsl-clamp-negative-saturation</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+<body class="show_output">
+
+<h1>2d.fillStyle.parse.hsl-clamp-negative-saturation</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<p class="output">Actual output:</p>
+<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
+<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsl-clamp-negative-saturation.png" class="output expected" id="expected" alt="">
+<ul id="d"></ul>
+<script>
+var t = async_test("");
+_addTest(function(canvas, ctx) {
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsl(120, -200%, 49.9%)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+
+});
+</script>
+
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.png
index 88fd827985..88fd827985 100644
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-2.png
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.png
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html
deleted file mode 100644
index 2acac26e1a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-1</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-1</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-1.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, 200%, 50%, 1)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,255,0,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.png
deleted file mode 100644
index 2733836c99..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-1.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html
deleted file mode 100644
index 0f32fb5474..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-2</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-2</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-2.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, -200%, 49.9%, 1)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 127,127,127,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html
deleted file mode 100644
index 4bc134aec5..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-3</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-3</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-3.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, 100%, 200%, 1)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 255,255,255,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.png
deleted file mode 100644
index bf48767a88..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-3.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html
deleted file mode 100644
index f8b2382755..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-4</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-4</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-4.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, 100%, -200%, 1)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,0,0,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.png
deleted file mode 100644
index d638d03386..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-4.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html
deleted file mode 100644
index 9c5e2258b9..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-5</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-5</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-5.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, 100%, 50%, 2)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,255,0,255);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.png
deleted file mode 100644
index 2733836c99..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-5.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html
deleted file mode 100644
index 153515eedd..0000000000
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-6</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.fillStyle.parse.hsla-clamp-6</h1>
-<p class="desc"></p>
-
-<p class="notes">
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-6.png" class="output expected" id="expected" alt="">
-<ul id="d"></ul>
-<script>
-var t = async_test("");
-_addTest(function(canvas, ctx) {
-
- ctx.fillStyle = '#f00';
- ctx.fillStyle = 'hsla(120, 100%, 0%, -2)';
- ctx.fillRect(0, 0, 100, 50);
- _assertPixel(canvas, 50,25, 0,0,0,0);
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html
new file mode 100644
index 0000000000..e5dc98d4e3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-alpha-1</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+<body class="show_output">
+
+<h1>2d.fillStyle.parse.hsla-clamp-alpha-1</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<p class="output">Actual output:</p>
+<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
+<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-alpha-1.png" class="output expected" id="expected" alt="">
+<ul id="d"></ul>
+<script>
+var t = async_test("");
+_addTest(function(canvas, ctx) {
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 50%, 2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,255,0,255);
+
+});
+</script>
+
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.png
index 2733836c99..2733836c99 100644
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-1.png
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.png
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html
new file mode 100644
index 0000000000..26139a562e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-alpha-2</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+<body class="show_output">
+
+<h1>2d.fillStyle.parse.hsla-clamp-alpha-2</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<p class="output">Actual output:</p>
+<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
+<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-alpha-2.png" class="output expected" id="expected" alt="">
+<ul id="d"></ul>
+<script>
+var t = async_test("");
+_addTest(function(canvas, ctx) {
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 0%, -2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,0,0,0);
+
+});
+</script>
+
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.png
index eeedd0ff05..eeedd0ff05 100644
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-6.png
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.png
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html
new file mode 100644
index 0000000000..2d9b9d3bdf
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.fillStyle.parse.hsla-clamp-negative-saturation</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+<body class="show_output">
+
+<h1>2d.fillStyle.parse.hsla-clamp-negative-saturation</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<p class="output">Actual output:</p>
+<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
+<p class="output expectedtext">Expected output:<p><img src="2d.fillStyle.parse.hsla-clamp-negative-saturation.png" class="output expected" id="expected" alt="">
+<ul id="d"></ul>
+<script>
+var t = async_test("");
+_addTest(function(canvas, ctx) {
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, -200%, 49.9%, 1)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+
+});
+</script>
+
diff --git a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.png b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.png
index 88fd827985..88fd827985 100644
--- a/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-2.png
+++ b/testing/web-platform/tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.png
Binary files differ
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html
deleted file mode 100644
index dac31c97f1..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html
deleted file mode 100644
index f4c8c1033a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html
deleted file mode 100644
index 88d0cb2de2..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 1" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html
deleted file mode 100644
index b3efcb8c3e..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- });
- ctx.fillRect(25, 25, 50, 50);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html
deleted file mode 100644
index 744983d4ae..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="1 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html
deleted file mode 100644
index d5cc6e0058..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html
new file mode 100644
index 0000000000..c1ca0ab46f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.tentative</title>
+<h1 style="font-size: 20px;">2d.filter.canvasFilterObject.gaussianBlur.tentative</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur0" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 0" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur0)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur1" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 1" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur1)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur2" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur2)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur3" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="1 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur3)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>y-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur4" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="0 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur4)" />
+ </svg>
+ </div>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html
new file mode 100644
index 0000000000..498418c292
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html">
+<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.tentative</title>
+<h1 style="font-size: 20px;">2d.filter.canvasFilterObject.gaussianBlur.tentative</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas2");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas3");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas4");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html
deleted file mode 100644
index e611113e42..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 0" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html
deleted file mode 100644
index 4e8576fe74..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- });
- ctx.fillRect(25, 25, 50, 50);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html
deleted file mode 100644
index c6d915cb07..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="0 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html
deleted file mode 100644
index ec0a2353cf..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur-expected.html
new file mode 100644
index 0000000000..f24e9d0dba
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur-expected.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.filter.layers.gaussianBlur</title>
+<h1 style="font-size: 20px;">2d.filter.layers.gaussianBlur</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur0" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 0" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur0)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur1" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 1" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur1)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur2" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur2)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur3" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="1 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur3)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>y-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur4" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="0 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur4)" />
+ </svg>
+ </div>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html
new file mode 100644
index 0000000000..19db679076
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.filter.layers.gaussianBlur-expected.html">
+<title>Canvas test: 2d.filter.layers.gaussianBlur</title>
+<h1 style="font-size: 20px;">2d.filter.layers.gaussianBlur</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas2");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas3");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas4");
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html
deleted file mode 100644
index 4f93754862..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.isotropic</title>
-<h1>2d.filter.layers.gaussianBlur.isotropic</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html
deleted file mode 100644
index a2cc098896..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.isotropic.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.isotropic-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.isotropic</title>
-<h1>2d.filter.layers.gaussianBlur.isotropic</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html
deleted file mode 100644
index 255270c192..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-x</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-x</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 1" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html
deleted file mode 100644
index 0090e0e71e..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-x.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-x-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-x</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-x</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html
deleted file mode 100644
index 76a46b1533..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-y</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-y</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="1 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html
deleted file mode 100644
index 5c481cbe25..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.mostly-y.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-y-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-y</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-y</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only-expected.html
deleted file mode 100644
index 26741f9847..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.x-only</title>
-<h1>2d.filter.layers.gaussianBlur.x-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 0" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html
deleted file mode 100644
index f7940eb921..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.x-only.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.x-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.x-only</title>
-<h1>2d.filter.layers.gaussianBlur.x-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only-expected.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only-expected.html
deleted file mode 100644
index d00eec6b57..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.y-only</title>
-<h1>2d.filter.layers.gaussianBlur.y-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="0 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html b/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html
deleted file mode 100644
index 59421a1ff3..0000000000
--- a/testing/web-platform/tests/html/canvas/element/filters/2d.filter.layers.gaussianBlur.y-only.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.y-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.y-only</title>
-<h1>2d.filter.layers.gaussianBlur.y-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.beginLayer-options.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.beginLayer-options.html
index 658d7e0991..573d300055 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.beginLayer-options.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.beginLayer-options.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Checks beginLayer works for different option parameter values");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
ctx.beginLayer(); ctx.endLayer();
ctx.beginLayer(null); ctx.endLayer();
@@ -45,6 +46,6 @@ _addTest(function(canvas, ctx) {
ctx.beginLayer({filter: true}); ctx.endLayer();
ctx.beginLayer({filter: false}); ctx.endLayer();
-});
+}, "Checks beginLayer works for different option parameter values");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.ctm.getTransform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.ctm.getTransform.html
index 7a69c59527..d669b3c522 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.ctm.getTransform.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.ctm.getTransform.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Tests getTransform inside layers.");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
ctx.translate(10, 20);
ctx.beginLayer();
@@ -26,6 +27,6 @@ _addTest(function(canvas, ctx) {
assert_array_equals([m.a, m.b, m.c, m.d, m.e, m.f], [2, 0, 0, 3, 10, 20]);
ctx.endLayer();
-});
+}, "Tests getTransform inside layers.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.exceptions-are-no-op.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.exceptions-are-no-op.html
index 7ab2080fca..facffd74e9 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.exceptions-are-no-op.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.exceptions-are-no-op.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Checks that the context state is left unchanged if beginLayer throws.");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
// Get `beginLayer` to throw while parsing the filter.
assert_throws_js(TypeError,
@@ -26,6 +27,6 @@ _addTest(function(canvas, ctx) {
// `beginLayer` shouldn't have opened the layer, so `endLayer` should throw.
assert_throws_dom("InvalidStateError", () => ctx.endLayer());
-});
+}, "Checks that the context state is left unchanged if beginLayer throws.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha-expected.html
deleted file mode 100644
index 0666e3098a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha</title>
-<h1>2d.layer.global-states.alpha</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending-expected.html
deleted file mode 100644
index 8a45027588..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending-expected.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.blending</title>
-<h1>2d.layer.global-states.alpha.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html
deleted file mode 100644
index 8e15a2b936..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending</title>
-<h1>2d.layer.global-states.alpha.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow-expected.html
deleted file mode 100644
index f7b633b35f..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow-expected.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html
deleted file mode 100644
index c8c6d433bc..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.blending.shadow.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite-expected.html
deleted file mode 100644
index 951049e638..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite-expected.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.composite</title>
-<h1>2d.layer.global-states.alpha.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html
deleted file mode 100644
index 1ac6a2cbfe..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite</title>
-<h1>2d.layer.global-states.alpha.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow-expected.html
deleted file mode 100644
index 0ae93871f5..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow-expected.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html
deleted file mode 100644
index 92b8a0d7a7..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.composite.shadow.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.html
deleted file mode 100644
index 829796acbf..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha</title>
-<h1>2d.layer.global-states.alpha</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow-expected.html
deleted file mode 100644
index 6f764c5001..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.shadow</title>
-<h1>2d.layer.global-states.alpha.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html
deleted file mode 100644
index a325302b3b..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.alpha.shadow.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.shadow</title>
-<h1>2d.layer.global-states.alpha.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending-expected.html
deleted file mode 100644
index 33fdf46a28..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.blending</title>
-<h1>2d.layer.global-states.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.html
deleted file mode 100644
index 7d4d9ae4b5..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending</title>
-<h1>2d.layer.global-states.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..c56f13f2fd
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html
new file mode 100644
index 0000000000..91decadfe2
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..e5f8ba0db4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html
new file mode 100644
index 0000000000..d6b28315f2
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow-expected.html
deleted file mode 100644
index 6f969074f9..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.blending.shadow</title>
-<h1>2d.layer.global-states.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html
deleted file mode 100644
index 51926d76d8..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending.shadow</title>
-<h1>2d.layer.global-states.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..debbd430c4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html
new file mode 100644
index 0000000000..e0b8e45b51
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation-expected.html
new file mode 100644
index 0000000000..75a55e591b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html
new file mode 100644
index 0000000000..f3891369c9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.blending.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite-expected.html
deleted file mode 100644
index ed7669c4cf..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.composite</title>
-<h1>2d.layer.global-states.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.html
deleted file mode 100644
index 898d149924..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite</title>
-<h1>2d.layer.global-states.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..cf87559582
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html
new file mode 100644
index 0000000000..195905e16b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..2f9bb208fb
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html
new file mode 100644
index 0000000000..905fd7637b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow-expected.html
deleted file mode 100644
index b687c27f47..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.composite.shadow</title>
-<h1>2d.layer.global-states.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html
deleted file mode 100644
index c563a57b76..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite.shadow</title>
-<h1>2d.layer.global-states.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..2b4436806a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html
new file mode 100644
index 0000000000..df008cf12e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation-expected.html
new file mode 100644
index 0000000000..da144975a5
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html
new file mode 100644
index 0000000000..99e1d95443
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.composite.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..489d432282
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html
new file mode 100644
index 0000000000..1720f20589
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..63913ffb05
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html
new file mode 100644
index 0000000000..87cd91bb12
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..021581f892
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html
new file mode 100644
index 0000000000..e8d01065c1
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation-expected.html
new file mode 100644
index 0000000000..dd9a5c2a00
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html
new file mode 100644
index 0000000000..5c7fa379f1
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.copy.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha-expected.html
deleted file mode 100644
index f304700feb..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha</title>
-<h1>2d.layer.global-states.filter.alpha</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending-expected.html
deleted file mode 100644
index 7c91ce4229..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending-expected.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending</title>
-<h1>2d.layer.global-states.filter.alpha.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html
deleted file mode 100644
index 98ea67e9e9..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-2453">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending</title>
-<h1>2d.layer.global-states.filter.alpha.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html
deleted file mode 100644
index 62942ffeae..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html
deleted file mode 100644
index ccadfb624b..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.blending.shadow.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite-expected.html
deleted file mode 100644
index 8e0d98648e..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite-expected.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite</title>
-<h1>2d.layer.global-states.filter.alpha.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html
deleted file mode 100644
index 29041d4933..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-5204">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite</title>
-<h1>2d.layer.global-states.filter.alpha.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html
deleted file mode 100644
index a649972546..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html
deleted file mode 100644
index b2907f02aa..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.composite.shadow.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html
deleted file mode 100644
index 85718cffba..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6766">
-<title>Canvas test: 2d.layer.global-states.filter.alpha</title>
-<h1>2d.layer.global-states.filter.alpha</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow-expected.html
deleted file mode 100644
index 169baee29b..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html
deleted file mode 100644
index aaeb167ccf..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.alpha.shadow.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.shadow-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6311">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending-expected.html
deleted file mode 100644
index f81dcf72dc..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.blending</title>
-<h1>2d.layer.global-states.filter.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.html
deleted file mode 100644
index 31628812c2..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending</title>
-<h1>2d.layer.global-states.filter.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..482ab25a85
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html
new file mode 100644
index 0000000000..188d5ea98b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..3af6b863ed
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html
new file mode 100644
index 0000000000..849a0c997e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow-expected.html
deleted file mode 100644
index 91f3725f8e..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.blending.shadow</title>
-<h1>2d.layer.global-states.filter.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html
deleted file mode 100644
index e54cf06d0d..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending.shadow</title>
-<h1>2d.layer.global-states.filter.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d530ef9d19
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html
new file mode 100644
index 0000000000..34ded8fef5
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html
new file mode 100644
index 0000000000..80705c36fd
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html
new file mode 100644
index 0000000000..78407dd459
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.blending.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite-expected.html
deleted file mode 100644
index 97e85a1593..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.composite</title>
-<h1>2d.layer.global-states.filter.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.html
deleted file mode 100644
index d7e365422f..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite</title>
-<h1>2d.layer.global-states.filter.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..2f513bff0a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html
new file mode 100644
index 0000000000..e3c36d3c0e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..242973300f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html
new file mode 100644
index 0000000000..466513864e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow-expected.html
deleted file mode 100644
index 4716bb2760..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.composite.shadow</title>
-<h1>2d.layer.global-states.filter.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html
deleted file mode 100644
index e5c7698634..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite.shadow</title>
-<h1>2d.layer.global-states.filter.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..c8926e5e15
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html
new file mode 100644
index 0000000000..bc7cfd314e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html
new file mode 100644
index 0000000000..e70fe3e92d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html
new file mode 100644
index 0000000000..f304e9c8e8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.composite.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..21aa241aca
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html
new file mode 100644
index 0000000000..ac5c7303a8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..b2b46ee039
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html
new file mode 100644
index 0000000000..3158a2fff3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d11326d5d6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html
new file mode 100644
index 0000000000..839ab13add
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html
new file mode 100644
index 0000000000..3ac098c344
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html
new file mode 100644
index 0000000000..7c090165f5
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.copy.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..a445ae2c4a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html
new file mode 100644
index 0000000000..d2b2d806c4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..610c601b1c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html
new file mode 100644
index 0000000000..afc4ebbd40
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..6bd4501584
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html
new file mode 100644
index 0000000000..93caac12fc
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html
new file mode 100644
index 0000000000..b60a5526d9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html
new file mode 100644
index 0000000000..6849a2f40d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states-expected.html
deleted file mode 100644
index e56fe0b360..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.no-global-states</title>
-<h1>2d.layer.global-states.filter.no-global-states</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html
deleted file mode 100644
index 68f4d5004a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.no-global-states.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.no-global-states</title>
-<h1>2d.layer.global-states.filter.no-global-states</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow-expected.html
deleted file mode 100644
index 13ba2dd4cd..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow-expected.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.shadow</title>
-<h1>2d.layer.global-states.filter.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html
deleted file mode 100644
index 9efcd9d4f7..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.filter.shadow.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.shadow</title>
-<h1>2d.layer.global-states.filter.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d1a799707f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html
new file mode 100644
index 0000000000..f0fd2d19e3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..cc91a67faf
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html
new file mode 100644
index 0000000000..7ab850023e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..02b239116c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html
new file mode 100644
index 0000000000..9da1936c5d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html
new file mode 100644
index 0000000000..06f6a2dff3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html
new file mode 100644
index 0000000000..00ace7c54d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states-expected.html
deleted file mode 100644
index b91a2ae8b5..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.no-global-states</title>
-<h1>2d.layer.global-states.no-global-states</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states.html
deleted file mode 100644
index d561be2341..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.no-global-states.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.no-global-states</title>
-<h1>2d.layer.global-states.no-global-states</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow-expected.html
deleted file mode 100644
index 835e9d420a..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow-expected.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.shadow</title>
-<h1>2d.layer.global-states.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow.html
deleted file mode 100644
index 209316164c..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.global-states.shadow.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.shadow</title>
-<h1>2d.layer.global-states.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation-expected.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation-expected.html
new file mode 100644
index 0000000000..02a8915c0b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation-expected.html
@@ -0,0 +1,910 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.globalCompositeOperation</title>
+<h1 style="font-size: 20px;">2d.layer.globalCompositeOperation</h1>
+<p class="desc">Checks that layers work with all globalCompositeOperation values.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(7, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>source-over</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-in</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-atop</div>
+ <canvas id="canvas2" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas2");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-over</div>
+ <canvas id="canvas3" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas3");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-in</div>
+ <canvas id="canvas4" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas4");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-out</div>
+ <canvas id="canvas5" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas5");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-out';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-atop</div>
+ <canvas id="canvas6" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas6");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighter</div>
+ <canvas id="canvas7" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas7");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighter';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>copy</div>
+ <canvas id="canvas8" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas8");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>xor</div>
+ <canvas id="canvas9" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas9");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'xor';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>multiply</div>
+ <canvas id="canvas10" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas10");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>screen</div>
+ <canvas id="canvas11" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas11");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'screen';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>overlay</div>
+ <canvas id="canvas12" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas12");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'overlay';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>darken</div>
+ <canvas id="canvas13" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas13");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'darken';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighten</div>
+ <canvas id="canvas14" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas14");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighten';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-dodge</div>
+ <canvas id="canvas15" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas15");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-dodge';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-burn</div>
+ <canvas id="canvas16" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas16");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-burn';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hard-light</div>
+ <canvas id="canvas17" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas17");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hard-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>soft-light</div>
+ <canvas id="canvas18" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas18");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'soft-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>difference</div>
+ <canvas id="canvas19" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas19");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'difference';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>exclusion</div>
+ <canvas id="canvas20" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas20");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'exclusion';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hue</div>
+ <canvas id="canvas21" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas21");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hue';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>saturation</div>
+ <canvas id="canvas22" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas22");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'saturation';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color</div>
+ <canvas id="canvas23" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas23");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>luminosity</div>
+ <canvas id="canvas24" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas24");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'luminosity';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation.html
new file mode 100644
index 0000000000..32809d852c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.globalCompositeOperation.html
@@ -0,0 +1,861 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.globalCompositeOperation-expected.html">
+<title>Canvas test: 2d.layer.globalCompositeOperation</title>
+<h1 style="font-size: 20px;">2d.layer.globalCompositeOperation</h1>
+<p class="desc">Checks that layers work with all globalCompositeOperation values.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(7, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>source-over</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>source-in</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>source-atop</div>
+ <canvas id="canvas2" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas2");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>destination-over</div>
+ <canvas id="canvas3" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas3");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>destination-in</div>
+ <canvas id="canvas4" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas4");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>destination-out</div>
+ <canvas id="canvas5" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas5");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-out';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>destination-atop</div>
+ <canvas id="canvas6" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas6");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>lighter</div>
+ <canvas id="canvas7" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas7");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighter';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>copy</div>
+ <canvas id="canvas8" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas8");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>xor</div>
+ <canvas id="canvas9" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas9");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'xor';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>multiply</div>
+ <canvas id="canvas10" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas10");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>screen</div>
+ <canvas id="canvas11" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas11");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'screen';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>overlay</div>
+ <canvas id="canvas12" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas12");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'overlay';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>darken</div>
+ <canvas id="canvas13" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas13");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'darken';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>lighten</div>
+ <canvas id="canvas14" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas14");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighten';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>color-dodge</div>
+ <canvas id="canvas15" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas15");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-dodge';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>color-burn</div>
+ <canvas id="canvas16" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas16");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-burn';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>hard-light</div>
+ <canvas id="canvas17" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas17");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hard-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>soft-light</div>
+ <canvas id="canvas18" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas18");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'soft-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>difference</div>
+ <canvas id="canvas19" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas19");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'difference';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>exclusion</div>
+ <canvas id="canvas20" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas20");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'exclusion';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>hue</div>
+ <canvas id="canvas21" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas21");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hue';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>saturation</div>
+ <canvas id="canvas22" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas22");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'saturation';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>color</div>
+ <canvas id="canvas23" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas23");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+<span>
+ <div>luminosity</div>
+ <canvas id="canvas24" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas24");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'luminosity';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
index 74e05e1e48..1544bbcb82 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on beginLayer() + reset() + endLayer().");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.beginLayer();
@@ -25,6 +26,6 @@ _addTest(function(canvas, ctx) {
ctx.endLayer();
});
-});
+}, "Raises exception on beginLayer() + reset() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-restore.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-restore.html
index 1979cb6c73..3d33fbf7fb 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-restore.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-restore.html
@@ -16,14 +16,15 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on beginLayer() + restore().");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.beginLayer();
ctx.restore();
});
-});
+}, "Raises exception on beginLayer() + restore().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
index c635ac75b9..e48f806f32 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on beginLayer() + save() + endLayer().");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.beginLayer();
@@ -25,6 +26,6 @@ _addTest(function(canvas, ctx) {
ctx.endLayer();
});
-});
+}, "Raises exception on beginLayer() + save() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.endLayer.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.endLayer.html
index c39a352d65..2950de37bc 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.endLayer.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.endLayer.html
@@ -16,13 +16,14 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on lone endLayer calls.");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.endLayer();
});
-});
+}, "Raises exception on lone endLayer calls.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-beginLayer-restore.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
index e2d4d56589..ff21610074 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
@@ -16,8 +16,9 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on save() + beginLayer() + restore().");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.save();
@@ -25,6 +26,6 @@ _addTest(function(canvas, ctx) {
ctx.restore();
});
-});
+}, "Raises exception on save() + beginLayer() + restore().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-endLayer.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-endLayer.html
index f4308e1191..5c6da4b5bc 100644
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.invalid-calls.save-endLayer.html
@@ -16,14 +16,15 @@
<ul id="d"></ul>
<script>
-var t = async_test("Raises exception on save() + endLayer().");
-_addTest(function(canvas, ctx) {
+test(t => {
+ var canvas = document.getElementById('c');
+ var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.save();
ctx.endLayer();
});
-});
+}, "Raises exception on save() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html
deleted file mode 100644
index f1204aa61b..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations-with-promises.createImageBitmap</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations-with-promises.createImageBitmap</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-promise_test(async t => {
-
- var canvas = document.getElementById('c');
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await createImageBitmap(canvas);
- // Make sure the exception isn't caused by calling the function twice.
- await createImageBitmap(canvas);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', createImageBitmap(canvas));
-
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html
new file mode 100644
index 0000000000..8e81bffdfb
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.malformed-operations-with-promises</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+
+<script>
+
+promise_test(async t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await createImageBitmap(canvas);
+ // Make sure the exception isn't caused by calling the function twice.
+ await createImageBitmap(canvas);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ createImageBitmap(canvas));
+}, "Throws if createImageBitmap is called while layers are open.");
+
+promise_test(async t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await new Promise(resolve => canvas.toBlob(resolve));
+ // Make sure the exception isn't caused by calling the function twice.
+ await new Promise(resolve => canvas.toBlob(resolve));
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ new Promise(resolve => canvas.toBlob(resolve)));
+}, "Throws if toBlob is called while layers are open.");
+
+</script>
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html
deleted file mode 100644
index 6c69bb3784..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations-with-promises.toBlob.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations-with-promises.toBlob</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations-with-promises.toBlob</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-promise_test(async t => {
-
- var canvas = document.getElementById('c');
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await new Promise(resolve => canvas.toBlob(resolve));
- // Make sure the exception isn't caused by calling the function twice.
- await new Promise(resolve => canvas.toBlob(resolve));
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', new Promise(resolve => canvas.toBlob(resolve)));
-
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html
deleted file mode 100644
index f927b96524..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.createPattern.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations.createPattern</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations.createPattern</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-_addTest(function(canvas, ctx) {
-
- // Shouldn't throw on its own.
- ctx.createPattern(canvas, 'repeat');
- // Make sure the exception isn't caused by calling the function twice.
- ctx.createPattern(canvas, 'repeat');
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.createPattern(canvas, 'repeat'));
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html
deleted file mode 100644
index 8bcc89d38e..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.drawImage.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations.drawImage</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations.drawImage</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-_addTest(function(canvas, ctx) {
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d');
- // Shouldn't throw on its own.
- ctx2.drawImage(canvas, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx2.drawImage(canvas, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx2.drawImage(canvas, 0, 0));
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html
deleted file mode 100644
index 5dc3fcc017..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.getImageData.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations.getImageData</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations.getImageData</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-_addTest(function(canvas, ctx) {
-
- // Shouldn't throw on its own.
- ctx.getImageData(0, 0, 200, 200);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.getImageData(0, 0, 200, 200);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.getImageData(0, 0, 200, 200));
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.html
new file mode 100644
index 0000000000..cf6e7a80db
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.malformed-operations</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+
+<script>
+
+test(t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.createPattern(canvas, 'repeat');
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.createPattern(canvas, 'repeat');
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.createPattern(canvas, 'repeat'));
+}, "Throws if createPattern is called while layers are open.");
+
+test(t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d');
+ // Shouldn't throw on its own.
+ ctx2.drawImage(canvas, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx2.drawImage(canvas, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx2.drawImage(canvas, 0, 0));
+}, "Throws if drawImage is called while layers are open.");
+
+test(t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.getImageData(0, 0, 200, 200);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.getImageData(0, 0, 200, 200);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.getImageData(0, 0, 200, 200));
+}, "Throws if getImageData is called while layers are open.");
+
+test(t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d')
+ const data = ctx2.getImageData(0, 0, 1, 1);
+ // Shouldn't throw on its own.
+ ctx.putImageData(data, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.putImageData(data, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.putImageData(data, 0, 0));
+}, "Throws if putImageData is called while layers are open.");
+
+test(t => {
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ canvas.toDataURL();
+ // Make sure the exception isn't caused by calling the function twice.
+ canvas.toDataURL();
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => canvas.toDataURL());
+}, "Throws if toDataURL is called while layers are open.");
+
+</script>
+</div>
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html
deleted file mode 100644
index fd4fc262c2..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.putImageData.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations.putImageData</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations.putImageData</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-_addTest(function(canvas, ctx) {
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d')
- const data = ctx2.getImageData(0, 0, 1, 1);
- // Shouldn't throw on its own.
- ctx.putImageData(data, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.putImageData(data, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.putImageData(data, 0, 0));
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html b/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html
deleted file mode 100644
index c9bb4f3875..0000000000
--- a/testing/web-platform/tests/html/canvas/element/layers/2d.layer.malformed-operations.toDataURL.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.malformed-operations.toDataURL</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
-<body class="show_output">
-
-<h1>2d.layer.malformed-operations.toDataURL</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<p class="output">Actual output:</p>
-<canvas id="c" class="output" width="200" height="200"><p class="fallback">FAIL (fallback content)</p></canvas>
-
-<ul id="d"></ul>
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-_addTest(function(canvas, ctx) {
-
- // Shouldn't throw on its own.
- canvas.toDataURL();
- // Make sure the exception isn't caused by calling the function twice.
- canvas.toDataURL();
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => canvas.toDataURL());
-
-});
-</script>
-
diff --git a/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh-expected.html b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh-expected.html
new file mode 100644
index 0000000000..d183f6940d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh-expected.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html class="test-wait">
+<title>HTML Canvas reference: SVG filter using CSS font-relative line-height units</title>
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+:root {
+ font: 20px Ahem;
+}
+
+div {
+ display: inline-block;
+ width: 100px;
+ height: 100px;
+ background: green;
+}
+
+.r {
+ background: red;
+}
+</style>
+<div><div class="r" style="width: 48px;"></div></div><br>
+<div><div class="r" style="width: 24px;"></div></div>
diff --git a/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh.html b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh.html
new file mode 100644
index 0000000000..b61193fb9f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter-lh-rlh.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html class="test-wait">
+<title>HTML Canvas test: SVG filter using CSS font-relative line-height units</title>
+<link rel="match" href="svg-filter-lh-rlh-expected.html"/>
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+:root {
+ font: 20px Ahem;
+}
+</style>
+<svg width="0" height="0">
+ <!-- https://html.spec.whatwg.org/multipage/canvas.html#working-with-externally-defined-svg-filters -->
+ <use href="./svg-filter.svg#filter-lh" />
+ <use href="./svg-filter.svg#filter-rlh" />
+</svg
+><canvas id="canvas-lh" width="100" height="100"></canvas><br
+><canvas id="canvas-rlh" width="100" height="100"></canvas>
+<script>
+function use_filter(canvas, filter_id) {
+ const ctx = canvas.getContext("2d");
+ ctx.font = "40px Ahem";
+ ctx.filter = `url(./svg-filter.svg#${filter_id})`;
+ ctx.fillStyle = "red";
+ ctx.fillRect(0, 0, 100, 100);
+}
+window.addEventListener("load", async () => {
+ use_filter(document.getElementById("canvas-lh"), "filter-lh");
+ use_filter(document.getElementById("canvas-rlh"), "filter-rlh");
+ document.documentElement.classList.remove('test-wait');
+});
+</script>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter.svg b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter.svg
new file mode 100644
index 0000000000..a783a3eb15
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/manual/filters/svg-filter.svg
@@ -0,0 +1,10 @@
+<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
+ <filter id="filter-lh">
+ <feFlood result="floodFill" x="1lh" y="0" width="100" height="100" flood-color="green" />
+ <feBlend in="SourceGraphic" in2="floodFill" mode="color-dodge" />
+ </filter>
+ <filter id="filter-rlh">
+ <feFlood result="floodFill" x="1rlh" y="0" width="100" height="100" flood-color="green" />
+ <feBlend in="SourceGraphic" in2="floodFill" mode="color-dodge" />
+ </filter>
+</svg>
diff --git a/testing/web-platform/tests/html/canvas/element/text/WEB_FEATURES.yml b/testing/web-platform/tests/html/canvas/element/text/WEB_FEATURES.yml
new file mode 100644
index 0000000000..1d9e4bab82
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/element/text/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: canvas-text-baselines
+ files:
+ - 2d.text.measure.baselines.*
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html
new file mode 100644
index 0000000000..69277677b9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.fillStyle.parse.hsl-clamp-negative-saturation</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<h1>2d.fillStyle.parse.hsl-clamp-negative-saturation</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<script>
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsl(120, -200%, 49.9%)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+ t.done();
+
+});
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.worker.js b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.worker.js
new file mode 100644
index 0000000000..7f1e91ddb7
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsl-clamp-negative-saturation.worker.js
@@ -0,0 +1,25 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.fillStyle.parse.hsl-clamp-negative-saturation
+// Description:
+// Note:<p class="notes">
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsl(120, -200%, 49.9%)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+ t.done();
+});
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html
new file mode 100644
index 0000000000..5d73d34c9c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.fillStyle.parse.hsla-clamp-alpha-1</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<h1>2d.fillStyle.parse.hsla-clamp-alpha-1</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<script>
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 50%, 2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,255,0,255);
+ t.done();
+
+});
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.worker.js b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.worker.js
new file mode 100644
index 0000000000..7acb76d80b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-1.worker.js
@@ -0,0 +1,25 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.fillStyle.parse.hsla-clamp-alpha-1
+// Description:
+// Note:<p class="notes">
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 50%, 2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,255,0,255);
+ t.done();
+});
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html
new file mode 100644
index 0000000000..eaf7a6af89
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.fillStyle.parse.hsla-clamp-alpha-2</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<h1>2d.fillStyle.parse.hsla-clamp-alpha-2</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<script>
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 0%, -2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,0,0,0);
+ t.done();
+
+});
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.worker.js b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.worker.js
new file mode 100644
index 0000000000..540b3ea15f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-alpha-2.worker.js
@@ -0,0 +1,25 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.fillStyle.parse.hsla-clamp-alpha-2
+// Description:
+// Note:<p class="notes">
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, 100%, 0%, -2)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 0,0,0,0);
+ t.done();
+});
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html
new file mode 100644
index 0000000000..04749fb4a7
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.fillStyle.parse.hsla-clamp-negative-saturation</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<h1>2d.fillStyle.parse.hsla-clamp-negative-saturation</h1>
+<p class="desc"></p>
+
+<p class="notes">
+<script>
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, -200%, 49.9%, 1)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+ t.done();
+
+});
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.worker.js b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.worker.js
new file mode 100644
index 0000000000..f5fe6d4296
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.hsla-clamp-negative-saturation.worker.js
@@ -0,0 +1,25 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.fillStyle.parse.hsla-clamp-negative-saturation
+// Description:
+// Note:<p class="notes">
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+var t = async_test("");
+var t_pass = t.done.bind(t);
+var t_fail = t.step_func(function(reason) {
+ throw reason;
+});
+t.step(function() {
+
+ var canvas = new OffscreenCanvas(100, 50);
+ var ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = '#f00';
+ ctx.fillStyle = 'hsla(120, -200%, 49.9%, 1)';
+ ctx.fillRect(0, 0, 100, 50);
+ _assertPixel(canvas, 50,25, 127,127,127,255);
+ t.done();
+});
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html
deleted file mode 100644
index dac31c97f1..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html
deleted file mode 100644
index 801e6fdb8c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html
deleted file mode 100644
index 6c7c7f7649..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative.w.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.isotropic.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html
deleted file mode 100644
index 88d0cb2de2..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 1" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html
deleted file mode 100644
index ba986d8e7b..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html
deleted file mode 100644
index 86fe086327..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative.w.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-x.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html
deleted file mode 100644
index 744983d4ae..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="1 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html
deleted file mode 100644
index 0265cfa6c4..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html
deleted file mode 100644
index c22b320857..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative.w.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.mostly-y.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html
new file mode 100644
index 0000000000..c1ca0ab46f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.tentative</title>
+<h1 style="font-size: 20px;">2d.filter.canvasFilterObject.gaussianBlur.tentative</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur0" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 0" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur0)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur1" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 1" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur1)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur2" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur2)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur3" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="1 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur3)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>y-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur4" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="0 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur4)" />
+ </svg>
+ </div>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html
new file mode 100644
index 0000000000..8e7ea3f727
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html">
+<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.tentative</title>
+<h1 style="font-size: 20px;">2d.filter.canvasFilterObject.gaussianBlur.tentative</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const outputCanvas = document.getElementById("canvas2");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const outputCanvas = document.getElementById("canvas3");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const outputCanvas = document.getElementById("canvas4");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html
new file mode 100644
index 0000000000..71626ac46e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.tentative.w.html
@@ -0,0 +1,194 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.tentative-expected.html">
+<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.tentative</title>
+<h1 style="font-size: 20px;">2d.filter.canvasFilterObject.gaussianBlur.tentative</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+<script>pending_tests = 5;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker2" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker2').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas2');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker3" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker3').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas3');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker4" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.filter = new CanvasFilter({
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ });
+ ctx.fillRect(25, 25, 50, 50);
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker4').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas4');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html
deleted file mode 100644
index e611113e42..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 0" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html
deleted file mode 100644
index 3ed8e9ddf9..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html
deleted file mode 100644
index 35cbc1b365..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative.w.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.x-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html
deleted file mode 100644
index c6d915cb07..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="0 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html
deleted file mode 100644
index f563ad9d77..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html
deleted file mode 100644
index 171a41caa8..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative.w.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative-expected.html">
-<title>Canvas test: 2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</title>
-<h1>2d.filter.canvasFilterObject.gaussianBlur.y-only.tentative</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.filter = new CanvasFilter({
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- });
- ctx.fillRect(25, 25, 50, 50);
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur-expected.html
new file mode 100644
index 0000000000..f24e9d0dba
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur-expected.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.filter.layers.gaussianBlur</title>
+<h1 style="font-size: 20px;">2d.filter.layers.gaussianBlur</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur0" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 0" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur0)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur1" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 1" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur1)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur2" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="4 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur2)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur3" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="1 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur3)" />
+ </svg>
+ </div>
+</span>
+
+<span>
+ <div>y-only</div>
+ <div style="width: 100px; height: 100px; outline: 1px solid">
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="100" height="100"
+ color-interpolation-filters="sRGB">
+ <filter id="blur4" x="-50%" y="-50%" width="200%" height="200%">
+ <feGaussianBlur stdDeviation="0 4" />
+ </filter>
+ <rect x="25" y="25" width="50" height="50"
+ fill="teal" filter="url(#blur4)" />
+ </svg>
+ </div>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html
new file mode 100644
index 0000000000..a51fe32008
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.filter.layers.gaussianBlur-expected.html">
+<title>Canvas test: 2d.filter.layers.gaussianBlur</title>
+<h1 style="font-size: 20px;">2d.filter.layers.gaussianBlur</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas2");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas3");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas4");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html
deleted file mode 100644
index 4f93754862..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.isotropic</title>
-<h1>2d.filter.layers.gaussianBlur.isotropic</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html
deleted file mode 100644
index 50a98df1be..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.isotropic-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.isotropic</title>
-<h1>2d.filter.layers.gaussianBlur.isotropic</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html
deleted file mode 100644
index a68b8e78a2..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.isotropic.w.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.layers.gaussianBlur.isotropic-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.isotropic</title>
-<h1>2d.filter.layers.gaussianBlur.isotropic</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html
deleted file mode 100644
index 255270c192..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-x</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-x</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 1" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html
deleted file mode 100644
index efc634796c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-x-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-x</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-x</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html
deleted file mode 100644
index 7d20d78503..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-x.w.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-x-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-x</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-x</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 1],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html
deleted file mode 100644
index 76a46b1533..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-y</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-y</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="1 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html
deleted file mode 100644
index bdc6e66fe5..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-y-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-y</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-y</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html
deleted file mode 100644
index dfd6438b19..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.mostly-y.w.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.layers.gaussianBlur.mostly-y-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.mostly-y</title>
-<h1>2d.filter.layers.gaussianBlur.mostly-y</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [1, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html
new file mode 100644
index 0000000000..10ea8baa10
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.w.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.filter.layers.gaussianBlur-expected.html">
+<title>Canvas test: 2d.filter.layers.gaussianBlur</title>
+<h1 style="font-size: 20px;">2d.filter.layers.gaussianBlur</h1>
+<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
+<script>pending_tests = 5;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(5, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>x-only</div>
+ <canvas id="canvas0" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 0],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>mostly-x</div>
+ <canvas id="canvas1" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 1],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>isotropic</div>
+ <canvas id="canvas2" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker2" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [4, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker2').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas2');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>mostly-y</div>
+ <canvas id="canvas3" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker3" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [1, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker3').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas3');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>y-only</div>
+ <canvas id="canvas4" width="100" height="100" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker4" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(100, 100);
+ const ctx = canvas.getContext('2d');
+
+ ctx.fillStyle = 'teal';
+ ctx.beginLayer({filter: {
+ name: 'gaussianBlur',
+ stdDeviation: [0, 4],
+ }});
+ ctx.fillRect(25, 25, 50, 50);
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker4').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas4');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only-expected.html
deleted file mode 100644
index 26741f9847..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.x-only</title>
-<h1>2d.filter.layers.gaussianBlur.x-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="4 0" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html
deleted file mode 100644
index 0d42acb8b5..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.x-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.x-only</title>
-<h1>2d.filter.layers.gaussianBlur.x-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html
deleted file mode 100644
index b235c7ad38..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.x-only.w.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.layers.gaussianBlur.x-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.x-only</title>
-<h1>2d.filter.layers.gaussianBlur.x-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [4, 0],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only-expected.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only-expected.html
deleted file mode 100644
index d00eec6b57..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only-expected.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.filter.layers.gaussianBlur.y-only</title>
-<h1>2d.filter.layers.gaussianBlur.y-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-
-<svg xmlns="http://www.w3.org/2000/svg"
- width="100" height="100"
- color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
- <feGaussianBlur stdDeviation="0 4" />
- </filter>
- <rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
-</svg>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html
deleted file mode 100644
index c9bc85d699..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.filter.layers.gaussianBlur.y-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.y-only</title>
-<h1>2d.filter.layers.gaussianBlur.y-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html b/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html
deleted file mode 100644
index 5deb96c255..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/filters/2d.filter.layers.gaussianBlur.y-only.w.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.filter.layers.gaussianBlur.y-only-expected.html">
-<title>Canvas test: 2d.filter.layers.gaussianBlur.y-only</title>
-<h1>2d.filter.layers.gaussianBlur.y-only</h1>
-<p class="desc">Test CanvasFilter() with gaussianBlur.</p>
-<canvas id="canvas" width="100" height="100">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(100, 100);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'teal';
- ctx.beginLayer({filter: {
- name: 'gaussianBlur',
- stdDeviation: [0, 4],
- }});
- ctx.fillRect(25, 25, 50, 50);
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.html
index 4fb042a1d8..354a03a134 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Checks beginLayer works for different option parameter values");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -45,7 +39,6 @@ t.step(function() {
ctx.beginLayer({filter: 1}); ctx.endLayer();
ctx.beginLayer({filter: true}); ctx.endLayer();
ctx.beginLayer({filter: false}); ctx.endLayer();
- t.done();
-});
+}, "Checks beginLayer works for different option parameter values");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.worker.js
index cafbc83f3e..492ac3fcea 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.beginLayer-options.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Checks beginLayer works for different option parameter values");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -41,6 +35,5 @@ t.step(function() {
ctx.beginLayer({filter: 1}); ctx.endLayer();
ctx.beginLayer({filter: true}); ctx.endLayer();
ctx.beginLayer({filter: false}); ctx.endLayer();
- t.done();
-});
+}, "Checks beginLayer works for different option parameter values");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.html
index b2306d95ac..919de40d2e 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Tests getTransform inside layers.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -26,7 +20,6 @@ t.step(function() {
const m = ctx.getTransform();
assert_array_equals([m.a, m.b, m.c, m.d, m.e, m.f], [2, 0, 0, 3, 10, 20]);
ctx.endLayer();
- t.done();
-});
+}, "Tests getTransform inside layers.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.worker.js
index 54b1fee5d0..2d6e6ef8a2 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.ctm.getTransform.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Tests getTransform inside layers.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -22,6 +16,5 @@ t.step(function() {
const m = ctx.getTransform();
assert_array_equals([m.a, m.b, m.c, m.d, m.e, m.f], [2, 0, 0, 3, 10, 20]);
ctx.endLayer();
- t.done();
-});
+}, "Tests getTransform inside layers.");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.html
index a047c539cf..29b316b256 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Checks that the context state is left unchanged if beginLayer throws.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -26,7 +20,6 @@ t.step(function() {
values: 'foo'}}));
// `beginLayer` shouldn't have opened the layer, so `endLayer` should throw.
assert_throws_dom("InvalidStateError", () => ctx.endLayer());
- t.done();
-});
+}, "Checks that the context state is left unchanged if beginLayer throws.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.worker.js
index bd1e376084..6e253b26d5 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.exceptions-are-no-op.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Checks that the context state is left unchanged if beginLayer throws.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -22,6 +16,5 @@ t.step(function() {
values: 'foo'}}));
// `beginLayer` shouldn't have opened the layer, so `endLayer` should throw.
assert_throws_dom("InvalidStateError", () => ctx.endLayer());
- t.done();
-});
+}, "Checks that the context state is left unchanged if beginLayer throws.");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha-expected.html
deleted file mode 100644
index 0666e3098a..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha</title>
-<h1>2d.layer.global-states.alpha</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending-expected.html
deleted file mode 100644
index 8a45027588..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending-expected.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.blending</title>
-<h1>2d.layer.global-states.alpha.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html
deleted file mode 100644
index 71414b4b37..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending</title>
-<h1>2d.layer.global-states.alpha.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow-expected.html
deleted file mode 100644
index f7b633b35f..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow-expected.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html
deleted file mode 100644
index ed2d2d70af..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html
deleted file mode 100644
index 1ff3ad8385..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.shadow.w.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html
deleted file mode 100644
index 618480c813..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.blending.w.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.blending</title>
-<h1>2d.layer.global-states.alpha.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite-expected.html
deleted file mode 100644
index 951049e638..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite-expected.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.composite</title>
-<h1>2d.layer.global-states.alpha.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html
deleted file mode 100644
index 94fed5752d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite</title>
-<h1>2d.layer.global-states.alpha.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow-expected.html
deleted file mode 100644
index 0ae93871f5..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow-expected.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html
deleted file mode 100644
index eb579cdcce..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html
deleted file mode 100644
index 60e36f4b97..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.shadow.w.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html
deleted file mode 100644
index d7d2b7a21e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.composite.w.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.composite</title>
-<h1>2d.layer.global-states.alpha.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html
deleted file mode 100644
index 63a264e681..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha</title>
-<h1>2d.layer.global-states.alpha</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow-expected.html
deleted file mode 100644
index 6f764c5001..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.alpha.shadow</title>
-<h1>2d.layer.global-states.alpha.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html
deleted file mode 100644
index 65a66c977d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.alpha.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.shadow</title>
-<h1>2d.layer.global-states.alpha.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html
deleted file mode 100644
index f404601e3d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.shadow.w.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha.shadow</title>
-<h1>2d.layer.global-states.alpha.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html
deleted file mode 100644
index 694f31e208..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.alpha.w.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.alpha-expected.html">
-<title>Canvas test: 2d.layer.global-states.alpha</title>
-<h1>2d.layer.global-states.alpha</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending-expected.html
deleted file mode 100644
index 33fdf46a28..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.blending</title>
-<h1>2d.layer.global-states.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.html
deleted file mode 100644
index 6a36bb4ba1..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending</title>
-<h1>2d.layer.global-states.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..c56f13f2fd
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html
new file mode 100644
index 0000000000..1f8736e0e4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..2bd46eee66
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..e5f8ba0db4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html
new file mode 100644
index 0000000000..0470777988
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..4d33b3a638
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow-expected.html
deleted file mode 100644
index 6f969074f9..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.blending.shadow</title>
-<h1>2d.layer.global-states.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html
deleted file mode 100644
index 2e91f3d2d1..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending.shadow</title>
-<h1>2d.layer.global-states.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..debbd430c4
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html
new file mode 100644
index 0000000000..c6f0239c39
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html
new file mode 100644
index 0000000000..0be246ebfb
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation-expected.html
new file mode 100644
index 0000000000..75a55e591b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html
new file mode 100644
index 0000000000..aac9d86e66
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html
new file mode 100644
index 0000000000..86067b7299
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html
deleted file mode 100644
index d8e20d0479..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.shadow.w.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending.shadow</title>
-<h1>2d.layer.global-states.blending.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html
deleted file mode 100644
index 8964e97713..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.blending.w.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.blending</title>
-<h1>2d.layer.global-states.blending</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite-expected.html
deleted file mode 100644
index ed7669c4cf..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.composite</title>
-<h1>2d.layer.global-states.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.html
deleted file mode 100644
index 84fb4b3d95..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite</title>
-<h1>2d.layer.global-states.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..cf87559582
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html
new file mode 100644
index 0000000000..69dc916d7d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..aa358b57bc
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..2f9bb208fb
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html
new file mode 100644
index 0000000000..d0d08f9835
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..5e2cd0783d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow-expected.html
deleted file mode 100644
index b687c27f47..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow-expected.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.composite.shadow</title>
-<h1>2d.layer.global-states.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html
deleted file mode 100644
index 1e3ab4d6a0..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite.shadow</title>
-<h1>2d.layer.global-states.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..2b4436806a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html
new file mode 100644
index 0000000000..8b79eba128
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html
new file mode 100644
index 0000000000..47f2df391f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation-expected.html
new file mode 100644
index 0000000000..da144975a5
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html
new file mode 100644
index 0000000000..632d390986
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html
new file mode 100644
index 0000000000..dde0d8bec0
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html
deleted file mode 100644
index 7dfb70148b..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.shadow.w.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite.shadow</title>
-<h1>2d.layer.global-states.composite.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html
deleted file mode 100644
index b695871fcd..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.composite.w.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.composite</title>
-<h1>2d.layer.global-states.composite</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..489d432282
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html
new file mode 100644
index 0000000000..70b659f52b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..1db7f17a94
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..63913ffb05
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html
new file mode 100644
index 0000000000..2151535015
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..9c0cac99b9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..021581f892
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html
new file mode 100644
index 0000000000..42231fa61e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html
new file mode 100644
index 0000000000..20dc667ef8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation-expected.html
new file mode 100644
index 0000000000..dd9a5c2a00
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html
new file mode 100644
index 0000000000..77158a9f96
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html
new file mode 100644
index 0000000000..def6bc51e2
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.copy.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha-expected.html
deleted file mode 100644
index f304700feb..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha</title>
-<h1>2d.layer.global-states.filter.alpha</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending-expected.html
deleted file mode 100644
index 7c91ce4229..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending-expected.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending</title>
-<h1>2d.layer.global-states.filter.alpha.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html
deleted file mode 100644
index 0e48cb49f7..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-2453">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending</title>
-<h1>2d.layer.global-states.filter.alpha.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html
deleted file mode 100644
index 62942ffeae..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow-expected.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html
deleted file mode 100644
index 62d98d967c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html
deleted file mode 100644
index e81efd6b8d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.shadow.w.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html
deleted file mode 100644
index 3887ed4485..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.blending.w.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha.blending-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-2453">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.blending</title>
-<h1>2d.layer.global-states.filter.alpha.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite-expected.html
deleted file mode 100644
index 8e0d98648e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite-expected.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite</title>
-<h1>2d.layer.global-states.filter.alpha.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html
deleted file mode 100644
index 1a9bc8b733..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-5204">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite</title>
-<h1>2d.layer.global-states.filter.alpha.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html
deleted file mode 100644
index a649972546..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow-expected.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html
deleted file mode 100644
index d067ff2f5e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html
deleted file mode 100644
index 39abc78b17..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.shadow.w.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html
deleted file mode 100644
index 5c90fe95aa..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.composite.w.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha.composite-expected.html">
-<meta name=fuzzy content="maxDifference=0-1; totalPixels=0-5204">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.composite</title>
-<h1>2d.layer.global-states.filter.alpha.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html
deleted file mode 100644
index f64e8925f0..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6766">
-<title>Canvas test: 2d.layer.global-states.filter.alpha</title>
-<h1>2d.layer.global-states.filter.alpha</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow-expected.html
deleted file mode 100644
index 169baee29b..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.alpha.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html
deleted file mode 100644
index 5e8911ee17..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.alpha.shadow-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6311">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html
deleted file mode 100644
index b3be7e1ac8..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.shadow.w.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha.shadow-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6311">
-<title>Canvas test: 2d.layer.global-states.filter.alpha.shadow</title>
-<h1>2d.layer.global-states.filter.alpha.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html
deleted file mode 100644
index 21e55f856c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.alpha.w.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.alpha-expected.html">
-<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-6766">
-<title>Canvas test: 2d.layer.global-states.filter.alpha</title>
-<h1>2d.layer.global-states.filter.alpha</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalAlpha = 0.6;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending-expected.html
deleted file mode 100644
index f81dcf72dc..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.blending</title>
-<h1>2d.layer.global-states.filter.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html
deleted file mode 100644
index ce2b046798..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending</title>
-<h1>2d.layer.global-states.filter.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..482ab25a85
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html
new file mode 100644
index 0000000000..8acbfa668f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..93edfabdf3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..3af6b863ed
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html
new file mode 100644
index 0000000000..0a4a8c65d2
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..7caaf1edee
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.blending.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow-expected.html
deleted file mode 100644
index 91f3725f8e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.blending.shadow</title>
-<h1>2d.layer.global-states.filter.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html
deleted file mode 100644
index d0d429bee3..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending.shadow</title>
-<h1>2d.layer.global-states.filter.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d530ef9d19
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html
new file mode 100644
index 0000000000..1ee3254324
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html
new file mode 100644
index 0000000000..3ec656c135
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html
new file mode 100644
index 0000000000..80705c36fd
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html
new file mode 100644
index 0000000000..62af08d2ac
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html
new file mode 100644
index 0000000000..d5693cdcdc
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.blending.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.blending.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.blending.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html
deleted file mode 100644
index ce432ea74d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.shadow.w.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.blending.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending.shadow</title>
-<h1>2d.layer.global-states.filter.blending.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html
deleted file mode 100644
index bb101cdc0b..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.blending.w.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.blending-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.blending</title>
-<h1>2d.layer.global-states.filter.blending</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'multiply';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite-expected.html
deleted file mode 100644
index 97e85a1593..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.composite</title>
-<h1>2d.layer.global-states.filter.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html
deleted file mode 100644
index 32052a1150..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite</title>
-<h1>2d.layer.global-states.filter.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..2f513bff0a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html
new file mode 100644
index 0000000000..17394aa4c8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..386ad43b0f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..242973300f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html
new file mode 100644
index 0000000000..576283ea73
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..6dd39d77e9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.composite.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow-expected.html
deleted file mode 100644
index 4716bb2760..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow-expected.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.composite.shadow</title>
-<h1>2d.layer.global-states.filter.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html
deleted file mode 100644
index b5e8b9f843..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite.shadow</title>
-<h1>2d.layer.global-states.filter.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..c8926e5e15
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html
new file mode 100644
index 0000000000..b574a819d6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html
new file mode 100644
index 0000000000..96ee1b027b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html
new file mode 100644
index 0000000000..e70fe3e92d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html
new file mode 100644
index 0000000000..b7b4312a35
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html
new file mode 100644
index 0000000000..1ae9f00a85
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.composite.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.composite.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.composite.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html
deleted file mode 100644
index 894089d88e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.shadow.w.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.composite.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite.shadow</title>
-<h1>2d.layer.global-states.filter.composite.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html
deleted file mode 100644
index 41ccdaf5c0..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.composite.w.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.composite-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.composite</title>
-<h1>2d.layer.global-states.filter.composite</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.globalCompositeOperation = 'source-in';
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..21aa241aca
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html
new file mode 100644
index 0000000000..f08ba940af
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..75fc90bae6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..b2b46ee039
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html
new file mode 100644
index 0000000000..3f12cf0c4e
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..0a3ecee669
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.copy.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d11326d5d6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html
new file mode 100644
index 0000000000..b4996deb6f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html
new file mode 100644
index 0000000000..9c13a367b3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html
new file mode 100644
index 0000000000..3ac098c344
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html
new file mode 100644
index 0000000000..eab5f8312b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html
new file mode 100644
index 0000000000..aebd6cc00d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.copy.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.copy.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.copy.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.copy.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..a445ae2c4a
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html
new file mode 100644
index 0000000000..f86b0fd37d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..ab0836af94
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..610c601b1c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html
new file mode 100644
index 0000000000..5854af853c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..c08f1f9f3c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..6bd4501584
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html
new file mode 100644
index 0000000000..f1dc725b83
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html
new file mode 100644
index 0000000000..f191747805
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html
new file mode 100644
index 0000000000..b60a5526d9
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ const svg = `
+ <svg xmlns="http://www.w3.org/2000/svg"
+ width="90" height="90"
+ color-interpolation-filters="sRGB">
+ <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
+ <feComponentTransfer>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
+ </feComponentTransfer>
+ </filter>
+ <g filter="url(#filter)">
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
+ </g>
+ </svg>`;
+
+ const img = new Image();
+ img.width = 90;
+ img.height = 90;
+ img.onload = () => {
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.drawImage(img, 0, 0);
+ };
+ img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html
new file mode 100644
index 0000000000..76258b326d
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html
new file mode 100644
index 0000000000..9a10fb569f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-composite-op.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.filter.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.filter.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.filter.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers with filters correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer({filter: [
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
+ {name: 'componentTransfer',
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states-expected.html
deleted file mode 100644
index e56fe0b360..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states-expected.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.no-global-states</title>
-<h1>2d.layer.global-states.filter.no-global-states</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html
deleted file mode 100644
index 3effa3ee9d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.no-global-states</title>
-<h1>2d.layer.global-states.filter.no-global-states</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html
deleted file mode 100644
index ec744d7ffe..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.no-global-states.w.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.no-global-states</title>
-<h1>2d.layer.global-states.filter.no-global-states</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow-expected.html
deleted file mode 100644
index 13ba2dd4cd..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow-expected.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.filter.shadow</title>
-<h1>2d.layer.global-states.filter.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- const svg = `
- <svg xmlns="http://www.w3.org/2000/svg"
- width="200" height="200"
- color-interpolation-filters="sRGB">
- <filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
- <feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
- </feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
- </filter>
- <g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
- </g>
- </svg>`;
-
- const img = new Image();
- img.width = 200;
- img.height = 200;
- img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.drawImage(img, 0, 0);
- };
- img.src = 'data:image/svg+xml;base64,' + btoa(svg);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html
deleted file mode 100644
index 7bb0ef5e13..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.filter.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.shadow</title>
-<h1>2d.layer.global-states.filter.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html
deleted file mode 100644
index bc9bd48aad..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.filter.shadow.w.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.filter.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.filter.shadow</title>
-<h1>2d.layer.global-states.filter.shadow</h1>
-<p class="desc">Checks that layers with filters correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
- {name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
-
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html
new file mode 100644
index 0000000000..d1a799707f
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html
new file mode 100644
index 0000000000..016f78a5d8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html
new file mode 100644
index 0000000000..2a450624f1
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.no-transform.w.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html
new file mode 100644
index 0000000000..cc91a67faf
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html
new file mode 100644
index 0000000000..12a1e64b42
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html
new file mode 100644
index 0000000000..a0f5f76099
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.no-shadow.rotation.w.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.no-composite-op.no-shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.no-shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.no-shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ // No shadow.
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html
new file mode 100644
index 0000000000..02b239116c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html
new file mode 100644
index 0000000000..99301fde09
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html
new file mode 100644
index 0000000000..46375f290c
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.no-transform.w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.no-transform-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.no-transform</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.no-transform</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ // No transform.
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html
new file mode 100644
index 0000000000..06f6a2dff3
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation-expected.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.globalCompositeOperation = 'screen';
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
+ ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx2.fillRect(30, 5, 50, 40);
+
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html
new file mode 100644
index 0000000000..280cc1cceb
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.html
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html
new file mode 100644
index 0000000000..3192f79afa
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-composite-op.shadow.rotation.w.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.global-states.no-composite-op.shadow.rotation-expected.html">
+<title>Canvas test: 2d.layer.global-states.no-composite-op.shadow.rotation</title>
+<h1 style="font-size: 20px;">2d.layer.global-states.no-composite-op.shadow.rotation</h1>
+<p class="desc">Checks that layers correctly use global render states.</p>
+<script>pending_tests = 2;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(2, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>no-globalAlpha</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ // No globalAlpha.
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>globalAlpha</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
+
+ ctx.globalAlpha = 0.75;
+ // No globalCompositeOperation.
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+ ctx.shadowBlur = 3;
+
+ ctx.beginLayer();
+
+ // Enable compositing in the layer to validate that draw calls in the layer
+ // won't individually composite with the background.
+ ctx.globalCompositeOperation = 'screen';
+
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states-expected.html
deleted file mode 100644
index b91a2ae8b5..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states-expected.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.no-global-states</title>
-<h1>2d.layer.global-states.no-global-states</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html
deleted file mode 100644
index c8a9815381..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.no-global-states</title>
-<h1>2d.layer.global-states.no-global-states</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html
deleted file mode 100644
index db03a3fd0c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.no-global-states.w.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.no-global-states-expected.html">
-<title>Canvas test: 2d.layer.global-states.no-global-states</title>
-<h1>2d.layer.global-states.no-global-states</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- // No global states.
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow-expected.html
deleted file mode 100644
index 835e9d420a..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow-expected.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>Canvas test: 2d.layer.global-states.shadow</title>
-<h1>2d.layer.global-states.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = document.getElementById("canvas");
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
-
- ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
- ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
-
- ctx.drawImage(canvas2, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html
deleted file mode 100644
index ad60e87fb1..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<link rel="match" href="2d.layer.global-states.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.shadow</title>
-<h1>2d.layer.global-states.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script>
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const outputCanvas = document.getElementById("canvas");
- outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html
deleted file mode 100644
index 1fc35fd33a..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-states.shadow.w.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<html class="reftest-wait">
-<link rel="match" href="2d.layer.global-states.shadow-expected.html">
-<title>Canvas test: 2d.layer.global-states.shadow</title>
-<h1>2d.layer.global-states.shadow</h1>
-<p class="desc">Checks that layers correctly use global render states.</p>
-<canvas id="canvas" width="200" height="200">
- <p class="fallback">FAIL (fallback content)</p>
-</canvas>
-<script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
- const canvas = new OffscreenCanvas(200, 200);
- const ctx = canvas.getContext('2d');
-
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
-
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
-
- ctx.beginLayer();
-
- // Enable compositing in the layer to validate that draw calls in the layer
- // won't individually composite with the background.
- ctx.globalCompositeOperation = 'screen';
-
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
-
- ctx.endLayer();
-
- const bitmap = canvas.transferToImageBitmap();
- self.postMessage(bitmap, bitmap);
- };
-</script>
-<script>
- const blob = new Blob([document.getElementById('myWorker').textContent]);
- const worker = new Worker(URL.createObjectURL(blob));
- worker.addEventListener('message', msg => {
- const outputCtx = document.getElementById("canvas").getContext('2d');
- outputCtx.drawImage(msg.data, 0, 0);
- document.documentElement.classList.remove("reftest-wait");
- });
- worker.postMessage(null);
-</script>
-</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation-expected.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation-expected.html
new file mode 100644
index 0000000000..02a8915c0b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation-expected.html
@@ -0,0 +1,910 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: 2d.layer.globalCompositeOperation</title>
+<h1 style="font-size: 20px;">2d.layer.globalCompositeOperation</h1>
+<p class="desc">Checks that layers work with all globalCompositeOperation values.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(7, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>source-over</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas0");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-in</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas1");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-atop</div>
+ <canvas id="canvas2" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas2");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-over</div>
+ <canvas id="canvas3" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas3");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-in</div>
+ <canvas id="canvas4" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas4");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-out</div>
+ <canvas id="canvas5" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas5");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-out';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-atop</div>
+ <canvas id="canvas6" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas6");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighter</div>
+ <canvas id="canvas7" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas7");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighter';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>copy</div>
+ <canvas id="canvas8" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas8");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>xor</div>
+ <canvas id="canvas9" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas9");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'xor';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>multiply</div>
+ <canvas id="canvas10" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas10");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>screen</div>
+ <canvas id="canvas11" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas11");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'screen';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>overlay</div>
+ <canvas id="canvas12" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas12");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'overlay';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>darken</div>
+ <canvas id="canvas13" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas13");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'darken';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighten</div>
+ <canvas id="canvas14" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas14");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighten';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-dodge</div>
+ <canvas id="canvas15" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas15");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-dodge';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-burn</div>
+ <canvas id="canvas16" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas16");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-burn';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hard-light</div>
+ <canvas id="canvas17" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas17");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hard-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>soft-light</div>
+ <canvas id="canvas18" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas18");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'soft-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>difference</div>
+ <canvas id="canvas19" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas19");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'difference';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>exclusion</div>
+ <canvas id="canvas20" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas20");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'exclusion';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hue</div>
+ <canvas id="canvas21" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas21");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hue';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>saturation</div>
+ <canvas id="canvas22" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas22");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'saturation';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color</div>
+ <canvas id="canvas23" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas23");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>luminosity</div>
+ <canvas id="canvas24" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas24");
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'luminosity';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html
new file mode 100644
index 0000000000..ab9bc4270b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.html
@@ -0,0 +1,961 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<link rel="match" href="2d.layer.globalCompositeOperation-expected.html">
+<title>Canvas test: 2d.layer.globalCompositeOperation</title>
+<h1 style="font-size: 20px;">2d.layer.globalCompositeOperation</h1>
+<p class="desc">Checks that layers work with all globalCompositeOperation values.</p>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(7, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>source-over</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas0");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-in</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas1");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>source-atop</div>
+ <canvas id="canvas2" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas2");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-over</div>
+ <canvas id="canvas3" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas3");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-in</div>
+ <canvas id="canvas4" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas4");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-out</div>
+ <canvas id="canvas5" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-out';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas5");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>destination-atop</div>
+ <canvas id="canvas6" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas6");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighter</div>
+ <canvas id="canvas7" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighter';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas7");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>copy</div>
+ <canvas id="canvas8" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas8");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>xor</div>
+ <canvas id="canvas9" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'xor';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas9");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>multiply</div>
+ <canvas id="canvas10" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas10");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>screen</div>
+ <canvas id="canvas11" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'screen';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas11");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>overlay</div>
+ <canvas id="canvas12" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'overlay';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas12");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>darken</div>
+ <canvas id="canvas13" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'darken';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas13");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>lighten</div>
+ <canvas id="canvas14" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighten';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas14");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-dodge</div>
+ <canvas id="canvas15" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-dodge';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas15");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color-burn</div>
+ <canvas id="canvas16" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-burn';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas16");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hard-light</div>
+ <canvas id="canvas17" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hard-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas17");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>soft-light</div>
+ <canvas id="canvas18" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'soft-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas18");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>difference</div>
+ <canvas id="canvas19" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'difference';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas19");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>exclusion</div>
+ <canvas id="canvas20" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'exclusion';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas20");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>hue</div>
+ <canvas id="canvas21" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hue';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas21");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>saturation</div>
+ <canvas id="canvas22" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'saturation';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas22");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>color</div>
+ <canvas id="canvas23" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas23");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+<span>
+ <div>luminosity</div>
+ <canvas id="canvas24" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'luminosity';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const outputCanvas = document.getElementById("canvas24");
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(canvas, 0, 0);
+ </script>
+</span>
+
+</div>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html
new file mode 100644
index 0000000000..9a403140fc
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.globalCompositeOperation.w.html
@@ -0,0 +1,1314 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="2d.layer.globalCompositeOperation-expected.html">
+<title>Canvas test: 2d.layer.globalCompositeOperation</title>
+<h1 style="font-size: 20px;">2d.layer.globalCompositeOperation</h1>
+<p class="desc">Checks that layers work with all globalCompositeOperation values.</p>
+<script>pending_tests = 25;</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat(7, max-content);
+ font-size: 13px; text-align: center;">
+<span>
+ <div>source-over</div>
+ <canvas id="canvas0" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker0" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker0').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas0');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>source-in</div>
+ <canvas id="canvas1" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker1" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker1').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas1');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>source-atop</div>
+ <canvas id="canvas2" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker2" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'source-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker2').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas2');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>destination-over</div>
+ <canvas id="canvas3" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker3" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker3').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas3');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>destination-in</div>
+ <canvas id="canvas4" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker4" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-in';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker4').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas4');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>destination-out</div>
+ <canvas id="canvas5" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker5" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-out';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker5').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas5');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>destination-atop</div>
+ <canvas id="canvas6" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker6" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'destination-atop';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker6').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas6');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>lighter</div>
+ <canvas id="canvas7" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker7" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighter';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker7').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas7');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>copy</div>
+ <canvas id="canvas8" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker8" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'copy';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker8').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas8');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>xor</div>
+ <canvas id="canvas9" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker9" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'xor';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker9').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas9');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>multiply</div>
+ <canvas id="canvas10" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker10" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'multiply';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker10').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas10');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>screen</div>
+ <canvas id="canvas11" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker11" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'screen';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker11').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas11');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>overlay</div>
+ <canvas id="canvas12" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker12" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'overlay';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker12').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas12');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>darken</div>
+ <canvas id="canvas13" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker13" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'darken';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker13').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas13');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>lighten</div>
+ <canvas id="canvas14" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker14" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'lighten';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker14').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas14');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>color-dodge</div>
+ <canvas id="canvas15" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker15" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-dodge';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker15').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas15');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>color-burn</div>
+ <canvas id="canvas16" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker16" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color-burn';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker16').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas16');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>hard-light</div>
+ <canvas id="canvas17" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker17" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hard-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker17').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas17');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>soft-light</div>
+ <canvas id="canvas18" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker18" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'soft-light';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker18').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas18');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>difference</div>
+ <canvas id="canvas19" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker19" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'difference';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker19').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas19');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>exclusion</div>
+ <canvas id="canvas20" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker20" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'exclusion';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker20').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas20');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>hue</div>
+ <canvas id="canvas21" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker21" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'hue';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker21').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas21');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>saturation</div>
+ <canvas id="canvas22" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker22" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'saturation';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker22').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas22');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>color</div>
+ <canvas id="canvas23" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker23" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'color';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker23').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas23');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+<span>
+ <div>luminosity</div>
+ <canvas id="canvas24" width="90" height="90" style="outline: 1px solid">
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker24" type="text/worker">
+ self.onmessage = function(e) {
+ const canvas = new OffscreenCanvas(90, 90);
+ const ctx = canvas.getContext('2d');
+
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = 'luminosity';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker24').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas24');
+ const outputCtx = outputCanvas.getContext('2d');
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
index c0b11aa611..e588e48b5f 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Raises exception on beginLayer() + reset() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -25,7 +19,6 @@ t.step(function() {
ctx.reset();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + reset() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.worker.js
index 1c147d6f34..cab1b9d92d 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-reset-endLayer.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on beginLayer() + reset() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -21,6 +15,5 @@ t.step(function() {
ctx.reset();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + reset() + endLayer().");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.html
index 022532b329..30a981f75a 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Raises exception on beginLayer() + restore().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -24,7 +18,6 @@ t.step(function() {
ctx.beginLayer();
ctx.restore();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + restore().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.worker.js
index 1aa86635e6..287f8eb004 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-restore.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on beginLayer() + restore().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -20,6 +14,5 @@ t.step(function() {
ctx.beginLayer();
ctx.restore();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + restore().");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
index 26dd0eee4b..04992b115e 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Raises exception on beginLayer() + save() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -25,7 +19,6 @@ t.step(function() {
ctx.save();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + save() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.worker.js
index 613921c67c..402bf5e0fd 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.beginLayer-save-endLayer.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on beginLayer() + save() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -21,6 +15,5 @@ t.step(function() {
ctx.save();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on beginLayer() + save() + endLayer().");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.html
index 440249980a..5b7f8a851e 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.html
@@ -10,20 +10,13 @@
<script>
-var t = async_test("Raises exception on lone endLayer calls.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on lone endLayer calls.");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.worker.js
index b2ba231b9c..2229aa9628 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.endLayer.worker.js
@@ -6,19 +6,12 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on lone endLayer calls.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
assert_throws_dom("INVALID_STATE_ERR", function() {
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on lone endLayer calls.");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
index c2b09961ac..2a6c9b1ccb 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Raises exception on save() + beginLayer() + restore().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -25,7 +19,6 @@ t.step(function() {
ctx.beginLayer();
ctx.restore();
});
- t.done();
-});
+}, "Raises exception on save() + beginLayer() + restore().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.worker.js
index d155379fcb..711280a6de 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-beginLayer-restore.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on save() + beginLayer() + restore().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -21,6 +15,5 @@ t.step(function() {
ctx.beginLayer();
ctx.restore();
});
- t.done();
-});
+}, "Raises exception on save() + beginLayer() + restore().");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.html
index 01b62d1e85..32ca134663 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.html
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.html
@@ -10,13 +10,7 @@
<script>
-var t = async_test("Raises exception on save() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -24,7 +18,6 @@ t.step(function() {
ctx.save();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on save() + endLayer().");
</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.worker.js
index 353c1b00cd..af3667e50a 100644
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.worker.js
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.invalid-calls.save-endLayer.worker.js
@@ -6,13 +6,7 @@
importScripts("/resources/testharness.js");
importScripts("/html/canvas/resources/canvas-tests.js");
-var t = async_test("Raises exception on save() + endLayer().");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
+test(t => {
var canvas = new OffscreenCanvas(100, 50);
var ctx = canvas.getContext('2d');
@@ -20,6 +14,5 @@ t.step(function() {
ctx.save();
ctx.endLayer();
});
- t.done();
-});
+}, "Raises exception on save() + endLayer().");
done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html
deleted file mode 100644
index 0b3854c31d..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations-with-promises.convertToBlob</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations-with-promises.convertToBlob</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-promise_test(async t => {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await canvas.convertToBlob();
- // Make sure the exception isn't caused by calling the function twice.
- await canvas.convertToBlob();
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', canvas.convertToBlob());
-
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js
deleted file mode 100644
index 8361e19108..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.convertToBlob.worker.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations-with-promises.convertToBlob
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-promise_test(async t => {
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await canvas.convertToBlob();
- // Make sure the exception isn't caused by calling the function twice.
- await canvas.convertToBlob();
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', canvas.convertToBlob());
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html
deleted file mode 100644
index 085554d9f5..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations-with-promises.createImageBitmap</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations-with-promises.createImageBitmap</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-promise_test(async t => {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await createImageBitmap(canvas);
- // Make sure the exception isn't caused by calling the function twice.
- await createImageBitmap(canvas);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', createImageBitmap(canvas));
-
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js
deleted file mode 100644
index d64f693864..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.createImageBitmap.worker.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations-with-promises.createImageBitmap
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-promise_test(async t => {
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- await createImageBitmap(canvas);
- // Make sure the exception isn't caused by calling the function twice.
- await createImageBitmap(canvas);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', createImageBitmap(canvas));
-}, "Check that exceptions are thrown for operations that are malformed while layers are open.");
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html
new file mode 100644
index 0000000000..7b8f9b0943
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.layer.malformed-operations-with-promises</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<script>
+
+promise_test(async t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await canvas.convertToBlob();
+ // Make sure the exception isn't caused by calling the function twice.
+ await canvas.convertToBlob();
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ canvas.convertToBlob());
+}, "Throws if convertToBlob is called while layers are open.");
+
+promise_test(async t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await createImageBitmap(canvas);
+ // Make sure the exception isn't caused by calling the function twice.
+ await createImageBitmap(canvas);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ createImageBitmap(canvas));
+}, "Throws if createImageBitmap is called while layers are open.");
+
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js
new file mode 100644
index 0000000000..693901b648
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations-with-promises.worker.js
@@ -0,0 +1,37 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.layer.malformed-operations-with-promises
+// Description:
+// Note:
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+promise_test(async t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await canvas.convertToBlob();
+ // Make sure the exception isn't caused by calling the function twice.
+ await canvas.convertToBlob();
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ canvas.convertToBlob());
+}, "Throws if convertToBlob is called while layers are open.");
+
+promise_test(async t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ await createImageBitmap(canvas);
+ // Make sure the exception isn't caused by calling the function twice.
+ await createImageBitmap(canvas);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ await promise_rejects_dom(t, 'InvalidStateError',
+ createImageBitmap(canvas));
+}, "Throws if createImageBitmap is called while layers are open.");
+
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html
deleted file mode 100644
index a206e64ceb..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations.createPattern</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations.createPattern</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- ctx.createPattern(canvas, 'repeat');
- // Make sure the exception isn't caused by calling the function twice.
- ctx.createPattern(canvas, 'repeat');
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.createPattern(canvas, 'repeat'));
- t.done();
-
-});
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js
deleted file mode 100644
index bcb42cba87..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.createPattern.worker.js
+++ /dev/null
@@ -1,29 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations.createPattern
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- ctx.createPattern(canvas, 'repeat');
- // Make sure the exception isn't caused by calling the function twice.
- ctx.createPattern(canvas, 'repeat');
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.createPattern(canvas, 'repeat'));
- t.done();
-});
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html
deleted file mode 100644
index e6a9872100..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations.drawImage</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations.drawImage</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d');
- // Shouldn't throw on its own.
- ctx2.drawImage(canvas, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx2.drawImage(canvas, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx2.drawImage(canvas, 0, 0));
- t.done();
-
-});
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js
deleted file mode 100644
index b66cdee62e..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.drawImage.worker.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations.drawImage
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d');
- // Shouldn't throw on its own.
- ctx2.drawImage(canvas, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx2.drawImage(canvas, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx2.drawImage(canvas, 0, 0));
- t.done();
-});
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html
deleted file mode 100644
index 87bc8c6ede..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations.getImageData</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations.getImageData</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- ctx.getImageData(0, 0, 200, 200);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.getImageData(0, 0, 200, 200);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.getImageData(0, 0, 200, 200));
- t.done();
-
-});
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js
deleted file mode 100644
index 6a1a16fccb..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.getImageData.worker.js
+++ /dev/null
@@ -1,29 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations.getImageData
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- ctx.getImageData(0, 0, 200, 200);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.getImageData(0, 0, 200, 200);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.getImageData(0, 0, 200, 200));
- t.done();
-});
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.html
new file mode 100644
index 0000000000..a810665faf
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.html
@@ -0,0 +1,85 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: 2d.layer.malformed-operations</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<script>
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.createPattern(canvas, 'repeat');
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.createPattern(canvas, 'repeat');
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.createPattern(canvas, 'repeat'));
+}, "Throws if createPattern is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d');
+ // Shouldn't throw on its own.
+ ctx2.drawImage(canvas, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx2.drawImage(canvas, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx2.drawImage(canvas, 0, 0));
+}, "Throws if drawImage is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.getImageData(0, 0, 200, 200);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.getImageData(0, 0, 200, 200);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.getImageData(0, 0, 200, 200));
+}, "Throws if getImageData is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d')
+ const data = ctx2.getImageData(0, 0, 1, 1);
+ // Shouldn't throw on its own.
+ ctx.putImageData(data, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.putImageData(data, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.putImageData(data, 0, 0));
+}, "Throws if putImageData is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ canvas.transferToImageBitmap();
+ // Make sure the exception isn't caused by calling the function twice.
+ canvas.transferToImageBitmap();
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => canvas.transferToImageBitmap());
+}, "Throws if transferToImageBitmap is called while layers are open.");
+
+</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html
deleted file mode 100644
index e8059076bb..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations.putImageData</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations.putImageData</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d')
- const data = ctx2.getImageData(0, 0, 1, 1);
- // Shouldn't throw on its own.
- ctx.putImageData(data, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.putImageData(data, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.putImageData(data, 0, 0));
- t.done();
-
-});
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js
deleted file mode 100644
index 8810c3a73c..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.putImageData.worker.js
+++ /dev/null
@@ -1,32 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations.putImageData
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- const canvas2 = new OffscreenCanvas(200, 200);
- const ctx2 = canvas2.getContext('2d')
- const data = ctx2.getImageData(0, 0, 1, 1);
- // Shouldn't throw on its own.
- ctx.putImageData(data, 0, 0);
- // Make sure the exception isn't caused by calling the function twice.
- ctx.putImageData(data, 0, 0);
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => ctx.putImageData(data, 0, 0));
- t.done();
-});
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html
deleted file mode 100644
index 79c216421f..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html>
-<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
-<title>OffscreenCanvas test: 2d.layer.malformed-operations.transferToImageBitmap</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/html/canvas/resources/canvas-tests.js"></script>
-
-<h1>2d.layer.malformed-operations.transferToImageBitmap</h1>
-<p class="desc">Check that exceptions are thrown for operations that are malformed while layers are open.</p>
-
-
-<script>
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- canvas.transferToImageBitmap();
- // Make sure the exception isn't caused by calling the function twice.
- canvas.transferToImageBitmap();
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => canvas.transferToImageBitmap());
- t.done();
-
-});
-</script>
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js
deleted file mode 100644
index be0b43665a..0000000000
--- a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.transferToImageBitmap.worker.js
+++ /dev/null
@@ -1,29 +0,0 @@
-// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
-// OffscreenCanvas test in a worker:2d.layer.malformed-operations.transferToImageBitmap
-// Description:Check that exceptions are thrown for operations that are malformed while layers are open.
-// Note:
-
-importScripts("/resources/testharness.js");
-importScripts("/html/canvas/resources/canvas-tests.js");
-
-var t = async_test("Check that exceptions are thrown for operations that are malformed while layers are open.");
-var t_pass = t.done.bind(t);
-var t_fail = t.step_func(function(reason) {
- throw reason;
-});
-t.step(function() {
-
- var canvas = new OffscreenCanvas(200, 200);
- var ctx = canvas.getContext('2d');
-
- // Shouldn't throw on its own.
- canvas.transferToImageBitmap();
- // Make sure the exception isn't caused by calling the function twice.
- canvas.transferToImageBitmap();
- // Calling again inside a layer should throw.
- ctx.beginLayer();
- assert_throws_dom("InvalidStateError",
- () => canvas.transferToImageBitmap());
- t.done();
-});
-done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js
new file mode 100644
index 0000000000..5851fcfbc6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.malformed-operations.worker.js
@@ -0,0 +1,84 @@
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:2d.layer.malformed-operations
+// Description:
+// Note:
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.createPattern(canvas, 'repeat');
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.createPattern(canvas, 'repeat');
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.createPattern(canvas, 'repeat'));
+}, "Throws if createPattern is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d');
+ // Shouldn't throw on its own.
+ ctx2.drawImage(canvas, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx2.drawImage(canvas, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx2.drawImage(canvas, 0, 0));
+}, "Throws if drawImage is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ ctx.getImageData(0, 0, 200, 200);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.getImageData(0, 0, 200, 200);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.getImageData(0, 0, 200, 200));
+}, "Throws if getImageData is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ const canvas2 = new OffscreenCanvas(200, 200);
+ const ctx2 = canvas2.getContext('2d')
+ const data = ctx2.getImageData(0, 0, 1, 1);
+ // Shouldn't throw on its own.
+ ctx.putImageData(data, 0, 0);
+ // Make sure the exception isn't caused by calling the function twice.
+ ctx.putImageData(data, 0, 0);
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => ctx.putImageData(data, 0, 0));
+}, "Throws if putImageData is called while layers are open.");
+
+test(t => {
+ const canvas = new OffscreenCanvas(200, 200);
+ const ctx = canvas.getContext('2d');
+
+ // Shouldn't throw on its own.
+ canvas.transferToImageBitmap();
+ // Make sure the exception isn't caused by calling the function twice.
+ canvas.transferToImageBitmap();
+ // Calling again inside a layer should throw.
+ ctx.beginLayer();
+ assert_throws_dom("InvalidStateError",
+ () => canvas.transferToImageBitmap());
+}, "Throws if transferToImageBitmap is called while layers are open.");
+
+done();
diff --git a/testing/web-platform/tests/html/canvas/offscreen/text/WEB_FEATURES.yml b/testing/web-platform/tests/html/canvas/offscreen/text/WEB_FEATURES.yml
new file mode 100644
index 0000000000..1d9e4bab82
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/offscreen/text/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: canvas-text-baselines
+ files:
+ - 2d.text.measure.baselines.*
diff --git a/testing/web-platform/tests/html/canvas/tools/gentestutilsunion.py b/testing/web-platform/tests/html/canvas/tools/gentestutilsunion.py
index 57077f6057..415090a14a 100644
--- a/testing/web-platform/tests/html/canvas/tools/gentestutilsunion.py
+++ b/testing/web-platform/tests/html/canvas/tools/gentestutilsunion.py
@@ -345,17 +345,43 @@ class _Variant():
'desc': '',
'size': [100, 50],
'variant_names': [],
+ 'grid_variant_names': [],
+ 'images': [],
+ 'svgimages': [],
}
params.update(test)
return _Variant(params)
- def _get_variant_name(self, jinja_env: jinja2.Environment) -> str:
- name = self.params['name']
+ def merge_params(self, params: _TestParams) -> '_Variant':
+ """Returns a new `_Variant` that merges `self.params` and `params`."""
+ new_params = {}
+ new_params.update(self.params)
+ new_params.update(params)
+ return _Variant(new_params)
+
+ def with_grid_variant_name(self, name: str) -> '_Variant':
+ """Addend a variant name to include in the grid element label."""
+ self._params.update({
+ 'variant_names': (self.params['variant_names'] + [name]),
+ 'grid_variant_names': (self.params['grid_variant_names'] + [name]),
+ })
+ return self
+
+ def with_file_variant_name(self, name: str) -> '_Variant':
+ """Addend a variant name to include in the generated file name."""
+ self._params.update({
+ 'variant_names': (self.params['variant_names'] + [name]),
+ })
if self.params.get('append_variants_to_name', True):
- name = '.'.join([name] + self.params['variant_names'])
+ self._params['name'] = self.params['name'] + '.' + name
+ return self
+
+ def _render_param(self, jinja_env: jinja2.Environment,
+ param_name: str) -> str:
+ """Get the specified variant parameter and render it with Jinja."""
+ value = self.params[param_name]
+ return jinja_env.from_string(value).render(self.params)
- name = jinja_env.from_string(name).render(self.params)
- return name
def _get_file_name(self) -> str:
file_name = self.params['name']
@@ -389,9 +415,12 @@ class _Variant():
return _TemplateType.HTML_REFERENCE
return _TemplateType.TESTHARNESS
- def finalize_params(self, jinja_env: jinja2.Environment) -> None:
+ def finalize_params(self, jinja_env: jinja2.Environment,
+ variant_id: int) -> None:
"""Finalize this variant by adding computed param fields."""
- self._params['name'] = self._get_variant_name(jinja_env)
+ self._params['id'] = variant_id
+ self._params['name'] = self._render_param(jinja_env, 'name')
+ self._params['desc'] = self._render_param(jinja_env, 'desc')
self._params['file_name'] = self._get_file_name()
self._params['canvas_types'] = self._get_canvas_types()
self._params['template_type'] = self._get_template_type()
@@ -461,103 +490,282 @@ class _Variant():
self._params['expected_img'] = f'{name}.png'
+
+class _VariantGrid:
+
+ def __init__(self, variants: List[_Variant], grid_width: int) -> None:
+ self._variants = variants
+ self._grid_width = grid_width
+
+ self._file_name = None
+ self._canvas_types = None
+ self._template_type = None
+ self._params = None
+
+ @property
+ def variants(self) -> List[_Variant]:
+ """Read only getter for the list of variant in this grid."""
+ return self._variants
+
+ @property
+ def file_name(self):
+ """File name to which this grid will be written."""
+ if self._file_name is None:
+ self._file_name = self._unique_param('file_name')
+ return self._file_name
+
+ @property
+ def canvas_types(self) -> FrozenSet[_CanvasType]:
+ """Returns the set of all _CanvasType used by this grid's variants."""
+ if self._canvas_types is None:
+ self._canvas_types = self._param_set('canvas_types')
+ return self._canvas_types
+
+ @property
+ def template_type(self) -> _TemplateType:
+ """Returns the type of Jinja template needed to render this grid."""
+ if self._template_type is None:
+ self._template_type = self._unique_param('template_type')
+ return self._template_type
+
+ @property
+ def params(self) -> _TestParams:
+ """Returns this grid's param dict, used to render Jinja templates."""
+ if self._params is None:
+ if len(self.variants) == 1:
+ self._params = dict(self.variants[0].params)
+ else:
+ self._params = self._get_grid_params()
+ return self._params
+
+ def finalize(self, jinja_env: jinja2.Environment):
+ """Finalize this grid's variants, adding computed params fields."""
+ for variant_id, variant in enumerate(self.variants):
+ variant.finalize_params(jinja_env, variant_id)
+
+ def add_dimension(self, variants: Mapping[str,
+ _TestParams]) -> '_VariantGrid':
+ """Adds a variant dimension to this variant grid.
+
+ If the grid currently has N variants, adding a dimension with M variants
+ results in a grid containing N*M variants. Of course, we can't display
+ more than 2 dimensions on a 2D screen, so adding dimensions beyond 2
+ repeats all previous dimensions down vertically, with the grid width
+ set to the number of variants of the first dimension (unless overridden
+ by setting `grid_width`). For instance, a 3D variant space with
+ dimensions 3 x 2 x 2 will result in this layout:
+ 000 100 200
+ 010 110 210
+
+ 001 101 201
+ 011 111 211
+ """
+ new_variants = [
+ old_variant.merge_params(params or {}).with_grid_variant_name(name)
+ for name, params in variants.items()
+ for old_variant in self.variants
+ ]
+ # The first dimension dictates the grid-width, unless it was specified
+ # beforehand via the test params.
+ new_grid_width = (self._grid_width
+ if self._grid_width > 1 else len(variants))
+ return _VariantGrid(variants=new_variants, grid_width=new_grid_width)
+
+ def merge_params(self, name: str, params: _TestParams) -> '_VariantGrid':
+ """Merges the specified `params` into every variant of this grid."""
+ return _VariantGrid(variants=[
+ variant.merge_params(params).with_file_variant_name(name)
+ for variant in self.variants
+ ],
+ grid_width=self._grid_width)
+
+ def _variants_for_canvas_type(
+ self, canvas_type: _CanvasType) -> List[_TestParams]:
+ """Returns the variants of this grid enabled for `canvas_type`."""
+ return [
+ v.params for v in self.variants
+ if canvas_type in v.params['canvas_types']
+ ]
+
+ def _unique_param(self, name: str) -> Any:
+ """Returns the value of the `name` param for this grid.
+
+ All the variants in this grid must agree on the same value for this
+ parameter, or else an exception is thrown."""
+ values = {variant.params.get(name) for variant in self.variants}
+ if len(values) != 1:
+ raise InvalidTestDefinitionError(
+ 'All variants in a variant grid must use the same value '
+ f'for property "{name}". Got these values: {values}. '
+ 'Consider specifying the property outside of grid '
+ 'variants dimensions (in the base test definition or in a '
+ 'file variant dimension)')
+ return values.pop()
+
+ def _param_set(self, name: str):
+ """Returns the set of all values this grid has for the `name` param.
+
+ The `name` parameter of each variant is expected to be a sequence.
+ These are all accumulated in a set and returned."""
+ return frozenset(sum([list(v.params[name]) for v in self.variants],
+ []))
+
+ def _get_grid_params(self) -> _TestParams:
+ """Returns the params dict needed to render this grid with Jinja."""
+ filter_variant = self._variants_for_canvas_type
+ grid_params = {
+ 'element_variants': filter_variant(_CanvasType.HTML_CANVAS),
+ 'offscreen_variants': filter_variant(_CanvasType.OFFSCREEN_CANVAS),
+ 'worker_variants': filter_variant(_CanvasType.WORKER),
+ 'grid_width': self._grid_width,
+ 'name': self._unique_param('name'),
+ 'test_type': self._unique_param('test_type'),
+ 'fuzzy': self._unique_param('fuzzy'),
+ 'timeout': self._unique_param('timeout'),
+ 'notes': self._unique_param('notes'),
+ 'images': self._param_set('images'),
+ 'svgimages': self._param_set('svgimages'),
+ }
+ if self.template_type in (_TemplateType.REFERENCE,
+ _TemplateType.HTML_REFERENCE):
+ grid_params['desc'] = self._unique_param('desc')
+ return grid_params
+
def _write_reference_test(self, jinja_env: jinja2.Environment,
output_files: _OutputPaths):
+ grid = '_grid' if len(self.variants) > 1 else ''
+
+ # If variants don't all use the same offscreen and worker canvas types,
+ # the offscreen and worker grids won't be identical. The worker test
+ # therefore can't reuse the offscreen reference file.
+ offscreen_types = {_CanvasType.OFFSCREEN_CANVAS, _CanvasType.WORKER}
+ needs_worker_reference = len({
+ variant.params['canvas_types'] & offscreen_types
+ for variant in self.variants
+ }) != 1
+
params = dict(self.params)
- if _CanvasType.HTML_CANVAS in params['canvas_types']:
- _render(jinja_env, 'reftest_element.html', params,
+ params['reference_file'] = f'{params["name"]}-expected.html'
+ if _CanvasType.HTML_CANVAS in self.canvas_types:
+ _render(jinja_env, f'reftest_element{grid}.html', params,
f'{output_files.element}.html')
- if _CanvasType.OFFSCREEN_CANVAS in params['canvas_types']:
- _render(jinja_env, 'reftest_offscreen.html', params,
+ if _CanvasType.OFFSCREEN_CANVAS in self.canvas_types:
+ _render(jinja_env, f'reftest_offscreen{grid}.html', params,
f'{output_files.offscreen}.html')
- if _CanvasType.WORKER in params['canvas_types']:
- _render(jinja_env, 'reftest_worker.html', params,
+ if _CanvasType.WORKER in self.canvas_types:
+ if needs_worker_reference:
+ params['reference_file'] = f'{params["name"]}.w-expected.html'
+ _render(jinja_env, f'reftest_worker{grid}.html', params,
f'{output_files.offscreen}.w.html')
params['is_test_reference'] = True
- is_html_ref = params['template_type'] == _TemplateType.HTML_REFERENCE
- ref_template = 'reftest.html' if is_html_ref else 'reftest_element.html'
- if _CanvasType.HTML_CANVAS in params['canvas_types']:
- _render(jinja_env, ref_template, params,
+ is_html_ref = self.template_type == _TemplateType.HTML_REFERENCE
+ ref_template_name = (f'reftest{grid}.html'
+ if is_html_ref else f'reftest_element{grid}.html')
+
+ if _CanvasType.HTML_CANVAS in self.canvas_types:
+ _render(jinja_env, ref_template_name, params,
f'{output_files.element}-expected.html')
- if {_CanvasType.OFFSCREEN_CANVAS, _CanvasType.WORKER
- } & params['canvas_types']:
- _render(jinja_env, ref_template, params,
+
+ if self.canvas_types & offscreen_types:
+ # We use the same template for all reference files, so we need to
+ # assign the variant definition to the variable expected by the
+ # template.
+ params['element_variants'] = params.get('offscreen_variants')
+ _render(jinja_env, ref_template_name, params,
f'{output_files.offscreen}-expected.html')
+ if needs_worker_reference:
+ params['element_variants'] = params.get('worker_variants')
+ _render(jinja_env, ref_template_name, params,
+ f'{output_files.offscreen}.w-expected.html')
def _write_testharness_test(self, jinja_env: jinja2.Environment,
output_files: _OutputPaths):
+ grid = '_grid' if len(self.variants) > 1 else ''
+
# Create test cases for canvas and offscreencanvas.
- if _CanvasType.HTML_CANVAS in self.params['canvas_types']:
- _render(jinja_env, 'testharness_element.html', self.params,
+ if _CanvasType.HTML_CANVAS in self.canvas_types:
+ _render(jinja_env, f'testharness_element{grid}.html', self.params,
f'{output_files.element}.html')
-
- if _CanvasType.OFFSCREEN_CANVAS in self.params['canvas_types']:
- _render(jinja_env, 'testharness_offscreen.html', self.params,
- f'{output_files.offscreen}.html')
-
- if _CanvasType.WORKER in self.params['canvas_types']:
- _render(jinja_env, 'testharness_worker.js', self.params,
+ if _CanvasType.OFFSCREEN_CANVAS in self.canvas_types:
+ _render(jinja_env, f'testharness_offscreen{grid}.html',
+ self.params, f'{output_files.offscreen}.html')
+ if _CanvasType.WORKER in self.canvas_types:
+ _render(jinja_env, f'testharness_worker{grid}.js', self.params,
f'{output_files.offscreen}.worker.js')
def generate_test(self, jinja_env: jinja2.Environment,
output_dirs: _OutputPaths) -> None:
"""Generate the test files to the specified output dirs."""
- output_files = output_dirs.sub_path(self.params['file_name'])
+ output_files = output_dirs.sub_path(self.file_name)
- if self.params['template_type'] in (_TemplateType.REFERENCE,
- _TemplateType.HTML_REFERENCE):
+ if self.template_type in (_TemplateType.REFERENCE,
+ _TemplateType.HTML_REFERENCE):
self._write_reference_test(jinja_env, output_files)
else:
self._write_testharness_test(jinja_env, output_files)
-def _recursive_expand_variant_matrix(original_test: _TestParams,
- variant_matrix: List[_TestParams],
- current_selection: List[Tuple[str, Any]],
- test_variants: List[_Variant]):
- if len(current_selection) == len(variant_matrix):
- # Selection for each variant is done, so add a new test to test_list.
- test = dict(original_test)
- variant_name_list = []
- for variant_name, variant_params in current_selection:
- test.update(variant_params)
- variant_name_list.append(variant_name)
- # Expose variant names as a list so they can be used from the yaml
- # files, which helps with better naming of tests.
- test.update({'variant_names': variant_name_list})
- test_variants.append(_Variant.create_with_defaults(test))
- else:
- # Continue the recursion with each possible selection for the current
- # variant.
- variant = variant_matrix[len(current_selection)]
- for variant_options in variant.items():
- current_selection.append(variant_options)
- _recursive_expand_variant_matrix(original_test, variant_matrix,
- current_selection, test_variants)
- current_selection.pop()
-
-
-def _get_variants(test: _TestParams) -> List[_Variant]:
- current_selection = []
- test_variants = []
- variants = test.get('variants', [])
+class _VariantLayout(str, enum.Enum):
+ SINGLE_FILE = 'single_file'
+ MULTI_FILES = 'multi_files'
+
+
+@dataclasses.dataclass
+class _VariantDimension:
+ variants: Mapping[str, _TestParams]
+ layout: _VariantLayout
+
+
+def _get_variant_dimensions(params: _TestParams) -> List[_VariantDimension]:
+ variants = params.get('variants', [])
if not isinstance(variants, list):
raise InvalidTestDefinitionError(
textwrap.dedent("""
Variants must be specified as a list of variant dimensions, e.g.:
- variants:
- - dimension1-variant1:
- param: ...
- dimension1-variant2:
- param: ...
- - dimension2-variant1:
- param: ...
- dimension2-variant2:
- param: ..."""))
- _recursive_expand_variant_matrix(test, variants, current_selection,
- test_variants)
- return test_variants
+ variants:
+ - dimension1-variant1:
+ param: ...
+ dimension1-variant2:
+ param: ...
+ - dimension2-variant1:
+ param: ...
+ dimension2-variant2:
+ param: ..."""))
+
+ variants_layout = params.get('variants_layout',
+ [_VariantLayout.MULTI_FILES] * len(variants))
+ if len(variants) != len(variants_layout):
+ raise InvalidTestDefinitionError(
+ 'variants and variants_layout must be lists of the same size')
+ invalid_layouts = [
+ l for l in variants_layout if l not in list(_VariantLayout)
+ ]
+ if invalid_layouts:
+ raise InvalidTestDefinitionError('Invalid variants_layout: ' +
+ ', '.join(invalid_layouts) +
+ '. Valid layouts are: ' +
+ ', '.join(_VariantLayout))
+
+ return [
+ _VariantDimension(z[0], z[1]) for z in zip(variants, variants_layout)
+ ]
+
+
+def _get_variant_grids(test: Mapping[str, Any]) -> List[_VariantGrid]:
+ base_variant = _Variant.create_with_defaults(test)
+ grid_width = base_variant.params.get('grid_width', 1)
+ grids = [_VariantGrid([base_variant], grid_width=grid_width)]
+ for dimension in _get_variant_dimensions(test):
+ variants = dimension.variants
+ if dimension.layout == _VariantLayout.MULTI_FILES:
+ grids = [
+ grid.merge_params(name, params)
+ for name, params in variants.items() for grid in grids
+ ]
+ else:
+ grids = [grid.add_dimension(variants) for grid in grids]
+ return grids
def _check_uniqueness(tested: DefaultDict[str, Set[_CanvasType]], name: str,
@@ -619,21 +827,30 @@ def generate_test_files(name_to_dir_file: str) -> None:
except FileExistsError:
pass # Ignore if it already exists,
- used_tests = collections.defaultdict(set)
+ used_filenames = collections.defaultdict(set)
+ used_variants = collections.defaultdict(set)
for test in tests:
print(test['name'])
- for variant in _get_variants(test):
- variant.finalize_params(jinja_env)
- if test['name'] != variant.params['name']:
- print(f' {variant.params["name"]}')
+ for grid in _get_variant_grids(test):
+
+ grid.finalize(jinja_env)
+ if test['name'] != grid.file_name:
+ print(f' {grid.file_name}')
- sub_dir = _get_test_sub_dir(variant.params['file_name'],
- name_to_sub_dir)
+ sub_dir = _get_test_sub_dir(grid.file_name, name_to_sub_dir)
output_sub_dirs = output_dirs.sub_path(sub_dir)
- _check_uniqueness(used_tests, variant.params['name'],
- variant.params['canvas_types'])
- variant.generate_expected_image(output_sub_dirs)
- variant.generate_test(jinja_env, output_sub_dirs)
+ _check_uniqueness(used_filenames, grid.file_name,
+ grid.canvas_types)
+ for variant in grid.variants:
+ _check_uniqueness(
+ used_variants,
+ '.'.join([grid.file_name] +
+ variant.params['grid_variant_names']),
+ grid.canvas_types)
+
+ for variant in grid.variants:
+ variant.generate_expected_image(output_sub_dirs)
+ grid.generate_test(jinja_env, output_sub_dirs)
print()
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_element.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_element.html
index 6f7a8c8507..8f403f84f2 100644
--- a/testing/web-platform/tests/html/canvas/tools/templates/reftest_element.html
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_element.html
@@ -3,7 +3,7 @@
{% if test_type == 'promise' %}<html class="reftest-wait">
{% endif %}
{% if not is_test_reference %}
-<link rel="match" href="{{ name }}-expected.html">
+<link rel="match" href="{{ reference_file }}">
{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
{% endif %}
{% endif %}
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_element_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_element_grid.html
new file mode 100644
index 0000000000..d1c90bd993
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_element_grid.html
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+{% if test_type == 'promise' %}<html class="reftest-wait">
+<script>pending_tests = {{ element_variants | length }};</script>
+{% endif %}
+{% if not is_test_reference %}
+<link rel="match" href="{{ reference_file }}">
+{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
+{% endif %}
+{% endif %}
+{% if timeout %}<meta name="timeout" content="{{ timeout }}">
+{% endif %}
+<title>Canvas test: {{ name }}</title>
+<h1 style="font-size: 20px;">{{ name }}</h1>
+<p class="desc">{{ desc }}</p>
+{% if notes %}<p class="notes">{{ notes }}{% endif %}
+{% for image in images %}
+<img src="/images/{{ image }}" id="{{ image }}" class="resource">
+{% endfor -%}
+{% for svgimage in svgimages %}
+<svg><image xlink:href="/images/{{ svgimage }}" id="{{ svgimage
+ }}" class="resource"></svg>
+{% endfor %}
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat({{ grid_width }}, max-content);
+ font-size: 13px; text-align: center;">
+{% for variant in element_variants %}
+<span>
+ {% for variant_name in variant.grid_variant_names %}
+ <div>{{ variant_name }}</div>
+ {% endfor %}
+ <canvas id="canvas{{ variant.id
+ }}" width="{{ variant.size[0]
+ }}" height="{{ variant.size[1]
+ }}" style="outline: 1px solid"{{ variant.canvas }}>
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = document.getElementById("canvas{{ variant.id }}");
+ const ctx = canvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.reference | trim | indent(4) if is_test_reference else
+ variant.code_element | trim | indent(4) }}
+ {% if test_type == 'promise' %}
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove("reftest-wait");
+ }
+ {% endif %}
+ </script>
+</span>
+
+{% endfor %}
+</div>
+{% if test_type == 'promise' %}</html>{% endif %}
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_grid.html
new file mode 100644
index 0000000000..9fd42b7aa5
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_grid.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: {{ name }}</title>
+<h1 style="font-size: 20px;">{{ name }}</h1>
+<p class="desc">{{ desc }}</p>
+{% if notes %}<p class="notes">{{ notes }}{% endif %}
+{% for image in images %}
+<img src="/images/{{ image }}" id="{{ image }}" class="resource">
+{% endfor %}
+{% for svgimage in svgimages %}
+<svg><image xlink:href="/images/{{ svgimage
+ }}" id="{{ svgimage }}" class="resource"></svg>
+{% endfor %}
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat({{ grid_width }}, max-content);
+ font-size: 13px; text-align: center;">
+{% for variant in element_variants %}
+<span>
+ {% for variant_name in variant.grid_variant_names %}
+ <div>{{ variant_name }}</div>
+ {% endfor %}
+ <div style="width: {{ variant.size[0] }}px; height: {{ variant.size[1]
+ }}px; outline: 1px solid">
+ {{ variant.html_reference | trim | indent(4) }}
+ </div>
+</span>
+
+{% endfor %}
+</div>
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen.html
index abc840159f..2cd8e9750d 100644
--- a/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen.html
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen.html
@@ -2,7 +2,7 @@
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
{% if test_type == 'promise' %}<html class="reftest-wait">
{% endif %}
-<link rel="match" href="{{ name }}-expected.html">
+<link rel="match" href="{{ reference_file }}">
{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
{% endif %}
{% if timeout %}<meta name="timeout" content="{{ timeout }}">
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen_grid.html
new file mode 100644
index 0000000000..d001260bea
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_offscreen_grid.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+{% if test_type == 'promise' %}<html class="reftest-wait">
+<script>pending_tests = {{ offscreen_variants | length }};</script>
+{% endif %}
+<link rel="match" href="{{ reference_file }}">
+{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
+{% endif %}
+{% if timeout %}<meta name="timeout" content="{{ timeout }}">
+{% endif %}
+<title>Canvas test: {{ name }}</title>
+<h1 style="font-size: 20px;">{{ name }}</h1>
+<p class="desc">{{ desc }}</p>
+{% if notes %}<p class="notes">{{ notes }}{% endif %}
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat({{ grid_width }}, max-content);
+ font-size: 13px; text-align: center;">
+{% for variant in offscreen_variants %}
+<span>
+ {% for variant_name in variant.grid_variant_names %}
+ <div>{{ variant_name }}</div>
+ {% endfor %}
+ <canvas id="canvas{{ variant.id
+ }}" width="{{ variant.size[0]
+ }}" height="{{ variant.size[1]
+ }}" style="outline: 1px solid"{{ variant.canvas }}>
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script type="module">
+ const canvas = new OffscreenCanvas({{ variant.size[0] }}, {{
+ variant.size[1] }});
+ const ctx = canvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.code_offscreen | trim | indent(4) }}
+
+ const outputCanvas = document.getElementById("canvas{{ variant.id }}");
+ const outputCtx = outputCanvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+ outputCtx.drawImage(canvas, 0, 0);
+{% if test_type == 'promise' %}
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove("reftest-wait");
+ }
+{% endif %}
+ </script>
+</span>
+
+{% endfor %}
+</div>
+{% if test_type == 'promise' %}</html>{% endif %}
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker.html
index 02281af5d1..50aa29d00d 100644
--- a/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker.html
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker.html
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
<html class="reftest-wait">
-<link rel="match" href="{{ name }}-expected.html">
+<link rel="match" href="{{ reference_file }}">
{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
{% endif %}
{% if timeout %}<meta name="timeout" content="{{ timeout }}">
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker_grid.html
new file mode 100644
index 0000000000..652dddffd8
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/reftest_worker_grid.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<html class="reftest-wait">
+<link rel="match" href="{{ reference_file }}">
+{% if fuzzy %}<meta name=fuzzy content="{{ fuzzy }}">
+{% endif %}
+{% if timeout %}<meta name="timeout" content="{{ timeout }}">
+{% endif %}
+<title>Canvas test: {{ name }}</title>
+<h1 style="font-size: 20px;">{{ name }}</h1>
+<p class="desc">{{ desc }}</p>
+{% if notes %}<p class="notes">{{ notes }}{% endif %}
+<script>pending_tests = {{ worker_variants | length }};</script>
+
+<div style="display: grid; grid-gap: 4px;
+ grid-template-columns: repeat({{ grid_width }}, max-content);
+ font-size: 13px; text-align: center;">
+{% for variant in worker_variants %}
+<span>
+ {% for variant_name in variant.grid_variant_names %}
+ <div>{{ variant_name }}</div>
+ {% endfor %}
+ <canvas id="canvas{{ variant.id
+ }}" width="{{ variant.size[0]
+ }}" height="{{ variant.size[1]
+ }}" style="outline: 1px solid"{{ variant.canvas }}>
+ <p class="fallback">FAIL (fallback content)</p>
+ </canvas>
+ <script id="myWorker{{ variant.id }}" type="text/worker">
+ {% set async = 'async ' if test_type == 'promise' else '' %}
+ self.onmessage = {{async}}function(e) {
+ const canvas = new OffscreenCanvas({{
+ variant.size[0] }}, {{ variant.size[1] }});
+ const ctx = canvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.code_worker | trim | indent(6) }}
+
+ const bitmap = canvas.transferToImageBitmap();
+ self.postMessage(bitmap, bitmap);
+ };
+ </script>
+ <script type="module">
+ const blob = new Blob([document.getElementById('myWorker{{
+ variant.id }}').textContent]);
+ const worker = new Worker(URL.createObjectURL(blob));
+ worker.addEventListener('message', msg => {
+ const outputCanvas = document.getElementById('canvas{{ variant.id }}');
+ const outputCtx = outputCanvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+ outputCtx.drawImage(msg.data, 0, 0);
+ if (--pending_tests == 0) {
+ document.documentElement.classList.remove('reftest-wait');
+ }
+ });
+ worker.postMessage(null);
+ </script>
+</span>
+
+{% endfor %}
+</div>
+</html>
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/testharness_element_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/testharness_element_grid.html
new file mode 100644
index 0000000000..b8f0ffe020
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/testharness_element_grid.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>Canvas test: {{ name }}</title>
+{% if timeout %}<meta name="timeout" content="{{ timeout }}">{% endif %}
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
+
+{% if fonts %}
+<style>
+{% for font in fonts %}
+ @font-face {
+ font-family: {{ font }};
+ src: url("/fonts/{{ font }}.ttf");
+ }
+{% endfor %}
+</style>
+{% if not font_unused_in_dom %}
+{% for font in fonts %}
+<span style="font-family: {{ font }};
+ position: absolute; visibility: hidden">A</span>
+{% endfor %}
+{% endif %}
+{% endif %}
+{% for image in images %}
+<img src="/images/{{ image }}" id="{{ image }}" class="resource">
+{% endfor %}
+{% for svgimage in svgimages %}
+<svg><image xlink:href="/images/{{ svgimage }}" id="{{ svgimage
+ }}" class="resource"></svg>
+{% endfor %}
+<script>
+{% for variant in element_variants %}
+
+{% if test_type == 'promise' %}
+promise_test(async t => {
+{% elif test_type == 'async' %}
+async_test(t => {
+{% else %}
+test(t => {
+{% endif %}
+ const canvas = document.createElement('canvas');
+ const ctx = canvas.getContext('2d'{%
+ if attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.code_element | trim | indent(2) }}
+}, "{{ variant.desc | double_quote_escape }}");
+{% endfor %}
+
+</script>
+</div>
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/testharness_offscreen_grid.html b/testing/web-platform/tests/html/canvas/tools/templates/testharness_offscreen_grid.html
new file mode 100644
index 0000000000..6e5628036b
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/testharness_offscreen_grid.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
+<title>OffscreenCanvas test: {{ name }}</title>
+{% if timeout %}<meta name="timeout" content="{{ timeout }}">{% endif %}
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/html/canvas/resources/canvas-tests.js"></script>
+
+<script>
+{% for variant in offscreen_variants %}
+
+{% if test_type == 'promise' %}
+promise_test(async t => {
+{% elif test_type == 'async' %}
+async_test(t => {
+{% else %}
+test(t => {
+{% endif %}
+ const canvas = new OffscreenCanvas({{
+ variant.size[0] }}, {{ variant.size[1] }});
+ const ctx = canvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.code_offscreen | trim | indent(2)}}
+}, "{{ variant.desc | double_quote_escape }}");
+{% endfor %}
+
+</script>
diff --git a/testing/web-platform/tests/html/canvas/tools/templates/testharness_worker_grid.js b/testing/web-platform/tests/html/canvas/tools/templates/testharness_worker_grid.js
new file mode 100644
index 0000000000..53c3b69cb6
--- /dev/null
+++ b/testing/web-platform/tests/html/canvas/tools/templates/testharness_worker_grid.js
@@ -0,0 +1,27 @@
+{% if timeout %}// META: timeout={{ timeout }}{% endif %}
+// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
+// OffscreenCanvas test in a worker:{{ name }}
+// Description:{{ desc }}
+// Note:{% if notes %}<p class="notes">{{ notes }}{% endif +%}
+
+importScripts("/resources/testharness.js");
+importScripts("/html/canvas/resources/canvas-tests.js");
+{% for variant in worker_variants %}
+
+{% if test_type == 'promise' %}
+promise_test(async t => {
+{% elif test_type == 'async' %}
+async_test(t => {
+{% else %}
+test(t => {
+{% endif %}
+ const canvas = new OffscreenCanvas({{
+ variant.size[0] }}, {{ variant.size[1] }});
+ const ctx = canvas.getContext('2d'{%
+ if variant.attributes %}, {{ variant.attributes }}{% endif %});
+
+ {{ variant.code_worker | trim | indent(2)}}
+}, "{{ variant.desc | double_quote_escape }}");
+{% endfor %}
+
+done();
diff --git a/testing/web-platform/tests/html/canvas/tools/yaml-new/filters.yaml b/testing/web-platform/tests/html/canvas/tools/yaml-new/filters.yaml
index 1ce9d8ed74..9a738a37bd 100644
--- a/testing/web-platform/tests/html/canvas/tools/yaml-new/filters.yaml
+++ b/testing/web-platform/tests/html/canvas/tools/yaml-new/filters.yaml
@@ -617,8 +617,7 @@
tentative: .tentative
- name: >-
- 2d.filter.{{ variant_names[0] }}.gaussianBlur.{{ variant_names[1] }}{{
- tentative }}
+ 2d.filter.{{ variant_names[0] }}.gaussianBlur{{ tentative }}
desc: Test CanvasFilter() with gaussianBlur.
size: [100, 100]
code: |
@@ -633,13 +632,14 @@
<svg xmlns="http://www.w3.org/2000/svg"
width="{{ size[0] }}" height="{{ size[1] }}"
color-interpolation-filters="sRGB">
- <filter id="blur" x="-50%" y="-50%" width="200%" height="200%">
+ <filter id="blur{{ id }}" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="{{ blur_x }} {{blur_y}}" />
</filter>
<rect x="25" y="25" width="50" height="50"
- fill="teal" filter="url(#blur)" />
+ fill="teal" filter="url(#blur{{ id }})" />
</svg>
append_variants_to_name: false
+ variants_layout: [multi_files, single_file]
variants:
- layers:
filter_declaration: |-
diff --git a/testing/web-platform/tests/html/canvas/tools/yaml-new/layers.yaml b/testing/web-platform/tests/html/canvas/tools/yaml-new/layers.yaml
index d1e9a97043..e71155650b 100644
--- a/testing/web-platform/tests/html/canvas/tools/yaml-new/layers.yaml
+++ b/testing/web-platform/tests/html/canvas/tools/yaml-new/layers.yaml
@@ -1,14 +1,15 @@
- name: 2d.layer.global-states
desc: Checks that layers correctly use global render states.
- size: [200, 200]
+ size: [90, 90]
code: |
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
+ {{ transform_statement }}
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
- {{ render_states }}
+ {{ alpha_statement }}
+ {{ composite_op_statement }}
+ {{ shadow_statement }}
ctx.beginLayer();
@@ -16,118 +17,86 @@
// won't individually composite with the background.
ctx.globalCompositeOperation = 'screen';
- ctx.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
ctx.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
+ ctx.fillRect(30, 5, 50, 40);
ctx.endLayer();
reference: |
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
+ {{ transform_statement }}
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
- {{ render_states }}
+ {{ alpha_statement }}
+ {{ composite_op_statement }}
+ {{ shadow_statement }}
- canvas2 = document.createElement("canvas");
- ctx2 = canvas2.getContext("2d");
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
ctx2.globalCompositeOperation = 'screen';
- ctx2.fillStyle = 'rgba(225, 0, 0, 1)';
- ctx2.fillRect(50, 50, 75, 50);
+ ctx2.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 40, 50);
ctx2.fillStyle = 'rgba(0, 255, 0, 1)';
- ctx2.fillRect(70, 70, 75, 50);
+ ctx2.fillRect(30, 5, 50, 40);
ctx.drawImage(canvas2, 0, 0);
- variants:
- - &global-state-variants
- no-global-states:
- render_states: // No global states.
- alpha: &global-state-alpha
- render_states: ctx.globalAlpha = 0.6;
+ variants_layout: [single_file, multi_files, multi_files, multi_files]
+ variants: &global-state-variants
+ - no-globalAlpha:
+ alpha_statement: // No globalAlpha.
+ globalAlpha:
+ alpha_statement: ctx.globalAlpha = 0.75;
+ - no-composite-op:
+ composite_op_statement: // No globalCompositeOperation.
blending:
- render_states: ctx.globalCompositeOperation = 'multiply';
+ composite_op_statement: ctx.globalCompositeOperation = 'multiply';
composite:
- render_states: ctx.globalCompositeOperation = 'source-in';
+ composite_op_statement: ctx.globalCompositeOperation = 'source-in';
+ copy:
+ composite_op_statement: ctx.globalCompositeOperation = 'copy';
+ - no-shadow:
+ shadow_statement: // No shadow.
shadow:
- render_states: |-
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
- alpha.blending: &global-state-alpha-blending
- render_states: |-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- alpha.composite: &global-state-alpha-composite
- render_states: |-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- alpha.shadow: &global-state-alpha-shadow
- render_states: |-
- ctx.globalAlpha = 0.5;
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
- alpha.blending.shadow:
- render_states: |-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
- alpha.composite.shadow:
- render_states: |-
- ctx.globalAlpha = 0.6;
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
- blending.shadow:
- render_states: |-
- ctx.globalCompositeOperation = 'multiply';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
- ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
- ctx.shadowBlur = 3;
- composite.shadow:
- render_states: |-
- ctx.globalCompositeOperation = 'source-in';
- ctx.shadowOffsetX = -10;
- ctx.shadowOffsetY = 10;
+ shadow_statement: |-
+ ctx.shadowOffsetX = -7;
+ ctx.shadowOffsetY = 7;
ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
ctx.shadowBlur = 3;
+ - no-transform:
+ transform_statement: // No transform.
+ rotation:
+ transform_statement: |-
+ ctx.translate(50, 40);
+ ctx.rotate(Math.PI);
+ ctx.translate(-45, -45);
+
- name: 2d.layer.global-states.filter
desc: Checks that layers with filters correctly use global render states.
- size: [200, 200]
+ size: [90, 90]
code: |
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
+ {{ transform_statement }}
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
- {{ render_states }}
+ {{ alpha_statement }}
+ {{ composite_op_statement }}
+ {{ shadow_statement }}
ctx.beginLayer({filter: [
- {name: 'colorMatrix', values: [0.393, 0.769, 0.189, 0, 0,
- 0.349, 0.686, 0.168, 0, 0,
- 0.272, 0.534, 0.131, 0, 0,
- 0, 0, 0, 1, 0]},
+ {name: 'dropShadow',
+ dx: 5, dy: 5, stdDeviation: 0, floodColor: '#00f'},
{name: 'componentTransfer',
- funcA: {type: "table", tableValues: [0, 0.7]}},
- {name: 'dropShadow', dx: 5, dy: 5, floodColor: '#81e'}]});
+ funcA: {type: "table", tableValues: [0, 0.8]}}]});
- ctx.fillStyle = 'rgba(200, 0, 0, 1)';
- ctx.fillRect(50, 50, 75, 50);
- ctx.fillStyle = 'rgba(0, 200, 0, 1)';
- ctx.fillRect(70, 70, 75, 50);
+ ctx.fillStyle = 'rgba(255, 0, 0, 1)';
+ ctx.fillRect(10, 25, 40, 50);
+ ctx.fillStyle = 'rgba(0, 255, 0, 1)';
+ ctx.fillRect(30, 5, 50, 40);
ctx.endLayer();
reference: |
@@ -136,20 +105,14 @@
width="{{ size[0] }}" height="{{ size[1] }}"
color-interpolation-filters="sRGB">
<filter id="filter" x="-100%" y="-100%" width="300%" height="300%">
- <feColorMatrix
- type="matrix"
- values="0.393 0.769 0.189 0 0
- 0.349 0.686 0.168 0 0
- 0.272 0.534 0.131 0 0
- 0 0 0 1 0" />
+ <feDropShadow dx="5" dy="5" stdDeviation="0" flood-color="#00f" />
<feComponentTransfer>
- <feFuncA type="table" tableValues="0 0.7"></feFuncA>
+ <feFuncA type="table" tableValues="0 0.8"></feFuncA>
</feComponentTransfer>
- <feDropShadow dx="5" dy="5" flood-color="#81e" />
</filter>
<g filter="url(#filter)">
- <rect x="50" y="50" width="75" height="50" fill="rgba(200, 0, 0, 1)"/>
- <rect x="70" y="70" width="75" height="50" fill="rgba(0, 200, 0, 1)"/>
+ <rect x="10" y="25" width="40" height="50" fill="rgba(255, 0, 0, 1)"/>
+ <rect x="30" y="5" width="50" height="40" fill="rgba(0, 255, 0, 1)"/>
</g>
</svg>`;
@@ -157,31 +120,100 @@
img.width = {{ size[0] }};
img.height = {{ size[1] }};
img.onload = () => {
- ctx.fillStyle = 'rgba(0, 0, 255, 1)';
+ {{ transform_statement | indent(2) }}
- var circle = new Path2D();
- circle.arc(90, 90, 45, 0, 2 * Math.PI);
- ctx.fill(circle);
+ ctx.fillStyle = 'rgba(128, 128, 128, 1)';
+ ctx.fillRect(20, 15, 50, 50);
- {{ render_states }}
+ {{ alpha_statement | indent(2) }}
+ {{ composite_op_statement | indent(2) }}
+ {{ shadow_statement | indent(2) }}
ctx.drawImage(img, 0, 0);
};
img.src = 'data:image/svg+xml;base64,' + btoa(svg);
+ variants_layout: [single_file, multi_files, multi_files, multi_files]
+ variants: *global-state-variants
+
+- name: 2d.layer.globalCompositeOperation
+ desc: Checks that layers work with all globalCompositeOperation values.
+ size: [90, 90]
+ code: |
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = '{{ variant_names[0] }}';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ ctx.beginLayer();
+
+ ctx.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx.fillRect(10, 25, 25, 20);
+ ctx.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx.fillRect(25, 10, 20, 25);
+
+ ctx.endLayer();
+ reference: |
+ ctx.translate(50, 50);
+ ctx.scale(2, 2);
+ ctx.rotate(Math.PI);
+ ctx.translate(-25, -25);
+
+ ctx.fillStyle = 'rgba(0, 0, 255, 0.8)';
+ ctx.fillRect(15, 15, 25, 25);
+
+ ctx.globalAlpha = 0.75;
+ ctx.globalCompositeOperation = '{{ variant_names[0] }}';
+ ctx.shadowOffsetX = 7;
+ ctx.shadowOffsetY = 7;
+ ctx.shadowColor = 'rgba(255, 165, 0, 0.5)';
+
+ const canvas2 = document.createElement("canvas");
+ const ctx2 = canvas2.getContext("2d");
+
+ ctx2.fillStyle = 'rgba(204, 0, 0, 1)';
+ ctx2.fillRect(10, 25, 25, 20);
+ ctx2.fillStyle = 'rgba(0, 204, 0, 1)';
+ ctx2.fillRect(25, 10, 20, 25);
+
+ ctx.imageSmoothingEnabled = false;
+ ctx.drawImage(canvas2, 0, 0);
+ variants_layout: [single_file]
+ grid_width: 7
variants:
- - <<: *global-state-variants
- alpha:
- <<: *global-state-alpha
- fuzzy: maxDifference=0-2; totalPixels=0-6766
- alpha.blending:
- <<: *global-state-alpha-blending
- fuzzy: maxDifference=0-1; totalPixels=0-2453
- alpha.composite:
- <<: *global-state-alpha-composite
- fuzzy: maxDifference=0-1; totalPixels=0-5204
- alpha.shadow:
- <<: *global-state-alpha-shadow
- fuzzy: maxDifference=0-2; totalPixels=0-6311
+ - source-over:
+ source-in:
+ source-atop:
+ destination-over:
+ destination-in:
+ destination-out:
+ destination-atop:
+ lighter:
+ copy:
+ xor:
+ multiply:
+ screen:
+ overlay:
+ darken:
+ lighten:
+ color-dodge:
+ color-burn:
+ hard-light:
+ soft-light:
+ difference:
+ exclusion:
+ hue:
+ saturation:
+ color:
+ luminosity:
- name: 2d.layer.global-filter
desc: Tests that layers ignore the global context filter.
@@ -428,6 +460,7 @@
- name: 2d.layer.ctm.getTransform
desc: Tests getTransform inside layers.
+ test_type: sync
code: |
ctx.translate(10, 20);
ctx.beginLayer();
@@ -559,7 +592,7 @@
desc: Check that layers state stack is flushed and rebuilt on frame renders.
size: [200, 200]
canvas_types: ['HtmlCanvas']
- test_type: "promise"
+ test_type: promise
code: |
ctx.fillStyle = 'purple';
ctx.fillRect(60, 60, 75, 50);
@@ -599,10 +632,9 @@
ctx.fillRect(80, 40, 75, 50);
- name: 2d.layer.malformed-operations
- desc: >-
- Check that exceptions are thrown for operations that are malformed while
- layers are open.
+ desc: Throws if {{ variant_names[0] }} is called while layers are open.
size: [200, 200]
+ test_type: sync
code: |
{{ setup }}
// Shouldn't throw on its own.
@@ -613,6 +645,7 @@
ctx.beginLayer();
assert_throws_dom("InvalidStateError",
() => {{ operation }});
+ variants_layout: [single_file]
variants:
- createPattern:
operation: ctx.createPattern(canvas, 'repeat')
@@ -639,11 +672,9 @@
operation: canvas.transferToImageBitmap()
- name: 2d.layer.malformed-operations-with-promises
- desc: >-
- Check that exceptions are thrown for operations that are malformed while
- layers are open.
+ desc: Throws if {{ variant_names[0] }} is called while layers are open.
size: [200, 200]
- test_type: "promise"
+ test_type: promise
code: |
// Shouldn't throw on its own.
await {{ operation }};
@@ -651,7 +682,9 @@
await {{ operation }};
// Calling again inside a layer should throw.
ctx.beginLayer();
- await promise_rejects_dom(t, 'InvalidStateError', {{ operation }});
+ await promise_rejects_dom(t, 'InvalidStateError',
+ {{ operation }});
+ variants_layout: [single_file]
variants:
- convertToBlob:
canvas_types: ['OffscreenCanvas', 'Worker']
@@ -864,6 +897,7 @@
- name: 2d.layer.invalid-calls
desc: Raises exception on {{ variant_desc }}.
+ test_type: sync
code: |
assert_throws_dom("INVALID_STATE_ERR", function() {
{{ call_sequence | indent(2) }}
@@ -903,6 +937,7 @@
- name: 2d.layer.exceptions-are-no-op
desc: Checks that the context state is left unchanged if beginLayer throws.
+ test_type: sync
code: |
// Get `beginLayer` to throw while parsing the filter.
assert_throws_js(TypeError,
@@ -927,6 +962,7 @@
- name: 2d.layer.beginLayer-options
desc: Checks beginLayer works for different option parameter values
+ test_type: sync
code: |
ctx.beginLayer(); ctx.endLayer();
ctx.beginLayer(null); ctx.endLayer();
diff --git a/testing/web-platform/tests/html/canvas/tools/yaml/element/meta.yaml b/testing/web-platform/tests/html/canvas/tools/yaml/element/meta.yaml
index 5fd8b68498..12852e200a 100644
--- a/testing/web-platform/tests/html/canvas/tools/yaml/element/meta.yaml
+++ b/testing/web-platform/tests/html/canvas/tools/yaml/element/meta.yaml
@@ -390,18 +390,12 @@
('hsl-4', 'hsl(-360240, 100%, 50%)', 0,255,0,255, ""),
('hsl-5', 'hsl(120.0, 100.0%, 50.0%)', 0,255,0,255, ""),
('hsl-6', 'hsl(+120, +100%, +50%)', 0,255,0,255, ""),
- ('hsl-clamp-1', 'hsl(120, 200%, 50%)', 0,255,0,255, ""),
- ('hsl-clamp-2', 'hsl(120, -200%, 49.9%)', 127,127,127,255, ""),
- ('hsl-clamp-3', 'hsl(120, 100%, 200%)', 255,255,255,255, ""),
- ('hsl-clamp-4', 'hsl(120, 100%, -200%)', 0,0,0,255, ""),
+ ('hsl-clamp-negative-saturation', 'hsl(120, -200%, 49.9%)', 127,127,127,255, ""),
('hsla-1', 'hsla(120, 100%, 50%, 0.499)', 0,255,0,127, ""),
('hsla-2', 'hsla( 120.0 , 100.0% , 50.0% , 1 )', 0,255,0,255, ""),
- ('hsla-clamp-1', 'hsla(120, 200%, 50%, 1)', 0,255,0,255, ""),
- ('hsla-clamp-2', 'hsla(120, -200%, 49.9%, 1)', 127,127,127,255, ""),
- ('hsla-clamp-3', 'hsla(120, 100%, 200%, 1)', 255,255,255,255, ""),
- ('hsla-clamp-4', 'hsla(120, 100%, -200%, 1)', 0,0,0,255, ""),
- ('hsla-clamp-5', 'hsla(120, 100%, 50%, 2)', 0,255,0,255, ""),
- ('hsla-clamp-6', 'hsla(120, 100%, 0%, -2)', 0,0,0,0, ""),
+ ('hsla-clamp-negative-saturation', 'hsla(120, -200%, 49.9%, 1)', 127,127,127,255, ""),
+ ('hsla-clamp-alpha-1', 'hsla(120, 100%, 50%, 2)', 0,255,0,255, ""),
+ ('hsla-clamp-alpha-2', 'hsla(120, 100%, 0%, -2)', 0,0,0,0, ""),
('svg-1', 'gray', 128,128,128,255, ""),
('svg-2', 'grey', 128,128,128,255, ""),
# css-color-4 rgb() color function
diff --git a/testing/web-platform/tests/html/canvas/tools/yaml/offscreen/meta.yaml b/testing/web-platform/tests/html/canvas/tools/yaml/offscreen/meta.yaml
index 7b44fd9f26..b07898224d 100644
--- a/testing/web-platform/tests/html/canvas/tools/yaml/offscreen/meta.yaml
+++ b/testing/web-platform/tests/html/canvas/tools/yaml/offscreen/meta.yaml
@@ -346,18 +346,12 @@
('hsl-4', 'hsl(-360240, 100%, 50%)', 0,255,0,255, ""),
('hsl-5', 'hsl(120.0, 100.0%, 50.0%)', 0,255,0,255, ""),
('hsl-6', 'hsl(+120, +100%, +50%)', 0,255,0,255, ""),
- ('hsl-clamp-1', 'hsl(120, 200%, 50%)', 0,255,0,255, ""),
- ('hsl-clamp-2', 'hsl(120, -200%, 49.9%)', 127,127,127,255, ""),
- ('hsl-clamp-3', 'hsl(120, 100%, 200%)', 255,255,255,255, ""),
- ('hsl-clamp-4', 'hsl(120, 100%, -200%)', 0,0,0,255, ""),
+ ('hsl-clamp-negative-saturation', 'hsl(120, -200%, 49.9%)', 127,127,127,255, ""),
('hsla-1', 'hsla(120, 100%, 50%, 0.499)', 0,255,0,127, ""),
('hsla-2', 'hsla( 120.0 , 100.0% , 50.0% , 1 )', 0,255,0,255, ""),
- ('hsla-clamp-1', 'hsla(120, 200%, 50%, 1)', 0,255,0,255, ""),
- ('hsla-clamp-2', 'hsla(120, -200%, 49.9%, 1)', 127,127,127,255, ""),
- ('hsla-clamp-3', 'hsla(120, 100%, 200%, 1)', 255,255,255,255, ""),
- ('hsla-clamp-4', 'hsla(120, 100%, -200%, 1)', 0,0,0,255, ""),
- ('hsla-clamp-5', 'hsla(120, 100%, 50%, 2)', 0,255,0,255, ""),
- ('hsla-clamp-6', 'hsla(120, 100%, 0%, -2)', 0,0,0,0, ""),
+ ('hsla-clamp-negative-saturation', 'hsla(120, -200%, 49.9%, 1)', 127,127,127,255, ""),
+ ('hsla-clamp-alpha-1', 'hsla(120, 100%, 50%, 2)', 0,255,0,255, ""),
+ ('hsla-clamp-alpha-2', 'hsla(120, 100%, 0%, -2)', 0,0,0,0, ""),
('svg-1', 'gray', 128,128,128,255, ""),
('svg-2', 'grey', 128,128,128,255, ""),
# css-color-4 rgb() color function
diff --git a/testing/web-platform/tests/html/cross-origin-embedder-policy/META.yml b/testing/web-platform/tests/html/cross-origin-embedder-policy/META.yml
index dc7010880b..066fcc2081 100644
--- a/testing/web-platform/tests/html/cross-origin-embedder-policy/META.yml
+++ b/testing/web-platform/tests/html/cross-origin-embedder-policy/META.yml
@@ -1,7 +1,6 @@
spec: https://html.spec.whatwg.org/multipage/origin.html#coep
suggested_reviewers:
- mikewest
- - jugglinmike
- arturjanc
- lweichselbaum
- hemeryar
diff --git a/testing/web-platform/tests/html/cross-origin-opener-policy/META.yml b/testing/web-platform/tests/html/cross-origin-opener-policy/META.yml
index b9d578d22f..69c67da459 100644
--- a/testing/web-platform/tests/html/cross-origin-opener-policy/META.yml
+++ b/testing/web-platform/tests/html/cross-origin-opener-policy/META.yml
@@ -1,7 +1,6 @@
spec: https://html.spec.whatwg.org/multipage/origin.html#cross-origin-opener-policies
suggested_reviewers:
- mikewest
- - jugglinmike
- arturjanc
- lweichselbaum
- hemeryar
diff --git a/testing/web-platform/tests/html/dom/WEB_FEATURES.yml b/testing/web-platform/tests/html/dom/WEB_FEATURES.yml
new file mode 100644
index 0000000000..5c9e27d297
--- /dev/null
+++ b/testing/web-platform/tests/html/dom/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: aria-attribute-reflection
+ files:
+ - aria-attribute-reflection.html
diff --git a/testing/web-platform/tests/html/dom/aria-element-reflection.html b/testing/web-platform/tests/html/dom/aria-element-reflection.html
index bdf2450708..e04610171b 100644
--- a/testing/web-platform/tests/html/dom/aria-element-reflection.html
+++ b/testing/web-platform/tests/html/dom/aria-element-reflection.html
@@ -611,7 +611,7 @@
</script>
<div id="sameScopeContainer">
- <div id="labeledby" aria-labeledby="headingLabel1 headingLabel2">Misspelling</div>
+ <div id="labelledby" aria-labelledby="headingLabel1 headingLabel2">Misspelling</div>
<div id="headingLabel1">Wonderful</div>
<div id="headingLabel2">Fantastic</div>
@@ -626,7 +626,7 @@
const headingLabel2 = document.getElementById("headingLabel2")
shadowRoot.appendChild(headingElement);
- assert_array_equals(labeledby.ariaLabelledByElements, [headingLabel1, headingLabel2], "aria-labeled by is supported by IDL getter.");
+ assert_array_equals(labelledby.ariaLabelledByElements, [headingLabel1, headingLabel2], "aria-labelledby is supported by IDL getter.");
// Explicitly set elements are in a lighter shadow DOM, so that's ok.
headingElement.ariaLabelledByElements = [headingLabel1, headingLabel2];
diff --git a/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-003.tentative.html b/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-003.tentative.html
index ec2d8d5ead..e8c12c784f 100644
--- a/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-003.tentative.html
+++ b/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-003.tentative.html
@@ -37,8 +37,8 @@ body {
dialog::backdrop {
top: calc(anchor(top) - 10px);
right: calc(anchor(right) - 10px);
- bottom: calc(anchor(bottom) - 10px);
- left: calc(anchor(left) - 10px);
+ bottom: calc(anchor(bottom, 0px) - 10px);
+ left: calc(anchor(left, 0px) - 10px);
background: lime;
}
diff --git a/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html b/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html
new file mode 100644
index 0000000000..c5e6d81826
--- /dev/null
+++ b/testing/web-platform/tests/html/dom/elements/global-attributes/the-anchor-attribute-xml.tentative.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel="help" href="https://github.com/whatwg/html/pull/9144">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+<script>
+test(() => {
+ const xmlDoc = document.implementation.createDocument(null, 'root', null);
+ assert_equals(xmlDoc.contentType, 'application/xml');
+ xmlDoc.documentElement.innerHTML = '<div id="target">target</div><div anchor="target">anchored</div>';
+ assert_equals(xmlDoc.documentElement.innerHTML,
+ '<div id="target">target</div><div anchor="target">anchored</div>');
+ const target = xmlDoc.documentElement.children[0];
+ const anchored = xmlDoc.documentElement.children[1];
+
+ assert_equals(xmlDoc.documentElement.children[1].anchorElement, null,
+ 'Setting the anchor attribute in XML should not set the anchorElement IDL.');
+
+ anchored.anchorElement = target;
+ assert_equals(xmlDoc.documentElement.children[1].anchorElement, null,
+ 'Setting element.anchorElement in an XML document should not set the anchorElement IDL.');
+});
+</script>
diff --git a/testing/web-platform/tests/html/dom/render-blocking/WEB_FEATURES.yml b/testing/web-platform/tests/html/dom/render-blocking/WEB_FEATURES.yml
new file mode 100644
index 0000000000..36ab4f3010
--- /dev/null
+++ b/testing/web-platform/tests/html/dom/render-blocking/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: blocking-render
+ files: "**"
diff --git a/testing/web-platform/tests/html/dom/usvstring-reflection.https.html b/testing/web-platform/tests/html/dom/usvstring-reflection.https.html
index 775cb49281..d8d830dc59 100644
--- a/testing/web-platform/tests/html/dom/usvstring-reflection.https.html
+++ b/testing/web-platform/tests/html/dom/usvstring-reflection.https.html
@@ -124,7 +124,7 @@ promise_test(t => {
const sendString = 'hello\uD999';
const receiveString = 'hello\uFFFD';
- return createDataChannelPair(t)
+ return createDataChannelPair(t, {})
.then(([channel1, channel2]) => {
channel1.send(sendString);
return awaitMessage(channel2)
diff --git a/testing/web-platform/tests/html/editing/dnd/events/drag-event-div-manual.html b/testing/web-platform/tests/html/editing/dnd/events/drag-event-div-manual.html
index 79c0c4332d..505b0049be 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/drag-event-div-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/drag-event-div-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire drag event when dragging a div element"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/drag-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/drag-event-manual.html
index d278b864bb..d3f517ea1d 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/drag-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/drag-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire drag event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/dragend-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/dragend-event-manual.html
index 8bfb1fb7b6..b4bb621e88 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/dragend-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/dragend-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire dragend event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragendEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragendEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/dragenter-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/dragenter-event-manual.html
index e81b32949c..23b404b0b1 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/dragenter-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/dragenter-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire dragenter event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragenterEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragenterEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/dragleave-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/dragleave-event-manual.html
index f6a405915f..a400fa3417 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/dragleave-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/dragleave-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire dragleave event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragleaveEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragleaveEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/dragover-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/dragover-event-manual.html
index f8d99241d5..f37a33cff6 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/dragover-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/dragover-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire dragover event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragoverEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragoverEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/dragstart-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/dragstart-event-manual.html
index 20786648da..9128401ffa 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/dragstart-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/dragstart-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire dragstart event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DragstartEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DragstartEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/events/drop-event-manual.html b/testing/web-platform/tests/html/editing/dnd/events/drop-event-manual.html
index 2897bd5713..8393e38696 100644
--- a/testing/web-platform/tests/html/editing/dnd/events/drop-event-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/events/drop-event-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#drag-and-drop-processing-model"/>
<meta name="assert" content="Fire drop event during the drag and drop processing"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -14,11 +13,11 @@
{
if ((TARGET == evt.target) && (EVENT == evt.type))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -27,7 +26,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DropEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DropEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/resources/dragdrop_support.js b/testing/web-platform/tests/html/editing/dnd/resources/dragdrop_support.js
deleted file mode 100644
index f5a1d6417f..0000000000
--- a/testing/web-platform/tests/html/editing/dnd/resources/dragdrop_support.js
+++ /dev/null
@@ -1,9 +0,0 @@
-function AddEventListenersForElement(evt, callback, capture, element)
-{
- element.addEventListener(evt, callback, capture);
-}
-
-function LogTestResult(result)
-{
- document.getElementById("test_result").firstChild.data = result;
-}
diff --git a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/effectAllowed-manual.html b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/effectAllowed-manual.html
index 08540b906a..61443da2c0 100644
--- a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/effectAllowed-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/effectAllowed-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#datatransfer"/>
<meta name="assert" content="Set a value to effectAllowed attribute"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var TARGETEVENT1, TARGETEVENT2, TARGET1, TARGET2;
@@ -23,11 +22,11 @@
{
if("move" == evt.dataTransfer.effectAllowed)
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
}
@@ -39,8 +38,8 @@
{
TARGET1 = document.getElementById("target1");
TARGET2 = document.getElementById("target2");
- AddEventListenersForElement(TARGETEVENT1, DragstartEvent, false, TARGET1);
- AddEventListenersForElement(TARGETEVENT2, DragenterEvent, false, TARGET2);
+ TARGET1.addEventListener(TARGETEVENT1, DragstartEvent, false);
+ TARGET2.addEventListener(TARGETEVENT2, DragenterEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/files-manual.html b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/files-manual.html
index 7de0b4bbce..ffafb66db4 100644
--- a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/files-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/files-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#datatransfer"/>
<meta name="assert" content="files attribute returns a FileList"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -17,16 +16,16 @@
var files = evt.dataTransfer.files;
if(('[object FileList]' == files))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -45,9 +44,9 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DropEvent, false, TARGET);
- AddEventListenersForElement("dragenter", DragenterEvent, false, TARGET);
- AddEventListenersForElement("dragover", DragoverEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DropEvent, false);
+ TARGET.addEventListener("dragenter", DragenterEvent, false);
+ TARGET.addEventListener("dragover", DragoverEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/setData-manual.html b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/setData-manual.html
index f0f7cae600..1438e932ad 100644
--- a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/setData-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/setData-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#datatransfer"/>
<meta name="assert" content="Add an item to the drag data store item list whose data is the string given by setData method's second argument"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var TARGETEVENT1, TARGETEVENT2, TARGET1, TARGET2;
@@ -23,11 +22,11 @@
{
if("SetText" == evt.dataTransfer.getData("text"))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
}
@@ -39,8 +38,8 @@
{
TARGET1 = document.getElementById("target1");
TARGET2 = document.getElementById("target2");
- AddEventListenersForElement(TARGETEVENT1, DragstartEvent, false, TARGET1);
- AddEventListenersForElement(TARGETEVENT2, DropEvent, false, TARGET2);
+ TARGET1.addEventListener(TARGETEVENT1, DragstartEvent, false);
+ TARGET2.addEventListener(TARGETEVENT2, DropEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/types-manual.html b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/types-manual.html
index 1730c4bc73..3aa1404e29 100644
--- a/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/types-manual.html
+++ b/testing/web-platform/tests/html/editing/dnd/the-datatransfer-interface/types-manual.html
@@ -6,7 +6,6 @@
<link rel="author" title="Microsoft" href="http://www.microsoft.com/"/>
<link rel="help" href="http://dev.w3.org/html5/spec/dnd.html#datatransfer"/>
<meta name="assert" content="types attribute returns a DOMStringList"/>
- <script src="../resources/dragdrop_support.js" type="text/javascript"></script>
<script type="text/javascript">
var EVENT, TARGET;
@@ -17,16 +16,16 @@
var types = evt.dataTransfer.types;
if(('[object DOMStringList]' == types))
{
- LogTestResult("PASS");
+ document.getElementById("test_result").firstChild.data = "PASS";
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
else
{
- LogTestResult("FAIL");
+ document.getElementById("test_result").firstChild.data = "FAIL";
}
}
@@ -35,7 +34,7 @@
window.onload = function()
{
TARGET = document.getElementById("target");
- AddEventListenersForElement(EVENT, DropEvent, false, TARGET);
+ TARGET.addEventListener(EVENT, DropEvent, false);
}
</script>
</head>
diff --git a/testing/web-platform/tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html b/testing/web-platform/tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html
index c9b41d0a0d..5be96d37a4 100644
--- a/testing/web-platform/tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html
+++ b/testing/web-platform/tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-simple-success.https.html
@@ -23,6 +23,7 @@
"Uint32Array",
"BigInt64Array",
"BigUint64Array",
+ "Float16Array",
"Float32Array",
"Float64Array"
].forEach(type => {
diff --git a/testing/web-platform/tests/html/interaction/focus/WEB_FEATURES.yml b/testing/web-platform/tests/html/interaction/focus/WEB_FEATURES.yml
new file mode 100644
index 0000000000..210e2d3f99
--- /dev/null
+++ b/testing/web-platform/tests/html/interaction/focus/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: tabindex
+ files:
+ - tabindex-focus-flag.html
diff --git a/testing/web-platform/tests/html/interaction/focus/sequential-focus-navigation-and-the-tabindex-attribute/WEB_FEATURES.yml b/testing/web-platform/tests/html/interaction/focus/sequential-focus-navigation-and-the-tabindex-attribute/WEB_FEATURES.yml
new file mode 100644
index 0000000000..6d868044c9
--- /dev/null
+++ b/testing/web-platform/tests/html/interaction/focus/sequential-focus-navigation-and-the-tabindex-attribute/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: tabindex
+ files: "**"
diff --git a/testing/web-platform/tests/html/meta/refresh-time.html b/testing/web-platform/tests/html/meta/refresh-time.html
new file mode 100644
index 0000000000..7aef1266a2
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/refresh-time.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test fractional values in meta http-equiv=refresh</title>
+<link rel="author" title="Psychpsyo" href="mailto:psychpsyo@gmail.com">
+<link rel="help" href="https://html.spec.whatwg.org/#pragma-directives">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+<script>
+ async function sleep(ms, test) {
+ return new Promise(resolve => {test.step_timeout(resolve, ms)});
+ }
+
+ promise_test(async test => {
+ const frame = document.createElement("iframe");
+ document.body.appendChild(frame);
+ frame.src = "resources/refresh1.html";
+ await sleep(500, test);
+ assert_equals(frame.contentWindow.document.title, "refresh 1");
+ await sleep(1000, test);
+ assert_equals(frame.contentWindow.document.title, "got refreshed");
+ }, "Ensure that refresh is observed");
+
+ promise_test(async test => {
+ const frame = document.createElement("iframe");
+ document.body.appendChild(frame);
+ frame.src = "resources/refresh.99.html";
+ await sleep(500, test);
+ assert_equals(frame.contentWindow.document.title, "got refreshed");
+ }, "Ensure that fractions in refresh time are ignored");
+
+ promise_test(async test => {
+ const frame = document.createElement("iframe");
+ document.body.appendChild(frame);
+ frame.src = "resources/refresh1.99.html";
+ await sleep(500, test);
+ assert_equals(frame.contentWindow.document.title, "refresh 1.99");
+ await sleep(1000, test);
+ assert_equals(frame.contentWindow.document.title, "got refreshed");
+ }, "Ensure that non-fractional part in refresh time does not get discarded");
+
+ promise_test(async test => {
+ const frame = document.createElement("iframe");
+ document.body.appendChild(frame);
+ frame.src = "resources/refresh1dotdot5dot.html";
+ await sleep(500, test);
+ assert_equals(frame.contentWindow.document.title, "refresh 1..5.");
+ await sleep(750, test);
+ assert_equals(frame.contentWindow.document.title, "got refreshed");
+ }, "Ensure that multiple periods in refresh time just get ignored");
+</script>
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/meta/resources/gotRefreshed.html b/testing/web-platform/tests/html/meta/resources/gotRefreshed.html
new file mode 100644
index 0000000000..c894269593
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/resources/gotRefreshed.html
@@ -0,0 +1,3 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>got refreshed</title> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/meta/resources/refresh.99.html b/testing/web-platform/tests/html/meta/resources/refresh.99.html
new file mode 100644
index 0000000000..ca4e346277
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/resources/refresh.99.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>refresh .99</title>
+
+<meta http-equiv="refresh" content=".99;url=gotRefreshed.html"> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/meta/resources/refresh1.99.html b/testing/web-platform/tests/html/meta/resources/refresh1.99.html
new file mode 100644
index 0000000000..76121cfd40
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/resources/refresh1.99.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>refresh 1.99</title>
+
+<meta http-equiv="refresh" content="1.99;url=gotRefreshed.html"> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/meta/resources/refresh1.html b/testing/web-platform/tests/html/meta/resources/refresh1.html
new file mode 100644
index 0000000000..14819dc3db
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/resources/refresh1.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>refresh 1</title>
+
+<meta http-equiv="refresh" content="1;url=gotRefreshed.html"> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/meta/resources/refresh1dotdot5dot.html b/testing/web-platform/tests/html/meta/resources/refresh1dotdot5dot.html
new file mode 100644
index 0000000000..085b9e9ba7
--- /dev/null
+++ b/testing/web-platform/tests/html/meta/resources/refresh1dotdot5dot.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>refresh 1..5.</title>
+
+<meta http-equiv="refresh" content="1..5.;url=gotRefreshed.html"> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/rendering/non-replaced-elements/flow-content-0/WEB_FEATURES.yml b/testing/web-platform/tests/html/rendering/non-replaced-elements/flow-content-0/WEB_FEATURES.yml
new file mode 100644
index 0000000000..831b257f72
--- /dev/null
+++ b/testing/web-platform/tests/html/rendering/non-replaced-elements/flow-content-0/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: search
+ files:
+ - search-*
diff --git a/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref-2.html b/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref-2.html
index 385c2a75d4..5246123186 100644
--- a/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref-2.html
+++ b/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref-2.html
@@ -9,7 +9,7 @@ div {
appearance: none;
background: black;
- color: black;
+ color: transparent;
line-height: 100px;
width: 100px;
diff --git a/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html b/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html
index 3834281dd8..3d30c2bd9d 100644
--- a/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html
+++ b/testing/web-platform/tests/html/rendering/replaced-elements/the-select-element/select-1-block-size-001-ref.html
@@ -10,7 +10,7 @@ button {
appearance: none;
background: black;
- color: black;
+ color: transparent;
line-height: 100px;
width: 100px;
diff --git a/testing/web-platform/tests/html/rendering/the-details-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/rendering/the-details-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..769e741180
--- /dev/null
+++ b/testing/web-platform/tests/html/rendering/the-details-element/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: details
+ files: "**"
diff --git a/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance-ref.html b/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance-ref.html
new file mode 100644
index 0000000000..33e0e6ac16
--- /dev/null
+++ b/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance-ref.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset="utf-8">
+<input type="password" style="appearance: none; background-color: blue">
diff --git a/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance.html b/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance.html
new file mode 100644
index 0000000000..3c85b100a1
--- /dev/null
+++ b/testing/web-platform/tests/html/rendering/widgets/input-password-background-suppresses-appearance.html
@@ -0,0 +1,7 @@
+<!doctype html>
+<meta charset="utf-8">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1895561">
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="match" href="input-password-background-suppresses-appearance-ref.html">
+<title>backgrounds disable native password input appearance</title>
+<input type="password" style="background-color: blue">
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/WEB_FEATURES.yml
new file mode 100644
index 0000000000..5730fe4715
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: preserves-pitch
+ files:
+ - preserves-pitch.html
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..d3411c2d8d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: constraint-validation
+ files:
+ - object-setcustomvalidity.html
diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/WEB_FEATURES.yml
new file mode 100644
index 0000000000..457c904005
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: dirname
+ files:
+ - dirname-*
diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/constraints/WEB_FEATURES.yml
new file mode 100644
index 0000000000..93b4c5745f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/constraints/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: constraint-validation
+ files: "**"
diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-textarea-defaultValue.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-textarea-defaultValue.html
new file mode 100644
index 0000000000..55276116ad
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-textarea-defaultValue.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>textarea validation behavior</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel="help" href="https://html.spec.whatwg.org/multipage/#suffering-from-being-too-short">
+<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-constraint-validation-api">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<textarea id=t1 minlength=5 required></textarea>
+<textarea id=t2 minlength=5 required>a</textarea>
+<textarea id=t3 required>a</textarea>
+<textarea id=t4>a</textarea>
+<script>
+test(() => {
+ const emptyMinlength = document.getElementById('t1');
+ const nonEmptyMinlength = document.getElementById('t2');
+ const nonEmptyRequired = document.getElementById('t3');
+ const nonEmptyNonRequired = document.getElementById('t4');
+ assert_false(emptyMinlength.validity.valid,'Empty textareas with constraints will validate');
+ assert_true(nonEmptyMinlength.validity.valid,'Non-empty textareas with constraints will *not* validate');
+ assert_true(nonEmptyRequired.validity.valid,'Textareas without constraints will validate');
+ assert_true(nonEmptyNonRequired.validity.valid,'Textareas without constraints will validate');
+ [t1,t2,t3,t4].forEach(t => t.remove());
+},'Default validity based on emptiness');
+</script>
+
+<textarea id=t5 minlength=5 required></textarea>
+<script>
+promise_test(async () => {
+ const textarea = document.getElementById('t5');
+ document.querySelector('#t1');
+ assert_false(textarea.validity.valid,'By default, this textarea will validate (and fail) because it started empty');
+ textarea.defaultValue = 'abc';
+ assert_true(textarea.validity.valid,'Programmatically setting defaultValue is not a user edit - automatically valid');
+ textarea.replaceChildren('abcd');
+ assert_true(textarea.validity.valid,'Programmatically replacing children is not a user edit - automatically valid');
+ textarea.defaultValue = 'abcde';
+ assert_true(textarea.validity.valid,'Still valid');
+ textarea.remove();
+},'Setting textarea.defaultValue should not trigger validation');
+</script>
+
+<textarea id=t6 minlength=5 required></textarea>
+<script>
+promise_test(async () => {
+ const textarea = document.getElementById('t6');
+ assert_false(textarea.validity.valid,'By default, this textarea will validate (and fail) because it started empty');
+ await test_driver.send_keys(textarea, "abc");
+ assert_false(textarea.validity.valid,'Keystrokes should trigger validation, which will fail (length 3)');
+ await test_driver.send_keys(textarea, "de");
+ assert_equals(textarea.value,"abcde");
+ assert_true(textarea.validity.valid,'Now valid');
+ textarea.remove();
+},'User keystrokes should trigger validation');
+</script>
+
+<textarea id=t7 minlength=5 required></textarea>
+<script>
+promise_test(async () => {
+ const textarea = document.getElementById('t7');
+ textarea.addEventListener('input', (e) => {
+ e.target.defaultValue = e.target.value;
+ });
+ assert_false(textarea.validity.valid,'By default, this textarea will validate (and fail) because it started empty');
+ await test_driver.send_keys(textarea, "abc");
+ assert_equals(textarea.value,"abc");
+ assert_false(textarea.validity.valid,'Still invalid with 3 characters');
+ await test_driver.send_keys(textarea, "de");
+ assert_equals(textarea.value,"abcde");
+ assert_true(textarea.validity.valid,'With 5 characters, now valid');
+ textarea.remove();
+},'Setting textarea.defaultValue from the input event handler should trigger validation');
+</script>
+
+<textarea id=t8 minlength=5 required></textarea>
+<script>
+promise_test(async () => {
+ const textarea = document.getElementById('t8');
+ textarea.addEventListener('input', (e) => {
+ e.target.replaceChildren(e.target.value);
+ });
+ assert_false(textarea.validity.valid,'By default, this textarea will validate (and fail) because it started empty');
+ await test_driver.send_keys(textarea, "abc");
+ assert_equals(textarea.value,"abc");
+ assert_false(textarea.validity.valid,'Still invalid with 3 characters');
+ await test_driver.send_keys(textarea, "de");
+ assert_equals(textarea.value,"abcde");
+ assert_true(textarea.validity.valid,'With 5 characters, now valid');
+ textarea.remove();
+},'Calling textarea.replaceChildren() from the input event handler should trigger validation');
+</script>
+
+<style>
+ :invalid { background-color: rgb(248, 203, 203); }
+</style>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-button-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..f5a2aeaf4f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/WEB_FEATURES.yml
@@ -0,0 +1,10 @@
+features:
+- name: constraint-validation
+ files:
+ - button-checkvalidity.html
+ - button-setcustomvalidity.html
+ - button-validation.html
+ - button-validationmessage.html
+ - button-validity.html
+ - button-willvalidate-readonly-attribute.html
+ - button-willvalidate.html
diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..912cb47c6d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/WEB_FEATURES.yml
@@ -0,0 +1,8 @@
+features:
+- name: constraint-validation
+ files:
+ - fieldset-checkvalidity.html
+ - fieldset-setcustomvalidity.html
+ - fieldset-validationmessage.html
+ - fieldset-validity.html
+ - fieldset-willvalidate.html
diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-form-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..04c20cb5ec
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: constraint-validation
+ files:
+ - form-checkvalidity.html
diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-input-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..4957615f24
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/WEB_FEATURES.yml
@@ -0,0 +1,11 @@
+features:
+- name: constraint-validation
+ files:
+ - input-checkvalidity.html
+ - input-setcustomvalidity.html
+ - input-validationmessage.html
+ - input-validity.html
+ - input-willvalidate.html
+- name: show-picker-input
+ files:
+ - show-picker-*
diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-02.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-02.html
new file mode 100644
index 0000000000..db71d11009
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-02.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML>
+<title>Input Step Down</title>
+
+<link rel="help" href="https://html.spec.whatwg.org/multipage/input.html#dom-input-stepup">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<input type='number' id='input'>
+
+<script>
+ const input = document.getElementById("input");
+
+ function testStepDown(initialValue, minValue, expectedValue) {
+ input.value = initialValue;
+ input.min = minValue;
+
+ input.stepDown();
+
+ assert_equals(input.value, expectedValue);
+ }
+
+ const tests = [
+ { initialValue: '', minValue: '', expectedValue: '-1', description: 'stepDown() on input with no initial or min values' },
+ { initialValue: '', minValue: '7', expectedValue: '7', description: 'stepDown() on input with no initial value and positive min value' },
+ { initialValue: '', minValue: '-7', expectedValue: '-1', description: 'stepDown() on input with no initial value and negative min value' },
+ { initialValue: '7', minValue: '7', expectedValue: '7', description: 'stepDown() on input with initial value equal to min value' },
+ { initialValue: '3', minValue: '7', expectedValue: '3', description: 'stepDown() on input with initial value less than min value' },
+ { initialValue: '10', minValue: '7', expectedValue: '9', description: 'stepDown() on input with initial value greater than min value' },
+ ];
+
+ for(const t of tests) {
+ test(()=>{
+ testStepDown(
+ t.initialValue,
+ t.minValue,
+ t.expectedValue
+ );
+ },
+ t.description);
+ }
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-output-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-output-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..2f7f8e8cc2
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-output-element/WEB_FEATURES.yml
@@ -0,0 +1,5 @@
+features:
+- name: constraint-validation
+ files:
+ - output-setcustomvalidity.html
+ - output-validity.html
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-select-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..9695c95294
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/WEB_FEATURES.yml
@@ -0,0 +1,9 @@
+features:
+- name: constraint-validation
+ files:
+ - select-setcustomvalidity.html
+ - select-validity.html
+ - select-willvalidate-readonly-attribute.html
+- name: show-picker-select
+ files:
+ - show-picker-*
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist-ref.html
new file mode 100644
index 0000000000..87918b6a92
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<select>
+ <option>one</option>
+ <hr>
+ <option>two</option>
+</select>
+
+<script>
+(async () => {
+ await test_driver.click(document.querySelector('select'));
+ document.documentElement.classList.remove('reftest-wait');
+})();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html
new file mode 100644
index 0000000000..a968c6a164
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/native-popup-with-datalist.tentative.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://github.com/whatwg/html/issues/9799">
+<link rel=match href="native-popup-with-datalist-ref.html">
+<link rel=assert title="The native popup of a select should show options descending from datalists">
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<select>
+ <datalist>
+ <div>
+ <option>one</option>
+ <hr>
+ <option>two</option>
+ </div>
+ </datalist>
+</select>
+
+<script>
+(async () => {
+ await test_driver.click(document.querySelector('select'));
+ document.documentElement.classList.remove('reftest-wait');
+})();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html
new file mode 100644
index 0000000000..7e89a5ad42
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/nested-options.tenative.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://bugs.chromium.org/p/chromium/issues/detail?id=1422275">
+<link rel=help href="https://chromium-review.googlesource.com/c/chromium/src/+/5441435/1#message-cd8841d92a672a0276ab536dfaf3a20e93d5e6e3">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<select>
+ <datalist>
+ <option id=o1>
+ parent
+ <option id=o2>child</option>
+</option>
+ </datalist>
+</select>
+
+<script>
+const select = document.querySelector('select');
+
+test(() => {
+ assert_equals(select.innerHTML, `
+ <datalist>
+ <option id="o1">
+ parent
+ </option><option id="o2">child</option>
+
+ </datalist>
+`);
+}, 'The HTML parser should disallow nested options in select datalist.');
+
+// Manually nest the <options> anyway for the following tests.
+o1.appendChild(o2);
+
+test(() => {
+ assert_equals(select.options.length, 2, 'select.options.length');
+ assert_equals(select.options[0], o1, 'select.options[0]');
+ assert_equals(select.options[1], o2, 'select.options[1]');
+}, 'Nested <options> should be listed in <select> IDLs.');
+
+promise_test(async () => {
+ await test_driver.bless();
+ select.showPicker();
+}, 'Showing the popup with nested <option>s should not crash.');
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/select-reset-non-interoperable-styles.css b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/select-reset-non-interoperable-styles.css
deleted file mode 100644
index d2b9d9df26..0000000000
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/select-reset-non-interoperable-styles.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/* TODO(crbug.com/1511354): linux.css sets background-color on select, consider
- * removing it. */
-select {
- background-color: Field;
-}
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/stylable-select-styles.css b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/stylable-select-styles.css
index 042de838d1..5ee317d61a 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/stylable-select-styles.css
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/resources/stylable-select-styles.css
@@ -1,9 +1,6 @@
/* These are UA styles for select and stylable select. */
.stylable-select-container {
- background-color: Field;
- border: 1px solid rgba(0, 0, 0, 0);
- border-radius: 0;
box-sizing: border-box;
display: inline-block;
}
@@ -14,7 +11,8 @@
overflow: auto;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25em;
- padding: 0.25em 0;
+ padding-block: 0.25em;
+ padding-inline: 0;
background-color: Field;
margin: 0;
inset: auto;
@@ -35,3 +33,46 @@
padding: 0px 2px 1px;
white-space: nowrap;
}
+
+.stylable-select-button {
+ color: FieldText;
+ background-color: Field;
+ appearance: none;
+ padding: 0.25em;
+ border: 1px solid ButtonBorder;
+ cursor: default;
+ text-align: inherit;
+ display: inline-flex;
+ flex-grow: 1;
+ flex-shrink: 1;
+ align-items: center;
+ overflow-x: hidden;
+ overflow-y: hidden;
+}
+
+.stylable-select-button-icon {
+ background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4%206%20L10%2012%20L%2016%206%22%20stroke%3D%22WindowText%22%20stroke-width%3D%223%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E);
+ background-origin: content-box;
+ background-repeat: no-repeat;
+ background-size: contain;
+ opacity: 1;
+ outline: none;
+ margin-inline-start: 0.25em;
+ padding-block: 2px;
+ padding-inline: 3px;
+ block-size: 1.0em;
+ inline-size: 1.2em;
+ min-inline-size: 1.2em;
+ max-inline-size: 1.2em;
+ display: block;
+}
+
+.stylable-select-selectedoption {
+ color: inherit;
+ min-inline-size: 0px;
+ max-block-size: 100%;
+ flex-grow: 1;
+ flex-shrink: 1;
+ overflow: hidden;
+ display: inline;
+}
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist-ref.html
new file mode 100644
index 0000000000..10c966a107
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist-ref.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<link rel=stylesheet href="resources/stylable-select-styles.css">
+
+<div id=container class=stylable-select-container>
+ <button>one</button>
+ <div id=popover popover=auto anchor=container class=stylable-select-datalist>
+ <div class=stylable-select-option>one</div>
+ <div class=stylable-select-option>two</div>
+ </div>
+</div>
+
+<script>
+document.getElementById('popover').showPopover();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist.tentative.html
index 94d7fd53b3..aaceabcf05 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-custom-button-no-datalist.tentative.html
@@ -2,8 +2,7 @@
<html class=reftest-wait>
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://github.com/whatwg/html/issues/9799">
-<link rel=match href="select-appearance-no-button-custom-datalist-ref.html">
-<link rel=stylesheet href="resources/select-reset-non-interoperable-styles.css">
+<link rel=match href="select-appearance-custom-button-no-datalist-ref.html">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist-ref.html
deleted file mode 100644
index 8e5eadaf57..0000000000
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist-ref.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!DOCTYPE html>
-<link rel=stylesheet href="resources/stylable-select-styles.css">
-
-<div id=container class=stylable-select-container>
- <button popovertarget=popover id=button>one</button>
- <div id=popover popover=auto anchor=container class=stylable-select-datalist>
- <div class=stylable-select-option>one</div>
- <div class=stylable-select-option>two</div>
- </div>
-</div>
-
-<script>
-document.getElementById('popover').showPopover();
-</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist.tentative.html
index 87425cf7a3..cc8a4c60bd 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-custom-datalist.tentative.html
@@ -2,8 +2,7 @@
<html class=reftest-wait>
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://github.com/whatwg/html/issues/9799">
-<link rel=match href="select-appearance-no-button-custom-datalist-ref.html">
-<link rel=stylesheet href="resources/select-reset-non-interoperable-styles.css">
+<link rel=match href="select-appearance-no-button-no-datalist-ref.html">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist-ref.html
new file mode 100644
index 0000000000..3c6e9416b0
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<link rel=stylesheet href="resources/stylable-select-styles.css">
+
+<div id=container class=stylable-select-container>
+ <button class=stylable-select-button popovertarget=popover id=button>
+ <span class=stylable-select-selectedoption>one</span>
+ <div class=stylable-select-button-icon></div>
+ </button>
+ <div id=popover popover=auto anchor=container class=stylable-select-datalist>
+ <div class=stylable-select-option>one</div>
+ <div class=stylable-select-option>two</div>
+ </div>
+</div>
+
+<script>
+document.getElementById('popover').showPopover();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist.tentative.html
index b2a6b5a6d3..29261b7f25 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-no-button-no-datalist.tentative.html
@@ -2,8 +2,7 @@
<html class=reftest-wait>
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://github.com/whatwg/html/issues/9799">
-<link rel=match href="select-appearance-no-button-custom-datalist-ref.html">
-<link rel=stylesheet href="resources/select-reset-non-interoperable-styles.css">
+<link rel=match href="select-appearance-no-button-no-datalist-ref.html">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr-ref.html
new file mode 100644
index 0000000000..8b7e6402fb
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<link rel=stylesheet href="resources/stylable-select-styles.css">
+
+<style>
+html {
+ writing-mode: vertical-lr;
+}
+</style>
+
+<div id=container class=stylable-select-container>
+ <button class=stylable-select-button popovertarget=popover id=button>
+ <span class=stylable-select-selectedoption>one</span>
+ <div class=stylable-select-button-icon></div>
+ </button>
+ <div id=popover popover=auto anchor=container class=stylable-select-datalist>
+ <div class=stylable-select-option>one</div>
+ <div class=stylable-select-option>two</div>
+ </div>
+</div>
+
+<script>
+document.getElementById('popover').showPopover();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html
new file mode 100644
index 0000000000..2f8a6aa886
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-lr.tentative.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://github.com/whatwg/html/issues/9799">
+<link rel=match href="select-appearance-writing-mode-vertical-lr-ref.html">
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<style>
+html {
+ writing-mode: vertical-lr;
+}
+select {
+ appearance: base-select;
+}
+</style>
+
+<select>
+ <option>one</option>
+ <option>two</option>
+</select>
+
+<script>
+(async () => {
+ await test_driver.bless();
+ document.querySelector('select').showPicker();
+ document.documentElement.classList.remove('reftest-wait');
+})();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl-ref.html
new file mode 100644
index 0000000000..158807ba58
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<link rel=stylesheet href="resources/stylable-select-styles.css">
+
+<style>
+html {
+ writing-mode: vertical-rl;
+}
+</style>
+
+<div id=container class=stylable-select-container>
+ <button class=stylable-select-button popovertarget=popover id=button>
+ <span class=stylable-select-selectedoption>one</span>
+ <div class=stylable-select-button-icon></div>
+ </button>
+ <div id=popover popover=auto anchor=container class=stylable-select-datalist>
+ <div class=stylable-select-option>one</div>
+ <div class=stylable-select-option>two</div>
+ </div>
+</div>
+
+<script>
+document.getElementById('popover').showPopover();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html
new file mode 100644
index 0000000000..c2ea647be9
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-appearance-writing-mode-vertical-rl.tentative.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://github.com/whatwg/html/issues/9799">
+<link rel=match href="select-appearance-writing-mode-vertical-rl-ref.html">
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<style>
+html {
+ writing-mode: vertical-rl;
+}
+select {
+ appearance: base-select;
+}
+</style>
+
+<select>
+ <option>one</option>
+ <option>two</option>
+</select>
+
+<script>
+(async () => {
+ await test_driver.bless();
+ document.querySelector('select').showPicker();
+ document.documentElement.classList.remove('reftest-wait');
+})();
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist-invalidation.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist-invalidation.tentative.html
index b6d85ac90a..822a63e104 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist-invalidation.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist-invalidation.tentative.html
@@ -3,7 +3,6 @@
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://github.com/whatwg/html/issues/9799">
<link rel=match href="select-child-button-and-datalist-ref.html">
-<link rel=stylesheet href="resources/select-reset-non-interoperable-styles.css">
<style>
.blue {
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist.tentative.html
index 610861aad8..9b2f53df28 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-child-button-and-datalist.tentative.html
@@ -2,7 +2,6 @@
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://github.com/whatwg/html/issues/9799">
<link rel=match href="select-child-button-and-datalist-ref.html">
-<link rel=stylesheet href="resources/select-reset-non-interoperable-styles.css">
<style>
.blue {
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html
new file mode 100644
index 0000000000..caea2a2f8d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-datalist-popover-behavior.tentative.html
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://bugs.chromium.org/p/chromium/issues/detail?id=1422275">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+
+<select style="appearance:base-select">
+ <button type=popover>button</button>
+ <datalist>
+ <option class=one>one</option>
+ <option class=two>two</option>
+ </datalist>
+</select>
+
+<script>
+const select = document.querySelector('select');
+const datalist = document.querySelector('datalist');
+const firstOption = document.querySelector('option.one');
+const secondOption = document.querySelector('option.two');
+
+promise_test(async () => {
+ datalist.showPopover();
+ assert_true(datalist.matches(':popover-open'));
+ datalist.hidePopover();
+ assert_false(datalist.matches(':popover-open'));
+}, 'showPopover and hidePopover should work on the select datalist.');
+
+promise_test(async () => {
+ await test_driver.bless();
+ select.showPicker();
+ assert_true(datalist.matches(':popover-open'));
+ datalist.hidePopover();
+}, 'showPicker should show the select datalist.');
+
+promise_test(async () => {
+ datalist.addEventListener('beforetoggle', event => {
+ event.preventDefault();
+ }, {once: true});
+ await test_driver.bless();
+ select.showPicker();
+ assert_false(datalist.matches(':popover-open'));
+}, 'preventDefault on beforetoggle should prevent the datalist from showing.');
+
+promise_test(async () => {
+ select.remove();
+ assert_throws_dom('InvalidStateError', () => datalist.showPopover());
+ assert_false(datalist.matches(':popover-open'));
+ document.body.appendChild(select);
+}, 'showPopover on a disconnected datalist should throw an exception.');
+
+promise_test(async () => {
+ datalist.addEventListener('beforetoggle', event => {
+ select.remove();
+ }, {once: true});
+ await test_driver.bless();
+ select.showPicker();
+ assert_false(!!select.parentNode);
+ assert_false(datalist.matches(':popover-open'));
+ document.body.appendChild(select);
+}, 'Disconnecting while internally showing the datalist should not crash or show the popover.');
+
+promise_test(async () => {
+ datalist.showPopover();
+ datalist.addEventListener('beforetoggle', event => {
+ select.remove();
+ }, {once: true});
+ await test_driver.click(secondOption);
+ assert_false(!!select.parentNode);
+ assert_false(datalist.matches(':popover-open'));
+ document.body.appendChild(select);
+}, 'Disconnecting while internally hiding the datalist should not crash.');
+</script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-keyboard-behavior.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-keyboard-behavior.tentative.html
index 2fb11ba68b..8b06212169 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-keyboard-behavior.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-select-element/stylable-select/select-keyboard-behavior.tentative.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name=timeout content=long>
<link rel=author href="mailto:jarhar@chromium.org">
<link rel=help href="https://bugs.chromium.org/p/chromium/issues/detail?id=1422275">
<link rel=help href="https://github.com/openui/open-ui/issues/433#issuecomment-1452461404">
@@ -68,6 +69,7 @@ for (const id of ['defaultbutton-defaultdatalist',
async function closeListbox() {
await test_driver.click(select);
+ await new Promise(requestAnimationFrame);
}
function addCloseCleanup(t) {
@@ -96,6 +98,7 @@ for (const id of ['defaultbutton-defaultdatalist',
assert_false(select.matches(':open'),
'The select should initially be closed.');
await test_driver.send_keys(document.activeElement, Space);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'The select should be open after pressing space.');
}, `${id}: When the listbox is closed, spacebar should open the listbox.`);
@@ -108,6 +111,7 @@ for (const id of ['defaultbutton-defaultdatalist',
'The select should initially be closed.');
await test_driver.send_keys(document.activeElement, ArrowLeft);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'Arrow left should open the listbox.');
assert_equals(select.value, 'two',
@@ -115,6 +119,7 @@ for (const id of ['defaultbutton-defaultdatalist',
await closeListbox();
await test_driver.send_keys(document.activeElement, ArrowUp);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'Arrow up should open the listbox.');
assert_equals(select.value, 'two',
@@ -122,6 +127,7 @@ for (const id of ['defaultbutton-defaultdatalist',
await closeListbox();
await test_driver.send_keys(document.activeElement, ArrowRight);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'Arrow right should open the listbox.');
assert_equals(select.value, 'two',
@@ -129,6 +135,7 @@ for (const id of ['defaultbutton-defaultdatalist',
await closeListbox();
await test_driver.send_keys(document.activeElement, ArrowDown);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'Arrow down should open the listbox.');
assert_equals(select.value, 'two',
@@ -147,6 +154,7 @@ for (const id of ['defaultbutton-defaultdatalist',
} else {
await test_driver.send_keys(select, Enter);
}
+ await new Promise(requestAnimationFrame);
assert_false(select.matches(':open'),
'Enter should not open the listbox when outside a form.');
@@ -161,6 +169,7 @@ for (const id of ['defaultbutton-defaultdatalist',
} else {
await test_driver.send_keys(select, Enter);
}
+ await new Promise(requestAnimationFrame);
assert_true(formWasSubmitted,
'Enter should submit the form when the listbox is closed.');
assert_false(select.matches(':open'),
@@ -175,30 +184,35 @@ for (const id of ['defaultbutton-defaultdatalist',
select.value = 'two';
await test_driver.click(select);
+ await new Promise(requestAnimationFrame);
assert_true(select.matches(':open'),
'The select should open when clicked.');
assert_equals(document.activeElement, optionTwo,
'The selected option should receive initial focus.');
await test_driver.send_keys(document.activeElement, ArrowDown);
+ await new Promise(requestAnimationFrame);
assert_equals(document.activeElement, optionThree,
'The next option should receive focus when the down arrow key is pressed.');
assert_equals(select.value, 'two',
'The selects value should not change when focusing another option.');
await test_driver.send_keys(document.activeElement, ArrowUp);
+ await new Promise(requestAnimationFrame);
assert_equals(document.activeElement, optionTwo,
'The previous option should receive focus when the up arrow key is pressed.');
assert_equals(select.value, 'two',
'The selects value should not change when focusing another option.');
await test_driver.send_keys(document.activeElement, ArrowUp);
+ await new Promise(requestAnimationFrame);
assert_equals(document.activeElement, optionOne,
'The first option should be selected.');
assert_equals(select.value, 'two',
'The selects value should not change when focusing another option.');
await test_driver.send_keys(document.activeElement, Enter);
+ await new Promise(requestAnimationFrame);
assert_false(select.matches(':open'),
'The listbox should be closed after pressing enter.');
assert_equals(select.value, 'one',
diff --git a/testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html b/testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html
index 2d51002fb2..8c620bacca 100644
--- a/testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html
+++ b/testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html
@@ -3,6 +3,8 @@
<title>HTMLSelectListElement Test: option arbitrary content displayed</title>
<link rel="author" title="Ionel Popescu" href="mailto:iopopesc@microsoft.com">
<link rel=match href="selectlist-option-arbitrary-content-displayed-ref.tentative.html">
+<!-- Tolerate slight differences in the shadow gradient. -->
+<meta name=fuzzy content="maxDifference=0-1;totalPixels=0-200">
<link rel="stylesheet" href="/fonts/ahem.css">
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
diff --git a/testing/web-platform/tests/html/semantics/forms/the-textarea-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/forms/the-textarea-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..14479d4bb3
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/forms/the-textarea-element/WEB_FEATURES.yml
@@ -0,0 +1,6 @@
+features:
+- name: constraint-validation
+ files:
+ - textarea-setcustomvalidity.html
+ - textarea-validity-clone.html
+ - textarea-validity-valueMissing-inside-datalist.html
diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..be3924a26a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: details-name
+ files:
+ - name-attribute.html
diff --git a/testing/web-platform/tests/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html
new file mode 100644
index 0000000000..b5a481ae08
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/invokers/interesttarget-anchor-event-dispatch.tentative.html
@@ -0,0 +1,47 @@
+<!doctype html>
+<meta charset="utf-8" />
+<meta name="author" title="Keith Cirkel" href="mailto:keithamus@github.com" />
+<meta name="author" title="Luke Warlow" href="mailto:lwarlow@igalia.com" />
+<link rel="help" href="https://open-ui.org/components/invokers.explainer/" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/invoker-utils.js"></script>
+
+<div id="interestee"></div>
+<a href="/" id="interestanchor" interesttarget="interestee">Anchor</a>
+<button id="otherbutton">Other Button</button>
+
+<script>
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ interestanchor.focus();
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestanchor, "invoker");
+ }, "InterestEvent dispatches on anchor focus");
+
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ await hoverOver(interestanchor);
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestanchor, "invoker");
+ }, "InterestEvent dispatches on anchor hover");
+</script>
diff --git a/testing/web-platform/tests/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html
new file mode 100644
index 0000000000..358acbb73a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/invokers/interesttarget-area-event-dispatch.tentative.html
@@ -0,0 +1,50 @@
+<!doctype html>
+<meta charset="utf-8" />
+<meta name="author" title="Keith Cirkel" href="mailto:keithamus@github.com" />
+<meta name="author" title="Luke Warlow" href="mailto:lwarlow@igalia.com" />
+<link rel="help" href="https://open-ui.org/components/invokers.explainer/" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/invoker-utils.js"></script>
+
+<div id="interestee"></div>
+<map id="map">
+ <area href="/" shape="default" id="interestarea" interesttarget="interestee">
+</map>
+<img src="/images/blue.png" usemap="#map">
+<button id="otherbutton">Other Button</button>
+
+<script>
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ interestarea.focus();
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestarea, "invoker");
+ }, "InterestEvent dispatches on area focus");
+
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ await hoverOver(interestarea);
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestarea, "invoker");
+ }, "InterestEvent dispatches on area hover");
+</script>
diff --git a/testing/web-platform/tests/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html
index 7fdfdfaa70..69126dbe14 100644
--- a/testing/web-platform/tests/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html
+++ b/testing/web-platform/tests/html/semantics/invokers/interesttarget-button-event-dispatch.tentative.html
@@ -12,7 +12,6 @@
<div id="interestee"></div>
<button id="interestbutton" interesttarget="interestee">Button</button>
-<a href="/" id="interestanchor" interesttarget="interestee">Anchor</a>
<button id="otherbutton">Other Button</button>
<script>
@@ -50,36 +49,6 @@
t.add_cleanup(() => otherbutton.focus());
let event = null;
interestee.addEventListener("interest", (e) => (event = e), { once: true });
- interestanchor.focus();
- assert_true(event instanceof InterestEvent, "event is InterestEvent");
- assert_equals(event.type, "interest", "type");
- assert_equals(event.bubbles, false, "bubbles");
- assert_equals(event.composed, true, "composed");
- assert_equals(event.isTrusted, true, "isTrusted");
- assert_equals(event.action, "", "action");
- assert_equals(event.target, interestee, "target");
- assert_equals(event.invoker, interestanchor, "invoker");
- }, "InterestEvent dispatches on anchor focus");
-
- promise_test(async function (t) {
- t.add_cleanup(() => otherbutton.focus());
- let event = null;
- interestee.addEventListener("interest", (e) => (event = e), { once: true });
- await hoverOver(interestanchor);
- assert_true(event instanceof InterestEvent, "event is InterestEvent");
- assert_equals(event.type, "interest", "type");
- assert_equals(event.bubbles, false, "bubbles");
- assert_equals(event.composed, true, "composed");
- assert_equals(event.isTrusted, true, "isTrusted");
- assert_equals(event.action, "", "action");
- assert_equals(event.target, interestee, "target");
- assert_equals(event.invoker, interestanchor, "invoker");
- }, "InterestEvent dispatches on anchor hover");
-
- promise_test(async function (t) {
- t.add_cleanup(() => otherbutton.focus());
- let event = null;
- interestee.addEventListener("interest", (e) => (event = e), { once: true });
interestbutton.interestAction = "fooBar";
interestbutton.focus();
assert_true(event instanceof InterestEvent, "event is InterestEvent");
diff --git a/testing/web-platform/tests/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html
new file mode 100644
index 0000000000..7fb4b1c19d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/invokers/interesttarget-svg-a-event-dispatch.tentative.html
@@ -0,0 +1,51 @@
+<!doctype html>
+<meta charset="utf-8" />
+<meta name="author" title="Keith Cirkel" href="mailto:keithamus@github.com" />
+<meta name="author" title="Luke Warlow" href="mailto:lwarlow@igalia.com" />
+<link rel="help" href="https://open-ui.org/components/invokers.explainer/" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/invoker-utils.js"></script>
+
+<div id="interestee"></div>
+<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
+ <a href="/" id="interestsvga" interesttarget="interestee">
+ <text x="50" y="90">SVG A</text>
+ </a>
+</svg>
+<button id="otherbutton">Other Button</button>
+
+<script>
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ interestsvga.focus();
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestsvga, "invoker");
+ }, "InterestEvent dispatches on svg a focus");
+
+ promise_test(async function (t) {
+ t.add_cleanup(() => otherbutton.focus());
+ let event = null;
+ interestee.addEventListener("interest", (e) => (event = e), { once: true });
+ await hoverOver(interestsvga);
+ assert_true(event instanceof InterestEvent, "event is InterestEvent");
+ assert_equals(event.type, "interest", "type");
+ assert_equals(event.bubbles, false, "bubbles");
+ assert_equals(event.composed, true, "composed");
+ assert_equals(event.isTrusted, true, "isTrusted");
+ assert_equals(event.action, "", "action");
+ assert_equals(event.target, interestee, "target");
+ assert_equals(event.invoker, interestsvga, "invoker");
+ }, "InterestEvent dispatches on svg a hover");
+</script>
diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-input-number.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-input-number.tentative.html
new file mode 100644
index 0000000000..b06053b9f1
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-input-number.tentative.html
@@ -0,0 +1,78 @@
+<!doctype html>
+<meta charset="utf-8" />
+<meta name="author" title="Luke Warlow" href="mailto:lwarlow@igalia.com" />
+<link rel="help" href="https://open-ui.org/components/invokers.explainer/" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/invoker-utils.js"></script>
+
+<input type="number" id="invokee" value="0">
+<button id="invokerbutton" invoketarget="invokee"></button>
+
+<script>
+ function reset() {
+ invokee.value = 0;
+ invokerbutton.removeAttribute('invokeaction');
+ }
+
+ // stepUp
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "stepup");
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, 1);
+ }, "invoking number input with stepup action increments value");
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "sTePuP");
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, 1);
+ }, "invoking number input with stepup action (case-insensitive) increments value");
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "stepup");
+ invokee.addEventListener("invoke", (e) => e.preventDefault(), {
+ once: true,
+ });
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, 0);
+ }, "invoking number input with stepup action and preventDefault does not increment value");
+
+ // stepDown
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "stepdown");
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, -1);
+ }, "invoking number input with stepdown action decrements value");
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "sTePdOwN");
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, -1);
+ }, "invoking number input with stepdown action (case-insensitive) decrements value");
+
+ promise_test(async function (t) {
+ t.add_cleanup(reset);
+ assert_equals(invokee.valueAsNumber, 0);
+ invokerbutton.setAttribute("invokeaction", "stepdown");
+ invokee.addEventListener("invoke", (e) => e.preventDefault(), {
+ once: true,
+ });
+ await clickOn(invokerbutton);
+ assert_equals(invokee.valueAsNumber, 0);
+ }, "invoking number input with stepdown action and preventDefault does not decrement value");
+</script>
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference.tentative.html
deleted file mode 100644
index b8337ab87d..0000000000
--- a/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference.tentative.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<meta charset=utf-8>
-<link rel="match" href="bounded-css-properties-reference-expected.html">
-<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
-<body>
- <div>
- The permission element should have some limits for specific properties:
- <ul>
- <li>font-weight is adjusted to be at least 200.</li>
- <li>font-style should only have "normal" or "italic" values.</li>
- <li>word-spacing should be at most 0.5 of the font size, and non-negative.</li>
- <li>letter-spacing should be between -0.05 and 0.2 of the font size.</li>
- </ul>
- </div>
-
-<style>
- #id1 {
- font-weight: 100;
- font-style: oblique 30deg;
- word-spacing: 1em;
- font-size: 100px;
- height: auto;
- width: auto;
- letter-spacing: 25px;
- }
- #id2 {
- word-spacing: -1000px;
- height: auto;
- width: auto;
- font-size: 10px;
- letter-spacing: -1px;
- }
-</style>
-
-<permission id="id1" type="geolocation">
-<permission id="id2" type="camera">
-</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference-expected.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest-ref.html
index c62ff5b24d..c62ff5b24d 100644
--- a/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reference-expected.html
+++ b/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest-ref.html
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest.tentative.html
new file mode 100644
index 0000000000..ad6986f52b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/permission-element/bounded-css-properties-reftest.tentative.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<link rel="match" href="bounded-css-properties-reftest-ref.html">
+<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
+<body>
+ <div>
+ The permission element should have some limits for specific properties:
+ <ul>
+ <li>font-weight is adjusted to be at least 200.</li>
+ <li>font-style should only have "normal" or "italic" values.</li>
+ <li>word-spacing should be at most 0.5 of the font size, and non-negative.</li>
+ <li>letter-spacing should be between -0.05 and 0.2 of the font size.</li>
+ </ul>
+ </div>
+
+<style>
+ #id1 {
+ font-weight: 100;
+ font-style: oblique 30deg;
+ word-spacing: 1em;
+ font-size: 100px;
+ height: auto;
+ width: auto;
+ letter-spacing: 25px;
+ }
+ #id2 {
+ word-spacing: -1000px;
+ height: auto;
+ width: auto;
+ font-size: 10px;
+ letter-spacing: -1px;
+ }
+</style>
+
+<permission id="id1" type="geolocation">
+<permission id="id2" type="camera">
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest-ref.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest-ref.html
new file mode 100644
index 0000000000..b186dd6445
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest-ref.html
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<html>
+<meta charset=utf-8>
+<body>
+ <div>
+ The permission element should have some limits for the min/max-width/height:
+ <ul>
+ <li>min-width should be sufficient to fit the element text (depends on user agent implementation)</li>
+ <li>max-width should be at most 3x min-width</li>
+ <li>min-height should be sufficient to fit the element text (1em)</li>
+ <li>max-height should be at most 3x min-height</li>
+ <li>padding-left/top only work with width/height: auto and are at most 5em/1em</li>
+ <li>padding-right/bottom are copied over from padding-left/top in this case</li>
+ </ul>
+ </div>
+
+ <style>
+ #id1 {
+ font-size: 10px;
+ height: 10px;
+ /* width set via JS */
+ }
+ #id2 {
+ font-size: 10px;
+ height: 30px;
+ /* width set via JS */
+ }
+ #id3 {
+ font-size: 10px;
+ height: 30px;
+ color:black;
+ background-color: black;
+
+ /* Used to compute width which will then have the padding
+ artificially added in JS */
+ width: fit-content;
+ }
+ </style>
+
+ <div><permission id="id1" type="geolocation"></div>
+ <div><permission id="id2" type="camera"></div>
+ <div><permission id="id3" type="microphone"></div>
+
+<script>
+ let el = document.getElementById("id1");
+ el.style.width = getComputedStyle(el).minWidth;
+
+ el = document.getElementById("id2");
+ el.style.width = getComputedStyle(el).maxWidth;
+
+ el = document.getElementById("id3");
+ let w = getComputedStyle(el).width;
+ el.style.width = `calc(${w} + 100px)`; // 100px is 2 * 5em;
+</script>
+</body>
+</html> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest.tentative.html
new file mode 100644
index 0000000000..45ffb633c3
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes-reftest.tentative.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<link rel="match" href="bounded-sizes-reftest-ref.html">
+<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
+<body>
+ <div>
+ The permission element should have some limits for the min/max-width/height:
+ <ul>
+ <li>min-width should be sufficient to fit the element text (depends on user agent implementation)</li>
+ <li>max-width should be at most 3x min-width</li>
+ <li>min-height should be sufficient to fit the element text (1em)</li>
+ <li>max-height should be at most 3x min-height</li>
+ <li>padding-left/top only work with width/height: auto and are at most 5em/1em</li>
+ <li>padding-right/bottom are copied over from padding-left/top in this case</li>
+ </ul>
+ </div>
+
+<style>
+ #id1 {
+ font-size: 10px;
+ min-height: 1px;
+ max-height: 100px;
+
+ /* These values are extreme enough that they should be out of bounds for any implementation */
+ min-width: 10px;
+ max-width: 1000px;
+
+ /* This element will be as tiny as possible */
+ width: 1px;
+ height: 1px;
+ }
+ #id2 {
+ font-size: 10px;
+ min-height: 1px;
+ max-height: 100px;
+
+ /* These values are extreme enough that they should be out of bounds for any implementation */
+ min-width: 10px;
+ max-width: 1000px;
+
+ /* This element will be as large as possible */
+ width: 1000px;
+ height: 1000px;
+ }
+ #id3 {
+ font-size: 10px;
+ width: auto;
+ height: auto;
+
+ /* There is a slight misalignment of the text (by 1px) when using
+ padding vs using width/height. Since this test's purpose is to
+ check that the bounds are identical, the color and background-color
+ are set to the same value to cover the slight text misalignment */
+ color:black;
+ background-color: black;
+
+ /* Only padding-top and padding-left are taken into account */
+ padding-top: 1000px;
+ padding-left: 1000px;
+ padding-bottom: 1px;
+ padding-right: 1px;
+ }
+</style>
+
+<div><permission id="id1" type="geolocation"></div>
+<div><permission id="id2" type="camera"></div>
+<div><permission id="id3" type="microphone"></div>
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes.tentative.html
new file mode 100644
index 0000000000..2010cd0a54
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/permission-element/bounded-sizes.tentative.html
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+<!--The permission element should have some limits for the min/max-width/height:
+ * min-width should be sufficient to fit the element text (depends on user agent implementation)
+ * max-width should be at most 3x min-width
+ * min-height should be sufficient to fit the element text (1em)
+ * max-height should be at most 3x min-height
+-->
+<style>
+ #id1 {
+ font-size: 10px;
+ width: auto;
+ height: auto;
+
+ min-height: 1px;
+ max-height: 100px;
+
+ padding-top: 12px;
+ padding-left: 60px;
+ padding-bottom: 1000px;
+ padding-right: 1000px;
+
+ /* These values are extreme enough that they should be out of bounds for any implementation */
+ min-width: 10px;
+ max-width: 1000px;
+ }
+ #id2 {
+ font-size: 10px;
+ width: auto;
+ height: auto;
+
+ min-height: 11px;
+ max-height: 29px;
+
+ padding-top: 5px;
+ padding-left: 45px;
+ padding-bottom: 6px;
+ padding-right: 46px;
+ }
+</style>
+
+
+<permission id="id1" type="geolocation">
+<permission id="id2" type="camera">
+
+<script>
+ test(function(){
+ let el_outside_bounds = document.getElementById("id1");
+ let min_height = getComputedStyle(el_outside_bounds).minHeight;
+ let max_height = getComputedStyle(el_outside_bounds).maxHeight;
+ assert_true(min_height === "calc(10px)" || min_height === "10px", "min-height");
+ assert_true(max_height === "calc(30px)" || max_height === "30px", "max-height");
+ assert_not_equals(getComputedStyle(el_outside_bounds).minWidth, "10px", "min-width");
+ assert_not_equals(getComputedStyle(el_outside_bounds).maxWidth, "1000px", "max-width");
+ assert_equals(getComputedStyle(el_outside_bounds).paddingLeft, "50px", "padding-left");
+ assert_equals(getComputedStyle(el_outside_bounds).paddingRight, "50px", "padding-right");
+ assert_equals(getComputedStyle(el_outside_bounds).paddingTop, "10px", "padding-top");
+ assert_equals(getComputedStyle(el_outside_bounds).paddingBottom, "10px", "padding-bottom");
+ }, "Properties with out-of-bounds values should be corrected");
+
+ test(function(){
+ let el_inside_bounds = document.getElementById("id2");
+ assert_equals(getComputedStyle(el_inside_bounds).minHeight, "calc(11px)", "min-height");
+ assert_equals(getComputedStyle(el_inside_bounds).maxHeight, "calc(29px)", "max-height");
+ assert_equals(getComputedStyle(el_inside_bounds).paddingLeft, "45px", "padding-left");
+ assert_equals(getComputedStyle(el_inside_bounds).paddingRight, "45px", "padding-right");
+ assert_equals(getComputedStyle(el_inside_bounds).paddingTop, "5px", "padding-top");
+ assert_equals(getComputedStyle(el_inside_bounds).paddingBottom, "5px", "padding-bottom");
+ }, "Properties with values in bounds should not be modified");
+</script>
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference.tentative.html
deleted file mode 100644
index 973a76d723..0000000000
--- a/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference.tentative.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<meta charset=utf-8>
-<link rel="match" href="display-css-property-reference-expected.html">
-<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
-<body>
- <div>
- The permission element should either be display 'none' or 'inline-block'
- </div>
-
-<style>
- #id1 {
- display: flex;
- }
- #id2 {
- display: none;
- }
-</style>
-
-<permission id="id1" type="geolocation">
-<permission id="id2" type="camera">
-<span>After element</span>
-</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference-expected.html b/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest-ref.html
index 6a04c94c03..6a04c94c03 100644
--- a/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reference-expected.html
+++ b/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest-ref.html
diff --git a/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest.tentative.html b/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest.tentative.html
new file mode 100644
index 0000000000..e83786373d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/permission-element/display-css-property-reftest.tentative.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<link rel="match" href="display-css-property-reftest-ref.html">
+<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
+<body>
+ <div>
+ The permission element should either be display 'none' or 'inline-block'
+ </div>
+
+<style>
+ #id1 {
+ display: flex;
+ }
+ #id2 {
+ display: none;
+ }
+</style>
+
+<permission id="id1" type="geolocation">
+<permission id="id2" type="camera">
+<span>After element</span>
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html
index 435929a6c1..4312a156ce 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html
@@ -42,6 +42,7 @@ window.addEventListener('load', runTest);
background: orange;
}
[popover] {
+ inset: auto;
background: lime;
padding:0;
border:0;
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html
index 55a11fafdb..8db022b126 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html
@@ -15,6 +15,7 @@
display: none;
}
[popover] {
+ inset: auto;
background: lime;
padding: 0;
border: 0;
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html
index bddc44006d..a713540094 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html
@@ -61,6 +61,7 @@ showDefaultopenPopoversOnLoad();
background: orange;
}
[popover] {
+ inset: auto;
background: lime;
padding:0;
border:0;
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html
index 2c6b0bafb9..a301032a5b 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html
@@ -40,6 +40,7 @@
background: orange;
}
[popover] {
+ inset: auto;
background: lime;
padding:0;
border:0;
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html
index ae2a3a8e41..f6220f3c76 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html
@@ -13,6 +13,7 @@ body {
}
#target {
+ inset: auto;
transition: display 2s;
}
</style>
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html b/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html
index 892e5fd68f..8f24ace919 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html
@@ -80,7 +80,7 @@ promise_test(async t => {
assert_equals(document.activeElement,invoker2,'Focus should move within popover');
await sendShiftTab();
await sendShiftTab();
- assert_equals(document.activeElement, button1 ,'Focus should not move back to invoker as it is non-focusable');
+ assert_equals(document.activeElement,invoker0,'Focus should not move back to invoker as it is non-focusable');
// Reset invoker1 to focusable.
invoker1.disabled = false;
await verifyFocusOrder([button1, button2, invoker0, invoker1, inside_popover1, invoker2, inside_popover2, button3, button4],'set 1');
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hover-crash-hang.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hover-crash-hang.tentative.html
new file mode 100644
index 0000000000..60309398db
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-hover-crash-hang.tentative.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<meta charset="utf-8" />
+<title>Crash/hang test for popover hover behavior</title>
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel=help href="https://open-ui.org/components/popover-hint.research.explainer/">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/popover-utils.js"></script>
+
+<div id=menu popover=manual>
+ Popover
+ <button popovertarget="submenu"><span id=button>Button</span>
+ <div id=submenu popover=manual>Button-contained popover</div>
+ </button>
+</div>
+<button id=unrelated>Unrelated</button>
+
+<script>
+ promise_test(async (t) => {
+ menu.showPopover();
+ assert_true(menu.matches(':popover-open'));
+ await mouseHover(button,100);
+ button.click();
+ assert_true(menu.matches(':popover-open'));
+ assert_true(submenu.matches(':popover-open'));
+ await mouseHover(submenu,100);
+ await mouseHover(unrelated,100);
+ assert_true(submenu.matches(':popover-open'));
+ // This test passes if nothing crashes/hangs.
+ },'crash test');
+</script>
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-scroll-within.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-scroll-within.html
new file mode 100644
index 0000000000..2329aea201
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-scroll-within.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<meta charset="utf-8" />
+<title>Popover light dismiss behavior when scrolled within</title>
+<meta name="timeout" content="long">
+<link rel="author" href="mailto:masonf@chromium.org">
+<link rel=help href="https://open-ui.org/components/popover.research.explainer">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/popover-utils.js"></script>
+
+<style>
+ [popover] {
+ /* Position most popovers at the bottom-right, out of the way */
+ inset:auto;
+ bottom:0;
+ right:0;
+ }
+ [popover]::backdrop {
+ /* This should *not* affect anything: */
+ pointer-events: auto;
+ }
+</style>
+
+<div popover id=p>Inside popover
+ <div style="height:2000px;background:lightgreen"></div>
+ Bottom of popover6
+</div>
+<button popovertarget=p>Popover</button>
+<style>
+ #p6 {
+ width: 300px;
+ height: 300px;
+ overflow-y: scroll;
+ }
+</style>
+<script>
+ const popover = document.querySelector('#p');
+ promise_test(async () => {
+ popover.showPopover();
+ assert_equals(popover.scrollTop,0,'popover should start non-scrolled');
+ await new test_driver.Actions()
+ .scroll(0, 0, 0, 50, {origin: popover})
+ .send();
+ await waitForRender();
+ assert_true(popover.matches(':popover-open'),'popover should stay open');
+ assert_equals(popover.scrollTop,50,'popover should be scrolled');
+ popover.hidePopover();
+ },'Scrolling within a popover should not close the popover');
+</script>
diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html
index 45db242e91..78b8674513 100644
--- a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html
+++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html
@@ -303,33 +303,6 @@
},'An invoking element that was not used to invoke the popover is not part of the ancestor chain');
</script>
-<div popover id=p6>Inside popover 6
- <div style="height:2000px;background:lightgreen"></div>
- Bottom of popover6
-</div>
-<button popovertarget=p6>Popover 6</button>
-<style>
- #p6 {
- width: 300px;
- height: 300px;
- overflow-y: scroll;
- }
-</style>
-<script>
- const popover6 = document.querySelector('#p6');
- promise_test(async () => {
- popover6.showPopover();
- assert_equals(popover6.scrollTop,0,'popover6 should start non-scrolled');
- await new test_driver.Actions()
- .scroll(0, 0, 0, 50, {origin: popover6})
- .send();
- await waitForRender();
- assert_true(popover6.matches(':popover-open'),'popover6 should stay open');
- assert_equals(popover6.scrollTop,50,'popover6 should be scrolled');
- popover6.hidePopover();
- },'Scrolling within a popover should not close the popover');
-</script>
-
<my-element id="myElement">
<template shadowrootmode="open">
<button id=b7 popovertarget=p7 popovertargetaction=show tabindex="0">Popover7</button>
@@ -602,18 +575,26 @@ promise_test(async () => {
p29.showPopover();
assert_true(p29.matches(':popover-open'),'showing');
let actions = new test_driver.Actions();
- await actions.pointerMove(0,0,{origin: b29})
+ // Using the iframe's contentDocument as the origin would throw an error, so
+ // we are using iframe29 as the origin instead.
+ const iframe_box = iframe29.getBoundingClientRect();
+
+ await actions
+ .pointerMove(1,1,{origin: b29})
.pointerDown({button: actions.ButtonType.LEFT})
+ .pointerMove(iframe_box.width / 2, iframe_box.height / 2, {origin: iframe29})
+ .pointerUp({button: actions.ButtonType.LEFT})
.send();
- await waitForRender();
- assert_true(p29.matches(':popover-open'),'showing after pointerdown');
+ assert_true(p29.matches(':popover-open'), 'popover should be open after pointerUp in iframe.');
actions = new test_driver.Actions();
- await actions.pointerMove(0,0,{origin: iframe29.contentDocument.body})
+ await actions
+ .pointerMove(iframe_box.width / 2, iframe_box.height / 2, {origin: iframe29})
+ .pointerDown({button: actions.ButtonType.LEFT})
+ .pointerMove(1,1,{origin: b29})
.pointerUp({button: actions.ButtonType.LEFT})
.send();
- await waitForRender();
- assert_true(p29.matches(':popover-open'),'showing after pointerup');
+ assert_true(p29.matches(':popover-open'), 'popover should be open after pointerUp on main frame button.');
},`Pointer down in one document and pointer up in another document shouldn't dismiss popover`);
</script>
@@ -626,13 +607,10 @@ promise_test(async () => {
p30.showPopover();
assert_true(p30.matches(':popover-open'),'showing');
let actions = new test_driver.Actions();
- await actions.pointerMove(0,0,{origin: b30})
+ await actions
+ .pointerMove(2,2,{origin: b30})
.pointerDown({button: actions.ButtonType.LEFT})
- .send();
- await waitForRender();
- assert_true(p30.matches(':popover-open'),'showing after pointerdown');
- actions = new test_driver.Actions();
- await actions.pointerMove(0,0,{origin: b30b})
+ .pointerMove(2,2,{origin: b30b})
.pointerUp({button: actions.ButtonType.LEFT})
.send();
await waitForRender();
diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js
index 82cb3b215d..4876e82b0d 100644
--- a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js
+++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js
@@ -25,8 +25,8 @@ promise_test(async t => {
// Use Date.now() to ensure that the module is not in the module map
const specifier = "./empty-module.js?" + Date.now();
- const getCount = ticker(1e7);
+ const getCount = ticker(1e6);
await import(specifier);
- assert_equals(getCount(), 1e7);
+ assert_equals(getCount(), 1e6);
}, "import() should drain the microtask queue when fetching a new module");
diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html
new file mode 100644
index 0000000000..0f51fd318b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-inserted-execorder.html
@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Inline async="" module scripts execute or throw parse errors asynchronously</title>
+<link rel="help" href="https://github.com/whatwg/html/issues/9864">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<body>
+<script>
+"use strict";
+setup({ allow_uncaught_exception: true });
+
+promise_test(async t => {
+ window.log = ["before any script execution"];
+
+ window.addEventListener("error", ev => {
+ window.log.push("error event on Window");
+ });
+
+ const noErrorScript = document.createElement("script");
+ noErrorScript.type = "module";
+ noErrorScript.async = true;
+ noErrorScript.textContent = "window.log.push('no error script executed');";
+
+ // This should queue a task to run the script, but not run it immediately.
+ document.head.append(noErrorScript);
+
+ log.push("after inserting noErrorScript");
+ assert_array_equals(window.log, [
+ "before any script execution",
+ "after inserting noErrorScript"
+ ]);
+
+ const parseErrorScript = document.createElement("script");
+ parseErrorScript.type = "module";
+ parseErrorScript.async = true;
+ parseErrorScript.textContent = "+++++";
+
+ // This should queue a task to fire the error event, but not fire it immediately.
+ document.head.append(parseErrorScript);
+
+ log.push("after inserting parseErrorScript");
+ assert_array_equals(window.log, [
+ "before any script execution",
+ "after inserting noErrorScript",
+ "after inserting parseErrorScript"
+ ]);
+
+ // After a microtask, the script run / error event must not happen.
+ queueMicrotask(t.step_func(() => {
+ assert_array_equals(window.log, [
+ "before any script execution",
+ "after inserting noErrorScript",
+ "after inserting parseErrorScript"
+ ]);
+ }));
+
+ // But it must eventually happen, after a full task.
+ await t.step_wait(() => window.log.length == 5, "5 items must eventually be logged");
+
+ // And when it does the order must be correct.
+ assert_array_equals(window.log, [
+ "before any script execution",
+ "after inserting noErrorScript",
+ "after inserting parseErrorScript",
+ "no error script executed",
+ "error event on Window"
+ ]);
+});
+</script>
diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/WEB_FEATURES.yml
new file mode 100644
index 0000000000..bd821885c7
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: template
+ files: "**"
diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/WEB_FEATURES.yml
new file mode 100644
index 0000000000..055a5fb4a3
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/WEB_FEATURES.yml
@@ -0,0 +1,11 @@
+features:
+- name: autofill
+ files:
+ - autofill.html
+- name: default
+ files:
+ - default.html
+- name: read-write-pseudos
+ files:
+ - readwrite-readonly-type-change.html
+ - readwrite-readonly.html
diff --git a/testing/web-platform/tests/html/syntax/parsing/template/WEB_FEATURES.yml b/testing/web-platform/tests/html/syntax/parsing/template/WEB_FEATURES.yml
new file mode 100644
index 0000000000..bd821885c7
--- /dev/null
+++ b/testing/web-platform/tests/html/syntax/parsing/template/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: template
+ files: "**"
diff --git a/testing/web-platform/tests/html/user-activation/WEB_FEATURES.yml b/testing/web-platform/tests/html/user-activation/WEB_FEATURES.yml
new file mode 100644
index 0000000000..4104016b75
--- /dev/null
+++ b/testing/web-platform/tests/html/user-activation/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: user-activation
+ files: "**"
diff --git a/testing/web-platform/tests/html/webappapis/structured-clone/WEB_FEATURES.yml b/testing/web-platform/tests/html/webappapis/structured-clone/WEB_FEATURES.yml
new file mode 100644
index 0000000000..423a469bf1
--- /dev/null
+++ b/testing/web-platform/tests/html/webappapis/structured-clone/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: structured-clone
+ files: "**"
diff --git a/testing/web-platform/tests/inert/WEB_FEATURES.yml b/testing/web-platform/tests/inert/WEB_FEATURES.yml
new file mode 100644
index 0000000000..074e33726c
--- /dev/null
+++ b/testing/web-platform/tests/inert/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: inert
+ files: "**"
diff --git a/testing/web-platform/tests/inert/inert-and-find-flat-tree.html b/testing/web-platform/tests/inert/inert-and-find-flat-tree.html
new file mode 100644
index 0000000000..951497e2c0
--- /dev/null
+++ b/testing/web-platform/tests/inert/inert-and-find-flat-tree.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<link rel=author href="mailto:jarhar@chromium.org">
+<link rel=help href="https://html.spec.whatwg.org/#inert-subtrees">
+<link rel=help href="https://issues.chromium.org/issues/336832613">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<div id=host>
+ <template shadowrootmode=open>
+ <dialog>
+ <div>inside shadowroot</div>
+ <slot></slot>
+ </dialog>
+ </template>
+ <div>slotted</div>
+</div>
+
+<script>
+document.getElementById('host').shadowRoot.querySelector('dialog').showModal();
+
+test(() => {
+ assert_true(window.find('inside shadowroot'));
+}, 'Text inside a dialog inside a shadowroot should be findable.');
+
+test(() => {
+ assert_true(window.find('slotted'));
+}, 'Text slotted into a dialog which is inside a shadowroot should be findable.');
+</script>
diff --git a/testing/web-platform/tests/infrastructure/metadata/infrastructure/testdriver/click_iframe_crossorigin.sub.html.ini b/testing/web-platform/tests/infrastructure/metadata/infrastructure/testdriver/click_iframe_crossorigin.sub.html.ini
index aa94652ad7..c0ca25ab65 100644
--- a/testing/web-platform/tests/infrastructure/metadata/infrastructure/testdriver/click_iframe_crossorigin.sub.html.ini
+++ b/testing/web-platform/tests/infrastructure/metadata/infrastructure/testdriver/click_iframe_crossorigin.sub.html.ini
@@ -2,3 +2,4 @@
[TestDriver click on a document in an iframe]
expected:
if product == "chrome": [PASS, FAIL] # https://github.com/web-platform-tests/wpt/issues/26295
+ if os == "mac" and product == "firefox": [PASS, FAIL] # https://github.com/web-platform-tests/wpt/issues/45987
diff --git a/testing/web-platform/tests/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html b/testing/web-platform/tests/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html
index 7c225cd051..3572d227f0 100644
--- a/testing/web-platform/tests/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html
+++ b/testing/web-platform/tests/input-events/input-events-get-target-ranges-deleting-in-list-items.tentative.html
@@ -1020,8 +1020,8 @@ for (let childList of ["ul", "ol"]) {
{
startContainer: gEditor.querySelector(`${list} > ${childList} > li`).firstChild,
startOffset: 0,
- endContainer: gEditor.querySelector(`${list} > li`).firstChild,
- endOffset: gEditor.querySelector(`${list} > li`).firstChild.length,
+ endContainer: gEditor.querySelector(`${childList} + li`).firstChild,
+ endOffset: gEditor.querySelector(`${childList} + li`).firstChild.length,
},
];
},
diff --git a/testing/web-platform/tests/interfaces/DOM-Parsing.idl b/testing/web-platform/tests/interfaces/DOM-Parsing.idl
index d0d84ab697..af26260793 100644
--- a/testing/web-platform/tests/interfaces/DOM-Parsing.idl
+++ b/testing/web-platform/tests/interfaces/DOM-Parsing.idl
@@ -8,19 +8,3 @@ interface XMLSerializer {
constructor();
DOMString serializeToString(Node root);
};
-
-interface mixin InnerHTML {
- [CEReactions] attribute [LegacyNullToEmptyString] DOMString innerHTML;
-};
-
-Element includes InnerHTML;
-ShadowRoot includes InnerHTML;
-
-partial interface Element {
- [CEReactions] attribute [LegacyNullToEmptyString] DOMString outerHTML;
- [CEReactions] undefined insertAdjacentHTML(DOMString position, DOMString text);
-};
-
-partial interface Range {
- [CEReactions, NewObject] DocumentFragment createContextualFragment(DOMString fragment);
-};
diff --git a/testing/web-platform/tests/interfaces/compute-pressure.idl b/testing/web-platform/tests/interfaces/compute-pressure.idl
index c4dcb90af4..a90febffc3 100644
--- a/testing/web-platform/tests/interfaces/compute-pressure.idl
+++ b/testing/web-platform/tests/interfaces/compute-pressure.idl
@@ -14,9 +14,9 @@ callback PressureUpdateCallback = undefined (
[Exposed=(DedicatedWorker,SharedWorker,Window), SecureContext]
interface PressureObserver {
- constructor(PressureUpdateCallback callback, optional PressureObserverOptions options = {});
+ constructor(PressureUpdateCallback callback);
- Promise<undefined> observe(PressureSource source);
+ Promise<undefined> observe(PressureSource source, optional PressureObserverOptions options = {});
undefined unobserve(PressureSource source);
undefined disconnect();
sequence<PressureRecord> takeRecords();
diff --git a/testing/web-platform/tests/interfaces/css-anchor-position.idl b/testing/web-platform/tests/interfaces/css-anchor-position.idl
index b79e3fce89..5eeaa030b8 100644
--- a/testing/web-platform/tests/interfaces/css-anchor-position.idl
+++ b/testing/web-platform/tests/interfaces/css-anchor-position.idl
@@ -6,5 +6,79 @@
[Exposed=Window]
interface CSSPositionTryRule : CSSRule {
readonly attribute CSSOMString name;
- [SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
+ [SameObject, PutForwards=cssText] readonly attribute CSSPositionTryDescriptors style;
+};
+
+[Exposed=Window]
+interface CSSPositionTryDescriptors : CSSStyleDeclaration {
+ attribute CSSOMString margin;
+ attribute CSSOMString marginTop;
+ attribute CSSOMString marginRight;
+ attribute CSSOMString marginBottom;
+ attribute CSSOMString marginLeft;
+ attribute CSSOMString marginBlock;
+ attribute CSSOMString marginBlockStart;
+ attribute CSSOMString marginBlockEnd;
+ attribute CSSOMString marginInline;
+ attribute CSSOMString marginInlineStart;
+ attribute CSSOMString marginInlineEnd;
+ attribute CSSOMString margin-top;
+ attribute CSSOMString margin-right;
+ attribute CSSOMString margin-bottom;
+ attribute CSSOMString margin-left;
+ attribute CSSOMString margin-block;
+ attribute CSSOMString margin-block-start;
+ attribute CSSOMString margin-block-end;
+ attribute CSSOMString margin-inline;
+ attribute CSSOMString margin-inline-start;
+ attribute CSSOMString margin-inline-end;
+ attribute CSSOMString inset;
+ attribute CSSOMString insetBlock;
+ attribute CSSOMString insetBlockStart;
+ attribute CSSOMString insetBlockEnd;
+ attribute CSSOMString insetInline;
+ attribute CSSOMString insetInlineStart;
+ attribute CSSOMString insetInlineEnd;
+ attribute CSSOMString top;
+ attribute CSSOMString left;
+ attribute CSSOMString right;
+ attribute CSSOMString bottom;
+ attribute CSSOMString inset-block;
+ attribute CSSOMString inset-block-start;
+ attribute CSSOMString inset-block-end;
+ attribute CSSOMString inset-inline;
+ attribute CSSOMString inset-inline-start;
+ attribute CSSOMString inset-inline-end;
+ attribute CSSOMString width;
+ attribute CSSOMString minWidth;
+ attribute CSSOMString maxWidth;
+ attribute CSSOMString height;
+ attribute CSSOMString minHeight;
+ attribute CSSOMString maxHeight;
+ attribute CSSOMString blockSize;
+ attribute CSSOMString minBlockSize;
+ attribute CSSOMString maxBlockSize;
+ attribute CSSOMString inlineSize;
+ attribute CSSOMString minInlineSize;
+ attribute CSSOMString maxInlineSize;
+ attribute CSSOMString min-width;
+ attribute CSSOMString max-width;
+ attribute CSSOMString min-height;
+ attribute CSSOMString max-height;
+ attribute CSSOMString block-size;
+ attribute CSSOMString min-block-size;
+ attribute CSSOMString max-block-size;
+ attribute CSSOMString inline-size;
+ attribute CSSOMString min-inline-size;
+ attribute CSSOMString max-inline-size;
+ attribute CSSOMString placeSelf;
+ attribute CSSOMString alignSelf;
+ attribute CSSOMString justifySelf;
+ attribute CSSOMString place-self;
+ attribute CSSOMString align-self;
+ attribute CSSOMString justify-self;
+ attribute CSSOMString positionAnchor;
+ attribute CSSOMString position-anchor;
+ attribute CSSOMString insetArea;
+ attribute CSSOMString inset-area;
};
diff --git a/testing/web-platform/tests/interfaces/css-nesting.idl b/testing/web-platform/tests/interfaces/css-nesting.idl
new file mode 100644
index 0000000000..58d3247f90
--- /dev/null
+++ b/testing/web-platform/tests/interfaces/css-nesting.idl
@@ -0,0 +1,9 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content was automatically extracted by Reffy into webref
+// (https://github.com/w3c/webref)
+// Source: CSS Nesting Module (https://drafts.csswg.org/css-nesting-1/)
+
+[Exposed=Window]
+interface CSSNestRule : CSSGroupingRule {
+ [SameObject, PutForwards=cssText] readonly attribute CSSStyleProperties style;
+};
diff --git a/testing/web-platform/tests/interfaces/css-properties-values-api.idl b/testing/web-platform/tests/interfaces/css-properties-values-api.idl
index eb7d7b027e..418e78375b 100644
--- a/testing/web-platform/tests/interfaces/css-properties-values-api.idl
+++ b/testing/web-platform/tests/interfaces/css-properties-values-api.idl
@@ -16,8 +16,8 @@ partial namespace CSS {
[Exposed=Window]
interface CSSPropertyRule : CSSRule {
- readonly attribute CSSOMString name;
- readonly attribute CSSOMString syntax;
- readonly attribute boolean inherits;
- readonly attribute CSSOMString? initialValue;
+ readonly attribute CSSOMString name;
+ readonly attribute CSSOMString syntax;
+ readonly attribute boolean inherits;
+ readonly attribute CSSOMString? initialValue;
};
diff --git a/testing/web-platform/tests/interfaces/css-view-transitions-2.idl b/testing/web-platform/tests/interfaces/css-view-transitions-2.idl
index 41337f4e1e..559870751a 100644
--- a/testing/web-platform/tests/interfaces/css-view-transitions-2.idl
+++ b/testing/web-platform/tests/interfaces/css-view-transitions-2.idl
@@ -10,14 +10,9 @@ partial interface CSSRule {
enum ViewTransitionNavigation { "auto", "none" };
[Exposed=Window]
-interface CSSViewTransitionTypeSet {
- readonly setlike<CSSOMString>;
-};
-
-[Exposed=Window]
interface CSSViewTransitionRule : CSSRule {
readonly attribute ViewTransitionNavigation navigation;
- readonly attribute CSSViewTransitionTypeSet types;
+ [SameObject] readonly attribute FrozenArray<CSSOMString> types;
};
[Exposed=Window]
diff --git a/testing/web-platform/tests/interfaces/device-attributes.idl b/testing/web-platform/tests/interfaces/device-attributes.idl
new file mode 100644
index 0000000000..cf62523ad8
--- /dev/null
+++ b/testing/web-platform/tests/interfaces/device-attributes.idl
@@ -0,0 +1,13 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content was automatically extracted by Reffy into webref
+// (https://github.com/w3c/webref)
+// Source: Device Attributes API (https://wicg.github.io/WebApiDevice/device_attributes/)
+
+partial interface NavigatorManagedData {
+ // Device Attributes API.
+ Promise<DOMString> getAnnotatedAssetId();
+ Promise<DOMString> getAnnotatedLocation();
+ Promise<DOMString> getDirectoryId();
+ Promise<DOMString> getHostname();
+ Promise<DOMString> getSerialNumber();
+};
diff --git a/testing/web-platform/tests/interfaces/digital-identities.idl b/testing/web-platform/tests/interfaces/digital-identities.idl
index 9027ce61af..2d1b720850 100644
--- a/testing/web-platform/tests/interfaces/digital-identities.idl
+++ b/testing/web-platform/tests/interfaces/digital-identities.idl
@@ -17,11 +17,11 @@ dictionary DigitalCredentialRequestOptions {
dictionary IdentityRequestProvider {
required DOMString protocol;
- required DOMString request;
+ required object request;
};
[Exposed=Window, SecureContext]
interface DigitalCredential : Credential {
readonly attribute DOMString protocol;
- readonly attribute DOMString data;
+ [SameObject] readonly attribute Uint8Array data;
};
diff --git a/testing/web-platform/tests/interfaces/document-picture-in-picture.idl b/testing/web-platform/tests/interfaces/document-picture-in-picture.idl
index 888855b38f..ed34b3c216 100644
--- a/testing/web-platform/tests/interfaces/document-picture-in-picture.idl
+++ b/testing/web-platform/tests/interfaces/document-picture-in-picture.idl
@@ -20,7 +20,7 @@ interface DocumentPictureInPicture : EventTarget {
dictionary DocumentPictureInPictureOptions {
[EnforceRange] unsigned long long width = 0;
[EnforceRange] unsigned long long height = 0;
- boolean allowReturnToOpener = true;
+ boolean disallowReturnToOpener = false;
};
[Exposed=Window, SecureContext]
diff --git a/testing/web-platform/tests/interfaces/dom.idl b/testing/web-platform/tests/interfaces/dom.idl
index cf2d4e4adc..72d61f5cfd 100644
--- a/testing/web-platform/tests/interfaces/dom.idl
+++ b/testing/web-platform/tests/interfaces/dom.idl
@@ -120,9 +120,9 @@ interface mixin ParentNode {
readonly attribute Element? lastElementChild;
readonly attribute unsigned long childElementCount;
- [CEReactions, Unscopable] undefined prepend((Node or DOMString)... nodes);
- [CEReactions, Unscopable] undefined append((Node or DOMString)... nodes);
- [CEReactions, Unscopable] undefined replaceChildren((Node or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined prepend((Node or TrustedScript or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined append((Node or TrustedScript or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined replaceChildren((Node or TrustedScript or DOMString)... nodes);
Element? querySelector(DOMString selectors);
[NewObject] NodeList querySelectorAll(DOMString selectors);
@@ -139,9 +139,9 @@ Element includes NonDocumentTypeChildNode;
CharacterData includes NonDocumentTypeChildNode;
interface mixin ChildNode {
- [CEReactions, Unscopable] undefined before((Node or DOMString)... nodes);
- [CEReactions, Unscopable] undefined after((Node or DOMString)... nodes);
- [CEReactions, Unscopable] undefined replaceWith((Node or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined before((Node or TrustedScript or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined after((Node or TrustedScript or DOMString)... nodes);
+ [CEReactions, Unscopable] undefined replaceWith((Node or TrustedScript or DOMString)... nodes);
[CEReactions, Unscopable] undefined remove();
};
DocumentType includes ChildNode;
@@ -340,6 +340,7 @@ interface ShadowRoot : DocumentFragment {
readonly attribute boolean delegatesFocus;
readonly attribute SlotAssignmentMode slotAssignment;
readonly attribute boolean clonable;
+ readonly attribute boolean serializable;
readonly attribute Element host;
attribute EventHandler onslotchange;
};
@@ -398,6 +399,7 @@ dictionary ShadowRootInit {
boolean delegatesFocus = false;
SlotAssignmentMode slotAssignment = "named";
boolean clonable = false;
+ boolean serializable = false;
};
[Exposed=Window,
diff --git a/testing/web-platform/tests/interfaces/gamepad.idl b/testing/web-platform/tests/interfaces/gamepad.idl
index 024e5ea58c..d922d7b80b 100644
--- a/testing/web-platform/tests/interfaces/gamepad.idl
+++ b/testing/web-platform/tests/interfaces/gamepad.idl
@@ -44,7 +44,8 @@ enum GamepadHapticsResult {
};
enum GamepadHapticEffectType {
- "dual-rumble"
+ "dual-rumble",
+ "trigger-rumble"
};
dictionary GamepadEffectParameters {
@@ -52,6 +53,8 @@ dictionary GamepadEffectParameters {
unsigned long long startDelay = 0;
double strongMagnitude = 0.0;
double weakMagnitude = 0.0;
+ double leftTrigger = 0.0;
+ double rightTrigger = 0.0;
};
[Exposed=Window]
diff --git a/testing/web-platform/tests/interfaces/geolocation.idl b/testing/web-platform/tests/interfaces/geolocation.idl
index 4b971f097b..8c0acfc6cc 100644
--- a/testing/web-platform/tests/interfaces/geolocation.idl
+++ b/testing/web-platform/tests/interfaces/geolocation.idl
@@ -42,6 +42,7 @@ dictionary PositionOptions {
interface GeolocationPosition {
readonly attribute GeolocationCoordinates coords;
readonly attribute EpochTimeStamp timestamp;
+ [Default] object toJSON();
};
[Exposed=Window, SecureContext]
@@ -53,6 +54,7 @@ interface GeolocationCoordinates {
readonly attribute double? altitudeAccuracy;
readonly attribute double? heading;
readonly attribute double? speed;
+ [Default] object toJSON();
};
[Exposed=Window]
diff --git a/testing/web-platform/tests/interfaces/html.idl b/testing/web-platform/tests/interfaces/html.idl
index 2f97e4dd60..aad8994b87 100644
--- a/testing/web-platform/tests/interfaces/html.idl
+++ b/testing/web-platform/tests/interfaces/html.idl
@@ -1245,6 +1245,7 @@ interface HTMLTemplateElement : HTMLElement {
[CEReactions] attribute DOMString shadowRootMode;
[CEReactions] attribute boolean shadowRootDelegatesFocus;
[CEReactions] attribute boolean shadowRootClonable;
+ [CEReactions] attribute boolean shadowRootSerializable;
};
[Exposed=Window]
@@ -1579,7 +1580,6 @@ interface OffscreenCanvas : EventTarget {
[Exposed=(Window,Worker)]
interface OffscreenCanvasRenderingContext2D {
- undefined commit();
readonly attribute OffscreenCanvas canvas;
};
@@ -2292,6 +2292,27 @@ interface mixin WindowOrWorkerGlobalScope {
Window includes WindowOrWorkerGlobalScope;
WorkerGlobalScope includes WindowOrWorkerGlobalScope;
+partial interface Element {
+ [CEReactions] undefined setHTMLUnsafe(HTMLString html);
+ DOMString getHTML(optional GetHTMLOptions options = {});
+
+ [CEReactions] attribute [LegacyNullToEmptyString] HTMLString innerHTML;
+ [CEReactions] attribute [LegacyNullToEmptyString] HTMLString outerHTML;
+ [CEReactions] undefined insertAdjacentHTML(DOMString position, HTMLString string);
+};
+
+partial interface ShadowRoot {
+ [CEReactions] undefined setHTMLUnsafe(HTMLString html);
+ DOMString getHTML(optional GetHTMLOptions options = {});
+
+ [CEReactions] attribute [LegacyNullToEmptyString] HTMLString innerHTML;
+};
+
+dictionary GetHTMLOptions {
+ boolean serializableShadowRoots = false;
+ sequence<ShadowRoot> shadowRoots = [];
+};
+
[Exposed=Window]
interface DOMParser {
constructor();
@@ -2307,12 +2328,8 @@ enum DOMParserSupportedType {
"image/svg+xml"
};
-partial interface Element {
- [CEReactions] undefined setHTMLUnsafe(HTMLString html);
-};
-
-partial interface ShadowRoot {
- [CEReactions] undefined setHTMLUnsafe(HTMLString html);
+partial interface Range {
+ [CEReactions, NewObject] DocumentFragment createContextualFragment(HTMLString string);
};
[Exposed=Window]
diff --git a/testing/web-platform/tests/interfaces/mediasession.idl b/testing/web-platform/tests/interfaces/mediasession.idl
index 8e9a21aff0..e6c8e46462 100644
--- a/testing/web-platform/tests/interfaces/mediasession.idl
+++ b/testing/web-platform/tests/interfaces/mediasession.idl
@@ -56,6 +56,7 @@ interface MediaMetadata {
attribute DOMString artist;
attribute DOMString album;
attribute FrozenArray<MediaImage> artwork;
+ [SameObject] readonly attribute FrozenArray<ChapterInformation> chapterInfo;
};
dictionary MediaMetadataInit {
@@ -63,6 +64,20 @@ dictionary MediaMetadataInit {
DOMString artist = "";
DOMString album = "";
sequence<MediaImage> artwork = [];
+ sequence<ChapterInformationInit> chapterInfo = [];
+};
+
+[Exposed=Window]
+interface ChapterInformation {
+ readonly attribute DOMString title;
+ readonly attribute double startTime;
+ [SameObject] readonly attribute FrozenArray<MediaImage> artwork;
+};
+
+dictionary ChapterInformationInit {
+ DOMString title = "";
+ double startTime = 0;
+ sequence<MediaImage> artwork = [];
};
dictionary MediaImage {
diff --git a/testing/web-platform/tests/interfaces/sanitizer-api.idl b/testing/web-platform/tests/interfaces/sanitizer-api.idl
index 599d8f82ea..8f5c667973 100644
--- a/testing/web-platform/tests/interfaces/sanitizer-api.idl
+++ b/testing/web-platform/tests/interfaces/sanitizer-api.idl
@@ -3,19 +3,15 @@
// (https://github.com/w3c/webref)
// Source: HTML Sanitizer API (https://wicg.github.io/sanitizer-api/)
-partial interface Element {
- [CEReactions] undefined setHTMLUnsafe__TO_BE_MERGED(DOMString html, optional SanitizerConfig config = {});
- [CEReactions] undefined setHTML(DOMString html, optional SanitizerConfig config = {});
+dictionary SetHTMLOptions {
+ (Sanitizer or SanitizerConfig) sanitizer = {};
};
-partial interface ShadowRoot {
- [CEReactions] undefined setHTMLUnsafe__TO_BE_MERGED(DOMString html, optional SanitizerConfig config = {});
- [CEReactions] undefined setHTML(DOMString html, optional SanitizerConfig config = {});
-};
-
-partial interface Document {
- static Document parseHTMLUnsafe__TO_BE_MERGED(DOMString html, optional SanitizerConfig config = {});
- static Document parseHTML(DOMString html, optional SanitizerConfig config = {});
+[Exposed=(Window,Worker)]
+interface Sanitizer {
+ constructor(optional SanitizerConfig config = {});
+ SanitizerConfig get();
+ SanitizerConfig getUnsafe();
};
dictionary SanitizerElementNamespace {
diff --git a/testing/web-platform/tests/interfaces/service-workers.idl b/testing/web-platform/tests/interfaces/service-workers.idl
index c740e1098a..1ddc6d71d8 100644
--- a/testing/web-platform/tests/interfaces/service-workers.idl
+++ b/testing/web-platform/tests/interfaces/service-workers.idl
@@ -183,6 +183,7 @@ dictionary RouterCondition {
RunningStatus runningStatus;
sequence<RouterCondition> _or;
+ RouterCondition not;
};
typedef (RouterSourceDict or RouterSourceEnum) RouterSource;
diff --git a/testing/web-platform/tests/interfaces/shape-detection-api.idl b/testing/web-platform/tests/interfaces/shape-detection-api.idl
index 4fc1f085ea..24d3b98085 100644
--- a/testing/web-platform/tests/interfaces/shape-detection-api.idl
+++ b/testing/web-platform/tests/interfaces/shape-detection-api.idl
@@ -17,11 +17,11 @@ dictionary FaceDetectorOptions {
dictionary DetectedFace {
required DOMRectReadOnly boundingBox;
- required FrozenArray<Landmark>? landmarks;
+ required sequence<Landmark>? landmarks;
};
dictionary Landmark {
- required FrozenArray<Point2D> locations;
+ required sequence<Point2D> locations;
LandmarkType type;
};
@@ -48,7 +48,7 @@ dictionary DetectedBarcode {
required DOMRectReadOnly boundingBox;
required DOMString rawValue;
required BarcodeFormat format;
- required FrozenArray<Point2D> cornerPoints;
+ required sequence<Point2D> cornerPoints;
};
enum BarcodeFormat {
diff --git a/testing/web-platform/tests/interfaces/shared-storage.idl b/testing/web-platform/tests/interfaces/shared-storage.idl
index edbe2c2bcc..c40344e74d 100644
--- a/testing/web-platform/tests/interfaces/shared-storage.idl
+++ b/testing/web-platform/tests/interfaces/shared-storage.idl
@@ -3,40 +3,30 @@
// (https://github.com/w3c/webref)
// Source: Shared Storage API (https://wicg.github.io/shared-storage/)
+typedef (USVString or FencedFrameConfig) SharedStorageResponse;
+
[Exposed=(Window)]
interface SharedStorageWorklet : Worklet {
+ Promise<SharedStorageResponse> selectURL(DOMString name,
+ FrozenArray<SharedStorageUrlWithMetadata> urls,
+ optional SharedStorageRunOperationMethodOptions options = {});
+ Promise<any> run(DOMString name,
+ optional SharedStorageRunOperationMethodOptions options = {});
};
+callback RunFunctionForSharedStorageSelectURLOperation = Promise<unsigned long>(sequence<USVString> urls, optional any data);
+
[Exposed=SharedStorageWorklet, Global=SharedStorageWorklet]
interface SharedStorageWorkletGlobalScope : WorkletGlobalScope {
undefined register(DOMString name,
- SharedStorageOperationConstructor operationCtor);
+ Function operationCtor);
readonly attribute WorkletSharedStorage sharedStorage;
};
-callback SharedStorageOperationConstructor =
- SharedStorageOperation(optional SharedStorageRunOperationMethodOptions options);
-
-[Exposed=SharedStorageWorklet]
-interface SharedStorageOperation {
-};
-
-dictionary SharedStorageRunOperationMethodOptions {
- object data;
- boolean resolveToConfig = false;
- boolean keepAlive = false;
-};
-
-[Exposed=SharedStorageWorklet]
-interface SharedStorageRunOperation : SharedStorageOperation {
- Promise<undefined> run(object data);
-};
-
-[Exposed=SharedStorageWorklet]
-interface SharedStorageSelectURLOperation : SharedStorageOperation {
- Promise<long> run(object data,
- FrozenArray<SharedStorageUrlWithMetadata> urls);
+dictionary SharedStorageUrlWithMetadata {
+ required USVString url;
+ object reportingMetadata;
};
[Exposed=(Window,SharedStorageWorklet)]
@@ -54,22 +44,23 @@ dictionary SharedStorageSetMethodOptions {
boolean ignoreIfPresent = false;
};
-typedef (USVString or FencedFrameConfig) SharedStorageResponse;
-
[Exposed=(Window)]
interface WindowSharedStorage : SharedStorage {
- Promise<any> run(DOMString name,
- optional SharedStorageRunOperationMethodOptions options = {});
Promise<SharedStorageResponse> selectURL(DOMString name,
FrozenArray<SharedStorageUrlWithMetadata> urls,
optional SharedStorageRunOperationMethodOptions options = {});
+ Promise<any> run(DOMString name,
+ optional SharedStorageRunOperationMethodOptions options = {});
+
+ Promise<SharedStorageWorklet> createWorklet(USVString moduleURL, optional WorkletOptions options = {});
readonly attribute SharedStorageWorklet worklet;
};
-dictionary SharedStorageUrlWithMetadata {
- required USVString url;
- object reportingMetadata;
+dictionary SharedStorageRunOperationMethodOptions {
+ object data;
+ boolean resolveToConfig = false;
+ boolean keepAlive = false;
};
partial interface Window {
diff --git a/testing/web-platform/tests/interfaces/text-detection-api.idl b/testing/web-platform/tests/interfaces/text-detection-api.idl
index 95b642749f..b6745b1875 100644
--- a/testing/web-platform/tests/interfaces/text-detection-api.idl
+++ b/testing/web-platform/tests/interfaces/text-detection-api.idl
@@ -14,5 +14,5 @@
dictionary DetectedText {
required DOMRectReadOnly boundingBox;
required DOMString rawValue;
- required FrozenArray<Point2D> cornerPoints;
+ required sequence<Point2D> cornerPoints;
};
diff --git a/testing/web-platform/tests/interfaces/trusted-types.idl b/testing/web-platform/tests/interfaces/trusted-types.idl
index db5bd635cf..a0f88e4e6c 100644
--- a/testing/web-platform/tests/interfaces/trusted-types.idl
+++ b/testing/web-platform/tests/interfaces/trusted-types.idl
@@ -32,12 +32,12 @@ interface TrustedScriptURL {
DOMString? getAttributeType(
DOMString tagName,
DOMString attribute,
- optional DOMString elementNs = "",
- optional DOMString attrNs = "");
+ optional DOMString? elementNs = "",
+ optional DOMString? attrNs = "");
DOMString? getPropertyType(
DOMString tagName,
DOMString property,
- optional DOMString elementNs = "");
+ optional DOMString? elementNs = "");
readonly attribute TrustedTypePolicy? defaultPolicy;
};
diff --git a/testing/web-platform/tests/interfaces/turtledove.idl b/testing/web-platform/tests/interfaces/turtledove.idl
index 2547e1fb54..39e90ddae1 100644
--- a/testing/web-platform/tests/interfaces/turtledove.idl
+++ b/testing/web-platform/tests/interfaces/turtledove.idl
@@ -82,6 +82,7 @@ dictionary AuctionAdConfig {
Promise<record<USVString, any>> perBuyerSignals;
Promise<record<USVString, unsigned long long>> perBuyerTimeouts;
Promise<record<USVString, unsigned long long>> perBuyerCumulativeTimeouts;
+ unsigned long long reportingTimeout;
USVString sellerCurrency;
Promise<record<USVString, USVString>> perBuyerCurrencies;
record<USVString, unsigned short> perBuyerGroupLimits;
diff --git a/testing/web-platform/tests/interfaces/wasm-js-api.idl b/testing/web-platform/tests/interfaces/wasm-js-api.idl
index 0d4384251d..b4f723d050 100644
--- a/testing/web-platform/tests/interfaces/wasm-js-api.idl
+++ b/testing/web-platform/tests/interfaces/wasm-js-api.idl
@@ -62,6 +62,8 @@ dictionary MemoryDescriptor {
interface Memory {
constructor(MemoryDescriptor descriptor);
unsigned long grow([EnforceRange] unsigned long delta);
+ ArrayBuffer toFixedLengthBuffer();
+ ArrayBuffer toResizableBuffer();
readonly attribute ArrayBuffer buffer;
};
diff --git a/testing/web-platform/tests/interfaces/webcodecs.idl b/testing/web-platform/tests/interfaces/webcodecs.idl
index 371546eb0d..c754b2b036 100644
--- a/testing/web-platform/tests/interfaces/webcodecs.idl
+++ b/testing/web-platform/tests/interfaces/webcodecs.idl
@@ -371,6 +371,8 @@ dictionary VideoFrameBufferInit {
VideoColorSpaceInit colorSpace;
sequence<ArrayBuffer> transfer = [];
+
+ VideoFrameMetadata metadata;
};
dictionary VideoFrameMetadata {
@@ -380,6 +382,8 @@ dictionary VideoFrameMetadata {
dictionary VideoFrameCopyToOptions {
DOMRectInit rect;
sequence<PlaneLayout> layout;
+ VideoPixelFormat format;
+ PredefinedColorSpace colorSpace;
};
dictionary PlaneLayout {
diff --git a/testing/web-platform/tests/interfaces/webgl1.idl b/testing/web-platform/tests/interfaces/webgl1.idl
index 1b711e1a4c..655c294fc1 100644
--- a/testing/web-platform/tests/interfaces/webgl1.idl
+++ b/testing/web-platform/tests/interfaces/webgl1.idl
@@ -37,6 +37,7 @@ dictionary WebGLContextAttributes {
[Exposed=(Window,Worker)]
interface WebGLObject {
+ attribute USVString label;
};
[Exposed=(Window,Worker)]
diff --git a/testing/web-platform/tests/interfaces/webidl.idl b/testing/web-platform/tests/interfaces/webidl.idl
index dff46c557c..f3db91096a 100644
--- a/testing/web-platform/tests/interfaces/webidl.idl
+++ b/testing/web-platform/tests/interfaces/webidl.idl
@@ -6,7 +6,7 @@
typedef (Int8Array or Int16Array or Int32Array or
Uint8Array or Uint16Array or Uint32Array or Uint8ClampedArray or
BigInt64Array or BigUint64Array or
- Float32Array or Float64Array or DataView) ArrayBufferView;
+ Float16Array or Float32Array or Float64Array or DataView) ArrayBufferView;
typedef (ArrayBufferView or ArrayBuffer) BufferSource;
typedef (ArrayBuffer or SharedArrayBuffer or [AllowShared] ArrayBufferView) AllowSharedBufferSource;
diff --git a/testing/web-platform/tests/interfaces/webnn.idl b/testing/web-platform/tests/interfaces/webnn.idl
index 0b8ea7cb34..9af2879214 100644
--- a/testing/web-platform/tests/interfaces/webnn.idl
+++ b/testing/web-platform/tests/interfaces/webnn.idl
@@ -64,11 +64,7 @@ enum MLOperandDataType {
};
dictionary MLOperandDescriptor {
- // The operand type.
required MLOperandDataType dataType;
-
- // The dimensions field is empty for scalar operands,
- // and non-empty for tensor operands.
sequence<[EnforceRange] unsigned long> dimensions = [];
};
@@ -122,7 +118,7 @@ dictionary MLBatchNormalizationOptions {
partial interface MLGraphBuilder {
MLOperand batchNormalization(MLOperand input, MLOperand mean, MLOperand variance,
- optional MLBatchNormalizationOptions options = {});
+ optional MLBatchNormalizationOptions options = {});
};
partial interface MLGraphBuilder {
@@ -162,7 +158,9 @@ dictionary MLConv2dOptions {
};
partial interface MLGraphBuilder {
- MLOperand conv2d(MLOperand input, MLOperand filter, optional MLConv2dOptions options = {});
+ MLOperand conv2d(MLOperand input,
+ MLOperand filter,
+ optional MLConv2dOptions options = {});
};
enum MLConvTranspose2dFilterOperandLayout {
@@ -242,7 +240,14 @@ dictionary MLGatherOptions {
};
partial interface MLGraphBuilder {
- MLOperand gather(MLOperand input, MLOperand indices, optional MLGatherOptions options = {});
+ MLOperand gather(MLOperand input,
+ MLOperand indices,
+ optional MLGatherOptions options = {});
+};
+
+partial interface MLGraphBuilder {
+ MLOperand gelu(MLOperand input);
+ MLActivation gelu();
};
dictionary MLGemmOptions {
@@ -329,7 +334,7 @@ dictionary MLInstanceNormalizationOptions {
partial interface MLGraphBuilder {
MLOperand instanceNormalization(MLOperand input,
- optional MLInstanceNormalizationOptions options = {});
+ optional MLInstanceNormalizationOptions options = {});
};
dictionary MLLayerNormalizationOptions {
@@ -340,7 +345,8 @@ dictionary MLLayerNormalizationOptions {
};
partial interface MLGraphBuilder {
- MLOperand layerNormalization(MLOperand input, optional MLLayerNormalizationOptions options = {});
+ MLOperand layerNormalization(MLOperand input,
+ optional MLLayerNormalizationOptions options = {});
};
dictionary MLLeakyReluOptions {
@@ -509,17 +515,13 @@ partial interface MLGraphBuilder {
};
partial interface MLGraphBuilder {
- MLOperand softmax(MLOperand input);
- MLActivation softmax();
-};
-
-dictionary MLSoftplusOptions {
- float steepness = 1;
+ MLOperand softmax(MLOperand input, unsigned long axis);
+ MLActivation softmax(unsigned long axis);
};
partial interface MLGraphBuilder {
- MLOperand softplus(MLOperand input, optional MLSoftplusOptions options = {});
- MLActivation softplus(optional MLSoftplusOptions options = {});
+ MLOperand softplus(MLOperand input);
+ MLActivation softplus();
};
partial interface MLGraphBuilder {
@@ -532,9 +534,10 @@ dictionary MLSplitOptions {
};
partial interface MLGraphBuilder {
- sequence<MLOperand> split(MLOperand input,
- ([EnforceRange] unsigned long or sequence<[EnforceRange] unsigned long>) splits,
- optional MLSplitOptions options = {});
+ sequence<MLOperand> split(
+ MLOperand input,
+ ([EnforceRange] unsigned long or sequence<[EnforceRange] unsigned long>) splits,
+ optional MLSplitOptions options = {});
};
partial interface MLGraphBuilder {
diff --git a/testing/web-platform/tests/interfaces/webrtc-encoded-transform.idl b/testing/web-platform/tests/interfaces/webrtc-encoded-transform.idl
index 8a756702c7..0db2f2b9a8 100644
--- a/testing/web-platform/tests/interfaces/webrtc-encoded-transform.idl
+++ b/testing/web-platform/tests/interfaces/webrtc-encoded-transform.idl
@@ -78,10 +78,15 @@ dictionary RTCEncodedVideoFrameMetadata {
DOMString mimeType;
};
+dictionary RTCEncodedVideoFrameOptions {
+ RTCEncodedVideoFrameMetadata metadata;
+};
+
// New interfaces to define encoded video and audio frames. Will eventually
// re-use or extend the equivalent defined in WebCodecs.
[Exposed=(Window,DedicatedWorker), Serializable]
interface RTCEncodedVideoFrame {
+ constructor(RTCEncodedVideoFrame originalFrame, optional RTCEncodedVideoFrameOptions options = {});
readonly attribute RTCEncodedVideoFrameType type;
attribute ArrayBuffer data;
RTCEncodedVideoFrameMetadata getMetadata();
@@ -96,8 +101,13 @@ dictionary RTCEncodedAudioFrameMetadata {
DOMString mimeType;
};
+dictionary RTCEncodedAudioFrameOptions {
+ RTCEncodedAudioFrameMetadata metadata;
+};
+
[Exposed=(Window,DedicatedWorker), Serializable]
interface RTCEncodedAudioFrame {
+ constructor(RTCEncodedAudioFrame originalFrame, optional RTCEncodedAudioFrameOptions options = {});
attribute ArrayBuffer data;
RTCEncodedAudioFrameMetadata getMetadata();
};
diff --git a/testing/web-platform/tests/interfaces/webrtc.idl b/testing/web-platform/tests/interfaces/webrtc.idl
index e571abb527..65e7aa622c 100644
--- a/testing/web-platform/tests/interfaces/webrtc.idl
+++ b/testing/web-platform/tests/interfaces/webrtc.idl
@@ -368,6 +368,7 @@ interface RTCRtpReceiver {
sequence<RTCRtpContributingSource> getContributingSources();
sequence<RTCRtpSynchronizationSource> getSynchronizationSources();
Promise<RTCStatsReport> getStats();
+ attribute DOMHighResTimeStamp? jitterBufferTarget;
};
dictionary RTCRtpContributingSource {
@@ -387,7 +388,7 @@ interface RTCRtpTransceiver {
attribute RTCRtpTransceiverDirection direction;
readonly attribute RTCRtpTransceiverDirection? currentDirection;
undefined stop();
- undefined setCodecPreferences(sequence<RTCRtpCodecCapability> codecs);
+ undefined setCodecPreferences(sequence<RTCRtpCodec> codecs);
};
[Exposed=Window]
@@ -434,8 +435,8 @@ dictionary RTCIceParameters {
};
dictionary RTCIceCandidatePair {
- RTCIceCandidate local;
- RTCIceCandidate remote;
+ required RTCIceCandidate local;
+ required RTCIceCandidate remote;
};
enum RTCIceGathererState {
diff --git a/testing/web-platform/tests/interfaces/webxr.idl b/testing/web-platform/tests/interfaces/webxr.idl
index 3b7f8a55b7..8e02fbd38a 100644
--- a/testing/web-platform/tests/interfaces/webxr.idl
+++ b/testing/web-platform/tests/interfaces/webxr.idl
@@ -178,6 +178,7 @@ interface XRInputSource {
[SameObject] readonly attribute XRSpace targetRaySpace;
[SameObject] readonly attribute XRSpace? gripSpace;
[SameObject] readonly attribute FrozenArray<DOMString> profiles;
+ [SameObject] readonly attribute boolean skipRendering;
};
[SecureContext, Exposed=Window]
@@ -263,8 +264,8 @@ interface XRInputSourcesChangeEvent : Event {
dictionary XRInputSourcesChangeEventInit : EventInit {
required XRSession session;
- required FrozenArray<XRInputSource> added;
- required FrozenArray<XRInputSource> removed;
+ required sequence<XRInputSource> added;
+ required sequence<XRInputSource> removed;
};
diff --git a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-axis-height-1.html b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-axis-height-1.html
index 6de6284188..10ea4dcffc 100644
--- a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-axis-height-1.html
+++ b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-axis-height-1.html
@@ -29,24 +29,100 @@
window.addEventListener("load", () => { loadAllFonts().then(runTests); });
function runTests() {
+ const AxisHeight = 5000 * emToPx;
+
test(function() {
- var v1 = 5000 * emToPx;
var moMiddle = (getBox("mo1").bottom + getBox("mo1").top) / 2;
assert_approx_equals(getBox("mo1").height,
14000 * emToPx, epsilon, "mo: size");
assert_approx_equals(getBox("baseline1").bottom - moMiddle,
- v1, epsilon, "mo: axis height");
- }, "AxisHeight (size variant)");
+ AxisHeight, epsilon, "mo: axis height");
+ }, "symmetric stretching with respect to the math axis (size variant)");
test(function() {
- var v1 = 5000 * emToPx;
var moMiddle = (getBox("mo2").bottom + getBox("mo2").top) / 2;
assert_approx_equals(getBox("mo2").height,
- 2 * (getBox("target2").height - v1),
+ 2 * (getBox("target2").height - AxisHeight),
epsilon, "mo: size");
assert_approx_equals(getBox("baseline2").bottom - moMiddle,
- v1, epsilon, "mo: axis height");
- }, "AxisHeight (glyph assembly)");
+ AxisHeight, epsilon, "mo: axis height");
+ }, "symmetric stretching with respect to the math axis (glyph assembly)");
+
+ test(function() {
+ const minsize = 14000 * emToPx;
+ const Tascent = minsize / 2 + AxisHeight;
+ const Tdescent = minsize - Tascent;
+ assert_approx_equals(getBox("baseline3").bottom - getBox("mo3").top, Tascent, epsilon, "mo ascent");
+ assert_approx_equals(getBox("mo3").bottom - getBox("baseline3").bottom, Tdescent, epsilon, "mo descent");
+ }, "Tascent = Tdescent = 0, minsize = 14em");
+
+ test(function() {
+ const minsize = 14000 * emToPx;
+ var Tascent = getBox("baseline4").bottom - getBox("target4").top;
+ assert_greater_than(Tascent, AxisHeight);
+ var Tdescent = getBox("target4").bottom - getBox("baseline4").bottom;
+ const T = Tascent + Tdescent;
+ Tascent = Math.max(0, Tascent - AxisHeight) * minsize / T + AxisHeight;
+ Tdescent = minsize - Tascent;
+ assert_approx_equals(getBox("baseline4").bottom - getBox("mo4").top, Tascent, epsilon, "mo ascent");
+ assert_approx_equals(getBox("mo4").bottom - getBox("baseline4").bottom, Tdescent, epsilon, "mo descent");
+ }, "Tascent = 6em > AxisHeight, Tdescent = 1em, symmetric = false, minsize = 14em");
+
+ test(function() {
+ const minsize = 14000 * emToPx;
+ var Tascent = getBox("baseline5").bottom - getBox("target5").top;
+ assert_less_than(Tascent, AxisHeight);
+ var Tdescent = getBox("target5").bottom - getBox("baseline5").bottom;
+ const T = Tascent + Tdescent;
+ Tascent = Math.max(0, Tascent - AxisHeight) * minsize / T + AxisHeight;
+ Tdescent = minsize - Tascent;
+ assert_approx_equals(getBox("baseline5").bottom - getBox("mo5").top, Tascent, epsilon, "mo ascent");
+ assert_approx_equals(getBox("mo5").bottom - getBox("baseline5").bottom, Tdescent, epsilon, "mo descent");
+ }, "Tascent = 4em < AxisHeight, Tdescent = 3em, symmetric = false, minsize = 14em");
+
+ test(function() {
+ const maxsize = 14000 * emToPx;
+ var Tascent = getBox("baseline6").bottom - getBox("target6").top;
+ assert_greater_than(Tascent, AxisHeight);
+ var Tdescent = getBox("target6").bottom - getBox("baseline6").bottom;
+ const T = Tascent + Tdescent;
+ Tascent = Math.max(0, Tascent - AxisHeight) * maxsize / T + AxisHeight;
+ Tdescent = maxsize - Tascent;
+ assert_approx_equals(getBox("baseline6").bottom - getBox("mo6").top, Tascent, epsilon, "mo ascent");
+ assert_approx_equals(getBox("mo6").bottom - getBox("baseline6").bottom, Tdescent, epsilon, "mo descent");
+ }, "Tascent = 6em > AxisHeight, Tdescent = 22em, symmetric = false, maxsize = 14em");
+
+ test(function() {
+ const maxsize = 14000 * emToPx;
+ var Tascent = getBox("baseline7").bottom - getBox("target7").top;
+ assert_less_than(Tascent, AxisHeight);
+ var Tdescent = getBox("target7").bottom - getBox("baseline7").bottom;
+ var T = Tascent + Tdescent;
+ Tascent = Math.max(0, Tascent - AxisHeight) * maxsize / T + AxisHeight;
+ Tdescent = maxsize - Tascent;
+ assert_approx_equals(getBox("baseline7").bottom - getBox("mo7").top, Tascent, epsilon, "mo ascent");
+ assert_approx_equals(getBox("mo7").bottom - getBox("baseline7").bottom, Tdescent, epsilon, "mo descent");
+ }, "Tascent = 4em < AxisHeight, Tdescent = 24em, symmetric = false, maxsize = 14em");
+
+ test(function() {
+ const minsize = 14000 * emToPx;
+ const Uascent = getBox("baseline8").bottom - getBox("target8").top;
+ const Udescent = getBox("target8").bottom - getBox("baseline8").bottom;
+ assert_less_than(2 * Math.max(Uascent - AxisHeight, Udescent + AxisHeight), minsize, "Sascent + Sdescent < minsize");
+ assert_approx_equals(getBox("mo8").height, minsize, epsilon, "mo size");
+ const MathAxis = getBox("baseline8").bottom - AxisHeight;
+ assert_approx_equals(MathAxis - getBox("mo8").top, getBox("mo8").bottom - MathAxis, epsilon, "mo is symmetric");
+ }, "symmetric stretching with respect to the math axis (minsize = 14em)");
+
+ test(function() {
+ const maxsize = 14000 * emToPx;
+ const Uascent = getBox("baseline9").bottom - getBox("target9").top;
+ const Udescent = getBox("target9").bottom - getBox("baseline9").bottom;
+ assert_greater_than(2 * Math.max(Uascent - AxisHeight, Udescent + AxisHeight), maxsize, "Sascent + Sdescent > maxsize");
+ assert_approx_equals(getBox("mo9").height, maxsize, epsilon, "mo size");
+ const MathAxis = getBox("baseline9").bottom - AxisHeight;
+ assert_approx_equals(MathAxis - getBox("mo9").top, getBox("mo9").bottom - MathAxis, epsilon, "mo is symmetric");
+ }, "symmetric stretching with respect to the math axis (maxsize = 14em)");
done();
}
@@ -56,20 +132,87 @@
<div id="log"></div>
<p>
<math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline1" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
<mrow>
- <mspace id="baseline1" style="background: blue" width="50px" height="1px"/>
- <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
<mo id="mo1" symmetric="true" style="color: green">&#x21A8;</mo>
- <mspace style="background: gray" width="10px" height="50px"/>
+ <mpadded style="background: gray" width="10px" height="50px"><mn>1</mn></mpadded>
</mrow>
</math>
<math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline2" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
<mrow>
- <mspace id="baseline2" style="background: blue" width="50px" height="1px"/>
- <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
<mo id="mo2" symmetric="true" style="color: green">&#x21A8;</mo>
- <mspace id="target2" style="background: gray" width="10px" height="200px"/>
+ <mpadded id="target2" style="background: gray" width="10px" height="200px"><mn>2</mn></mpadded>
+ </mrow>
+ </math>
+ </p>
+ <p>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline3" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo3" minsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target3" style="background: gray" width="10px" height="0px" depth="0px"><mn>3</mn></mpadded>
+ </mrow>
+ </math>
+ </p>
+ <p>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline4" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo4" minsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target4" style="background: gray" width="10px" height="6em" depth="1em"><mn>4</mn></mpadded>
+ </mrow>
+ </math>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline5" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo5" minsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target5" style="background: gray" width="10px" height="4em" depth="3em"><mn>5</mn></mpadded>
+ </mrow>
+ </math>
+ </p>
+ <p>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline6" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo6" maxsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target6" style="background: gray" width="10px" height="6em" depth="22em"><mn>6</mn></mpadded>
+ </mrow>
+ </math>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline7" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo7" maxsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target7" style="background: gray" width="10px" height="4em" depth="24em"><mn>7</mn></mpadded>
+ </mrow>
+ </math>
+ </p>
+
+
+ <p>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline8" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo8" symmetric="true" minsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target8" style="background: gray" width="10px" height="6em" depth="1em"><mn>8</mn></mpadded>
+ </mrow>
+ </math>
+ <math style="font-family: axisheight5000-verticalarrow14000;">
+ <mspace id="baseline9" style="background: blue" width="50px" height="1px"/>
+ <mpadded voffset="50px"><mspace style="background: cyan" width="50px" height="1px"/></mpadded>
+ <mrow>
+ <mo id="mo9" symmetric="true" maxsize="14em" style="color: green">&#x21A8;</mo>
+ <mpadded id="target9" style="background: gray" width="10px" height="6em" depth="24em"><mn>9</mn></mpadded>
</mrow>
</math>
+ </p>
</body>
</html>
diff --git a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html
index 3e7e5c9bcc..c07f64327a 100644
--- a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html
+++ b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html
@@ -20,6 +20,10 @@
mo {
font-family: operators;
}
+ @font-face {
+ font-family: stretchy;
+ src: url("/fonts/math/stretchy.woff");
+ }
</style>
<script>
setup({ explicit_done: true });
@@ -48,17 +52,27 @@
test(function() {
assert_approx_equals(document.getElementById("percent_minsize").getBoundingClientRect().height, 12 * emToPx, epsilon, "percent minsize");
assert_approx_equals(document.getElementById("percent_maxsize").getBoundingClientRect().height, 3 * emToPx, epsilon, "percent maxsize");
- }, `minsize/maxsize percentages are relative to the target size`);
+ }, `minsize/maxsize percentages are relative to the unstretched size`);
test(function() {
- // These tests are not really strong:
- // - The smallest glyph for this stretchy operator is a 1em square so
- // it can't go under a minsize of 1em anyway.
- // - The maxsize is theorically infinite, this only tests that a large
- // value of 300em is clamped.
- assert_approx_equals(document.getElementById("default_minsize").getBoundingClientRect().height, 1 * emToPx, epsilon, "default minsize is 1em");
+ // - The unstretched size is a lower bound for the stretched size, so
+ // specifying a lower minsize has no effect. This test only verifies
+ // that the default minsize is at most 100% the unstretched size.
+ const unstretched_size = 1 * emToPx;
+ assert_approx_equals(document.getElementById("default_minsize").getBoundingClientRect().height, unstretched_size, epsilon, "default minsize is 100%");
+
+ // Previous version of MathML Core were defining minsize as 1em rather
+ // than 100% the unstretched size. So try the same test with a .5em
+ // unstretched size.
+ const unstretched_size_2 = .5 * emToPx;
+ assert_approx_equals(document.getElementById("default_minsize_2").getBoundingClientRect().height, unstretched_size_2, epsilon, "default minsize is not 1em");
+
+ // - The target size is an upper bound for the stretched size, so
+ // specifying a larger maxsize has no effect. This test only
+ // verifies that the default maxsize is at least 300 times the
+ // unstretched size.
assert_approx_equals(document.getElementById("default_maxsize").getBoundingClientRect().height, 300 * emToPx, epsilon, "default maxsize is infinity");
- }, `default minsize/maxsize percentages`);
+ }, `default minsize/maxsize values`);
done();
}
@@ -71,7 +85,7 @@
<mrow>
<mspace width="1em" height="5em" style="background: blue"/>
<mo id="negative_minsize" minsize="-10em" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -80,7 +94,7 @@
<mrow>
<mspace width="1em" height="5em" style="background: blue"/>
<mo id="maxsize_less_than_minsize" minsize="7em" maxsize="2em" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -89,7 +103,7 @@
<mrow>
<mspace width="1em" height="5em" style="background: blue"/>
<mo id="minsize_less_than_negative_maxsize" minsize="-2em" maxsize="-1em" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -98,7 +112,7 @@
<mrow>
<mspace id="zero_target_size_with_minsize_math_axis" width="1em" height="0em" style="background: blue"/>
<mo id="zero_target_size_with_minsize" minsize="2em" stretchy="true" symmetric="true">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -106,8 +120,8 @@
<math>
<mrow>
<mspace width="1em" height="6em" style="background: blue"/>
- <mo id="percent_minsize" minsize="200%" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mo id="percent_minsize" minsize="1200%" stretchy="true" symmetric="false">⥯</mo>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -115,8 +129,8 @@
<math>
<mrow>
<mspace width="1em" height="6em" style="background: blue"/>
- <mo id="percent_maxsize" maxsize="50%" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mo id="percent_maxsize" maxsize="300%" stretchy="true" symmetric="false">⥯</mo>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -125,7 +139,16 @@
<mrow>
<mspace width="1em" height=".5em" style="background: blue"/>
<mo id="default_minsize" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
+ </mrow>
+ </math>
+ </p>
+ <p>
+ <math>
+ <mrow>
+ <mspace width="1em" height=".25em" style="background: blue"/>
+ <mo style="font-family: stretchy" id="default_minsize_2" stretchy="true" symmetric="false">↨</mo>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
@@ -134,10 +157,9 @@
<mrow>
<mspace width="1em" height="300em" style="background: blue"/>
<mo id="default_maxsize" stretchy="true" symmetric="false">⥯</mo>
- <mn><!-- not space like --></mn>
+ <mpadded height="0" depth="0"><mn><!-- not space like --></mn></mpadded>
</mrow>
</math>
</p>
-
</body>
</html>
diff --git a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html
index 5d447aa1d2..1cb3c90bcb 100644
--- a/testing/web-platform/tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html
+++ b/testing/web-platform/tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html
@@ -42,7 +42,8 @@
element = document.getElementById("minsize_remove");
element.removeAttribute("minsize");
- assert_approx_equals(element.getBoundingClientRect().height, 1 * emToPx, epsilon, "remove");
+ const unstretched_size = 1 * emToPx;
+ assert_approx_equals(element.getBoundingClientRect().height, unstretched_size, epsilon, "remove");
}, `minsize`);
test(function() {
diff --git a/testing/web-platform/tests/mathml/presentation-markup/operators/size-and-position-of-stretchy-fences-with-default-font-001.html b/testing/web-platform/tests/mathml/presentation-markup/operators/size-and-position-of-stretchy-fences-with-default-font-001.html
new file mode 100644
index 0000000000..a5eb267c61
--- /dev/null
+++ b/testing/web-platform/tests/mathml/presentation-markup/operators/size-and-position-of-stretchy-fences-with-default-font-001.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Size of nested stretchy fences with inner mo</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=40066018">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=40068339">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=40856331">
+
+<div id="log"></div>
+
+<p>
+ <math>
+ <mrow>
+ <mo id="left1">(</mo>
+ <mrow>
+ <mo>(</mo>
+ <mrow>
+ <mi>x</mi>
+ <mo>+</mo>
+ <mi>y</mi>
+ </mrow>
+ <mo>)</mo>
+ </mrow>
+ <mo id="right1">)</mo>
+ </mrow>
+ </math>
+ <math>
+ <mrow>
+ <mo id="left2">(</mo>
+ <mrow>
+ <mo>(</mo>
+ <mrow>
+ <mi>x</mi>
+ </mrow>
+ <mo>)</mo>
+ </mrow>
+ <mo id="right2">)</mo>
+ </mrow>
+ </math>
+</p>
+
+<p>
+ <math>
+ <mn id="plus3">+</mn>
+ <mrow>
+ <mo id="left3" fence="true" form="prefix">(</mo>
+ <mi>x</mi>
+ <mo id="right3" fence="true" form="postfix">)</mo>
+ </mrow>
+ </math>
+</p>
+
+<p>
+ <math display="block">
+ <mrow>
+ <mo id="left4" fence="false" symmetric="true" minsize="2.4em" maxsize="2.4em">(</mo>
+ <mfrac>
+ <msup>
+ <mi>∂</mi>
+ <mn>2</mn>
+ </msup>
+ <mrow>
+ <mi>∂</mi>
+ <msup>
+ <mi>x</mi>
+ <mn>2</mn>
+ </msup>
+ </mrow>
+ </mfrac>
+ <mo id="plus4">+</mo>
+ <mfrac>
+ <msup>
+ <mi>∂</mi>
+ <mn>2</mn>
+ </msup>
+ <mrow>
+ <mi>∂</mi>
+ <msup>
+ <mi>y</mi>
+ <mn>2</mn>
+ </msup>
+ </mrow>
+ </mfrac>
+ <mo id="right4" fence="false" symmetric="true" minsize="2.4em" maxsize="2.4em">)</mo>
+ </mrow>
+ </math>
+</p>
+
+<script>
+ function getBox(id) {
+ return document.getElementById(id).getBoundingClientRect();
+ }
+ function middleOf(id) {
+ let box = getBox(id);
+ return (box.top + box.bottom) / 2;
+ }
+ const epsilon = 2;
+
+ test(t => {
+ assert_approx_equals(getBox("left1").top, getBox("left2").top, epsilon);
+ assert_approx_equals(getBox("left1").bottom, getBox("left2").bottom, epsilon);
+ assert_approx_equals(getBox("right1").top, getBox("right2").top, epsilon);
+ assert_approx_equals(getBox("right1").bottom, getBox("right2").bottom, epsilon);
+ }, "Inner binary operator should not affect position and size of outer fences.");
+
+ test(t => {
+ const math_axis_3 = middleOf("plus3")
+ assert_approx_equals(middleOf("left3"), math_axis_3, epsilon);
+ assert_approx_equals(middleOf("right3"), math_axis_3, epsilon);
+ const math_axis_4 = middleOf("plus4")
+ assert_approx_equals(middleOf("left4"), math_axis_4, epsilon);
+ assert_approx_equals(middleOf("right4"), math_axis_4, epsilon);
+ }, "Fences are stretched symmetrically with respect to the math axis");
+</script>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001-ref.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001-ref.html
new file mode 100644
index 0000000000..5d4e6b7dca
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001-ref.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements (reference)</title>
+<p>PASS if there is no red.</p>
+<ol>
+ <li>
+ <math>
+ <mtext class="firstline"><span>Hello,<br/>World!</span></mtext>
+ </math>
+ </li>
+ <li>
+ <math>
+ <mtext class="firstletter">Hello, World!</mtext>
+ </math>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001.html
new file mode 100644
index 0000000000..42d0f04ed8
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-001.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements</title>
+<link rel="help" href="https://w3c.github.io/mathml-core/#legacy-mathml-style-attributes">
+<link rel="match" href="first-line-first-letter-pseudo-elements-001-ref.html"/>
+<meta name="assert" content="::first-line and ::first-letter do not apply to MathML elements.">
+<style>
+ .firstline::first-line { background: red; }
+ .firstletter::first-letter { background: red; }
+</style>
+<p>PASS if there is no red.</p>
+<ol>
+ <li>
+ <math>
+ <mtext class="firstline"><span>Hello,<br/>World!</span></mtext>
+ </math>
+ </li>
+ <li>
+ <math>
+ <mtext class="firstletter">Hello, World!</mtext>
+ </math>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002-ref.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002-ref.html
new file mode 100644
index 0000000000..d4c79c7218
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements (reference)</title>
+<style>
+ .firstline > span { background: lime; }
+ .firstletter > span { background: lime; }
+</style>
+<p>PASS if the first line or letter is green.</p>
+<ol>
+ <li>
+ <div style="display: inline math" class="firstline">
+ <span>Hello,</span><br/>World!
+ </div>
+ </li>
+ <li>
+ <div style="display: inline math" class="firstletter">
+ <span>H</span>ello, World!
+ </div>
+ </li>
+ <li>
+ <div style="display: block math" class="firstline">
+ <span>Hello,</span><br/>World!
+ </div>
+ </li>
+ <li>
+ <div style="display: block math" class="firstletter">
+ <span>H</span>ello, World!
+ </div>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002.html
new file mode 100644
index 0000000000..7e206c951e
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-002.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements</title>
+<link rel="help" href="https://w3c.github.io/mathml-core/#legacy-mathml-style-attributes">
+<link rel="match" href="first-line-first-letter-pseudo-elements-002-ref.html"/>
+<meta name="assert" content="::first-line and ::first-letter do apply to non-MathML specified display math elements, because their computed values are block/inline flow.">
+<style>
+ .firstline::first-line { background: lime; }
+ .firstletter::first-letter { background: lime; }
+</style>
+<p>PASS if the first line or letter is green.</p>
+<ol>
+ <li>
+ <div style="display: inline math" class="firstline">
+ Hello,<br/>World!
+ </div>
+ </li>
+ <li>
+ <div style="display: inline math" class="firstletter">
+ Hello, World!
+ </div>
+ </li>
+ <li>
+ <div style="display: block math" class="firstline">
+ Hello,<br/>World!
+ </div>
+ </li>
+ <li>
+ <div style="display: block math" class="firstletter">
+ Hello, World!
+ </div>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003-ref.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003-ref.html
new file mode 100644
index 0000000000..825b397057
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements (reference)</title>
+<p>PASS if there is no red.</p>
+<ol>
+ <li>
+ <div class="firstline">
+ <math style="display: inline math"><mtext>Hello<br>World!</mtext></math>
+ </li>
+ <li>
+ <div class="firstletter">
+ <math>
+ <mtext style="display: inline math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+ <li>
+ <div class="firstline">
+ <math>
+ <mtext style="display: block math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+ <li>
+ <div class="firstletter">
+ <math>
+ <mtext style="display: block math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html
new file mode 100644
index 0000000000..042a9555e6
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-003.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements</title>
+<link rel="help" href="https://w3c.github.io/mathml-core/#legacy-mathml-style-attributes">
+<link rel="match" href="first-line-first-letter-pseudo-elements-003-ref.html"/>
+<meta name="assert" content="display math elements do not contribute a first formatted line/letter to ancestors.">
+<style>
+ .firstline::first-line { background: red; }
+ .firstletter::first-letter { background: red; }
+</style>
+<p>PASS if there is no red.</p>
+<ol>
+ <li>
+ <div class="firstline">
+ <math style="display: inline math"><mtext>Hello<br>World!</mtext></math>
+ </li>
+ <li>
+ <div class="firstletter">
+ <math>
+ <mtext style="display: inline math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+ <li>
+ <div class="firstline">
+ <math>
+ <mtext style="display: block math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+ <li>
+ <div class="firstletter">
+ <math>
+ <mtext style="display: block math">Hello<br>World!</mtext>
+ </math>
+ </div>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004-ref.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004-ref.html
new file mode 100644
index 0000000000..60d3427489
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements (reference)</title>
+<style>
+ .firstline > span { background: lime; }
+ .firstletter > span { background: lime; }
+</style>
+<ol>
+ <li>PASS if first line is green:
+ <math>
+ <mtext><span class="firstline"><span>Hello,</span><br/>World!</span></mtext>
+ </math>
+ </li>
+ <li>PASS if first letter is green:
+ <math>
+ <mtext><span class="firstletter"><span>H</span>ello, World!</span></mtext>
+ </math>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html
new file mode 100644
index 0000000000..b463266bdb
--- /dev/null
+++ b/testing/web-platform/tests/mathml/relations/css-styling/first-line-first-letter-pseudo-elements-004.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>MathML and ::first-line/::first-letter pseudo-elements</title>
+<link rel="help" href="https://w3c.github.io/mathml-core/#legacy-mathml-style-attributes">
+<link rel="match" href="first-line-first-letter-pseudo-elements-004-ref.html"/>
+<meta name="assert" content="::first-letter/::first-line works for HTML elements inside MathML.">
+<style>
+ .firstline::first-line { background: lightgreen; }
+ .firstletter::first-letter { background: lightgreen; }
+</style>
+<ol>
+ <li>PASS if first line is green:
+ <math>
+ <mtext><span class="firstline">Hello,<br/>World!</span></mtext>
+ </math>
+ </li>
+ <li>PASS if first letter is green:
+ <math>
+ <mtext><span class="firstletter">Hello, World!</span></mtext>
+ </math>
+ </li>
+</ol>
diff --git a/testing/web-platform/tests/mathml/tools/stretchy.py b/testing/web-platform/tests/mathml/tools/stretchy.py
index 34530f5792..33d4decd4f 100755
--- a/testing/web-platform/tests/mathml/tools/stretchy.py
+++ b/testing/web-platform/tests/mathml/tools/stretchy.py
@@ -4,7 +4,9 @@ from utils import mathfont
import fontforge
# Create a WOFF font with glyphs for all the operator strings.
-font = mathfont.create("stretchy", "Copyright (c) 2021 Igalia S.L.")
+font = mathfont.create("stretchy", "Copyright (c) 2021-2024 Igalia S.L.")
+
+font.math.AxisHeight = 0
# Set parameters for stretchy tests.
font.math.MinConnectorOverlap = mathfont.em // 2
@@ -27,6 +29,7 @@ font.math.OverbarExtraAscender = 0
# These two characters will be stretchable in both directions.
horizontalArrow = 0x295A # LEFTWARDS HARPOON WITH BARB UP FROM BAR
verticalArrow = 0x295C # UPWARDS HARPOON WITH BARB RIGHT FROM BAR
+upDownArrowWithBase = 0x21A8 # UP DOWN ARROW WITH BASE
mathfont.createSizeVariants(font, aUsePUA=True, aCenterOnBaseline=False)
@@ -40,4 +43,10 @@ mathfont.createSquareGlyph(font, verticalArrow)
mathfont.createStretchy(font, verticalArrow, True)
mathfont.createStretchy(font, verticalArrow, False)
+# U+21A8 stretches vertically using two size variants: a base glyph (of height
+# half an em) and taller glyphs (of heights 1, 2, 3 and 4 em).
+g = font.createChar(upDownArrowWithBase)
+mathfont.drawRectangleGlyph(g, mathfont.em, mathfont.em/2, 0)
+font[upDownArrowWithBase].verticalVariants = "uni21A8 v0 v1 v2 v3"
+
mathfont.save(font)
diff --git a/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html b/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html
new file mode 100644
index 0000000000..83a2376911
--- /dev/null
+++ b/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-audio-stats.https.html
@@ -0,0 +1,209 @@
+<!doctype html>
+<meta charset=utf-8>
+<meta name="timeout" content="long">
+<button id="button">User gesture</button>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script>
+'use strict';
+
+async function getFrameStatsUntil(track, condition) {
+ while (true) {
+ const stats = track.stats.toJSON();
+ if (condition(stats)) {
+ return stats;
+ }
+ // Repeat in the next task execution cycle.
+ await Promise.resolve();
+ }
+};
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ const firstStats =
+ await getFrameStatsUntil(track, stats => stats.totalFrames > 0);
+ await getFrameStatsUntil(track,
+ stats => stats.totalFrames > firstStats.totalFrames && stats.totalFramesDuration > firstStats.totalFramesDuration);
+}, `totalFrames and totalFramesDuration increase over time`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Wait one second for stats
+ const stats =
+ await getFrameStatsUntil(track, stats => stats.totalFramesDuration > 1000);
+ assert_less_than_equal(stats.deliveredFrames, stats.totalFrames);
+ assert_less_than_equal(stats.deliveredFramesDuration, stats.totalFramesDuration);
+ assert_greater_than_equal(stats.deliveredFrames, 0);
+ assert_greater_than_equal(stats.deliveredFramesDuration, 0);
+}, `deliveredFrames and deliveredFramesDuration are at most as large as totalFrames and totalFramesDuration`);
+
+promise_test(async t => {
+ function assertLatencyStatsInBounds(stats) {
+ assert_greater_than_equal(stats.maximumLatency, stats.latency);
+ assert_greater_than_equal(stats.maximumLatency, stats.averageLatency);
+ assert_less_than_equal(stats.minimumLatency, stats.latency);
+ assert_less_than_equal(stats.minimumLatency, stats.averageLatency);
+ };
+
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+ const firstStats = track.stats.toJSON();
+ assertLatencyStatsInBounds(firstStats);
+
+ // Wait one second for a second stats object.
+ const secondStats =
+ await getFrameStatsUntil(track, stats => stats.totalFramesDuration - firstStats.totalFramesDuration >= 1000);
+ assertLatencyStatsInBounds(secondStats);
+
+ // Reset the latency stats and wait one second for a third stats object.
+ track.stats.resetLatency();
+ const thirdStats =
+ await getFrameStatsUntil(track, stats => stats.totalFramesDuration - secondStats.totalFramesDuration >= 1000);
+ assertLatencyStatsInBounds(thirdStats);
+}, `Latency and averageLatency is within the bounds of minimumLatency and maximumLatency`);
+
+promise_test(async t => {
+ // This behaviour is defined in
+ // https://w3c.github.io/mediacapture-extensions/#dom-mediastreamtrackaudiostats-resetlatency
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Wait one second for stats
+ const stats =
+ await getFrameStatsUntil(track, stats => stats.totalFramesDuration > 1000);
+ track.stats.resetLatency();
+ assert_equals(track.stats.latency, stats.latency);
+ assert_equals(track.stats.averageLatency, stats.latency);
+ assert_equals(track.stats.minimumLatency, stats.latency);
+ assert_equals(track.stats.maximumLatency, stats.latency);
+}, `Immediately after resetLatency(), latency, averageLatency, minimumLatency and maximumLatency are equal to the most recent latency.`);
+
+promise_test(async t => {
+ // This behaviour is defined in
+ // https://w3c.github.io/mediacapture-extensions/#dfn-expose-audio-frame-counters-steps
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Wait until we have meaningful data
+ await getFrameStatsUntil(track, stats => stats.totalFrames > 0);
+ const firstStats = track.stats.toJSON();
+
+ // Synchronously wait 500 ms.
+ const start = performance.now();
+ while(performance.now() - start < 500);
+
+ // The stats should still be the same, despite the time difference.
+ const secondStats = track.stats.toJSON();
+ assert_equals(JSON.stringify(firstStats), JSON.stringify(secondStats));
+}, `Stats do not change within the same task execution cycle.`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Wait for media to flow before disabling the `track`.
+ const initialStats = await getFrameStatsUntil(track, stats => stats.totalFrames > 0);
+ track.enabled = false;
+ // Upon disabling, the counters are not reset.
+ const disabledSnapshot = track.stats.toJSON();
+ assert_greater_than_equal(disabledSnapshot.totalFramesDuration,
+ initialStats.totalFramesDuration);
+
+ await new Promise(r => t.step_timeout(r, 4000));
+
+ // Frame metrics should be frozen, but because `enabled = false` does not
+ // return a promise, we allow some lee-way in case som buffers were still in flight
+ // during the disabling.
+ assert_approx_equals(
+ track.stats.totalFramesDuration, disabledSnapshot.totalFramesDuration, 1000);
+}, `Stats are frozen while disabled`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({audio:true});
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ const a = track.stats;
+ await getFrameStatsUntil(track, stats => stats.totalFrames > 0);
+ const b = track.stats;
+ // The counters may have changed, but `a` and `b` are still the same object.
+ assert_equals(a, b);
+}, `SameObject policy applies`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({audio:true});
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Hold a reference directly to the [SameObject] stats, bypassing the
+ // `track.stats` getter in the subsequent getting of `totalFrames`.
+ const stats = track.stats;
+ const firstTotalFrames = stats.totalFrames;
+ while (stats.totalFrames == firstTotalFrames) {
+ await Promise.resolve();
+ }
+ assert_greater_than(stats.totalFrames, firstTotalFrames);
+}, `Counters increase even if we don't call the track.stats getter`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({audio:true});
+ const [track] = stream.getTracks();
+ t.add_cleanup(() => track.stop());
+
+ // Wait for 500 ms of audio to flow before disabling the `track`.
+ const initialStats = await getFrameStatsUntil(track, stats =>
+ stats.totalFramesDuration > 500);
+ track.enabled = false;
+
+ // Re-enable the track. The stats counters should be greater than or equal to
+ // what they were previously.
+ track.enabled = true;
+ assert_greater_than_equal(track.stats.totalFrames,
+ initialStats.totalFrames);
+ assert_greater_than_equal(track.stats.totalFramesDuration,
+ initialStats.totalFramesDuration);
+ // This should be true even in the next task execution cycle.
+ await Promise.resolve();
+ assert_greater_than_equal(track.stats.totalFrames,
+ initialStats.totalFrames);
+ assert_greater_than_equal(track.stats.totalFramesDuration,
+ initialStats.totalFramesDuration);
+}, `Disabling and re-enabling does not reset the counters`);
+
+promise_test(async t => {
+ const stream = await navigator.mediaDevices.getUserMedia({audio:true});
+ const [originalTrack] = stream.getTracks();
+ t.add_cleanup(() => originalTrack.stop());
+
+ // Wait for 500 ms of audio to flow.
+ await getFrameStatsUntil(originalTrack, stats =>
+ stats.totalFramesDuration > 500);
+
+ // Clone the track. While its counters should initially be zero, it would be
+ // racy to assert that they are exactly zero because media is flowing.
+ const clonedTrack = originalTrack.clone();
+ t.add_cleanup(() => clonedTrack.stop());
+
+ // Ensure that as media continues to flow, the cloned track will necessarily
+ // have less frames than the original track on all accounts since its counters
+ // will have started from zero.
+ const clonedTrackStats = await getFrameStatsUntil(clonedTrack, stats =>
+ stats.totalFramesDuration > 0);
+ assert_less_than(clonedTrackStats.totalFrames,
+ originalTrack.stats.totalFrames);
+ assert_less_than(clonedTrackStats.totalFramesDuration,
+ originalTrack.stats.totalFramesDuration);
+}, `New stats baselines when a track is cloned from an enabled track`);
+</script>
diff --git a/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-video-stats.https.html b/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-video-stats.https.html
index f1b6a2074a..374a22c7ca 100644
--- a/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-video-stats.https.html
+++ b/testing/web-platform/tests/mediacapture-extensions/MediaStreamTrack-video-stats.https.html
@@ -322,14 +322,6 @@ promise_test(async t => {
}, `A low FPS clone does not affect the original track's discardedFrames`);
promise_test(async t => {
- const stream = await navigator.mediaDevices.getUserMedia({audio:true});
- const [track] = stream.getTracks();
- t.add_cleanup(() => track.stop());
-
- assert_equals(track.stats, null);
-}, `track.stats is null on audio tracks`);
-
-promise_test(async t => {
const canvas = document.createElement('canvas');
const stream = canvas.captureStream(10);
const [track] = stream.getTracks();
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html
index e640714d5c..0680c21879 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html
@@ -9,6 +9,8 @@
<meta name=variant content="?mimeType=video/webm;codecs=vp9,opus">
<meta name=variant content="?mimeType=video/webm;codecs=av1,opus">
<meta name=variant content="?mimeType=video/mp4;codecs=avc1,mp4a.40.2">
+ <meta name=variant content="?mimeType=video/mp4;codecs=vp9,opus">
+ <meta name=variant content="?mimeType=video/mp4">
<link rel="help"
href="https://w3c.github.io/mediacapture-record/MediaRecorder.html#dom-mediarecorder-mimeType">
<script src="/resources/testharness.js"></script>
@@ -84,9 +86,9 @@ async_test(test => {
const params = new URLSearchParams(window.location.search);
const mimeType = params.get('mimeType');
- if (mimeType) {
- assert_implements_optional(MediaRecorder.isTypeSupported(mimeType),
- `"${mimeType}" for MediaRecorder is not supported`);
+ if (mimeType && !MediaRecorder.isTypeSupported(mimeType)) {
+ test.done();
+ return;
}
const canvas = document.querySelector("canvas");
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html
index 409e46c91d..97ada21266 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html
@@ -8,6 +8,8 @@
<meta name=variant content="?mimeType=video/webm;codecs=vp9,opus">
<meta name=variant content="?mimeType=video/webm;codecs=av1,opus">
<meta name=variant content="?mimeType=video/mp4;codecs=avc1,mp4a.40.2">
+ <meta name=variant content="?mimeType=video/mp4;codecs=vp9,opus">
+ <meta name=variant content="?mimeType=video/mp4">
<link rel="help" href="https://w3c.github.io/mediacapture-record/MediaRecorder.html#mediarecorder">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
@@ -81,9 +83,9 @@
const params = new URLSearchParams(window.location.search);
const mimeType = params.get('mimeType');
- if (mimeType) {
- assert_implements_optional(MediaRecorder.isTypeSupported(mimeType),
- `"${mimeType}" for MediaRecorder is not supported`);
+ if (mimeType && !MediaRecorder.isTypeSupported(mimeType)) {
+ test.done();
+ return;
}
const recorder = new MediaRecorder(new MediaStream(), { mimeType });
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-mimetype.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-mimetype.html
index 74248d65f4..57baa1346f 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-mimetype.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-mimetype.html
@@ -21,6 +21,7 @@ const AUDIO_CODECS_MIME_TYPES = [
'audio/webm; codecs="vorbis"',
'audio/webm; codecs="opus"',
'audio/mp4: codecs="mp4a.40.2"',
+ 'audio/mp4: codecs="opus"',
];
const VIDEO_ONLY_MIME_TYPES = [
@@ -33,6 +34,7 @@ const VIDEO_CODECS_MIME_TYPES = [
'video/webm; codecs="vp9"',
'video/webm; codecs="av1"',
'video/mp4: codecs="avc1"',
+ 'video/mp4: codecs="vp9"',
];
const AUDIO_VIDEO_MIME_TYPES = [
@@ -42,6 +44,7 @@ const AUDIO_VIDEO_MIME_TYPES = [
'video/webm; codecs="vp9, opus"',
'video/webm; codecs="av1, opus"',
'video/mp4: codecs="avc1, mp4a.40.2"',
+ 'video/mp4; codecs="vp9, opus"',
];
const AUDIO_MIME_TYPES = [
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-pause-resume.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-pause-resume.html
index 8dc231279a..f584508a0d 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-pause-resume.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-pause-resume.html
@@ -8,6 +8,10 @@
<meta name=variant content="?mimeType=video/webm;codecs=vp9,opus">
<meta name=variant content="?mimeType=video/webm;codecs=av1,opus">
<meta name=variant content="?mimeType=video/mp4;codecs=avc1,mp4a.40.2">
+ <meta name=variant content="?mimeType=video/mp4;codecs=avc1,opus">
+ <meta name=variant content="?mimeType=video/mp4;codecs=vp9,opus">
+ <meta name=variant content="?mimeType=video/mp4;codecs=vp9,mp4a.40.2">
+ <meta name=variant content="?mimeType=video/mp4">
<link rel="help" href="https://w3c.github.io/mediacapture-record/MediaRecorder.html#mediarecorder">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-peerconnection.https.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-peerconnection.https.html
index 3fbc1f0f2d..daae044fa8 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-peerconnection.https.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-peerconnection.https.html
@@ -4,6 +4,20 @@
<head>
<title>MediaRecorder peer connection</title>
+ <meta name=variant content="?kinds=video&mimeType=''">
+ <meta name=variant content="?kinds=audio&mimeType=''">
+ <meta name=variant content="?kinds=video,audio&mimeType=''">
+ <meta name=variant content="?kinds=audio&mimeType=audio/webm;codecs=opus">
+ <meta name=variant content="?kinds=video&mimeType=video/webm;codecs=vp8">
+ <meta name=variant content="?kinds=video,audio&mimeType=video/webm;codecs=vp8,opus">
+ <meta name=variant content="?kinds=video&mimeType=video/webm;codecs=vp9">
+ <meta name=variant content="?kinds=video,audio&mimeType=video/webm;codecs=vp9,opus">
+ <meta name=variant content="?kinds=video,audio&mimeType=video/mp4;codecs=avc1,mp4a.40.2">
+ <meta name=variant content="?kinds=video&mimeType=video/mp4;codecs=vp9">
+ <meta name=variant content="?kinds=audio&mimeType=audio/mp4;codecs=opus">
+ <meta name=variant content="?kinds=video,audio&mimeType=video/mp4;codecs=vp9,opus">
+ <meta name=variant content="?kinds=video,audio&mimeType=video/mp4">
+
<link rel="help"
href="https://w3c.github.io/mediacapture-record/MediaRecorder.html#dom-mediarecorder-mimeType">
<script src="/resources/testharness.js"></script>
@@ -15,74 +29,83 @@
</head>
<body>
- <video id="remote" autoplay width="240"></video>
- <script>
+<video id="remote" autoplay width="240"></video>
+
+<script>
+ const params = new URLSearchParams(window.location.search);
+ const mimeType = params.get('mimeType');
+ const kinds = params.get('kinds');
+ const tag = `kinds "${kinds} "mimeType "${mimeType}"`;
+ let stream;
+ let pc;
-promise_setup(async () => {
- const t = {add_cleanup: add_completion_callback};
- const [, pc, stream] = await startConnection(t, true, true);
- const [audio] = stream.getAudioTracks();
- const [video] = stream.getVideoTracks();
+ promise_setup(async () => {
+ const t = {add_cleanup: add_completion_callback};
+ const [, connection_pc, connection_stream] = await startConnection(t, true, true);
+ pc = connection_pc;
+
+ let video = null;
+ if (kinds.indexOf('video') != -1) {
+ video = connection_stream.getVideoTracks()[0];
+ }
- // Needed for the tests to get exercised in Chrome (bug)
- document.getElementById('remote').srcObject = stream;
+ let audio = null;
+ if (kinds.indexOf('audio') != -1) {
+ audio = connection_stream.getAudioTracks()[0];
+ }
- for (const {kinds, mimeType} of [
- { kinds: { video }, mimeType: "" },
- { kinds: { audio }, mimeType: "" },
- { kinds: { video, audio }, mimeType: "" },
- { kinds: { audio }, mimeType: "audio/webm;codecs=opus" },
- { kinds: { video }, mimeType: "video/webm;codecs=vp8" },
- { kinds: { video, audio }, mimeType: "video/webm;codecs=vp8,opus" },
- { kinds: { video }, mimeType: "video/webm;codecs=vp9" },
- { kinds: { video, audio }, mimeType: "video/webm;codecs=vp9,opus" },
- { kinds: { audio }, mimeType: "audio/mp4;codecs=mp4a.40.2" },
- { kinds: { video, audio }, mimeType: "video/mp4;codecs=avc1,mp4a.40.2" }
- ]) {
- const tag = `${JSON.stringify(kinds)} mimeType "${mimeType}"`;
- const stream = new MediaStream([kinds.audio, kinds.video].filter(n => n));
+ // Needed for the tests to get exercised in Chrome (bug)
+ document.getElementById('remote').srcObject = connection_stream;
+ stream = new MediaStream([audio, video].filter(n => n));
+ });
+ promise_test(async t => {
// Spec doesn't mandate codecs, so if not supported, test failure instead.
if (mimeType && !MediaRecorder.isTypeSupported(mimeType)) {
promise_test(async t => {
assert_throws_dom('NotSupportedError',
() => new MediaRecorder(stream, { mimeType }));
- }, `MediaRecorder constructor throws on no support, ${tag}`);
- continue;
+ }, `MediaRecorder constructor throws on no support 1, ${tag}`);
+ return;
}
- promise_test(async t => {
- const recorder = new MediaRecorder(stream, { mimeType });
- recorder.start(200);
- await new Promise(r => recorder.onstart = r);
- let combinedSize = 0;
- // Wait for a small amount of data to appear. Kept small for mobile tests
- while (combinedSize < 2000) {
- const {data} = await new Promise(r => recorder.ondataavailable = r);
- combinedSize += data.size;
- }
- recorder.stop();
- }, `PeerConnection MediaRecorder receives data after onstart, ${tag}`);
+ const recorder = new MediaRecorder(stream, { mimeType });
+ recorder.start(200);
+ await new Promise(r => recorder.onstart = r);
+ let combinedSize = 0;
+ // Wait for a small amount of data to appear. Kept small for mobile tests
+ while (combinedSize < 2000) {
+ const {data} = await new Promise(r => recorder.ondataavailable = r);
+ combinedSize += data.size;
+ }
+ recorder.stop();
+ }, `PeerConnection MediaRecorder receives data after onstart, ${tag}`);
- promise_test(async t => {
- const clone = stream.clone();
- const recorder = new MediaRecorder(clone, { mimeType });
- recorder.start();
- await new Promise(r => recorder.onstart = r);
- await waitForReceivedFramesOrPackets(t, pc, kinds.audio, kinds.video, 10);
- for (const track of clone.getTracks()) {
- track.stop();
- }
- // As the tracks ended, expect data from the recorder.
- await Promise.all([
- new Promise(r => recorder.onstop = r),
- new Promise(r => recorder.ondataavailable = r)
- ]);
- }, `PeerConnection MediaRecorder gets ondata on stopping tracks, ${tag}`);
- }
-});
+ promise_test(async t => {
+ // Spec doesn't mandate codecs, so if not supported, test failure instead.
+ if (mimeType && !MediaRecorder.isTypeSupported(mimeType)) {
+ promise_test(async t => {
+ assert_throws_dom('NotSupportedError',
+ () => new MediaRecorder(stream, { mimeType }));
+ }, `MediaRecorder constructor throws on no support 2, ${tag}`);
+ return;
+ }
+
+ const clone = stream.clone();
+ const recorder = new MediaRecorder(clone, { mimeType });
+ recorder.start();
+ await new Promise(r => recorder.onstart = r);
+ await waitForReceivedFramesOrPackets(t, pc, kinds.audio, kinds.video, 10);
+ for (const track of clone.getTracks()) {
+ track.stop();
+ }
+ // As the tracks ended, expect data from the recorder.
+ await Promise.all([
+ new Promise(r => recorder.onstop = r),
+ new Promise(r => recorder.ondataavailable = r)
+ ]);
+ }, `PeerConnection MediaRecorder gets ondata on stopping tracks, ${tag}`);
</script>
</body>
-
</html>
diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-stop.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-stop.html
index d6ce370772..9ef5051638 100644
--- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-stop.html
+++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-stop.html
@@ -7,6 +7,8 @@
<meta name=variant content="?mimeType=video/webm;codecs=vp9,opus">
<meta name=variant content="?mimeType=video/webm;codecs=av1,opus">
<meta name=variant content="?mimeType=video/mp4;codecs=avc1,mp4a.40.2">
+ <meta name=variant content="?mimeType=video/mp4;codecs=vp9,opus">
+ <meta name=variant content="?mimeType=video/mp4">
<link rel="help" href="https://w3c.github.io/mediacapture-record/MediaRecorder.html#mediarecorder">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
@@ -38,18 +40,21 @@
return true;
}
- function doneWithUnsupportedType(mimeType) {
- if (mimeType) {
- assert_implements_optional(MediaRecorder.isTypeSupported(mimeType),
- `"${mimeType}" for MediaRecorder is not supported`);
+ function isMimetypeSupported(mimeType, t) {
+ if (mimeType && !MediaRecorder.isTypeSupported(mimeType)) {
+ t.done();
+ return false;
}
+ return true;
}
const params = new URLSearchParams(window.location.search);
const mimeType = params.get('mimeType');
const tag = `mimeType "${mimeType}"`;
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream: video} = createVideoStream(t);
const recorder = new MediaRecorder(video, {mimeType});
@@ -73,7 +78,9 @@
}, "MediaRecorder will stop recording and fire a stop event when all tracks are ended");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream: video} = createVideoStream(t);
const recorder = new MediaRecorder(video, {mimeType});
@@ -96,7 +103,9 @@
}, "MediaRecorder will stop recording and fire a stop event when stop() is called");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const recorder = new MediaRecorder(createVideoStream(t).stream, {mimeType});
recorder.stop();
@@ -107,7 +116,9 @@
}, "MediaRecorder will not fire an exception when stopped after creation");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const recorder = new MediaRecorder(createVideoStream(t).stream, {mimeType});
recorder.start();
@@ -121,7 +132,9 @@
}, "MediaRecorder will not fire an exception when stopped after having just been stopped");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream} = createVideoStream(t);
const recorder = new MediaRecorder(stream, {mimeType});
@@ -136,7 +149,9 @@
}, "MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream} = createAudioVideoStream(t);
const recorder = new MediaRecorder(stream, {mimeType});
@@ -155,7 +170,9 @@
}, "MediaRecorder will fire start event even if stopped synchronously");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream} = createAudioVideoStream(t);
const recorder = new MediaRecorder(stream, {mimeType});
@@ -178,7 +195,9 @@
}, "MediaRecorder will fire start event even if a track is removed synchronously");
promise_test(async t => {
- doneWithUnsupportedType(mimeType);
+ if (!isMimetypeSupported(mimeType, t)) {
+ return;
+ }
const {stream} = createFlowingAudioVideoStream(t);
const recorder = new MediaRecorder(stream, {mimeType});
diff --git a/testing/web-platform/tests/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html b/testing/web-platform/tests/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html
new file mode 100644
index 0000000000..4b0da740bd
--- /dev/null
+++ b/testing/web-platform/tests/mediacapture-streams/BrowserCaptureMediaStreamTrack-restrictTo.https.html
@@ -0,0 +1,245 @@
+<!doctype html>
+<html>
+
+<head>
+ <title>BrowserCaptureMediaStreamTrack restrictTo()</title>
+ <link rel="help" href="https://screen-share.github.io/element-capture/">
+</head>
+
+<body>
+ <p class="instructions">
+ When prompted, accept to give permission to use your audio, video devices.
+ </p>
+ <h1 class="instructions">Description</h1>
+ <p class="instructions">
+ This test checks that restricting BrowserCaptureMediaStreamTrack works as
+ expected.
+ </p>
+
+ <style>
+ div {
+ height: 100px;
+ }
+ .stacking {
+ opacity: 0.9;
+ }
+ #container {
+ columns:4;
+ column-fill:auto;
+ }
+ .fragmentize {
+ height: 50px;
+ }
+ #target {
+ background: linear-gradient(red, blue);
+ }
+ </style>
+
+
+ <div id='container'>
+ <div id='target'></div>
+ </div>
+ <video id="video"
+ style="border: 2px blue dotted; width: 250px; height: 250px;"
+ autoplay playsinline muted></video>
+
+ <script src=/resources/testharness.js></script>
+ <script src=/resources/testharnessreport.js></script>
+ <script src=/resources/testdriver.js></script>
+ <script src=/resources/testdriver-vendor.js></script>
+
+ <script>
+ "use strict";
+
+ // For more information, see:
+ // https://screen-share.github.io/element-capture/#elements-eligible-for-restriction
+ const EligibilityRequirement = {
+ StackingContext: "StackingContext",
+ OnlyOneBoxFragment: "OnlyOneBoxFragment",
+ FlattenedIn3D: "FlattenedIn3D",
+ };
+
+ // The target div.
+ const div = document.getElementById('target');
+
+ // Returns a promise that, if successful, will resolve to a media stream.
+ async function getDisplayMedia() {
+ return test_driver.bless('getDisplayMedia', () =>
+ navigator.mediaDevices.getDisplayMedia({
+ video: { displaySurface: "browser" },
+ selfBrowserSurface: "include",
+ }));
+ }
+
+ // Returns a promise that will resolve successfully if at least one frame is
+ // read before the timeout.
+ function assertFrameRead(t, state, message) {
+ const last_frame_count = state.frame_count;
+ return t.step_wait(() => state.frame_count > last_frame_count,
+ message, 5000, 10);
+ }
+
+ // Returns a promise that will resolve successfully if there are no frames
+ // produced for an entire second after being called.
+ function assertStopsProducingFrames(t, state, message) {
+ let last_frame_count = state.frame_count;
+
+ return t.step_timeout(() => {
+ assert_equals(state.frame_count, last_frame_count);
+ }, 1000);
+ }
+
+ function makeDivEligible() {
+ // Must always have a stacking context to be eligible.
+ div.classList.add("stacking");
+ div.parentElement.classList.remove("fragmented");
+ div.style.transform = "";
+ }
+
+ function makeDivIneligible(state) {
+ switch(state.eligibilityParam) {
+ case EligibilityRequirement.StackingContext:
+ div.classList.remove("stacking");
+ break;
+
+ case EligibilityRequirement.OnlyOneBoxFragment:
+ div.parentElement.classList.add("fragmented");
+ break;
+
+ case EligibilityRequirement.FlattenedIn3D:
+ div.style.transform = "rotateY(90deg)";
+ break;
+ }
+ }
+
+ // Restore element state after each test.
+ function cleanupDiv() {
+ div.classList.remove("stacking");
+ div.parentElement.classList.remove("fragmented");
+ div.style.transform = "";
+ }
+
+ function startAnimation(t, state) {
+ let count = 0;
+ function animate() {
+ if (!state.running) {
+ return;
+ }
+ count += 1;
+ div.innerText = count;
+ window.requestAnimationFrame(animate);
+ }
+ window.requestAnimationFrame(animate);
+
+ // Stop animation as part of cleanup.
+ t.add_cleanup(() => { state.running = false; });
+ }
+
+ // Updates the state.frame_count value whenever a new frame is received on
+ // the passed in media stream track.
+ async function readFromTrack(state, track) {
+ while (state.running) {
+ const reader = new MediaStreamTrackProcessor(track).readable.getReader();
+ while (true) {
+ const frameOrDone = await reader.read();
+ if (frameOrDone.done) {
+ break;
+ }
+ frameOrDone.value.close();
+ state.frame_count += 1;
+ }
+ }
+ }
+
+ // Parameterized test method. Note that this returns a Promise that will be
+ // resolved to represent success of the entire promise test.
+ async function runTest(t, eligibilityParam) {
+ let state = {
+ eligibilityParam: eligibilityParam,
+ frame_count: 0,
+ running: true,
+ reading: false,
+ };
+ startAnimation(t, state);
+
+ let videoTrack = undefined;
+ return getDisplayMedia().then(stream => {
+ t.add_cleanup(() => {
+ stream.getTracks().forEach(track => track.stop());
+ });
+ assert_true(!!stream, "should have resolved to a stream.");
+ assert_true(stream.active, "stream should be active.");
+ assert_equals(stream.getVideoTracks().length, 1);
+
+ [videoTrack] = stream.getVideoTracks();
+ assert_true(videoTrack instanceof MediaStreamTrack,
+ "track should be either MediaStreamTrack or a subclass thereof.");
+ assert_equals(videoTrack.readyState, "live", "track should be live.");
+
+ // Consume the stream in a video element.
+ const video = document.querySelector('video');
+ video.srcObject = stream;
+
+ // Remove the video source, so that the stream object can be released.
+ t.add_cleanup(() => {video.srcObject = null});
+
+ // Keep track of the number of frames used.
+ const readPromise = readFromTrack(state, videoTrack);
+ t.add_cleanup(() => readPromise);
+
+ return assertFrameRead(t, state, "Track should produce frames.");
+ }).then(() => {
+ assert_true(!!RestrictionTarget, "RestrictionTarget exposed.");
+ assert_true(!!RestrictionTarget.fromElement,
+ "RestrictionTarget.fromElement exposed.");
+
+ return RestrictionTarget.fromElement(div);
+ }).then(restrictionTarget => {
+ assert_true(!!videoTrack.restrictTo, "restrictTo exposed.");
+ assert_true(typeof videoTrack.restrictTo === 'function',
+ "restrictTo is a function.");
+
+ return videoTrack.restrictTo(restrictionTarget);
+ }).then(() => {
+ // By default, elements are not eligible for restriction due to not being
+ // placed in their own stacking context.
+ return assertStopsProducingFrames(t, state,
+ "No new frames after restriction.");
+ });
+
+ // TODO(crbug.com/333770107): once the issue with the
+ // --disable-threaded-compositing flag is resolved on Chrome's check in bots
+ // the rest of this test should be enabled.
+ // ).then(() => {
+ // // Should be unpaused now that the element is eligible.
+ // makeDivEligible();
+
+ // // Make sure the element state is restored to default between tests.
+ // t.add_cleanup(() => { cleanupDiv(); });
+
+ // // Restart the reader now that the stream is producing frames again.
+ // return assertFrameRead(t, state,
+ // "Received at least one frame after becoming eligible.");
+ // }).then(() => {
+
+ // // Should pause if it becomes ineligible again.
+ // makeDivIneligible(state);
+ // return assertStopsProducingFrames(t, state,
+ // "No new frames after becoming ineligible again.");
+ // });
+ }
+
+ // Test parameterizations.
+ [
+ EligibilityRequirement.StackingContext,
+ EligibilityRequirement.OnlyOneBoxFragment,
+ EligibilityRequirement.FlattenedIn3D,
+ ].forEach(param =>
+ promise_test(t => runTest(t, param),
+ `Tests that restricting MediaStreamTrack objects works as expected (${param}).`
+ ));
+
+ </script>
+</body>
+
+</html>
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/event-constructor.html b/testing/web-platform/tests/navigation-api/navigate-event/event-constructor.html
index 863681ced7..89ac934020 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/event-constructor.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/event-constructor.html
@@ -78,7 +78,8 @@ async_test(t => {
assert_equals(event.downloadRequest, downloadRequest);
assert_equals(event.info, info);
assert_equals(event.hasUAVisualTransition, hasUAVisualTransition);
- assert_equals(event.sourceElement, sourceElement);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(event.sourceElement, sourceElement);
});
history.pushState(2, null, "#2");
}, "all properties are reflected back");
@@ -98,7 +99,8 @@ async_test(t => {
assert_equals(event.formData, null);
assert_equals(event.downloadRequest, null);
assert_equals(event.info, undefined);
- assert_equals(event.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(event.sourceElement, null);
});
history.pushState(3, null, "#3");
}, "defaults are as expected");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-cross-origin.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-cross-origin.html
index 62e5adb20a..a69b78196f 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-cross-origin.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-cross-origin.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
});
a.click();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download-userInitiated.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download-userInitiated.html
index 6918142529..17109a2ae8 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download-userInitiated.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download-userInitiated.html
@@ -21,7 +21,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download.html
index d04245ec25..fbeeb69b95 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-download.html
@@ -25,7 +25,8 @@ for (const [tag, download_attr] of tests) {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, a);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, a);
e.preventDefault();
});
a.click();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-fragment.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-fragment.html
index 6443ccecd1..69400c3d2f 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-fragment.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-fragment.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-same-origin-cross-document.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-same-origin-cross-document.html
index 5a6dce7ec8..084993540a 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-same-origin-cross-document.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-same-origin-cross-document.html
@@ -18,7 +18,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
});
a.click();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-userInitiated.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-userInitiated.html
index bb76e7a3fb..686d7ad6ee 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-userInitiated.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-userInitiated.html
@@ -20,7 +20,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-with-target.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-with-target.html
index e4b897d82f..de74239b3b 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-with-target.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-anchor-with-target.html
@@ -20,10 +20,11 @@ async_test(t => {
assert_equals(new URL(e.destination.url).pathname,
"/navigation-api/navigate-event/foo.html");
assert_false(e.destination.sameDocument);
- assert_equals(e.destination.key, "");
- assert_equals(e.destination.id, "");
+ assert_equals(e.destination.key, "");
+ assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
});
a.click();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-back-forward.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-back-forward.html
index 869fc16481..b206981821 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-back-forward.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-back-forward.html
@@ -19,7 +19,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
navigation.back();
}), 0);
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-navigate.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-navigate.html
index d19a168514..1e622f9911 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-navigate.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-navigate.html
@@ -16,7 +16,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
navigation.navigate("#foo", { state: navState });
}, 0);
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-reload.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-reload.html
index ac6528ce7e..be33b8120d 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-reload.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-destination-getState-reload.html
@@ -16,7 +16,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.intercept();
});
navigation.updateCurrentEntry({ state: navState });
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-get.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-get.html
index 7a71a1c305..59661a1caf 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-get.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-get.html
@@ -21,7 +21,8 @@ async_test(t => {
// Because it's a GET, not a POST
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, form);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, form);
});
window.onload = t.step_func(() => form.submit());
}, "<form> submission with GET method fires navigate event but with formData null");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-reload.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-reload.html
index 2171690537..cdd3ade4ff 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-reload.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-reload.html
@@ -12,7 +12,8 @@ async_test(t => {
iframe.contentWindow.navigation.onnavigate = t.step_func(e => {
assert_equals(e.navigationType, "push");
assert_not_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
iframe.onload = t.step_func(() => {
iframe.contentWindow.navigation.onnavigate = t.step_func_done(e => {
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-traverse.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-traverse.html
index b9665c8056..72b8dc36ac 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-traverse.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-traverse.html
@@ -12,7 +12,8 @@ async_test(t => {
iframe.contentWindow.navigation.onnavigate = t.step_func(e => {
assert_equals(e.navigationType, "push");
assert_not_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
iframe.onload = t.step_func(() => {
// Avoid the replace behavior that occurs if you navigate during the load handler
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-userInitiated.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-userInitiated.html
index 246e028a0d..079f546771 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-userInitiated.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-userInitiated.html
@@ -24,7 +24,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_not_equals(e.formData, null);
- assert_equals(e.sourceElement, submit);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, submit);
});
window.onload = t.step_func(() => test_driver.click(submit));
}, "<form> submission fires navigate event");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-with-target.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-with-target.html
index 4b1a8ce9d3..07418366a7 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-with-target.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form-with-target.html
@@ -22,7 +22,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_not_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
form.submit();
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form.html
index 653ef3b8eb..8cea889bec 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-form.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-form.html
@@ -19,7 +19,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_not_equals(e.formData, null);
- assert_equals(e.sourceElement, form);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, form);
});
window.onload = t.step_func(() => form.submit());
}, "<form> submission fires navigate event");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-fragment.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-fragment.html
index 9da4ddcd50..4529fe25ac 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-fragment.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-fragment.html
@@ -24,7 +24,8 @@ async_test(t => {
assert_equals(e.destination.id, target_id);
assert_equals(e.destination.index, start_index);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
history.back();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-pushState.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-pushState.html
index fdee41a312..06c3b89bbc 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-pushState.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-after-pushState.html
@@ -24,7 +24,8 @@ async_test(t => {
assert_equals(e.destination.id, target_id);
assert_equals(e.destination.index, start_index);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
history.back();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-cross-document.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-cross-document.html
index 29c626a522..a34b20a5e5 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-cross-document.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-cross-document.html
@@ -23,7 +23,8 @@ async_test(t => {
assert_equals(e.destination.index, 0);
assert_equals(e.formData, null);
assert_equals(e.info, undefined);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
assert_true(i.contentWindow.navigation.canGoBack);
i.contentWindow.history.back();
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-go-0.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-go-0.html
index 5508928e19..cd716bfafb 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-go-0.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-go-0.html
@@ -18,7 +18,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-pushState.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-pushState.html
index 5079b21078..f89288b6ed 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-pushState.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-pushState.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
t.step_timeout(t.step_func_done(() => {
assert_equals(location.hash, "");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-replaceState.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-replaceState.html
index 444116a632..d18feb2bc1 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-replaceState.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-replaceState.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
t.step_timeout(t.step_func_done(() => {
assert_equals(location.hash, "");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-iframe-location.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-iframe-location.html
index 1bd7918823..c00a6e010d 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-iframe-location.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-iframe-location.html
@@ -21,7 +21,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-location.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-location.html
index a0ed4dc0aa..b1ce204a62 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-location.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-location.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
location.href = "#1";
}, "location API fires navigate event");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-meta-refresh.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-meta-refresh.html
index d4d5b1c8e1..f64484c305 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-meta-refresh.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-meta-refresh.html
@@ -20,7 +20,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
});
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-cross-document.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-cross-document.html
index 084051539b..de87fbbb80 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-cross-document.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-cross-document.html
@@ -25,7 +25,8 @@ async_test(t => {
assert_equals(e.destination.index, 0);
assert_equals(e.formData, null);
assert_equals(e.info, "hi");
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
i.contentWindow.onbeforeunload = () => beforeunload_called = true;
assert_true(i.contentWindow.navigation.canGoBack);
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document-in-iframe.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document-in-iframe.html
index 42c694e290..3d810d2f1d 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document-in-iframe.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document-in-iframe.html
@@ -27,7 +27,8 @@ promise_test(async t => {
assert_equals(e.destination.index, 0);
assert_equals(e.formData, null);
assert_equals(e.info, "hi");
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
}
await i.contentWindow.navigation.back({ info: "hi" }).finished;
}, "navigate event for navigation.back() - same-document in an iframe");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document.html
index b08bbfcbf1..0f2faff7d7 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-back-same-document.html
@@ -25,7 +25,8 @@ async_test(t => {
assert_equals(e.formData, null);
assert_equals(e.info, "hi");
assert_not_equals(e.hasUAVisualTransition, undefined);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
assert_true(navigation.canGoBack);
navigation.back({ info: "hi" });
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-navigate.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-navigate.html
index c56af1b40d..5dd1892cc0 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-navigate.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-navigation-navigate.html
@@ -16,7 +16,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
});
navigation.navigate("#foo");
}, "navigate event for navigation.navigate()");
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-svg-anchor-fragment.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-svg-anchor-fragment.html
index c6d210cccb..647496fd5c 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-svg-anchor-fragment.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-svg-anchor-fragment.html
@@ -17,7 +17,8 @@ async_test(t => {
assert_equals(e.destination.key, "");
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
- assert_equals(e.sourceElement, document.getElementById("a"));
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, document.getElementById("a"));
e.preventDefault();
t.step_timeout(t.step_func_done(() => assert_equals(location.hash, "")), 0);
});
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-to-srcdoc.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-to-srcdoc.html
index ea5c3f9216..bb598d8b90 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-to-srcdoc.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-to-srcdoc.html
@@ -21,7 +21,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
// Make sure it doesn't navigate anyway.
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open-self.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open-self.html
index 4e569b6d54..1ef65ed82b 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open-self.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open-self.html
@@ -16,7 +16,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
});
window.onload = t.step_func(() => window.open("#1", "_self"));
diff --git a/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open.html b/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open.html
index 42828308d7..13cdefb5d3 100644
--- a/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open.html
+++ b/testing/web-platform/tests/navigation-api/navigate-event/navigate-window-open.html
@@ -21,7 +21,8 @@ async_test(t => {
assert_equals(e.destination.id, "");
assert_equals(e.destination.index, -1);
assert_equals(e.formData, null);
- assert_equals(e.sourceElement, null);
+ // NavigateEvent sourceElement is still in development, so test whether it is available.
+ if ("sourceElement" in e) assert_equals(e.sourceElement, null);
e.preventDefault();
});
diff --git a/testing/web-platform/tests/notifications/tag-different-manual.https.html b/testing/web-platform/tests/notifications/tag-different-manual.https.html
deleted file mode 100644
index e463e97670..0000000000
--- a/testing/web-platform/tests/notifications/tag-different-manual.https.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Notification.tag (two tags with different values)</title>
-<link rel="author" title="Intel" href="http://www.intel.com/">
-<link rel="author" title="Xin Liu" href="mailto:xinx.liu@intel.com">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="common.js"></script>
-<div id=passfail></div>
-<script>
-setup({ explicit_timeout: true })
-if (hasNotificationPermission()) {
- async_test(function (t) {
- t.step(function () {
- var notification1 = null,
- notification2 = null,
- notifications = [],
- text1 = "This is the body: Room 101",
- text2 = "This is the body: Room 202"
- createPassFail("If two notifications appear: First one with the"
- + " text \"" + text1 + "\", followed by one with the text \""
- + text2 + "\"",
- t, closeNotifications, notifications)
- notification1 = new Notification("New Email Received", {
- body: text1,
- tag: "Tom"
- })
- notification2 = new Notification("New Email Received", {
- body: text2,
- tag: "Rose"
- })
- notifications.push(notification1)
- notifications.push(notification2)
- })
- })
-}
-</script>
diff --git a/testing/web-platform/tests/notifications/tag-same-manual.https.html b/testing/web-platform/tests/notifications/tag-same-manual.https.html
deleted file mode 100644
index 4454944c53..0000000000
--- a/testing/web-platform/tests/notifications/tag-same-manual.https.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Notification.tag (two tags with same value)</title>
-<link rel="author" title="Intel" href="http://www.intel.com/">
-<link rel="author" title="Xin Liu" href="mailto:xinx.liu@intel.com">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="common.js"></script>
-<div id=passfail></div>
-<script>
-setup({ explicit_timeout: true })
-if (hasNotificationPermission()) {
- async_test(function (t) {
- t.step(function () {
- var notification1 = null,
- notification2 = null,
- notifications = [],
- text1 = "This is the body: Room 101",
- text2 = "This is the body: Room 202"
- createPassFail("If a notification with the text \""
- + text2 + "\", replaces the notification with the text \""
- + text1 + "\" in the same position",
- t, closeNotifications, notifications)
- notification1 = new Notification("New Email Received", {
- body: text1,
- tag: "Tom"
- })
- notification2 = new Notification("New Email Received", {
- body: text2,
- tag: "Tom"
- })
- notifications.push(notification1)
- notifications.push(notification2)
- })
- })
-}
-</script>
diff --git a/testing/web-platform/tests/notifications/tag.https.html b/testing/web-platform/tests/notifications/tag.https.html
new file mode 100644
index 0000000000..99c61a7151
--- /dev/null
+++ b/testing/web-platform/tests/notifications/tag.https.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Notification.tag (two tags with same or different value)</title>
+<link rel="author" title="Intel" href="http://www.intel.com/">
+<link rel="author" title="Xin Liu" href="mailto:xinx.liu@intel.com">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/helpers.js"></script>
+<script>
+function promiseEvent(target, eventName, syncListener) {
+ return new Promise(resolve => {
+ target.addEventListener(eventName, ev => {
+ syncListener?.();
+ resolve(ev);
+ }, { once: true });
+ });
+}
+
+promise_setup(async () => {
+ await trySettingPermission("granted");
+});
+
+promise_test(async t => {
+ const tom1 = new Notification("New Email to tom", {
+ tag: "Tom"
+ });
+ t.add_cleanup(() => tom1.close());
+
+ let closed = false;
+ const promiseCloseEvent = promiseEvent(tom1, "close", () => closed = true);
+ await promiseEvent(tom1, "show");
+
+ const rose = new Notification("New Email to Rose", {
+ tag: "Rose"
+ });
+ t.add_cleanup(() => rose.close());
+ await promiseEvent(rose, "show");
+ assert_false(closed, "Different tag should not close the first notification");
+
+ const tom2 = new Notification("New Email to tom", {
+ tag: "Tom"
+ });
+ t.add_cleanup(() => tom2.close());
+
+ await promiseCloseEvent; // This should not timeout
+}, "Opening two notifications with the same tag should close the first one");
+</script>
diff --git a/testing/web-platform/tests/orientation-event/WEB_FEATURES.yml b/testing/web-platform/tests/orientation-event/WEB_FEATURES.yml
new file mode 100644
index 0000000000..414dbe7478
--- /dev/null
+++ b/testing/web-platform/tests/orientation-event/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: device-orientation-events
+ files: "**"
diff --git a/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html b/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html
index 779e9d666c..3a7e11b03c 100644
--- a/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html
+++ b/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy-attribute.https.sub.html
@@ -1,26 +1,47 @@
<!DOCTYPE html>
<body>
- <script src=/resources/testharness.js></script>
- <script src=/resources/testharnessreport.js></script>
- <script src=/permissions-policy/resources/permissions-policy.js></script>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/permissions-policy/resources/permissions-policy.js"></script>
<script>
- 'use strict';
- var same_origin_src = '/permissions-policy/resources/permissions-policy-payment.html';
- var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' +
- same_origin_src;
- var feature_name = 'permissions policy "payment"';
- var header = 'allow="payment" attribute';
+ "use strict";
+ const same_origin_src =
+ "/permissions-policy/resources/permissions-policy-payment.html";
+ const cross_origin_src =
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
+ const feature_name = 'permissions policy "payment"';
+ const header = 'allow="payment" attribute';
- async_test(t => {
- test_feature_availability(
- 'PaymentRequest()', t, same_origin_src,
- expect_feature_available_default, 'payment');
- }, feature_name + ' can be enabled in same-origin iframe using ' + header);
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true
+ });
+ }, `${feature_name} is enabled by default`);
- async_test(t => {
- test_feature_availability(
- 'PaymentRequest()', t, cross_origin_src,
- expect_feature_available_default, 'payment');
- }, feature_name + ' can be enabled in cross-origin iframe using ' + header);
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ feature_name: "payment",
+ is_promise_test: true,
+ });
+ }, `${feature_name} can be enabled in same-origin iframe using ${header}`);
+
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ feature_name: "payment",
+ is_promise_test: true,
+ });
+ }, `${feature_name} can be enabled in cross-origin iframe using ${header}`);
</script>
</body>
diff --git a/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html b/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html
index 456626c350..27583d3c9c 100644
--- a/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html
@@ -1,40 +1,64 @@
<!DOCTYPE html>
<body>
- <script src=/resources/testharness.js></script>
- <script src=/resources/testharnessreport.js></script>
- <script src=/permissions-policy/resources/permissions-policy.js></script>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/permissions-policy/resources/permissions-policy.js"></script>
<script>
- 'use strict';
- var same_origin_src = '/permissions-policy/resources/permissions-policy-payment.html';
- var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' +
- same_origin_src;
- var header = 'permissions policy header "payment=*"';
+ "use strict";
+ const same_origin_src =
+ "/permissions-policy/resources/permissions-policy-payment.html";
+ const cross_origin_src =
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
+ const header = 'permissions policy header "payment=*"';
- test(() => {
- var supportedMethods = [ { supportedMethods: 'https://{{domains[nonexistent]}}/payment-request' } ];
- var details = {
- total: { label: 'Test', amount: { currency: 'USD', value: '5.00' } }
- };
- try {
- new PaymentRequest(supportedMethods, details);
- } catch (e) {
- assert_unreached();
- }
- }, header + ' allows the top-level document.');
+ test(() => {
+ const supportedMethods = [
+ {
+ supportedMethods: "https://{{domains[nonexistent]}}/payment-request",
+ },
+ ];
+ const details = {
+ total: {
+ label: "Test",
+ amount: { currency: "USD", value: "5.00" },
+ },
+ };
+ try {
+ new PaymentRequest(supportedMethods, details);
+ } catch (e) {
+ assert_unreached();
+ }
+ }, `${header} allows Payment Request API the top-level document.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, same_origin_src,
- expect_feature_available_default);
- }, header + ' allows same-origin iframes.');
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ });
+ }, `${header} allows Payment Request API same-origin iframes.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, cross_origin_src,
- expect_feature_unavailable_default);
- }, header + ' disallows cross-origin iframes.');
+ promise_test(async (test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ is_promise_test: true,
+ });
+ }, `${header} disallows Payment Request API cross-origin iframes.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, cross_origin_src,
- expect_feature_available_default, 'payment');
- }, header + ' allow="payment" allows cross-origin iframes.');
+ promise_test(async (test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ feature_name: "payment",
+ is_promise_test: true,
+ });
+ }, `${header} allow="payment" allows Payment Request in cross-origin iframes.`);
</script>
</body>
diff --git a/testing/web-platform/tests/permissions-policy/payment-default-permissions-policy.https.sub.html b/testing/web-platform/tests/permissions-policy/payment-default-permissions-policy.https.sub.html
index da5fe80f66..92a0f7e14f 100644
--- a/testing/web-platform/tests/permissions-policy/payment-default-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/permissions-policy/payment-default-permissions-policy.https.sub.html
@@ -1,35 +1,48 @@
<!DOCTYPE html>
<body>
- <script src=/resources/testharness.js></script>
- <script src=/resources/testharnessreport.js></script>
- <script src=/permissions-policy/resources/permissions-policy.js></script>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/permissions-policy/resources/permissions-policy.js"></script>
<script>
- 'use strict';
- var same_origin_src = '/permissions-policy/resources/permissions-policy-payment.html';
- var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' +
- same_origin_src;
- var header = 'Default "payment" permissions policy';
+ "use strict";
+ const same_origin_src =
+ "/permissions-policy/resources/permissions-policy-payment.html";
+ const cross_origin_src =
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
- test(() => {
- var supportedInstruments = [ { supportedMethods: 'visa' } ];
- var details = {
- total: { label: 'Test', amount: { currency: 'USD', value: '5.00' } }
- };
- try {
- new PaymentRequest(supportedInstruments, details);
- } catch (e) {
- assert_unreached();
- }
- }, header + ' allows the top-level document.');
+ test(() => {
+ const supportedInstruments = [{ supportedMethods: "visa" }];
+ const details = {
+ total: {
+ label: "Test",
+ amount: { currency: "USD", value: "5.00" },
+ },
+ };
+ try {
+ new PaymentRequest(supportedInstruments, details);
+ } catch (e) {
+ assert_unreached();
+ }
+ }, `Payment Request API is enabled by default the top-level document.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, same_origin_src,
- expect_feature_available_default);
- }, header + ' allows same-origin iframes.');
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_available_default,
+ is_promise_test: true,
+ });
+ }, `Payment Request API is enabled by default in same-origin iframes.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, cross_origin_src,
- expect_feature_unavailable_default);
- }, header + ' disallows cross-origin iframes.');
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ is_promise_test: true,
+ });
+ }, `Payment Request API is disabled by default in cross-origin iframes.`);
</script>
</body>
diff --git a/testing/web-platform/tests/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html b/testing/web-platform/tests/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html
index cc358a1c0f..b53eff996a 100644
--- a/testing/web-platform/tests/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html
+++ b/testing/web-platform/tests/permissions-policy/payment-disabled-by-permissions-policy.https.sub.html
@@ -1,33 +1,47 @@
<!DOCTYPE html>
<body>
- <script src=/resources/testharness.js></script>
- <script src=/resources/testharnessreport.js></script>
- <script src=/permissions-policy/resources/permissions-policy.js></script>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/permissions-policy/resources/permissions-policy.js"></script>
<script>
- 'use strict';
- var same_origin_src = '/permissions-policy/resources/permissions-policy-payment.html';
- var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' +
- same_origin_src;
- var header = 'permissions policy header "payment=()"';
+ "use strict";
+ const same_origin_src =
+ "/permissions-policy/resources/permissions-policy-payment.html";
+ const cross_origin_src =
+ "https://{{hosts[alt][]}}:{{ports[https][0]}}" + same_origin_src;
+ const header = 'permissions policy header "payment=()"';
- test(() => {
- var supportedInstruments = [ { supportedMethods: 'visa' } ];
- var details = {
- total: { label: 'Test', amount: { currency: 'USD', value: '5.00' } }
- };
- assert_throws_dom('SecurityError', () => {
- new PaymentRequest(supportedInstruments, details);
- });
- }, header + ' disallows the top-level document.');
+ test(() => {
+ const supportedInstruments = [{ supportedMethods: "visa" }];
+ const details = {
+ total: {
+ label: "Test",
+ amount: { currency: "USD", value: "5.00" },
+ },
+ };
+ assert_throws_dom("SecurityError", () => {
+ new PaymentRequest(supportedInstruments, details);
+ });
+ }, `${header} disallows Payment Request API in top-level document.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, same_origin_src,
- expect_feature_unavailable_default);
- }, header + ' disallows same-origin iframes.');
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: same_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ is_promise_test: true,
+ });
+ }, `${header} disallows Payment Request API in same-origin iframes.`);
- async_test(t => {
- test_feature_availability('PaymentRequest()', t, cross_origin_src,
- expect_feature_unavailable_default,);
- }, header + ' disallows cross-origin iframes.');
+ promise_test((test) => {
+ return test_feature_availability({
+ feature_description: "PaymentRequest()",
+ test,
+ src: cross_origin_src,
+ expect_feature_available: expect_feature_unavailable_default,
+ is_promise_test: true,
+ });
+ }, `${header} disallows Payment Request API in cross-origin iframes.`);
</script>
</body>
diff --git a/testing/web-platform/tests/permissions-policy/resources/permissions-policy.js b/testing/web-platform/tests/permissions-policy/resources/permissions-policy.js
index 32fb4cfd4a..d30d1191d1 100644
--- a/testing/web-platform/tests/permissions-policy/resources/permissions-policy.js
+++ b/testing/web-platform/tests/permissions-policy/resources/permissions-policy.js
@@ -6,8 +6,9 @@ function assert_permissions_policy_supported() {
// Tests whether a feature that is enabled/disabled by permissions policy works
// as expected.
// Arguments:
-// feature_description: a short string describing what feature is being
-// tested. Examples: "usb.GetDevices()", "PaymentRequest()".
+// feature_descriptionOrObject: either and object, containing the following
+// properties, or a string describing what feature is being tested.
+// Examples: "usb.GetDevices()", "PaymentRequest()".
// test: test created by testharness. Examples: async_test, promise_test.
// src: URL where a feature's availability is checked. Examples:
// "/permissions-policy/resources/permissions-policy-payment.html",
@@ -24,13 +25,36 @@ function assert_permissions_policy_supported() {
// feature (https://w3c.github.io/webappsec-permissions-policy/#features).
// See examples at:
// https://github.com/w3c/webappsec-permissions-policy/blob/main/features.md
-// allow_attribute: Optional argument, only used for testing fullscreen
+// allowfullscreen: Optional argument, only used for testing fullscreen
// by passing "allowfullscreen".
// is_promise_test: Optional argument, true if this call should return a
// promise. Used by test_feature_availability_with_post_message_result()
function test_feature_availability(
- feature_description, test, src, expect_feature_available, feature_name,
- allow_attribute, is_promise_test = false) {
+ feature_descriptionOrObject, test, src, expect_feature_available, feature_name,
+ allowfullscreen, is_promise_test = false) {
+
+ if (feature_descriptionOrObject && feature_descriptionOrObject instanceof Object) {
+ const {
+ feature_description,
+ test,
+ src,
+ expect_feature_available,
+ feature_name,
+ allowfullscreen,
+ is_promise_test,
+ } = feature_descriptionOrObject;
+ return test_feature_availability(
+ feature_description,
+ test,
+ src,
+ expect_feature_available,
+ feature_name,
+ allowfullscreen,
+ is_promise_test
+ );
+ }
+
+ const feature_description = feature_descriptionOrObject;
let frame = document.createElement('iframe');
frame.src = src;
@@ -38,8 +62,8 @@ function test_feature_availability(
frame.allow = frame.allow.concat(";" + feature_name);
}
- if (typeof allow_attribute !== 'undefined') {
- frame.setAttribute(allow_attribute, true);
+ if (typeof allowfullscreen !== 'undefined') {
+ frame.setAttribute(allowfullscreen, true);
}
function expectFeatureAvailable(evt) {
diff --git a/testing/web-platform/tests/pointerevents/deviceproperties/get-device-properties-uniqueid-from-pointer-event.tentative.html b/testing/web-platform/tests/pointerevents/deviceproperties/get-device-properties-uniqueid-from-pointer-event.tentative.html
new file mode 100644
index 0000000000..dc6b9379c1
--- /dev/null
+++ b/testing/web-platform/tests/pointerevents/deviceproperties/get-device-properties-uniqueid-from-pointer-event.tentative.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<!--
+ Tentative; contingent on merge of:
+ https://github.com/w3c/pointerevents/pull/495
+-->
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<style>
+ div {
+ user-select: none; // Prevents text selection on drag.
+ }
+</style>
+<div id="logger" draggable="false"></div>
+<div id="console"></div>
+<!-- This test verifies that pointerEvent.deviceProperties.uniqueId is 0
+ by default for a pointer with an invalid hardware id - in this case
+ a testdriver generated event, which does not support hardware id. -->
+<script>
+ function CheckDeviceId(event) {
+ eventFired++;
+ assert_equals(event.deviceProperties.uniqueId, 0, "deviceId is 0");
+ }
+
+ window.addEventListener("pointerdown", CheckDeviceId, false);
+ window.addEventListener("pointermove", CheckDeviceId, false);
+
+ promise_test(async () => {
+ if (!window.internals)
+ return;
+ eventFired = 0;
+ let actions = new test_driver.Actions()
+ .addPointer("TestPointer", "pen")
+ .pointerDown()
+ .pointerMove(100, 100)
+ .pointerUp();
+
+ await actions.send();
+
+ assert_true(eventFired == 2);
+ }, 'PointerEvent.deviceProperties.uniqueId');
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/pointerevents/deviceproperties/pointer-event-has-device-properties-uniqueid-from-pointer-event-init.tentative.html b/testing/web-platform/tests/pointerevents/deviceproperties/pointer-event-has-device-properties-uniqueid-from-pointer-event-init.tentative.html
new file mode 100644
index 0000000000..a37df4b421
--- /dev/null
+++ b/testing/web-platform/tests/pointerevents/deviceproperties/pointer-event-has-device-properties-uniqueid-from-pointer-event-init.tentative.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html>
+<!--
+ Tentative; contingent on merge of:
+ https://github.com/w3c/pointerevents/pull/495
+-->
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id="console"></div>
+
+<!-- This test verifies that pointerEvent.deviceProperties.uniqueId
+ can be set via PointerEventInit. -->
+<script>
+ const UNIQUE_ID = 1001;
+ const INVALID_UNIQUE_ID = 0;
+
+ function CheckDeviceId(event, uniqueId) {
+ assert_equals(event.deviceProperties.uniqueId, uniqueId, "uniqueId is populated");
+ }
+
+ promise_test(async () => {
+ if (!window.internals)
+ return;
+ var deviceProps = new DeviceProperties({
+ uniqueId: 1001
+ });
+ var downEvent = new PointerEvent("pointerdown",
+ {pointerId: 1,
+ bubbles: true,
+ cancelable: true,
+ pointerType: "pen",
+ width: 100,
+ height: 100,
+ isPrimary: true,
+ deviceProperties: deviceProps
+ });
+ CheckDeviceId(downEvent, UNIQUE_ID);
+ var moveEvent = new PointerEvent("pointermove",
+ {pointerId: 1,
+ bubbles: true,
+ cancelable: true,
+ pointerType: "pen",
+ width: 100,
+ height: 100,
+ isPrimary: true,
+ deviceProperties: deviceProps
+ });
+ CheckDeviceId(moveEvent, UNIQUE_ID);
+ var upEvent = new PointerEvent("pointerup",
+ {pointerId: 1,
+ bubbles: true,
+ cancelable: true,
+ pointerType: "pen",
+ width: 100,
+ height: 100,
+ isPrimary: true,
+ deviceProperties: deviceProps
+ });
+ CheckDeviceId(upEvent, UNIQUE_ID);
+ }, 'PointerEvent.deviceProperties via DevicePropertiesInit');
+
+ promise_test(async () => {
+ if (!window.internals)
+ return;
+ var emptyDeviceProps = new DeviceProperties({});
+ var downEventEmptyProps = new PointerEvent("pointerdown",
+ {pointerId: 1,
+ bubbles: true,
+ cancelable: true,
+ pointerType: "pen",
+ width: 100,
+ height: 100,
+ isPrimary: true,
+ deviceProperties: emptyDeviceProps
+ });
+ CheckDeviceId(downEventEmptyProps, INVALID_UNIQUE_ID);
+ }, 'PointerEvent.deviceProperties via empty DevicePropertiesInit');
+
+ promise_test(async () => {
+ if (!window.internals)
+ return;
+ var downEventEmptyProps = new PointerEvent("pointerdown",
+ {pointerId: 1,
+ bubbles: true,
+ cancelable: true,
+ pointerType: "pen",
+ width: 100,
+ height: 100,
+ isPrimary: true,
+ });
+ CheckDeviceId(downEventEmptyProps, INVALID_UNIQUE_ID);
+ }, 'No deviceProperties in PointerEventInit');
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/pointerevents/deviceproperties/unique-id-is-unique-manual.tentative.html b/testing/web-platform/tests/pointerevents/deviceproperties/unique-id-is-unique-manual.tentative.html
new file mode 100644
index 0000000000..55db05353f
--- /dev/null
+++ b/testing/web-platform/tests/pointerevents/deviceproperties/unique-id-is-unique-manual.tentative.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html>
+<!--
+ Tentative; contingent on merge of:
+ https://github.com/w3c/pointerevents/pull/495
+
+ This manual test validates the behavior of PointerEvent.deviceProperties.uniqueId.
+ Specifically, this test ensures that pointing devices get their own unique id, and
+ that the unique id is persistent over the session.
+
+ In order to run this test, it is necessary to have multiple pointing devices; such as a
+ pen and a mouse. Please follow the instructions exactly as written in order to ensure
+ the correct results are obtained.
+-->
+<title>DeviceProperties.uniqueId is unique for pointer events from different devices</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #instructions {
+ display: inline-block;
+ border-right: 1px solid black;
+ padding-right: 10px;
+ width: 600px;
+ }
+ #testcontainer {
+ display: inline-block;
+ width: 300px;
+ touch-action: none;
+ }
+
+ #currentuniqueid {
+ display: inline-block;
+ }
+
+ .point1 {
+ height: 50px;
+ width: 50px;
+ background-color: #00eeee;
+ display: inline-block;
+ }
+ .point2 {
+ height: 50px;
+ width: 50px;
+ background-color: #aa33aa;
+ display: inline-block;
+ float: right;
+ }
+
+ .testarea {
+ border: 1px solid #000000;
+ margin-bottom: 50px;
+ width: 100%;
+ }
+
+ p {
+ padding-bottom: 10px;
+ }
+
+ html {
+ font-family: Arial, Helvetica, sans-serif;
+ }
+</style>
+<html>
+<div id="instructions">
+<h2>Instructions</h2>
+<p>1. With one pointing device (pointing device #1), drag the pointer from A to B</p>
+<p>2. With another pointing device (pointing device #2), drag the pointer from C to D</p>
+<p>3. Repeat step 1.</p>
+<p>4. Repeat step 2.</p>
+<p>5. Click finish and verify the test passes. There should be 4 passing test cases. </p>
+</div>
+<div id="testcontainer">
+ <div>
+ Current pointer's unique id: <p id="currentuniqueid"></p>
+ </div>
+ <div class="testarea" id="device1">
+ <div class="point1">A</div>
+ <div class="point2">B</div>
+ </div>
+ <div class="testarea" id="device2">
+ <div class="point1">C</div>
+ <div class="point2">D</div>
+ </div>
+
+ <p>Click on the button below after completing. If a "PASS" result appears the test
+ passes, otherwise it fails</p>
+ <button onclick="Finish()">Finish Test</button>
+</div>
+</html>
+
+<script>
+ let device1Ids = [];
+ let device2Ids = [];
+
+ setup({explicit_timeout: true, explicit_done: true});
+
+ function LogDeviceId(event, list) {
+ if (event.deviceProperties) {
+ const uniqueId = event.deviceProperties.uniqueId;
+ currentuniqueid.innerText = uniqueId ? uniqueId : "Unknown";
+ if (!uniqueId) {
+ return;
+ }
+ list.push(uniqueId);
+ }
+ }
+
+ function LogDeviceId1(event) {
+ LogDeviceId(event, device1Ids);
+ }
+
+ function LogDeviceId2(event) {
+ LogDeviceId(event, device2Ids);
+ }
+
+ function Finish() {
+ let device1UniqueIds = new Set(device1Ids);
+ let device2UniqueIds = new Set(device2Ids);
+
+ test(function () {
+ assert_greater_than(device1Ids.length, 1, "Events from Device 1 have uniqueIds.");
+ assert_equals(device1UniqueIds.size, 1, "Device 1 has a consistent uniqueId.");
+ }, "uniqueId is consistent for device 1");
+ test(function () {
+ assert_greater_than(device2Ids.length, 1, "Events from Device 2 have uniqueIds.");
+ assert_equals(device2UniqueIds.size, 1, "Device 2 has a consistent uniqueId.");
+ }, "uniqueId is consistent for device 2");
+ test(function () {
+ // Ensure the two sets are different.
+ assert_equals(device1UniqueIds.intersection(device2UniqueIds).size, 0, "Device 1 and 2 have different uniqueIds.");
+ }, "uniqueId is unique to device 1 and device 2");
+ done();
+ }
+
+ device1.addEventListener("pointerdown", LogDeviceId1, false);
+ device1.addEventListener("pointermove", LogDeviceId1, false);
+ device1.addEventListener("pointerup", LogDeviceId1, false);
+
+ device2.addEventListener("pointerdown", LogDeviceId2, false);
+ device2.addEventListener("pointermove", LogDeviceId2, false);
+ device2.addEventListener("pointerup", LogDeviceId2, false);
+
+</script>
diff --git a/testing/web-platform/tests/preload/WEB_FEATURES.yml b/testing/web-platform/tests/preload/WEB_FEATURES.yml
new file mode 100644
index 0000000000..384fd1a3e5
--- /dev/null
+++ b/testing/web-platform/tests/preload/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: modulepreload
+ files:
+ - "*modulepreload*"
diff --git a/testing/web-platform/tests/resource-timing/initiator-type/workers.html b/testing/web-platform/tests/resource-timing/initiator-type/workers.html
index 3a23ad71a3..a3da99356d 100644
--- a/testing/web-platform/tests/resource-timing/initiator-type/workers.html
+++ b/testing/web-platform/tests/resource-timing/initiator-type/workers.html
@@ -17,7 +17,7 @@
new Worker(moduleWorkerURL, {type: "module"});
new Worker(workerURL, {type: "classic"});
initiator_type_test(workerURL, "other", "classic worker");
- initiator_type_test(moduleWorkerURL, "other", "module worker");
+ initiator_type_test(moduleWorkerURL, "script", "module worker");
</script>
</body>
</html>
diff --git a/testing/web-platform/tests/resources/chromium/mock-pressure-service.js b/testing/web-platform/tests/resources/chromium/mock-pressure-service.js
index bd0e32c567..016c6d97e7 100644
--- a/testing/web-platform/tests/resources/chromium/mock-pressure-service.js
+++ b/testing/web-platform/tests/resources/chromium/mock-pressure-service.js
@@ -65,26 +65,20 @@ class MockPressureService {
if (this.pressureServiceReadingTimerId_ != null)
this.stopPlatformCollector();
- // The following code for calculating the timestamp was taken from
- // https://source.chromium.org/chromium/chromium/src/+/main:third_party/
- // blink/web_tests/http/tests/resources/
- // geolocation-mock.js;l=131;drc=37a9b6c03b9bda9fcd62fc0e5e8016c278abd31f
-
- // The new Date().getTime() returns the number of milliseconds since the
- // UNIX epoch (1970-01-01 00::00:00 UTC), while |internalValue| of the
- // device.mojom.PressureUpdate represents the value of microseconds since
- // the Windows FILETIME epoch (1601-01-01 00:00:00 UTC). So add the delta
- // when sets the |internalValue|. See more info in //base/time/time.h.
- const windowsEpoch = Date.UTC(1601, 0, 1, 0, 0, 0, 0);
- const unixEpoch = Date.UTC(1970, 0, 1, 0, 0, 0, 0);
- // |epochDeltaInMs| equals to base::Time::kTimeTToMicrosecondsOffset.
- const epochDeltaInMs = unixEpoch - windowsEpoch;
-
this.pressureServiceReadingTimerId_ = self.setInterval(() => {
if (this.pressureUpdate_ === null || this.observers_.length === 0)
return;
+
+ // Because we cannot retrieve directly the timeOrigin internal in
+ // TimeTicks from Chromium, we need to create a timestamp that
+ // would help to test basic functionality.
+ // by multiplying performance.timeOrigin by 10 we make sure that the
+ // origin is higher than the internal time origin in TimeTicks.
+ // performance.now() allows us to have an increase matching the TimeTicks
+ // that would be read from the platform collector.
this.pressureUpdate_.timestamp = {
- internalValue: BigInt((new Date().getTime() + epochDeltaInMs) * 1000)
+ internalValue:
+ Math.round((performance.timeOrigin * 10) + performance.now()) * 1000
};
for (let observer of this.observers_)
observer.onPressureUpdated(this.pressureUpdate_);
diff --git a/testing/web-platform/tests/resources/idlharness.js b/testing/web-platform/tests/resources/idlharness.js
index 8f741b09b2..4cf19234af 100644
--- a/testing/web-platform/tests/resources/idlharness.js
+++ b/testing/web-platform/tests/resources/idlharness.js
@@ -566,6 +566,7 @@ IdlArray.prototype.is_json_type = function(type)
case "Uint8ClampedArray":
case "BigInt64Array":
case "BigUint64Array":
+ case "Float16Array":
case "Float32Array":
case "Float64Array":
case "ArrayBuffer":
diff --git a/testing/web-platform/tests/resources/test/tests/unit/IdlArray/is_json_type.html b/testing/web-platform/tests/resources/test/tests/unit/IdlArray/is_json_type.html
index 18e83a8e89..caea20067f 100644
--- a/testing/web-platform/tests/resources/test/tests/unit/IdlArray/is_json_type.html
+++ b/testing/web-platform/tests/resources/test/tests/unit/IdlArray/is_json_type.html
@@ -39,6 +39,7 @@
assert_false(idl.is_json_type(typeFrom("Uint8ClampedArray")));
assert_false(idl.is_json_type(typeFrom("BigInt64Array")));
assert_false(idl.is_json_type(typeFrom("BigUint64Array")));
+ assert_false(idl.is_json_type(typeFrom("Float16Array")));
assert_false(idl.is_json_type(typeFrom("Float32Array")));
assert_false(idl.is_json_type(typeFrom("Float64Array")));
assert_false(idl.is_json_type(typeFrom("ArrayBuffer")));
diff --git a/testing/web-platform/tests/resources/test/tox.ini b/testing/web-platform/tests/resources/test/tox.ini
index 12013a1a70..49603ef64b 100644
--- a/testing/web-platform/tests/resources/test/tox.ini
+++ b/testing/web-platform/tests/resources/test/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py37,py38,py39,py310,py311
+envlist = py38,py39,py310,py311
skipsdist=True
[testenv]
diff --git a/testing/web-platform/tests/resources/testdriver.js b/testing/web-platform/tests/resources/testdriver.js
index 20140b2fc0..2d1a89690c 100644
--- a/testing/web-platform/tests/resources/testdriver.js
+++ b/testing/web-platform/tests/resources/testdriver.js
@@ -1023,6 +1023,49 @@
*/
get_virtual_sensor_information: function(sensor_type, context=null) {
return window.test_driver_internal.get_virtual_sensor_information(sensor_type, context);
+ },
+
+ /**
+ * Overrides device posture set by hardware.
+ *
+ * Matches the `Set device posture
+ * <https://w3c.github.io/device-posture/#set-device-posture>`_
+ * WebDriver command.
+ *
+ * @param {String} posture - A `DevicePostureType
+ * <https://w3c.github.io/device-posture/#dom-deviceposturetype>`_
+ * either "continuous" or "folded".
+ * @param {WindowProxy} [context=null] - Browsing context in which to
+ * run the call, or null for the
+ * current browsing context.
+ *
+ * @returns {Promise} Fulfilled when device posture is set.
+ * Rejected in case the WebDriver command errors out
+ * (including if a device posture of the given type
+ * does not exist).
+ */
+ set_device_posture: function(posture, context=null) {
+ return window.test_driver_internal.set_device_posture(posture, context);
+ },
+
+ /**
+ * Removes device posture override and returns device posture control
+ * back to hardware.
+ *
+ * Matches the `Clear device posture
+ * <https://w3c.github.io/device-posture/#clear-device-posture>`_
+ * WebDriver command.
+ *
+ * @param {WindowProxy} [context=null] - Browsing context in which to
+ * run the call, or null for the
+ * current browsing context.
+ *
+ * @returns {Promise} Fulfilled after the device posture override has
+ * been removed. Rejected in case the WebDriver
+ * command errors out.
+ */
+ clear_device_posture: function(context=null) {
+ return window.test_driver_internal.clear_device_posture(context);
}
};
@@ -1203,6 +1246,14 @@
async get_virtual_sensor_information(sensor_type, context=null) {
throw new Error("get_virtual_sensor_information() is not implemented by testdriver-vendor.js");
+ },
+
+ async set_device_posture(posture, context=null) {
+ throw new Error("set_device_posture() is not implemented by testdriver-vendor.js");
+ },
+
+ async clear_device_posture(context=null) {
+ throw new Error("clear_device_posture() is not implemented by testdriver-vendor.js");
}
};
})();
diff --git a/testing/web-platform/tests/resources/testharness.js b/testing/web-platform/tests/resources/testharness.js
index 1a6a4bb341..c5c375e172 100644
--- a/testing/web-platform/tests/resources/testharness.js
+++ b/testing/web-platform/tests/resources/testharness.js
@@ -4194,11 +4194,7 @@
status
],
],
- ["button",
- {"onclick": "let evt = new Event('__test_restart'); " +
- "let canceled = !window.dispatchEvent(evt);" +
- "if (!canceled) { location.reload() }"},
- "Rerun"]
+ ["button", {"id":"rerun"}, "Rerun"]
]];
if (harness_status.status === harness_status.ERROR) {
@@ -4230,6 +4226,13 @@
log.appendChild(render(summary_template, {num_tests:tests.length}, output_document));
+ output_document.getElementById("rerun").addEventListener("click",
+ function() {
+ let evt = new Event('__test_restart');
+ let canceled = !window.dispatchEvent(evt);
+ if (!canceled) { location.reload(); }
+ });
+
forEach(output_document.querySelectorAll("section#summary label"),
function(element)
{
@@ -4254,18 +4257,6 @@
});
});
- // This use of innerHTML plus manual escaping is not recommended in
- // general, but is necessary here for performance. Using textContent
- // on each individual <td> adds tens of seconds of execution time for
- // large test suites (tens of thousands of tests).
- function escape_html(s)
- {
- return s.replace(/\&/g, "&amp;")
- .replace(/</g, "&lt;")
- .replace(/"/g, "&quot;")
- .replace(/'/g, "&#39;");
- }
-
function has_assertions()
{
for (var i = 0; i < tests.length; i++) {
@@ -4296,81 +4287,63 @@
});
function get_asserts_output(test) {
+ const asserts_output = render(
+ ["details", {},
+ ["summary", {}, "Asserts run"],
+ ["table", {}, ""] ]);
+
var asserts = asserts_run_by_test.get(test);
if (!asserts) {
- return "No asserts ran";
+ asserts_output.querySelector("summary").insertAdjacentText("afterend", "No asserts ran");
+ return asserts_output;
}
- rv = "<table>";
- rv += asserts.map(assert => {
- var output_fn = "<strong>" + escape_html(assert.assert_name) + "</strong>(";
- var prefix_len = output_fn.length;
- var output_args = assert.args;
- var output_len = output_args.reduce((prev, current) => prev+current, prefix_len);
- if (output_len[output_len.length - 1] > 50) {
- output_args = output_args.map((x, i) =>
- (i > 0 ? " ".repeat(prefix_len) : "" )+ x + (i < output_args.length - 1 ? ",\n" : ""));
- } else {
- output_args = output_args.map((x, i) => x + (i < output_args.length - 1 ? ", " : ""));
- }
- output_fn += escape_html(output_args.join(""));
- output_fn += ')';
- var output_location;
+
+ const table = asserts_output.querySelector("table");
+ for (const assert of asserts) {
+ const status_class_name = status_class(Test.prototype.status_formats[assert.status]);
+ var output_fn = "(" + assert.args.join(", ") + ")";
if (assert.stack) {
- output_location = assert.stack.split("\n", 1)[0].replace(/@?\w+:\/\/[^ "\/]+(?::\d+)?/g, " ");
+ output_fn += "\n";
+ output_fn += assert.stack.split("\n", 1)[0].replace(/@?\w+:\/\/[^ "\/]+(?::\d+)?/g, " ");
}
- return "<tr class='overall-" +
- status_class(Test.prototype.status_formats[assert.status]) + "'>" +
- "<td class='" +
- status_class(Test.prototype.status_formats[assert.status]) + "'>" +
- Test.prototype.status_formats[assert.status] + "</td>" +
- "<td><pre>" +
- output_fn +
- (output_location ? "\n" + escape_html(output_location) : "") +
- "</pre></td></tr>";
+ table.appendChild(render(
+ ["tr", {"class":"overall-" + status_class_name},
+ ["td", {"class":status_class_name}, Test.prototype.status_formats[assert.status]],
+ ["td", {}, ["pre", {}, ["strong", {}, assert.assert_name], output_fn]] ]));
}
- ).join("\n");
- rv += "</table>";
- return rv;
+ return asserts_output;
}
- log.appendChild(document.createElementNS(xhtml_ns, "section"));
var assertions = has_assertions();
- var html = "<h2>Details</h2><table id='results' " + (assertions ? "class='assertions'" : "" ) + ">" +
- "<thead><tr><th>Result</th><th>Test Name</th>" +
- (assertions ? "<th>Assertion</th>" : "") +
- "<th>Message</th></tr></thead>" +
- "<tbody>";
- for (var i = 0; i < tests.length; i++) {
- var test = tests[i];
- html += '<tr class="overall-' +
- status_class(test.format_status()) +
- '">' +
- '<td class="' +
- status_class(test.format_status()) +
- '">' +
- test.format_status() +
- "</td><td>" +
- escape_html(test.name) +
- "</td><td>" +
- (assertions ? escape_html(get_assertion(test)) + "</td><td>" : "") +
- escape_html(test.message ? tests[i].message : " ") +
- (tests[i].stack ? "<pre>" +
- escape_html(tests[i].stack) +
- "</pre>": "");
+ const section = render(
+ ["section", {},
+ ["h2", {}, "Details"],
+ ["table", {"id":"results", "class":(assertions ? "assertions" : "")},
+ ["thead", {},
+ ["tr", {},
+ ["th", {}, "Result"],
+ ["th", {}, "Test Name"],
+ (assertions ? ["th", {}, "Assertion"] : ""),
+ ["th", {}, "Message" ]]],
+ ["tbody", {}]]]);
+
+ const tbody = section.querySelector("tbody");
+ for (const test of tests) {
+ const status = test.format_status();
+ const status_class_name = status_class(status);
+ tbody.appendChild(render(
+ ["tr", {"class":"overall-" + status_class_name},
+ ["td", {"class":status_class_name}, status],
+ ["td", {}, test.name],
+ (assertions ? ["td", {}, get_assertion(test)] : ""),
+ ["td", {},
+ test.message ?? "",
+ ["pre", {}, test.stack ?? ""]]]));
if (!(test instanceof RemoteTest)) {
- html += "<details><summary>Asserts run</summary>" + get_asserts_output(test) + "</details>"
+ tbody.lastChild.lastChild.appendChild(get_asserts_output(test));
}
- html += "</td></tr>";
- }
- html += "</tbody></table>";
- try {
- log.lastChild.innerHTML = html;
- } catch (e) {
- log.appendChild(document.createElementNS(xhtml_ns, "p"))
- .textContent = "Setting innerHTML for the log threw an exception.";
- log.appendChild(document.createElementNS(xhtml_ns, "pre"))
- .textContent = html;
}
+ log.appendChild(section);
};
/*
diff --git a/testing/web-platform/tests/resources/testharnessreport.js b/testing/web-platform/tests/resources/testharnessreport.js
index e5cb40fe0e..405a2d8b06 100644
--- a/testing/web-platform/tests/resources/testharnessreport.js
+++ b/testing/web-platform/tests/resources/testharnessreport.js
@@ -14,31 +14,6 @@
* parameters they are called with see testharness.js
*/
-function dump_test_results(tests, status) {
- var results_element = document.createElement("script");
- results_element.type = "text/json";
- results_element.id = "__testharness__results__";
- var test_results = tests.map(function(x) {
- return {name:x.name, status:x.status, message:x.message, stack:x.stack}
- });
- var data = {test:window.location.href,
- tests:test_results,
- status: status.status,
- message: status.message,
- stack: status.stack};
- results_element.textContent = JSON.stringify(data);
-
- // To avoid a HierarchyRequestError with XML documents, ensure that 'results_element'
- // is inserted at a location that results in a valid document.
- var parent = document.body
- ? document.body // <body> is required in XHTML documents
- : document.documentElement; // fallback for optional <body> in HTML5, SVG, etc.
-
- parent.appendChild(results_element);
-}
-
-add_completion_callback(dump_test_results);
-
/* If the parent window has a testharness_properties object,
* we use this to provide the test settings. This is used by the
* default in-browser runner to configure the timeout and the
diff --git a/testing/web-platform/tests/scheduler/tentative/yield/yield-priority-posttask.any.js b/testing/web-platform/tests/scheduler/tentative/yield/yield-priority-posttask.any.js
index 0700094dcf..5e40eba29b 100644
--- a/testing/web-platform/tests/scheduler/tentative/yield/yield-priority-posttask.any.js
+++ b/testing/web-platform/tests/scheduler/tentative/yield/yield-priority-posttask.any.js
@@ -103,6 +103,15 @@ promise_test(async t => {
}, 'yield() with postTask tasks (inherit signal)');
promise_test(async t => {
+ for (const config of signalConfigs) {
+ const {tasks, ids} =
+ postTestTasks(config.options, {});
+ await Promise.all(tasks);
+ assert_equals(ids.join(), config.expected);
+ }
+}, 'yield() with postTask tasks (inherit signal by default)');
+
+promise_test(async t => {
const expected = 'y0,ub1,ub2,uv1,uv2,y1,y2,y3,bg1,bg2';
const {tasks, ids} = postTestTasks(
{priority: 'user-blocking'}, {priority: 'background'});
@@ -171,10 +180,10 @@ promise_test(async t => {
subtasks.push(scheduler.postTask(() => { ids.push('ub1'); }, {priority: 'user-blocking'}));
subtasks.push(scheduler.postTask(() => { ids.push('uv1'); }));
- // Ignore inherited signal (user-visible continuations).
- await scheduler.yield();
+ // Ignore inherited signal.
+ await scheduler.yield({priority: 'user-visible'});
ids.push('y1');
- await scheduler.yield();
+ await scheduler.yield({priority: 'user-visible'});
ids.push('y2');
subtasks.push(scheduler.postTask(() => { ids.push('ub2'); }, {priority: 'user-blocking'}));
diff --git a/testing/web-platform/tests/screen-capture/getallscreensmedia-exposure.tentative.https.window.js b/testing/web-platform/tests/screen-capture/getallscreensmedia-exposure.tentative.https.window.js
new file mode 100644
index 0000000000..9be2fa07dd
--- /dev/null
+++ b/testing/web-platform/tests/screen-capture/getallscreensmedia-exposure.tentative.https.window.js
@@ -0,0 +1,19 @@
+async_test(t => {
+ const i = document.createElement('iframe');
+ i.src = "/common/blank.html";
+ i.onload = t.step_func_done(_ => {
+ assert_equals('undefined', typeof i.contentWindow.navigator.mediaDevices.getAllScreensMedia);
+ });
+ document.body.appendChild(i);
+}, "No CSP, no exposure.");
+
+async_test(t => {
+ const i = document.createElement('iframe');
+ i.src = "/content-security-policy/support/echo-policy.py?policy=" +
+ encodeURIComponent("script-src 'none'; object-src 'none'; base-uri 'none'; require-trusted-types-for 'script'");
+ i.onload = t.step_func_done(_ => {
+ assert_equals("function", typeof i.contentWindow.navigator.mediaDevices.getAllScreensMedia);
+ });
+ document.body.appendChild(i);
+}, "Strict CSP + TT, exposure.");
+
diff --git a/testing/web-platform/tests/screen-details/META.yml b/testing/web-platform/tests/screen-details/META.yml
index abfee89ffb..2e3284c67c 100644
--- a/testing/web-platform/tests/screen-details/META.yml
+++ b/testing/web-platform/tests/screen-details/META.yml
@@ -1 +1 @@
-spec: https://webscreens.github.io/window-placement/
+spec: https://webscreens.github.io/window-management/
diff --git a/testing/web-platform/tests/screen-wake-lock/wakelock-active-document.https.window.js b/testing/web-platform/tests/screen-wake-lock/wakelock-active-document.https.window.js
index 724ce09196..6de27d49ef 100644
--- a/testing/web-platform/tests/screen-wake-lock/wakelock-active-document.https.window.js
+++ b/testing/web-platform/tests/screen-wake-lock/wakelock-active-document.https.window.js
@@ -38,7 +38,26 @@ promise_test(async t => {
);
// We are done, so clean up.
iframe.remove();
-}, "navigator.wakeLock.request() aborts if the document is not active.");
+}, "navigator.wakeLock.request() aborts if the document becomes not active.");
+
+promise_test(async t => {
+ const iframe = document.createElement("iframe");
+ document.body.appendChild(iframe);
+ const wakeLock = await getWakeLockObject(
+ iframe,
+ "/screen-wake-lock/resources/page1.html"
+ );
+ // Save the DOMException of page1.html before navigating away.
+ const frameDOMException = iframe.contentWindow.DOMException;
+ iframe.remove();
+ await promise_rejects_dom(
+ t,
+ "NotAllowedError",
+ frameDOMException,
+ wakeLock.request('screen'),
+ "Inactive document, so must throw NotAllowedError"
+ );
+}, "navigator.wakeLock.request() aborts if the document is not fully active.");
promise_test(async t => {
// We nest two iframes and wait for them to load.
diff --git a/testing/web-platform/tests/scroll-animations/css/animation-shorthand.html b/testing/web-platform/tests/scroll-animations/css/animation-shorthand.html
index b7d5947a21..cb63137f5c 100644
--- a/testing/web-platform/tests/scroll-animations/css/animation-shorthand.html
+++ b/testing/web-platform/tests/scroll-animations/css/animation-shorthand.html
@@ -79,36 +79,6 @@ test((t) => {
});
target.style.animation = 'anim 1s';
- target.style.animationDelayEnd = '42s';
- assert_equals(target.style.animation, '');
- assert_equals(target.style.animationName, 'anim');
- assert_equals(target.style.animationDuration, '1s');
-
- target.style.animationDelayEnd = '0s, 0s';
- assert_equals(target.style.animation, '');
-}, 'Animation shorthand can not represent non-initial animation-delay-end (specified)');
-
-test((t) => {
- t.add_cleanup(() => {
- target.style = '';
- });
-
- target.style.animation = 'anim 1s';
- target.style.animationDelayEnd = '42s';
- assert_equals(getComputedStyle(target).animation, '');
- assert_equals(getComputedStyle(target).animationName, 'anim');
- assert_equals(getComputedStyle(target).animationDuration, '1s');
-
- target.style.animationDelayEnd = '0s, 0s';
- assert_equals(getComputedStyle(target).animation, '');
-}, 'Animation shorthand can not represent non-initial animation-delay-end (computed)');
-
-test((t) => {
- t.add_cleanup(() => {
- target.style = '';
- });
-
- target.style.animation = 'anim 1s';
target.style.animationRangeStart = 'entry';
assert_equals(target.style.animation, '');
assert_equals(target.style.animationName, 'anim');
diff --git a/testing/web-platform/tests/scroll-to-text-fragment/WEB_FEATURES.yml b/testing/web-platform/tests/scroll-to-text-fragment/WEB_FEATURES.yml
new file mode 100644
index 0000000000..0b260aaaec
--- /dev/null
+++ b/testing/web-platform/tests/scroll-to-text-fragment/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: text-fragments
+ files: "**"
diff --git a/testing/web-platform/tests/scroll-to-text-fragment/percent-encoding.html b/testing/web-platform/tests/scroll-to-text-fragment/percent-encoding.html
index 1f1794bdae..be688eabfc 100644
--- a/testing/web-platform/tests/scroll-to-text-fragment/percent-encoding.html
+++ b/testing/web-platform/tests/scroll-to-text-fragment/percent-encoding.html
@@ -35,17 +35,17 @@ let test_cases = [
},
{
fragment: '#:~:text=%',
- expect: 'noscroll',
+ expect: 'singlepercent',
description: 'Percent char without hex digits is invalid.'
},
{
fragment: '#:~:text=%%',
- expect: 'noscroll',
+ expect: 'doublepercent',
description: 'Percent char followed by percent char is invalid.'
},
{
fragment: '#:~:text=%F',
- expect: 'noscroll',
+ expect: 'percentf',
description: 'Single digit percent-encoding is invalid.'
},
{
@@ -65,21 +65,23 @@ let test_cases = [
},
];
-for (const test_case of test_cases) {
- promise_test(t => new Promise(resolve => {
- // Clear the fragment and reset the scroll offset to prepare for the next
- // test case.
- location = `${location.pathname}#`;
- scrollTo(0, 0);
+function runTests() {
+ for (const test_case of test_cases) {
+ promise_test(t => new Promise(resolve => {
+ // Clear the fragment and reset the scroll offset to prepare for the next
+ // test case.
+ location = `${location.pathname}#`;
+ scrollTo(0, 0);
- location = `${location.pathname}${test_case.fragment}`;
- requestAnimationFrame( () => requestAnimationFrame(resolve) );
- }).then(() => {
- assert_equals(determineResult(), test_case.expect);
- }), `Test navigation with fragment: ${test_case.description}.`);
+ location = `${location.pathname}${test_case.fragment}`;
+ requestAnimationFrame( () => requestAnimationFrame(resolve) );
+ }).then(() => {
+ assert_equals(determineResult(), test_case.expect);
+ }), `Test navigation with fragment: ${test_case.description}.`);
+ }
}
</script>
-
+<body onload="runTests()">
<p class="target" id="singlepercent">
%
</p>
@@ -100,3 +102,4 @@ for (const test_case of test_cases) {
Hello world
</p>
+</body> \ No newline at end of file
diff --git a/testing/web-platform/tests/service-workers/service-worker/WEB_FEATURES.yml b/testing/web-platform/tests/service-workers/service-worker/WEB_FEATURES.yml
new file mode 100644
index 0000000000..9ddc5b400d
--- /dev/null
+++ b/testing/web-platform/tests/service-workers/service-worker/WEB_FEATURES.yml
@@ -0,0 +1,5 @@
+features:
+- name: js-modules-service-workers
+ files:
+ - registration-script-module.https.html
+ - update-registration-with-type.https.html
diff --git a/testing/web-platform/tests/service-workers/service-worker/navigation-timing-sizes.https.html b/testing/web-platform/tests/service-workers/service-worker/navigation-timing-sizes.https.html
new file mode 100644
index 0000000000..a960cd57f3
--- /dev/null
+++ b/testing/web-platform/tests/service-workers/service-worker/navigation-timing-sizes.https.html
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Service Worker Navigation Timing</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+
+<body>
+ <script>
+
+ promise_test(async t => {
+ var script = 'resources/pass-through-worker.js';
+ var scope = 'resources/blank.html';
+
+ const registration = await service_worker_unregister_and_register(t, script, scope);
+ t.add_cleanup(() => registration.unregister());
+ await wait_for_state(t, registration.installing, 'activated');
+
+ const iframe = await with_iframe(scope);
+
+ // Sanity, to check that we actually loaded the document.
+ assert_equals(iframe.contentWindow.document.title, "Empty doc");
+ t.add_cleanup(() => iframe.remove());
+ const navigationEntry = iframe.contentWindow.performance.getEntriesByType("navigation")[0];
+
+ const main_page_resource_timing = performance.getEntriesByType("resource").filter(
+ e => e.name.includes('blank'))[0];
+
+ assert_greater_than(navigationEntry.encodedBodySize, 0,
+ 'Navigation timing should have encodedBodySize larger than 0.');
+
+ assert_equals(navigationEntry.decodedBodySize, navigationEntry.encodedBodySize,
+ 'Navigation timing\'s decodedBodySize and encodedBodySize should be equal.');
+
+ assert_greater_than(main_page_resource_timing.encodedBodySize, 0,
+ 'Corresponding resource timing emitted on parent page should have decodedBodySize larger than 0.');
+
+ assert_equals(main_page_resource_timing.encodedBodySize, main_page_resource_timing.decodedBodySize,
+ 'Corresponding resource timing emitted on parent page should have equal\
+ decodedBodySize and encodedBodySize.');
+
+ }, 'Body sizes in a regular pass-through');
+
+ promise_test(async t => {
+ var script = 'resources/pass-through-worker.js';
+ var scope = 'resources/blank.html';
+
+ const registration = await service_worker_unregister_and_register(t, script, scope);
+ t.add_cleanup(() => registration.unregister());
+ await wait_for_state(t, registration.installing, 'activated');
+
+ const iframe = await with_iframe(scope + "?pipe=gzip");
+ // Sanity, to check that we actually loaded the document.
+ assert_equals(iframe.contentWindow.document.title, "Empty doc");
+ t.add_cleanup(() => iframe.remove());
+
+ const navigationEntry = iframe.contentWindow.performance.getEntriesByType("navigation")[0];
+
+ const main_page_resource_timing = performance.getEntriesByType("resource").filter(
+ e => e.name.includes('blank'))[0];
+
+ assert_greater_than(navigationEntry.decodedBodySize, 0,
+ 'Navigation timing should have decodedBodySize larger than 0.');
+
+ // The response body that comes from a service worker respondWith promise
+ // should have identical encoded and decoded body sizes, regardless of what
+ // the service worker itself saw, according to the spec.
+ assert_equals(navigationEntry.encodedBodySize, navigationEntry.decodedBodySize,
+ 'Navigation timing should have equal decodedBodySize and encodedBodySize.');
+
+ assert_greater_than(main_page_resource_timing.decodedBodySize, 0,
+ 'Corresponding resource timing emitted on parent page should have decodedBodySize larger than 0.');
+
+ assert_equals(main_page_resource_timing.encodedBodySize, navigationEntry.decodedBodySize,
+ 'Corresponding resource timing emitted on parent page should have equal decodedBodySize and \
+ encodedBodySize.');
+
+ }, 'Body sizes in a regular pass-through with gzip');
+ </script>
+</body>
diff --git a/testing/web-platform/tests/service-workers/service-worker/resources/range-request-with-synth-head-worker.js b/testing/web-platform/tests/service-workers/service-worker/resources/range-request-with-synth-head-worker.js
index 6025d91b1a..6b6395aeca 100644
--- a/testing/web-platform/tests/service-workers/service-worker/resources/range-request-with-synth-head-worker.js
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/range-request-with-synth-head-worker.js
@@ -24,7 +24,7 @@ self.addEventListener('fetch', e => {
headers: {
"Accept-Ranges": "bytes",
"Content-Type": "video/webm",
- "Content-Range": "bytes 0-1/44447",
+ "Content-Range": "bytes 0-1/*",
"Content-Length": "2",
},
};
diff --git a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/resources/router-rules.js b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/resources/router-rules.js
index 014cd2ec95..fdc1c9e063 100644
--- a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/resources/router-rules.js
+++ b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/resources/router-rules.js
@@ -1,10 +1,17 @@
const TEST_CACHE_NAME = 'v1';
+// The value is coming from:
+// https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/public/common/service_worker/service_worker_router_rule.h;l=28;drc=6f3f85b321146cfc0f9eb81a74c7c2257821461e
+const CONDITION_MAX_RECURSION_DEPTH = 10;
const routerRules = {
'condition-urlpattern-constructed-source-network': [{
condition: {urlPattern: new URLPattern({pathname: '/**/direct.txt'})},
source: 'network'
}],
+ 'condition-urlpattern-not-source-network': [{
+ condition: {not: {urlPattern: new URLPattern({pathname: '/**/not.txt'})}},
+ source: 'network'
+ }],
'condition-urlpattern-constructed-match-all-source-cache': [
{condition: {urlPattern: new URLPattern({})}, source: 'cache'},
],
@@ -43,22 +50,37 @@ const routerRules = {
[{condition: {requestMethod: 'PUT'}, source: 'network'}],
'condition-request-method-delete-network':
[{condition: {requestMethod: 'DELETE'}, source: 'network'}],
+ 'condition-lack-of-condition': [{
+ source: 'network'
+ }],
+ 'condition-lack-of-source': [{
+ condition: {requestMode: 'no-cors'},
+ }],
'condition-invalid-request-method': [{
condition: {requestMethod: String.fromCodePoint(0x3042)},
source: 'network'
}],
'condition-invalid-or-condition-depth': (() => {
- const max = 10;
- const addOrCondition = (obj, depth) => {
- if (depth > max) {
- return obj;
+ const addOrCondition = (depth) => {
+ if (depth > CONDITION_MAX_RECURSION_DEPTH) {
+ return {urlPattern: '/foo'};
}
return {
- urlPattern: `/foo-${depth}`,
- or: [addOrCondition(obj, depth + 1)]
+ or: [addOrCondition(depth + 1)]
};
};
- return {condition: addOrCondition({}, 0), source: 'network'};
+ return {condition: addOrCondition(1), source: 'network'};
+ })(),
+ 'condition-invalid-not-condition-depth': (() => {
+ const generateNotCondition = (depth) => {
+ if (depth > CONDITION_MAX_RECURSION_DEPTH) {
+ return {
+ urlPattern: '/**/example.txt',
+ };
+ }
+ return {not: generateNotCondition(depth + 1)};
+ };
+ return {condition: generateNotCondition(1), source: 'network'};
})(),
'condition-invalid-router-size': [...Array(512)].map((val, i) => {
return {
diff --git a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html
index 9ef7cfdc9f..15b8ef5742 100644
--- a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-invalid-rules.https.html
@@ -17,8 +17,14 @@ const ROUTER_RULE_KEY_INVALID_REQUEST_METHOD =
'condition-invalid-request-method';
const ROUTER_RULE_KEY_INVALID_OR_CONDITION_DEPTH =
'condition-invalid-or-condition-depth';
+const ROUTER_RULE_KEY_INVALID_NOT_CONDITION_DEPTH =
+ 'condition-invalid-not-condition-depth';
const ROUTER_RULE_KEY_INVALID_ROUTER_SIZE =
'condition-invalid-router-size';
+const ROUTER_RULE_KEY_LACK_OF_CONDITION =
+ 'condition-lack-of-condition';
+const ROUTER_RULE_KEY_LACK_OF_SOURCE =
+ 'condition-lack-of-source';
promise_test(async t => {
const worker = await registerAndActivate(t, ROUTER_RULE_KEY_INVALID_REQUEST_METHOD);
@@ -35,11 +41,33 @@ promise_test(async t => {
}, 'addRoutes should raise if or condition exceeds the depth limit');
promise_test(async t => {
+ const worker = await registerAndActivate(t, ROUTER_RULE_KEY_INVALID_NOT_CONDITION_DEPTH);
+ t.add_cleanup(() => {reset_info_in_worker(worker)});
+ const {errors} = await get_info_from_worker(worker);
+ assert_equals(errors.length, 1);
+}, 'addRoutes should raise if not condition exceeds the depth limit');
+
+promise_test(async t => {
const worker = await registerAndActivate(t, ROUTER_RULE_KEY_INVALID_ROUTER_SIZE);
t.add_cleanup(() => {reset_info_in_worker(worker)});
const {errors} = await get_info_from_worker(worker);
assert_equals(errors.length, 1);
}, 'addRoutes should raise if the number of router rules exceeds the length limit');
+promise_test(async t => {
+ const worker = await registerAndActivate(t, ROUTER_RULE_KEY_LACK_OF_CONDITION);
+ t.add_cleanup(() => {reset_info_in_worker(worker)});
+ const {errors} = await get_info_from_worker(worker);
+ assert_equals(errors.length, 1);
+}, 'addRoutes should raise if the conditon does not exist in the rule');
+
+promise_test(async t => {
+ const worker = await registerAndActivate(t, ROUTER_RULE_KEY_LACK_OF_SOURCE);
+ t.add_cleanup(() => {reset_info_in_worker(worker)});
+ const {errors} = await get_info_from_worker(worker);
+ assert_equals(errors.length, 1);
+}, 'addRoutes should raise if the source does not exiswt in the rule');
+
+
</script>
</body>
diff --git a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html
index 7998af3f99..71bc0697f9 100644
--- a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-main-resource.https.html
@@ -11,6 +11,7 @@
<body>
<script>
const ROUTER_RULE_KEY = 'condition-urlpattern-constructed-source-network';
+const ROUTER_RULE_NOT_KEY = 'condition-urlpattern-not-source-network';
const ROUTER_RULE_KEY_IGNORE_CASE =
'condition-urlpattern-constructed-ignore-case-source-network';
const ROUTER_RULE_KEY_RESPECT_CASE =
@@ -23,6 +24,7 @@ const ROUTER_RULE_KEY_URLPATTERN_CACHE_WITH_NAME =
const REGISTERED_ROUTE = 'resources/direct.txt';
const CACHED_ROUTE = 'resources/cache.txt';
const NON_REGISTERED_ROUTE = 'resources/simple.html';
+const NOT_ROUTE = 'resources/not.txt';
const host_info = get_host_info();
const path = new URL(".", window.location).pathname;
@@ -72,5 +74,20 @@ iframeTest(CACHED_ROUTE, ROUTER_RULE_KEY_URLPATTERN_CACHE_WITH_NAME, async (t, i
assert_equals(requests.length, 0);
assert_equals(iwin.document.body.innerText, "From cache");
}, 'Main resource load matched with the cache source, with specifying the cache name');
+
+iframeTest(NOT_ROUTE, ROUTER_RULE_NOT_KEY, async (t, iwin, worker) => {
+ const {requests} = await get_info_from_worker(worker);
+ assert_equals(requests.length, 1);
+ assert_equals(
+ requests[0].url,
+ `${host_info['HTTPS_ORIGIN']}${path}${NOT_ROUTE}`);
+ assert_equals(requests[0].mode, 'navigate');
+}, 'Main resource load should not match the condition with not');
+
+iframeTest(REGISTERED_ROUTE, ROUTER_RULE_NOT_KEY, async (t, iwin, worker) => {
+ const {requests} = await get_info_from_worker(worker);
+ assert_equals(requests.length, 0);
+ assert_equals(iwin.document.body.innerText, "Network\n");
+}, 'Main resource load should match the condition without not');
</script>
</body>
diff --git a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html
index 00b9070bf1..ab05a3d252 100644
--- a/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/tentative/static-router/static-router-subresource.https.html
@@ -27,10 +27,12 @@ const ROUTER_RULE_KEY_URL_PATTERN_CONSTRUCTED_MATCH_ALL_CACHE =
const ROUTER_RULE_KEY_URLPATTERN_CACHE_WITH_NAME =
'condition-urlpattern-string-source-cache-with-name';
const ROUTER_RULE_KEY_OR = 'condition-or-source-network'
+const ROUTER_RULE_KEY_NOT = 'condition-urlpattern-not-source-network';
const SCOPE = 'resources/';
const HTML_FILE = 'resources/simple.html';
const TXT_FILE = 'resources/direct.txt';
const CSV_FILE = 'resources/simple.csv';
+const NOT_FILE = 'resources/not.txt';
// Warning: please prepare the corresponding `*.text.headers` files, otherwise
// iframeTest() fails to load the following files due to MIME mismatches.
const OR_TEST_FILES = [
@@ -184,5 +186,17 @@ iframeTest(HTML_FILE, ROUTER_RULE_KEY_URLPATTERN_CACHE_WITH_NAME, async (t, iwin
assert_equals(response_with_param.status, 404);
}, 'Subresource load matched with the cache source, with specifying the cache name');
+iframeTest(TXT_FILE, ROUTER_RULE_KEY_NOT, async (t, iwin) => {
+ const rnd = randomString();
+ const response = await iwin.fetch(`${NOT_FILE}?nonce=${rnd}`);
+ assert_equals(await response.text(), rnd);
+}, 'Subresource load should not match with the not condition');
+
+iframeTest(TXT_FILE, ROUTER_RULE_KEY_NOT, async (t, iwin) => {
+ const rnd = randomString();
+ const response = await iwin.fetch('?nonce=' + rnd);
+ assert_equals(await response.text(), "Network\n");
+}, 'Subresource load should match with a file other than not');
+
</script>
</body>
diff --git a/testing/web-platform/tests/shadow-dom/declarative/WEB_FEATURES.yml b/testing/web-platform/tests/shadow-dom/declarative/WEB_FEATURES.yml
new file mode 100644
index 0000000000..4e31ed4962
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/declarative/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: declarative-shadow-dom
+ files: "**"
diff --git a/testing/web-platform/tests/shadow-dom/declarative/gethtml.html b/testing/web-platform/tests/shadow-dom/declarative/gethtml.html
index d950ca7734..ff70653477 100644
--- a/testing/web-platform/tests/shadow-dom/declarative/gethtml.html
+++ b/testing/web-platform/tests/shadow-dom/declarative/gethtml.html
@@ -29,7 +29,6 @@ function testElementType(allowsShadowDom, elementType, runGetHTMLOnShadowRoot,
}
let shadowRoot;
- const isOpen = mode === 'open';
let initDict = {mode: mode, delegatesFocus: delegatesFocus, clonable};
let expectedSerializable = null;
switch (serializable) {
@@ -47,12 +46,8 @@ function testElementType(allowsShadowDom, elementType, runGetHTMLOnShadowRoot,
`shadowrootmode=${mode}${delegatesAttr}${serializableAttr}` +
`${clonableAttr}>`;
wrapper.setHTMLUnsafe(html);
- if (isOpen) {
- shadowRoot = wrapper.firstElementChild.shadowRoot;
- } else {
- // For closed shadow root, we rely on the behavior of attachShadow to return it to us
- shadowRoot = wrapper.firstElementChild.attachShadow(initDict);
- }
+ // Get hold of the declarative shadow root in a way that works when its mode is "closed"
+ shadowRoot = wrapper.firstElementChild.attachShadow(initDict);
} else {
// Imperative shadow dom
const element = document.createElement(elementType);
@@ -78,22 +73,14 @@ function testElementType(allowsShadowDom, elementType, runGetHTMLOnShadowRoot,
assert_equals(shadowRoot.clonable,clonable);
shadowRoot.appendChild(document.createElement('slot'));
const emptyElement = `<${elementType}>${lightDOMContent}</${elementType}>`;
- if (isOpen) {
- if (expectedSerializable) {
- assert_equals(wrapper.getHTML({serializableShadowRoots: true}),
- correctHtml);
- assert_equals(wrapper.firstElementChild.getHTML({
- serializableShadowRoots: true}),
- `${correctShadowHtml}${lightDOMContent}`);
- } else {
- assert_equals(wrapper.getHTML({serializableShadowRoots: true}), emptyElement);
- }
- } else {
- // Closed shadow roots should not be returned unless shadowRoots specifically contains the shadow root:
+ if (expectedSerializable) {
assert_equals(wrapper.getHTML({serializableShadowRoots: true}),
- emptyElement);
- assert_equals(wrapper.getHTML({serializableShadowRoots: true,
- shadowRoots: []}), emptyElement);
+ correctHtml);
+ assert_equals(wrapper.firstElementChild.getHTML({
+ serializableShadowRoots: true}),
+ `${correctShadowHtml}${lightDOMContent}`);
+ } else {
+ assert_equals(wrapper.getHTML({serializableShadowRoots: true}), emptyElement);
}
// If we provide the shadow root, serialize it, regardless of serializableShadowRoots.
assert_equals(wrapper.getHTML({serializableShadowRoots: true, shadowRoots:
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html
index 7d733ea7c2..1b867cc2a9 100644
--- a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slot-nested-2levels.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html
index 39b0806603..3c929de727 100644
--- a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-slots-in-slot.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html
index 64942a109e..e37accbc8e 100644
--- a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation-with-delegatesFocus.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation.html b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation.html
index 9e593eb100..faf3c34cdb 100644
--- a/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation.html
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/focus-navigation.html
@@ -1,4 +1,5 @@
<!DOCTYPE html>
+<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html
new file mode 100644
index 0000000000..a48eda1b57
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-on-shadow-host.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order on shadow host</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+}
+</style>
+
+<div class="test-case" data-expect="root/B,root/A"
+ data-description="Grid items in shadow host with delegatesFocus">
+ <div id="root" class="wrapper" tabindex="0">
+ <template shadowrootmode="open" shadowrootdelegatesfocus>
+ <button id="A" style="order: 2">A</button>
+ <button id="B" style="order: 1">B</button>
+ </template>
+ </div>
+</div>
+
+<div class="test-case" data-expect="root2,root2/B,root2/A"
+ data-description="Grid items in shadow host without delegatesFocus">
+ <div id="root2" class="wrapper" tabindex="0">
+ <template shadowrootmode="open">
+ <button id="A" style="order: 2">A</button>
+ <button id="B" style="order: 1">B</button>
+ </template>
+ </div>
+</div>
+
+<script>
+runFocusTestCases();
+</script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html
new file mode 100644
index 0000000000..87b9e0a83d
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-iframe.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order on iframe</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+}
+</style>
+
+<div class="test-case" data-expect="start,frame2/B,frame1/A,end"
+ data-description="Grid items are iframes.">
+ <button id="start">Item Start</button>
+ <div class="wrapper">
+ <iframe id="frame1" style="order: 2" srcdoc="<button id=A>A</button>"></iframe>
+ <iframe id="frame2" style="order: 1" srcdoc="<button id=B>B</button>"></iframe>
+ </div>
+ <button id="end">Item End</button>
+</div>
+
+<script>
+window.onload = runFocusTestCases;
+</script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html
new file mode 100644
index 0000000000..d3da6682a3
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-nested-grids.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order in nested grids</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.box {
+ display: grid;
+ reading-order-items: grid-order;
+ border-radius: 5px;
+ padding: 20px;
+ border-style: dashed;
+}
+
+</style>
+
+<div class="test-case" data-expect="w,d3,b3a,b3b,d2,b2,d1,b1a,b1b"
+ data-description="Grid items are not grid containers.">
+ <div class="box" id="w" tabindex="0">
+ <div style="order: 2" id="d1" tabindex="0">Div 1
+ <button id="b1a" style="order: 3">Button 1A</button>
+ <button id="b1b">Button 1B</button>
+ </div>
+ <div id="d2" tabindex="0">Div 2
+ <button id="b2">Button 2</button>
+ </div>
+ <div id="d3" style="order: -1" tabindex="0">Div 3
+ <button id="b3a" style="order: 2">Button 3A</button>
+ <button id="b3b">Button 3B</button>
+ </div>
+ </div>
+</div>
+
+<div class="test-case"
+ data-expect="wrapper,div3,button3b,button3a,div2,button2,div1,button1b,button1a"
+ data-description="Grid items are grid containers.">
+ <div class="box" id="wrapper" tabindex="0">
+ <div class="box" style="order: 2" id="div1" tabindex="0">Div 1
+ <button id="button1a" style="order: 3">Button 1A</button>
+ <button id="button1b">Button 1B</button>
+ </div>
+ <div class="box" id="div2" tabindex="0">Div 2
+ <button id="button2">Button 2</button>
+ </div>
+ <div class="box" id="div3" style="order: -1" tabindex="0">Div 3
+ <button id="button3a" style="order: 2">Button 3A</button>
+ <button id="button3b">Button 3B</button>
+ </div>
+ </div>
+</div>
+
+<div class="test-case" data-expect="a,b,d,c"
+ data-description="Only has grid containers.">
+ <div class="box" id="a" tabindex="0">A
+ <div class="box" id="b" tabindex="0">B
+ <div class="box" id="c" tabindex="0" style="order: 2">C</div>
+ <div class="box" id="d" tabindex="0">D</div>
+ </div>
+ </div>
+</div>
+
+<script>
+runFocusTestCases();
+</script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html
new file mode 100644
index 0000000000..2e98c04157
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-popover.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+}
+.popover {
+ inset:auto;
+ top:200px;
+ left:200px;
+}
+</style>
+
+<div class="wrapper">
+ <button id=a style="order: 4">A</button>
+ <button id=invoker style="order: 2" popovertarget=P>Invoker</button>
+ <button id=c style="order: 1">C</button>
+</div>
+<div popover id=P class="popover">
+ <button id=b1 style="order: 3">Popover button B1</button>
+ <button id=b2 style="order: 1">Popover button B2</button>
+ <button id=b3 style="order: 2">Popover button B3</button>
+</div>
+
+<script>
+document.querySelector('[popovertarget]').click();
+
+promise_test(async () => {
+ let elements = [
+ 'c',
+ 'invoker',
+ 'b1',
+ 'b2',
+ 'b3',
+ 'a',
+ ];
+ await assert_focus_navigation_forward(elements);
+}, `Popover in reading-order-items: grid-order container.`);
+
+promise_test(async () => {
+ P.classList.add("wrapper");
+ let elements = [
+ 'c',
+ 'invoker',
+ 'b2',
+ 'b3',
+ 'b1',
+ 'a',
+ ];
+ await assert_focus_navigation_forward(elements);
+}, `Popover in container and itself with reading-order-items: grid-order.`);
+</script> \ No newline at end of file
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html
new file mode 100644
index 0000000000..3045001e1d
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order-with-slots.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order in Shadow DOM</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+}
+</style>
+
+<span id="root1" class="test-case" data-expect="b1,a1,c1"
+ data-description="Slot assigned element is a grid with reading-order-items.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <slot></slot>
+ </template>
+ <div class="wrapper">
+ <button style="order: 2" id="a1">Item A</button>
+ <button style="order: 1" id="b1">Item B</button>
+ <button style="order: 3" id="c1">Item C</button>
+ </div>
+</span>
+<br>
+
+<span id="root2" class="test-case" data-expect="b2,a2,c2"
+ data-description="Slot is a grid with reading-order-items.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <slot class="wrapper"></slot>
+ </template>
+ <button style="order: 2" id="a2">Item A</button>
+ <button style="order: 1" id="b2">Item B</button>
+ <button style="order: 3" id="c2">Item C</button>
+</span>
+<br>
+
+<span id="root3" class="test-case" data-expect="root3/o2,root3/o4,o1,o3,o5"
+ data-description="Slot is inside a grid container with reading-order-items.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <div class="wrapper">
+ <button style="order: 4" id="o4">Order 4</button>
+ <slot style="order: 10"></slot>
+ <button style="order: 2" id="o2">Order 2</button>
+ </div>
+ </template>
+ <button style="order: 5" id="o5">Order 5</button>
+ <button style="order: 1" id="o1">Order 1</button>
+ <button style="order: 3" id="o3">Order 3</button>
+</span>
+<br>
+
+<span id="root4" class="test-case"
+ data-expect="root4/after,root4/before,b4,a4,d42,d41,d43,c4"
+ data-description="Slot is a grid with reading-order-items inside a grid container with reading-order-items.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <div class="wrapper">
+ <button style="order: 4" id="before">Before</button>
+ <slot style="order: 10"></slot>
+ <button style="order: 2" id="after">After</button>
+ </div>
+ </template>
+ <button style="order: 3" id="a4">Item A</button>
+ <button style="order: 1" id="b4">Item B</button>
+ <button style="order: 6" id="c4">Item C</button>
+ <div style="order: 5" class="wrapper">
+ <button style="order: 2" id="d41">Item D1</button>
+ <button style="order: 1" id="d42">Item D2</button>
+ <button style="order: 3" id="d43">Item D3</button>
+ </div>
+</span>
+<br>
+
+<span id="root5" class="test-case" data-expect="b51,a51,c51,b52,a52,c52"
+ data-description="Slot is not inside a shadow root.">
+ <div class="wrapper">
+ <slot name=slot1>
+ <button style="order: 2" id="a51">Item A</button>
+ <button style="order: 1" id="b51">Item B</button>
+ <button style="order: 3" id="c51">Item C</button>
+ </slot>
+ </div>
+ <slot class="wrapper" name=slot2>
+ <button style="order: 2" id="a52">Item A</button>
+ <button style="order: 1" id="b52">Item B</button>
+ <button style="order: 3" id="c52">Item C</button>
+ </slot>
+</span>
+<br>
+
+<span id="root6" class="test-case" data-expect="root6/after,root6/before,b6,a6"
+ data-description="Slot is a display contents inside a grid container.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <div class="wrapper">
+ <button style="order: 4" id="before">Before</button>
+ <slot style="display: contents" style="order: 4"></slot>
+ <button style="order: 3" id="after">After</button>
+ </div>
+ </template>
+ <button id="a6" style="order: 7">A</button>
+ <button id="b6" style="order: 2">B</button>
+</span>
+<br>
+
+<span id="root7" class="test-case" data-expect="a7,b7,root7/after,root7/before"
+ data-description="Slot is a display block inside a grid container.">
+ <template shadowrootmode="open">
+ <style>
+ .wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+ }
+ </style>
+ <div class="wrapper">
+ <button style="order: 4" id="before">Before</button>
+ <slot style="display: block" style="order: 4"></slot>
+ <button style="order: 3" id="after">After</button>
+ </div>
+ </template>
+ <button id="a7" style="order: 7">A</button>
+ <button id="b7" style="order: 2">B</button>
+</span>
+<br>
+
+<script>
+runFocusTestCases();
+</script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html
new file mode 100644
index 0000000000..1b86ab0b25
--- /dev/null
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/reading-order/tentative/grid-order.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Display: reading-order-items with value grid-order</title>
+<link rel="help" href="https://drafts.csswg.org/css-display-4/#reading-order-items">
+<link rel="author" title="Di Zhang" href="mailto:dizhangg@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src='../../resources/shadow-dom.js'></script>
+<script src="../../resources/focus-utils.js"></script>
+
+<style>
+.wrapper {
+ display: grid;
+ reading-order-items: grid-order;
+}
+</style>
+
+<div class="test-case" data-expect="a1,b1,c1,d1,e1"
+ data-description="Grid items without `order` property">
+ <div class="wrapper">
+ <button id="a1">Item A</button>
+ <button id="b1">Item B</button>
+ <button id="c1">Item C</button>
+ </div>
+ <div class="wrapper">
+ <button id="d1">Item D</button>
+ <button id="e1">Item E</button>
+ </div>
+</div>
+
+<div class="test-case" data-expect="b2,c2,a2,e2,d2"
+ data-description="Grid items with `order` property">
+ <div class="wrapper">
+ <button id="a2" style="order: 2">Item A</button>
+ <button id="b2">Item B</button>
+ <button id="c2">Item C</button>
+ </div>
+ <div class="wrapper">
+ <button id="d2">Item D</button>
+ <button id="e2" style="order: -1">Item E</button>
+ </div>
+</div>
+
+<div class="test-case" data-expect="c3,a3,b3,d3,f3,e3"
+ data-description="Grid items with `order` property and tabindex">
+ <div class="wrapper">
+ <button id="a3" style="order: -1">Item A</button>
+ <button id="b3" style="order: 0">Item B</button>
+ <button id="c3" tabindex="1" style="order: -1">Item C</button>
+ </div>
+ <div class="wrapper">
+ <button id="d3" tabindex="1" style="order: 1">Item D</button>
+ <button id="e3" tabindex="2" style="order: 0">Item E</button>
+ <button id="f3" tabindex="2" style="order: -1">Item F</button>
+ </div>
+</div>
+
+<div class="test-case" data-expect="order1,order2,order3,order4"
+ data-description="Items in display contents are sorted in same grid container.">
+ <div class="wrapper">
+ <div style="display: contents">
+ <button id="order3" style="order: 3">Order 3</button>
+ <button id="order1" style="order: 1">Order 1</button>
+ <div style="display: contents">
+ <button id="order4" style="order: 4">Order 4</button>
+ <button id="order2" style="order: 2">Order 2</button>
+ </div>
+ </div>
+ </div>
+</div>
+
+<div class="test-case" data-expect="d4,b4,c4,a4"
+ data-description="Items in display block are not in parent grid container.">
+ <div class="wrapper">
+ <button id="a4" style="order: 3">A</button>
+ <div style="order: 1" style="display: block">
+ <button id="b4" style="order: 2">B</button>
+ <button id="c4" style="order: -1">C</button>
+ </div>
+ <button id="d4">D</button>
+ </div>
+</div>
+
+<script>
+runFocusTestCases();
+</script>
diff --git a/testing/web-platform/tests/shadow-dom/focus-navigation/resources/focus-utils.js b/testing/web-platform/tests/shadow-dom/focus-navigation/resources/focus-utils.js
index f593267cc3..f4056dc168 100644
--- a/testing/web-platform/tests/shadow-dom/focus-navigation/resources/focus-utils.js
+++ b/testing/web-platform/tests/shadow-dom/focus-navigation/resources/focus-utils.js
@@ -1,17 +1,27 @@
'use strict';
-function navigateFocusForward() {
- // TAB = '\ue004'
- return test_driver.send_keys(document.body, "\ue004");
+function waitForRender() {
+ return new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)));
+}
+
+async function navigateFocusForward() {
+ await waitForRender();
+ const kTab = '\uE004';
+ await new test_driver.send_keys(document.documentElement,kTab);
+ await waitForRender();
}
async function navigateFocusBackward() {
- return new test_driver.Actions()
- .keyDown('\uE050')
- .keyDown('\uE004')
- .keyUp('\uE004')
- .keyUp('\uE050')
+ await waitForRender();
+ const kShift = '\uE008';
+ const kTab = '\uE004';
+ await new test_driver.Actions()
+ .keyDown(kShift)
+ .keyDown(kTab)
+ .keyUp(kTab)
+ .keyUp(kShift)
.send();
+ await waitForRender();
}
// If shadow root is open, can find element using element path
@@ -162,3 +172,18 @@ async function assert_focus_navigation_bidirectional_with_shadow_root(elements)
await assert_focus_navigation_backward_with_shadow_root(elements);
}
+// This Promise will run each test case that is:
+// 1. Wrapped in an element with class name "test-case".
+// 2. Has data-expect attribute be an ordered list of elements to focus.
+// 3. Has data-description attribute be a string explaining the test.
+// e.g <div class="test-case" data-expect="b,a,c"
+// data-description="Focus navigation">
+async function runFocusTestCases() {
+ const testCases = Array.from(document.querySelectorAll('.test-case'));
+ for (let testCase of testCases) {
+ promise_test(async () => {
+ const expected = testCase.dataset.expect.split(',');
+ await assert_focus_navigation_forward(expected);
+ }, testCase.dataset.description);
+ }
+}
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-include.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-include.tentative.https.sub.html
index 9c44d2a29f..4c0e91c156 100644
--- a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-include.tentative.https.sub.html
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-include.tentative.https.sub.html
@@ -19,6 +19,7 @@ promise_test(async () => {
`/shared-storage/resources/credentials-test-helper.py` +
`?access_control_allow_origin_header=${window.origin}` +
`&access_control_allow_credentials_header=true` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?1` +
`&token=${ancestor_key}`;
await fetch(set_cookie_url, { mode: 'no-cors', credentials: 'include' });
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-omit.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-omit.tentative.https.sub.html
index ddda1809f2..86b56ce80d 100644
--- a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-omit.tentative.https.sub.html
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-omit.tentative.https.sub.html
@@ -18,6 +18,7 @@ promise_test(async () => {
const helper_url = crossOrigin +
`/shared-storage/resources/credentials-test-helper.py` +
`?access_control_allow_origin_header=${window.origin}` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?1` +
`&token=${ancestor_key}`;
await fetch(set_cookie_url, { mode: 'no-cors', credentials: 'include' });
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-same-origin.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-same-origin.tentative.https.sub.html
index 99701d2b7d..0b8faad783 100644
--- a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-same-origin.tentative.https.sub.html
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-credentials-same-origin.tentative.https.sub.html
@@ -18,6 +18,7 @@ promise_test(async () => {
const helper_url = crossOrigin +
`/shared-storage/resources/credentials-test-helper.py` +
`?access_control_allow_origin_header=${window.origin}` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?1` +
`&token=${ancestor_key}`;
await fetch(set_cookie_url, { mode: 'no-cors', credentials: 'include' });
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html
deleted file mode 100644
index 598fd8f405..0000000000
--- a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-credentials.tentative.https.sub.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!doctype html>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/common/utils.js"></script>
-<script src="/shared-storage/resources/util.js"></script>
-<script src="/fenced-frame/resources/utils.js"></script>
-
-<body>
-<script>
-'use strict';
-
-promise_test(async t => {
- const ancestor_key = token();
- const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
- const helper_url = crossOrigin +
- `/shared-storage/resources/credentials-test-helper.py` +
- `?access_control_allow_origin_header=${window.origin}` +
- `&token=${ancestor_key}`;
-
- return promise_rejects_dom(t, "OperationError",
- sharedStorage.createWorklet(
- helper_url + `&action=store-cookie`,
- { credentials: "include" }));
-}, 'createWorklet() with cross-origin module script and credentials ' +
- '"include", and without the Access-Control-Allow-Credentials response ' +
- 'header');
-
-</script>
-</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html
deleted file mode 100644
index 4195d09fc0..0000000000
--- a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-failure-missing-access-control-allow-origin.tentative.https.sub.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!doctype html>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/common/utils.js"></script>
-<script src="/shared-storage/resources/util.js"></script>
-<script src="/fenced-frame/resources/utils.js"></script>
-
-<body>
-<script>
-'use strict';
-
-promise_test(async t => {
- const ancestor_key = token();
- const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
- const helper_url = crossOrigin +
- `/shared-storage/resources/credentials-test-helper.py` +
- `&access_control_allow_credentials_header=true` +
- `&token=${ancestor_key}`;
-
- return promise_rejects_dom(t, "OperationError",
- sharedStorage.createWorklet(
- helper_url + `&action=store-cookie`,
- { credentials: "include" }));
-}, 'createWorklet() with cross-origin module script and credentials ' +
- '"include", and without the Access-Control-Allow-Origin response header');
-
-</script>
-</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-false-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-false-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html
new file mode 100644
index 0000000000..f1f37b0aff
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-false-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html
@@ -0,0 +1,32 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/shared-storage/resources/util.js"></script>
+<script src="/fenced-frame/resources/utils.js"></script>
+
+<body>
+<script>
+'use strict';
+
+promise_test(async t => {
+ const ancestor_key = token();
+ const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
+ const helper_url = crossOrigin +
+ `/shared-storage/resources/credentials-test-helper.py` +
+ `?access_control_allow_origin_header=${window.origin}` +
+ `&access_control_allow_credentials_header=true` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?0` +
+ `&token=${ancestor_key}`;
+
+ // The network error for `createWorklet()` won't be revealed to the
+ // cross-origin caller.
+ await sharedStorage.createWorklet(
+ helper_url + `&action=store-cookie`,
+ { credentials: "include" });
+}, 'createWorklet() with cross-origin module script and credentials ' +
+ '"include", and with the Shared-Storage-Cross-Origin-Worklet-Allowed ' +
+ 'response header value set to false (?0)');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-credentials.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-credentials.tentative.https.sub.html
new file mode 100644
index 0000000000..dd6347e463
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-credentials.tentative.https.sub.html
@@ -0,0 +1,31 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/shared-storage/resources/util.js"></script>
+<script src="/fenced-frame/resources/utils.js"></script>
+
+<body>
+<script>
+'use strict';
+
+promise_test(async t => {
+ const ancestor_key = token();
+ const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
+ const helper_url = crossOrigin +
+ `/shared-storage/resources/credentials-test-helper.py` +
+ `?access_control_allow_origin_header=${window.origin}` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?1` +
+ `&token=${ancestor_key}`;
+
+ // The network error for `createWorklet()` won't be revealed to the
+ // cross-origin caller.
+ await sharedStorage.createWorklet(
+ helper_url + `&action=store-cookie`,
+ { credentials: "include" });
+}, 'createWorklet() with cross-origin module script and credentials ' +
+ '"include", and without the Access-Control-Allow-Credentials response ' +
+ 'header');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-origin.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-origin.tentative.https.sub.html
new file mode 100644
index 0000000000..1f3223a564
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-access-control-allow-origin.tentative.https.sub.html
@@ -0,0 +1,30 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/shared-storage/resources/util.js"></script>
+<script src="/fenced-frame/resources/utils.js"></script>
+
+<body>
+<script>
+'use strict';
+
+promise_test(async t => {
+ const ancestor_key = token();
+ const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
+ const helper_url = crossOrigin +
+ `/shared-storage/resources/credentials-test-helper.py` +
+ `&access_control_allow_credentials_header=true` +
+ `&shared_storage_cross_origin_worklet_allowed_header=?1` +
+ `&token=${ancestor_key}`;
+
+ // The network error for `createWorklet()` won't be revealed to the
+ // cross-origin caller.
+ await sharedStorage.createWorklet(
+ helper_url + `&action=store-cookie`,
+ { credentials: "include" });
+}, 'createWorklet() with cross-origin module script and credentials ' +
+ '"include", and without the Access-Control-Allow-Origin response header');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html
new file mode 100644
index 0000000000..f96e4d596e
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/cross-origin-create-worklet-unrevealed-failure-missing-shared-storage-cross-origin-worklet-allowed.tentative.https.sub.html
@@ -0,0 +1,31 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/shared-storage/resources/util.js"></script>
+<script src="/fenced-frame/resources/utils.js"></script>
+
+<body>
+<script>
+'use strict';
+
+promise_test(async t => {
+ const ancestor_key = token();
+ const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
+ const helper_url = crossOrigin +
+ `/shared-storage/resources/credentials-test-helper.py` +
+ `?access_control_allow_origin_header=${window.origin}` +
+ `&access_control_allow_credentials_header=true` +
+ `&token=${ancestor_key}`;
+
+ // The network error for `createWorklet()`` won't be revealed to the
+ // cross-origin caller.
+ await sharedStorage.createWorklet(
+ helper_url + `&action=store-cookie`,
+ { credentials: "include" });
+}, 'createWorklet() with cross-origin module script and credentials ' +
+ '"include", and without the Shared-Storage-Cross-Origin-Worklet-Allowed ' +
+ 'response header');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/shared-storage/cross-origin-worklet-select-url-and-verify-data-origin.tentative.https.sub.html b/testing/web-platform/tests/shared-storage/cross-origin-worklet-select-url-and-verify-data-origin.tentative.https.sub.html
new file mode 100644
index 0000000000..5b6b9d5f8f
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/cross-origin-worklet-select-url-and-verify-data-origin.tentative.https.sub.html
@@ -0,0 +1,46 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/utils.js"></script>
+<script src="/shared-storage/resources/util.js"></script>
+<script src="/fenced-frame/resources/utils.js"></script>
+
+<body>
+<script>
+'use strict';
+
+promise_test(async () => {
+ const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}';
+ const script_url = crossOrigin +
+ `/shared-storage/resources/simple-module.js`;
+
+ const worklet = await sharedStorage.createWorklet(
+ script_url,
+ { credentials: "omit" });
+
+ const ancestor_key = token();
+ let url0 = generateURL("/shared-storage/resources/frame0.html",
+ [ancestor_key]);
+
+ let select_url_result = await worklet.selectURL(
+ "test-url-selection-operation",
+ [{ url: url0 }], {
+ data: {
+ 'mockResult': 0,
+ 'setKey': 'key0',
+ 'setValue': 'value0'
+ },
+ resolveToConfig: true,
+ keepAlive: true
+ });
+
+ assert_true(validateSelectURLResult(select_url_result, true));
+ attachFencedFrame(select_url_result, 'opaque-ads');
+ const result0 = await nextValueFromServer(ancestor_key);
+ assert_equals(result0, "frame0_loaded");
+
+ await verifyKeyValueForOrigin('key0', 'value0', crossOrigin);
+}, 'For a cross-origin worklet, test selectURL() and verify its data origin');
+
+</script>
+</body>
diff --git a/testing/web-platform/tests/shared-storage/resources/credentials-test-helper.py b/testing/web-platform/tests/shared-storage/resources/credentials-test-helper.py
index 46fc0ea6fb..575e504e64 100644
--- a/testing/web-platform/tests/shared-storage/resources/credentials-test-helper.py
+++ b/testing/web-platform/tests/shared-storage/resources/credentials-test-helper.py
@@ -19,6 +19,9 @@ def main(request, response):
if b"access_control_allow_origin_header" in request.GET:
response.headers.append(b"Access-Control-Allow-Origin", request.GET[b"access_control_allow_origin_header"])
+ if b"shared_storage_cross_origin_worklet_allowed_header" in request.GET:
+ response.headers.append(b"Shared-Storage-Cross-Origin-Worklet-Allowed", request.GET[b"shared_storage_cross_origin_worklet_allowed_header"])
+
if action == b"store-cookie":
cookie = request.headers.get(b"Cookie", b"NO_COOKIE_HEADER")
request.server.stash.put(token, cookie)
diff --git a/testing/web-platform/tests/shared-storage/resources/simple-module.js b/testing/web-platform/tests/shared-storage/resources/simple-module.js
index 620a3592f2..11b650811d 100644
--- a/testing/web-platform/tests/shared-storage/resources/simple-module.js
+++ b/testing/web-platform/tests/shared-storage/resources/simple-module.js
@@ -6,6 +6,10 @@ var globalVar = 0;
class TestURLSelectionOperation {
async run(urls, data) {
+ if (data && data.hasOwnProperty('setKey') && data.hasOwnProperty('setValue')) {
+ await sharedStorage.set(data['setKey'], data['setValue']);
+ }
+
if (data && data.hasOwnProperty('mockResult')) {
return data['mockResult'];
}
diff --git a/testing/web-platform/tests/shared-storage/resources/simple-module.js.headers b/testing/web-platform/tests/shared-storage/resources/simple-module.js.headers
new file mode 100644
index 0000000000..cf3e03e24c
--- /dev/null
+++ b/testing/web-platform/tests/shared-storage/resources/simple-module.js.headers
@@ -0,0 +1,2 @@
+Access-Control-Allow-Origin: *
+Shared-Storage-Cross-Origin-Worklet-Allowed: ?1
diff --git a/testing/web-platform/tests/speech-api/WEB_FEATURES.yml b/testing/web-platform/tests/speech-api/WEB_FEATURES.yml
new file mode 100644
index 0000000000..7a24460e1b
--- /dev/null
+++ b/testing/web-platform/tests/speech-api/WEB_FEATURES.yml
@@ -0,0 +1,7 @@
+features:
+- name: speech-recognition
+ files:
+ - SpeechRecognition*
+- name: speech-synthesis
+ files:
+ - SpeechSynthesis*
diff --git a/testing/web-platform/tests/storage-access-api/helpers.js b/testing/web-platform/tests/storage-access-api/helpers.js
index 0fd5d814db..416c4a401e 100644
--- a/testing/web-platform/tests/storage-access-api/helpers.js
+++ b/testing/web-platform/tests/storage-access-api/helpers.js
@@ -287,6 +287,13 @@ async function MaybeSetStorageAccess(origin, embedding_origin, value) {
}
}
+
+// Navigate the inner iframe using the given frame.
+function NavigateChild(frame, url) {
+ return PostMessageAndAwaitReply(
+ { command: "navigate_child", url }, frame.contentWindow);
+}
+
// Starts a dedicated worker in the given frame.
function StartDedicatedWorker(frame) {
return PostMessageAndAwaitReply(
diff --git a/testing/web-platform/tests/storage-access-api/requestStorageAccess-cross-origin-iframe-navigation-relax.tentative.sub.https.window.js b/testing/web-platform/tests/storage-access-api/requestStorageAccess-cross-origin-iframe-navigation-relax.tentative.sub.https.window.js
new file mode 100644
index 0000000000..7ccb9824e6
--- /dev/null
+++ b/testing/web-platform/tests/storage-access-api/requestStorageAccess-cross-origin-iframe-navigation-relax.tentative.sub.https.window.js
@@ -0,0 +1,65 @@
+// META: script=helpers.js
+// META: script=/cookies/resources/cookie-helper.sub.js
+// META: script=/resources/testdriver.js
+// META: script=/resources/testdriver-vendor.js
+'use strict';
+
+(async function() {
+ // This is cross-domain from the current document.
+ const altWww = "https://{{hosts[alt][www]}}:{{ports[https][0]}}";
+ const altRoot = "https://{{hosts[alt][]}}:{{ports[https][0]}}";
+ const responderPath = "/storage-access-api/resources/script-with-cookie-header.py?script=embedded_responder.js";
+ const forwarderPath = "/storage-access-api/resources/script-with-cookie-header.py?script=embedded_forwarder.js";
+
+ const altWwwResponder = `${altWww}${responderPath}`;
+ const altRootResponder = `${altRoot}${responderPath}`;
+ const altWwwNestedCrossOriginResponder = `${altRoot}${forwarderPath}&inner_url=${encodeURI(altWwwResponder)}`;
+
+ async function SetUpResponderFrame(t, url) {
+ const frame = await CreateFrame(url);
+
+ await SetPermissionInFrame(frame, [{ name: 'storage-access' }, 'granted']);
+ t.add_cleanup(async () => {
+ await test_driver.delete_all_cookies();
+ await SetPermissionInFrame(frame, [{ name: 'storage-access' }, 'prompt']);
+ await MaybeSetStorageAccess("*", "*", "allowed");
+ });
+
+ assert_false(await FrameHasStorageAccess(frame), "frame initially does not have storage access.");
+ assert_false(await HasUnpartitionedCookie(frame), "frame initially does not have access to cookies.");
+
+ assert_true(await RequestStorageAccessInFrame(frame), "requestStorageAccess resolves without requiring a gesture.");
+
+ assert_true(await FrameHasStorageAccess(frame), "frame has storage access after request.");
+ assert_true(await HasUnpartitionedCookie(frame), "frame has access to cookies after request.");
+
+ return frame;
+ }
+
+ promise_test(async (t) => {
+ await MaybeSetStorageAccess("*", "*", "blocked");
+ await SetFirstPartyCookieAndUnsetStorageAccessPermission(altWww);
+
+ const frame = await SetUpResponderFrame(t, altWwwNestedCrossOriginResponder);
+
+ await NavigateChild(frame, altWwwResponder);
+
+ assert_true(await FrameHasStorageAccess(frame), "innermost frame has storage access after refresh.");
+ assert_true(await HasUnpartitionedCookie(frame), "innermost frame has access to cookies after refresh.");
+ }, "Same-site-initiated same-origin navigations preserve storage access");
+
+ promise_test(async (t) => {
+ await MaybeSetStorageAccess("*", "*", "blocked");
+ await SetFirstPartyCookieAndUnsetStorageAccessPermission(altWww);
+
+ const frame = await SetUpResponderFrame(t, altWwwNestedCrossOriginResponder);
+
+ await NavigateChild(frame, altRootResponder);
+
+ assert_false(await FrameHasStorageAccess(frame), "innermost frame has no storage access after refresh.");
+ assert_false(await HasUnpartitionedCookie(frame), "innermost frame has no access to cookies after refresh.");
+ let cookieOnLoad = await GetHTTPCookiesFromFrame(frame);
+ assert_false(cookieStringHasCookie("cookie", "unpartitioned", cookieOnLoad), "innermost frame has cookie in initial load");
+ }, "Same-site-initiated cross-origin navigations do not preserve storage access");
+
+})();
diff --git a/testing/web-platform/tests/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js b/testing/web-platform/tests/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js
index 6c3d616e26..5c3089bf34 100644
--- a/testing/web-platform/tests/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js
+++ b/testing/web-platform/tests/storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.js
@@ -40,10 +40,10 @@
assert_true(cookieStringHasCookie("cookie", "unpartitioned",
await MessageWorker(frame, {command: "load"})),
"Worker's load was credentialed.");
- assert_true(cookieStringHasCookie("cookie", "unpartitioned",
+ assert_false(cookieStringHasCookie("cookie", "unpartitioned",
await MessageWorker(frame, {command: "fetch", url: altRootEchoCookies})),
- "Worker's fetch is credentialed.");
- }, "Workers inherit storage access");
+ "Worker's fetch is uncredentialed.");
+ }, "Workers don't inherit storage access");
promise_test(async (t) => {
await MaybeSetStorageAccess("*", "*", "blocked");
diff --git a/testing/web-platform/tests/storage-access-api/resources/embedded_forwarder.js b/testing/web-platform/tests/storage-access-api/resources/embedded_forwarder.js
new file mode 100644
index 0000000000..c1e5e54443
--- /dev/null
+++ b/testing/web-platform/tests/storage-access-api/resources/embedded_forwarder.js
@@ -0,0 +1,50 @@
+"use strict";
+
+test_driver.set_test_context(window.top);
+
+function waitForMessage(timestamp) {
+ return new Promise(resolve => {
+ const listener = (event) => {
+ if (!timestamp || event.data.timestamp == timestamp) {
+ window.removeEventListener("message", listener);
+ resolve(event.data);
+ }
+ };
+ window.addEventListener("message", listener);
+ });
+}
+
+var iframe = document.createElement('iframe');
+const queryString = window.location.search;
+const urlParams = new URLSearchParams(queryString);
+iframe.src = urlParams.get("inner_url");
+document.body.appendChild(iframe);
+
+window.addEventListener("message", async (event) => {
+ function replyToParent(data) {
+ parent.postMessage(
+ {timestamp: event.data.timestamp, data}, "*");
+ }
+
+ if (!event.data["command"]) {
+ return;
+ }
+
+ switch (event.data["command"]) {
+ case "navigate_child":
+ iframe.onload = () => replyToParent(event.data.url);
+ iframe.src = event.data.url;
+ break;
+ case "reload":
+ case "navigate":
+ iframe.contentWindow.postMessage({timestamp, ...event.data}, "*");
+ break;
+ default:{
+ const timestamp = event.data.timestamp;
+ const p = waitForMessage(timestamp);
+ iframe.contentWindow.postMessage({timestamp, ...event.data}, "*");
+ replyToParent(await p.then(resp => resp.data));
+ break;
+ }
+ }
+});
diff --git a/testing/web-platform/tests/storage-access-api/resources/embedded_responder.js b/testing/web-platform/tests/storage-access-api/resources/embedded_responder.js
index 228a262f16..3cca86154a 100644
--- a/testing/web-platform/tests/storage-access-api/resources/embedded_responder.js
+++ b/testing/web-platform/tests/storage-access-api/resources/embedded_responder.js
@@ -31,7 +31,7 @@ function connectAndGetRequestCookiesFrom(origin) {
window.addEventListener("message", async (event) => {
function reply(data) {
event.source.postMessage(
- {timestamp: event.data.timestamp, data}, event.origin);
+ {timestamp: event.data.timestamp, data}, "*");
}
switch (event.data["command"]) {
diff --git a/testing/web-platform/tests/storage-access-api/resources/script-with-cookie-header.py b/testing/web-platform/tests/storage-access-api/resources/script-with-cookie-header.py
index 83129a5559..ae95b7593f 100644
--- a/testing/web-platform/tests/storage-access-api/resources/script-with-cookie-header.py
+++ b/testing/web-platform/tests/storage-access-api/resources/script-with-cookie-header.py
@@ -13,7 +13,10 @@ def main(request, response):
var httpCookies = "%s";
</script>
+ <body>
<script src="%s"></script>
+ </body>
+
""" % (cookie_header, script)
return (200, [], body)
diff --git a/testing/web-platform/tests/storage/buckets/detached-iframe.https.html b/testing/web-platform/tests/storage/buckets/detached-iframe.https.html
index a67c89efa3..6b3f3a2bd5 100644
--- a/testing/web-platform/tests/storage/buckets/detached-iframe.https.html
+++ b/testing/web-platform/tests/storage/buckets/detached-iframe.https.html
@@ -23,10 +23,12 @@ promise_test(async testCase => {
// too late to delete buckets.
await bucketManager.delete('iframe-bucket');
+ const IFrameTypeError = iframe.contentWindow.TypeError;
iframe.remove();
// Calling open() from a detached iframe should fail but not crash.
- assert_equals(bucketManager.open('iframe-bucket'), undefined);
+ await promise_rejects_js(testCase, IFrameTypeError,
+ bucketManager.open('iframe-bucket'));
}, 'Verify open() on detached iframe returns an error');
promise_test(async testCase => {
@@ -39,10 +41,12 @@ promise_test(async testCase => {
assert_equals(bucketKeys.length, 1);
await bucketManager.delete('iframe-bucket');
+ const IFrameTypeError = iframe.contentWindow.TypeError;
iframe.remove();
// Calling keys() from a detached iframe should fail but not crash.
- assert_equals(bucketManager.keys(), undefined);
+ await promise_rejects_js(testCase, IFrameTypeError,
+ bucketManager.keys());
}, 'Verify keys() on detached iframe returns an error');
promise_test(async testCase => {
@@ -52,10 +56,12 @@ promise_test(async testCase => {
await bucketManager.open('iframe-bucket');
await bucketManager.delete('iframe-bucket');
+ const IFrameTypeError = iframe.contentWindow.TypeError;
iframe.remove();
// Calling delete() from a detached iframe should fail but not crash.
- assert_equals(bucketManager.delete('foo-bucket'), undefined);
+ await promise_rejects_js(testCase, IFrameTypeError,
+ bucketManager.delete('foo-bucket'));
}, 'Verify delete() on detached iframe returns an error');
</script>
diff --git a/testing/web-platform/tests/streams/readable-streams/async-iterator.any.js b/testing/web-platform/tests/streams/readable-streams/async-iterator.any.js
index 4b674bea84..e192201b53 100644
--- a/testing/web-platform/tests/streams/readable-streams/async-iterator.any.js
+++ b/testing/web-platform/tests/streams/readable-streams/async-iterator.any.js
@@ -475,16 +475,86 @@ promise_test(async () => {
const rs = new ReadableStream();
const it = rs.values();
- const iterResults = await Promise.allSettled([it.return('return value'), it.next()]);
+ const resolveOrder = [];
+ const iterResults = await Promise.allSettled([
+ it.return('return value').then(result => {
+ resolveOrder.push('return');
+ return result;
+ }),
+ it.next().then(result => {
+ resolveOrder.push('next');
+ return result;
+ })
+ ]);
assert_equals(iterResults[0].status, 'fulfilled', 'return() promise status');
assert_iter_result(iterResults[0].value, 'return value', true, 'return()');
assert_equals(iterResults[1].status, 'fulfilled', 'next() promise status');
assert_iter_result(iterResults[1].value, undefined, true, 'next()');
+
+ assert_array_equals(resolveOrder, ['return', 'next'], 'next() resolves after return()');
}, 'return(); next() [no awaiting]');
promise_test(async () => {
+ let resolveCancelPromise;
+ const rs = recordingReadableStream({
+ cancel(reason) {
+ return new Promise(r => resolveCancelPromise = r);
+ }
+ });
+ const it = rs.values();
+
+ let returnResolved = false;
+ const returnPromise = it.return('return value').then(result => {
+ returnResolved = true;
+ return result;
+ });
+ await flushAsyncEvents();
+ assert_false(returnResolved, 'return() should not resolve while cancel() promise is pending');
+
+ resolveCancelPromise();
+ const iterResult1 = await returnPromise;
+ assert_iter_result(iterResult1, 'return value', true, 'return()');
+
+ const iterResult2 = await it.next();
+ assert_iter_result(iterResult2, undefined, true, 'next()');
+}, 'return(); next() with delayed cancel()');
+
+promise_test(async () => {
+ let resolveCancelPromise;
+ const rs = recordingReadableStream({
+ cancel(reason) {
+ return new Promise(r => resolveCancelPromise = r);
+ }
+ });
+ const it = rs.values();
+
+ const resolveOrder = [];
+ const returnPromise = it.return('return value').then(result => {
+ resolveOrder.push('return');
+ return result;
+ });
+ const nextPromise = it.next().then(result => {
+ resolveOrder.push('next');
+ return result;
+ });
+
+ assert_array_equals(rs.events, ['cancel', 'return value'], 'return() should call cancel()');
+ assert_array_equals(resolveOrder, [], 'return() should not resolve before cancel() resolves');
+
+ resolveCancelPromise();
+ const iterResult1 = await returnPromise;
+ assert_iter_result(iterResult1, 'return value', true, 'return() should resolve with original reason');
+ const iterResult2 = await nextPromise;
+ assert_iter_result(iterResult2, undefined, true, 'next() should resolve with done result');
+
+ assert_array_equals(rs.events, ['cancel', 'return value'], 'no pull() after cancel()');
+ assert_array_equals(resolveOrder, ['return', 'next'], 'next() should resolve after return() resolves');
+
+}, 'return(); next() with delayed cancel() [no awaiting]');
+
+promise_test(async () => {
const rs = new ReadableStream();
const it = rs.values();
@@ -499,13 +569,25 @@ promise_test(async () => {
const rs = new ReadableStream();
const it = rs.values();
- const iterResults = await Promise.allSettled([it.return('return value 1'), it.return('return value 2')]);
+ const resolveOrder = [];
+ const iterResults = await Promise.allSettled([
+ it.return('return value 1').then(result => {
+ resolveOrder.push('return 1');
+ return result;
+ }),
+ it.return('return value 2').then(result => {
+ resolveOrder.push('return 2');
+ return result;
+ })
+ ]);
assert_equals(iterResults[0].status, 'fulfilled', '1st return() promise status');
assert_iter_result(iterResults[0].value, 'return value 1', true, '1st return()');
assert_equals(iterResults[1].status, 'fulfilled', '2nd return() promise status');
assert_iter_result(iterResults[1].value, 'return value 2', true, '1st return()');
+
+ assert_array_equals(resolveOrder, ['return 1', 'return 2'], '2nd return() resolves after 1st return()');
}, 'return(); return() [no awaiting]');
test(() => {
diff --git a/testing/web-platform/tests/streams/readable-streams/tee-detached-context-crash.html b/testing/web-platform/tests/streams/readable-streams/tee-detached-context-crash.html
new file mode 100644
index 0000000000..9488da7273
--- /dev/null
+++ b/testing/web-platform/tests/streams/readable-streams/tee-detached-context-crash.html
@@ -0,0 +1,13 @@
+<!doctype html>
+<body>
+<script>
+const i = document.createElement("iframe");
+document.body.appendChild(i);
+
+const rs = new i.contentWindow.ReadableStream();
+i.remove();
+
+// tee() on a ReadableStream from a detached iframe should not crash.
+rs.tee();
+</script>
+</body>
diff --git a/testing/web-platform/tests/svg/crashtests/chrome-bug-333487749.html b/testing/web-platform/tests/svg/crashtests/chrome-bug-333487749.html
new file mode 100644
index 0000000000..1613f4998a
--- /dev/null
+++ b/testing/web-platform/tests/svg/crashtests/chrome-bug-333487749.html
@@ -0,0 +1,14 @@
+<!doctype html>
+<body style="mask: url(#marker)">
+ <svg>
+ <marker id="marker">
+ <rect width="10" height="10" fill="yellow"/>
+ </marker>
+ <path d="M50,50h100" marker-start="url(#marker1)"/>
+ </svg>
+</body>
+<script>
+ document.documentElement.offsetTop;
+ document.documentElement.style.display = 'none';
+ document.documentElement.offsetTop;
+</script>
diff --git a/testing/web-platform/tests/svg/layout/svg-embed-intrinsic-size-min-size.html b/testing/web-platform/tests/svg/layout/svg-embed-intrinsic-size-min-size.html
new file mode 100644
index 0000000000..79dfb07b42
--- /dev/null
+++ b/testing/web-platform/tests/svg/layout/svg-embed-intrinsic-size-min-size.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1894363">
+<link rel="match" href="svg-intrinsic-size-min-size-ref.html">
+<style>
+ embed {
+ width: auto;
+ height: auto;
+ vertical-align: top;
+ }
+</style>
+<div style="width: min-content; background-color: green">
+ <embed src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='56' height='56' viewBox='0 0 56 56'></svg>">
+</div>
diff --git a/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size-ref.html b/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size-ref.html
new file mode 100644
index 0000000000..f9ae2910d8
--- /dev/null
+++ b/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size-ref.html
@@ -0,0 +1,3 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<div style="width: 56px; height: 56px; background-color: green"></div>
diff --git a/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size.html b/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size.html
new file mode 100644
index 0000000000..41c68e56e1
--- /dev/null
+++ b/testing/web-platform/tests/svg/layout/svg-intrinsic-size-min-size.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1894363">
+<link rel="match" href="svg-intrinsic-size-min-size-ref.html">
+<style>
+ svg {
+ width: auto;
+ height: auto;
+ vertical-align: top;
+ }
+</style>
+<div style="width: min-content; background-color: green">
+ <svg width="56" height="56" viewBox="0 0 56 56"></svg>
+</div>
diff --git a/testing/web-platform/tests/svg/painting/reftests/green-100x100.svg b/testing/web-platform/tests/svg/painting/reftests/green-100x100.svg
new file mode 100644
index 0000000000..120941444a
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/green-100x100.svg
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg">
+ <rect width="100" height="100" fill="green"/>
+</svg>
diff --git a/testing/web-platform/tests/svg/painting/reftests/non-scaling-stroke-001.html b/testing/web-platform/tests/svg/painting/reftests/non-scaling-stroke-001.html
new file mode 100644
index 0000000000..a9870ac8bb
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/non-scaling-stroke-001.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html>
+<title>non-scaling-stroke with scaling</title>
+<link rel="help" href="https://svgwg.org/svg2-draft/painting.html#PaintingVectorEffects" />
+<link rel="match" href="green-100x100.svg" />
+<body>
+ <style>
+ body {
+ border: none;
+ margin: 0;
+ width: 200px;
+ height: 200px;
+ transform: scale(2);
+ }
+ svg {
+ width: 100px;
+ height: 100px;
+ }
+ rect {
+ fill: red;
+ stroke: green;
+ stroke-width: 50px;
+ vector-effect: non-scaling-stroke;
+ }
+ </style>
+ <svg>
+ <rect width="75" height="75"/>
+ </svg>
+</body>
+</html>
diff --git a/testing/web-platform/tests/svg/painting/reftests/paint-context-007-ref.svg b/testing/web-platform/tests/svg/painting/reftests/paint-context-007-ref.svg
new file mode 100644
index 0000000000..0328272c6a
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/paint-context-007-ref.svg
@@ -0,0 +1,29 @@
+<svg id="svg-root"
+ width="100%" height="100%" viewBox="0 0 400 300"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <g id="testmeta">
+ <title>Paint: 'context-fill' and 'context-stroke' in 'use' with transform</title>
+ <html:link rel="author"
+ title="Stefan Zager"
+ href="mailto:szager@chromium.org"/>
+ </g>
+
+ <defs>
+ <linearGradient id="lg1" x2="125%">
+ <stop offset="0" stop-color="red"/>
+ <stop offset="1" stop-color="blue"/>
+ </linearGradient>
+
+ <linearGradient id="lg2" x1="-25%">
+ <stop offset="0" stop-color="red"/>
+ <stop offset="1" stop-color="blue"/>
+ </linearGradient>
+ </defs>
+
+ <g id="test-reference">
+ <rect x="50" y="90" width="240" height="120" fill="url(#lg1)"/>
+ <path d="M 110 30 l 240 120 l -240 120 Z" fill="url(#lg2)" />
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/svg/painting/reftests/paint-context-007.svg b/testing/web-platform/tests/svg/painting/reftests/paint-context-007.svg
new file mode 100644
index 0000000000..50360a302e
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/paint-context-007.svg
@@ -0,0 +1,32 @@
+<svg id="svg-root"
+ width="100%" height="100%" viewBox="0 0 400 300"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <g id="testmeta">
+ <title>Paint: 'context-fill' and 'context-stroke' in 'use' with transform</title>
+ <html:link rel="author"
+ title="Stefan Zager"
+ href="mailto:szager@chromium.org"/>
+ <html:link rel="help"
+ href="https://www.w3.org/TR/SVG2/painting.html#SpecifyingPaint"/>
+ <html:link rel="match" href="paint-context-007-ref.svg" />
+ </g>
+
+ <defs>
+ <linearGradient id="lg">
+ <stop offset="0" stop-color="red"/>
+ <stop offset="1" stop-color="blue"/>
+ </linearGradient>
+
+ <g id="shapes">
+ <rect x="50" y="90" width="240" height="120" fill="context-fill"/>
+ <path d="M 170 -30 l -120 240 l 240 0 Z" fill="context-fill"
+ transform-origin="170 150" transform="rotate(90)"/>
+ </g>
+ </defs>
+
+ <g id="test-body-content">
+ <use x="0" y="0" fill="url(#lg)" xlink:href="#shapes"/>
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/svg/painting/reftests/paint-context-008-ref.svg b/testing/web-platform/tests/svg/painting/reftests/paint-context-008-ref.svg
new file mode 100644
index 0000000000..49d4f8947b
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/paint-context-008-ref.svg
@@ -0,0 +1,22 @@
+<svg id="svg-root"
+ width="100%" height="100%" viewBox="0 0 400 300"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <g id="testmeta">
+ <title>Paint: paint server transform for 'context-fill' based on nearest 'use' ancestor</title>
+ <html:link rel="author"
+ title="Stefan Zager"
+ href="mailto:szager@chromium.org"/>
+ </g>
+
+ <defs>
+ <pattern id="grid" x="0" y="0" width="0.125" height="0.25" stroke="blue" stroke-width="0.03125" patternContentUnits="objectBoundingBox">
+ <path fill="none" d="M 0.0625 0 l 0.0625 0.125 l -0.0625 0.125 l -0.0625 -0.125 Z"/>
+ </pattern>
+ </defs>
+
+ <g id="test-reference">
+ <rect x="69" y="113" width="256" height="128" fill="url(#grid)"/>
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/svg/painting/reftests/paint-context-008.svg b/testing/web-platform/tests/svg/painting/reftests/paint-context-008.svg
new file mode 100644
index 0000000000..83308f09b1
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/reftests/paint-context-008.svg
@@ -0,0 +1,33 @@
+<svg id="svg-root"
+ width="100%" height="100%" viewBox="0 0 400 300"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <g id="testmeta">
+ <title>Paint: paint server transform for 'context-fill' based on nearest 'use' ancestor</title>
+ <html:link rel="author"
+ title="Stefan Zager"
+ href="mailto:szager@chromium.org"/>
+ <html:link rel="help"
+ href="https://www.w3.org/TR/SVG2/painting.html#SpecifyingPaint"/>
+ <html:link rel="match" href="paint-context-008-ref.svg" />
+ </g>
+
+ <defs>
+ <pattern id="grid" x="0" y="0" width="0.125" height="0.25" stroke="blue" stroke-width="0.03125" patternContentUnits="objectBoundingBox">
+ <path fill="none" d="M 0.0625 0 l 0.0625 0.125 l -0.0625 0.125 l -0.0625 -0.125 Z"/>
+ </pattern>
+
+ <g id="shapes">
+ <rect x="50" y="90" width="256" height="128" fill="context-fill"/>
+ </g>
+
+ <g id="intermediate">
+ <use x="19" y="23" fill="url(#grid)" xlink:href="#shapes"/>
+ </g>
+ </defs>
+
+ <g id="test-body-content">
+ <use xlink:href="#intermediate"/>
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/svg/painting/scripted/marker-element-added.html b/testing/web-platform/tests/svg/painting/scripted/marker-element-added.html
new file mode 100644
index 0000000000..39d3cb190c
--- /dev/null
+++ b/testing/web-platform/tests/svg/painting/scripted/marker-element-added.html
@@ -0,0 +1,29 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>&lt;marker> element added after first paint</title>
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<link rel="match" href="../../struct/reftests/reference/green-100x100.html">
+<svg>
+ <path d="M0,0h100" marker-start="url(#m)"/>
+</svg>
+<script>
+ function createSvgElement(name, attrData) {
+ const svgNs = 'http://www.w3.org/2000/svg';
+ const element = document.createElementNS(svgNs, name);
+ attrData.forEach(([name, value]) => element.setAttribute(name, value));
+ return element;
+ }
+ waitForAtLeastOneFrame().then(() => {
+ const svgNs = 'http://www.w3.org/2000/svg';
+ const markerElement = createSvgElement('marker', [
+ ['id', 'm'], ['orient', '0'], ['overflow', 'visible']
+ ]);
+ markerElement.appendChild(createSvgElement('rect', [
+ ['width', '100'], ['height', '100'], ['fill', 'green']
+ ]));
+ const svg = document.querySelector('svg');
+ svg.insertBefore(markerElement, svg.firstElementChild);
+ takeScreenshot();
+ });
+</script>
diff --git a/testing/web-platform/tests/svg/path/property/serialization.svg b/testing/web-platform/tests/svg/path/property/serialization.svg
index 3199beb92b..2ad336d5f7 100644
--- a/testing/web-platform/tests/svg/path/property/serialization.svg
+++ b/testing/web-platform/tests/svg/path/property/serialization.svg
@@ -17,7 +17,7 @@
let test2 = 'path("M 0 0 L 100 100 m 0 100 l 100 0 Z l 160 20 Z")';
test_valid_value('d', test2);
- test_computed_value('d', test2);
+ test_computed_value('d', test2, 'path("M 0 0 L 100 100 M 100 200 L 200 200 Z L 260 220 Z")');
let test3 = 'path("m 10 20 l 20 30 Z l 50 60 Z m 70 80 l 90 60 Z t 70 120")';
test_valid_value('d', test3, 'path("m 10 20 l 20 30 Z l 50 60 Z m 70 80 l 90 60 Z t 70 120")');
diff --git a/testing/web-platform/tests/svg/types/scripted/SVGLength-rlh.html b/testing/web-platform/tests/svg/types/scripted/SVGLength-rlh.html
new file mode 100644
index 0000000000..411013b65b
--- /dev/null
+++ b/testing/web-platform/tests/svg/types/scripted/SVGLength-rlh.html
@@ -0,0 +1,31 @@
+<!DOCTYPE HTML>
+<title>SVGLength with 'rlh' unit</title>
+<link rel="help" href="https://www.w3.org/TR/SVG/types.html#InterfaceSVGLength">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+:root {
+ font-family: initial;
+ font-size: 20px;
+}
+</style>
+<div style="font-size: 10px">
+ <div id="rlh_ref" style="width:10rlh"></div>
+ <svg>
+ <text id="rlh_test" x="10rlh"></text>
+ </svg>
+</div>
+<script>
+ let ref_width = rlh_ref.offsetWidth;
+ let rlh_length = rlh_test.x.baseVal[0];
+
+ test(() => {
+ assert_equals(rlh_length.unitType, SVGLength.SVG_LENGTHTYPE_UNKNOWN);
+ assert_equals(rlh_length.value, ref_width);
+ }, "rlh unit in SVGLength");
+
+ test(() => {
+ rlh_length.value = ref_width * 2;
+ assert_equals(rlh_length.valueInSpecifiedUnits, 20);
+ }, "Convert back to rlh from new user unit value");
+</script>
diff --git a/testing/web-platform/tests/tools/ci/azure/install_chrome.yml b/testing/web-platform/tests/tools/ci/azure/install_chrome.yml
index 7599321be2..2dde99286c 100644
--- a/testing/web-platform/tests/tools/ci/azure/install_chrome.yml
+++ b/testing/web-platform/tests/tools/ci/azure/install_chrome.yml
@@ -1,11 +1,11 @@
steps:
# The conflicting google-chrome and chromedriver casks are first uninstalled.
-# The raw google-chrome-dev cask URL is used to bypass caching.
+# The raw google-chrome@dev.rb cask URL is used to bypass caching.
- script: |
set -eux -o pipefail
HOMEBREW_NO_AUTO_UPDATE=1 brew uninstall --cask google-chrome || true
HOMEBREW_NO_AUTO_UPDATE=1 brew uninstall --cask chromedriver || true
- curl https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/google-chrome-dev.rb > google-chrome-dev.rb
- HOMEBREW_NO_AUTO_UPDATE=1 brew install --cask google-chrome-dev.rb
+ curl https://raw.githubusercontent.com/Homebrew/homebrew-cask/HEAD/Casks/g/google-chrome@dev.rb > google-chrome@dev.rb
+ HOMEBREW_NO_AUTO_UPDATE=1 brew install --cask google-chrome@dev.rb
displayName: 'Install Chrome Dev'
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
diff --git a/testing/web-platform/tests/tools/ci/azure/install_firefox.yml b/testing/web-platform/tests/tools/ci/azure/install_firefox.yml
index 73af597665..d43e28b274 100644
--- a/testing/web-platform/tests/tools/ci/azure/install_firefox.yml
+++ b/testing/web-platform/tests/tools/ci/azure/install_firefox.yml
@@ -1,9 +1,8 @@
steps:
-# This is equivalent to `Homebrew/homebrew-cask-versions/firefox-nightly`,
-# but the raw URL is used to bypass caching.
+# The raw firefox@nightly.rb cask URL is used to bypass caching.
- script: |
set -eux -o pipefail
- curl https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/firefox-nightly.rb > firefox-nightly.rb
- HOMEBREW_NO_AUTO_UPDATE=1 brew install --cask firefox-nightly.rb
+ curl https://raw.githubusercontent.com/Homebrew/homebrew-cask/HEAD/Casks/f/firefox@nightly.rb > firefox@nightly.rb
+ HOMEBREW_NO_AUTO_UPDATE=1 brew install --cask firefox@nightly.rb
displayName: 'Install Firefox Nightly'
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
diff --git a/testing/web-platform/tests/tools/ci/jobs.py b/testing/web-platform/tests/tools/ci/jobs.py
index 44de9fe1ad..fe8eaae069 100644
--- a/testing/web-platform/tests/tools/ci/jobs.py
+++ b/testing/web-platform/tests/tools/ci/jobs.py
@@ -23,7 +23,7 @@ EXCLUDES = [
]
# Rules are just regex on the path, with a leading ! indicating a regex that must not
-# match for the job. Paths should be kept in sync with update-built-tests.sh.
+# match for the job. Paths should be kept in sync with scripts in update_built.py.
job_path_map = {
"affected_tests": [".*/.*", "!resources/(?!idlharness.js)"] + EXCLUDES,
"stability": [".*/.*", "!resources/.*"] + EXCLUDES,
@@ -32,10 +32,11 @@ job_path_map = {
"resources_unittest": ["resources/", "tools/"],
"tools_unittest": ["tools/"],
"wptrunner_unittest": ["tools/"],
- "update_built": ["update-built-tests\\.sh",
- "conformance-checkers/",
+ "update_built": ["conformance-checkers/",
+ "css/css-images/",
"css/css-ui/",
"css/css-writing-modes/",
+ "fetch/metadata/",
"html/",
"infrastructure/",
"mimesniff/"],
diff --git a/testing/web-platform/tests/tools/ci/requirements_build.txt b/testing/web-platform/tests/tools/ci/requirements_build.txt
index 54f21efbd9..7b4f8619b2 100644
--- a/testing/web-platform/tests/tools/ci/requirements_build.txt
+++ b/testing/web-platform/tests/tools/ci/requirements_build.txt
@@ -1,5 +1,5 @@
-cairocffi==1.6.1
-fonttools==4.47.2
+cairocffi==1.7.0
+fonttools==4.51.0
genshi==0.7.7
jinja2==3.1.3
pyyaml==6.0.1
diff --git a/testing/web-platform/tests/tools/ci/requirements_macos_color_profile.txt b/testing/web-platform/tests/tools/ci/requirements_macos_color_profile.txt
index 7505a98d9f..8e178d1d2c 100644
--- a/testing/web-platform/tests/tools/ci/requirements_macos_color_profile.txt
+++ b/testing/web-platform/tests/tools/ci/requirements_macos_color_profile.txt
@@ -1,4 +1,4 @@
-pyobjc-core==9.2
+pyobjc-core==10.2
pyobjc-framework-Cocoa==9.2
pyobjc-framework-ColorSync==9.2
pyobjc-framework-Quartz==9.2
diff --git a/testing/web-platform/tests/tools/ci/requirements_tc.txt b/testing/web-platform/tests/tools/ci/requirements_tc.txt
index e1ae4dbf70..aa57643b9b 100644
--- a/testing/web-platform/tests/tools/ci/requirements_tc.txt
+++ b/testing/web-platform/tests/tools/ci/requirements_tc.txt
@@ -1,4 +1,4 @@
-pygithub==2.2.0
+pygithub==2.3.0
pyyaml==6.0.1
requests==2.31.0
-taskcluster==60.4.1
+taskcluster==64.2.7
diff --git a/testing/web-platform/tests/tools/ci/tc/tasks/test.yml b/testing/web-platform/tests/tools/ci/tc/tasks/test.yml
index c172e6b731..a9ca07c6ce 100644
--- a/testing/web-platform/tests/tools/ci/tc/tasks/test.yml
+++ b/testing/web-platform/tests/tools/ci/tc/tasks/test.yml
@@ -115,25 +115,24 @@ components:
chunks-override:
testharness: 24
- tox-python3_7:
+ tox-python3_8:
env:
- TOXENV: py37
+ TOXENV: py38
PY_COLORS: "0"
install:
- - python3.7
- - python3.7-distutils
- - python3.7-dev
- - python3.7-venv
+ - python3.8
+ - python3.8-distutils
+ - python3.8-dev
+ - python3.8-venv
- tox-python3_11:
+ tox-python3_12:
env:
- TOXENV: py311
+ TOXENV: py312
PY_COLORS: "0"
install:
- - python3.11
- - python3.11-distutils
- - python3.11-dev
- - python3.11-venv
+ - python3.12
+ - python3.12-dev
+ - python3.12-venv
tests-affected:
options:
browser:
@@ -438,13 +437,13 @@ tasks:
- update_built
command: "./tools/ci/ci_built_diff.sh"
- - tools/ unittests (Python 3.7):
+ - tools/ unittests (Python 3.8):
description: >-
- Unit tests for tools running under Python 3.7, excluding wptrunner
+ Unit tests for tools running under Python 3.8, excluding wptrunner
use:
- wpt-base
- trigger-pr
- - tox-python3_7
+ - tox-python3_8
command: ./tools/ci/ci_tools_unittest.sh
env:
HYPOTHESIS_PROFILE: ci
@@ -452,13 +451,13 @@ tasks:
run-job:
- tools_unittest
- - tools/ unittests (Python 3.11):
+ - tools/ unittests (Python 3.12):
description: >-
- Unit tests for tools running under Python 3.11, excluding wptrunner
+ Unit tests for tools running under Python 3.12, excluding wptrunner
use:
- wpt-base
- trigger-pr
- - tox-python3_11
+ - tox-python3_12
command: ./tools/ci/ci_tools_unittest.sh
env:
HYPOTHESIS_PROFILE: ci
@@ -466,13 +465,13 @@ tasks:
run-job:
- tools_unittest
- - tools/ integration tests (Python 3.7):
+ - tools/ integration tests (Python 3.8):
description: >-
- Integration tests for tools running under Python 3.7
+ Integration tests for tools running under Python 3.8
use:
- wpt-base
- trigger-pr
- - tox-python3_7
+ - tox-python3_8
command: ./tools/ci/ci_tools_integration_test.sh
install:
- libnss3-tools
@@ -488,13 +487,13 @@ tasks:
run-job:
- wpt_integration
- - tools/ integration tests (Python 3.11):
+ - tools/ integration tests (Python 3.12):
description: >-
- Integration tests for tools running under Python 3.11
+ Integration tests for tools running under Python 3.12
use:
- wpt-base
- trigger-pr
- - tox-python3_11
+ - tox-python3_12
command: ./tools/ci/ci_tools_integration_test.sh
install:
- libnss3-tools
@@ -510,13 +509,13 @@ tasks:
run-job:
- wpt_integration
- - resources/ tests (Python 3.7):
+ - resources/ tests (Python 3.8):
description: >-
- Tests for testharness.js and other files in resources/ under Python 3.7
+ Tests for testharness.js and other files in resources/ under Python 3.8
use:
- wpt-base
- trigger-pr
- - tox-python3_7
+ - tox-python3_8
command: ./tools/ci/ci_resources_unittest.sh
install:
- libnss3-tools
@@ -529,13 +528,13 @@ tasks:
run-job:
- resources_unittest
- - resources/ tests (Python 3.11):
+ - resources/ tests (Python 3.12):
description: >-
- Tests for testharness.js and other files in resources/ under Python 3.11
+ Tests for testharness.js and other files in resources/ under Python 3.12
use:
- wpt-base
- trigger-pr
- - tox-python3_11
+ - tox-python3_12
command: ./tools/ci/ci_resources_unittest.sh
install:
- libnss3-tools
diff --git a/testing/web-platform/tests/tools/ci/tc/tests/test_valid.py b/testing/web-platform/tests/tools/ci/tc/tests/test_valid.py
index 62bb09a1c3..dd8d732654 100644
--- a/testing/web-platform/tests/tools/ci/tc/tests/test_valid.py
+++ b/testing/web-platform/tests/tools/ci/tc/tests/test_valid.py
@@ -202,12 +202,12 @@ def test_verify_payload():
'lint']),
("pr_event.json", True, {".taskcluster.yml", ".travis.yml", "tools/ci/start.sh"},
['lint',
- 'tools/ unittests (Python 3.7)',
- 'tools/ unittests (Python 3.11)',
- 'tools/ integration tests (Python 3.7)',
- 'tools/ integration tests (Python 3.11)',
- 'resources/ tests (Python 3.7)',
- 'resources/ tests (Python 3.11)',
+ 'tools/ unittests (Python 3.8)',
+ 'tools/ unittests (Python 3.12)',
+ 'tools/ integration tests (Python 3.8)',
+ 'tools/ integration tests (Python 3.12)',
+ 'resources/ tests (Python 3.8)',
+ 'resources/ tests (Python 3.12)',
'download-firefox-nightly',
'infrastructure/ tests',
'sink-task']),
@@ -224,8 +224,8 @@ def test_verify_payload():
'sink-task']),
("pr_event_tests_affected.json", True, {"resources/testharness.js"},
['lint',
- 'resources/ tests (Python 3.7)',
- 'resources/ tests (Python 3.11)',
+ 'resources/ tests (Python 3.8)',
+ 'resources/ tests (Python 3.12)',
'download-firefox-nightly',
'infrastructure/ tests',
'sink-task']),
diff --git a/testing/web-platform/tests/tools/ci/update_built.py b/testing/web-platform/tests/tools/ci/update_built.py
index 8e0f18589d..929b09f9fe 100644
--- a/testing/web-platform/tests/tools/ci/update_built.py
+++ b/testing/web-platform/tests/tools/ci/update_built.py
@@ -9,6 +9,7 @@ logger = logging.getLogger()
wpt_root = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir))
+# These paths should be kept in sync with job_path_map in jobs.py.
scripts = {
"canvas": ["html/canvas/tools/gentest.py"],
"conformance-checkers": ["conformance-checkers/tools/dl.py",
diff --git a/testing/web-platform/tests/tools/manifest/item.py b/testing/web-platform/tests/tools/manifest/item.py
index 86f7bd6020..e25f7ca2c2 100644
--- a/testing/web-platform/tests/tools/manifest/item.py
+++ b/testing/web-platform/tests/tools/manifest/item.py
@@ -279,7 +279,7 @@ class PrintRefTest(RefTest):
@property
def page_ranges(self) -> PageRanges:
- return self._extras.get("page_ranges", {})
+ return cast(PageRanges, self._extras.get("page_ranges", {}))
def to_json(self): # type: ignore
rv = super().to_json()
diff --git a/testing/web-platform/tests/tools/manifest/requirements.txt b/testing/web-platform/tests/tools/manifest/requirements.txt
index d7c173723e..70ad0df0e9 100644
--- a/testing/web-platform/tests/tools/manifest/requirements.txt
+++ b/testing/web-platform/tests/tools/manifest/requirements.txt
@@ -1 +1 @@
-zstandard==0.21.0
+zstandard==0.22.0
diff --git a/testing/web-platform/tests/tools/manifest/sourcefile.py b/testing/web-platform/tests/tools/manifest/sourcefile.py
index 71eab54bea..3563fb9e5e 100644
--- a/testing/web-platform/tests/tools/manifest/sourcefile.py
+++ b/testing/web-platform/tests/tools/manifest/sourcefile.py
@@ -4,8 +4,8 @@ import os
from collections import deque
from fnmatch import fnmatch
from io import BytesIO
-from typing import (Any, BinaryIO, Callable, Deque, Dict, Iterable, List, Optional, Pattern,
- Set, Text, Tuple, Union, cast)
+from typing import (Any, BinaryIO, Callable, Deque, Dict, Iterable, List,
+ Optional, Pattern, Set, Text, Tuple, TypedDict, Union, cast)
from urllib.parse import urljoin
try:
@@ -68,7 +68,13 @@ def read_script_metadata(f: BinaryIO, regexp: Pattern[bytes]) -> Iterable[Tuple[
yield (m.groups()[0].decode("utf8"), m.groups()[1].decode("utf8"))
-_any_variants: Dict[Text, Dict[Text, Any]] = {
+class VariantData(TypedDict, total=False):
+ suffix: str
+ force_https: bool
+ longhand: Set[str]
+
+
+_any_variants: Dict[Text, VariantData] = {
"window": {"suffix": ".any.html"},
"window-module": {},
"serviceworker": {"force_https": True},
@@ -205,9 +211,11 @@ class SourceFile:
type_flag = None
if "-" in name:
- type_flag = name.rsplit("-", 1)[1].split(".")[0]
-
- meta_flags = name.split(".")[1:]
+ type_meta = name.rsplit("-", 1)[1].split(".")
+ type_flag = type_meta[0]
+ meta_flags = type_meta[1:]
+ else:
+ meta_flags = name.split(".")[1:]
self.tests_root: Text = tests_root
self.rel_path: Text = rel_path
diff --git a/testing/web-platform/tests/tools/mypy.ini b/testing/web-platform/tests/tools/mypy.ini
index 1e58e9625e..cc22a770b0 100644
--- a/testing/web-platform/tests/tools/mypy.ini
+++ b/testing/web-platform/tests/tools/mypy.ini
@@ -57,9 +57,6 @@ ignore_missing_imports = True
[mypy-marionette_driver.*]
ignore_missing_imports = True
-[mypy-mod_pywebsocket.*]
-ignore_missing_imports = True
-
[mypy-mozcrash.*]
ignore_missing_imports = True
@@ -108,6 +105,9 @@ ignore_missing_imports = True
[mypy-pytest.*]
ignore_missing_imports = True
+[mypy-pywebsocket3.*]
+ignore_missing_imports = True
+
[mypy-selenium.*]
ignore_missing_imports = True
diff --git a/testing/web-platform/tests/tools/pytest.ini b/testing/web-platform/tests/tools/pytest.ini
index 81666e01db..650d07caf3 100644
--- a/testing/web-platform/tests/tools/pytest.ini
+++ b/testing/web-platform/tests/tools/pytest.ini
@@ -15,7 +15,7 @@ filterwarnings =
# ignore mozinfo deprecation warnings
ignore:distutils Version classes are deprecated\. Use packaging\.version instead\.:DeprecationWarning:mozinfo
# ingore mozinfo's dependency on distro
- ignore:distro\.linux_distribution\(\) is deprecated\. It should only be used as a compatibility shim with Python's platform\.linux_distribution\(\)\. Please use distro\.id\(\), distro\.version\(\) and distro\.name\(\) instead\.:DeprecationWarning
+ ignore:distro\.linux_distribution\(\) is deprecated\. It should only be used as a compatibility shim with Python\'s platform\.linux_distribution\(\)\. Please use distro\.id\(\), distro\.version\(\) and distro\.name\(\) instead\.:DeprecationWarning
# ignore mozversion deprecation warnings
ignore:This method will be removed in .*\.\s+Use 'parser\.read_file\(\)' instead\.:DeprecationWarning:mozversion
# ignore mozversion not cleanly closing .ini files
@@ -32,3 +32,8 @@ filterwarnings =
always:the imp module is deprecated in favour of importlib:DeprecationWarning
# https://github.com/web-platform-tests/wpt/issues/39827
always:pkg_resources is deprecated as an API:DeprecationWarning
+ # taskcluster and jsone use datetime.utcnow()
+ ignore:datetime\.datetime\.utcnow\(\) is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC:DeprecationWarning:jsone
+ ignore:datetime\.datetime\.utcnow\(\) is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC:DeprecationWarning:taskcluster
+ # mozfile not yet updated to pass a filter argument to tarfile.extract
+ ignore:Python 3\.14 will, by default, filter extracted tar archives and reject files or modify their metadata\. Use the filter argument to control this behavior\.:DeprecationWarning
diff --git a/testing/web-platform/tests/tools/requirements_flake8.txt b/testing/web-platform/tests/tools/requirements_flake8.txt
index fc1f92a69f..3f7f3121ca 100644
--- a/testing/web-platform/tests/tools/requirements_flake8.txt
+++ b/testing/web-platform/tests/tools/requirements_flake8.txt
@@ -1,7 +1,5 @@
flake8==5.0.4; python_version < '3.9'
-pycodestyle==2.9.1; python_version < '3.8'
-pyflakes==2.5.0; python_version < '3.8'
flake8==6.1.0; python_version >= '3.9'
-pycodestyle==2.11.0; python_version >= '3.9'
+pycodestyle==2.11.1; python_version >= '3.9'
pyflakes==3.1.0; python_version >= '3.9'
pep8-naming==0.13.3
diff --git a/testing/web-platform/tests/tools/requirements_mypy.txt b/testing/web-platform/tests/tools/requirements_mypy.txt
index c3db2292af..3b1d3b03d6 100644
--- a/testing/web-platform/tests/tools/requirements_mypy.txt
+++ b/testing/web-platform/tests/tools/requirements_mypy.txt
@@ -1,14 +1,14 @@
-mypy==1.4.1
+mypy==1.10.0
mypy-extensions==1.0.0
toml==0.10.2
tomli==2.0.1
typed-ast==1.5.5
types-atomicwrites==1.4.5.1
-types-python-dateutil==2.8.19.14
+types-python-dateutil==2.9.0.20240316
types-PyYAML==6.0.12.12
types-requests==2.31.0.20231231
-types-setuptools==68.0.0.3
-types-six==1.16.21.9
+types-setuptools==69.5.0.20240423
+types-six==1.16.21.20240425
types-ujson==5.9.0.0
types-urllib3==1.26.25.14
typing_extensions==4.7.1
diff --git a/testing/web-platform/tests/tools/requirements_pytest.txt b/testing/web-platform/tests/tools/requirements_pytest.txt
index 9034cda719..64d38583a2 100644
--- a/testing/web-platform/tests/tools/requirements_pytest.txt
+++ b/testing/web-platform/tests/tools/requirements_pytest.txt
@@ -1,3 +1,3 @@
pytest==7.4.4
pytest-cov==4.1.0
-hypothesis==6.78.2
+hypothesis==6.100.2
diff --git a/testing/web-platform/tests/tools/requirements_tests.txt b/testing/web-platform/tests/tools/requirements_tests.txt
index 6455286736..24785f3531 100644
--- a/testing/web-platform/tests/tools/requirements_tests.txt
+++ b/testing/web-platform/tests/tools/requirements_tests.txt
@@ -1,6 +1,6 @@
-httpx[http2]==0.24.1
-json-e==4.5.3
+httpx[http2]==0.27.0
+json-e==4.7.0
jsonschema==4.17.3
pyyaml==6.0.1
-taskcluster==60.4.1
+taskcluster==64.2.7
mozterm==1.0.0
diff --git a/testing/web-platform/tests/tools/serve/serve.py b/testing/web-platform/tests/tools/serve/serve.py
index 300f8270a6..42d8091802 100644
--- a/testing/web-platform/tests/tools/serve/serve.py
+++ b/testing/web-platform/tests/tools/serve/serve.py
@@ -30,7 +30,7 @@ from wptserve import config
from wptserve.handlers import filesystem_path, wrap_pipeline
from wptserve.response import ResponseHeaders
from wptserve.utils import get_port, HTTPException, http2_compatible
-from mod_pywebsocket import standalone as pywebsocket
+from pywebsocket3 import standalone as pywebsocket
EDIT_HOSTS_HELP = ("Please ensure all the necessary WPT subdomains "
@@ -829,7 +829,8 @@ def start_http_server(logger, host, port, paths, routes, bind_address, config, *
key_file=None,
certificate=None,
latency=kwargs.get("latency"))
- except Exception:
+ except Exception as error:
+ logger.critical(f"start_http_server: Caught exception from wptserve.WebTestHttpd: {error}")
startup_failed(logger)
@@ -847,7 +848,8 @@ def start_https_server(logger, host, port, paths, routes, bind_address, config,
certificate=config.ssl_config["cert_path"],
encrypt_after_connect=config.ssl_config["encrypt_after_connect"],
latency=kwargs.get("latency"))
- except Exception:
+ except Exception as error:
+ logger.critical(f"start_https_server: Caught exception from wptserve.WebTestHttpd: {error}")
startup_failed(logger)
@@ -868,7 +870,8 @@ def start_http2_server(logger, host, port, paths, routes, bind_address, config,
encrypt_after_connect=config.ssl_config["encrypt_after_connect"],
latency=kwargs.get("latency"),
http2=True)
- except Exception:
+ except Exception as error:
+ logger.critical(f"start_http2_server: Caught exception from wptserve.WebTestHttpd: {error}")
startup_failed(logger)
@@ -935,7 +938,8 @@ def start_ws_server(logger, host, port, paths, routes, bind_address, config, **k
config.paths["ws_doc_root"],
bind_address,
ssl_config=None)
- except Exception:
+ except Exception as error:
+ logger.critical(f"start_ws_server: Caught exception from WebSocketDomain: {error}")
startup_failed(logger)
@@ -947,7 +951,8 @@ def start_wss_server(logger, host, port, paths, routes, bind_address, config, **
config.paths["ws_doc_root"],
bind_address,
config.ssl_config)
- except Exception:
+ except Exception as error:
+ logger.critical(f"start_wss_server: Caught exception from WebSocketDomain: {error}")
startup_failed(logger)
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/.gitignore b/testing/web-platform/tests/tools/third_party/pywebsocket3/.gitignore
deleted file mode 100644
index 70f2867054..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-*.pyc
-build/
-*.egg-info/
-dist/
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/.travis.yml b/testing/web-platform/tests/tools/third_party/pywebsocket3/.travis.yml
deleted file mode 100644
index 2065a644dd..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/.travis.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-language: python
-python:
- - 2.7
- - 3.5
- - 3.6
- - 3.7
- - 3.8
- - nightly
-
-matrix:
- allow_failures:
- - python: 3.5, nightly
-install:
- - pip install six yapf
-script:
- - python test/run_all.py
- - yapf --diff --recursive .
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/CONTRIBUTING b/testing/web-platform/tests/tools/third_party/pywebsocket3/CONTRIBUTING
deleted file mode 100644
index f975be126f..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/CONTRIBUTING
+++ /dev/null
@@ -1,30 +0,0 @@
-# How to Contribute
-
-We'd love to accept your patches and contributions to this project. There are
-just a few small guidelines you need to follow.
-
-## Contributor License Agreement
-
-Contributions to this project must be accompanied by a Contributor License
-Agreement. You (or your employer) retain the copyright to your contribution;
-this simply gives us permission to use and redistribute your contributions as
-part of the project. Head over to <https://cla.developers.google.com/> to see
-your current agreements on file or to sign a new one.
-
-You generally only need to submit a CLA once, so if you've already submitted one
-(even if it was for a different project), you probably don't need to do it
-again.
-
-## Code reviews
-
-All submissions, including submissions by project members, require review. We
-use GitHub pull requests for this purpose. Consult
-[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
-information on using pull requests.
-For instructions for contributing code, please read:
-https://github.com/google/pywebsocket/wiki/CodeReviewInstruction
-
-## Community Guidelines
-
-This project follows
-[Google's Open Source Community Guidelines](https://opensource.google/conduct/).
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/MANIFEST.in b/testing/web-platform/tests/tools/third_party/pywebsocket3/MANIFEST.in
index 19256882c5..116235d18f 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/MANIFEST.in
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/MANIFEST.in
@@ -2,5 +2,5 @@ include COPYING
include MANIFEST.in
include README
recursive-include example *.py
-recursive-include mod_pywebsocket *.py
+recursive-include pywebsocket3 *.py
recursive-include test *.py
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/PKG-INFO b/testing/web-platform/tests/tools/third_party/pywebsocket3/PKG-INFO
new file mode 100644
index 0000000000..289dfa8649
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/PKG-INFO
@@ -0,0 +1,13 @@
+Metadata-Version: 2.1
+Name: pywebsocket3
+Version: 4.0.2
+Summary: Standalone WebSocket Server for testing purposes.
+Home-page: https://github.com/GoogleChromeLabs/pywebsocket3
+Author: Yuzo Fujishima
+Author-email: yuzo@chromium.org
+License: See LICENSE
+Requires-Python: >=2.7
+License-File: LICENSE
+Requires-Dist: six
+
+pywebsocket3 is a standalone server for the WebSocket Protocol (RFC 6455). See pywebsocket3/__init__.py for more detail.
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/README.md b/testing/web-platform/tests/tools/third_party/pywebsocket3/README.md
index 8684f2cc7e..b46b416735 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/README.md
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/README.md
@@ -1,13 +1,14 @@
# pywebsocket3 #
-The pywebsocket project aims to provide a [WebSocket](https://tools.ietf.org/html/rfc6455) standalone server.
+The pywebsocket3 project aims to provide a [WebSocket](https://tools.ietf.org/html/rfc6455) standalone server.
pywebsocket is intended for **testing** or **experimental** purposes.
Run this to read the general document:
-```
-$ pydoc mod_pywebsocket
+
+```bash
+pydoc pywebsocket3
```
Please see [Wiki](https://github.com/GoogleChromeLabs/pywebsocket3/wiki) for more details.
@@ -15,22 +16,27 @@ Please see [Wiki](https://github.com/GoogleChromeLabs/pywebsocket3/wiki) for mor
# INSTALL #
To install this package to the system, run this:
-```
-$ python setup.py build
-$ sudo python setup.py install
+
+```bash
+python setup.py build
+sudo python setup.py install
```
To install this package as a normal user, run this instead:
+```bash
+python setup.py build
+python setup.py install --user
```
-$ python setup.py build
-$ python setup.py install --user
-```
+
# LAUNCH #
To use pywebsocket as standalone server, run this to read the document:
+
+```bash
+pydoc pywebsocket3.standalone
```
-$ pydoc mod_pywebsocket.standalone
-```
+
# Disclaimer #
+
This is not an officially supported Google product
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_handshake_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_handshake_wsh.py
index 1b719ca897..1bad8c02f2 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_handshake_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_handshake_wsh.py
@@ -28,7 +28,8 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
-from mod_pywebsocket import handshake
+
+from pywebsocket3 import handshake
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_wsh.py
index d4c240bf2c..c0495c7107 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/abort_wsh.py
@@ -28,7 +28,8 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
-from mod_pywebsocket import handshake
+
+from pywebsocket3 import handshake
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/arraybuffer_benchmark.html b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/arraybuffer_benchmark.html
deleted file mode 100644
index 869cd7e1ee..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/arraybuffer_benchmark.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<!--
-Copyright 2013, Google Inc.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
- * Neither the name of Google Inc. nor the names of its
-contributors may be used to endorse or promote products derived from
-this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--->
-
-<html>
-<head>
-<title>ArrayBuffer benchmark</title>
-<script src="util.js"></script>
-<script>
-var PRINT_SIZE = true;
-
-// Initial size of arrays.
-var START_SIZE = 10 * 1024;
-// Stops benchmark when the size of an array exceeds this threshold.
-var STOP_THRESHOLD = 100000 * 1024;
-// If the size of each array is small, write/read the array multiple times
-// until the sum of sizes reaches this threshold.
-var MIN_TOTAL = 100000 * 1024;
-var MULTIPLIERS = [5, 2];
-
-// Repeat benchmark for several times to measure performance of optimized
-// (such as JIT) run.
-var REPEAT_FOR_WARMUP = 3;
-
-function writeBenchmark(size, minTotal) {
- var totalSize = 0;
- while (totalSize < minTotal) {
- var arrayBuffer = new ArrayBuffer(size);
-
- // Write 'a's.
- fillArrayBuffer(arrayBuffer, 0x61);
-
- totalSize += size;
- }
- return totalSize;
-}
-
-function readBenchmark(size, minTotal) {
- var totalSize = 0;
- while (totalSize < minTotal) {
- var arrayBuffer = new ArrayBuffer(size);
-
- if (!verifyArrayBuffer(arrayBuffer, 0x00)) {
- queueLog('Verification failed');
- return -1;
- }
-
- totalSize += size;
- }
- return totalSize;
-}
-
-function runBenchmark(benchmarkFunction,
- size,
- stopThreshold,
- minTotal,
- multipliers,
- multiplierIndex) {
- while (size <= stopThreshold) {
- var maxSpeed = 0;
-
- for (var i = 0; i < REPEAT_FOR_WARMUP; ++i) {
- var startTimeInMs = getTimeStamp();
-
- var totalSize = benchmarkFunction(size, minTotal);
-
- maxSpeed = Math.max(maxSpeed,
- calculateSpeedInKB(totalSize, startTimeInMs));
- }
- queueLog(formatResultInKiB(size, maxSpeed, PRINT_SIZE));
-
- size *= multipliers[multiplierIndex];
- multiplierIndex = (multiplierIndex + 1) % multipliers.length;
- }
-}
-
-function runBenchmarks() {
- queueLog('Message size in KiB, Speed in kB/s');
-
- queueLog('Write benchmark');
- runBenchmark(
- writeBenchmark, START_SIZE, STOP_THRESHOLD, MIN_TOTAL, MULTIPLIERS, 0);
- queueLog('Finished');
-
- queueLog('Read benchmark');
- runBenchmark(
- readBenchmark, START_SIZE, STOP_THRESHOLD, MIN_TOTAL, MULTIPLIERS, 0);
- addToLog('Finished');
-}
-
-function init() {
- logBox = document.getElementById('log');
-
- queueLog(window.navigator.userAgent.toLowerCase());
-
- addToLog('Started...');
-
- setTimeout(runBenchmarks, 0);
-}
-
-</script>
-</head>
-<body onload="init()">
-<textarea
- id="log" rows="50" style="width: 100%" readonly></textarea>
-</body>
-</html>
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/bench_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/bench_wsh.py
index 2df50e77db..9ea2f93159 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/bench_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/bench_wsh.py
@@ -35,7 +35,9 @@ value. <count> must be an integer value.
"""
from __future__ import absolute_import
+
import time
+
from six.moves import range
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.html b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.html
deleted file mode 100644
index f1e5c97b3a..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.html
+++ /dev/null
@@ -1,175 +0,0 @@
-<!--
-Copyright 2013, Google Inc.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
- * Neither the name of Google Inc. nor the names of its
-contributors may be used to endorse or promote products derived from
-this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--->
-
-<html>
-<head>
-<title>WebSocket benchmark</title>
-<script src="util_main.js"></script>
-<script src="util.js"></script>
-<script src="benchmark.js"></script>
-<script>
-var addressBox = null;
-
-function getConfig() {
- return {
- prefixUrl: addressBox.value,
- printSize: getBoolFromCheckBox('printsize'),
- numSockets: getIntFromInput('numsockets'),
- // Initial size of messages.
- numIterations: getIntFromInput('numiterations'),
- numWarmUpIterations: getIntFromInput('numwarmupiterations'),
- startSize: getIntFromInput('startsize'),
- // Stops benchmark when the size of message exceeds this threshold.
- stopThreshold: getIntFromInput('stopthreshold'),
- // If the size of each message is small, send/receive multiple messages
- // until the sum of sizes reaches this threshold.
- minTotal: getIntFromInput('mintotal'),
- multipliers: getFloatArrayFromInput('multipliers'),
- verifyData: getBoolFromCheckBox('verifydata'),
- addToLog: addToLog,
- addToSummary: addToSummary,
- measureValue: measureValue,
- notifyAbort: notifyAbort
- };
-}
-
-function onSendBenchmark() {
- var config = getConfig();
- doAction(config, getBoolFromCheckBox('worker'), 'sendBenchmark');
-}
-
-function onReceiveBenchmark() {
- var config = getConfig();
- doAction(config, getBoolFromCheckBox('worker'), 'receiveBenchmark');
-}
-
-function onBatchBenchmark() {
- var config = getConfig();
- doAction(config, getBoolFromCheckBox('worker'), 'batchBenchmark');
-}
-
-function onStop() {
- var config = getConfig();
- doAction(config, getBoolFromCheckBox('worker'), 'stop');
-}
-
-function init() {
- addressBox = document.getElementById('address');
- logBox = document.getElementById('log');
-
- summaryBox = document.getElementById('summary');
-
- var scheme = window.location.protocol == 'https:' ? 'wss://' : 'ws://';
- var defaultAddress = scheme + window.location.host + '/benchmark_helper';
-
- addressBox.value = defaultAddress;
-
- addToLog(window.navigator.userAgent.toLowerCase());
- addToSummary(window.navigator.userAgent.toLowerCase());
-
- if (!('WebSocket' in window)) {
- addToLog('WebSocket is not available');
- }
-
- initWorker('');
-}
-</script>
-</head>
-<body onload="init()">
-
-<div id="benchmark_div">
- url <input type="text" id="address" size="40">
- <input type="button" value="send" onclick="onSendBenchmark()">
- <input type="button" value="receive" onclick="onReceiveBenchmark()">
- <input type="button" value="batch" onclick="onBatchBenchmark()">
- <input type="button" value="stop" onclick="onStop()">
-
- <br/>
-
- <input type="checkbox" id="printsize" checked>
- <label for="printsize">Print size and time per message</label>
- <input type="checkbox" id="verifydata" checked>
- <label for="verifydata">Verify data</label>
- <input type="checkbox" id="worker">
- <label for="worker">Run on worker</label>
-
- <br/>
-
- Parameters:
-
- <br/>
-
- <table>
- <tr>
- <td>Num sockets</td>
- <td><input type="text" id="numsockets" value="1"></td>
- </tr>
- <tr>
- <td>Number of iterations</td>
- <td><input type="text" id="numiterations" value="1"></td>
- </tr>
- <tr>
- <td>Number of warm-up iterations</td>
- <td><input type="text" id="numwarmupiterations" value="0"></td>
- </tr>
- <tr>
- <td>Start size</td>
- <td><input type="text" id="startsize" value="10240"></td>
- </tr>
- <tr>
- <td>Stop threshold</td>
- <td><input type="text" id="stopthreshold" value="102400000"></td>
- </tr>
- <tr>
- <td>Minimum total</td>
- <td><input type="text" id="mintotal" value="102400000"></td>
- </tr>
- <tr>
- <td>Multipliers</td>
- <td><input type="text" id="multipliers" value="5, 2"></td>
- </tr>
- </table>
-</div>
-
-<div id="log_div">
- <textarea
- id="log" rows="20" style="width: 100%" readonly></textarea>
-</div>
-<div id="summary_div">
- Summary
- <textarea
- id="summary" rows="20" style="width: 100%" readonly></textarea>
-</div>
-
-Note: Effect of RTT is not eliminated.
-
-</body>
-</html>
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.js b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.js
deleted file mode 100644
index 2701472a4f..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark.js
+++ /dev/null
@@ -1,238 +0,0 @@
-// Copyright 2014, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-if (typeof importScripts !== "undefined") {
- // Running on a worker
- importScripts('util.js', 'util_worker.js');
-}
-
-// Namespace for holding globals.
-var benchmark = {startTimeInMs: 0};
-
-var sockets = [];
-var numEstablishedSockets = 0;
-
-var timerID = null;
-
-function destroySocket(socket) {
- socket.onopen = null;
- socket.onmessage = null;
- socket.onerror = null;
- socket.onclose = null;
- socket.close();
-}
-
-function destroyAllSockets() {
- for (var i = 0; i < sockets.length; ++i) {
- destroySocket(sockets[i]);
- }
- sockets = [];
-}
-
-function sendBenchmarkStep(size, config, isWarmUp) {
- timerID = null;
-
- var totalSize = 0;
- var totalReplied = 0;
-
- var onMessageHandler = function(event) {
- if (!verifyAcknowledgement(config, event.data, size)) {
- destroyAllSockets();
- config.notifyAbort();
- return;
- }
-
- totalReplied += size;
-
- if (totalReplied < totalSize) {
- return;
- }
-
- calculateAndLogResult(config, size, benchmark.startTimeInMs, totalSize,
- isWarmUp);
-
- runNextTask(config);
- };
-
- for (var i = 0; i < sockets.length; ++i) {
- var socket = sockets[i];
- socket.onmessage = onMessageHandler;
- }
-
- var dataArray = [];
-
- while (totalSize < config.minTotal) {
- var buffer = new ArrayBuffer(size);
-
- fillArrayBuffer(buffer, 0x61);
-
- dataArray.push(buffer);
- totalSize += size;
- }
-
- benchmark.startTimeInMs = getTimeStamp();
-
- totalSize = 0;
-
- var socketIndex = 0;
- var dataIndex = 0;
- while (totalSize < config.minTotal) {
- var command = ['send'];
- command.push(config.verifyData ? '1' : '0');
- sockets[socketIndex].send(command.join(' '));
- sockets[socketIndex].send(dataArray[dataIndex]);
- socketIndex = (socketIndex + 1) % sockets.length;
-
- totalSize += size;
- ++dataIndex;
- }
-}
-
-function receiveBenchmarkStep(size, config, isWarmUp) {
- timerID = null;
-
- var totalSize = 0;
- var totalReplied = 0;
-
- var onMessageHandler = function(event) {
- var bytesReceived = event.data.byteLength;
- if (bytesReceived != size) {
- config.addToLog('Expected ' + size + 'B but received ' +
- bytesReceived + 'B');
- destroyAllSockets();
- config.notifyAbort();
- return;
- }
-
- if (config.verifyData && !verifyArrayBuffer(event.data, 0x61)) {
- config.addToLog('Response verification failed');
- destroyAllSockets();
- config.notifyAbort();
- return;
- }
-
- totalReplied += bytesReceived;
-
- if (totalReplied < totalSize) {
- return;
- }
-
- calculateAndLogResult(config, size, benchmark.startTimeInMs, totalSize,
- isWarmUp);
-
- runNextTask(config);
- };
-
- for (var i = 0; i < sockets.length; ++i) {
- var socket = sockets[i];
- socket.binaryType = 'arraybuffer';
- socket.onmessage = onMessageHandler;
- }
-
- benchmark.startTimeInMs = getTimeStamp();
-
- var socketIndex = 0;
- while (totalSize < config.minTotal) {
- sockets[socketIndex].send('receive ' + size);
- socketIndex = (socketIndex + 1) % sockets.length;
-
- totalSize += size;
- }
-}
-
-function createSocket(config) {
- // TODO(tyoshino): Add TCP warm up.
- var url = config.prefixUrl;
-
- config.addToLog('Connect ' + url);
-
- var socket = new WebSocket(url);
- socket.onmessage = function(event) {
- config.addToLog('Unexpected message received. Aborting.');
- };
- socket.onerror = function() {
- config.addToLog('Error');
- };
- socket.onclose = function(event) {
- config.addToLog('Closed');
- config.notifyAbort();
- };
- return socket;
-}
-
-function startBenchmark(config) {
- clearTimeout(timerID);
- destroyAllSockets();
-
- numEstablishedSockets = 0;
-
- for (var i = 0; i < config.numSockets; ++i) {
- var socket = createSocket(config);
- socket.onopen = function() {
- config.addToLog('Opened');
-
- ++numEstablishedSockets;
-
- if (numEstablishedSockets == sockets.length) {
- runNextTask(config);
- }
- };
- sockets.push(socket);
- }
-}
-
-function getConfigString(config) {
- return '(WebSocket' +
- ', ' + (typeof importScripts !== "undefined" ? 'Worker' : 'Main') +
- ', numSockets=' + config.numSockets +
- ', numIterations=' + config.numIterations +
- ', verifyData=' + config.verifyData +
- ', minTotal=' + config.minTotal +
- ', numWarmUpIterations=' + config.numWarmUpIterations +
- ')';
-}
-
-function batchBenchmark(config) {
- config.addToLog('Batch benchmark');
- config.addToLog(buildLegendString(config));
-
- tasks = [];
- clearAverageData();
- addTasks(config, sendBenchmarkStep);
- addResultReportingTask(config, 'Send Benchmark ' + getConfigString(config));
- addTasks(config, receiveBenchmarkStep);
- addResultReportingTask(config, 'Receive Benchmark ' +
- getConfigString(config));
- startBenchmark(config);
-}
-
-function cleanup() {
- destroyAllSockets();
-}
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark_helper_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark_helper_wsh.py
index fc17533335..9ea9f56422 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark_helper_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/benchmark_helper_wsh.py
@@ -27,7 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""Handler for benchmark.html."""
+
from __future__ import absolute_import
+
import six
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/close_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/close_wsh.py
index 8f0005ffea..2463bc7b31 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/close_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/close_wsh.py
@@ -28,10 +28,8 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
-import struct
-from mod_pywebsocket import common
-from mod_pywebsocket import stream
+from pywebsocket3 import common
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/console.html b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/console.html
deleted file mode 100644
index ccd6d8f806..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/console.html
+++ /dev/null
@@ -1,317 +0,0 @@
-<!--
-Copyright 2011, Google Inc.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
- * Neither the name of Google Inc. nor the names of its
-contributors may be used to endorse or promote products derived from
-this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--->
-
-<!--
-A simple console for testing WebSocket server.
-
-Type an address into the top text input and click connect to establish
-WebSocket. Then, type some message into the bottom text input and click send
-to send the message. Received/sent messages and connection state will be shown
-on the middle textarea.
--->
-
-<html>
-<head>
-<title>WebSocket console</title>
-<script>
-var socket = null;
-
-var showTimeStamp = false;
-
-var addressBox = null;
-var protocolsBox = null;
-var logBox = null;
-var messageBox = null;
-var fileBox = null;
-var codeBox = null;
-var reasonBox = null;
-
-function getTimeStamp() {
- return new Date().getTime();
-}
-
-function addToLog(log) {
- if (showTimeStamp) {
- logBox.value += '[' + getTimeStamp() + '] ';
- }
- logBox.value += log + '\n'
- // Large enough to keep showing the latest message.
- logBox.scrollTop = 1000000;
-}
-
-function setbinarytype(binaryType) {
- if (!socket) {
- addToLog('Not connected');
- return;
- }
-
- socket.binaryType = binaryType;
- addToLog('Set binaryType to ' + binaryType);
-}
-
-function send() {
- if (!socket) {
- addToLog('Not connected');
- return;
- }
-
- socket.send(messageBox.value);
- addToLog('> ' + messageBox.value);
- messageBox.value = '';
-}
-
-function sendfile() {
- if (!socket) {
- addToLog('Not connected');
- return;
- }
-
- var files = fileBox.files;
-
- if (files.length == 0) {
- addToLog('File not selected');
- return;
- }
-
- socket.send(files[0]);
- addToLog('> Send ' + files[0].name);
-}
-
-function parseProtocols(protocolsText) {
- var protocols = protocolsText.split(',');
- for (var i = 0; i < protocols.length; ++i) {
- protocols[i] = protocols[i].trim();
- }
-
- if (protocols.length == 0) {
- // Don't pass.
- protocols = null;
- } else if (protocols.length == 1) {
- if (protocols[0].length == 0) {
- // Don't pass.
- protocols = null;
- } else {
- // Pass as a string.
- protocols = protocols[0];
- }
- }
-
- return protocols;
-}
-
-function connect() {
- var url = addressBox.value;
- var protocols = parseProtocols(protocolsBox.value);
-
- if ('WebSocket' in window) {
- if (protocols) {
- socket = new WebSocket(url, protocols);
- } else {
- socket = new WebSocket(url);
- }
- } else {
- return;
- }
-
- socket.onopen = function () {
- var extraInfo = [];
- if (('protocol' in socket) && socket.protocol) {
- extraInfo.push('protocol = ' + socket.protocol);
- }
- if (('extensions' in socket) && socket.extensions) {
- extraInfo.push('extensions = ' + socket.extensions);
- }
-
- var logMessage = 'Opened';
- if (extraInfo.length > 0) {
- logMessage += ' (' + extraInfo.join(', ') + ')';
- }
- addToLog(logMessage);
- };
- socket.onmessage = function (event) {
- if (('ArrayBuffer' in window) && (event.data instanceof ArrayBuffer)) {
- addToLog('< Received an ArrayBuffer of ' + event.data.byteLength +
- ' bytes')
- } else if (('Blob' in window) && (event.data instanceof Blob)) {
- addToLog('< Received a Blob of ' + event.data.size + ' bytes')
- } else {
- addToLog('< ' + event.data);
- }
- };
- socket.onerror = function () {
- addToLog('Error');
- };
- socket.onclose = function (event) {
- var logMessage = 'Closed (';
- if ((arguments.length == 1) && ('CloseEvent' in window) &&
- (event instanceof CloseEvent)) {
- logMessage += 'wasClean = ' + event.wasClean;
- // code and reason are present only for
- // draft-ietf-hybi-thewebsocketprotocol-06 and later
- if ('code' in event) {
- logMessage += ', code = ' + event.code;
- }
- if ('reason' in event) {
- logMessage += ', reason = ' + event.reason;
- }
- } else {
- logMessage += 'CloseEvent is not available';
- }
- addToLog(logMessage + ')');
- };
-
- if (protocols) {
- addToLog('Connect ' + url + ' (protocols = ' + protocols + ')');
- } else {
- addToLog('Connect ' + url);
- }
-}
-
-function closeSocket() {
- if (!socket) {
- addToLog('Not connected');
- return;
- }
-
- if (codeBox.value || reasonBox.value) {
- socket.close(codeBox.value, reasonBox.value);
- } else {
- socket.close();
- }
-}
-
-function printState() {
- if (!socket) {
- addToLog('Not connected');
- return;
- }
-
- addToLog(
- 'url = ' + socket.url +
- ', readyState = ' + socket.readyState +
- ', bufferedAmount = ' + socket.bufferedAmount);
-}
-
-function init() {
- var scheme = window.location.protocol == 'https:' ? 'wss://' : 'ws://';
- var defaultAddress = scheme + window.location.host + '/echo';
-
- addressBox = document.getElementById('address');
- protocolsBox = document.getElementById('protocols');
- logBox = document.getElementById('log');
- messageBox = document.getElementById('message');
- fileBox = document.getElementById('file');
- codeBox = document.getElementById('code');
- reasonBox = document.getElementById('reason');
-
- addressBox.value = defaultAddress;
-
- if (!('WebSocket' in window)) {
- addToLog('WebSocket is not available');
- }
-}
-</script>
-<style type="text/css">
-form {
- margin: 0px;
-}
-
-#connect_div, #log_div, #send_div, #sendfile_div, #close_div, #printstate_div {
- padding: 5px;
- margin: 5px;
- border-width: 0px 0px 0px 10px;
- border-style: solid;
- border-color: silver;
-}
-</style>
-</head>
-<body onload="init()">
-
-<div>
-
-<div id="connect_div">
- <form action="#" onsubmit="connect(); return false;">
- url <input type="text" id="address" size="40">
- <input type="submit" value="connect">
- <br/>
- protocols <input type="text" id="protocols" size="20">
- </form>
-</div>
-
-<div id="log_div">
- <textarea id="log" rows="10" cols="40" readonly></textarea>
- <br/>
- <input type="checkbox"
- name="showtimestamp"
- value="showtimestamp"
- onclick="showTimeStamp = this.checked">Show time stamp
-</div>
-
-<div id="send_div">
- <form action="#" onsubmit="send(); return false;">
- data <input type="text" id="message" size="40">
- <input type="submit" value="send">
- </form>
-</div>
-
-<div id="sendfile_div">
- <form action="#" onsubmit="sendfile(); return false;">
- <input type="file" id="file" size="40">
- <input type="submit" value="send file">
- </form>
-
- Set binaryType
- <input type="radio"
- name="binarytype"
- value="blob"
- onclick="setbinarytype('blob')" checked>blob
- <input type="radio"
- name="binarytype"
- value="arraybuffer"
- onclick="setbinarytype('arraybuffer')">arraybuffer
-</div>
-
-<div id="close_div">
- <form action="#" onsubmit="closeSocket(); return false;">
- code <input type="text" id="code" size="10">
- reason <input type="text" id="reason" size="20">
- <input type="submit" value="close">
- </form>
-</div>
-
-<div id="printstate_div">
- <input type="button" value="print state" onclick="printState();">
-</div>
-
-</div>
-
-</body>
-</html>
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/cookie_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/cookie_wsh.py
index 815209694e..1ca2c84386 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/cookie_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/cookie_wsh.py
@@ -27,6 +27,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
+
from six.moves import urllib
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/echo_client.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/echo_client.py
index 2ed60b3b59..5063f00a51 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/echo_client.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/echo_client.py
@@ -30,13 +30,13 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""Simple WebSocket client named echo_client just because of historical reason.
-mod_pywebsocket directory must be in PYTHONPATH.
+pywebsocket3 directory must be in PYTHONPATH.
Example Usage:
# server setup
- % cd $pywebsocket
- % PYTHONPATH=$cwd/src python ./mod_pywebsocket/standalone.py -p 8880 \
+ % cd $pywebsocket3
+ % PYTHONPATH=$cwd/src python ./pywebsocket3/standalone.py -p 8880 \
-d $cwd/src/example
# run client
@@ -47,27 +47,27 @@ Example Usage:
from __future__ import absolute_import
from __future__ import print_function
+
+import argparse
import base64
import codecs
-from hashlib import sha1
import logging
-import argparse
import os
-import random
import re
-import six
import socket
import ssl
-import struct
import sys
+from hashlib import sha1
+
+import six
-from mod_pywebsocket import common
-from mod_pywebsocket.extensions import PerMessageDeflateExtensionProcessor
-from mod_pywebsocket.extensions import _PerMessageDeflateFramer
-from mod_pywebsocket.extensions import _parse_window_bits
-from mod_pywebsocket.stream import Stream
-from mod_pywebsocket.stream import StreamOptions
-from mod_pywebsocket import util
+from pywebsocket3 import common, util
+from pywebsocket3.extensions import (
+ PerMessageDeflateExtensionProcessor,
+ _PerMessageDeflateFramer,
+ _parse_window_bits,
+)
+from pywebsocket3.stream import Stream, StreamOptions
_TIMEOUT_SEC = 10
_UNDEFINED_PORT = -1
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/handler_map.txt b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/handler_map.txt
deleted file mode 100644
index 21c4c09aa0..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/handler_map.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-# websocket handler map file, used by standalone.py -m option.
-# A line starting with '#' is a comment line.
-# Each line consists of 'alias_resource_path' and 'existing_resource_path'
-# separated by spaces.
-# Aliasing is processed from the top to the bottom of the line, and
-# 'existing_resource_path' must exist before it is aliased.
-# For example,
-# / /echo
-# means that a request to '/' will be handled by handlers for '/echo'.
-/ /echo
-
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/internal_error_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/internal_error_wsh.py
index 04aa684283..cbc0fd294e 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/internal_error_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/internal_error_wsh.py
@@ -28,7 +28,8 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
-from mod_pywebsocket import msgutil
+
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.html b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.html
deleted file mode 100644
index c18b2c08f6..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!--
-Copyright 2020, Google Inc.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
- * Neither the name of Google Inc. nor the names of its
-contributors may be used to endorse or promote products derived from
-this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--->
-
-<!DOCTYPE html>
-<head>
-<script src="util.js"></script>
-<script src="performance_test_iframe.js"></script>
-<script src="benchmark.js"></script>
-</head>
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.js b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.js
deleted file mode 100644
index 270409aa6e..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/performance_test_iframe.js
+++ /dev/null
@@ -1,86 +0,0 @@
-// Copyright 2020, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-function perfTestAddToLog(text) {
- parent.postMessage({'command': 'log', 'value': text}, '*');
-}
-
-function perfTestAddToSummary(text) {
-}
-
-function perfTestMeasureValue(value) {
- parent.postMessage({'command': 'measureValue', 'value': value}, '*');
-}
-
-function perfTestNotifyAbort() {
- parent.postMessage({'command': 'notifyAbort'}, '*');
-}
-
-function getConfigForPerformanceTest(dataType, async,
- verifyData, numIterations,
- numWarmUpIterations) {
-
- return {
- prefixUrl: 'ws://' + location.host + '/benchmark_helper',
- printSize: true,
- numSockets: 1,
- // + 1 is for a warmup iteration by the Telemetry framework.
- numIterations: numIterations + numWarmUpIterations + 1,
- numWarmUpIterations: numWarmUpIterations,
- minTotal: 10240000,
- startSize: 10240000,
- stopThreshold: 10240000,
- multipliers: [2],
- verifyData: verifyData,
- dataType: dataType,
- async: async,
- addToLog: perfTestAddToLog,
- addToSummary: perfTestAddToSummary,
- measureValue: perfTestMeasureValue,
- notifyAbort: perfTestNotifyAbort
- };
-}
-
-var data;
-onmessage = function(message) {
- var action;
- if (message.data.command === 'start') {
- data = message.data;
- initWorker('http://' + location.host);
- action = data.benchmarkName;
- } else {
- action = 'stop';
- }
-
- var config = getConfigForPerformanceTest(data.dataType, data.async,
- data.verifyData,
- data.numIterations,
- data.numWarmUpIterations);
- doAction(config, data.isWorker, action);
-};
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/special_headers.cgi b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/special_headers.cgi
deleted file mode 100755
index 703cb7401b..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/special_headers.cgi
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/python
-
-# Copyright 2014 Google Inc. All rights reserved.
-#
-# Use of this source code is governed by a BSD-style
-# license that can be found in the COPYING file or at
-# https://developers.google.com/open-source/licenses/bsd
-"""CGI script sample for testing effect of HTTP headers on the origin page.
-
-Note that CGI scripts don't work on the standalone pywebsocket running in TLS
-mode.
-"""
-
-print """Content-type: text/html
-Content-Security-Policy: connect-src self
-
-<html>
-<head>
-<title></title>
-</head>
-<body>
-<script>
-var socket = new WebSocket("ws://example.com");
-</script>
-</body>
-</html>"""
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util.js b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util.js
deleted file mode 100644
index 990160cb40..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util.js
+++ /dev/null
@@ -1,323 +0,0 @@
-// Copyright 2013, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-// Utilities for example applications (for both main and worker thread).
-
-var results = {};
-
-function getTimeStamp() {
- return Date.now();
-}
-
-function formatResultInKiB(size, timePerMessageInMs, stddevTimePerMessageInMs,
- speed, printSize) {
- if (printSize) {
- return (size / 1024) +
- '\t' + timePerMessageInMs.toFixed(3) +
- (stddevTimePerMessageInMs == -1 ?
- '' :
- '\t' + stddevTimePerMessageInMs.toFixed(3)) +
- '\t' + speed.toFixed(3);
- } else {
- return speed.toString();
- }
-}
-
-function clearAverageData() {
- results = {};
-}
-
-function reportAverageData(config) {
- config.addToSummary(
- 'Size[KiB]\tAverage time[ms]\tStddev time[ms]\tSpeed[KB/s]');
- for (var size in results) {
- var averageTimePerMessageInMs = results[size].sum_t / results[size].n;
- var speed = calculateSpeedInKB(size, averageTimePerMessageInMs);
- // Calculate sample standard deviation
- var stddevTimePerMessageInMs = Math.sqrt(
- (results[size].sum_t2 / results[size].n -
- averageTimePerMessageInMs * averageTimePerMessageInMs) *
- results[size].n /
- (results[size].n - 1));
- config.addToSummary(formatResultInKiB(
- size, averageTimePerMessageInMs, stddevTimePerMessageInMs, speed,
- true));
- }
-}
-
-function calculateSpeedInKB(size, timeSpentInMs) {
- return Math.round(size / timeSpentInMs * 1000) / 1000;
-}
-
-function calculateAndLogResult(config, size, startTimeInMs, totalSize,
- isWarmUp) {
- var timeSpentInMs = getTimeStamp() - startTimeInMs;
- var speed = calculateSpeedInKB(totalSize, timeSpentInMs);
- var timePerMessageInMs = timeSpentInMs / (totalSize / size);
- if (!isWarmUp) {
- config.measureValue(timePerMessageInMs);
- if (!results[size]) {
- results[size] = {n: 0, sum_t: 0, sum_t2: 0};
- }
- results[size].n ++;
- results[size].sum_t += timePerMessageInMs;
- results[size].sum_t2 += timePerMessageInMs * timePerMessageInMs;
- }
- config.addToLog(formatResultInKiB(size, timePerMessageInMs, -1, speed,
- config.printSize));
-}
-
-function repeatString(str, count) {
- var data = '';
- var expChunk = str;
- var remain = count;
- while (true) {
- if (remain % 2) {
- data += expChunk;
- remain = (remain - 1) / 2;
- } else {
- remain /= 2;
- }
-
- if (remain == 0)
- break;
-
- expChunk = expChunk + expChunk;
- }
- return data;
-}
-
-function fillArrayBuffer(buffer, c) {
- var i;
-
- var u32Content = c * 0x01010101;
-
- var u32Blocks = Math.floor(buffer.byteLength / 4);
- var u32View = new Uint32Array(buffer, 0, u32Blocks);
- // length attribute is slow on Chrome. Don't use it for loop condition.
- for (i = 0; i < u32Blocks; ++i) {
- u32View[i] = u32Content;
- }
-
- // Fraction
- var u8Blocks = buffer.byteLength - u32Blocks * 4;
- var u8View = new Uint8Array(buffer, u32Blocks * 4, u8Blocks);
- for (i = 0; i < u8Blocks; ++i) {
- u8View[i] = c;
- }
-}
-
-function verifyArrayBuffer(buffer, expectedChar) {
- var i;
-
- var expectedU32Value = expectedChar * 0x01010101;
-
- var u32Blocks = Math.floor(buffer.byteLength / 4);
- var u32View = new Uint32Array(buffer, 0, u32Blocks);
- for (i = 0; i < u32Blocks; ++i) {
- if (u32View[i] != expectedU32Value) {
- return false;
- }
- }
-
- var u8Blocks = buffer.byteLength - u32Blocks * 4;
- var u8View = new Uint8Array(buffer, u32Blocks * 4, u8Blocks);
- for (i = 0; i < u8Blocks; ++i) {
- if (u8View[i] != expectedChar) {
- return false;
- }
- }
-
- return true;
-}
-
-function verifyBlob(config, blob, expectedChar, doneCallback) {
- var reader = new FileReader(blob);
- reader.onerror = function() {
- config.addToLog('FileReader Error: ' + reader.error.message);
- doneCallback(blob.size, false);
- }
- reader.onloadend = function() {
- var result = verifyArrayBuffer(reader.result, expectedChar);
- doneCallback(blob.size, result);
- }
- reader.readAsArrayBuffer(blob);
-}
-
-function verifyAcknowledgement(config, message, size) {
- if (typeof message != 'string') {
- config.addToLog('Invalid ack type: ' + typeof message);
- return false;
- }
- var parsedAck = parseInt(message);
- if (isNaN(parsedAck)) {
- config.addToLog('Invalid ack value: ' + message);
- return false;
- }
- if (parsedAck != size) {
- config.addToLog(
- 'Expected ack for ' + size + 'B but received one for ' + parsedAck +
- 'B');
- return false;
- }
-
- return true;
-}
-
-function cloneConfig(obj) {
- var newObj = {};
- for (key in obj) {
- newObj[key] = obj[key];
- }
- return newObj;
-}
-
-var tasks = [];
-
-function runNextTask(config) {
- var task = tasks.shift();
- if (task == undefined) {
- config.addToLog('Finished');
- cleanup();
- return;
- }
- timerID = setTimeout(task, 0);
-}
-
-function buildLegendString(config) {
- var legend = ''
- if (config.printSize)
- legend = 'Message size in KiB, Time/message in ms, ';
- legend += 'Speed in kB/s';
- return legend;
-}
-
-function addTasks(config, stepFunc) {
- for (var i = 0;
- i < config.numWarmUpIterations + config.numIterations; ++i) {
- var multiplierIndex = 0;
- for (var size = config.startSize;
- size <= config.stopThreshold;
- ++multiplierIndex) {
- var task = stepFunc.bind(
- null,
- size,
- config,
- i < config.numWarmUpIterations);
- tasks.push(task);
- var multiplier = config.multipliers[
- multiplierIndex % config.multipliers.length];
- if (multiplier <= 1) {
- config.addToLog('Invalid multiplier ' + multiplier);
- config.notifyAbort();
- throw new Error('Invalid multipler');
- }
- size = Math.ceil(size * multiplier);
- }
- }
-}
-
-function addResultReportingTask(config, title) {
- tasks.push(function(){
- timerID = null;
- config.addToSummary(title);
- reportAverageData(config);
- clearAverageData();
- runNextTask(config);
- });
-}
-
-function sendBenchmark(config) {
- config.addToLog('Send benchmark');
- config.addToLog(buildLegendString(config));
-
- tasks = [];
- clearAverageData();
- addTasks(config, sendBenchmarkStep);
- addResultReportingTask(config, 'Send Benchmark ' + getConfigString(config));
- startBenchmark(config);
-}
-
-function receiveBenchmark(config) {
- config.addToLog('Receive benchmark');
- config.addToLog(buildLegendString(config));
-
- tasks = [];
- clearAverageData();
- addTasks(config, receiveBenchmarkStep);
- addResultReportingTask(config,
- 'Receive Benchmark ' + getConfigString(config));
- startBenchmark(config);
-}
-
-function stop(config) {
- clearTimeout(timerID);
- timerID = null;
- tasks = [];
- config.addToLog('Stopped');
- cleanup();
-}
-
-var worker;
-
-function initWorker(origin) {
- worker = new Worker(origin + '/benchmark.js');
-}
-
-function doAction(config, isWindowToWorker, action) {
- if (isWindowToWorker) {
- worker.onmessage = function(addToLog, addToSummary,
- measureValue, notifyAbort, message) {
- if (message.data.type === 'addToLog')
- addToLog(message.data.data);
- else if (message.data.type === 'addToSummary')
- addToSummary(message.data.data);
- else if (message.data.type === 'measureValue')
- measureValue(message.data.data);
- else if (message.data.type === 'notifyAbort')
- notifyAbort();
- }.bind(undefined, config.addToLog, config.addToSummary,
- config.measureValue, config.notifyAbort);
- config.addToLog = undefined;
- config.addToSummary = undefined;
- config.measureValue = undefined;
- config.notifyAbort = undefined;
- worker.postMessage({type: action, config: config});
- } else {
- if (action === 'sendBenchmark')
- sendBenchmark(config);
- else if (action === 'receiveBenchmark')
- receiveBenchmark(config);
- else if (action === 'batchBenchmark')
- batchBenchmark(config);
- else if (action === 'stop')
- stop(config);
- }
-}
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_main.js b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_main.js
deleted file mode 100644
index 78add48731..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_main.js
+++ /dev/null
@@ -1,89 +0,0 @@
-// Copyright 2014, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-// Utilities for example applications (for the main thread only).
-
-var logBox = null;
-var queuedLog = '';
-
-var summaryBox = null;
-
-function queueLog(log) {
- queuedLog += log + '\n';
-}
-
-function addToLog(log) {
- logBox.value += queuedLog;
- queuedLog = '';
- logBox.value += log + '\n';
- logBox.scrollTop = 1000000;
-}
-
-function addToSummary(log) {
- summaryBox.value += log + '\n';
- summaryBox.scrollTop = 1000000;
-}
-
-// value: execution time in milliseconds.
-// config.measureValue is intended to be used in Performance Tests.
-// Do nothing here in non-PerformanceTest.
-function measureValue(value) {
-}
-
-// config.notifyAbort is called when the benchmark failed and aborted, and
-// intended to be used in Performance Tests.
-// Do nothing here in non-PerformanceTest.
-function notifyAbort() {
-}
-
-function getIntFromInput(id) {
- return parseInt(document.getElementById(id).value);
-}
-
-function getStringFromRadioBox(name) {
- var list = document.getElementById('benchmark_form')[name];
- for (var i = 0; i < list.length; ++i)
- if (list.item(i).checked)
- return list.item(i).value;
- return undefined;
-}
-function getBoolFromCheckBox(id) {
- return document.getElementById(id).checked;
-}
-
-function getIntArrayFromInput(id) {
- var strArray = document.getElementById(id).value.split(',');
- return strArray.map(function(str) { return parseInt(str, 10); });
-}
-
-function getFloatArrayFromInput(id) {
- var strArray = document.getElementById(id).value.split(',');
- return strArray.map(parseFloat);
-}
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_worker.js b/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_worker.js
deleted file mode 100644
index dd90449a90..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/example/util_worker.js
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright 2014, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-// Utilities for example applications (for the worker threads only).
-
-onmessage = function (message) {
- var config = message.data.config;
- config.addToLog = function(text) {
- postMessage({type: 'addToLog', data: text}); };
- config.addToSummary = function(text) {
- postMessage({type: 'addToSummary', data: text}); };
- config.measureValue = function(value) {
- postMessage({type: 'measureValue', data: value}); };
- config.notifyAbort = function() { postMessage({type: 'notifyAbort'}); };
-
- doAction(config, false, message.data.type);
-};
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/__init__.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/__init__.py
deleted file mode 100644
index 28d5f5950f..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/__init__.py
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 2011, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-""" A Standalone WebSocket Server for testing purposes
-
-mod_pywebsocket is an API that provides WebSocket functionalities with
-a standalone WebSocket server. It is intended for testing or
-experimental purposes.
-
-Installation
-============
-1. Follow standalone server documentation to start running the
-standalone server. It can be read by running the following command:
-
- $ pydoc mod_pywebsocket.standalone
-
-2. Once the standalone server is launched verify it by accessing
-http://localhost[:port]/console.html. Include the port number when
-specified on launch. If everything is working correctly, you
-will see a simple echo console.
-
-
-Writing WebSocket handlers
-==========================
-
-When a WebSocket request comes in, the resource name
-specified in the handshake is considered as if it is a file path under
-<websock_handlers> and the handler defined in
-<websock_handlers>/<resource_name>_wsh.py is invoked.
-
-For example, if the resource name is /example/chat, the handler defined in
-<websock_handlers>/example/chat_wsh.py is invoked.
-
-A WebSocket handler is composed of the following three functions:
-
- web_socket_do_extra_handshake(request)
- web_socket_transfer_data(request)
- web_socket_passive_closing_handshake(request)
-
-where:
- request: mod_python request.
-
-web_socket_do_extra_handshake is called during the handshake after the
-headers are successfully parsed and WebSocket properties (ws_origin,
-and ws_resource) are added to request. A handler
-can reject the request by raising an exception.
-
-A request object has the following properties that you can use during the
-extra handshake (web_socket_do_extra_handshake):
-- ws_resource
-- ws_origin
-- ws_version
-- ws_extensions
-- ws_deflate
-- ws_protocol
-- ws_requested_protocols
-
-The last two are a bit tricky. See the next subsection.
-
-
-Subprotocol Negotiation
------------------------
-
-ws_protocol is always set to None when
-web_socket_do_extra_handshake is called. If ws_requested_protocols is not
-None, you must choose one subprotocol from this list and set it to
-ws_protocol.
-
-Data Transfer
--------------
-
-web_socket_transfer_data is called after the handshake completed
-successfully. A handler can receive/send messages from/to the client
-using request. mod_pywebsocket.msgutil module provides utilities
-for data transfer.
-
-You can receive a message by the following statement.
-
- message = request.ws_stream.receive_message()
-
-This call blocks until any complete text frame arrives, and the payload data
-of the incoming frame will be stored into message. When you're using IETF
-HyBi 00 or later protocol, receive_message() will return None on receiving
-client-initiated closing handshake. When any error occurs, receive_message()
-will raise some exception.
-
-You can send a message by the following statement.
-
- request.ws_stream.send_message(message)
-
-
-Closing Connection
-------------------
-
-Executing the following statement or just return-ing from
-web_socket_transfer_data cause connection close.
-
- request.ws_stream.close_connection()
-
-close_connection will wait
-for closing handshake acknowledgement coming from the client. When it
-couldn't receive a valid acknowledgement, raises an exception.
-
-web_socket_passive_closing_handshake is called after the server receives
-incoming closing frame from the client peer immediately. You can specify
-code and reason by return values. They are sent as a outgoing closing frame
-from the server. A request object has the following properties that you can
-use in web_socket_passive_closing_handshake.
-- ws_close_code
-- ws_close_reason
-
-
-Threading
----------
-
-A WebSocket handler must be thread-safe. The standalone
-server uses threads by default.
-
-
-Configuring WebSocket Extension Processors
-------------------------------------------
-
-See extensions.py for supported WebSocket extensions. Note that they are
-unstable and their APIs are subject to change substantially.
-
-A request object has these extension processing related attributes.
-
-- ws_requested_extensions:
-
- A list of common.ExtensionParameter instances representing extension
- parameters received from the client in the client's opening handshake.
- You shouldn't modify it manually.
-
-- ws_extensions:
-
- A list of common.ExtensionParameter instances representing extension
- parameters to send back to the client in the server's opening handshake.
- You shouldn't touch it directly. Instead, call methods on extension
- processors.
-
-- ws_extension_processors:
-
- A list of loaded extension processors. Find the processor for the
- extension you want to configure from it, and call its methods.
-"""
-
-# vi:sts=4 sw=4 et tw=72
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/fast_masking.i b/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/fast_masking.i
deleted file mode 100644
index ddaad27f53..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/fast_masking.i
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright 2013, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-%module fast_masking
-
-%include "cstring.i"
-
-%{
-#include <cstring>
-
-#ifdef __SSE2__
-#include <emmintrin.h>
-#endif
-%}
-
-%apply (char *STRING, int LENGTH) {
- (const char* payload, int payload_length),
- (const char* masking_key, int masking_key_length) };
-%cstring_output_allocate_size(
- char** result, int* result_length, delete [] *$1);
-
-%inline %{
-
-void mask(
- const char* payload, int payload_length,
- const char* masking_key, int masking_key_length,
- int masking_key_index,
- char** result, int* result_length) {
- *result = new char[payload_length];
- *result_length = payload_length;
- memcpy(*result, payload, payload_length);
-
- char* cursor = *result;
- char* cursor_end = *result + *result_length;
-
-#ifdef __SSE2__
- while ((cursor < cursor_end) &&
- (reinterpret_cast<size_t>(cursor) & 0xf)) {
- *cursor ^= masking_key[masking_key_index];
- ++cursor;
- masking_key_index = (masking_key_index + 1) % masking_key_length;
- }
- if (cursor == cursor_end) {
- return;
- }
-
- const int kBlockSize = 16;
- __m128i masking_key_block;
- for (int i = 0; i < kBlockSize; ++i) {
- *(reinterpret_cast<char*>(&masking_key_block) + i) =
- masking_key[masking_key_index];
- masking_key_index = (masking_key_index + 1) % masking_key_length;
- }
-
- while (cursor + kBlockSize <= cursor_end) {
- __m128i payload_block =
- _mm_load_si128(reinterpret_cast<__m128i*>(cursor));
- _mm_stream_si128(reinterpret_cast<__m128i*>(cursor),
- _mm_xor_si128(payload_block, masking_key_block));
- cursor += kBlockSize;
- }
-#endif
-
- while (cursor < cursor_end) {
- *cursor ^= masking_key[masking_key_index];
- ++cursor;
- masking_key_index = (masking_key_index + 1) % masking_key_length;
- }
-}
-
-%}
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/__init__.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/__init__.py
deleted file mode 100644
index 4bc1c67c57..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/__init__.py
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 2011, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""WebSocket opening handshake processor. This class try to apply available
-opening handshake processors for each protocol version until a connection is
-successfully established.
-"""
-
-from __future__ import absolute_import
-import logging
-
-from mod_pywebsocket import common
-from mod_pywebsocket.handshake import hybi
-# Export AbortedByUserException, HandshakeException, and VersionException
-# symbol from this module.
-from mod_pywebsocket.handshake.base import AbortedByUserException
-from mod_pywebsocket.handshake.base import HandshakeException
-from mod_pywebsocket.handshake.base import VersionException
-
-_LOGGER = logging.getLogger(__name__)
-
-
-def do_handshake(request, dispatcher):
- """Performs WebSocket handshake.
-
- Args:
- request: mod_python request.
- dispatcher: Dispatcher (dispatch.Dispatcher).
-
- Handshaker will add attributes such as ws_resource in performing
- handshake.
- """
-
- _LOGGER.debug('Client\'s opening handshake resource: %r', request.uri)
- # To print mimetools.Message as escaped one-line string, we converts
- # headers_in to dict object. Without conversion, if we use %r, it just
- # prints the type and address, and if we use %s, it prints the original
- # header string as multiple lines.
- #
- # Both mimetools.Message and MpTable_Type of mod_python can be
- # converted to dict.
- #
- # mimetools.Message.__str__ returns the original header string.
- # dict(mimetools.Message object) returns the map from header names to
- # header values. While MpTable_Type doesn't have such __str__ but just
- # __repr__ which formats itself as well as dictionary object.
- _LOGGER.debug('Client\'s opening handshake headers: %r',
- dict(request.headers_in))
-
- handshakers = []
- handshakers.append(('RFC 6455', hybi.Handshaker(request, dispatcher)))
-
- for name, handshaker in handshakers:
- _LOGGER.debug('Trying protocol version %s', name)
- try:
- handshaker.do_handshake()
- _LOGGER.info('Established (%s protocol)', name)
- return
- except HandshakeException as e:
- _LOGGER.debug(
- 'Failed to complete opening handshake as %s protocol: %r',
- name, e)
- if e.status:
- raise e
- except AbortedByUserException as e:
- raise
- except VersionException as e:
- raise
-
- # TODO(toyoshim): Add a test to cover the case all handshakers fail.
- raise HandshakeException(
- 'Failed to complete opening handshake for all available protocols',
- status=common.HTTP_STATUS_BAD_REQUEST)
-
-
-# vi:sts=4 sw=4 et
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/PKG-INFO b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/PKG-INFO
new file mode 100644
index 0000000000..289dfa8649
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/PKG-INFO
@@ -0,0 +1,13 @@
+Metadata-Version: 2.1
+Name: pywebsocket3
+Version: 4.0.2
+Summary: Standalone WebSocket Server for testing purposes.
+Home-page: https://github.com/GoogleChromeLabs/pywebsocket3
+Author: Yuzo Fujishima
+Author-email: yuzo@chromium.org
+License: See LICENSE
+Requires-Python: >=2.7
+License-File: LICENSE
+Requires-Dist: six
+
+pywebsocket3 is a standalone server for the WebSocket Protocol (RFC 6455). See pywebsocket3/__init__.py for more detail.
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/SOURCES.txt b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/SOURCES.txt
new file mode 100644
index 0000000000..9a74c73196
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/SOURCES.txt
@@ -0,0 +1,64 @@
+LICENSE
+MANIFEST.in
+README.md
+setup.py
+example/abort_handshake_wsh.py
+example/abort_wsh.py
+example/bench_wsh.py
+example/benchmark_helper_wsh.py
+example/close_wsh.py
+example/cookie_wsh.py
+example/echo_client.py
+example/echo_noext_wsh.py
+example/echo_wsh.py
+example/hsts_wsh.py
+example/internal_error_wsh.py
+example/origin_check_wsh.py
+example/cgi-bin/hi.py
+pywebsocket3/__init__.py
+pywebsocket3/_stream_exceptions.py
+pywebsocket3/common.py
+pywebsocket3/dispatch.py
+pywebsocket3/extensions.py
+pywebsocket3/http_header_util.py
+pywebsocket3/memorizingfile.py
+pywebsocket3/msgutil.py
+pywebsocket3/request_handler.py
+pywebsocket3/server_util.py
+pywebsocket3/standalone.py
+pywebsocket3/stream.py
+pywebsocket3/util.py
+pywebsocket3/websocket_server.py
+pywebsocket3.egg-info/PKG-INFO
+pywebsocket3.egg-info/SOURCES.txt
+pywebsocket3.egg-info/dependency_links.txt
+pywebsocket3.egg-info/requires.txt
+pywebsocket3.egg-info/top_level.txt
+pywebsocket3/handshake/__init__.py
+pywebsocket3/handshake/base.py
+pywebsocket3/handshake/hybi.py
+test/__init__.py
+test/client_for_testing.py
+test/mock.py
+test/run_all.py
+test/set_sys_path.py
+test/test_dispatch.py
+test/test_endtoend.py
+test/test_extensions.py
+test/test_handshake.py
+test/test_handshake_hybi.py
+test/test_http_header_util.py
+test/test_memorizingfile.py
+test/test_mock.py
+test/test_msgutil.py
+test/test_stream.py
+test/test_util.py
+test/testdata/handlers/abort_by_user_wsh.py
+test/testdata/handlers/blank_wsh.py
+test/testdata/handlers/origin_check_wsh.py
+test/testdata/handlers/sub/exception_in_transfer_wsh.py
+test/testdata/handlers/sub/no_wsh_at_the_end.py
+test/testdata/handlers/sub/non_callable_wsh.py
+test/testdata/handlers/sub/plain_wsh.py
+test/testdata/handlers/sub/wrong_handshake_sig_wsh.py
+test/testdata/handlers/sub/wrong_transfer_sig_wsh.py \ No newline at end of file
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/dependency_links.txt b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/dependency_links.txt
index 8b13789179..8b13789179 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/dependency_links.txt
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/dependency_links.txt
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/requires.txt b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/requires.txt
new file mode 100644
index 0000000000..ffe2fce498
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/requires.txt
@@ -0,0 +1 @@
+six
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/top_level.txt b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/top_level.txt
new file mode 100644
index 0000000000..db62422f0b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3.egg-info/top_level.txt
@@ -0,0 +1 @@
+pywebsocket3
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/__init__.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/__init__.py
new file mode 100644
index 0000000000..8f4ade0582
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/__init__.py
@@ -0,0 +1,172 @@
+# Copyright 2011, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+""" A Standalone WebSocket Server for testing purposes
+
+pywebsocket3 is an API that provides WebSocket functionalities with
+a standalone WebSocket server. It is intended for testing or
+experimental purposes.
+
+Installation
+============
+1. Follow standalone server documentation to start running the
+standalone server. It can be read by running the following command:
+
+ $ pydoc pywebsocket3.standalone
+
+2. Once the standalone server is launched verify it by accessing
+http://localhost[:port]/console.html. Include the port number when
+specified on launch. If everything is working correctly, you
+will see a simple echo console.
+
+
+Writing WebSocket handlers
+==========================
+
+When a WebSocket request comes in, the resource name
+specified in the handshake is considered as if it is a file path under
+<websock_handlers> and the handler defined in
+<websock_handlers>/<resource_name>_wsh.py is invoked.
+
+For example, if the resource name is /example/chat, the handler defined in
+<websock_handlers>/example/chat_wsh.py is invoked.
+
+A WebSocket handler is composed of the following three functions:
+
+ web_socket_do_extra_handshake(request)
+ web_socket_transfer_data(request)
+ web_socket_passive_closing_handshake(request)
+
+where:
+ request: mod_python request.
+
+web_socket_do_extra_handshake is called during the handshake after the
+headers are successfully parsed and WebSocket properties (ws_origin,
+and ws_resource) are added to request. A handler
+can reject the request by raising an exception.
+
+A request object has the following properties that you can use during the
+extra handshake (web_socket_do_extra_handshake):
+- ws_resource
+- ws_origin
+- ws_version
+- ws_extensions
+- ws_deflate
+- ws_protocol
+- ws_requested_protocols
+
+The last two are a bit tricky. See the next subsection.
+
+
+Subprotocol Negotiation
+-----------------------
+
+ws_protocol is always set to None when
+web_socket_do_extra_handshake is called. If ws_requested_protocols is not
+None, you must choose one subprotocol from this list and set it to
+ws_protocol.
+
+Data Transfer
+-------------
+
+web_socket_transfer_data is called after the handshake completed
+successfully. A handler can receive/send messages from/to the client
+using request. pywebsocket3.msgutil module provides utilities
+for data transfer.
+
+You can receive a message by the following statement.
+
+ message = request.ws_stream.receive_message()
+
+This call blocks until any complete text frame arrives, and the payload data
+of the incoming frame will be stored into message. When you're using IETF
+HyBi 00 or later protocol, receive_message() will return None on receiving
+client-initiated closing handshake. When any error occurs, receive_message()
+will raise some exception.
+
+You can send a message by the following statement.
+
+ request.ws_stream.send_message(message)
+
+
+Closing Connection
+------------------
+
+Executing the following statement or just return-ing from
+web_socket_transfer_data cause connection close.
+
+ request.ws_stream.close_connection()
+
+close_connection will wait
+for closing handshake acknowledgement coming from the client. When it
+couldn't receive a valid acknowledgement, raises an exception.
+
+web_socket_passive_closing_handshake is called after the server receives
+incoming closing frame from the client peer immediately. You can specify
+code and reason by return values. They are sent as a outgoing closing frame
+from the server. A request object has the following properties that you can
+use in web_socket_passive_closing_handshake.
+- ws_close_code
+- ws_close_reason
+
+
+Threading
+---------
+
+A WebSocket handler must be thread-safe. The standalone
+server uses threads by default.
+
+
+Configuring WebSocket Extension Processors
+------------------------------------------
+
+See extensions.py for supported WebSocket extensions. Note that they are
+unstable and their APIs are subject to change substantially.
+
+A request object has these extension processing related attributes.
+
+- ws_requested_extensions:
+
+ A list of common.ExtensionParameter instances representing extension
+ parameters received from the client in the client's opening handshake.
+ You shouldn't modify it manually.
+
+- ws_extensions:
+
+ A list of common.ExtensionParameter instances representing extension
+ parameters to send back to the client in the server's opening handshake.
+ You shouldn't touch it directly. Instead, call methods on extension
+ processors.
+
+- ws_extension_processors:
+
+ A list of loaded extension processors. Find the processor for the
+ extension you want to configure from it, and call its methods.
+"""
+
+# vi:sts=4 sw=4 et tw=72
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/_stream_exceptions.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/_stream_exceptions.py
index b47878bc4a..b47878bc4a 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/_stream_exceptions.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/_stream_exceptions.py
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/common.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/common.py
index 9cb11f15cb..a3321e4c68 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/common.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/common.py
@@ -30,7 +30,9 @@
"""
from __future__ import absolute_import
-from mod_pywebsocket import http_header_util
+
+from pywebsocket3 import http_header_util
+
# Additional log level definitions.
LOGLEVEL_FINE = 9
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/dispatch.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/dispatch.py
index 56cbb3c8a5..fd35ceab29 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/dispatch.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/dispatch.py
@@ -30,17 +30,19 @@
"""
from __future__ import absolute_import
+
import io
-import logging
import os
import re
import traceback
-from mod_pywebsocket import common
-from mod_pywebsocket import handshake
-from mod_pywebsocket import msgutil
-from mod_pywebsocket import stream
-from mod_pywebsocket import util
+from pywebsocket3 import (
+ common,
+ handshake,
+ msgutil,
+ stream,
+ util
+)
_SOURCE_PATH_PATTERN = re.compile(r'(?i)_wsh\.py$')
_SOURCE_SUFFIX = '_wsh.py'
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/extensions.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/extensions.py
index 314a949d45..4b5b9e8fb2 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/extensions.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/extensions.py
@@ -28,9 +28,9 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from __future__ import absolute_import
-from mod_pywebsocket import common
-from mod_pywebsocket import util
-from mod_pywebsocket.http_header_util import quote_if_necessary
+
+from pywebsocket3 import common, util
+from pywebsocket3.http_header_util import quote_if_necessary
# The list of available server side extension processor classes.
_available_processors = {}
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/__init__.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/__init__.py
new file mode 100644
index 0000000000..275e447552
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/__init__.py
@@ -0,0 +1,105 @@
+# Copyright 2011, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+"""WebSocket opening handshake processor. This class try to apply available
+opening handshake processors for each protocol version until a connection is
+successfully established.
+"""
+
+from __future__ import absolute_import
+
+import logging
+
+from pywebsocket3 import common
+from pywebsocket3.handshake import hybi
+# Export AbortedByUserException, HandshakeException, and VersionException
+# symbol from this module.
+from pywebsocket3.handshake.base import (
+ AbortedByUserException,
+ HandshakeException,
+ VersionException
+)
+
+
+_LOGGER = logging.getLogger(__name__)
+
+
+def do_handshake(request, dispatcher):
+ """Performs WebSocket handshake.
+
+ Args:
+ request: mod_python request.
+ dispatcher: Dispatcher (dispatch.Dispatcher).
+
+ Handshaker will add attributes such as ws_resource in performing
+ handshake.
+ """
+
+ _LOGGER.debug('Client\'s opening handshake resource: %r', request.uri)
+ # To print mimetools.Message as escaped one-line string, we converts
+ # headers_in to dict object. Without conversion, if we use %r, it just
+ # prints the type and address, and if we use %s, it prints the original
+ # header string as multiple lines.
+ #
+ # Both mimetools.Message and MpTable_Type of mod_python can be
+ # converted to dict.
+ #
+ # mimetools.Message.__str__ returns the original header string.
+ # dict(mimetools.Message object) returns the map from header names to
+ # header values. While MpTable_Type doesn't have such __str__ but just
+ # __repr__ which formats itself as well as dictionary object.
+ _LOGGER.debug('Client\'s opening handshake headers: %r',
+ dict(request.headers_in))
+
+ handshakers = []
+ handshakers.append(('RFC 6455', hybi.Handshaker(request, dispatcher)))
+
+ for name, handshaker in handshakers:
+ _LOGGER.debug('Trying protocol version %s', name)
+ try:
+ handshaker.do_handshake()
+ _LOGGER.info('Established (%s protocol)', name)
+ return
+ except HandshakeException as e:
+ _LOGGER.debug(
+ 'Failed to complete opening handshake as %s protocol: %r',
+ name, e)
+ if e.status:
+ raise e
+ except AbortedByUserException as e:
+ raise
+ except VersionException as e:
+ raise
+
+ # TODO(toyoshim): Add a test to cover the case all handshakers fail.
+ raise HandshakeException(
+ 'Failed to complete opening handshake for all available protocols',
+ status=common.HTTP_STATUS_BAD_REQUEST)
+
+
+# vi:sts=4 sw=4 et
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/base.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/base.py
index ffad0614d6..561f7b650a 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/base.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/base.py
@@ -32,15 +32,12 @@ processors.
from __future__ import absolute_import
-from mod_pywebsocket import common
-from mod_pywebsocket import http_header_util
-from mod_pywebsocket.extensions import get_extension_processor
-from mod_pywebsocket.stream import StreamOptions
-from mod_pywebsocket.stream import Stream
-from mod_pywebsocket import util
-
-from six.moves import map
-from six.moves import range
+from pywebsocket3 import common, http_header_util, util
+from pywebsocket3.extensions import get_extension_processor
+from pywebsocket3.stream import Stream, StreamOptions
+
+from six.moves import map, range
+
# Defining aliases for values used frequently.
_VERSION_LATEST = common.VERSION_HYBI_LATEST
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/hybi.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/hybi.py
index cf931db5a5..2e26532c3f 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/handshake/hybi.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/handshake/hybi.py
@@ -34,17 +34,20 @@ http://tools.ietf.org/html/rfc6455
"""
from __future__ import absolute_import
+
import base64
import re
from hashlib import sha1
-from mod_pywebsocket import common
-from mod_pywebsocket.handshake.base import get_mandatory_header
-from mod_pywebsocket.handshake.base import HandshakeException
-from mod_pywebsocket.handshake.base import parse_token_list
-from mod_pywebsocket.handshake.base import validate_mandatory_header
-from mod_pywebsocket.handshake.base import HandshakerBase
-from mod_pywebsocket import util
+from pywebsocket3 import common, util
+from pywebsocket3.handshake.base import (
+ get_mandatory_header,
+ HandshakeException,
+ parse_token_list,
+ validate_mandatory_header,
+ HandshakerBase
+)
+
# Used to validate the value in the Sec-WebSocket-Key header strictly. RFC 4648
# disallows non-zero padding, so the character right before == must be any of
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/http_header_util.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/http_header_util.py
index 21fde59af1..63e698bc16 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/http_header_util.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/http_header_util.py
@@ -31,8 +31,10 @@ in HTTP RFC http://www.ietf.org/rfc/rfc2616.txt.
"""
from __future__ import absolute_import
+
import six.moves.urllib.parse
+
_SEPARATORS = '()<>@,;:\\"/[]?={} \t'
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/memorizingfile.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/memorizingfile.py
index d353967618..4ee132fae6 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/memorizingfile.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/memorizingfile.py
@@ -34,6 +34,7 @@ A memorizing file wraps a file and memorizes lines read by readline.
"""
from __future__ import absolute_import
+
import sys
@@ -61,7 +62,7 @@ class MemorizingFile(object):
def __getattribute__(self, name):
"""Return a file attribute.
-
+
Returns the value overridden by this class for some attributes,
and forwards the call to _file for the other attributes.
"""
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/msgutil.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/msgutil.py
index f58ca78e14..dd6a6fc410 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/msgutil.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/msgutil.py
@@ -36,14 +36,18 @@ bytes writing/reading.
"""
from __future__ import absolute_import
-import six.moves.queue
+
import threading
+import six.moves.queue
+
# Export Exception symbols from msgutil for backward compatibility
-from mod_pywebsocket._stream_exceptions import ConnectionTerminatedException
-from mod_pywebsocket._stream_exceptions import InvalidFrameException
-from mod_pywebsocket._stream_exceptions import BadOperationException
-from mod_pywebsocket._stream_exceptions import UnsupportedFrameException
+from pywebsocket3._stream_exceptions import (
+ ConnectionTerminatedException,
+ InvalidFrameException,
+ BadOperationException,
+ UnsupportedFrameException
+)
# An API for handler to send/receive WebSocket messages.
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/request_handler.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/request_handler.py
index 5e9c875dc7..9d89b47c69 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/request_handler.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/request_handler.py
@@ -34,12 +34,14 @@ import os
from six.moves import CGIHTTPServer
from six.moves import http_client
-from mod_pywebsocket import common
-from mod_pywebsocket import dispatch
-from mod_pywebsocket import handshake
-from mod_pywebsocket import http_header_util
-from mod_pywebsocket import memorizingfile
-from mod_pywebsocket import util
+from pywebsocket3 import (
+ common,
+ dispatch,
+ handshake,
+ http_header_util,
+ memorizingfile,
+ util
+)
# 1024 is practically large enough to contain WebSocket handshake lines.
_MAX_MEMORIZED_LINES = 1024
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/server_util.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/server_util.py
index 8f9e273e97..3bf07f885b 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/server_util.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/server_util.py
@@ -33,8 +33,7 @@ import logging.handlers
import threading
import time
-from mod_pywebsocket import common
-from mod_pywebsocket import util
+from pywebsocket3 import common, util
def _get_logger_from_class(c):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/standalone.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/standalone.py
index bd32158790..0c324c4221 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/standalone.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/standalone.py
@@ -38,7 +38,7 @@ BASIC USAGE
Go to the src directory and run
- $ python mod_pywebsocket/standalone.py [-p <ws_port>]
+ $ python pywebsocket3/standalone.py [-p <ws_port>]
[-w <websock_handlers>]
[-d <document_root>]
@@ -48,11 +48,11 @@ Go to the src directory and run
<websock_handlers> is the path to the root directory of WebSocket handlers.
If not specified, <document_root> will be used. See __init__.py (or
-run $ pydoc mod_pywebsocket) for how to write WebSocket handlers.
+run $ pydoc pywebsocket3) for how to write WebSocket handlers.
For more detail and other options, run
- $ python mod_pywebsocket/standalone.py --help
+ $ python pywebsocket3/standalone.py --help
or see _build_option_parser method below.
@@ -66,7 +66,7 @@ Go to the src directory and run standalone.py with -d option to set the
document root to the directory containing example HTMLs and handlers like this:
$ cd src
- $ PYTHONPATH=. python mod_pywebsocket/standalone.py -d example
+ $ PYTHONPATH=. python pywebsocket3/standalone.py -d example
to launch pywebsocket with the sample handler and html on port 80. Open
http://localhost/console.html, click the connect button, type something into
@@ -85,7 +85,7 @@ TLS connection silently fails while pyOpenSSL fails on startup.
Example:
- $ PYTHONPATH=. python mod_pywebsocket/standalone.py \
+ $ PYTHONPATH=. python pywebsocket3/standalone.py \
-d example \
-p 10443 \
-t \
@@ -105,7 +105,7 @@ TLS support.
Example:
- $ PYTHONPATH=. python mod_pywebsocket/standalone.py -d example -p 10443 -t \
+ $ PYTHONPATH=. python pywebsocket3/standalone.py -d example -p 10443 -t \
-c ../test/cert/cert.pem -k ../test/cert/key.pem \
--tls-client-auth \
--tls-client-ca=../test/cert/cacert.pem
@@ -154,19 +154,20 @@ used outside a firewall.
"""
from __future__ import absolute_import
-from six.moves import configparser
+
+import argparse
import base64
import logging
-import argparse
import os
-import six
import sys
import traceback
-from mod_pywebsocket import common
-from mod_pywebsocket import util
-from mod_pywebsocket import server_util
-from mod_pywebsocket.websocket_server import WebSocketServer
+import six
+from six.moves import configparser
+
+from pywebsocket3 import common, server_util, util
+from pywebsocket3.websocket_server import WebSocketServer
+
_DEFAULT_LOG_MAX_BYTES = 1024 * 256
_DEFAULT_LOG_BACKUP_COUNT = 5
@@ -480,8 +481,8 @@ def _main(args=None):
server = WebSocketServer(options)
server.serve_forever()
except Exception as e:
- logging.critical('mod_pywebsocket: %s' % e)
- logging.critical('mod_pywebsocket: %s' % traceback.format_exc())
+ logging.critical('pywebsocket3: %s' % e)
+ logging.critical('pywebsocket3: %s' % traceback.format_exc())
sys.exit(1)
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/stream.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/stream.py
index 82d1ea619c..dd41850dc4 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/stream.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/stream.py
@@ -33,21 +33,22 @@ Specification:
http://tools.ietf.org/html/rfc6455
"""
-from collections import deque
import logging
import os
import struct
import time
-import socket
+from collections import deque
+
import six
-from mod_pywebsocket import common
-from mod_pywebsocket import util
-from mod_pywebsocket._stream_exceptions import BadOperationException
-from mod_pywebsocket._stream_exceptions import ConnectionTerminatedException
-from mod_pywebsocket._stream_exceptions import InvalidFrameException
-from mod_pywebsocket._stream_exceptions import InvalidUTF8Exception
-from mod_pywebsocket._stream_exceptions import UnsupportedFrameException
+from pywebsocket3 import common, util
+from pywebsocket3._stream_exceptions import (
+ BadOperationException,
+ ConnectionTerminatedException,
+ InvalidFrameException,
+ InvalidUTF8Exception,
+ UnsupportedFrameException
+)
_NOOP_MASKER = util.NoopMasker()
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/util.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/util.py
index 04006ecacd..9c25ab8315 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/util.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/util.py
@@ -29,20 +29,18 @@
"""WebSocket utilities."""
from __future__ import absolute_import
-import array
-import errno
+
import logging
import os
import re
-import six
-from six.moves import map
-from six.moves import range
-import socket
import struct
import zlib
+import six
+from six.moves import map, range
+
try:
- from mod_pywebsocket import fast_masking
+ from pywebsocket3 import fast_masking
except ImportError:
pass
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/websocket_server.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/websocket_server.py
index 9f67c9f02d..dab2f079ff 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/mod_pywebsocket/websocket_server.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/pywebsocket3/websocket_server.py
@@ -34,8 +34,7 @@ to use standalone.py, since it is intended to act as a skeleton of this module.
"""
from __future__ import absolute_import
-from six.moves import BaseHTTPServer
-from six.moves import socketserver
+
import logging
import re
import select
@@ -44,9 +43,10 @@ import ssl
import threading
import traceback
-from mod_pywebsocket import dispatch
-from mod_pywebsocket import util
-from mod_pywebsocket.request_handler import WebSocketRequestHandler
+from six.moves import BaseHTTPServer, socketserver
+
+from pywebsocket3 import dispatch, util
+from pywebsocket3.request_handler import WebSocketRequestHandler
def _alias_handlers(dispatcher, websock_handlers_map_file):
@@ -157,12 +157,13 @@ class WebSocketServer(socketserver.ThreadingMixIn, BaseHTTPServer.HTTPServer):
client_cert_ = ssl.CERT_REQUIRED
else:
client_cert_ = ssl.CERT_NONE
- socket_ = ssl.wrap_socket(
- socket_,
- keyfile=server_options.private_key,
- certfile=server_options.certificate,
- ca_certs=server_options.tls_client_ca,
- cert_reqs=client_cert_)
+ ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
+ ssl_context.verify_mode = client_cert_
+ ssl_context.load_cert_chain(keyfile=server_options.private_key,
+ certfile=server_options.certificate)
+ if client_cert_ != ssl.CERT_NONE:
+ ssl_context.load_verify_locations(cafile=server_options.tls_client_ca)
+ socket_ = ssl_context.wrap_socket(socket_, server_side=True)
self._sockets.append((socket_, addrinfo))
def server_bind(self):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.cfg b/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.cfg
new file mode 100644
index 0000000000..8bfd5a12f8
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.cfg
@@ -0,0 +1,4 @@
+[egg_info]
+tag_build =
+tag_date = 0
+
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.py
index 12c60d8617..ab9a24a3e7 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/setup.py
@@ -28,7 +28,8 @@
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""Set up script for mod_pywebsocket.
+
+"""Set up script for pywebsocket3.
"""
from __future__ import absolute_import
@@ -36,7 +37,7 @@ from __future__ import print_function
from setuptools import setup, Extension
import sys
-_PACKAGE_NAME = 'mod_pywebsocket'
+_PACKAGE_NAME = 'pywebsocket3'
# Build and use a C++ extension for faster masking. SWIG is required.
_USE_FAST_MASKING = False
@@ -49,8 +50,8 @@ if sys.hexversion < 0x020700f0:
if _USE_FAST_MASKING:
setup(ext_modules=[
- Extension('mod_pywebsocket/_fast_masking',
- ['mod_pywebsocket/fast_masking.i'],
+ Extension('pywebsocket3/_fast_masking',
+ ['pywebsocket3/fast_masking.i'],
swig_opts=['-c++'])
])
@@ -58,16 +59,16 @@ setup(
author='Yuzo Fujishima',
author_email='yuzo@chromium.org',
description='Standalone WebSocket Server for testing purposes.',
- long_description=('mod_pywebsocket is a standalone server for '
+ long_description=('pywebsocket3 is a standalone server for '
'the WebSocket Protocol (RFC 6455). '
- 'See mod_pywebsocket/__init__.py for more detail.'),
+ 'See pywebsocket3/__init__.py for more detail.'),
license='See LICENSE',
name=_PACKAGE_NAME,
packages=[_PACKAGE_NAME, _PACKAGE_NAME + '.handshake'],
python_requires='>=2.7',
install_requires=['six'],
url='https://github.com/GoogleChromeLabs/pywebsocket3',
- version='3.0.2',
+ version='4.0.2',
)
# vi:sts=4 sw=4 et
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cacert.pem b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cacert.pem
deleted file mode 100644
index 4dadae121b..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cacert.pem
+++ /dev/null
@@ -1,17 +0,0 @@
------BEGIN CERTIFICATE-----
-MIICvDCCAiWgAwIBAgIJAKqVghkGF1rSMA0GCSqGSIb3DQEBBQUAMEkxCzAJBgNV
-BAYTAkpQMQ4wDAYDVQQIEwVUb2t5bzEUMBIGA1UEChMLcHl3ZWJzb2NrZXQxFDAS
-BgNVBAMTC3B5d2Vic29ja2V0MB4XDTEyMDYwNjA3MjQzM1oXDTM5MTAyMzA3MjQz
-M1owSTELMAkGA1UEBhMCSlAxDjAMBgNVBAgTBVRva3lvMRQwEgYDVQQKEwtweXdl
-YnNvY2tldDEUMBIGA1UEAxMLcHl3ZWJzb2NrZXQwgZ8wDQYJKoZIhvcNAQEBBQAD
-gY0AMIGJAoGBAKoSEW2biQxVrMMKdn/8PJzDYiSXDPR9WQbLRRQ1Gm5jkCYiahXW
-u2CbTThfPPfi2NHA3I+HlT7gO9yR7RVUvN6ISUzGwXDEq4f4UNqtQOhQaqqK+CZ9
-LO/BhO/YYfNrbSPlYzHUKaT9ese7xO9VzVKLW+qUf2Mjh4/+SzxBDNP7AgMBAAGj
-gaswgagwHQYDVR0OBBYEFOsWdxCSuyhwaZeab6BoTho3++bzMHkGA1UdIwRyMHCA
-FOsWdxCSuyhwaZeab6BoTho3++bzoU2kSzBJMQswCQYDVQQGEwJKUDEOMAwGA1UE
-CBMFVG9reW8xFDASBgNVBAoTC3B5d2Vic29ja2V0MRQwEgYDVQQDEwtweXdlYnNv
-Y2tldIIJAKqVghkGF1rSMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEA
-gsMI1WEYqNw/jhUIdrTBcCxJ0X6hJvA9ziKANVm1Rs+4P3YDArkQ8bCr6xY+Kw7s
-Zp0yE7dM8GMdi+DU6hL3t3E5eMkTS1yZr9WCK4f2RLo+et98selZydpHemF3DJJ3
-gAj8Sx4LBaG8Cb/WnEMPv3MxG3fBE5favF6V4jU07hQ=
------END CERTIFICATE-----
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cert.pem b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cert.pem
deleted file mode 100644
index 25379a72b0..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/cert.pem
+++ /dev/null
@@ -1,61 +0,0 @@
-Certificate:
- Data:
- Version: 3 (0x2)
- Serial Number: 1 (0x1)
- Signature Algorithm: sha1WithRSAEncryption
- Issuer: C=JP, ST=Tokyo, O=pywebsocket, CN=pywebsocket
- Validity
- Not Before: Jun 6 07:25:08 2012 GMT
- Not After : Oct 23 07:25:08 2039 GMT
- Subject: C=JP, ST=Tokyo, O=pywebsocket, CN=pywebsocket
- Subject Public Key Info:
- Public Key Algorithm: rsaEncryption
- RSA Public Key: (1024 bit)
- Modulus (1024 bit):
- 00:de:10:ce:3a:5a:04:a4:1c:29:93:5c:23:82:1a:
- f2:06:01:e6:2b:a4:0f:dd:77:49:76:89:03:a2:21:
- de:04:75:c6:e2:dd:fb:35:27:3a:a2:92:8e:12:62:
- 2b:3e:1f:f4:78:df:b6:94:cb:27:d6:cb:d6:37:d7:
- 5c:08:f0:09:3e:c9:ce:24:2d:00:c9:df:4a:e0:99:
- e5:fb:23:a9:e2:d6:c9:3d:96:fa:01:88:de:5a:89:
- b0:cf:03:67:6f:04:86:1d:ef:62:1c:55:a9:07:9a:
- 2e:66:2a:73:5b:4c:62:03:f9:82:83:db:68:bf:b8:
- 4b:0b:8b:93:11:b8:54:73:7b
- Exponent: 65537 (0x10001)
- X509v3 extensions:
- X509v3 Basic Constraints:
- CA:FALSE
- Netscape Cert Type:
- SSL Server
- Netscape Comment:
- OpenSSL Generated Certificate
- X509v3 Subject Key Identifier:
- 82:A1:73:8B:16:0C:7C:E4:D3:46:95:13:95:1A:32:C1:84:E9:06:00
- X509v3 Authority Key Identifier:
- keyid:EB:16:77:10:92:BB:28:70:69:97:9A:6F:A0:68:4E:1A:37:FB:E6:F3
-
- Signature Algorithm: sha1WithRSAEncryption
- 6b:b3:46:29:02:df:b0:c8:8e:c4:d7:7f:a0:1e:0d:1a:eb:2f:
- df:d1:48:57:36:5f:95:8c:1b:f0:51:d6:52:e7:8d:84:3b:9f:
- d8:ed:22:9c:aa:bd:ee:9b:90:1d:84:a3:4c:0b:cb:eb:64:73:
- ba:f7:15:ce:da:5f:db:8b:15:07:a6:28:7f:b9:8c:11:9b:64:
- d3:f1:be:52:4f:c3:d8:58:fe:de:56:63:63:3b:51:ed:a7:81:
- f9:05:51:70:63:32:09:0e:94:7e:05:fe:a1:56:18:34:98:d5:
- 99:1e:4e:27:38:89:90:6a:e5:ce:60:35:01:f5:de:34:60:b1:
- cb:ae
------BEGIN CERTIFICATE-----
-MIICmDCCAgGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBJMQswCQYDVQQGEwJKUDEO
-MAwGA1UECBMFVG9reW8xFDASBgNVBAoTC3B5d2Vic29ja2V0MRQwEgYDVQQDEwtw
-eXdlYnNvY2tldDAeFw0xMjA2MDYwNzI1MDhaFw0zOTEwMjMwNzI1MDhaMEkxCzAJ
-BgNVBAYTAkpQMQ4wDAYDVQQIEwVUb2t5bzEUMBIGA1UEChMLcHl3ZWJzb2NrZXQx
-FDASBgNVBAMTC3B5d2Vic29ja2V0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB
-gQDeEM46WgSkHCmTXCOCGvIGAeYrpA/dd0l2iQOiId4Edcbi3fs1Jzqiko4SYis+
-H/R437aUyyfWy9Y311wI8Ak+yc4kLQDJ30rgmeX7I6ni1sk9lvoBiN5aibDPA2dv
-BIYd72IcVakHmi5mKnNbTGID+YKD22i/uEsLi5MRuFRzewIDAQABo4GPMIGMMAkG
-A1UdEwQCMAAwEQYJYIZIAYb4QgEBBAQDAgZAMCwGCWCGSAGG+EIBDQQfFh1PcGVu
-U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUgqFzixYMfOTTRpUT
-lRoywYTpBgAwHwYDVR0jBBgwFoAU6xZ3EJK7KHBpl5pvoGhOGjf75vMwDQYJKoZI
-hvcNAQEFBQADgYEAa7NGKQLfsMiOxNd/oB4NGusv39FIVzZflYwb8FHWUueNhDuf
-2O0inKq97puQHYSjTAvL62RzuvcVztpf24sVB6Yof7mMEZtk0/G+Uk/D2Fj+3lZj
-YztR7aeB+QVRcGMyCQ6UfgX+oVYYNJjVmR5OJziJkGrlzmA1AfXeNGCxy64=
------END CERTIFICATE-----
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/key.pem b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/key.pem
deleted file mode 100644
index fae858318f..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/cert/key.pem
+++ /dev/null
@@ -1,15 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXgIBAAKBgQDeEM46WgSkHCmTXCOCGvIGAeYrpA/dd0l2iQOiId4Edcbi3fs1
-Jzqiko4SYis+H/R437aUyyfWy9Y311wI8Ak+yc4kLQDJ30rgmeX7I6ni1sk9lvoB
-iN5aibDPA2dvBIYd72IcVakHmi5mKnNbTGID+YKD22i/uEsLi5MRuFRzewIDAQAB
-AoGBAIuCuV1Vcnb7rm8CwtgZP5XgmY8vSjxTldafa6XvawEYUTP0S77v/1llg1Yv
-UIV+I+PQgG9oVoYOl22LoimHS/Z3e1fsot5tDYszGe8/Gkst4oaReSoxvBUa6WXp
-QSo7YFCajuHtE+W/gzF+UHbdzzXIDjQZ314LNF5t+4UnsEPBAkEA+girImqWoM2t
-3UR8f8oekERwsmEMf9DH5YpH4cvUnvI+kwesC/r2U8Sho++fyEMUNm7aIXGqNLga
-ogAM+4NX4QJBAONdSxSay22egTGNoIhLndljWkuOt/9FWj2klf/4QxD4blMJQ5Oq
-QdOGAh7nVQjpPLQ5D7CBVAKpGM2CD+QJBtsCQEP2kz35pxPylG3urcC2mfQxBkkW
-ZCViBNP58GwJ0bOauTOSBEwFXWuLqTw8aDwxL49UNmqc0N0fpe2fAehj3UECQQCm
-FH/DjU8Lw7ybddjNtm6XXPuYNagxz3cbkB4B3FchDleIUDwMoVF0MW9bI5/54mV1
-QDk1tUKortxvQZJaAD4BAkEAhGOHQqPd6bBBoFBvpaLzPJMxwLKrB+Wtkq/QlC72
-ClRiMn2g8SALiIL3BDgGXKcKE/Wy7jo/af/JCzQ/cPqt/A==
------END RSA PRIVATE KEY-----
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/client_for_testing.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/client_for_testing.py
index a45e8f5cf2..6275676371 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/client_for_testing.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/client_for_testing.py
@@ -33,8 +33,8 @@
This module contains helper methods for performing handshake, frame
sending/receiving as a WebSocket client.
-This is code for testing mod_pywebsocket. Keep this code independent from
-mod_pywebsocket. Don't import e.g. Stream class for generating frame for
+This is code for testing pywebsocket3. Keep this code independent from
+pywebsocket3. Don't import e.g. Stream class for generating frame for
testing. Using util.hexify, etc. that are not related to protocol processing
is allowed.
@@ -43,22 +43,20 @@ This code is far from robust, e.g., we cut corners in handshake.
"""
from __future__ import absolute_import
+
import base64
import errno
-import logging
import os
-import random
import re
import socket
import struct
import time
from hashlib import sha1
-from six import iterbytes
-from six import indexbytes
-from mod_pywebsocket import common
-from mod_pywebsocket import util
-from mod_pywebsocket.handshake import HandshakeException
+from six import indexbytes, iterbytes
+
+from pywebsocket3 import common, util
+from pywebsocket3.handshake import HandshakeException
DEFAULT_PORT = 80
DEFAULT_SECURE_PORT = 443
@@ -702,15 +700,15 @@ class Client(object):
try:
read_data = receive_bytes(self._socket, 1)
except Exception as e:
- if str(e).find(
- 'Connection closed before receiving requested length '
- ) == 0:
+ if str(e).find('Connection closed before receiving requested length ') == 0:
return
+
try:
- error_number, message = e
for error_name in ['ECONNRESET', 'WSAECONNRESET']:
- if (error_name in dir(errno)
- and error_number == getattr(errno, error_name)):
+ if (
+ error_name in dir(errno) and
+ e.errno == getattr(errno, error_name)
+ ):
return
except:
raise e
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/mock.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/mock.py
index eeaef52ecf..c460d9b7f0 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/mock.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/mock.py
@@ -30,17 +30,14 @@
"""
from __future__ import absolute_import
-import six.moves.queue
-import threading
-import struct
-import six
-from mod_pywebsocket import common
-from mod_pywebsocket import util
-from mod_pywebsocket.stream import Stream
-from mod_pywebsocket.stream import StreamOptions
+import six
+import six.moves.queue
from six.moves import range
+from pywebsocket3 import common, util
+from pywebsocket3.stream import Stream, StreamOptions
+
class _MockConnBase(object):
"""Base class of mocks for mod_python.apache.mp_conn.
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/run_all.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/run_all.py
index ea52223cea..569bdb4c07 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/run_all.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/run_all.py
@@ -31,7 +31,7 @@
"""Run all tests in the same directory.
This suite is expected to be run under pywebsocket's src directory, i.e. the
-directory containing mod_pywebsocket, test, etc.
+directory containing pywebsocket3, test, etc.
To change loggin level, please specify --log-level option.
python test/run_test.py --log-level debug
@@ -42,14 +42,16 @@ example, run this for making the test runner verbose.
"""
from __future__ import absolute_import
-import logging
+
import argparse
+import logging
import os
import re
-import six
import sys
import unittest
+import six
+
_TEST_MODULE_PATTERN = re.compile(r'^(test_.+)\.py$')
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/set_sys_path.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/set_sys_path.py
index 48d0e116a5..c35cb6f972 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/set_sys_path.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/set_sys_path.py
@@ -28,14 +28,15 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""Configuration for testing.
-Test files should import this module before mod_pywebsocket.
+Test files should import this module before pywebsocket3.
"""
from __future__ import absolute_import
+
import os
import sys
-# Add the parent directory to sys.path to enable importing mod_pywebsocket.
+# Add the parent directory to sys.path to enable importing pywebsocket3.
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..'))
# vi:sts=4 sw=4 et
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_dispatch.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_dispatch.py
index 132dd92d76..18a39d1af9 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_dispatch.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_dispatch.py
@@ -31,15 +31,16 @@
"""Tests for dispatch module."""
from __future__ import absolute_import
+
import os
import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+from six.moves import zip
-from mod_pywebsocket import dispatch
-from mod_pywebsocket import handshake
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import dispatch, handshake
from test import mock
-from six.moves import zip
+
_TEST_HANDLERS_DIR = os.path.join(os.path.dirname(__file__), 'testdata',
'handlers')
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_endtoend.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_endtoend.py
index 2789e4a57e..9718c6a2b2 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_endtoend.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_endtoend.py
@@ -28,23 +28,23 @@
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""End-to-end tests for pywebsocket. Tests standalone.py.
+"""End-to-end tests for pywebsocket3. Tests standalone.py.
"""
from __future__ import absolute_import
-from six.moves import urllib
+
import locale
import logging
import os
-import signal
import socket
import subprocess
import sys
import time
import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+from six.moves import urllib
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
from test import client_for_testing
# Special message that tells the echo server to start closing handshake
@@ -137,7 +137,7 @@ class EndToEndTestBase(unittest.TestCase):
self.server_stderr = None
self.top_dir = os.path.join(os.path.dirname(__file__), '..')
os.putenv('PYTHONPATH', os.path.pathsep.join(sys.path))
- self.standalone_command = os.path.join(self.top_dir, 'mod_pywebsocket',
+ self.standalone_command = os.path.join(self.top_dir, 'pywebsocket3',
'standalone.py')
self.document_root = os.path.join(self.top_dir, 'example')
s = socket.socket()
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_extensions.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_extensions.py
index 39a111888b..008df24827 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_extensions.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_extensions.py
@@ -31,13 +31,12 @@
"""Tests for extensions module."""
from __future__ import absolute_import
+
import unittest
import zlib
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
-
-from mod_pywebsocket import common
-from mod_pywebsocket import extensions
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import common, extensions
class ExtensionsTest(unittest.TestCase):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake.py
index 7f4acf56ff..c8e25ab099 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake.py
@@ -31,16 +31,17 @@
"""Tests for handshake.base module."""
from __future__ import absolute_import
-import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+import unittest
-from mod_pywebsocket.common import ExtensionParameter
-from mod_pywebsocket.common import ExtensionParsingException
-from mod_pywebsocket.common import format_extensions
-from mod_pywebsocket.common import parse_extensions
-from mod_pywebsocket.handshake.base import HandshakeException
-from mod_pywebsocket.handshake.base import validate_subprotocol
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3.common import (
+ ExtensionParameter,
+ ExtensionParsingException,
+ format_extensions,
+ parse_extensions,
+)
+from pywebsocket3.handshake.base import HandshakeException, validate_subprotocol
class ValidateSubprotocolTest(unittest.TestCase):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake_hybi.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake_hybi.py
index 8c65822170..ee63ed45b4 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake_hybi.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_handshake_hybi.py
@@ -31,15 +31,17 @@
"""Tests for handshake module."""
from __future__ import absolute_import
-import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
-from mod_pywebsocket import common
-from mod_pywebsocket.handshake.base import AbortedByUserException
-from mod_pywebsocket.handshake.base import HandshakeException
-from mod_pywebsocket.handshake.base import VersionException
-from mod_pywebsocket.handshake.hybi import Handshaker
+import unittest
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import common
+from pywebsocket3.handshake.base import (
+ AbortedByUserException,
+ HandshakeException,
+ VersionException,
+)
+from pywebsocket3.handshake.hybi import Handshaker
from test import mock
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_http_header_util.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_http_header_util.py
index f8c8e7a981..bd9b9bfc2e 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_http_header_util.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_http_header_util.py
@@ -31,10 +31,11 @@
"""Tests for http_header_util module."""
from __future__ import absolute_import
+
import unittest
import sys
-from mod_pywebsocket import http_header_util
+from pywebsocket3 import http_header_util
class UnitTest(unittest.TestCase):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_memorizingfile.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_memorizingfile.py
index f7288c510b..4749085962 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_memorizingfile.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_memorizingfile.py
@@ -31,12 +31,13 @@
"""Tests for memorizingfile module."""
from __future__ import absolute_import
+
import unittest
-import six
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+import six
-from mod_pywebsocket import memorizingfile
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import memorizingfile
class UtilTest(unittest.TestCase):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_mock.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_mock.py
index 073873dde9..df5353bc59 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_mock.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_mock.py
@@ -31,12 +31,13 @@
"""Tests for mock module."""
from __future__ import absolute_import
-import six.moves.queue
+
import threading
import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+import six.moves.queue
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
from test import mock
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_msgutil.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_msgutil.py
index 1122c281b7..99aa200ba4 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_msgutil.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_msgutil.py
@@ -33,26 +33,26 @@
from __future__ import absolute_import
from __future__ import print_function
from __future__ import division
-import array
-import six.moves.queue
+
import random
import struct
import unittest
import zlib
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
-
-from mod_pywebsocket import common
-from mod_pywebsocket.extensions import PerMessageDeflateExtensionProcessor
-from mod_pywebsocket import msgutil
-from mod_pywebsocket.stream import InvalidUTF8Exception
-from mod_pywebsocket.stream import Stream
-from mod_pywebsocket.stream import StreamOptions
-from mod_pywebsocket import util
-from test import mock
+from six import iterbytes
from six.moves import map
from six.moves import range
-from six import iterbytes
+import six.moves.queue
+
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import common, msgutil, util
+from pywebsocket3.extensions import PerMessageDeflateExtensionProcessor
+from pywebsocket3.stream import (
+ InvalidUTF8Exception,
+ Stream,
+ StreamOptions,
+)
+from test import mock
# We use one fixed nonce for testing instead of cryptographically secure PRNG.
_MASKING_NONCE = b'ABCD'
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_stream.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_stream.py
index 153899d205..c165e84688 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_stream.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_stream.py
@@ -31,12 +31,11 @@
"""Tests for stream module."""
from __future__ import absolute_import
-import unittest
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
+import unittest
-from mod_pywebsocket import common
-from mod_pywebsocket import stream
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import common, stream
class StreamTest(unittest.TestCase):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_util.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_util.py
index bf4bd32bba..24c4b5bfbd 100755
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_util.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/test_util.py
@@ -32,18 +32,16 @@
from __future__ import absolute_import
from __future__ import print_function
+
import os
import random
-import sys
import unittest
-import struct
-
-import set_sys_path # Update sys.path to locate mod_pywebsocket module.
-from mod_pywebsocket import util
+from six import int2byte, PY3
from six.moves import range
-from six import PY3
-from six import int2byte
+
+import set_sys_path # Update sys.path to locate pywebsocket3 module.
+from pywebsocket3 import util
_TEST_DATA_DIR = os.path.join(os.path.dirname(__file__), 'testdata')
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/README b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/README
deleted file mode 100644
index c001aa5595..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/README
+++ /dev/null
@@ -1 +0,0 @@
-Test data directory
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/handlers/abort_by_user_wsh.py b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/handlers/abort_by_user_wsh.py
index 63cb541bb7..a6e0831847 100644
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/handlers/abort_by_user_wsh.py
+++ b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/handlers/abort_by_user_wsh.py
@@ -27,7 +27,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-from mod_pywebsocket import handshake
+from pywebsocket3 import handshake
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/hello.pl b/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/hello.pl
deleted file mode 100644
index 882ef5a100..0000000000
--- a/testing/web-platform/tests/tools/third_party/pywebsocket3/test/testdata/hello.pl
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/perl -wT
-#
-# Copyright 2012, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-print "Hello\n";
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/FUNDING.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/FUNDING.yml
new file mode 100644
index 0000000000..c6c5426a5a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/FUNDING.yml
@@ -0,0 +1,3 @@
+github: python-websockets
+open_collective: websockets
+tidelift: pypi/websockets
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/config.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000000..3ba13e0cec
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1 @@
+blank_issues_enabled: false
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/issue.md b/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/issue.md
new file mode 100644
index 0000000000..3cf4e3b770
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/ISSUE_TEMPLATE/issue.md
@@ -0,0 +1,29 @@
+---
+name: Report an issue
+about: Let us know about a problem with websockets
+title: ''
+labels: ''
+assignees: ''
+
+---
+
+<!--
+
+Thanks for taking the time to report an issue!
+
+Did you check the FAQ? Perhaps you'll find the answer you need:
+https://websockets.readthedocs.io/en/stable/faq/index.html
+
+Is your question really about asyncio? Perhaps the dev guide will help:
+https://docs.python.org/3/library/asyncio-dev.html
+
+Did you look for similar issues? Please keep the discussion in one place :-)
+https://github.com/python-websockets/websockets/issues?q=is%3Aissue
+
+Is your issue related to cryptocurrency in any way? Please don't file it.
+https://websockets.readthedocs.io/en/stable/project/contributing.html#cryptocurrency-users
+
+For bugs, providing a reproduction helps a lot. Take an existing example and tweak it!
+https://github.com/python-websockets/websockets/tree/main/example
+
+-->
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/dependabot.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/dependabot.yml
new file mode 100644
index 0000000000..ad1e824b4a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/dependabot.yml
@@ -0,0 +1,9 @@
+version: 2
+updates:
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "weekly"
+ day: "saturday"
+ time: "07:00"
+ timezone: "Europe/Paris"
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml
new file mode 100644
index 0000000000..470f5bc960
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml
@@ -0,0 +1,83 @@
+name: Run tests
+
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+env:
+ WEBSOCKETS_TESTS_TIMEOUT_FACTOR: 10
+
+jobs:
+ coverage:
+ name: Run test coverage checks
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: "3.x"
+ - name: Install tox
+ run: pip install tox
+ - name: Run tests with coverage
+ run: tox -e coverage
+ - name: Run tests with per-module coverage
+ run: tox -e maxi_cov
+
+ quality:
+ name: Run code quality checks
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: "3.x"
+ - name: Install tox
+ run: pip install tox
+ - name: Check code formatting
+ run: tox -e black
+ - name: Check code style
+ run: tox -e ruff
+ - name: Check types statically
+ run: tox -e mypy
+
+ matrix:
+ name: Run tests on Python ${{ matrix.python }}
+ needs:
+ - coverage
+ - quality
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python:
+ - "3.8"
+ - "3.9"
+ - "3.10"
+ - "3.11"
+ - "pypy-3.8"
+ - "pypy-3.9"
+ is_main:
+ - ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
+ exclude:
+ - python: "pypy-3.8"
+ is_main: false
+ - python: "pypy-3.9"
+ is_main: false
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python ${{ matrix.python }}
+ uses: actions/setup-python@v4
+ with:
+ python-version: ${{ matrix.python }}
+ - name: Install tox
+ run: pip install tox
+ - name: Run tests
+ run: tox -e py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/wheels.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/wheels.yml
new file mode 100644
index 0000000000..707ef2c60d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/wheels.yml
@@ -0,0 +1,88 @@
+name: Build wheels
+
+on:
+ push:
+ tags:
+ - '*'
+ workflow_dispatch:
+
+jobs:
+ sdist:
+ name: Build source distribution and architecture-independent wheel
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: 3.x
+ - name: Build sdist
+ run: python setup.py sdist
+ - name: Save sdist
+ uses: actions/upload-artifact@v3
+ with:
+ path: dist/*.tar.gz
+ - name: Install wheel
+ run: pip install wheel
+ - name: Build wheel
+ env:
+ BUILD_EXTENSION: no
+ run: python setup.py bdist_wheel
+ - name: Save wheel
+ uses: actions/upload-artifact@v3
+ with:
+ path: dist/*.whl
+
+ wheels:
+ name: Build architecture-specific wheels on ${{ matrix.os }}
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ os:
+ - ubuntu-latest
+ - windows-latest
+ - macOS-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: 3.x
+ - name: Set up QEMU
+ if: runner.os == 'Linux'
+ uses: docker/setup-qemu-action@v3
+ with:
+ platforms: all
+ - name: Build wheels
+ uses: pypa/cibuildwheel@v2.16.2
+ env:
+ BUILD_EXTENSION: yes
+ - name: Save wheels
+ uses: actions/upload-artifact@v3
+ with:
+ path: wheelhouse/*.whl
+
+ release:
+ name: Release
+ needs:
+ - sdist
+ - wheels
+ runs-on: ubuntu-latest
+ # Don't release when running the workflow manually from GitHub's UI.
+ if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
+ steps:
+ - name: Download artifacts
+ uses: actions/download-artifact@v3
+ with:
+ name: artifact
+ path: dist
+ - name: Upload to PyPI
+ uses: pypa/gh-action-pypi-publish@release/v1
+ with:
+ password: ${{ secrets.PYPI_API_TOKEN }}
+ - name: Create GitHub release
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: gh release create ${{ github.ref_name }} --notes "See https://websockets.readthedocs.io/en/stable/project/changelog.html for details."
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.gitignore b/testing/web-platform/tests/tools/third_party/websockets/.gitignore
new file mode 100644
index 0000000000..324e77069a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.gitignore
@@ -0,0 +1,16 @@
+*.pyc
+*.so
+.coverage
+.direnv
+.envrc
+.idea/
+.mypy_cache
+.tox
+build/
+compliance/reports/
+experiments/compression/corpus.pkl
+dist/
+docs/_build/
+htmlcov/
+MANIFEST
+websockets.egg-info/
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.readthedocs.yml b/testing/web-platform/tests/tools/third_party/websockets/.readthedocs.yml
new file mode 100644
index 0000000000..0369e06565
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.readthedocs.yml
@@ -0,0 +1,13 @@
+version: 2
+
+build:
+ os: ubuntu-20.04
+ tools:
+ python: "3.10"
+
+sphinx:
+ configuration: docs/conf.py
+
+python:
+ install:
+ - requirements: docs/requirements.txt
diff --git a/testing/web-platform/tests/tools/third_party/websockets/CODE_OF_CONDUCT.md b/testing/web-platform/tests/tools/third_party/websockets/CODE_OF_CONDUCT.md
new file mode 100644
index 0000000000..80f80d51b1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/CODE_OF_CONDUCT.md
@@ -0,0 +1,46 @@
+# Contributor Covenant Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
+
+## Enforcement
+
+Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at aymeric DOT augustin AT fractalideas DOT com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
+
+Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
+
+## Attribution
+
+This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
+
+[homepage]: http://contributor-covenant.org
+[version]: http://contributor-covenant.org/version/1/4/
diff --git a/testing/web-platform/tests/tools/third_party/websockets/LICENSE b/testing/web-platform/tests/tools/third_party/websockets/LICENSE
index 119b29ef35..5d61ece22a 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/LICENSE
+++ b/testing/web-platform/tests/tools/third_party/websockets/LICENSE
@@ -1,5 +1,4 @@
-Copyright (c) 2013-2021 Aymeric Augustin and contributors.
-All rights reserved.
+Copyright (c) Aymeric Augustin and contributors
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
@@ -9,9 +8,9 @@ modification, are permitted provided that the following conditions are met:
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
- * Neither the name of websockets nor the names of its contributors may
- be used to endorse or promote products derived from this software without
- specific prior written permission.
+ * Neither the name of the copyright holder nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/testing/web-platform/tests/tools/third_party/websockets/Makefile b/testing/web-platform/tests/tools/third_party/websockets/Makefile
new file mode 100644
index 0000000000..cf3b533939
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/Makefile
@@ -0,0 +1,35 @@
+.PHONY: default style types tests coverage maxi_cov build clean
+
+export PYTHONASYNCIODEBUG=1
+export PYTHONPATH=src
+export PYTHONWARNINGS=default
+
+default: style types tests
+
+style:
+ black src tests
+ ruff --fix src tests
+
+types:
+ mypy --strict src
+
+tests:
+ python -m unittest
+
+coverage:
+ coverage run --source src/websockets,tests -m unittest
+ coverage html
+ coverage report --show-missing --fail-under=100
+
+maxi_cov:
+ python tests/maxi_cov.py
+ coverage html
+ coverage report --show-missing --fail-under=100
+
+build:
+ python setup.py build_ext --inplace
+
+clean:
+ find . -name '*.pyc' -o -name '*.so' -delete
+ find . -name __pycache__ -delete
+ rm -rf .coverage .mypy_cache build compliance/reports dist docs/_build htmlcov MANIFEST src/websockets.egg-info
diff --git a/testing/web-platform/tests/tools/third_party/websockets/PKG-INFO b/testing/web-platform/tests/tools/third_party/websockets/PKG-INFO
deleted file mode 100644
index 3b042a3f9f..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/PKG-INFO
+++ /dev/null
@@ -1,174 +0,0 @@
-Metadata-Version: 2.1
-Name: websockets
-Version: 10.3
-Summary: An implementation of the WebSocket Protocol (RFC 6455 & 7692)
-Home-page: https://github.com/aaugustin/websockets
-Author: Aymeric Augustin
-Author-email: aymeric.augustin@m4x.org
-License: BSD
-Project-URL: Changelog, https://websockets.readthedocs.io/en/stable/project/changelog.html
-Project-URL: Documentation, https://websockets.readthedocs.io/
-Project-URL: Funding, https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme
-Project-URL: Tracker, https://github.com/aaugustin/websockets/issues
-Platform: UNKNOWN
-Classifier: Development Status :: 5 - Production/Stable
-Classifier: Environment :: Web Environment
-Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: BSD License
-Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.7
-Classifier: Programming Language :: Python :: 3.8
-Classifier: Programming Language :: Python :: 3.9
-Classifier: Programming Language :: Python :: 3.10
-Requires-Python: >=3.7
-License-File: LICENSE
-
-.. image:: logo/horizontal.svg
- :width: 480px
- :alt: websockets
-
-|licence| |version| |pyversions| |wheel| |tests| |docs|
-
-.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |version| image:: https://img.shields.io/pypi/v/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |wheel| image:: https://img.shields.io/pypi/wheel/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |tests| image:: https://img.shields.io/github/checks-status/aaugustin/websockets/main
- :target: https://github.com/aaugustin/websockets/actions/workflows/tests.yml
-
-.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg
- :target: https://websockets.readthedocs.io/
-
-What is ``websockets``?
------------------------
-
-websockets is a library for building WebSocket_ servers and clients in Python
-with a focus on correctness, simplicity, robustness, and performance.
-
-.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
-
-Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
-provides an elegant coroutine-based API.
-
-`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_
-
-Here's how a client sends and receives messages:
-
-.. copy-pasted because GitHub doesn't support the include directive
-
-.. code:: python
-
- #!/usr/bin/env python
-
- import asyncio
- from websockets import connect
-
- async def hello(uri):
- async with connect(uri) as websocket:
- await websocket.send("Hello world!")
- await websocket.recv()
-
- asyncio.run(hello("ws://localhost:8765"))
-
-And here's an echo server:
-
-.. code:: python
-
- #!/usr/bin/env python
-
- import asyncio
- from websockets import serve
-
- async def echo(websocket):
- async for message in websocket:
- await websocket.send(message)
-
- async def main():
- async with serve(echo, "localhost", 8765):
- await asyncio.Future() # run forever
-
- asyncio.run(main())
-
-Does that look good?
-
-`Get started with the tutorial! <https://websockets.readthedocs.io/en/stable/intro/index.html>`_
-
-Why should I use ``websockets``?
---------------------------------
-
-The development of ``websockets`` is shaped by four principles:
-
-1. **Correctness**: ``websockets`` is heavily tested for compliance
- with :rfc:`6455`. Continuous integration fails under 100% branch
- coverage.
-
-2. **Simplicity**: all you need to understand is ``msg = await ws.recv()`` and
- ``await ws.send(msg)``. ``websockets`` takes care of managing connections
- so you can focus on your application.
-
-3. **Robustness**: ``websockets`` is built for production. For example, it was
- the only library to `handle backpressure correctly`_ before the issue
- became widely known in the Python community.
-
-4. **Performance**: memory usage is optimized and configurable. A C extension
- accelerates expensive operations. It's pre-compiled for Linux, macOS and
- Windows and packaged in the wheel format for each system and Python version.
-
-Documentation is a first class concern in the project. Head over to `Read the
-Docs`_ and see for yourself.
-
-.. _Read the Docs: https://websockets.readthedocs.io/
-.. _handle backpressure correctly: https://vorpus.org/blog/some-thoughts-on-asynchronous-api-design-in-a-post-asyncawait-world/#websocket-servers
-
-Why shouldn't I use ``websockets``?
------------------------------------
-
-* If you prefer callbacks over coroutines: ``websockets`` was created to
- provide the best coroutine-based API to manage WebSocket connections in
- Python. Pick another library for a callback-based API.
-
-* If you're looking for a mixed HTTP / WebSocket library: ``websockets`` aims
- at being an excellent implementation of :rfc:`6455`: The WebSocket Protocol
- and :rfc:`7692`: Compression Extensions for WebSocket. Its support for HTTP
- is minimal — just enough for a HTTP health check.
-
- If you want to do both in the same server, look at HTTP frameworks that
- build on top of ``websockets`` to support WebSocket connections, like
- Sanic_.
-
-.. _Sanic: https://sanicframework.org/en/
-
-What else?
-----------
-
-Bug reports, patches and suggestions are welcome!
-
-To report a security vulnerability, please use the `Tidelift security
-contact`_. Tidelift will coordinate the fix and disclosure.
-
-.. _Tidelift security contact: https://tidelift.com/security
-
-For anything else, please open an issue_ or send a `pull request`_.
-
-.. _issue: https://github.com/aaugustin/websockets/issues/new
-.. _pull request: https://github.com/aaugustin/websockets/compare/
-
-Participants must uphold the `Contributor Covenant code of conduct`_.
-
-.. _Contributor Covenant code of conduct: https://github.com/aaugustin/websockets/blob/main/CODE_OF_CONDUCT.md
-
-``websockets`` is released under the `BSD license`_.
-
-.. _BSD license: https://github.com/aaugustin/websockets/blob/main/LICENSE
-
-
diff --git a/testing/web-platform/tests/tools/third_party/websockets/README.rst b/testing/web-platform/tests/tools/third_party/websockets/README.rst
index 2b9a445ea5..870b208baa 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/README.rst
+++ b/testing/web-platform/tests/tools/third_party/websockets/README.rst
@@ -2,7 +2,7 @@
:width: 480px
:alt: websockets
-|licence| |version| |pyversions| |wheel| |tests| |docs|
+|licence| |version| |pyversions| |tests| |docs| |openssf|
.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg
:target: https://pypi.python.org/pypi/websockets
@@ -13,15 +13,15 @@
.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg
:target: https://pypi.python.org/pypi/websockets
-.. |wheel| image:: https://img.shields.io/pypi/wheel/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |tests| image:: https://img.shields.io/github/checks-status/aaugustin/websockets/main
- :target: https://github.com/aaugustin/websockets/actions/workflows/tests.yml
+.. |tests| image:: https://img.shields.io/github/checks-status/python-websockets/websockets/main?label=tests
+ :target: https://github.com/python-websockets/websockets/actions/workflows/tests.yml
.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg
:target: https://websockets.readthedocs.io/
+.. |openssf| image:: https://bestpractices.coreinfrastructure.org/projects/6475/badge
+ :target: https://bestpractices.coreinfrastructure.org/projects/6475
+
What is ``websockets``?
-----------------------
@@ -30,37 +30,24 @@ with a focus on correctness, simplicity, robustness, and performance.
.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
-Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
-provides an elegant coroutine-based API.
+Built on top of ``asyncio``, Python's standard asynchronous I/O framework, the
+default implementation provides an elegant coroutine-based API.
-`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_
+An implementation on top of ``threading`` and a Sans-I/O implementation are also
+available.
-Here's how a client sends and receives messages:
+`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_
.. copy-pasted because GitHub doesn't support the include directive
-.. code:: python
-
- #!/usr/bin/env python
-
- import asyncio
- from websockets import connect
-
- async def hello(uri):
- async with connect(uri) as websocket:
- await websocket.send("Hello world!")
- await websocket.recv()
-
- asyncio.run(hello("ws://localhost:8765"))
-
-And here's an echo server:
+Here's an echo server with the ``asyncio`` API:
.. code:: python
#!/usr/bin/env python
import asyncio
- from websockets import serve
+ from websockets.server import serve
async def echo(websocket):
async for message in websocket:
@@ -72,6 +59,23 @@ And here's an echo server:
asyncio.run(main())
+Here's how a client sends and receives messages with the ``threading`` API:
+
+.. code:: python
+
+ #!/usr/bin/env python
+
+ from websockets.sync.client import connect
+
+ def hello():
+ with connect("ws://localhost:8765") as websocket:
+ websocket.send("Hello world!")
+ message = websocket.recv()
+ print(f"Received: {message}")
+
+ hello()
+
+
Does that look good?
`Get started with the tutorial! <https://websockets.readthedocs.io/en/stable/intro/index.html>`_
@@ -79,7 +83,7 @@ Does that look good?
.. raw:: html
<hr>
- <img align="left" height="150" width="150" src="https://raw.githubusercontent.com/aaugustin/websockets/main/logo/tidelift.png">
+ <img align="left" height="150" width="150" src="https://raw.githubusercontent.com/python-websockets/websockets/main/logo/tidelift.png">
<h3 align="center"><i>websockets for enterprise</i></h3>
<p align="center"><i>Available as part of the Tidelift Subscription</i></p>
<p align="center"><i>The maintainers of websockets and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. <a href="https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme">Learn more.</a></i></p>
@@ -91,9 +95,8 @@ Why should I use ``websockets``?
The development of ``websockets`` is shaped by four principles:
-1. **Correctness**: ``websockets`` is heavily tested for compliance
- with :rfc:`6455`. Continuous integration fails under 100% branch
- coverage.
+1. **Correctness**: ``websockets`` is heavily tested for compliance with
+ :rfc:`6455`. Continuous integration fails under 100% branch coverage.
2. **Simplicity**: all you need to understand is ``msg = await ws.recv()`` and
``await ws.send(msg)``. ``websockets`` takes care of managing connections
@@ -123,7 +126,7 @@ Why shouldn't I use ``websockets``?
* If you're looking for a mixed HTTP / WebSocket library: ``websockets`` aims
at being an excellent implementation of :rfc:`6455`: The WebSocket Protocol
and :rfc:`7692`: Compression Extensions for WebSocket. Its support for HTTP
- is minimal — just enough for a HTTP health check.
+ is minimal — just enough for an HTTP health check.
If you want to do both in the same server, look at HTTP frameworks that
build on top of ``websockets`` to support WebSocket connections, like
@@ -143,13 +146,13 @@ contact`_. Tidelift will coordinate the fix and disclosure.
For anything else, please open an issue_ or send a `pull request`_.
-.. _issue: https://github.com/aaugustin/websockets/issues/new
-.. _pull request: https://github.com/aaugustin/websockets/compare/
+.. _issue: https://github.com/python-websockets/websockets/issues/new
+.. _pull request: https://github.com/python-websockets/websockets/compare/
Participants must uphold the `Contributor Covenant code of conduct`_.
-.. _Contributor Covenant code of conduct: https://github.com/aaugustin/websockets/blob/main/CODE_OF_CONDUCT.md
+.. _Contributor Covenant code of conduct: https://github.com/python-websockets/websockets/blob/main/CODE_OF_CONDUCT.md
``websockets`` is released under the `BSD license`_.
-.. _BSD license: https://github.com/aaugustin/websockets/blob/main/LICENSE
+.. _BSD license: https://github.com/python-websockets/websockets/blob/main/LICENSE
diff --git a/testing/web-platform/tests/tools/third_party/websockets/SECURITY.md b/testing/web-platform/tests/tools/third_party/websockets/SECURITY.md
new file mode 100644
index 0000000000..175b20c589
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/SECURITY.md
@@ -0,0 +1,12 @@
+# Security
+
+## Policy
+
+Only the latest version receives security updates.
+
+## Contact information
+
+Please report security vulnerabilities to the
+[Tidelift security team](https://tidelift.com/security).
+
+Tidelift will coordinate the fix and disclosure.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/compliance/README.rst b/testing/web-platform/tests/tools/third_party/websockets/compliance/README.rst
new file mode 100644
index 0000000000..8570f9176d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/compliance/README.rst
@@ -0,0 +1,50 @@
+Autobahn Testsuite
+==================
+
+General information and installation instructions are available at
+https://github.com/crossbario/autobahn-testsuite.
+
+To improve performance, you should compile the C extension first::
+
+ $ python setup.py build_ext --inplace
+
+Running the test suite
+----------------------
+
+All commands below must be run from the directory containing this file.
+
+To test the server::
+
+ $ PYTHONPATH=.. python test_server.py
+ $ wstest -m fuzzingclient
+
+To test the client::
+
+ $ wstest -m fuzzingserver
+ $ PYTHONPATH=.. python test_client.py
+
+Run the first command in a shell. Run the second command in another shell.
+It should take about ten minutes to complete — wstest is the bottleneck.
+Then kill the first one with Ctrl-C.
+
+The test client or server shouldn't display any exceptions. The results are
+stored in reports/clients/index.html.
+
+Note that the Autobahn software only supports Python 2, while ``websockets``
+only supports Python 3; you need two different environments.
+
+Conformance notes
+-----------------
+
+Some test cases are more strict than the RFC. Given the implementation of the
+library and the test echo client or server, ``websockets`` gets a "Non-Strict"
+in these cases.
+
+In 3.2, 3.3, 4.1.3, 4.1.4, 4.2.3, 4.2.4, and 5.15 ``websockets`` notices the
+protocol error and closes the connection before it has had a chance to echo
+the previous frame.
+
+In 6.4.3 and 6.4.4, even though it uses an incremental decoder, ``websockets``
+doesn't notice the invalid utf-8 fast enough to get a "Strict" pass. These
+tests are more strict than the RFC.
+
diff --git a/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingclient.json b/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingclient.json
new file mode 100644
index 0000000000..202ff49a03
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingclient.json
@@ -0,0 +1,11 @@
+
+{
+ "options": {"failByDrop": false},
+ "outdir": "./reports/servers",
+
+ "servers": [{"agent": "websockets", "url": "ws://localhost:8642", "options": {"version": 18}}],
+
+ "cases": ["*"],
+ "exclude-cases": [],
+ "exclude-agent-cases": {}
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingserver.json b/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingserver.json
new file mode 100644
index 0000000000..1bdb42723e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/compliance/fuzzingserver.json
@@ -0,0 +1,12 @@
+
+{
+ "url": "ws://localhost:8642",
+
+ "options": {"failByDrop": false},
+ "outdir": "./reports/clients",
+ "webport": 8080,
+
+ "cases": ["*"],
+ "exclude-cases": [],
+ "exclude-agent-cases": {}
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/compliance/test_client.py b/testing/web-platform/tests/tools/third_party/websockets/compliance/test_client.py
new file mode 100644
index 0000000000..1ed4d711e9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/compliance/test_client.py
@@ -0,0 +1,48 @@
+import json
+import logging
+import urllib.parse
+
+import asyncio
+import websockets
+
+
+logging.basicConfig(level=logging.WARNING)
+
+# Uncomment this line to make only websockets more verbose.
+# logging.getLogger('websockets').setLevel(logging.DEBUG)
+
+
+SERVER = "ws://127.0.0.1:8642"
+AGENT = "websockets"
+
+
+async def get_case_count(server):
+ uri = f"{server}/getCaseCount"
+ async with websockets.connect(uri) as ws:
+ msg = ws.recv()
+ return json.loads(msg)
+
+
+async def run_case(server, case, agent):
+ uri = f"{server}/runCase?case={case}&agent={agent}"
+ async with websockets.connect(uri, max_size=2 ** 25, max_queue=1) as ws:
+ async for msg in ws:
+ await ws.send(msg)
+
+
+async def update_reports(server, agent):
+ uri = f"{server}/updateReports?agent={agent}"
+ async with websockets.connect(uri):
+ pass
+
+
+async def run_tests(server, agent):
+ cases = await get_case_count(server)
+ for case in range(1, cases + 1):
+ print(f"Running test case {case} out of {cases}", end="\r")
+ await run_case(server, case, agent)
+ print(f"Ran {cases} test cases ")
+ await update_reports(server, agent)
+
+
+asyncio.run(run_tests(SERVER, urllib.parse.quote(AGENT)))
diff --git a/testing/web-platform/tests/tools/third_party/websockets/compliance/test_server.py b/testing/web-platform/tests/tools/third_party/websockets/compliance/test_server.py
new file mode 100644
index 0000000000..92f895d926
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/compliance/test_server.py
@@ -0,0 +1,29 @@
+import logging
+
+import asyncio
+import websockets
+
+
+logging.basicConfig(level=logging.WARNING)
+
+# Uncomment this line to make only websockets more verbose.
+# logging.getLogger('websockets').setLevel(logging.DEBUG)
+
+
+HOST, PORT = "127.0.0.1", 8642
+
+
+async def echo(ws):
+ async for msg in ws:
+ await ws.send(msg)
+
+
+async def main():
+ with websockets.serve(echo, HOST, PORT, max_size=2 ** 25, max_queue=1):
+ try:
+ await asyncio.Future()
+ except KeyboardInterrupt:
+ pass
+
+
+asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/Makefile b/testing/web-platform/tests/tools/third_party/websockets/docs/Makefile
new file mode 100644
index 0000000000..0458706458
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/Makefile
@@ -0,0 +1,23 @@
+# Minimal makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line, and also
+# from the environment for the first two.
+SPHINXOPTS ?=
+SPHINXBUILD ?= sphinx-build
+SOURCEDIR = .
+BUILDDIR = _build
+
+# Put it first so that "make" without argument is like "make help".
+help:
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+livehtml:
+ sphinx-autobuild --watch "$(SOURCEDIR)/../src" "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/_static/tidelift.png b/testing/web-platform/tests/tools/third_party/websockets/docs/_static/tidelift.png
deleted file mode 100644
index 317dc4d985..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/docs/_static/tidelift.png
+++ /dev/null
Binary files differ
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/conf.py b/testing/web-platform/tests/tools/third_party/websockets/docs/conf.py
new file mode 100644
index 0000000000..9d61dc7173
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/conf.py
@@ -0,0 +1,171 @@
+# Configuration file for the Sphinx documentation builder.
+#
+# This file only contains a selection of the most common options. For a full
+# list see the documentation:
+# https://www.sphinx-doc.org/en/master/usage/configuration.html
+
+import datetime
+import importlib
+import inspect
+import os
+import subprocess
+import sys
+
+# -- Path setup --------------------------------------------------------------
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+sys.path.insert(0, os.path.join(os.path.abspath(".."), "src"))
+
+
+# -- Project information -----------------------------------------------------
+
+project = "websockets"
+copyright = f"2013-{datetime.date.today().year}, Aymeric Augustin and contributors"
+author = "Aymeric Augustin"
+
+from websockets.version import tag as version, version as release
+
+
+# -- General configuration ---------------------------------------------------
+
+nitpicky = True
+
+nitpick_ignore = [
+ # topics/design.rst discusses undocumented APIs
+ ("py:meth", "client.WebSocketClientProtocol.handshake"),
+ ("py:meth", "server.WebSocketServerProtocol.handshake"),
+ ("py:attr", "legacy.protocol.WebSocketCommonProtocol.is_client"),
+ ("py:attr", "legacy.protocol.WebSocketCommonProtocol.messages"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.close_connection"),
+ ("py:attr", "legacy.protocol.WebSocketCommonProtocol.close_connection_task"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.keepalive_ping"),
+ ("py:attr", "legacy.protocol.WebSocketCommonProtocol.keepalive_ping_task"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.transfer_data"),
+ ("py:attr", "legacy.protocol.WebSocketCommonProtocol.transfer_data_task"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.connection_open"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.ensure_open"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.fail_connection"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.connection_lost"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.read_message"),
+ ("py:meth", "legacy.protocol.WebSocketCommonProtocol.write_frame"),
+]
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = [
+ "sphinx.ext.autodoc",
+ "sphinx.ext.intersphinx",
+ "sphinx.ext.linkcode",
+ "sphinx.ext.napoleon",
+ "sphinx_copybutton",
+ "sphinx_inline_tabs",
+ "sphinxcontrib.spelling",
+ "sphinxcontrib_trio",
+ "sphinxext.opengraph",
+]
+# It is currently inconvenient to install PyEnchant on Apple Silicon.
+try:
+ import sphinxcontrib.spelling
+except ImportError:
+ extensions.remove("sphinxcontrib.spelling")
+
+autodoc_typehints = "description"
+
+autodoc_typehints_description_target = "documented"
+
+# Workaround for https://github.com/sphinx-doc/sphinx/issues/9560
+from sphinx.domains.python import PythonDomain
+
+assert PythonDomain.object_types["data"].roles == ("data", "obj")
+PythonDomain.object_types["data"].roles = ("data", "class", "obj")
+
+intersphinx_mapping = {"python": ("https://docs.python.org/3", None)}
+
+spelling_show_suggestions = True
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ["_templates"]
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+# This pattern also affects html_static_path and html_extra_path.
+exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
+
+# Configure viewcode extension.
+from websockets.version import commit
+
+code_url = f"https://github.com/python-websockets/websockets/blob/{commit}"
+
+def linkcode_resolve(domain, info):
+ # Non-linkable objects from the starter kit in the tutorial.
+ if domain == "js" or info["module"] == "connect4":
+ return
+
+ assert domain == "py", "expected only Python objects"
+
+ mod = importlib.import_module(info["module"])
+ if "." in info["fullname"]:
+ objname, attrname = info["fullname"].split(".")
+ obj = getattr(mod, objname)
+ try:
+ # object is a method of a class
+ obj = getattr(obj, attrname)
+ except AttributeError:
+ # object is an attribute of a class
+ return None
+ else:
+ obj = getattr(mod, info["fullname"])
+
+ try:
+ file = inspect.getsourcefile(obj)
+ lines = inspect.getsourcelines(obj)
+ except TypeError:
+ # e.g. object is a typing.Union
+ return None
+ file = os.path.relpath(file, os.path.abspath(".."))
+ if not file.startswith("src/websockets"):
+ # e.g. object is a typing.NewType
+ return None
+ start, end = lines[1], lines[1] + len(lines[0]) - 1
+
+ return f"{code_url}/{file}#L{start}-L{end}"
+
+# Configure opengraph extension
+
+# Social cards don't support the SVG logo. Also, the text preview looks bad.
+ogp_social_cards = {"enable": False}
+
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. See the documentation for
+# a list of builtin themes.
+html_theme = "furo"
+
+html_theme_options = {
+ "light_css_variables": {
+ "color-brand-primary": "#306998", # blue from logo
+ "color-brand-content": "#0b487a", # blue more saturated and less dark
+ },
+ "dark_css_variables": {
+ "color-brand-primary": "#ffd43bcc", # yellow from logo, more muted than content
+ "color-brand-content": "#ffd43bd9", # yellow from logo, transparent like text
+ },
+ "sidebar_hide_name": True,
+}
+
+html_logo = "_static/websockets.svg"
+
+html_favicon = "_static/favicon.ico"
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ["_static"]
+
+html_copy_source = False
+
+html_show_sphinx = False
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/asyncio.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/asyncio.rst
new file mode 100644
index 0000000000..e77f50addd
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/asyncio.rst
@@ -0,0 +1,69 @@
+Using asyncio
+=============
+
+.. currentmodule:: websockets
+
+How do I run two coroutines in parallel?
+----------------------------------------
+
+You must start two tasks, which the event loop will run concurrently. You can
+achieve this with :func:`asyncio.gather` or :func:`asyncio.create_task`.
+
+Keep track of the tasks and make sure they terminate or you cancel them when
+the connection terminates.
+
+Why does my program never receive any messages?
+-----------------------------------------------
+
+Your program runs a coroutine that never yields control to the event loop. The
+coroutine that receives messages never gets a chance to run.
+
+Putting an ``await`` statement in a ``for`` or a ``while`` loop isn't enough
+to yield control. Awaiting a coroutine may yield control, but there's no
+guarantee that it will.
+
+For example, :meth:`~legacy.protocol.WebSocketCommonProtocol.send` only yields
+control when send buffers are full, which never happens in most practical
+cases.
+
+If you run a loop that contains only synchronous operations and
+a :meth:`~legacy.protocol.WebSocketCommonProtocol.send` call, you must yield
+control explicitly with :func:`asyncio.sleep`::
+
+ async def producer(websocket):
+ message = generate_next_message()
+ await websocket.send(message)
+ await asyncio.sleep(0) # yield control to the event loop
+
+:func:`asyncio.sleep` always suspends the current task, allowing other tasks
+to run. This behavior is documented precisely because it isn't expected from
+every coroutine.
+
+See `issue 867`_.
+
+.. _issue 867: https://github.com/python-websockets/websockets/issues/867
+
+Why am I having problems with threads?
+--------------------------------------
+
+If you choose websockets' default implementation based on :mod:`asyncio`, then
+you shouldn't use threads. Indeed, choosing :mod:`asyncio` to handle concurrency
+is mutually exclusive with :mod:`threading`.
+
+If you believe that you need to run websockets in a thread and some logic in
+another thread, you should run that logic in a :class:`~asyncio.Task` instead.
+If it blocks the event loop, :meth:`~asyncio.loop.run_in_executor` will help.
+
+This question is really about :mod:`asyncio`. Please review the advice about
+:ref:`asyncio-multithreading` in the Python documentation.
+
+Why does my simple program misbehave mysteriously?
+--------------------------------------------------
+
+You are using :func:`time.sleep` instead of :func:`asyncio.sleep`, which
+blocks the event loop and prevents asyncio from operating normally.
+
+This may lead to messages getting send but not received, to connection
+timeouts, and to unexpected results of shotgun debugging e.g. adding an
+unnecessary call to :meth:`~legacy.protocol.WebSocketCommonProtocol.send`
+makes the program functional.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/client.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/client.rst
new file mode 100644
index 0000000000..c590ac107d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/client.rst
@@ -0,0 +1,101 @@
+Client
+======
+
+.. currentmodule:: websockets
+
+Why does the client close the connection prematurely?
+-----------------------------------------------------
+
+You're exiting the context manager prematurely. Wait for the work to be
+finished before exiting.
+
+For example, if your code has a structure similar to::
+
+ async with connect(...) as websocket:
+ asyncio.create_task(do_some_work())
+
+change it to::
+
+ async with connect(...) as websocket:
+ await do_some_work()
+
+How do I access HTTP headers?
+-----------------------------
+
+Once the connection is established, HTTP headers are available in
+:attr:`~client.WebSocketClientProtocol.request_headers` and
+:attr:`~client.WebSocketClientProtocol.response_headers`.
+
+How do I set HTTP headers?
+--------------------------
+
+To set the ``Origin``, ``Sec-WebSocket-Extensions``, or
+``Sec-WebSocket-Protocol`` headers in the WebSocket handshake request, use the
+``origin``, ``extensions``, or ``subprotocols`` arguments of
+:func:`~client.connect`.
+
+To override the ``User-Agent`` header, use the ``user_agent_header`` argument.
+Set it to :obj:`None` to remove the header.
+
+To set other HTTP headers, for example the ``Authorization`` header, use the
+``extra_headers`` argument::
+
+ async with connect(..., extra_headers={"Authorization": ...}) as websocket:
+ ...
+
+In the :mod:`threading` API, this argument is named ``additional_headers``::
+
+ with connect(..., additional_headers={"Authorization": ...}) as websocket:
+ ...
+
+How do I force the IP address that the client connects to?
+----------------------------------------------------------
+
+Use the ``host`` argument of :meth:`~asyncio.loop.create_connection`::
+
+ await websockets.connect("ws://example.com", host="192.168.0.1")
+
+:func:`~client.connect` accepts the same arguments as
+:meth:`~asyncio.loop.create_connection`.
+
+How do I close a connection?
+----------------------------
+
+The easiest is to use :func:`~client.connect` as a context manager::
+
+ async with connect(...) as websocket:
+ ...
+
+The connection is closed when exiting the context manager.
+
+How do I reconnect when the connection drops?
+---------------------------------------------
+
+Use :func:`~client.connect` as an asynchronous iterator::
+
+ async for websocket in websockets.connect(...):
+ try:
+ ...
+ except websockets.ConnectionClosed:
+ continue
+
+Make sure you handle exceptions in the ``async for`` loop. Uncaught exceptions
+will break out of the loop.
+
+How do I stop a client that is processing messages in a loop?
+-------------------------------------------------------------
+
+You can close the connection.
+
+Here's an example that terminates cleanly when it receives SIGTERM on Unix:
+
+.. literalinclude:: ../../example/faq/shutdown_client.py
+ :emphasize-lines: 10-13
+
+How do I disable TLS/SSL certificate verification?
+--------------------------------------------------
+
+Look at the ``ssl`` argument of :meth:`~asyncio.loop.create_connection`.
+
+:func:`~client.connect` accepts the same arguments as
+:meth:`~asyncio.loop.create_connection`.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/common.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/common.rst
new file mode 100644
index 0000000000..2c63c4f36f
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/common.rst
@@ -0,0 +1,161 @@
+Both sides
+==========
+
+.. currentmodule:: websockets
+
+What does ``ConnectionClosedError: no close frame received or sent`` mean?
+--------------------------------------------------------------------------
+
+If you're seeing this traceback in the logs of a server:
+
+.. code-block:: pytb
+
+ connection handler failed
+ Traceback (most recent call last):
+ ...
+ asyncio.exceptions.IncompleteReadError: 0 bytes read on a total of 2 expected bytes
+
+ The above exception was the direct cause of the following exception:
+
+ Traceback (most recent call last):
+ ...
+ websockets.exceptions.ConnectionClosedError: no close frame received or sent
+
+or if a client crashes with this traceback:
+
+.. code-block:: pytb
+
+ Traceback (most recent call last):
+ ...
+ ConnectionResetError: [Errno 54] Connection reset by peer
+
+ The above exception was the direct cause of the following exception:
+
+ Traceback (most recent call last):
+ ...
+ websockets.exceptions.ConnectionClosedError: no close frame received or sent
+
+it means that the TCP connection was lost. As a consequence, the WebSocket
+connection was closed without receiving and sending a close frame, which is
+abnormal.
+
+You can catch and handle :exc:`~exceptions.ConnectionClosed` to prevent it
+from being logged.
+
+There are several reasons why long-lived connections may be lost:
+
+* End-user devices tend to lose network connectivity often and unpredictably
+ because they can move out of wireless network coverage, get unplugged from
+ a wired network, enter airplane mode, be put to sleep, etc.
+* HTTP load balancers or proxies that aren't configured for long-lived
+ connections may terminate connections after a short amount of time, usually
+ 30 seconds, despite websockets' keepalive mechanism.
+
+If you're facing a reproducible issue, :ref:`enable debug logs <debugging>` to
+see when and how connections are closed.
+
+What does ``ConnectionClosedError: sent 1011 (internal error) keepalive ping timeout; no close frame received`` mean?
+---------------------------------------------------------------------------------------------------------------------
+
+If you're seeing this traceback in the logs of a server:
+
+.. code-block:: pytb
+
+ connection handler failed
+ Traceback (most recent call last):
+ ...
+ asyncio.exceptions.CancelledError
+
+ The above exception was the direct cause of the following exception:
+
+ Traceback (most recent call last):
+ ...
+ websockets.exceptions.ConnectionClosedError: sent 1011 (internal error) keepalive ping timeout; no close frame received
+
+or if a client crashes with this traceback:
+
+.. code-block:: pytb
+
+ Traceback (most recent call last):
+ ...
+ asyncio.exceptions.CancelledError
+
+ The above exception was the direct cause of the following exception:
+
+ Traceback (most recent call last):
+ ...
+ websockets.exceptions.ConnectionClosedError: sent 1011 (internal error) keepalive ping timeout; no close frame received
+
+it means that the WebSocket connection suffered from excessive latency and was
+closed after reaching the timeout of websockets' keepalive mechanism.
+
+You can catch and handle :exc:`~exceptions.ConnectionClosed` to prevent it
+from being logged.
+
+There are two main reasons why latency may increase:
+
+* Poor network connectivity.
+* More traffic than the recipient can handle.
+
+See the discussion of :doc:`timeouts <../topics/timeouts>` for details.
+
+If websockets' default timeout of 20 seconds is too short for your use case,
+you can adjust it with the ``ping_timeout`` argument.
+
+How do I set a timeout on :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`?
+--------------------------------------------------------------------------------
+
+On Python ≥ 3.11, use :func:`asyncio.timeout`::
+
+ async with asyncio.timeout(timeout=10):
+ message = await websocket.recv()
+
+On older versions of Python, use :func:`asyncio.wait_for`::
+
+ message = await asyncio.wait_for(websocket.recv(), timeout=10)
+
+This technique works for most APIs. When it doesn't, for example with
+asynchronous context managers, websockets provides an ``open_timeout`` argument.
+
+How can I pass arguments to a custom protocol subclass?
+-------------------------------------------------------
+
+You can bind additional arguments to the protocol factory with
+:func:`functools.partial`::
+
+ import asyncio
+ import functools
+ import websockets
+
+ class MyServerProtocol(websockets.WebSocketServerProtocol):
+ def __init__(self, *args, extra_argument=None, **kwargs):
+ super().__init__(*args, **kwargs)
+ # do something with extra_argument
+
+ create_protocol = functools.partial(MyServerProtocol, extra_argument=42)
+ start_server = websockets.serve(..., create_protocol=create_protocol)
+
+This example was for a server. The same pattern applies on a client.
+
+How do I keep idle connections open?
+------------------------------------
+
+websockets sends pings at 20 seconds intervals to keep the connection open.
+
+It closes the connection if it doesn't get a pong within 20 seconds.
+
+You can adjust this behavior with ``ping_interval`` and ``ping_timeout``.
+
+See :doc:`../topics/timeouts` for details.
+
+How do I respond to pings?
+--------------------------
+
+If you are referring to Ping_ and Pong_ frames defined in the WebSocket
+protocol, don't bother, because websockets handles them for you.
+
+.. _Ping: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.2
+.. _Pong: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.3
+
+If you are connecting to a server that defines its own heartbeat at the
+application level, then you need to build that logic into your application.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/index.rst
new file mode 100644
index 0000000000..9d5b0d538a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/index.rst
@@ -0,0 +1,21 @@
+Frequently asked questions
+==========================
+
+.. currentmodule:: websockets
+
+.. admonition:: Many questions asked in websockets' issue tracker are really
+ about :mod:`asyncio`.
+ :class: seealso
+
+ Python's documentation about `developing with asyncio`_ is a good
+ complement.
+
+ .. _developing with asyncio: https://docs.python.org/3/library/asyncio-dev.html
+
+.. toctree::
+
+ server
+ client
+ common
+ asyncio
+ misc
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/misc.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/misc.rst
new file mode 100644
index 0000000000..ee5ad23728
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/misc.rst
@@ -0,0 +1,49 @@
+Miscellaneous
+=============
+
+.. currentmodule:: websockets
+
+Why do I get the error: ``module 'websockets' has no attribute '...'``?
+.......................................................................
+
+Often, this is because you created a script called ``websockets.py`` in your
+current working directory. Then ``import websockets`` imports this module
+instead of the websockets library.
+
+.. _real-import-paths:
+
+Why is the default implementation located in ``websockets.legacy``?
+...................................................................
+
+This is an artifact of websockets' history. For its first eight years, only the
+:mod:`asyncio` implementation existed. Then, the Sans-I/O implementation was
+added. Moving the code in a ``legacy`` submodule eased this refactoring and
+optimized maintainability.
+
+All public APIs were kept at their original locations. ``websockets.legacy``
+isn't a public API. It's only visible in the source code and in stack traces.
+There is no intent to deprecate this implementation — at least until a superior
+alternative exists.
+
+Why is websockets slower than another library in my benchmark?
+..............................................................
+
+Not all libraries are as feature-complete as websockets. For a fair benchmark,
+you should disable features that the other library doesn't provide. Typically,
+you may need to disable:
+
+* Compression: set ``compression=None``
+* Keepalive: set ``ping_interval=None``
+* UTF-8 decoding: send ``bytes`` rather than ``str``
+
+If websockets is still slower than another Python library, please file a bug.
+
+Are there ``onopen``, ``onmessage``, ``onerror``, and ``onclose`` callbacks?
+............................................................................
+
+No, there aren't.
+
+websockets provides high-level, coroutine-based APIs. Compared to callbacks,
+coroutines make it easier to manage control flow in concurrent code.
+
+If you prefer callback-based APIs, you should use another library.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/faq/server.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/server.rst
new file mode 100644
index 0000000000..08b412d306
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/faq/server.rst
@@ -0,0 +1,336 @@
+Server
+======
+
+.. currentmodule:: websockets
+
+Why does the server close the connection prematurely?
+-----------------------------------------------------
+
+Your connection handler exits prematurely. Wait for the work to be finished
+before returning.
+
+For example, if your handler has a structure similar to::
+
+ async def handler(websocket):
+ asyncio.create_task(do_some_work())
+
+change it to::
+
+ async def handler(websocket):
+ await do_some_work()
+
+Why does the server close the connection after one message?
+-----------------------------------------------------------
+
+Your connection handler exits after processing one message. Write a loop to
+process multiple messages.
+
+For example, if your handler looks like this::
+
+ async def handler(websocket):
+ print(websocket.recv())
+
+change it like this::
+
+ async def handler(websocket):
+ async for message in websocket:
+ print(message)
+
+*Don't feel bad if this happens to you — it's the most common question in
+websockets' issue tracker :-)*
+
+Why can only one client connect at a time?
+------------------------------------------
+
+Your connection handler blocks the event loop. Look for blocking calls.
+
+Any call that may take some time must be asynchronous.
+
+For example, this connection handler prevents the event loop from running during
+one second::
+
+ async def handler(websocket):
+ time.sleep(1)
+ ...
+
+Change it to::
+
+ async def handler(websocket):
+ await asyncio.sleep(1)
+ ...
+
+In addition, calling a coroutine doesn't guarantee that it will yield control to
+the event loop.
+
+For example, this connection handler blocks the event loop by sending messages
+continuously::
+
+ async def handler(websocket):
+ while True:
+ await websocket.send("firehose!")
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.send` completes synchronously as
+long as there's space in send buffers. The event loop never runs. (This pattern
+is uncommon in real-world applications. It occurs mostly in toy programs.)
+
+You can avoid the issue by yielding control to the event loop explicitly::
+
+ async def handler(websocket):
+ while True:
+ await websocket.send("firehose!")
+ await asyncio.sleep(0)
+
+All this is part of learning asyncio. It isn't specific to websockets.
+
+See also Python's documentation about `running blocking code`_.
+
+.. _running blocking code: https://docs.python.org/3/library/asyncio-dev.html#running-blocking-code
+
+.. _send-message-to-all-users:
+
+How do I send a message to all users?
+-------------------------------------
+
+Record all connections in a global variable::
+
+ CONNECTIONS = set()
+
+ async def handler(websocket):
+ CONNECTIONS.add(websocket)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CONNECTIONS.remove(websocket)
+
+Then, call :func:`~websockets.broadcast`::
+
+ import websockets
+
+ def message_all(message):
+ websockets.broadcast(CONNECTIONS, message)
+
+If you're running multiple server processes, make sure you call ``message_all``
+in each process.
+
+.. _send-message-to-single-user:
+
+How do I send a message to a single user?
+-----------------------------------------
+
+Record connections in a global variable, keyed by user identifier::
+
+ CONNECTIONS = {}
+
+ async def handler(websocket):
+ user_id = ... # identify user in your app's context
+ CONNECTIONS[user_id] = websocket
+ try:
+ await websocket.wait_closed()
+ finally:
+ del CONNECTIONS[user_id]
+
+Then, call :meth:`~legacy.protocol.WebSocketCommonProtocol.send`::
+
+ async def message_user(user_id, message):
+ websocket = CONNECTIONS[user_id] # raises KeyError if user disconnected
+ await websocket.send(message) # may raise websockets.ConnectionClosed
+
+Add error handling according to the behavior you want if the user disconnected
+before the message could be sent.
+
+This example supports only one connection per user. To support concurrent
+connections by the same user, you can change ``CONNECTIONS`` to store a set of
+connections for each user.
+
+If you're running multiple server processes, call ``message_user`` in each
+process. The process managing the user's connection sends the message; other
+processes do nothing.
+
+When you reach a scale where server processes cannot keep up with the stream of
+all messages, you need a better architecture. For example, you could deploy an
+external publish / subscribe system such as Redis_. Server processes would
+subscribe their clients. Then, they would receive messages only for the
+connections that they're managing.
+
+.. _Redis: https://redis.io/
+
+How do I send a message to a channel, a topic, or some users?
+-------------------------------------------------------------
+
+websockets doesn't provide built-in publish / subscribe functionality.
+
+Record connections in a global variable, keyed by user identifier, as shown in
+:ref:`How do I send a message to a single user?<send-message-to-single-user>`
+
+Then, build the set of recipients and broadcast the message to them, as shown in
+:ref:`How do I send a message to all users?<send-message-to-all-users>`
+
+:doc:`../howto/django` contains a complete implementation of this pattern.
+
+Again, as you scale, you may reach the performance limits of a basic in-process
+implementation. You may need an external publish / subscribe system like Redis_.
+
+.. _Redis: https://redis.io/
+
+How do I pass arguments to the connection handler?
+--------------------------------------------------
+
+You can bind additional arguments to the connection handler with
+:func:`functools.partial`::
+
+ import asyncio
+ import functools
+ import websockets
+
+ async def handler(websocket, extra_argument):
+ ...
+
+ bound_handler = functools.partial(handler, extra_argument=42)
+ start_server = websockets.serve(bound_handler, ...)
+
+Another way to achieve this result is to define the ``handler`` coroutine in
+a scope where the ``extra_argument`` variable exists instead of injecting it
+through an argument.
+
+How do I access the request path?
+---------------------------------
+
+It is available in the :attr:`~server.WebSocketServerProtocol.path` attribute.
+
+You may route a connection to different handlers depending on the request path::
+
+ async def handler(websocket):
+ if websocket.path == "/blue":
+ await blue_handler(websocket)
+ elif websocket.path == "/green":
+ await green_handler(websocket)
+ else:
+ # No handler for this path; close the connection.
+ return
+
+You may also route the connection based on the first message received from the
+client, as shown in the :doc:`tutorial <../intro/tutorial2>`. When you want to
+authenticate the connection before routing it, this is usually more convenient.
+
+Generally speaking, there is far less emphasis on the request path in WebSocket
+servers than in HTTP servers. When a WebSocket server provides a single endpoint,
+it may ignore the request path entirely.
+
+How do I access HTTP headers?
+-----------------------------
+
+To access HTTP headers during the WebSocket handshake, you can override
+:attr:`~server.WebSocketServerProtocol.process_request`::
+
+ async def process_request(self, path, request_headers):
+ authorization = request_headers["Authorization"]
+
+Once the connection is established, HTTP headers are available in
+:attr:`~server.WebSocketServerProtocol.request_headers` and
+:attr:`~server.WebSocketServerProtocol.response_headers`::
+
+ async def handler(websocket):
+ authorization = websocket.request_headers["Authorization"]
+
+How do I set HTTP headers?
+--------------------------
+
+To set the ``Sec-WebSocket-Extensions`` or ``Sec-WebSocket-Protocol`` headers in
+the WebSocket handshake response, use the ``extensions`` or ``subprotocols``
+arguments of :func:`~server.serve`.
+
+To override the ``Server`` header, use the ``server_header`` argument. Set it to
+:obj:`None` to remove the header.
+
+To set other HTTP headers, use the ``extra_headers`` argument.
+
+How do I get the IP address of the client?
+------------------------------------------
+
+It's available in :attr:`~legacy.protocol.WebSocketCommonProtocol.remote_address`::
+
+ async def handler(websocket):
+ remote_ip = websocket.remote_address[0]
+
+How do I set the IP addresses that my server listens on?
+--------------------------------------------------------
+
+Use the ``host`` argument of :meth:`~asyncio.loop.create_server`::
+
+ await websockets.serve(handler, host="192.168.0.1", port=8080)
+
+:func:`~server.serve` accepts the same arguments as
+:meth:`~asyncio.loop.create_server`.
+
+What does ``OSError: [Errno 99] error while attempting to bind on address ('::1', 80, 0, 0): address not available`` mean?
+--------------------------------------------------------------------------------------------------------------------------
+
+You are calling :func:`~server.serve` without a ``host`` argument in a context
+where IPv6 isn't available.
+
+To listen only on IPv4, specify ``host="0.0.0.0"`` or ``family=socket.AF_INET``.
+
+Refer to the documentation of :meth:`~asyncio.loop.create_server` for details.
+
+How do I close a connection?
+----------------------------
+
+websockets takes care of closing the connection when the handler exits.
+
+How do I stop a server?
+-----------------------
+
+Exit the :func:`~server.serve` context manager.
+
+Here's an example that terminates cleanly when it receives SIGTERM on Unix:
+
+.. literalinclude:: ../../example/faq/shutdown_server.py
+ :emphasize-lines: 12-15,18
+
+How do I stop a server while keeping existing connections open?
+---------------------------------------------------------------
+
+Call the server's :meth:`~server.WebSocketServer.close` method with
+``close_connections=False``.
+
+Here's how to adapt the example just above::
+
+ async def server():
+ ...
+
+ server = await websockets.serve(echo, "localhost", 8765)
+ await stop
+ await server.close(close_connections=False)
+
+How do I implement a health check?
+----------------------------------
+
+Intercept WebSocket handshake requests with the
+:meth:`~server.WebSocketServerProtocol.process_request` hook.
+
+When a request is sent to the health check endpoint, treat is as an HTTP request
+and return a ``(status, headers, body)`` tuple, as in this example:
+
+.. literalinclude:: ../../example/faq/health_check_server.py
+ :emphasize-lines: 7-9,18
+
+How do I run HTTP and WebSocket servers on the same port?
+---------------------------------------------------------
+
+You don't.
+
+HTTP and WebSocket have widely different operational characteristics. Running
+them with the same server becomes inconvenient when you scale.
+
+Providing an HTTP server is out of scope for websockets. It only aims at
+providing a WebSocket server.
+
+There's limited support for returning HTTP responses with the
+:attr:`~server.WebSocketServerProtocol.process_request` hook.
+
+If you need more, pick an HTTP server and run it separately.
+
+Alternatively, pick an HTTP framework that builds on top of ``websockets`` to
+support WebSocket connections, like Sanic_.
+
+.. _Sanic: https://sanicframework.org/en/
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/autoreload.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/autoreload.rst
new file mode 100644
index 0000000000..fc736a5918
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/autoreload.rst
@@ -0,0 +1,31 @@
+Reload on code changes
+======================
+
+When developing a websockets server, you may run it locally to test changes.
+Unfortunately, whenever you want to try a new version of the code, you must
+stop the server and restart it, which slows down your development process.
+
+Web frameworks such as Django or Flask provide a development server that
+reloads the application automatically when you make code changes. There is no
+such functionality in websockets because it's designed for production rather
+than development.
+
+However, you can achieve the same result easily.
+
+Install watchdog_ with the ``watchmedo`` shell utility:
+
+.. code-block:: console
+
+ $ pip install 'watchdog[watchmedo]'
+
+.. _watchdog: https://pypi.org/project/watchdog/
+
+Run your server with ``watchmedo auto-restart``:
+
+.. code-block:: console
+
+ $ watchmedo auto-restart --pattern "*.py" --recursive --signal SIGTERM \
+ python app.py
+
+This example assumes that the server is defined in a script called ``app.py``.
+Adapt it as necessary.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/cheatsheet.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/cheatsheet.rst
new file mode 100644
index 0000000000..95b551f673
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/cheatsheet.rst
@@ -0,0 +1,87 @@
+Cheat sheet
+===========
+
+.. currentmodule:: websockets
+
+Server
+------
+
+* Write a coroutine that handles a single connection. It receives a WebSocket
+ protocol instance and the URI path in argument.
+
+ * Call :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` and
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.send` to receive and send
+ messages at any time.
+
+ * When :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` or
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.send` raises
+ :exc:`~exceptions.ConnectionClosed`, clean up and exit. If you started
+ other :class:`asyncio.Task`, terminate them before exiting.
+
+ * If you aren't awaiting :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`,
+ consider awaiting :meth:`~legacy.protocol.WebSocketCommonProtocol.wait_closed`
+ to detect quickly when the connection is closed.
+
+ * You may :meth:`~legacy.protocol.WebSocketCommonProtocol.ping` or
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.pong` if you wish but it isn't
+ needed in general.
+
+* Create a server with :func:`~server.serve` which is similar to asyncio's
+ :meth:`~asyncio.loop.create_server`. You can also use it as an asynchronous
+ context manager.
+
+ * The server takes care of establishing connections, then lets the handler
+ execute the application logic, and finally closes the connection after the
+ handler exits normally or with an exception.
+
+ * For advanced customization, you may subclass
+ :class:`~server.WebSocketServerProtocol` and pass either this subclass or
+ a factory function as the ``create_protocol`` argument.
+
+Client
+------
+
+* Create a client with :func:`~client.connect` which is similar to asyncio's
+ :meth:`~asyncio.loop.create_connection`. You can also use it as an
+ asynchronous context manager.
+
+ * For advanced customization, you may subclass
+ :class:`~client.WebSocketClientProtocol` and pass either this subclass or
+ a factory function as the ``create_protocol`` argument.
+
+* Call :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` and
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.send` to receive and send messages
+ at any time.
+
+* You may :meth:`~legacy.protocol.WebSocketCommonProtocol.ping` or
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.pong` if you wish but it isn't
+ needed in general.
+
+* If you aren't using :func:`~client.connect` as a context manager, call
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.close` to terminate the connection.
+
+.. _debugging:
+
+Debugging
+---------
+
+If you don't understand what websockets is doing, enable logging::
+
+ import logging
+ logger = logging.getLogger('websockets')
+ logger.setLevel(logging.DEBUG)
+ logger.addHandler(logging.StreamHandler())
+
+The logs contain:
+
+* Exceptions in the connection handler at the ``ERROR`` level
+* Exceptions in the opening or closing handshake at the ``INFO`` level
+* All frames at the ``DEBUG`` level — this can be very verbose
+
+If you're new to ``asyncio``, you will certainly encounter issues that are
+related to asynchronous programming in general rather than to websockets in
+particular. Fortunately Python's official documentation provides advice to
+`develop with asyncio`_. Check it out: it's invaluable!
+
+.. _develop with asyncio: https://docs.python.org/3/library/asyncio-dev.html
+
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/django.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/django.rst
new file mode 100644
index 0000000000..e3da0a878b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/django.rst
@@ -0,0 +1,294 @@
+Integrate with Django
+=====================
+
+If you're looking at adding real-time capabilities to a Django project with
+WebSocket, you have two main options.
+
+1. Using Django Channels_, a project adding WebSocket to Django, among other
+ features. This approach is fully supported by Django. However, it requires
+ switching to a new deployment architecture.
+
+2. Deploying a separate WebSocket server next to your Django project. This
+ technique is well suited when you need to add a small set of real-time
+ features — maybe a notification service — to an HTTP application.
+
+.. _Channels: https://channels.readthedocs.io/
+
+This guide shows how to implement the second technique with websockets. It
+assumes familiarity with Django.
+
+Authenticate connections
+------------------------
+
+Since the websockets server runs outside of Django, we need to integrate it
+with ``django.contrib.auth``.
+
+We will generate authentication tokens in the Django project. Then we will
+send them to the websockets server, where they will authenticate the user.
+
+Generating a token for the current user and making it available in the browser
+is up to you. You could render the token in a template or fetch it with an API
+call.
+
+Refer to the topic guide on :doc:`authentication <../topics/authentication>`
+for details on this design.
+
+Generate tokens
+...............
+
+We want secure, short-lived tokens containing the user ID. We'll rely on
+`django-sesame`_, a small library designed exactly for this purpose.
+
+.. _django-sesame: https://github.com/aaugustin/django-sesame
+
+Add django-sesame to the dependencies of your Django project, install it, and
+configure it in the settings of the project:
+
+.. code-block:: python
+
+ AUTHENTICATION_BACKENDS = [
+ "django.contrib.auth.backends.ModelBackend",
+ "sesame.backends.ModelBackend",
+ ]
+
+(If your project already uses another authentication backend than the default
+``"django.contrib.auth.backends.ModelBackend"``, adjust accordingly.)
+
+You don't need ``"sesame.middleware.AuthenticationMiddleware"``. It is for
+authenticating users in the Django server, while we're authenticating them in
+the websockets server.
+
+We'd like our tokens to be valid for 30 seconds. We expect web pages to load
+and to establish the WebSocket connection within this delay. Configure
+django-sesame accordingly in the settings of your Django project:
+
+.. code-block:: python
+
+ SESAME_MAX_AGE = 30
+
+If you expect your web site to load faster for all clients, a shorter lifespan
+is possible. However, in the context of this document, it would make manual
+testing more difficult.
+
+You could also enable single-use tokens. However, this would update the last
+login date of the user every time a WebSocket connection is established. This
+doesn't seem like a good idea, both in terms of behavior and in terms of
+performance.
+
+Now you can generate tokens in a ``django-admin shell`` as follows:
+
+.. code-block:: pycon
+
+ >>> from django.contrib.auth import get_user_model
+ >>> User = get_user_model()
+ >>> user = User.objects.get(username="<your username>")
+ >>> from sesame.utils import get_token
+ >>> get_token(user)
+ '<your token>'
+
+Keep this console open: since tokens expire after 30 seconds, you'll have to
+generate a new token every time you want to test connecting to the server.
+
+Validate tokens
+...............
+
+Let's move on to the websockets server.
+
+Add websockets to the dependencies of your Django project and install it.
+Indeed, we're going to reuse the environment of the Django project, so we can
+call its APIs in the websockets server.
+
+Now here's how to implement authentication.
+
+.. literalinclude:: ../../example/django/authentication.py
+
+Let's unpack this code.
+
+We're calling ``django.setup()`` before doing anything with Django because
+we're using Django in a `standalone script`_. This assumes that the
+``DJANGO_SETTINGS_MODULE`` environment variable is set to the Python path to
+your settings module.
+
+.. _standalone script: https://docs.djangoproject.com/en/stable/topics/settings/#calling-django-setup-is-required-for-standalone-django-usage
+
+The connection handler reads the first message received from the client, which
+is expected to contain a django-sesame token. Then it authenticates the user
+with ``get_user()``, the API for `authentication outside a view`_. If
+authentication fails, it closes the connection and exits.
+
+.. _authentication outside a view: https://django-sesame.readthedocs.io/en/stable/howto.html#outside-a-view
+
+When we call an API that makes a database query such as ``get_user()``, we
+wrap the call in :func:`~asyncio.to_thread`. Indeed, the Django ORM doesn't
+support asynchronous I/O. It would block the event loop if it didn't run in a
+separate thread. :func:`~asyncio.to_thread` is available since Python 3.9. In
+earlier versions, use :meth:`~asyncio.loop.run_in_executor` instead.
+
+Finally, we start a server with :func:`~websockets.server.serve`.
+
+We're ready to test!
+
+Save this code to a file called ``authentication.py``, make sure the
+``DJANGO_SETTINGS_MODULE`` environment variable is set properly, and start the
+websockets server:
+
+.. code-block:: console
+
+ $ python authentication.py
+
+Generate a new token — remember, they're only valid for 30 seconds — and use
+it to connect to your server. Paste your token and press Enter when you get a
+prompt:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8888/
+ Connected to ws://localhost:8888/
+ > <your token>
+ < Hello <your username>!
+ Connection closed: 1000 (OK).
+
+It works!
+
+If you enter an expired or invalid token, authentication fails and the server
+closes the connection:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8888/
+ Connected to ws://localhost:8888.
+ > not a token
+ Connection closed: 1011 (internal error) authentication failed.
+
+You can also test from a browser by generating a new token and running the
+following code in the JavaScript console of the browser:
+
+.. code-block:: javascript
+
+ websocket = new WebSocket("ws://localhost:8888/");
+ websocket.onopen = (event) => websocket.send("<your token>");
+ websocket.onmessage = (event) => console.log(event.data);
+
+If you don't want to import your entire Django project into the websockets
+server, you can build a separate Django project with ``django.contrib.auth``,
+``django-sesame``, a suitable ``User`` model, and a subset of the settings of
+the main project.
+
+Stream events
+-------------
+
+We can connect and authenticate but our server doesn't do anything useful yet!
+
+Let's send a message every time a user makes an action in the admin. This
+message will be broadcast to all users who can access the model on which the
+action was made. This may be used for showing notifications to other users.
+
+Many use cases for WebSocket with Django follow a similar pattern.
+
+Set up event bus
+................
+
+We need a event bus to enable communications between Django and websockets.
+Both sides connect permanently to the bus. Then Django writes events and
+websockets reads them. For the sake of simplicity, we'll rely on `Redis
+Pub/Sub`_.
+
+.. _Redis Pub/Sub: https://redis.io/topics/pubsub
+
+The easiest way to add Redis to a Django project is by configuring a cache
+backend with `django-redis`_. This library manages connections to Redis
+efficiently, persisting them between requests, and provides an API to access
+the Redis connection directly.
+
+.. _django-redis: https://github.com/jazzband/django-redis
+
+Install Redis, add django-redis to the dependencies of your Django project,
+install it, and configure it in the settings of the project:
+
+.. code-block:: python
+
+ CACHES = {
+ "default": {
+ "BACKEND": "django_redis.cache.RedisCache",
+ "LOCATION": "redis://127.0.0.1:6379/1",
+ },
+ }
+
+If you already have a default cache, add a new one with a different name and
+change ``get_redis_connection("default")`` in the code below to the same name.
+
+Publish events
+..............
+
+Now let's write events to the bus.
+
+Add the following code to a module that is imported when your Django project
+starts. Typically, you would put it in a ``signals.py`` module, which you
+would import in the ``AppConfig.ready()`` method of one of your apps:
+
+.. literalinclude:: ../../example/django/signals.py
+
+This code runs every time the admin saves a ``LogEntry`` object to keep track
+of a change. It extracts interesting data, serializes it to JSON, and writes
+an event to Redis.
+
+Let's check that it works:
+
+.. code-block:: console
+
+ $ redis-cli
+ 127.0.0.1:6379> SELECT 1
+ OK
+ 127.0.0.1:6379[1]> SUBSCRIBE events
+ Reading messages... (press Ctrl-C to quit)
+ 1) "subscribe"
+ 2) "events"
+ 3) (integer) 1
+
+Leave this command running, start the Django development server and make
+changes in the admin: add, modify, or delete objects. You should see
+corresponding events published to the ``"events"`` stream.
+
+Broadcast events
+................
+
+Now let's turn to reading events and broadcasting them to connected clients.
+We need to add several features:
+
+* Keep track of connected clients so we can broadcast messages.
+* Tell which content types the user has permission to view or to change.
+* Connect to the message bus and read events.
+* Broadcast these events to users who have corresponding permissions.
+
+Here's a complete implementation.
+
+.. literalinclude:: ../../example/django/notifications.py
+
+Since the ``get_content_types()`` function makes a database query, it is
+wrapped inside :func:`asyncio.to_thread()`. It runs once when each WebSocket
+connection is open; then its result is cached for the lifetime of the
+connection. Indeed, running it for each message would trigger database queries
+for all connected users at the same time, which would hurt the database.
+
+The connection handler merely registers the connection in a global variable,
+associated to the list of content types for which events should be sent to
+that connection, and waits until the client disconnects.
+
+The ``process_events()`` function reads events from Redis and broadcasts them
+to all connections that should receive them. We don't care much if a sending a
+notification fails — this happens when a connection drops between the moment
+we iterate on connections and the moment the corresponding message is sent —
+so we start a task with for each message and forget about it. Also, this means
+we're immediately ready to process the next event, even if it takes time to
+send a message to a slow client.
+
+Since Redis can publish a message to multiple subscribers, multiple instances
+of this server can safely run in parallel.
+
+Does it scale?
+--------------
+
+In theory, given enough servers, this design can scale to a hundred million
+clients, since Redis can handle ten thousand servers and each server can
+handle ten thousand clients. In practice, you would need a more scalable
+message bus before reaching that scale, due to the volume of messages.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/extensions.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/extensions.rst
new file mode 100644
index 0000000000..3c8a7d72a6
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/extensions.rst
@@ -0,0 +1,30 @@
+Write an extension
+==================
+
+.. currentmodule:: websockets.extensions
+
+During the opening handshake, WebSocket clients and servers negotiate which
+extensions_ will be used with which parameters. Then each frame is processed
+by extensions before being sent or after being received.
+
+.. _extensions: https://www.rfc-editor.org/rfc/rfc6455.html#section-9
+
+As a consequence, writing an extension requires implementing several classes:
+
+* Extension Factory: it negotiates parameters and instantiates the extension.
+
+ Clients and servers require separate extension factories with distinct APIs.
+
+ Extension factories are the public API of an extension.
+
+* Extension: it decodes incoming frames and encodes outgoing frames.
+
+ If the extension is symmetrical, clients and servers can use the same
+ class.
+
+ Extensions are initialized by extension factories, so they don't need to be
+ part of the public API of an extension.
+
+websockets provides base classes for extension factories and extensions.
+See :class:`ClientExtensionFactory`, :class:`ServerExtensionFactory`,
+and :class:`Extension` for details.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/fly.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/fly.rst
new file mode 100644
index 0000000000..ed001a2aee
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/fly.rst
@@ -0,0 +1,177 @@
+Deploy to Fly
+================
+
+This guide describes how to deploy a websockets server to Fly_.
+
+.. _Fly: https://fly.io/
+
+.. admonition:: The free tier of Fly is sufficient for trying this guide.
+ :class: tip
+
+ The `free tier`__ include up to three small VMs. This guide uses only one.
+
+ __ https://fly.io/docs/about/pricing/
+
+We're going to deploy a very simple app. The process would be identical for a
+more realistic app.
+
+Create application
+------------------
+
+Here's the implementation of the app, an echo server. Save it in a file called
+``app.py``:
+
+.. literalinclude:: ../../example/deployment/fly/app.py
+ :language: python
+
+This app implements typical requirements for running on a Platform as a Service:
+
+* it provides a health check at ``/healthz``;
+* it closes connections and exits cleanly when it receives a ``SIGTERM`` signal.
+
+Create a ``requirements.txt`` file containing this line to declare a dependency
+on websockets:
+
+.. literalinclude:: ../../example/deployment/fly/requirements.txt
+ :language: text
+
+The app is ready. Let's deploy it!
+
+Deploy application
+------------------
+
+Follow the instructions__ to install the Fly CLI, if you haven't done that yet.
+
+__ https://fly.io/docs/hands-on/install-flyctl/
+
+Sign up or log in to Fly.
+
+Launch the app — you'll have to pick a different name because I'm already using
+``websockets-echo``:
+
+.. code-block:: console
+
+ $ fly launch
+ Creating app in ...
+ Scanning source code
+ Detected a Python app
+ Using the following build configuration:
+ Builder: paketobuildpacks/builder:base
+ ? App Name (leave blank to use an auto-generated name): websockets-echo
+ ? Select organization: ...
+ ? Select region: ...
+ Created app websockets-echo in organization ...
+ Wrote config file fly.toml
+ ? Would you like to set up a Postgresql database now? No
+ We have generated a simple Procfile for you. Modify it to fit your needs and run "fly deploy" to deploy your application.
+
+.. admonition:: This will build the image with a generic buildpack.
+ :class: tip
+
+ Fly can `build images`__ with a Dockerfile or a buildpack. Here, ``fly
+ launch`` configures a generic Paketo buildpack.
+
+ If you'd rather package the app with a Dockerfile, check out the guide to
+ :ref:`containerize an application <containerize-application>`.
+
+ __ https://fly.io/docs/reference/builders/
+
+Replace the auto-generated ``fly.toml`` with:
+
+.. literalinclude:: ../../example/deployment/fly/fly.toml
+ :language: toml
+
+This configuration:
+
+* listens on port 443, terminates TLS, and forwards to the app on port 8080;
+* declares a health check at ``/healthz``;
+* requests a ``SIGTERM`` for terminating the app.
+
+Replace the auto-generated ``Procfile`` with:
+
+.. literalinclude:: ../../example/deployment/fly/Procfile
+ :language: text
+
+This tells Fly how to run the app.
+
+Now you can deploy it:
+
+.. code-block:: console
+
+ $ fly deploy
+
+ ... lots of output...
+
+ ==> Monitoring deployment
+
+ 1 desired, 1 placed, 1 healthy, 0 unhealthy [health checks: 1 total, 1 passing]
+ --> v0 deployed successfully
+
+Validate deployment
+-------------------
+
+Let's confirm that your application is running as expected.
+
+Since it's a WebSocket server, you need a WebSocket client, such as the
+interactive client that comes with websockets.
+
+If you're currently building a websockets server, perhaps you're already in a
+virtualenv where websockets is installed. If not, you can install it in a new
+virtualenv as follows:
+
+.. code-block:: console
+
+ $ python -m venv websockets-client
+ $ . websockets-client/bin/activate
+ $ pip install websockets
+
+Connect the interactive client — you must replace ``websockets-echo`` with the
+name of your Fly app in this command:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.fly.dev/
+ Connected to wss://websockets-echo.fly.dev/.
+ >
+
+Great! Your app is running!
+
+Once you're connected, you can send any message and the server will echo it,
+or press Ctrl-D to terminate the connection:
+
+.. code-block:: console
+
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
+
+You can also confirm that your application shuts down gracefully.
+
+Connect an interactive client again — remember to replace ``websockets-echo``
+with your app:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.fly.dev/
+ Connected to wss://websockets-echo.fly.dev/.
+ >
+
+In another shell, restart the app — again, replace ``websockets-echo`` with your
+app:
+
+.. code-block:: console
+
+ $ fly restart websockets-echo
+ websockets-echo is being restarted
+
+Go back to the first shell. The connection is closed with code 1001 (going
+away).
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.fly.dev/
+ Connected to wss://websockets-echo.fly.dev/.
+ Connection closed: 1001 (going away).
+
+If graceful shutdown wasn't working, the server wouldn't perform a closing
+handshake and the connection would be closed with code 1006 (abnormal closure).
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/haproxy.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/haproxy.rst
new file mode 100644
index 0000000000..fdaab04011
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/haproxy.rst
@@ -0,0 +1,61 @@
+Deploy behind HAProxy
+=====================
+
+This guide demonstrates a way to load balance connections across multiple
+websockets server processes running on the same machine with HAProxy_.
+
+We'll run server processes with Supervisor as described in :doc:`this guide
+<supervisor>`.
+
+.. _HAProxy: https://www.haproxy.org/
+
+Run server processes
+--------------------
+
+Save this app to ``app.py``:
+
+.. literalinclude:: ../../example/deployment/haproxy/app.py
+ :emphasize-lines: 24
+
+Each server process listens on a different port by extracting an incremental
+index from an environment variable set by Supervisor.
+
+Save this configuration to ``supervisord.conf``:
+
+.. literalinclude:: ../../example/deployment/haproxy/supervisord.conf
+
+This configuration runs four instances of the app.
+
+Install Supervisor and run it:
+
+.. code-block:: console
+
+ $ supervisord -c supervisord.conf -n
+
+Configure and run HAProxy
+-------------------------
+
+Here's a simple HAProxy configuration to load balance connections across four
+processes:
+
+.. literalinclude:: ../../example/deployment/haproxy/haproxy.cfg
+
+In the backend configuration, we set the load balancing method to
+``leastconn`` in order to balance the number of active connections across
+servers. This is best for long running connections.
+
+Save the configuration to ``haproxy.cfg``, install HAProxy, and run it:
+
+.. code-block:: console
+
+ $ haproxy -f haproxy.cfg
+
+You can confirm that HAProxy proxies connections properly:
+
+.. code-block:: console
+
+ $ PYTHONPATH=src python -m websockets ws://localhost:8080/
+ Connected to ws://localhost:8080/.
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/heroku.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/heroku.rst
new file mode 100644
index 0000000000..a97d2e7ce0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/heroku.rst
@@ -0,0 +1,183 @@
+Deploy to Heroku
+================
+
+This guide describes how to deploy a websockets server to Heroku_. The same
+principles should apply to other Platform as a Service providers.
+
+.. _Heroku: https://www.heroku.com/
+
+.. admonition:: Heroku no longer offers a free tier.
+ :class: attention
+
+ When this tutorial was written, in September 2021, Heroku offered a free
+ tier where a websockets app could run at no cost. In November 2022, Heroku
+ removed the free tier, making it impossible to maintain this document. As a
+ consequence, it isn't updated anymore and may be removed in the future.
+
+We're going to deploy a very simple app. The process would be identical for a
+more realistic app.
+
+Create repository
+-----------------
+
+Deploying to Heroku requires a git repository. Let's initialize one:
+
+.. code-block:: console
+
+ $ mkdir websockets-echo
+ $ cd websockets-echo
+ $ git init -b main
+ Initialized empty Git repository in websockets-echo/.git/
+ $ git commit --allow-empty -m "Initial commit."
+ [main (root-commit) 1e7947d] Initial commit.
+
+Create application
+------------------
+
+Here's the implementation of the app, an echo server. Save it in a file called
+``app.py``:
+
+.. literalinclude:: ../../example/deployment/heroku/app.py
+ :language: python
+
+Heroku expects the server to `listen on a specific port`_, which is provided
+in the ``$PORT`` environment variable. The app reads it and passes it to
+:func:`~websockets.server.serve`.
+
+.. _listen on a specific port: https://devcenter.heroku.com/articles/preparing-a-codebase-for-heroku-deployment#4-listen-on-the-correct-port
+
+Heroku sends a ``SIGTERM`` signal to all processes when `shutting down a
+dyno`_. When the app receives this signal, it closes connections and exits
+cleanly.
+
+.. _shutting down a dyno: https://devcenter.heroku.com/articles/dynos#shutdown
+
+Create a ``requirements.txt`` file containing this line to declare a dependency
+on websockets:
+
+.. literalinclude:: ../../example/deployment/heroku/requirements.txt
+ :language: text
+
+Create a ``Procfile``.
+
+.. literalinclude:: ../../example/deployment/heroku/Procfile
+
+This tells Heroku how to run the app.
+
+Confirm that you created the correct files and commit them to git:
+
+.. code-block:: console
+
+ $ ls
+ Procfile app.py requirements.txt
+ $ git add .
+ $ git commit -m "Initial implementation."
+ [main 8418c62] Initial implementation.
+  3 files changed, 32 insertions(+)
+  create mode 100644 Procfile
+  create mode 100644 app.py
+  create mode 100644 requirements.txt
+
+The app is ready. Let's deploy it!
+
+Deploy application
+------------------
+
+Follow the instructions_ to install the Heroku CLI, if you haven't done that
+yet.
+
+.. _instructions: https://devcenter.heroku.com/articles/getting-started-with-python#set-up
+
+Sign up or log in to Heroku.
+
+Create a Heroku app — you'll have to pick a different name because I'm already
+using ``websockets-echo``:
+
+.. code-block:: console
+
+ $ heroku create websockets-echo
+ Creating ⬢ websockets-echo... done
+ https://websockets-echo.herokuapp.com/ | https://git.heroku.com/websockets-echo.git
+
+.. code-block:: console
+
+ $ git push heroku
+
+ ... lots of output...
+
+ remote: -----> Launching...
+ remote: Released v1
+ remote: https://websockets-echo.herokuapp.com/ deployed to Heroku
+ remote:
+ remote: Verifying deploy... done.
+ To https://git.heroku.com/websockets-echo.git
+  * [new branch] main -> main
+
+Validate deployment
+-------------------
+
+Let's confirm that your application is running as expected.
+
+Since it's a WebSocket server, you need a WebSocket client, such as the
+interactive client that comes with websockets.
+
+If you're currently building a websockets server, perhaps you're already in a
+virtualenv where websockets is installed. If not, you can install it in a new
+virtualenv as follows:
+
+.. code-block:: console
+
+ $ python -m venv websockets-client
+ $ . websockets-client/bin/activate
+ $ pip install websockets
+
+Connect the interactive client — you must replace ``websockets-echo`` with the
+name of your Heroku app in this command:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.herokuapp.com/
+ Connected to wss://websockets-echo.herokuapp.com/.
+ >
+
+Great! Your app is running!
+
+Once you're connected, you can send any message and the server will echo it,
+or press Ctrl-D to terminate the connection:
+
+.. code-block:: console
+
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
+
+You can also confirm that your application shuts down gracefully.
+
+Connect an interactive client again — remember to replace ``websockets-echo``
+with your app:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.herokuapp.com/
+ Connected to wss://websockets-echo.herokuapp.com/.
+ >
+
+In another shell, restart the app — again, replace ``websockets-echo`` with your
+app:
+
+.. code-block:: console
+
+ $ heroku dyno:restart -a websockets-echo
+ Restarting dynos on ⬢ websockets-echo... done
+
+Go back to the first shell. The connection is closed with code 1001 (going
+away).
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.herokuapp.com/
+ Connected to wss://websockets-echo.herokuapp.com/.
+ Connection closed: 1001 (going away).
+
+If graceful shutdown wasn't working, the server wouldn't perform a closing
+handshake and the connection would be closed with code 1006 (abnormal closure).
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/index.rst
new file mode 100644
index 0000000000..ddbe67d3ae
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/index.rst
@@ -0,0 +1,56 @@
+How-to guides
+=============
+
+In a hurry? Check out these examples.
+
+.. toctree::
+ :titlesonly:
+
+ quickstart
+
+If you're stuck, perhaps you'll find the answer here.
+
+.. toctree::
+ :titlesonly:
+
+ cheatsheet
+ patterns
+ autoreload
+
+This guide will help you integrate websockets into a broader system.
+
+.. toctree::
+ :titlesonly:
+
+ django
+
+The WebSocket protocol makes provisions for extending or specializing its
+features, which websockets supports fully.
+
+.. toctree::
+ :titlesonly:
+
+ extensions
+
+.. _deployment-howto:
+
+Once your application is ready, learn how to deploy it on various platforms.
+
+.. toctree::
+ :titlesonly:
+
+ render
+ fly
+ heroku
+ kubernetes
+ supervisor
+ nginx
+ haproxy
+
+If you're integrating the Sans-I/O layer of websockets into a library, rather
+than building an application with websockets, follow this guide.
+
+.. toctree::
+ :maxdepth: 2
+
+ sansio
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/kubernetes.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/kubernetes.rst
new file mode 100644
index 0000000000..064a6ac4d5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/kubernetes.rst
@@ -0,0 +1,215 @@
+Deploy to Kubernetes
+====================
+
+This guide describes how to deploy a websockets server to Kubernetes_. It
+assumes familiarity with Docker and Kubernetes.
+
+We're going to deploy a simple app to a local Kubernetes cluster and to ensure
+that it scales as expected.
+
+In a more realistic context, you would follow your organization's practices
+for deploying to Kubernetes, but you would apply the same principles as far as
+websockets is concerned.
+
+.. _Kubernetes: https://kubernetes.io/
+
+.. _containerize-application:
+
+Containerize application
+------------------------
+
+Here's the app we're going to deploy. Save it in a file called
+``app.py``:
+
+.. literalinclude:: ../../example/deployment/kubernetes/app.py
+
+This is an echo server with one twist: every message blocks the server for
+100ms, which creates artificial starvation of CPU time. This makes it easier
+to saturate the server for load testing.
+
+The app exposes a health check on ``/healthz``. It also provides two other
+endpoints for testing purposes: ``/inemuri`` will make the app unresponsive
+for 10 seconds and ``/seppuku`` will terminate it.
+
+The quest for the perfect Python container image is out of scope of this
+guide, so we'll go for the simplest possible configuration instead:
+
+.. literalinclude:: ../../example/deployment/kubernetes/Dockerfile
+
+After saving this ``Dockerfile``, build the image:
+
+.. code-block:: console
+
+ $ docker build -t websockets-test:1.0 .
+
+Test your image by running:
+
+.. code-block:: console
+
+ $ docker run --name run-websockets-test --publish 32080:80 --rm \
+ websockets-test:1.0
+
+Then, in another shell, in a virtualenv where websockets is installed, connect
+to the app and check that it echoes anything you send:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:32080/
+ Connected to ws://localhost:32080/.
+ > Hey there!
+ < Hey there!
+ >
+
+Now, in yet another shell, stop the app with:
+
+.. code-block:: console
+
+ $ docker kill -s TERM run-websockets-test
+
+Going to the shell where you connected to the app, you can confirm that it
+shut down gracefully:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:32080/
+ Connected to ws://localhost:32080/.
+ > Hey there!
+ < Hey there!
+ Connection closed: 1001 (going away).
+
+If it didn't, you'd get code 1006 (abnormal closure).
+
+Deploy application
+------------------
+
+Configuring Kubernetes is even further beyond the scope of this guide, so
+we'll use a basic configuration for testing, with just one Service_ and one
+Deployment_:
+
+.. literalinclude:: ../../example/deployment/kubernetes/deployment.yaml
+
+For local testing, a service of type NodePort_ is good enough. For deploying
+to production, you would configure an Ingress_.
+
+.. _Service: https://kubernetes.io/docs/concepts/services-networking/service/
+.. _Deployment: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
+.. _NodePort: https://kubernetes.io/docs/concepts/services-networking/service/#nodeport
+.. _Ingress: https://kubernetes.io/docs/concepts/services-networking/ingress/
+
+After saving this to a file called ``deployment.yaml``, you can deploy:
+
+.. code-block:: console
+
+ $ kubectl apply -f deployment.yaml
+ service/websockets-test created
+ deployment.apps/websockets-test created
+
+Now you have a deployment with one pod running:
+
+.. code-block:: console
+
+ $ kubectl get deployment websockets-test
+ NAME READY UP-TO-DATE AVAILABLE AGE
+ websockets-test 1/1 1 1 10s
+ $ kubectl get pods -l app=websockets-test
+ NAME READY STATUS RESTARTS AGE
+ websockets-test-86b48f4bb7-nltfh 1/1 Running 0 10s
+
+You can connect to the service — press Ctrl-D to exit:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:32080/
+ Connected to ws://localhost:32080/.
+ Connection closed: 1000 (OK).
+
+Validate deployment
+-------------------
+
+First, let's ensure the liveness probe works by making the app unresponsive:
+
+.. code-block:: console
+
+ $ curl http://localhost:32080/inemuri
+ Sleeping for 10s
+
+Since we have only one pod, we know that this pod will go to sleep.
+
+The liveness probe is configured to run every second. By default, liveness
+probes time out after one second and have a threshold of three failures.
+Therefore Kubernetes should restart the pod after at most 5 seconds.
+
+Indeed, after a few seconds, the pod reports a restart:
+
+.. code-block:: console
+
+ $ kubectl get pods -l app=websockets-test
+ NAME READY STATUS RESTARTS AGE
+ websockets-test-86b48f4bb7-nltfh 1/1 Running 1 42s
+
+Next, let's take it one step further and crash the app:
+
+.. code-block:: console
+
+ $ curl http://localhost:32080/seppuku
+ Terminating
+
+The pod reports a second restart:
+
+.. code-block:: console
+
+ $ kubectl get pods -l app=websockets-test
+ NAME READY STATUS RESTARTS AGE
+ websockets-test-86b48f4bb7-nltfh 1/1 Running 2 72s
+
+All good — Kubernetes delivers on its promise to keep our app alive!
+
+Scale deployment
+----------------
+
+Of course, Kubernetes is for scaling. Let's scale — modestly — to 10 pods:
+
+.. code-block:: console
+
+ $ kubectl scale deployment.apps/websockets-test --replicas=10
+ deployment.apps/websockets-test scaled
+
+After a few seconds, we have 10 pods running:
+
+.. code-block:: console
+
+ $ kubectl get deployment websockets-test
+ NAME READY UP-TO-DATE AVAILABLE AGE
+ websockets-test 10/10 10 10 10m
+
+Now let's generate load. We'll use this script:
+
+.. literalinclude:: ../../example/deployment/kubernetes/benchmark.py
+
+We'll connect 500 clients in parallel, meaning 50 clients per pod, and have
+each client send 6 messages. Since the app blocks for 100ms before responding,
+if connections are perfectly distributed, we expect a total run time slightly
+over 50 * 6 * 0.1 = 30 seconds.
+
+Let's try it:
+
+.. code-block:: console
+
+ $ ulimit -n 512
+ $ time python benchmark.py 500 6
+ python benchmark.py 500 6 2.40s user 0.51s system 7% cpu 36.471 total
+
+A total runtime of 36 seconds is in the right ballpark. Repeating this
+experiment with other parameters shows roughly consistent results, with the
+high variability you'd expect from a quick benchmark without any effort to
+stabilize the test setup.
+
+Finally, we can scale back to one pod.
+
+.. code-block:: console
+
+ $ kubectl scale deployment.apps/websockets-test --replicas=1
+ deployment.apps/websockets-test scaled
+ $ kubectl get deployment websockets-test
+ NAME READY UP-TO-DATE AVAILABLE AGE
+ websockets-test 1/1 1 1 15m
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/nginx.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/nginx.rst
new file mode 100644
index 0000000000..30545fbc7d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/nginx.rst
@@ -0,0 +1,84 @@
+Deploy behind nginx
+===================
+
+This guide demonstrates a way to load balance connections across multiple
+websockets server processes running on the same machine with nginx_.
+
+We'll run server processes with Supervisor as described in :doc:`this guide
+<supervisor>`.
+
+.. _nginx: https://nginx.org/
+
+Run server processes
+--------------------
+
+Save this app to ``app.py``:
+
+.. literalinclude:: ../../example/deployment/nginx/app.py
+ :emphasize-lines: 21,23
+
+We'd like to nginx to connect to websockets servers via Unix sockets in order
+to avoid the overhead of TCP for communicating between processes running in
+the same OS.
+
+We start the app with :func:`~websockets.server.unix_serve`. Each server
+process listens on a different socket thanks to an environment variable set
+by Supervisor to a different value.
+
+Save this configuration to ``supervisord.conf``:
+
+.. literalinclude:: ../../example/deployment/nginx/supervisord.conf
+
+This configuration runs four instances of the app.
+
+Install Supervisor and run it:
+
+.. code-block:: console
+
+ $ supervisord -c supervisord.conf -n
+
+Configure and run nginx
+-----------------------
+
+Here's a simple nginx configuration to load balance connections across four
+processes:
+
+.. literalinclude:: ../../example/deployment/nginx/nginx.conf
+
+We set ``daemon off`` so we can run nginx in the foreground for testing.
+
+Then we combine the `WebSocket proxying`_ and `load balancing`_ guides:
+
+* The WebSocket protocol requires HTTP/1.1. We must set the HTTP protocol
+ version to 1.1, else nginx defaults to HTTP/1.0 for proxying.
+
+* The WebSocket handshake involves the ``Connection`` and ``Upgrade`` HTTP
+ headers. We must pass them to the upstream explicitly, else nginx drops
+ them because they're hop-by-hop headers.
+
+ We deviate from the `WebSocket proxying`_ guide because its example adds a
+ ``Connection: Upgrade`` header to every upstream request, even if the
+ original request didn't contain that header.
+
+* In the upstream configuration, we set the load balancing method to
+ ``least_conn`` in order to balance the number of active connections across
+ servers. This is best for long running connections.
+
+.. _WebSocket proxying: http://nginx.org/en/docs/http/websocket.html
+.. _load balancing: http://nginx.org/en/docs/http/load_balancing.html
+
+Save the configuration to ``nginx.conf``, install nginx, and run it:
+
+.. code-block:: console
+
+ $ nginx -c nginx.conf -p .
+
+You can confirm that nginx proxies connections properly:
+
+.. code-block:: console
+
+ $ PYTHONPATH=src python -m websockets ws://localhost:8080/
+ Connected to ws://localhost:8080/.
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/patterns.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/patterns.rst
new file mode 100644
index 0000000000..c6f325d213
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/patterns.rst
@@ -0,0 +1,110 @@
+Patterns
+========
+
+.. currentmodule:: websockets
+
+Here are typical patterns for processing messages in a WebSocket server or
+client. You will certainly implement some of them in your application.
+
+This page gives examples of connection handlers for a server. However, they're
+also applicable to a client, simply by assuming that ``websocket`` is a
+connection created with :func:`~client.connect`.
+
+WebSocket connections are long-lived. You will usually write a loop to process
+several messages during the lifetime of a connection.
+
+Consumer
+--------
+
+To receive messages from the WebSocket connection::
+
+ async def consumer_handler(websocket):
+ async for message in websocket:
+ await consumer(message)
+
+In this example, ``consumer()`` is a coroutine implementing your business
+logic for processing a message received on the WebSocket connection. Each
+message may be :class:`str` or :class:`bytes`.
+
+Iteration terminates when the client disconnects.
+
+Producer
+--------
+
+To send messages to the WebSocket connection::
+
+ async def producer_handler(websocket):
+ while True:
+ message = await producer()
+ await websocket.send(message)
+
+In this example, ``producer()`` is a coroutine implementing your business
+logic for generating the next message to send on the WebSocket connection.
+Each message must be :class:`str` or :class:`bytes`.
+
+Iteration terminates when the client disconnects
+because :meth:`~server.WebSocketServerProtocol.send` raises a
+:exc:`~exceptions.ConnectionClosed` exception,
+which breaks out of the ``while True`` loop.
+
+Consumer and producer
+---------------------
+
+You can receive and send messages on the same WebSocket connection by
+combining the consumer and producer patterns. This requires running two tasks
+in parallel::
+
+ async def handler(websocket):
+ await asyncio.gather(
+ consumer_handler(websocket),
+ producer_handler(websocket),
+ )
+
+If a task terminates, :func:`~asyncio.gather` doesn't cancel the other task.
+This can result in a situation where the producer keeps running after the
+consumer finished, which may leak resources.
+
+Here's a way to exit and close the WebSocket connection as soon as a task
+terminates, after canceling the other task::
+
+ async def handler(websocket):
+ consumer_task = asyncio.create_task(consumer_handler(websocket))
+ producer_task = asyncio.create_task(producer_handler(websocket))
+ done, pending = await asyncio.wait(
+ [consumer_task, producer_task],
+ return_when=asyncio.FIRST_COMPLETED,
+ )
+ for task in pending:
+ task.cancel()
+
+Registration
+------------
+
+To keep track of currently connected clients, you can register them when they
+connect and unregister them when they disconnect::
+
+ connected = set()
+
+ async def handler(websocket):
+ # Register.
+ connected.add(websocket)
+ try:
+ # Broadcast a message to all connected clients.
+ websockets.broadcast(connected, "Hello!")
+ await asyncio.sleep(10)
+ finally:
+ # Unregister.
+ connected.remove(websocket)
+
+This example maintains the set of connected clients in memory. This works as
+long as you run a single process. It doesn't scale to multiple processes.
+
+Publish–subscribe
+-----------------
+
+If you plan to run multiple processes and you want to communicate updates
+between processes, then you must deploy a messaging system. You may find
+publish-subscribe functionality useful.
+
+A complete implementation of this idea with Redis is described in
+the :doc:`Django integration guide <../howto/django>`.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/quickstart.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/quickstart.rst
new file mode 100644
index 0000000000..ab870952c1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/quickstart.rst
@@ -0,0 +1,170 @@
+Quick start
+===========
+
+.. currentmodule:: websockets
+
+Here are a few examples to get you started quickly with websockets.
+
+Say "Hello world!"
+------------------
+
+Here's a WebSocket server.
+
+It receives a name from the client, sends a greeting, and closes the connection.
+
+.. literalinclude:: ../../example/quickstart/server.py
+ :caption: server.py
+ :language: python
+ :linenos:
+
+:func:`~server.serve` executes the connection handler coroutine ``hello()``
+once for each WebSocket connection. It closes the WebSocket connection when
+the handler returns.
+
+Here's a corresponding WebSocket client.
+
+It sends a name to the server, receives a greeting, and closes the connection.
+
+.. literalinclude:: ../../example/quickstart/client.py
+ :caption: client.py
+ :language: python
+ :linenos:
+
+Using :func:`~client.connect` as an asynchronous context manager ensures the
+WebSocket connection is closed.
+
+.. _secure-server-example:
+
+Encrypt connections
+-------------------
+
+Secure WebSocket connections improve confidentiality and also reliability
+because they reduce the risk of interference by bad proxies.
+
+The ``wss`` protocol is to ``ws`` what ``https`` is to ``http``. The
+connection is encrypted with TLS_ (Transport Layer Security). ``wss``
+requires certificates like ``https``.
+
+.. _TLS: https://developer.mozilla.org/en-US/docs/Web/Security/Transport_Layer_Security
+
+.. admonition:: TLS vs. SSL
+ :class: tip
+
+ TLS is sometimes referred to as SSL (Secure Sockets Layer). SSL was an
+ earlier encryption protocol; the name stuck.
+
+Here's how to adapt the server to encrypt connections. You must download
+:download:`localhost.pem <../../example/quickstart/localhost.pem>` and save it
+in the same directory as ``server_secure.py``.
+
+.. literalinclude:: ../../example/quickstart/server_secure.py
+ :caption: server_secure.py
+ :language: python
+ :linenos:
+
+Here's how to adapt the client similarly.
+
+.. literalinclude:: ../../example/quickstart/client_secure.py
+ :caption: client_secure.py
+ :language: python
+ :linenos:
+
+In this example, the client needs a TLS context because the server uses a
+self-signed certificate.
+
+When connecting to a secure WebSocket server with a valid certificate — any
+certificate signed by a CA that your Python installation trusts — you can
+simply pass ``ssl=True`` to :func:`~client.connect`.
+
+.. admonition:: Configure the TLS context securely
+ :class: attention
+
+ This example demonstrates the ``ssl`` argument with a TLS certificate shared
+ between the client and the server. This is a simplistic setup.
+
+ Please review the advice and security considerations in the documentation of
+ the :mod:`ssl` module to configure the TLS context securely.
+
+Connect from a browser
+----------------------
+
+The WebSocket protocol was invented for the web — as the name says!
+
+Here's how to connect to a WebSocket server from a browser.
+
+Run this script in a console:
+
+.. literalinclude:: ../../example/quickstart/show_time.py
+ :caption: show_time.py
+ :language: python
+ :linenos:
+
+Save this file as ``show_time.html``:
+
+.. literalinclude:: ../../example/quickstart/show_time.html
+ :caption: show_time.html
+ :language: html
+ :linenos:
+
+Save this file as ``show_time.js``:
+
+.. literalinclude:: ../../example/quickstart/show_time.js
+ :caption: show_time.js
+ :language: js
+ :linenos:
+
+Then, open ``show_time.html`` in several browsers. Clocks tick irregularly.
+
+Broadcast messages
+------------------
+
+Let's change the previous example to send the same timestamps to all browsers,
+instead of generating independent sequences for each client.
+
+Stop the previous script if it's still running and run this script in a console:
+
+.. literalinclude:: ../../example/quickstart/show_time_2.py
+ :caption: show_time_2.py
+ :language: python
+ :linenos:
+
+Refresh ``show_time.html`` in all browsers. Clocks tick in sync.
+
+Manage application state
+------------------------
+
+A WebSocket server can receive events from clients, process them to update the
+application state, and broadcast the updated state to all connected clients.
+
+Here's an example where any client can increment or decrement a counter. The
+concurrency model of :mod:`asyncio` guarantees that updates are serialized.
+
+Run this script in a console:
+
+.. literalinclude:: ../../example/quickstart/counter.py
+ :caption: counter.py
+ :language: python
+ :linenos:
+
+Save this file as ``counter.html``:
+
+.. literalinclude:: ../../example/quickstart/counter.html
+ :caption: counter.html
+ :language: html
+ :linenos:
+
+Save this file as ``counter.css``:
+
+.. literalinclude:: ../../example/quickstart/counter.css
+ :caption: counter.css
+ :language: css
+ :linenos:
+
+Save this file as ``counter.js``:
+
+.. literalinclude:: ../../example/quickstart/counter.js
+ :caption: counter.js
+ :language: js
+ :linenos:
+
+Then open ``counter.html`` file in several browsers and play with [+] and [-].
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/render.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/render.rst
new file mode 100644
index 0000000000..70bf8c376c
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/render.rst
@@ -0,0 +1,172 @@
+Deploy to Render
+================
+
+This guide describes how to deploy a websockets server to Render_.
+
+.. _Render: https://render.com/
+
+.. admonition:: The free plan of Render is sufficient for trying this guide.
+ :class: tip
+
+ However, on a `free plan`__, connections are dropped after five minutes,
+ which is quite short for WebSocket application.
+
+ __ https://render.com/docs/free
+
+We're going to deploy a very simple app. The process would be identical for a
+more realistic app.
+
+Create repository
+-----------------
+
+Deploying to Render requires a git repository. Let's initialize one:
+
+.. code-block:: console
+
+ $ mkdir websockets-echo
+ $ cd websockets-echo
+ $ git init -b main
+ Initialized empty Git repository in websockets-echo/.git/
+ $ git commit --allow-empty -m "Initial commit."
+ [main (root-commit) 816c3b1] Initial commit.
+
+Render requires the git repository to be hosted at GitHub or GitLab.
+
+Sign up or log in to GitHub. Create a new repository named ``websockets-echo``.
+Don't enable any of the initialization options offered by GitHub. Then, follow
+instructions for pushing an existing repository from the command line.
+
+After pushing, refresh your repository's homepage on GitHub. You should see an
+empty repository with an empty initial commit.
+
+Create application
+------------------
+
+Here's the implementation of the app, an echo server. Save it in a file called
+``app.py``:
+
+.. literalinclude:: ../../example/deployment/render/app.py
+ :language: python
+
+This app implements requirements for `zero downtime deploys`_:
+
+* it provides a health check at ``/healthz``;
+* it closes connections and exits cleanly when it receives a ``SIGTERM`` signal.
+
+.. _zero downtime deploys: https://render.com/docs/deploys#zero-downtime-deploys
+
+Create a ``requirements.txt`` file containing this line to declare a dependency
+on websockets:
+
+.. literalinclude:: ../../example/deployment/render/requirements.txt
+ :language: text
+
+Confirm that you created the correct files and commit them to git:
+
+.. code-block:: console
+
+ $ ls
+ app.py requirements.txt
+ $ git add .
+ $ git commit -m "Initial implementation."
+ [main f26bf7f] Initial implementation.
+ 2 files changed, 37 insertions(+)
+ create mode 100644 app.py
+ create mode 100644 requirements.txt
+
+Push the changes to GitHub:
+
+.. code-block:: console
+
+ $ git push
+ ...
+ To github.com:<username>/websockets-echo.git
+ 816c3b1..f26bf7f main -> main
+
+The app is ready. Let's deploy it!
+
+Deploy application
+------------------
+
+Sign up or log in to Render.
+
+Create a new web service. Connect the git repository that you just created.
+
+Then, finalize the configuration of your app as follows:
+
+* **Name**: websockets-echo
+* **Start Command**: ``python app.py``
+
+If you're just experimenting, select the free plan. Create the web service.
+
+To configure the health check, go to Settings, scroll down to Health & Alerts,
+and set:
+
+* **Health Check Path**: /healthz
+
+This triggers a new deployment.
+
+Validate deployment
+-------------------
+
+Let's confirm that your application is running as expected.
+
+Since it's a WebSocket server, you need a WebSocket client, such as the
+interactive client that comes with websockets.
+
+If you're currently building a websockets server, perhaps you're already in a
+virtualenv where websockets is installed. If not, you can install it in a new
+virtualenv as follows:
+
+.. code-block:: console
+
+ $ python -m venv websockets-client
+ $ . websockets-client/bin/activate
+ $ pip install websockets
+
+Connect the interactive client — you must replace ``websockets-echo`` with the
+name of your Render app in this command:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.onrender.com/
+ Connected to wss://websockets-echo.onrender.com/.
+ >
+
+Great! Your app is running!
+
+Once you're connected, you can send any message and the server will echo it,
+or press Ctrl-D to terminate the connection:
+
+.. code-block:: console
+
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
+
+You can also confirm that your application shuts down gracefully when you deploy
+a new version. Due to limitations of Render's free plan, you must upgrade to a
+paid plan before you perform this test.
+
+Connect an interactive client again — remember to replace ``websockets-echo``
+with your app:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.onrender.com/
+ Connected to wss://websockets-echo.onrender.com/.
+ >
+
+Trigger a new deployment with Manual Deploy > Deploy latest commit. When the
+deployment completes, the connection is closed with code 1001 (going away).
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-echo.onrender.com/
+ Connected to wss://websockets-echo.onrender.com/.
+ Connection closed: 1001 (going away).
+
+If graceful shutdown wasn't working, the server wouldn't perform a closing
+handshake and the connection would be closed with code 1006 (abnormal closure).
+
+Remember to downgrade to a free plan if you upgraded just for testing this feature.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/sansio.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/sansio.rst
new file mode 100644
index 0000000000..d41519ff09
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/sansio.rst
@@ -0,0 +1,322 @@
+Integrate the Sans-I/O layer
+============================
+
+.. currentmodule:: websockets
+
+This guide explains how to integrate the `Sans-I/O`_ layer of websockets to
+add support for WebSocket in another library.
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+As a prerequisite, you should decide how you will handle network I/O and
+asynchronous control flow.
+
+Your integration layer will provide an API for the application on one side,
+will talk to the network on the other side, and will rely on websockets to
+implement the protocol in the middle.
+
+.. image:: ../topics/data-flow.svg
+ :align: center
+
+Opening a connection
+--------------------
+
+Client-side
+...........
+
+If you're building a client, parse the URI you'd like to connect to::
+
+ from websockets.uri import parse_uri
+
+ wsuri = parse_uri("ws://example.com/")
+
+Open a TCP connection to ``(wsuri.host, wsuri.port)`` and perform a TLS
+handshake if ``wsuri.secure`` is :obj:`True`.
+
+Initialize a :class:`~client.ClientProtocol`::
+
+ from websockets.client import ClientProtocol
+
+ protocol = ClientProtocol(wsuri)
+
+Create a WebSocket handshake request
+with :meth:`~client.ClientProtocol.connect` and send it
+with :meth:`~client.ClientProtocol.send_request`::
+
+ request = protocol.connect()
+ protocol.send_request(request)
+
+Then, call :meth:`~protocol.Protocol.data_to_send` and send its output to
+the network, as described in `Send data`_ below.
+
+Once you receive enough data, as explained in `Receive data`_ below, the first
+event returned by :meth:`~protocol.Protocol.events_received` is the WebSocket
+handshake response.
+
+When the handshake fails, the reason is available in
+:attr:`~client.ClientProtocol.handshake_exc`::
+
+ if protocol.handshake_exc is not None:
+ raise protocol.handshake_exc
+
+Else, the WebSocket connection is open.
+
+A WebSocket client API usually performs the handshake then returns a wrapper
+around the network socket and the :class:`~client.ClientProtocol`.
+
+Server-side
+...........
+
+If you're building a server, accept network connections from clients and
+perform a TLS handshake if desired.
+
+For each connection, initialize a :class:`~server.ServerProtocol`::
+
+ from websockets.server import ServerProtocol
+
+ protocol = ServerProtocol()
+
+Once you receive enough data, as explained in `Receive data`_ below, the first
+event returned by :meth:`~protocol.Protocol.events_received` is the WebSocket
+handshake request.
+
+Create a WebSocket handshake response
+with :meth:`~server.ServerProtocol.accept` and send it
+with :meth:`~server.ServerProtocol.send_response`::
+
+ response = protocol.accept(request)
+ protocol.send_response(response)
+
+Alternatively, you may reject the WebSocket handshake and return an HTTP
+response with :meth:`~server.ServerProtocol.reject`::
+
+ response = protocol.reject(status, explanation)
+ protocol.send_response(response)
+
+Then, call :meth:`~protocol.Protocol.data_to_send` and send its output to
+the network, as described in `Send data`_ below.
+
+Even when you call :meth:`~server.ServerProtocol.accept`, the WebSocket
+handshake may fail if the request is incorrect or unsupported.
+
+When the handshake fails, the reason is available in
+:attr:`~server.ServerProtocol.handshake_exc`::
+
+ if protocol.handshake_exc is not None:
+ raise protocol.handshake_exc
+
+Else, the WebSocket connection is open.
+
+A WebSocket server API usually builds a wrapper around the network socket and
+the :class:`~server.ServerProtocol`. Then it invokes a connection handler that
+accepts the wrapper in argument.
+
+It may also provide a way to close all connections and to shut down the server
+gracefully.
+
+Going forwards, this guide focuses on handling an individual connection.
+
+From the network to the application
+-----------------------------------
+
+Go through the five steps below until you reach the end of the data stream.
+
+Receive data
+............
+
+When receiving data from the network, feed it to the protocol's
+:meth:`~protocol.Protocol.receive_data` method.
+
+When reaching the end of the data stream, call the protocol's
+:meth:`~protocol.Protocol.receive_eof` method.
+
+For example, if ``sock`` is a :obj:`~socket.socket`::
+
+ try:
+ data = sock.recv(65536)
+ except OSError: # socket closed
+ data = b""
+ if data:
+ protocol.receive_data(data)
+ else:
+ protocol.receive_eof()
+
+These methods aren't expected to raise exceptions — unless you call them again
+after calling :meth:`~protocol.Protocol.receive_eof`, which is an error.
+(If you get an exception, please file a bug!)
+
+Send data
+.........
+
+Then, call :meth:`~protocol.Protocol.data_to_send` and send its output to
+the network::
+
+ for data in protocol.data_to_send():
+ if data:
+ sock.sendall(data)
+ else:
+ sock.shutdown(socket.SHUT_WR)
+
+The empty bytestring signals the end of the data stream. When you see it, you
+must half-close the TCP connection.
+
+Sending data right after receiving data is necessary because websockets
+responds to ping frames, close frames, and incorrect inputs automatically.
+
+Expect TCP connection to close
+..............................
+
+Closing a WebSocket connection normally involves a two-way WebSocket closing
+handshake. Then, regardless of whether the closure is normal or abnormal, the
+server starts the four-way TCP closing handshake. If the network fails at the
+wrong point, you can end up waiting until the TCP timeout, which is very long.
+
+To prevent dangling TCP connections when you expect the end of the data stream
+but you never reach it, call :meth:`~protocol.Protocol.close_expected`
+and, if it returns :obj:`True`, schedule closing the TCP connection after a
+short timeout::
+
+ # start a new execution thread to run this code
+ sleep(10)
+ sock.close() # does nothing if the socket is already closed
+
+If the connection is still open when the timeout elapses, closing the socket
+makes the execution thread that reads from the socket reach the end of the
+data stream, possibly with an exception.
+
+Close TCP connection
+....................
+
+If you called :meth:`~protocol.Protocol.receive_eof`, close the TCP
+connection now. This is a clean closure because the receive buffer is empty.
+
+After :meth:`~protocol.Protocol.receive_eof` signals the end of the read
+stream, :meth:`~protocol.Protocol.data_to_send` always signals the end of
+the write stream, unless it already ended. So, at this point, the TCP
+connection is already half-closed. The only reason for closing it now is to
+release resources related to the socket.
+
+Now you can exit the loop relaying data from the network to the application.
+
+Receive events
+..............
+
+Finally, call :meth:`~protocol.Protocol.events_received` to obtain events
+parsed from the data provided to :meth:`~protocol.Protocol.receive_data`::
+
+ events = connection.events_received()
+
+The first event will be the WebSocket opening handshake request or response.
+See `Opening a connection`_ above for details.
+
+All later events are WebSocket frames. There are two types of frames:
+
+* Data frames contain messages transferred over the WebSocket connections. You
+ should provide them to the application. See `Fragmentation`_ below for
+ how to reassemble messages from frames.
+* Control frames provide information about the connection's state. The main
+ use case is to expose an abstraction over ping and pong to the application.
+ Keep in mind that websockets responds to ping frames and close frames
+ automatically. Don't duplicate this functionality!
+
+From the application to the network
+-----------------------------------
+
+The connection object provides one method for each type of WebSocket frame.
+
+For sending a data frame:
+
+* :meth:`~protocol.Protocol.send_continuation`
+* :meth:`~protocol.Protocol.send_text`
+* :meth:`~protocol.Protocol.send_binary`
+
+These methods raise :exc:`~exceptions.ProtocolError` if you don't set
+the :attr:`FIN <websockets.frames.Frame.fin>` bit correctly in fragmented
+messages.
+
+For sending a control frame:
+
+* :meth:`~protocol.Protocol.send_close`
+* :meth:`~protocol.Protocol.send_ping`
+* :meth:`~protocol.Protocol.send_pong`
+
+:meth:`~protocol.Protocol.send_close` initiates the closing handshake.
+See `Closing a connection`_ below for details.
+
+If you encounter an unrecoverable error and you must fail the WebSocket
+connection, call :meth:`~protocol.Protocol.fail`.
+
+After any of the above, call :meth:`~protocol.Protocol.data_to_send` and
+send its output to the network, as shown in `Send data`_ above.
+
+If you called :meth:`~protocol.Protocol.send_close`
+or :meth:`~protocol.Protocol.fail`, you expect the end of the data
+stream. You should follow the process described in `Close TCP connection`_
+above in order to prevent dangling TCP connections.
+
+Closing a connection
+--------------------
+
+Under normal circumstances, when a server wants to close the TCP connection:
+
+* it closes the write side;
+* it reads until the end of the stream, because it expects the client to close
+ the read side;
+* it closes the socket.
+
+When a client wants to close the TCP connection:
+
+* it reads until the end of the stream, because it expects the server to close
+ the read side;
+* it closes the write side;
+* it closes the socket.
+
+Applying the rules described earlier in this document gives the intended
+result. As a reminder, the rules are:
+
+* When :meth:`~protocol.Protocol.data_to_send` returns the empty
+ bytestring, close the write side of the TCP connection.
+* When you reach the end of the read stream, close the TCP connection.
+* When :meth:`~protocol.Protocol.close_expected` returns :obj:`True`, if
+ you don't reach the end of the read stream quickly, close the TCP connection.
+
+Fragmentation
+-------------
+
+WebSocket messages may be fragmented. Since this is a protocol-level concern,
+you may choose to reassemble fragmented messages before handing them over to
+the application.
+
+To reassemble a message, read data frames until you get a frame where
+the :attr:`FIN <websockets.frames.Frame.fin>` bit is set, then concatenate
+the payloads of all frames.
+
+You will never receive an inconsistent sequence of frames because websockets
+raises a :exc:`~exceptions.ProtocolError` and fails the connection when this
+happens. However, you may receive an incomplete sequence if the connection
+drops in the middle of a fragmented message.
+
+Tips
+----
+
+Serialize operations
+....................
+
+The Sans-I/O layer expects to run sequentially. If your interact with it from
+multiple threads or coroutines, you must ensure correct serialization. This
+should happen automatically in a cooperative multitasking environment.
+
+However, you still have to make sure you don't break this property by
+accident. For example, serialize writes to the network
+when :meth:`~protocol.Protocol.data_to_send` returns multiple values to
+prevent concurrent writes from interleaving incorrectly.
+
+Avoid buffers
+.............
+
+The Sans-I/O layer doesn't do any buffering. It makes events available in
+:meth:`~protocol.Protocol.events_received` as soon as they're received.
+
+You should make incoming messages available to the application immediately and
+stop further processing until the application fetches them. This will usually
+result in the best performance.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/howto/supervisor.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/supervisor.rst
new file mode 100644
index 0000000000..5eefc7711b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/howto/supervisor.rst
@@ -0,0 +1,131 @@
+Deploy with Supervisor
+======================
+
+This guide proposes a simple way to deploy a websockets server directly on a
+Linux or BSD operating system.
+
+We'll configure Supervisor_ to run several server processes and to restart
+them if needed.
+
+.. _Supervisor: http://supervisord.org/
+
+We'll bind all servers to the same port. The OS will take care of balancing
+connections.
+
+Create and activate a virtualenv:
+
+.. code-block:: console
+
+ $ python -m venv supervisor-websockets
+ $ . supervisor-websockets/bin/activate
+
+Install websockets and Supervisor:
+
+.. code-block:: console
+
+ $ pip install websockets
+ $ pip install supervisor
+
+Save this app to a file called ``app.py``:
+
+.. literalinclude:: ../../example/deployment/supervisor/app.py
+
+This is an echo server with two features added for the purpose of this guide:
+
+* It shuts down gracefully when receiving a ``SIGTERM`` signal;
+* It enables the ``reuse_port`` option of :meth:`~asyncio.loop.create_server`,
+ which in turns sets ``SO_REUSEPORT`` on the accept socket.
+
+Save this Supervisor configuration to ``supervisord.conf``:
+
+.. literalinclude:: ../../example/deployment/supervisor/supervisord.conf
+
+This is the minimal configuration required to keep four instances of the app
+running, restarting them if they exit.
+
+Now start Supervisor in the foreground:
+
+.. code-block:: console
+
+ $ supervisord -c supervisord.conf -n
+ INFO Increased RLIMIT_NOFILE limit to 1024
+ INFO supervisord started with pid 43596
+ INFO spawned: 'websockets-test_00' with pid 43597
+ INFO spawned: 'websockets-test_01' with pid 43598
+ INFO spawned: 'websockets-test_02' with pid 43599
+ INFO spawned: 'websockets-test_03' with pid 43600
+ INFO success: websockets-test_00 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
+ INFO success: websockets-test_01 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
+ INFO success: websockets-test_02 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
+ INFO success: websockets-test_03 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
+
+In another shell, after activating the virtualenv, we can connect to the app —
+press Ctrl-D to exit:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8080/
+ Connected to ws://localhost:8080/.
+ > Hello!
+ < Hello!
+ Connection closed: 1000 (OK).
+
+Look at the pid of an instance of the app in the logs and terminate it:
+
+.. code-block:: console
+
+ $ kill -TERM 43597
+
+The logs show that Supervisor restarted this instance:
+
+.. code-block:: console
+
+ INFO exited: websockets-test_00 (exit status 0; expected)
+ INFO spawned: 'websockets-test_00' with pid 43629
+ INFO success: websockets-test_00 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
+
+Now let's check what happens when we shut down Supervisor, but first let's
+establish a connection and leave it open:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8080/
+ Connected to ws://localhost:8080/.
+ >
+
+Look at the pid of supervisord itself in the logs and terminate it:
+
+.. code-block:: console
+
+ $ kill -TERM 43596
+
+The logs show that Supervisor terminated all instances of the app before
+exiting:
+
+.. code-block:: console
+
+ WARN received SIGTERM indicating exit request
+ INFO waiting for websockets-test_00, websockets-test_01, websockets-test_02, websockets-test_03 to die
+ INFO stopped: websockets-test_02 (exit status 0)
+ INFO stopped: websockets-test_03 (exit status 0)
+ INFO stopped: websockets-test_01 (exit status 0)
+ INFO stopped: websockets-test_00 (exit status 0)
+
+And you can see that the connection to the app was closed gracefully:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8080/
+ Connected to ws://localhost:8080/.
+ Connection closed: 1001 (going away).
+
+In this example, we've been sharing the same virtualenv for supervisor and
+websockets.
+
+In a real deployment, you would likely:
+
+* Install Supervisor with the package manager of the OS.
+* Create a virtualenv dedicated to your application.
+* Add ``environment=PATH="path/to/your/virtualenv/bin"`` in the Supervisor
+ configuration. Then ``python app.py`` runs in that virtualenv.
+
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/index.rst
new file mode 100644
index 0000000000..d9737db12a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/index.rst
@@ -0,0 +1,75 @@
+websockets
+==========
+
+|licence| |version| |pyversions| |tests| |docs| |openssf|
+
+.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg
+ :target: https://pypi.python.org/pypi/websockets
+
+.. |version| image:: https://img.shields.io/pypi/v/websockets.svg
+ :target: https://pypi.python.org/pypi/websockets
+
+.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg
+ :target: https://pypi.python.org/pypi/websockets
+
+.. |tests| image:: https://img.shields.io/github/checks-status/python-websockets/websockets/main?label=tests
+ :target: https://github.com/python-websockets/websockets/actions/workflows/tests.yml
+
+.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg
+ :target: https://websockets.readthedocs.io/
+
+.. |openssf| image:: https://bestpractices.coreinfrastructure.org/projects/6475/badge
+ :target: https://bestpractices.coreinfrastructure.org/projects/6475
+
+websockets is a library for building WebSocket_ servers and clients in Python
+with a focus on correctness, simplicity, robustness, and performance.
+
+.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
+
+It supports several network I/O and control flow paradigms:
+
+1. The default implementation builds upon :mod:`asyncio`, Python's standard
+ asynchronous I/O framework. It provides an elegant coroutine-based API. It's
+ ideal for servers that handle many clients concurrently.
+2. The :mod:`threading` implementation is a good alternative for clients,
+ especially if you aren't familiar with :mod:`asyncio`. It may also be used
+ for servers that don't need to serve many clients.
+3. The `Sans-I/O`_ implementation is designed for integrating in third-party
+ libraries, typically application servers, in addition being used internally
+ by websockets.
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+Here's an echo server with the :mod:`asyncio` API:
+
+.. literalinclude:: ../example/echo.py
+
+Here's how a client sends and receives messages with the :mod:`threading` API:
+
+.. literalinclude:: ../example/hello.py
+
+Don't worry about the opening and closing handshakes, pings and pongs, or any
+other behavior described in the WebSocket specification. websockets takes care
+of this under the hood so you can focus on your application!
+
+Also, websockets provides an interactive client:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8765/
+ Connected to ws://localhost:8765/.
+ > Hello world!
+ < Hello world!
+ Connection closed: 1000 (OK).
+
+Do you like it? :doc:`Let's dive in! <intro/index>`
+
+.. toctree::
+ :hidden:
+
+ intro/index
+ howto/index
+ faq/index
+ reference/index
+ topics/index
+ project/index
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/intro/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/index.rst
new file mode 100644
index 0000000000..095262a207
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/index.rst
@@ -0,0 +1,46 @@
+Getting started
+===============
+
+.. currentmodule:: websockets
+
+Requirements
+------------
+
+websockets requires Python ≥ 3.8.
+
+.. admonition:: Use the most recent Python release
+ :class: tip
+
+ For each minor version (3.x), only the latest bugfix or security release
+ (3.x.y) is officially supported.
+
+It doesn't have any dependencies.
+
+.. _install:
+
+Installation
+------------
+
+Install websockets with:
+
+.. code-block:: console
+
+ $ pip install websockets
+
+Wheels are available for all platforms.
+
+Tutorial
+--------
+
+Learn how to build an real-time web application with websockets.
+
+.. toctree::
+
+ tutorial1
+ tutorial2
+ tutorial3
+
+In a hurry?
+-----------
+
+Look at the :doc:`quick start guide <../howto/quickstart>`.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial1.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial1.rst
new file mode 100644
index 0000000000..ff85003b58
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial1.rst
@@ -0,0 +1,591 @@
+Part 1 - Send & receive
+=======================
+
+.. currentmodule:: websockets
+
+In this tutorial, you're going to build a web-based `Connect Four`_ game.
+
+.. _Connect Four: https://en.wikipedia.org/wiki/Connect_Four
+
+The web removes the constraint of being in the same room for playing a game.
+Two players can connect over of the Internet, regardless of where they are,
+and play in their browsers.
+
+When a player makes a move, it should be reflected immediately on both sides.
+This is difficult to implement over HTTP due to the request-response style of
+the protocol.
+
+Indeed, there is no good way to be notified when the other player makes a
+move. Workarounds such as polling or long-polling introduce significant
+overhead.
+
+Enter `WebSocket <websocket>`_.
+
+The WebSocket protocol provides two-way communication between a browser and a
+server over a persistent connection. That's exactly what you need to exchange
+moves between players, via a server.
+
+.. admonition:: This is the first part of the tutorial.
+
+ * In this :doc:`first part <tutorial1>`, you will create a server and
+ connect one browser; you can play if you share the same browser.
+ * In the :doc:`second part <tutorial2>`, you will connect a second
+ browser; you can play from different browsers on a local network.
+ * In the :doc:`third part <tutorial3>`, you will deploy the game to the
+ web; you can play from any browser connected to the Internet.
+
+Prerequisites
+-------------
+
+This tutorial assumes basic knowledge of Python and JavaScript.
+
+If you're comfortable with :doc:`virtual environments <python:tutorial/venv>`,
+you can use one for this tutorial. Else, don't worry: websockets doesn't have
+any dependencies; it shouldn't create trouble in the default environment.
+
+If you haven't installed websockets yet, do it now:
+
+.. code-block:: console
+
+ $ pip install websockets
+
+Confirm that websockets is installed:
+
+.. code-block:: console
+
+ $ python -m websockets --version
+
+.. admonition:: This tutorial is written for websockets |release|.
+ :class: tip
+
+ If you installed another version, you should switch to the corresponding
+ version of the documentation.
+
+Download the starter kit
+------------------------
+
+Create a directory and download these three files:
+:download:`connect4.js <../../example/tutorial/start/connect4.js>`,
+:download:`connect4.css <../../example/tutorial/start/connect4.css>`,
+and :download:`connect4.py <../../example/tutorial/start/connect4.py>`.
+
+The JavaScript module, along with the CSS file, provides a web-based user
+interface. Here's its API.
+
+.. js:module:: connect4
+
+.. js:data:: PLAYER1
+
+ Color of the first player.
+
+.. js:data:: PLAYER2
+
+ Color of the second player.
+
+.. js:function:: createBoard(board)
+
+ Draw a board.
+
+ :param board: DOM element containing the board; must be initially empty.
+
+.. js:function:: playMove(board, player, column, row)
+
+ Play a move.
+
+ :param board: DOM element containing the board.
+ :param player: :js:data:`PLAYER1` or :js:data:`PLAYER2`.
+ :param column: between ``0`` and ``6``.
+ :param row: between ``0`` and ``5``.
+
+The Python module provides a class to record moves and tell when a player
+wins. Here's its API.
+
+.. module:: connect4
+
+.. data:: PLAYER1
+ :value: "red"
+
+ Color of the first player.
+
+.. data:: PLAYER2
+ :value: "yellow"
+
+ Color of the second player.
+
+.. class:: Connect4
+
+ A Connect Four game.
+
+ .. method:: play(player, column)
+
+ Play a move.
+
+ :param player: :data:`~connect4.PLAYER1` or :data:`~connect4.PLAYER2`.
+ :param column: between ``0`` and ``6``.
+ :returns: Row where the checker lands, between ``0`` and ``5``.
+ :raises RuntimeError: if the move is illegal.
+
+ .. attribute:: moves
+
+ List of moves played during this game, as ``(player, column, row)``
+ tuples.
+
+ .. attribute:: winner
+
+ :data:`~connect4.PLAYER1` or :data:`~connect4.PLAYER2` if they
+ won; :obj:`None` if the game is still ongoing.
+
+.. currentmodule:: websockets
+
+Bootstrap the web UI
+--------------------
+
+Create an ``index.html`` file next to ``connect4.js`` and ``connect4.css``
+with this content:
+
+.. literalinclude:: ../../example/tutorial/step1/index.html
+ :language: html
+
+This HTML page contains an empty ``<div>`` element where you will draw the
+Connect Four board. It loads a ``main.js`` script where you will write all
+your JavaScript code.
+
+Create a ``main.js`` file next to ``index.html``. In this script, when the
+page loads, draw the board:
+
+.. code-block:: javascript
+
+ import { createBoard, playMove } from "./connect4.js";
+
+ window.addEventListener("DOMContentLoaded", () => {
+ // Initialize the UI.
+ const board = document.querySelector(".board");
+ createBoard(board);
+ });
+
+Open a shell, navigate to the directory containing these files, and start an
+HTTP server:
+
+.. code-block:: console
+
+ $ python -m http.server
+
+Open http://localhost:8000/ in a web browser. The page displays an empty board
+with seven columns and six rows. You will play moves in this board later.
+
+Bootstrap the server
+--------------------
+
+Create an ``app.py`` file next to ``connect4.py`` with this content:
+
+.. code-block:: python
+
+ #!/usr/bin/env python
+
+ import asyncio
+
+ import websockets
+
+
+ async def handler(websocket):
+ while True:
+ message = await websocket.recv()
+ print(message)
+
+
+ async def main():
+ async with websockets.serve(handler, "", 8001):
+ await asyncio.Future() # run forever
+
+
+ if __name__ == "__main__":
+ asyncio.run(main())
+
+The entry point of this program is ``asyncio.run(main())``. It creates an
+asyncio event loop, runs the ``main()`` coroutine, and shuts down the loop.
+
+The ``main()`` coroutine calls :func:`~server.serve` to start a websockets
+server. :func:`~server.serve` takes three positional arguments:
+
+* ``handler`` is a coroutine that manages a connection. When a client
+ connects, websockets calls ``handler`` with the connection in argument.
+ When ``handler`` terminates, websockets closes the connection.
+* The second argument defines the network interfaces where the server can be
+ reached. Here, the server listens on all interfaces, so that other devices
+ on the same local network can connect.
+* The third argument is the port on which the server listens.
+
+Invoking :func:`~server.serve` as an asynchronous context manager, in an
+``async with`` block, ensures that the server shuts down properly when
+terminating the program.
+
+For each connection, the ``handler()`` coroutine runs an infinite loop that
+receives messages from the browser and prints them.
+
+Open a shell, navigate to the directory containing ``app.py``, and start the
+server:
+
+.. code-block:: console
+
+ $ python app.py
+
+This doesn't display anything. Hopefully the WebSocket server is running.
+Let's make sure that it works. You cannot test the WebSocket server with a
+web browser like you tested the HTTP server. However, you can test it with
+websockets' interactive client.
+
+Open another shell and run this command:
+
+.. code-block:: console
+
+ $ python -m websockets ws://localhost:8001/
+
+You get a prompt. Type a message and press "Enter". Switch to the shell where
+the server is running and check that the server received the message. Good!
+
+Exit the interactive client with Ctrl-C or Ctrl-D.
+
+Now, if you look at the console where you started the server, you can see the
+stack trace of an exception:
+
+.. code-block:: pytb
+
+ connection handler failed
+ Traceback (most recent call last):
+ ...
+ File "app.py", line 22, in handler
+ message = await websocket.recv()
+ ...
+ websockets.exceptions.ConnectionClosedOK: received 1000 (OK); then sent 1000 (OK)
+
+Indeed, the server was waiting for the next message
+with :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` when the client
+disconnected. When this happens, websockets raises
+a :exc:`~exceptions.ConnectionClosedOK` exception to let you know that you
+won't receive another message on this connection.
+
+This exception creates noise in the server logs, making it more difficult to
+spot real errors when you add functionality to the server. Catch it in the
+``handler()`` coroutine:
+
+.. code-block:: python
+
+ async def handler(websocket):
+ while True:
+ try:
+ message = await websocket.recv()
+ except websockets.ConnectionClosedOK:
+ break
+ print(message)
+
+Stop the server with Ctrl-C and start it again:
+
+.. code-block:: console
+
+ $ python app.py
+
+.. admonition:: You must restart the WebSocket server when you make changes.
+ :class: tip
+
+ The WebSocket server loads the Python code in ``app.py`` then serves every
+ WebSocket request with this version of the code. As a consequence,
+ changes to ``app.py`` aren't visible until you restart the server.
+
+ This is unlike the HTTP server that you started earlier with ``python -m
+ http.server``. For every request, this HTTP server reads the target file
+ and sends it. That's why changes are immediately visible.
+
+ It is possible to :doc:`restart the WebSocket server automatically
+ <../howto/autoreload>` but this isn't necessary for this tutorial.
+
+Try connecting and disconnecting the interactive client again.
+The :exc:`~exceptions.ConnectionClosedOK` exception doesn't appear anymore.
+
+This pattern is so common that websockets provides a shortcut for iterating
+over messages received on the connection until the client disconnects:
+
+.. code-block:: python
+
+ async def handler(websocket):
+ async for message in websocket:
+ print(message)
+
+Restart the server and check with the interactive client that its behavior
+didn't change.
+
+At this point, you bootstrapped a web application and a WebSocket server.
+Let's connect them.
+
+Transmit from browser to server
+-------------------------------
+
+In JavaScript, you open a WebSocket connection as follows:
+
+.. code-block:: javascript
+
+ const websocket = new WebSocket("ws://localhost:8001/");
+
+Before you exchange messages with the server, you need to decide their format.
+There is no universal convention for this.
+
+Let's use JSON objects with a ``type`` key identifying the type of the event
+and the rest of the object containing properties of the event.
+
+Here's an event describing a move in the middle slot of the board:
+
+.. code-block:: javascript
+
+ const event = {type: "play", column: 3};
+
+Here's how to serialize this event to JSON and send it to the server:
+
+.. code-block:: javascript
+
+ websocket.send(JSON.stringify(event));
+
+Now you have all the building blocks to send moves to the server.
+
+Add this function to ``main.js``:
+
+.. literalinclude:: ../../example/tutorial/step1/main.js
+ :language: js
+ :start-at: function sendMoves
+ :end-before: window.addEventListener
+
+``sendMoves()`` registers a listener for ``click`` events on the board. The
+listener figures out which column was clicked, builds a event of type
+``"play"``, serializes it, and sends it to the server.
+
+Modify the initialization to open the WebSocket connection and call the
+``sendMoves()`` function:
+
+.. code-block:: javascript
+
+ window.addEventListener("DOMContentLoaded", () => {
+ // Initialize the UI.
+ const board = document.querySelector(".board");
+ createBoard(board);
+ // Open the WebSocket connection and register event handlers.
+ const websocket = new WebSocket("ws://localhost:8001/");
+ sendMoves(board, websocket);
+ });
+
+Check that the HTTP server and the WebSocket server are still running. If you
+stopped them, here are the commands to start them again:
+
+.. code-block:: console
+
+ $ python -m http.server
+
+.. code-block:: console
+
+ $ python app.py
+
+Refresh http://localhost:8000/ in your web browser. Click various columns in
+the board. The server receives messages with the expected column number.
+
+There isn't any feedback in the board because you haven't implemented that
+yet. Let's do it.
+
+Transmit from server to browser
+-------------------------------
+
+In JavaScript, you receive WebSocket messages by listening to ``message``
+events. Here's how to receive a message from the server and deserialize it
+from JSON:
+
+.. code-block:: javascript
+
+ websocket.addEventListener("message", ({ data }) => {
+ const event = JSON.parse(data);
+ // do something with event
+ });
+
+You're going to need three types of messages from the server to the browser:
+
+.. code-block:: javascript
+
+ {type: "play", player: "red", column: 3, row: 0}
+ {type: "win", player: "red"}
+ {type: "error", message: "This slot is full."}
+
+The JavaScript code receiving these messages will dispatch events depending on
+their type and take appropriate action. For example, it will react to an
+event of type ``"play"`` by displaying the move on the board with
+the :js:func:`~connect4.playMove` function.
+
+Add this function to ``main.js``:
+
+.. literalinclude:: ../../example/tutorial/step1/main.js
+ :language: js
+ :start-at: function showMessage
+ :end-before: function sendMoves
+
+.. admonition:: Why does ``showMessage`` use ``window.setTimeout``?
+ :class: hint
+
+ When :js:func:`playMove` modifies the state of the board, the browser
+ renders changes asynchronously. Conversely, ``window.alert()`` runs
+ synchronously and blocks rendering while the alert is visible.
+
+ If you called ``window.alert()`` immediately after :js:func:`playMove`,
+ the browser could display the alert before rendering the move. You could
+ get a "Player red wins!" alert without seeing red's last move.
+
+ We're using ``window.alert()`` for simplicity in this tutorial. A real
+ application would display these messages in the user interface instead.
+ It wouldn't be vulnerable to this problem.
+
+Modify the initialization to call the ``receiveMoves()`` function:
+
+.. literalinclude:: ../../example/tutorial/step1/main.js
+ :language: js
+ :start-at: window.addEventListener
+
+At this point, the user interface should receive events properly. Let's test
+it by modifying the server to send some events.
+
+Sending an event from Python is quite similar to JavaScript:
+
+.. code-block:: python
+
+ event = {"type": "play", "player": "red", "column": 3, "row": 0}
+ await websocket.send(json.dumps(event))
+
+.. admonition:: Don't forget to serialize the event with :func:`json.dumps`.
+ :class: tip
+
+ Else, websockets raises ``TypeError: data is a dict-like object``.
+
+Modify the ``handler()`` coroutine in ``app.py`` as follows:
+
+.. code-block:: python
+
+ import json
+
+ from connect4 import PLAYER1, PLAYER2
+
+ async def handler(websocket):
+ for player, column, row in [
+ (PLAYER1, 3, 0),
+ (PLAYER2, 3, 1),
+ (PLAYER1, 4, 0),
+ (PLAYER2, 4, 1),
+ (PLAYER1, 2, 0),
+ (PLAYER2, 1, 0),
+ (PLAYER1, 5, 0),
+ ]:
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ await websocket.send(json.dumps(event))
+ await asyncio.sleep(0.5)
+ event = {
+ "type": "win",
+ "player": PLAYER1,
+ }
+ await websocket.send(json.dumps(event))
+
+Restart the WebSocket server and refresh http://localhost:8000/ in your web
+browser. Seven moves appear at 0.5 second intervals. Then an alert announces
+the winner.
+
+Good! Now you know how to communicate both ways.
+
+Once you plug the game engine to process moves, you will have a fully
+functional game.
+
+Add the game logic
+------------------
+
+In the ``handler()`` coroutine, you're going to initialize a game:
+
+.. code-block:: python
+
+ from connect4 import Connect4
+
+ async def handler(websocket):
+ # Initialize a Connect Four game.
+ game = Connect4()
+
+ ...
+
+Then, you're going to iterate over incoming messages and take these steps:
+
+* parse an event of type ``"play"``, the only type of event that the user
+ interface sends;
+* play the move in the board with the :meth:`~connect4.Connect4.play` method,
+ alternating between the two players;
+* if :meth:`~connect4.Connect4.play` raises :exc:`RuntimeError` because the
+ move is illegal, send an event of type ``"error"``;
+* else, send an event of type ``"play"`` to tell the user interface where the
+ checker lands;
+* if the move won the game, send an event of type ``"win"``.
+
+Try to implement this by yourself!
+
+Keep in mind that you must restart the WebSocket server and reload the page in
+the browser when you make changes.
+
+When it works, you can play the game from a single browser, with players
+taking alternate turns.
+
+.. admonition:: Enable debug logs to see all messages sent and received.
+ :class: tip
+
+ Here's how to enable debug logs:
+
+ .. code-block:: python
+
+ import logging
+
+ logging.basicConfig(format="%(message)s", level=logging.DEBUG)
+
+If you're stuck, a solution is available at the bottom of this document.
+
+Summary
+-------
+
+In this first part of the tutorial, you learned how to:
+
+* build and run a WebSocket server in Python with :func:`~server.serve`;
+* receive a message in a connection handler
+ with :meth:`~server.WebSocketServerProtocol.recv`;
+* send a message in a connection handler
+ with :meth:`~server.WebSocketServerProtocol.send`;
+* iterate over incoming messages with ``async for
+ message in websocket: ...``;
+* open a WebSocket connection in JavaScript with the ``WebSocket`` API;
+* send messages in a browser with ``WebSocket.send()``;
+* receive messages in a browser by listening to ``message`` events;
+* design a set of events to be exchanged between the browser and the server.
+
+You can now play a Connect Four game in a browser, communicating over a
+WebSocket connection with a server where the game logic resides!
+
+However, the two players share a browser, so the constraint of being in the
+same room still applies.
+
+Move on to the :doc:`second part <tutorial2>` of the tutorial to break this
+constraint and play from separate browsers.
+
+Solution
+--------
+
+.. literalinclude:: ../../example/tutorial/step1/app.py
+ :caption: app.py
+ :language: python
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step1/index.html
+ :caption: index.html
+ :language: html
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step1/main.js
+ :caption: main.js
+ :language: js
+ :linenos:
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial2.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial2.rst
new file mode 100644
index 0000000000..5ac4ae9dd5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial2.rst
@@ -0,0 +1,565 @@
+Part 2 - Route & broadcast
+==========================
+
+.. currentmodule:: websockets
+
+.. admonition:: This is the second part of the tutorial.
+
+ * In the :doc:`first part <tutorial1>`, you created a server and
+ connected one browser; you could play if you shared the same browser.
+ * In this :doc:`second part <tutorial2>`, you will connect a second
+ browser; you can play from different browsers on a local network.
+ * In the :doc:`third part <tutorial3>`, you will deploy the game to the
+ web; you can play from any browser connected to the Internet.
+
+In the first part of the tutorial, you opened a WebSocket connection from a
+browser to a server and exchanged events to play moves. The state of the game
+was stored in an instance of the :class:`~connect4.Connect4` class,
+referenced as a local variable in the connection handler coroutine.
+
+Now you want to open two WebSocket connections from two separate browsers, one
+for each player, to the same server in order to play the same game. This
+requires moving the state of the game to a place where both connections can
+access it.
+
+Share game state
+----------------
+
+As long as you're running a single server process, you can share state by
+storing it in a global variable.
+
+.. admonition:: What if you need to scale to multiple server processes?
+ :class: hint
+
+ In that case, you must design a way for the process that handles a given
+ connection to be aware of relevant events for that client. This is often
+ achieved with a publish / subscribe mechanism.
+
+How can you make two connection handlers agree on which game they're playing?
+When the first player starts a game, you give it an identifier. Then, you
+communicate the identifier to the second player. When the second player joins
+the game, you look it up with the identifier.
+
+In addition to the game itself, you need to keep track of the WebSocket
+connections of the two players. Since both players receive the same events,
+you don't need to treat the two connections differently; you can store both
+in the same set.
+
+Let's sketch this in code.
+
+A module-level :class:`dict` enables lookups by identifier:
+
+.. code-block:: python
+
+ JOIN = {}
+
+When the first player starts the game, initialize and store it:
+
+.. code-block:: python
+
+ import secrets
+
+ async def handler(websocket):
+ ...
+
+ # Initialize a Connect Four game, the set of WebSocket connections
+ # receiving moves from this game, and secret access token.
+ game = Connect4()
+ connected = {websocket}
+
+ join_key = secrets.token_urlsafe(12)
+ JOIN[join_key] = game, connected
+
+ try:
+
+ ...
+
+ finally:
+ del JOIN[join_key]
+
+When the second player joins the game, look it up:
+
+.. code-block:: python
+
+ async def handler(websocket):
+ ...
+
+ join_key = ... # TODO
+
+ # Find the Connect Four game.
+ game, connected = JOIN[join_key]
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+
+ ...
+
+ finally:
+ connected.remove(websocket)
+
+Notice how we're carefully cleaning up global state with ``try: ...
+finally: ...`` blocks. Else, we could leave references to games or
+connections in global state, which would cause a memory leak.
+
+In both connection handlers, you have a ``game`` pointing to the same
+:class:`~connect4.Connect4` instance, so you can interact with the game,
+and a ``connected`` set of connections, so you can send game events to
+both players as follows:
+
+.. code-block:: python
+
+ async def handler(websocket):
+
+ ...
+
+ for connection in connected:
+ await connection.send(json.dumps(event))
+
+ ...
+
+Perhaps you spotted a major piece missing from the puzzle. How does the second
+player obtain ``join_key``? Let's design new events to carry this information.
+
+To start a game, the first player sends an ``"init"`` event:
+
+.. code-block:: javascript
+
+ {type: "init"}
+
+The connection handler for the first player creates a game as shown above and
+responds with:
+
+.. code-block:: javascript
+
+ {type: "init", join: "<join_key>"}
+
+With this information, the user interface of the first player can create a
+link to ``http://localhost:8000/?join=<join_key>``. For the sake of simplicity,
+we will assume that the first player shares this link with the second player
+outside of the application, for example via an instant messaging service.
+
+To join the game, the second player sends a different ``"init"`` event:
+
+.. code-block:: javascript
+
+ {type: "init", join: "<join_key>"}
+
+The connection handler for the second player can look up the game with the
+join key as shown above. There is no need to respond.
+
+Let's dive into the details of implementing this design.
+
+Start a game
+------------
+
+We'll start with the initialization sequence for the first player.
+
+In ``main.js``, define a function to send an initialization event when the
+WebSocket connection is established, which triggers an ``open`` event:
+
+.. code-block:: javascript
+
+ function initGame(websocket) {
+ websocket.addEventListener("open", () => {
+ // Send an "init" event for the first player.
+ const event = { type: "init" };
+ websocket.send(JSON.stringify(event));
+ });
+ }
+
+Update the initialization sequence to call ``initGame()``:
+
+.. literalinclude:: ../../example/tutorial/step2/main.js
+ :language: js
+ :start-at: window.addEventListener
+
+In ``app.py``, define a new ``handler`` coroutine — keep a copy of the
+previous one to reuse it later:
+
+.. code-block:: python
+
+ import secrets
+
+
+ JOIN = {}
+
+
+ async def start(websocket):
+ # Initialize a Connect Four game, the set of WebSocket connections
+ # receiving moves from this game, and secret access token.
+ game = Connect4()
+ connected = {websocket}
+
+ join_key = secrets.token_urlsafe(12)
+ JOIN[join_key] = game, connected
+
+ try:
+ # Send the secret access token to the browser of the first player,
+ # where it'll be used for building a "join" link.
+ event = {
+ "type": "init",
+ "join": join_key,
+ }
+ await websocket.send(json.dumps(event))
+
+ # Temporary - for testing.
+ print("first player started game", id(game))
+ async for message in websocket:
+ print("first player sent", message)
+
+ finally:
+ del JOIN[join_key]
+
+
+ async def handler(websocket):
+ # Receive and parse the "init" event from the UI.
+ message = await websocket.recv()
+ event = json.loads(message)
+ assert event["type"] == "init"
+
+ # First player starts a new game.
+ await start(websocket)
+
+In ``index.html``, add an ``<a>`` element to display the link to share with
+the other player.
+
+.. code-block:: html
+
+ <body>
+ <div class="actions">
+ <a class="action join" href="">Join</a>
+ </div>
+ <!-- ... -->
+ </body>
+
+In ``main.js``, modify ``receiveMoves()`` to handle the ``"init"`` message and
+set the target of that link:
+
+.. code-block:: javascript
+
+ switch (event.type) {
+ case "init":
+ // Create link for inviting the second player.
+ document.querySelector(".join").href = "?join=" + event.join;
+ break;
+ // ...
+ }
+
+Restart the WebSocket server and reload http://localhost:8000/ in the browser.
+There's a link labeled JOIN below the board with a target that looks like
+http://localhost:8000/?join=95ftAaU5DJVP1zvb.
+
+The server logs say ``first player started game ...``. If you click the board,
+you see ``"play"`` events. There is no feedback in the UI, though, because
+you haven't restored the game logic yet.
+
+Before we get there, let's handle links with a ``join`` query parameter.
+
+Join a game
+-----------
+
+We'll now update the initialization sequence to account for the second
+player.
+
+In ``main.js``, update ``initGame()`` to send the join key in the ``"init"``
+message when it's in the URL:
+
+.. code-block:: javascript
+
+ function initGame(websocket) {
+ websocket.addEventListener("open", () => {
+ // Send an "init" event according to who is connecting.
+ const params = new URLSearchParams(window.location.search);
+ let event = { type: "init" };
+ if (params.has("join")) {
+ // Second player joins an existing game.
+ event.join = params.get("join");
+ } else {
+ // First player starts a new game.
+ }
+ websocket.send(JSON.stringify(event));
+ });
+ }
+
+In ``app.py``, update the ``handler`` coroutine to look for the join key in
+the ``"init"`` message, then load that game:
+
+.. code-block:: python
+
+ async def error(websocket, message):
+ event = {
+ "type": "error",
+ "message": message,
+ }
+ await websocket.send(json.dumps(event))
+
+
+ async def join(websocket, join_key):
+ # Find the Connect Four game.
+ try:
+ game, connected = JOIN[join_key]
+ except KeyError:
+ await error(websocket, "Game not found.")
+ return
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+
+ # Temporary - for testing.
+ print("second player joined game", id(game))
+ async for message in websocket:
+ print("second player sent", message)
+
+ finally:
+ connected.remove(websocket)
+
+
+ async def handler(websocket):
+ # Receive and parse the "init" event from the UI.
+ message = await websocket.recv()
+ event = json.loads(message)
+ assert event["type"] == "init"
+
+ if "join" in event:
+ # Second player joins an existing game.
+ await join(websocket, event["join"])
+ else:
+ # First player starts a new game.
+ await start(websocket)
+
+Restart the WebSocket server and reload http://localhost:8000/ in the browser.
+
+Copy the link labeled JOIN and open it in another browser. You may also open
+it in another tab or another window of the same browser; however, that makes
+it a bit tricky to remember which one is the first or second player.
+
+.. admonition:: You must start a new game when you restart the server.
+ :class: tip
+
+ Since games are stored in the memory of the Python process, they're lost
+ when you stop the server.
+
+ Whenever you make changes to ``app.py``, you must restart the server,
+ create a new game in a browser, and join it in another browser.
+
+The server logs say ``first player started game ...`` and ``second player
+joined game ...``. The numbers match, proving that the ``game`` local
+variable in both connection handlers points to same object in the memory of
+the Python process.
+
+Click the board in either browser. The server receives ``"play"`` events from
+the corresponding player.
+
+In the initialization sequence, you're routing connections to ``start()`` or
+``join()`` depending on the first message received by the server. This is a
+common pattern in servers that handle different clients.
+
+.. admonition:: Why not use different URIs for ``start()`` and ``join()``?
+ :class: hint
+
+ Instead of sending an initialization event, you could encode the join key
+ in the WebSocket URI e.g. ``ws://localhost:8001/join/<join_key>``. The
+ WebSocket server would parse ``websocket.path`` and route the connection,
+ similar to how HTTP servers route requests.
+
+ When you need to send sensitive data like authentication credentials to
+ the server, sending it an event is considered more secure than encoding
+ it in the URI because URIs end up in logs.
+
+ For the purposes of this tutorial, both approaches are equivalent because
+ the join key comes from an HTTP URL. There isn't much at risk anyway!
+
+Now you can restore the logic for playing moves and you'll have a fully
+functional two-player game.
+
+Add the game logic
+------------------
+
+Once the initialization is done, the game is symmetrical, so you can write a
+single coroutine to process the moves of both players:
+
+.. code-block:: python
+
+ async def play(websocket, game, player, connected):
+ ...
+
+With such a coroutine, you can replace the temporary code for testing in
+``start()`` by:
+
+.. code-block:: python
+
+ await play(websocket, game, PLAYER1, connected)
+
+and in ``join()`` by:
+
+.. code-block:: python
+
+ await play(websocket, game, PLAYER2, connected)
+
+The ``play()`` coroutine will reuse much of the code you wrote in the first
+part of the tutorial.
+
+Try to implement this by yourself!
+
+Keep in mind that you must restart the WebSocket server, reload the page to
+start a new game with the first player, copy the JOIN link, and join the game
+with the second player when you make changes.
+
+When ``play()`` works, you can play the game from two separate browsers,
+possibly running on separate computers on the same local network.
+
+A complete solution is available at the bottom of this document.
+
+Watch a game
+------------
+
+Let's add one more feature: allow spectators to watch the game.
+
+The process for inviting a spectator can be the same as for inviting the
+second player. You will have to duplicate all the initialization logic:
+
+- declare a ``WATCH`` global variable similar to ``JOIN``;
+- generate a watch key when creating a game; it must be different from the
+ join key, or else a spectator could hijack a game by tweaking the URL;
+- include the watch key in the ``"init"`` event sent to the first player;
+- generate a WATCH link in the UI with a ``watch`` query parameter;
+- update the ``initGame()`` function to handle such links;
+- update the ``handler()`` coroutine to invoke a ``watch()`` coroutine for
+ spectators;
+- prevent ``sendMoves()`` from sending ``"play"`` events for spectators.
+
+Once the initialization sequence is done, watching a game is as simple as
+registering the WebSocket connection in the ``connected`` set in order to
+receive game events and doing nothing until the spectator disconnects. You
+can wait for a connection to terminate with
+:meth:`~legacy.protocol.WebSocketCommonProtocol.wait_closed`:
+
+.. code-block:: python
+
+ async def watch(websocket, watch_key):
+
+ ...
+
+ connected.add(websocket)
+ try:
+ await websocket.wait_closed()
+ finally:
+ connected.remove(websocket)
+
+The connection can terminate because the ``receiveMoves()`` function closed it
+explicitly after receiving a ``"win"`` event, because the spectator closed
+their browser, or because the network failed.
+
+Again, try to implement this by yourself.
+
+When ``watch()`` works, you can invite spectators to watch the game from other
+browsers, as long as they're on the same local network.
+
+As a further improvement, you may support adding spectators while a game is
+already in progress. This requires replaying moves that were played before
+the spectator was added to the ``connected`` set. Past moves are available in
+the :attr:`~connect4.Connect4.moves` attribute of the game.
+
+This feature is included in the solution proposed below.
+
+Broadcast
+---------
+
+When you need to send a message to the two players and to all spectators,
+you're using this pattern:
+
+.. code-block:: python
+
+ async def handler(websocket):
+
+ ...
+
+ for connection in connected:
+ await connection.send(json.dumps(event))
+
+ ...
+
+Since this is a very common pattern in WebSocket servers, websockets provides
+the :func:`broadcast` helper for this purpose:
+
+.. code-block:: python
+
+ async def handler(websocket):
+
+ ...
+
+ websockets.broadcast(connected, json.dumps(event))
+
+ ...
+
+Calling :func:`broadcast` once is more efficient than
+calling :meth:`~legacy.protocol.WebSocketCommonProtocol.send` in a loop.
+
+However, there's a subtle difference in behavior. Did you notice that there's
+no ``await`` in the second version? Indeed, :func:`broadcast` is a function,
+not a coroutine like :meth:`~legacy.protocol.WebSocketCommonProtocol.send`
+or :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`.
+
+It's quite obvious why :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`
+is a coroutine. When you want to receive the next message, you have to wait
+until the client sends it and the network transmits it.
+
+It's less obvious why :meth:`~legacy.protocol.WebSocketCommonProtocol.send` is
+a coroutine. If you send many messages or large messages, you could write
+data faster than the network can transmit it or the client can read it. Then,
+outgoing data will pile up in buffers, which will consume memory and may
+crash your application.
+
+To avoid this problem, :meth:`~legacy.protocol.WebSocketCommonProtocol.send`
+waits until the write buffer drains. By slowing down the application as
+necessary, this ensures that the server doesn't send data too quickly. This
+is called backpressure and it's useful for building robust systems.
+
+That said, when you're sending the same messages to many clients in a loop,
+applying backpressure in this way can become counterproductive. When you're
+broadcasting, you don't want to slow down everyone to the pace of the slowest
+clients; you want to drop clients that cannot keep up with the data stream.
+That's why :func:`broadcast` doesn't wait until write buffers drain.
+
+For our Connect Four game, there's no difference in practice: the total amount
+of data sent on a connection for a game of Connect Four is less than 64 KB,
+so the write buffer never fills up and backpressure never kicks in anyway.
+
+Summary
+-------
+
+In this second part of the tutorial, you learned how to:
+
+* configure a connection by exchanging initialization messages;
+* keep track of connections within a single server process;
+* wait until a client disconnects in a connection handler;
+* broadcast a message to many connections efficiently.
+
+You can now play a Connect Four game from separate browser, communicating over
+WebSocket connections with a server that synchronizes the game logic!
+
+However, the two players have to be on the same local network as the server,
+so the constraint of being in the same place still mostly applies.
+
+Head over to the :doc:`third part <tutorial3>` of the tutorial to deploy the
+game to the web and remove this constraint.
+
+Solution
+--------
+
+.. literalinclude:: ../../example/tutorial/step2/app.py
+ :caption: app.py
+ :language: python
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step2/index.html
+ :caption: index.html
+ :language: html
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step2/main.js
+ :caption: main.js
+ :language: js
+ :linenos:
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial3.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial3.rst
new file mode 100644
index 0000000000..6fdec113b2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/intro/tutorial3.rst
@@ -0,0 +1,290 @@
+Part 3 - Deploy to the web
+==========================
+
+.. currentmodule:: websockets
+
+.. admonition:: This is the third part of the tutorial.
+
+ * In the :doc:`first part <tutorial1>`, you created a server and
+ connected one browser; you could play if you shared the same browser.
+ * In this :doc:`second part <tutorial2>`, you connected a second browser;
+ you could play from different browsers on a local network.
+ * In this :doc:`third part <tutorial3>`, you will deploy the game to the
+ web; you can play from any browser connected to the Internet.
+
+In the first and second parts of the tutorial, for local development, you ran
+an HTTP server on ``http://localhost:8000/`` with:
+
+.. code-block:: console
+
+ $ python -m http.server
+
+and a WebSocket server on ``ws://localhost:8001/`` with:
+
+.. code-block:: console
+
+ $ python app.py
+
+Now you want to deploy these servers on the Internet. There's a vast range of
+hosting providers to choose from. For the sake of simplicity, we'll rely on:
+
+* GitHub Pages for the HTTP server;
+* Heroku for the WebSocket server.
+
+Commit project to git
+---------------------
+
+Perhaps you committed your work to git while you were progressing through the
+tutorial. If you didn't, now is a good time, because GitHub and Heroku offer
+git-based deployment workflows.
+
+Initialize a git repository:
+
+.. code-block:: console
+
+ $ git init -b main
+ Initialized empty Git repository in websockets-tutorial/.git/
+ $ git commit --allow-empty -m "Initial commit."
+ [main (root-commit) ...] Initial commit.
+
+Add all files and commit:
+
+.. code-block:: console
+
+ $ git add .
+ $ git commit -m "Initial implementation of Connect Four game."
+ [main ...] Initial implementation of Connect Four game.
+ 6 files changed, 500 insertions(+)
+ create mode 100644 app.py
+ create mode 100644 connect4.css
+ create mode 100644 connect4.js
+ create mode 100644 connect4.py
+ create mode 100644 index.html
+ create mode 100644 main.js
+
+Prepare the WebSocket server
+----------------------------
+
+Before you deploy the server, you must adapt it to meet requirements of
+Heroku's runtime. This involves two small changes:
+
+1. Heroku expects the server to `listen on a specific port`_, provided in the
+ ``$PORT`` environment variable.
+
+2. Heroku sends a ``SIGTERM`` signal when `shutting down a dyno`_, which
+ should trigger a clean exit.
+
+.. _listen on a specific port: https://devcenter.heroku.com/articles/preparing-a-codebase-for-heroku-deployment#4-listen-on-the-correct-port
+
+.. _shutting down a dyno: https://devcenter.heroku.com/articles/dynos#shutdown
+
+Adapt the ``main()`` coroutine accordingly:
+
+.. code-block:: python
+
+ import os
+ import signal
+
+.. literalinclude:: ../../example/tutorial/step3/app.py
+ :pyobject: main
+
+To catch the ``SIGTERM`` signal, ``main()`` creates a :class:`~asyncio.Future`
+called ``stop`` and registers a signal handler that sets the result of this
+future. The value of the future doesn't matter; it's only for waiting for
+``SIGTERM``.
+
+Then, by using :func:`~server.serve` as a context manager and exiting the
+context when ``stop`` has a result, ``main()`` ensures that the server closes
+connections cleanly and exits on ``SIGTERM``.
+
+The app is now fully compatible with Heroku.
+
+Deploy the WebSocket server
+---------------------------
+
+Create a ``requirements.txt`` file with this content to install ``websockets``
+when building the image:
+
+.. literalinclude:: ../../example/tutorial/step3/requirements.txt
+ :language: text
+
+.. admonition:: Heroku treats ``requirements.txt`` as a signal to `detect a Python app`_.
+ :class: tip
+
+ That's why you don't need to declare that you need a Python runtime.
+
+.. _detect a Python app: https://devcenter.heroku.com/articles/python-support#recognizing-a-python-app
+
+Create a ``Procfile`` file with this content to configure the command for
+running the server:
+
+.. literalinclude:: ../../example/tutorial/step3/Procfile
+ :language: text
+
+Commit your changes:
+
+.. code-block:: console
+
+ $ git add .
+ $ git commit -m "Deploy to Heroku."
+ [main ...] Deploy to Heroku.
+ 3 files changed, 12 insertions(+), 2 deletions(-)
+ create mode 100644 Procfile
+ create mode 100644 requirements.txt
+
+Follow the `set-up instructions`_ to install the Heroku CLI and to log in, if
+you haven't done that yet.
+
+.. _set-up instructions: https://devcenter.heroku.com/articles/getting-started-with-python#set-up
+
+Create a Heroku app. You must choose a unique name and replace
+``websockets-tutorial`` by this name in the following command:
+
+.. code-block:: console
+
+ $ heroku create websockets-tutorial
+ Creating ⬢ websockets-tutorial... done
+ https://websockets-tutorial.herokuapp.com/ | https://git.heroku.com/websockets-tutorial.git
+
+If you reuse a name that someone else already uses, you will receive this
+error; if this happens, try another name:
+
+.. code-block:: console
+
+ $ heroku create websockets-tutorial
+ Creating ⬢ websockets-tutorial... !
+ ▸ Name websockets-tutorial is already taken
+
+Deploy by pushing the code to Heroku:
+
+.. code-block:: console
+
+ $ git push heroku
+
+ ... lots of output...
+
+ remote: Released v1
+ remote: https://websockets-tutorial.herokuapp.com/ deployed to Heroku
+ remote:
+ remote: Verifying deploy... done.
+ To https://git.heroku.com/websockets-tutorial.git
+ * [new branch] main -> main
+
+You can test the WebSocket server with the interactive client exactly like you
+did in the first part of the tutorial. Replace ``websockets-tutorial`` by the
+name of your app in the following command:
+
+.. code-block:: console
+
+ $ python -m websockets wss://websockets-tutorial.herokuapp.com/
+ Connected to wss://websockets-tutorial.herokuapp.com/.
+ > {"type": "init"}
+ < {"type": "init", "join": "54ICxFae_Ip7TJE2", "watch": "634w44TblL5Dbd9a"}
+ Connection closed: 1000 (OK).
+
+It works!
+
+Prepare the web application
+---------------------------
+
+Before you deploy the web application, perhaps you're wondering how it will
+locate the WebSocket server? Indeed, at this point, its address is hard-coded
+in ``main.js``:
+
+.. code-block:: javascript
+
+ const websocket = new WebSocket("ws://localhost:8001/");
+
+You can take this strategy one step further by checking the address of the
+HTTP server and determining the address of the WebSocket server accordingly.
+
+Add this function to ``main.js``; replace ``python-websockets`` by your GitHub
+username and ``websockets-tutorial`` by the name of your app on Heroku:
+
+.. literalinclude:: ../../example/tutorial/step3/main.js
+ :language: js
+ :start-at: function getWebSocketServer
+ :end-before: function initGame
+
+Then, update the initialization to connect to this address instead:
+
+.. code-block:: javascript
+
+ const websocket = new WebSocket(getWebSocketServer());
+
+Commit your changes:
+
+.. code-block:: console
+
+ $ git add .
+ $ git commit -m "Configure WebSocket server address."
+ [main ...] Configure WebSocket server address.
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+Deploy the web application
+--------------------------
+
+Go to GitHub and create a new repository called ``websockets-tutorial``.
+
+Push your code to this repository. You must replace ``python-websockets`` by
+your GitHub username in the following command:
+
+.. code-block:: console
+
+ $ git remote add origin git@github.com:python-websockets/websockets-tutorial.git
+ $ git push -u origin main
+ Enumerating objects: 11, done.
+ Counting objects: 100% (11/11), done.
+ Delta compression using up to 8 threads
+ Compressing objects: 100% (10/10), done.
+ Writing objects: 100% (11/11), 5.90 KiB | 2.95 MiB/s, done.
+ Total 11 (delta 0), reused 0 (delta 0), pack-reused 0
+ To github.com:<username>/websockets-tutorial.git
+ * [new branch] main -> main
+ Branch 'main' set up to track remote branch 'main' from 'origin'.
+
+Go back to GitHub, open the Settings tab of the repository and select Pages in
+the menu. Select the main branch as source and click Save. GitHub tells you
+that your site is published.
+
+Follow the link and start a game!
+
+Summary
+-------
+
+In this third part of the tutorial, you learned how to deploy a WebSocket
+application with Heroku.
+
+You can start a Connect Four game, send the JOIN link to a friend, and play
+over the Internet!
+
+Congratulations for completing the tutorial. Enjoy building real-time web
+applications with websockets!
+
+Solution
+--------
+
+.. literalinclude:: ../../example/tutorial/step3/app.py
+ :caption: app.py
+ :language: python
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step3/index.html
+ :caption: index.html
+ :language: html
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step3/main.js
+ :caption: main.js
+ :language: js
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step3/Procfile
+ :caption: Procfile
+ :language: text
+ :linenos:
+
+.. literalinclude:: ../../example/tutorial/step3/requirements.txt
+ :caption: requirements.txt
+ :language: text
+ :linenos:
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/make.bat b/testing/web-platform/tests/tools/third_party/websockets/docs/make.bat
new file mode 100644
index 0000000000..922152e96a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/make.bat
@@ -0,0 +1,35 @@
+@ECHO OFF
+
+pushd %~dp0
+
+REM Command file for Sphinx documentation
+
+if "%SPHINXBUILD%" == "" (
+ set SPHINXBUILD=sphinx-build
+)
+set SOURCEDIR=.
+set BUILDDIR=_build
+
+if "%1" == "" goto help
+
+%SPHINXBUILD% >NUL 2>NUL
+if errorlevel 9009 (
+ echo.
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
+ echo.installed, then set the SPHINXBUILD environment variable to point
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
+ echo.may add the Sphinx directory to PATH.
+ echo.
+ echo.If you don't have Sphinx installed, grab it from
+ echo.http://sphinx-doc.org/
+ exit /b 1
+)
+
+%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
+goto end
+
+:help
+%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
+
+:end
+popd
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/project/changelog.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/project/changelog.rst
new file mode 100644
index 0000000000..264e6e42d1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/project/changelog.rst
@@ -0,0 +1,1230 @@
+Changelog
+=========
+
+.. currentmodule:: websockets
+
+.. _backwards-compatibility policy:
+
+Backwards-compatibility policy
+------------------------------
+
+websockets is intended for production use. Therefore, stability is a goal.
+
+websockets also aims at providing the best API for WebSocket in Python.
+
+While we value stability, we value progress more. When an improvement requires
+changing a public API, we make the change and document it in this changelog.
+
+When possible with reasonable effort, we preserve backwards-compatibility for
+five years after the release that introduced the change.
+
+When a release contains backwards-incompatible API changes, the major version
+is increased, else the minor version is increased. Patch versions are only for
+fixing regressions shortly after a release.
+
+Only documented APIs are public. Undocumented, private APIs may change without
+notice.
+
+12.0
+----
+
+*October 21, 2023*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: websockets 12.0 requires Python ≥ 3.8.
+ :class: tip
+
+ websockets 11.0 is the last version supporting Python 3.7.
+
+Improvements
+............
+
+* Made convenience imports from ``websockets`` compatible with static code
+ analysis tools such as auto-completion in an IDE or type checking with mypy_.
+
+ .. _mypy: https://github.com/python/mypy
+
+* Accepted a plain :class:`int` where an :class:`~http.HTTPStatus` is expected.
+
+* Added :class:`~frames.CloseCode`.
+
+11.0.3
+------
+
+*May 7, 2023*
+
+Bug fixes
+.........
+
+* Fixed the :mod:`threading` implementation of servers on Windows.
+
+11.0.2
+------
+
+*April 18, 2023*
+
+Bug fixes
+.........
+
+* Fixed a deadlock in the :mod:`threading` implementation when closing a
+ connection without reading all messages.
+
+11.0.1
+------
+
+*April 6, 2023*
+
+Bug fixes
+.........
+
+* Restored the C extension in the source distribution.
+
+11.0
+----
+
+*April 2, 2023*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: The Sans-I/O implementation was moved.
+ :class: caution
+
+ Aliases provide compatibility for all previously public APIs according to
+ the `backwards-compatibility policy`_.
+
+ * The ``connection`` module was renamed to ``protocol``.
+
+ * The ``connection.Connection``, ``server.ServerConnection``, and
+ ``client.ClientConnection`` classes were renamed to ``protocol.Protocol``,
+ ``server.ServerProtocol``, and ``client.ClientProtocol``.
+
+.. admonition:: Sans-I/O protocol constructors now use keyword-only arguments.
+ :class: caution
+
+ If you instantiate :class:`~server.ServerProtocol` or
+ :class:`~client.ClientProtocol` directly, make sure you are using keyword
+ arguments.
+
+.. admonition:: Closing a connection without an empty close frame is OK.
+ :class: note
+
+ Receiving an empty close frame now results in
+ :exc:`~exceptions.ConnectionClosedOK` instead of
+ :exc:`~exceptions.ConnectionClosedError`.
+
+ As a consequence, calling ``WebSocket.close()`` without arguments in a
+ browser isn't reported as an error anymore.
+
+.. admonition:: :func:`~server.serve` times out on the opening handshake after 10 seconds by default.
+ :class: note
+
+ You can adjust the timeout with the ``open_timeout`` parameter. Set it to
+ :obj:`None` to disable the timeout entirely.
+
+New features
+............
+
+.. admonition:: websockets 11.0 introduces a implementation on top of :mod:`threading`.
+ :class: important
+
+ It may be more convenient if you don't need to manage many connections and
+ you're more comfortable with :mod:`threading` than :mod:`asyncio`.
+
+ It is particularly suited to client applications that establish only one
+ connection. It may be used for servers handling few connections.
+
+ See :func:`~sync.client.connect` and :func:`~sync.server.serve` for details.
+
+* Added ``open_timeout`` to :func:`~server.serve`.
+
+* Made it possible to close a server without closing existing connections.
+
+* Added :attr:`~server.ServerProtocol.select_subprotocol` to customize
+ negotiation of subprotocols in the Sans-I/O layer.
+
+Improvements
+............
+
+* Added platform-independent wheels.
+
+* Improved error handling in :func:`~websockets.broadcast`.
+
+* Set ``server_hostname`` automatically on TLS connections when providing a
+ ``sock`` argument to :func:`~sync.client.connect`.
+
+10.4
+----
+
+*October 25, 2022*
+
+New features
+............
+
+* Validated compatibility with Python 3.11.
+
+* Added the :attr:`~legacy.protocol.WebSocketCommonProtocol.latency` property to
+ protocols.
+
+* Changed :attr:`~legacy.protocol.WebSocketCommonProtocol.ping` to return the
+ latency of the connection.
+
+* Supported overriding or removing the ``User-Agent`` header in clients and the
+ ``Server`` header in servers.
+
+* Added deployment guides for more Platform as a Service providers.
+
+Improvements
+............
+
+* Improved FAQ.
+
+10.3
+----
+
+*April 17, 2022*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: The ``exception`` attribute of :class:`~http11.Request` and :class:`~http11.Response` is deprecated.
+ :class: note
+
+ Use the ``handshake_exc`` attribute of :class:`~server.ServerProtocol` and
+ :class:`~client.ClientProtocol` instead.
+
+ See :doc:`../howto/sansio` for details.
+
+Improvements
+............
+
+* Reduced noise in logs when :mod:`ssl` or :mod:`zlib` raise exceptions.
+
+10.2
+----
+
+*February 21, 2022*
+
+Improvements
+............
+
+* Made compression negotiation more lax for compatibility with Firefox.
+
+* Improved FAQ and quick start guide.
+
+Bug fixes
+.........
+
+* Fixed backwards-incompatibility in 10.1 for connection handlers created with
+ :func:`functools.partial`.
+
+* Avoided leaking open sockets when :func:`~client.connect` is canceled.
+
+10.1
+----
+
+*November 14, 2021*
+
+New features
+............
+
+* Added a tutorial.
+
+* Made the second parameter of connection handlers optional. It will be
+ deprecated in the next major release. The request path is available in
+ the :attr:`~legacy.protocol.WebSocketCommonProtocol.path` attribute of
+ the first argument.
+
+ If you implemented the connection handler of a server as::
+
+ async def handler(request, path):
+ ...
+
+ You should replace it by::
+
+ async def handler(request):
+ path = request.path # if handler() uses the path argument
+ ...
+
+* Added ``python -m websockets --version``.
+
+Improvements
+............
+
+* Added wheels for Python 3.10, PyPy 3.7, and for more platforms.
+
+* Reverted optimization of default compression settings for clients, mainly to
+ avoid triggering bugs in poorly implemented servers like `AWS API Gateway`_.
+
+ .. _AWS API Gateway: https://github.com/python-websockets/websockets/issues/1065
+
+* Mirrored the entire :class:`~asyncio.Server` API
+ in :class:`~server.WebSocketServer`.
+
+* Improved performance for large messages on ARM processors.
+
+* Documented how to auto-reload on code changes in development.
+
+Bug fixes
+.........
+
+* Avoided half-closing TCP connections that are already closed.
+
+10.0
+----
+
+*September 9, 2021*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: websockets 10.0 requires Python ≥ 3.7.
+ :class: tip
+
+ websockets 9.1 is the last version supporting Python 3.6.
+
+.. admonition:: The ``loop`` parameter is deprecated from all APIs.
+ :class: caution
+
+ This reflects a decision made in Python 3.8. See the release notes of
+ Python 3.10 for details.
+
+ The ``loop`` parameter is also removed
+ from :class:`~server.WebSocketServer`. This should be transparent.
+
+.. admonition:: :func:`~client.connect` times out after 10 seconds by default.
+ :class: note
+
+ You can adjust the timeout with the ``open_timeout`` parameter. Set it to
+ :obj:`None` to disable the timeout entirely.
+
+.. admonition:: The ``legacy_recv`` option is deprecated.
+ :class: note
+
+ See the release notes of websockets 3.0 for details.
+
+.. admonition:: The signature of :exc:`~exceptions.ConnectionClosed` changed.
+ :class: note
+
+ If you raise :exc:`~exceptions.ConnectionClosed` or a subclass, rather
+ than catch them when websockets raises them, you must change your code.
+
+.. admonition:: A ``msg`` parameter was added to :exc:`~exceptions.InvalidURI`.
+ :class: note
+
+ If you raise :exc:`~exceptions.InvalidURI`, rather than catch it when
+ websockets raises it, you must change your code.
+
+New features
+............
+
+.. admonition:: websockets 10.0 introduces a `Sans-I/O API
+ <https://sans-io.readthedocs.io/>`_ for easier integration
+ in third-party libraries.
+ :class: important
+
+ If you're integrating websockets in a library, rather than just using it,
+ look at the :doc:`Sans-I/O integration guide <../howto/sansio>`.
+
+* Added compatibility with Python 3.10.
+
+* Added :func:`~websockets.broadcast` to send a message to many clients.
+
+* Added support for reconnecting automatically by using
+ :func:`~client.connect` as an asynchronous iterator.
+
+* Added ``open_timeout`` to :func:`~client.connect`.
+
+* Documented how to integrate with `Django <https://www.djangoproject.com/>`_.
+
+* Documented how to deploy websockets in production, with several options.
+
+* Documented how to authenticate connections.
+
+* Documented how to broadcast messages to many connections.
+
+Improvements
+............
+
+* Improved logging. See the :doc:`logging guide <../topics/logging>`.
+
+* Optimized default compression settings to reduce memory usage.
+
+* Optimized processing of client-to-server messages when the C extension isn't
+ available.
+
+* Supported relative redirects in :func:`~client.connect`.
+
+* Handled TCP connection drops during the opening handshake.
+
+* Made it easier to customize authentication with
+ :meth:`~auth.BasicAuthWebSocketServerProtocol.check_credentials`.
+
+* Provided additional information in :exc:`~exceptions.ConnectionClosed`
+ exceptions.
+
+* Clarified several exceptions or log messages.
+
+* Restructured documentation.
+
+* Improved API documentation.
+
+* Extended FAQ.
+
+Bug fixes
+.........
+
+* Avoided a crash when receiving a ping while the connection is closing.
+
+9.1
+---
+
+*May 27, 2021*
+
+Security fix
+............
+
+.. admonition:: websockets 9.1 fixes a security issue introduced in 8.0.
+ :class: important
+
+ Version 8.0 was vulnerable to timing attacks on HTTP Basic Auth passwords
+ (`CVE-2021-33880`_).
+
+ .. _CVE-2021-33880: https://nvd.nist.gov/vuln/detail/CVE-2021-33880
+
+9.0.2
+-----
+
+*May 15, 2021*
+
+Bug fixes
+.........
+
+* Restored compatibility of ``python -m websockets`` with Python < 3.9.
+
+* Restored compatibility with mypy.
+
+9.0.1
+-----
+
+*May 2, 2021*
+
+Bug fixes
+.........
+
+* Fixed issues with the packaging of the 9.0 release.
+
+9.0
+---
+
+*May 1, 2021*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: Several modules are moved or deprecated.
+ :class: caution
+
+ Aliases provide compatibility for all previously public APIs according to
+ the `backwards-compatibility policy`_
+
+ * :class:`~datastructures.Headers` and
+ :exc:`~datastructures.MultipleValuesError` are moved from
+ ``websockets.http`` to :mod:`websockets.datastructures`. If you're using
+ them, you should adjust the import path.
+
+ * The ``client``, ``server``, ``protocol``, and ``auth`` modules were
+ moved from the ``websockets`` package to a ``websockets.legacy``
+ sub-package. Despite the name, they're still fully supported.
+
+ * The ``framing``, ``handshake``, ``headers``, ``http``, and ``uri``
+ modules in the ``websockets`` package are deprecated. These modules
+ provided low-level APIs for reuse by other projects, but they didn't
+ reach that goal. Keeping these APIs public makes it more difficult to
+ improve websockets.
+
+ These changes pave the path for a refactoring that should be a transparent
+ upgrade for most uses and facilitate integration by other projects.
+
+.. admonition:: Convenience imports from ``websockets`` are performed lazily.
+ :class: note
+
+ While Python supports this, tools relying on static code analysis don't.
+ This breaks auto-completion in an IDE or type checking with mypy_.
+
+ .. _mypy: https://github.com/python/mypy
+
+ If you depend on such tools, use the real import paths, which can be found
+ in the API documentation, for example::
+
+ from websockets.client import connect
+ from websockets.server import serve
+
+New features
+............
+
+* Added compatibility with Python 3.9.
+
+Improvements
+............
+
+* Added support for IRIs in addition to URIs.
+
+* Added close codes 1012, 1013, and 1014.
+
+* Raised an error when passing a :class:`dict` to
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.send`.
+
+* Improved error reporting.
+
+Bug fixes
+.........
+
+* Fixed sending fragmented, compressed messages.
+
+* Fixed ``Host`` header sent when connecting to an IPv6 address.
+
+* Fixed creating a client or a server with an existing Unix socket.
+
+* Aligned maximum cookie size with popular web browsers.
+
+* Ensured cancellation always propagates, even on Python versions where
+ :exc:`~asyncio.CancelledError` inherits :exc:`Exception`.
+
+8.1
+---
+
+*November 1, 2019*
+
+New features
+............
+
+* Added compatibility with Python 3.8.
+
+8.0.2
+-----
+
+*July 31, 2019*
+
+Bug fixes
+.........
+
+* Restored the ability to pass a socket with the ``sock`` parameter of
+ :func:`~server.serve`.
+
+* Removed an incorrect assertion when a connection drops.
+
+8.0.1
+-----
+
+*July 21, 2019*
+
+Bug fixes
+.........
+
+* Restored the ability to import ``WebSocketProtocolError`` from
+ ``websockets``.
+
+8.0
+---
+
+*July 7, 2019*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: websockets 8.0 requires Python ≥ 3.6.
+ :class: tip
+
+ websockets 7.0 is the last version supporting Python 3.4 and 3.5.
+
+.. admonition:: ``process_request`` is now expected to be a coroutine.
+ :class: note
+
+ If you're passing a ``process_request`` argument to
+ :func:`~server.serve` or :class:`~server.WebSocketServerProtocol`, or if
+ you're overriding
+ :meth:`~server.WebSocketServerProtocol.process_request` in a subclass,
+ define it with ``async def`` instead of ``def``. Previously, both were supported.
+
+ For backwards compatibility, functions are still accepted, but mixing
+ functions and coroutines won't work in some inheritance scenarios.
+
+.. admonition:: ``max_queue`` must be :obj:`None` to disable the limit.
+ :class: note
+
+ If you were setting ``max_queue=0`` to make the queue of incoming messages
+ unbounded, change it to ``max_queue=None``.
+
+.. admonition:: The ``host``, ``port``, and ``secure`` attributes
+ of :class:`~legacy.protocol.WebSocketCommonProtocol` are deprecated.
+ :class: note
+
+ Use :attr:`~legacy.protocol.WebSocketCommonProtocol.local_address` in
+ servers and
+ :attr:`~legacy.protocol.WebSocketCommonProtocol.remote_address` in clients
+ instead of ``host`` and ``port``.
+
+.. admonition:: ``WebSocketProtocolError`` is renamed
+ to :exc:`~exceptions.ProtocolError`.
+ :class: note
+
+ An alias provides backwards compatibility.
+
+.. admonition:: ``read_response()`` now returns the reason phrase.
+ :class: note
+
+ If you're using this low-level API, you must change your code.
+
+New features
+............
+
+* Added :func:`~auth.basic_auth_protocol_factory` to enforce HTTP
+ Basic Auth on the server side.
+
+* :func:`~client.connect` handles redirects from the server during the
+ handshake.
+
+* :func:`~client.connect` supports overriding ``host`` and ``port``.
+
+* Added :func:`~client.unix_connect` for connecting to Unix sockets.
+
+* Added support for asynchronous generators
+ in :meth:`~legacy.protocol.WebSocketCommonProtocol.send`
+ to generate fragmented messages incrementally.
+
+* Enabled readline in the interactive client.
+
+* Added type hints (:pep:`484`).
+
+* Added a FAQ to the documentation.
+
+* Added documentation for extensions.
+
+* Documented how to optimize memory usage.
+
+Improvements
+............
+
+* :meth:`~legacy.protocol.WebSocketCommonProtocol.send`,
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.ping`, and
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.pong` support bytes-like
+ types :class:`bytearray` and :class:`memoryview` in addition to
+ :class:`bytes`.
+
+* Added :exc:`~exceptions.ConnectionClosedOK` and
+ :exc:`~exceptions.ConnectionClosedError` subclasses of
+ :exc:`~exceptions.ConnectionClosed` to tell apart normal connection
+ termination from errors.
+
+* Changed :meth:`WebSocketServer.close()
+ <server.WebSocketServer.close>` to perform a proper closing handshake
+ instead of failing the connection.
+
+* Improved error messages when HTTP parsing fails.
+
+* Improved API documentation.
+
+Bug fixes
+.........
+
+* Prevented spurious log messages about :exc:`~exceptions.ConnectionClosed`
+ exceptions in keepalive ping task. If you were using ``ping_timeout=None``
+ as a workaround, you can remove it.
+
+* Avoided a crash when a ``extra_headers`` callable returns :obj:`None`.
+
+7.0
+---
+
+*November 1, 2018*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: Keepalive is enabled by default.
+ :class: important
+
+ websockets now sends Ping frames at regular intervals and closes the
+ connection if it doesn't receive a matching Pong frame.
+ See :class:`~legacy.protocol.WebSocketCommonProtocol` for details.
+
+.. admonition:: Termination of connections by :meth:`WebSocketServer.close()
+ <server.WebSocketServer.close>` changes.
+ :class: caution
+
+ Previously, connections handlers were canceled. Now, connections are
+ closed with close code 1001 (going away).
+
+ From the perspective of the connection handler, this is the same as if the
+ remote endpoint was disconnecting. This removes the need to prepare for
+ :exc:`~asyncio.CancelledError` in connection handlers.
+
+ You can restore the previous behavior by adding the following line at the
+ beginning of connection handlers::
+
+ def handler(websocket, path):
+ closed = asyncio.ensure_future(websocket.wait_closed())
+ closed.add_done_callback(lambda task: task.cancel())
+
+.. admonition:: Calling :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`
+ concurrently raises a :exc:`RuntimeError`.
+ :class: note
+
+ Concurrent calls lead to non-deterministic behavior because there are no
+ guarantees about which coroutine will receive which message.
+
+.. admonition:: The ``timeout`` argument of :func:`~server.serve`
+ and :func:`~client.connect` is renamed to ``close_timeout`` .
+ :class: note
+
+ This prevents confusion with ``ping_timeout``.
+
+ For backwards compatibility, ``timeout`` is still supported.
+
+.. admonition:: The ``origins`` argument of :func:`~server.serve` changes.
+ :class: note
+
+ Include :obj:`None` in the list rather than ``''`` to allow requests that
+ don't contain an Origin header.
+
+.. admonition:: Pending pings aren't canceled when the connection is closed.
+ :class: note
+
+ A ping — as in ``ping = await websocket.ping()`` — for which no pong was
+ received yet used to be canceled when the connection is closed, so that
+ ``await ping`` raised :exc:`~asyncio.CancelledError`.
+
+ Now ``await ping`` raises :exc:`~exceptions.ConnectionClosed` like other
+ public APIs.
+
+New features
+............
+
+* Added ``process_request`` and ``select_subprotocol`` arguments to
+ :func:`~server.serve` and
+ :class:`~server.WebSocketServerProtocol` to facilitate customization of
+ :meth:`~server.WebSocketServerProtocol.process_request` and
+ :meth:`~server.WebSocketServerProtocol.select_subprotocol`.
+
+* Added support for sending fragmented messages.
+
+* Added the :meth:`~legacy.protocol.WebSocketCommonProtocol.wait_closed`
+ method to protocols.
+
+* Added an interactive client: ``python -m websockets <uri>``.
+
+Improvements
+............
+
+* Improved handling of multiple HTTP headers with the same name.
+
+* Improved error messages when a required HTTP header is missing.
+
+Bug fixes
+.........
+
+* Fixed a data loss bug in
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`:
+ canceling it at the wrong time could result in messages being dropped.
+
+6.0
+---
+
+*July 16, 2018*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: The :class:`~datastructures.Headers` class is introduced and
+ several APIs are updated to use it.
+ :class: caution
+
+ * The ``request_headers`` argument
+ of :meth:`~server.WebSocketServerProtocol.process_request` is now
+ a :class:`~datastructures.Headers` instead of
+ an ``http.client.HTTPMessage``.
+
+ * The ``request_headers`` and ``response_headers`` attributes of
+ :class:`~legacy.protocol.WebSocketCommonProtocol` are now
+ :class:`~datastructures.Headers` instead of ``http.client.HTTPMessage``.
+
+ * The ``raw_request_headers`` and ``raw_response_headers`` attributes of
+ :class:`~legacy.protocol.WebSocketCommonProtocol` are removed. Use
+ :meth:`~datastructures.Headers.raw_items` instead.
+
+ * Functions defined in the ``handshake`` module now receive
+ :class:`~datastructures.Headers` in argument instead of ``get_header``
+ or ``set_header`` functions. This affects libraries that rely on
+ low-level APIs.
+
+ * Functions defined in the ``http`` module now return HTTP headers as
+ :class:`~datastructures.Headers` instead of lists of ``(name, value)``
+ pairs.
+
+ Since :class:`~datastructures.Headers` and ``http.client.HTTPMessage``
+ provide similar APIs, much of the code dealing with HTTP headers won't
+ require changes.
+
+New features
+............
+
+* Added compatibility with Python 3.7.
+
+5.0.1
+-----
+
+*May 24, 2018*
+
+Bug fixes
+.........
+
+* Fixed a regression in 5.0 that broke some invocations of
+ :func:`~server.serve` and :func:`~client.connect`.
+
+5.0
+---
+
+*May 22, 2018*
+
+Security fix
+............
+
+.. admonition:: websockets 5.0 fixes a security issue introduced in 4.0.
+ :class: important
+
+ Version 4.0 was vulnerable to denial of service by memory exhaustion
+ because it didn't enforce ``max_size`` when decompressing compressed
+ messages (`CVE-2018-1000518`_).
+
+ .. _CVE-2018-1000518: https://nvd.nist.gov/vuln/detail/CVE-2018-1000518
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: A ``user_info`` field is added to the return value of
+ ``parse_uri`` and ``WebSocketURI``.
+ :class: note
+
+ If you're unpacking ``WebSocketURI`` into four variables, adjust your code
+ to account for that fifth field.
+
+New features
+............
+
+* :func:`~client.connect` performs HTTP Basic Auth when the URI contains
+ credentials.
+
+* :func:`~server.unix_serve` can be used as an asynchronous context
+ manager on Python ≥ 3.5.1.
+
+* Added the :attr:`~legacy.protocol.WebSocketCommonProtocol.closed` property
+ to protocols.
+
+* Added new examples in the documentation.
+
+Improvements
+............
+
+* Iterating on incoming messages no longer raises an exception when the
+ connection terminates with close code 1001 (going away).
+
+* A plain HTTP request now receives a 426 Upgrade Required response and
+ doesn't log a stack trace.
+
+* If a :meth:`~legacy.protocol.WebSocketCommonProtocol.ping` doesn't receive a
+ pong, it's canceled when the connection is closed.
+
+* Reported the cause of :exc:`~exceptions.ConnectionClosed` exceptions.
+
+* Stopped logging stack traces when the TCP connection dies prematurely.
+
+* Prevented writing to a closing TCP connection during unclean shutdowns.
+
+* Made connection termination more robust to network congestion.
+
+* Prevented processing of incoming frames after failing the connection.
+
+* Updated documentation with new features from Python 3.6.
+
+* Improved several sections of the documentation.
+
+Bug fixes
+.........
+
+* Prevented :exc:`TypeError` due to missing close code on connection close.
+
+* Fixed a race condition in the closing handshake that raised
+ :exc:`~exceptions.InvalidState`.
+
+4.0.1
+-----
+
+*November 2, 2017*
+
+Bug fixes
+.........
+
+* Fixed issues with the packaging of the 4.0 release.
+
+4.0
+---
+
+*November 2, 2017*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: websockets 4.0 requires Python ≥ 3.4.
+ :class: tip
+
+ websockets 3.4 is the last version supporting Python 3.3.
+
+.. admonition:: Compression is enabled by default.
+ :class: important
+
+ In August 2017, Firefox and Chrome support the permessage-deflate
+ extension, but not Safari and IE.
+
+ Compression should improve performance but it increases RAM and CPU use.
+
+ If you want to disable compression, add ``compression=None`` when calling
+ :func:`~server.serve` or :func:`~client.connect`.
+
+.. admonition:: The ``state_name`` attribute of protocols is deprecated.
+ :class: note
+
+ Use ``protocol.state.name`` instead of ``protocol.state_name``.
+
+New features
+............
+
+* :class:`~legacy.protocol.WebSocketCommonProtocol` instances can be used as
+ asynchronous iterators on Python ≥ 3.6. They yield incoming messages.
+
+* Added :func:`~server.unix_serve` for listening on Unix sockets.
+
+* Added the :attr:`~server.WebSocketServer.sockets` attribute to the
+ return value of :func:`~server.serve`.
+
+* Allowed ``extra_headers`` to override ``Server`` and ``User-Agent`` headers.
+
+Improvements
+............
+
+* Reorganized and extended documentation.
+
+* Rewrote connection termination to increase robustness in edge cases.
+
+* Reduced verbosity of "Failing the WebSocket connection" logs.
+
+Bug fixes
+.........
+
+* Aborted connections if they don't close within the configured ``timeout``.
+
+* Stopped leaking pending tasks when :meth:`~asyncio.Task.cancel` is called on
+ a connection while it's being closed.
+
+3.4
+---
+
+*August 20, 2017*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: ``InvalidStatus`` is replaced
+ by :class:`~exceptions.InvalidStatusCode`.
+ :class: note
+
+ This exception is raised when :func:`~client.connect` receives an invalid
+ response status code from the server.
+
+New features
+............
+
+* :func:`~server.serve` can be used as an asynchronous context manager
+ on Python ≥ 3.5.1.
+
+* Added support for customizing handling of incoming connections with
+ :meth:`~server.WebSocketServerProtocol.process_request`.
+
+* Made read and write buffer sizes configurable.
+
+Improvements
+............
+
+* Renamed :func:`~server.serve` and :func:`~client.connect`'s
+ ``klass`` argument to ``create_protocol`` to reflect that it can also be a
+ callable. For backwards compatibility, ``klass`` is still supported.
+
+* Rewrote HTTP handling for simplicity and performance.
+
+* Added an optional C extension to speed up low-level operations.
+
+Bug fixes
+.........
+
+* Providing a ``sock`` argument to :func:`~client.connect` no longer
+ crashes.
+
+3.3
+---
+
+*March 29, 2017*
+
+New features
+............
+
+* Ensured compatibility with Python 3.6.
+
+Improvements
+............
+
+* Reduced noise in logs caused by connection resets.
+
+Bug fixes
+.........
+
+* Avoided crashing on concurrent writes on slow connections.
+
+3.2
+---
+
+*August 17, 2016*
+
+New features
+............
+
+* Added ``timeout``, ``max_size``, and ``max_queue`` arguments to
+ :func:`~client.connect` and :func:`~server.serve`.
+
+Improvements
+............
+
+* Made server shutdown more robust.
+
+3.1
+---
+
+*April 21, 2016*
+
+New features
+............
+
+* Added flow control for incoming data.
+
+Bug fixes
+.........
+
+* Avoided a warning when closing a connection before the opening handshake.
+
+3.0
+---
+
+*December 25, 2015*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` now
+ raises an exception when the connection is closed.
+ :class: caution
+
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` used to return
+ :obj:`None` when the connection was closed. This required checking the
+ return value of every call::
+
+ message = await websocket.recv()
+ if message is None:
+ return
+
+ Now it raises a :exc:`~exceptions.ConnectionClosed` exception instead.
+ This is more Pythonic. The previous code can be simplified to::
+
+ message = await websocket.recv()
+
+ When implementing a server, there's no strong reason to handle such
+ exceptions. Let them bubble up, terminate the handler coroutine, and the
+ server will simply ignore them.
+
+ In order to avoid stranding projects built upon an earlier version, the
+ previous behavior can be restored by passing ``legacy_recv=True`` to
+ :func:`~server.serve`, :func:`~client.connect`,
+ :class:`~server.WebSocketServerProtocol`, or
+ :class:`~client.WebSocketClientProtocol`.
+
+New features
+............
+
+* :func:`~client.connect` can be used as an asynchronous context
+ manager on Python ≥ 3.5.1.
+
+* :meth:`~legacy.protocol.WebSocketCommonProtocol.ping` and
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.pong` support data passed as
+ :class:`str` in addition to :class:`bytes`.
+
+* Made ``state_name`` attribute on protocols a public API.
+
+Improvements
+............
+
+* Updated documentation with ``await`` and ``async`` syntax from Python 3.5.
+
+* Worked around an :mod:`asyncio` bug affecting connection termination under
+ load.
+
+* Improved documentation.
+
+2.7
+---
+
+*November 18, 2015*
+
+New features
+............
+
+* Added compatibility with Python 3.5.
+
+Improvements
+............
+
+* Refreshed documentation.
+
+2.6
+---
+
+*August 18, 2015*
+
+New features
+............
+
+* Added ``local_address`` and ``remote_address`` attributes on protocols.
+
+* Closed open connections with code 1001 when a server shuts down.
+
+Bug fixes
+.........
+
+* Avoided TCP fragmentation of small frames.
+
+2.5
+---
+
+*July 28, 2015*
+
+New features
+............
+
+* Provided access to handshake request and response HTTP headers.
+
+* Allowed customizing handshake request and response HTTP headers.
+
+* Added support for running on a non-default event loop.
+
+Improvements
+............
+
+* Improved documentation.
+
+* Sent a 403 status code instead of 400 when request Origin isn't allowed.
+
+* Clarified that the closing handshake can be initiated by the client.
+
+* Set the close code and reason more consistently.
+
+* Strengthened connection termination.
+
+Bug fixes
+.........
+
+* Canceling :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` no longer
+ drops the next message.
+
+2.4
+---
+
+*January 31, 2015*
+
+New features
+............
+
+* Added support for subprotocols.
+
+* Added ``loop`` argument to :func:`~client.connect` and
+ :func:`~server.serve`.
+
+2.3
+---
+
+*November 3, 2014*
+
+Improvements
+............
+
+* Improved compliance of close codes.
+
+2.2
+---
+
+*July 28, 2014*
+
+New features
+............
+
+* Added support for limiting message size.
+
+2.1
+---
+
+*April 26, 2014*
+
+New features
+............
+
+* Added ``host``, ``port`` and ``secure`` attributes on protocols.
+
+* Added support for providing and checking Origin_.
+
+.. _Origin: https://www.rfc-editor.org/rfc/rfc6455.html#section-10.2
+
+2.0
+---
+
+*February 16, 2014*
+
+Backwards-incompatible changes
+..............................
+
+.. admonition:: :meth:`~legacy.protocol.WebSocketCommonProtocol.send`,
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.ping`, and
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.pong` are now coroutines.
+ :class: caution
+
+ They used to be functions.
+
+ Instead of::
+
+ websocket.send(message)
+
+ you must write::
+
+ await websocket.send(message)
+
+New features
+............
+
+* Added flow control for outgoing data.
+
+1.0
+---
+
+*November 14, 2013*
+
+New features
+............
+
+* Initial public release.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/project/contributing.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/project/contributing.rst
new file mode 100644
index 0000000000..020ed7ad85
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/project/contributing.rst
@@ -0,0 +1,66 @@
+Contributing
+============
+
+Thanks for taking the time to contribute to websockets!
+
+Code of Conduct
+---------------
+
+This project and everyone participating in it is governed by the `Code of
+Conduct`_. By participating, you are expected to uphold this code. Please
+report inappropriate behavior to aymeric DOT augustin AT fractalideas DOT com.
+
+.. _Code of Conduct: https://github.com/python-websockets/websockets/blob/main/CODE_OF_CONDUCT.md
+
+*(If I'm the person with the inappropriate behavior, please accept my
+apologies. I know I can mess up. I can't expect you to tell me, but if you
+choose to do so, I'll do my best to handle criticism constructively.
+-- Aymeric)*
+
+Contributions
+-------------
+
+Bug reports, patches and suggestions are welcome!
+
+Please open an issue_ or send a `pull request`_.
+
+Feedback about the documentation is especially valuable, as the primary author
+feels more confident about writing code than writing docs :-)
+
+If you're wondering why things are done in a certain way, the :doc:`design
+document <../topics/design>` provides lots of details about the internals of
+websockets.
+
+.. _issue: https://github.com/python-websockets/websockets/issues/new
+.. _pull request: https://github.com/python-websockets/websockets/compare/
+
+Questions
+---------
+
+GitHub issues aren't a good medium for handling questions. There are better
+places to ask questions, for example Stack Overflow.
+
+If you want to ask a question anyway, please make sure that:
+
+- it's a question about websockets and not about :mod:`asyncio`;
+- it isn't answered in the documentation;
+- it wasn't asked already.
+
+A good question can be written as a suggestion to improve the documentation.
+
+Cryptocurrency users
+--------------------
+
+websockets appears to be quite popular for interfacing with Bitcoin or other
+cryptocurrency trackers. I'm strongly opposed to Bitcoin's carbon footprint.
+
+I'm aware of efforts to build proof-of-stake models. I'll care once the total
+energy consumption of all cryptocurrencies drops to a non-bullshit level.
+
+You already negated all of humanity's efforts to develop renewable energy.
+Please stop heating the planet where my children will have to live.
+
+Since websockets is released under an open-source license, you can use it for
+any purpose you like. However, I won't spend any of my time to help you.
+
+I will summarily close issues related to Bitcoin or cryptocurrency in any way.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/project/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/project/index.rst
new file mode 100644
index 0000000000..459146345b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/project/index.rst
@@ -0,0 +1,12 @@
+About websockets
+================
+
+This is about websockets-the-project rather than websockets-the-software.
+
+.. toctree::
+ :titlesonly:
+
+ changelog
+ contributing
+ license
+ For enterprise <tidelift>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/project/license.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/project/license.rst
new file mode 100644
index 0000000000..0a3b8703d5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/project/license.rst
@@ -0,0 +1,4 @@
+License
+=======
+
+.. include:: ../../LICENSE
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/project/tidelift.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/project/tidelift.rst
new file mode 100644
index 0000000000..42100fade9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/project/tidelift.rst
@@ -0,0 +1,112 @@
+websockets for enterprise
+=========================
+
+Available as part of the Tidelift Subscription
+----------------------------------------------
+
+.. image:: ../_static/tidelift.png
+ :height: 150px
+ :width: 150px
+ :align: left
+
+Tidelift is working with the maintainers of websockets and thousands of other
+open source projects to deliver commercial support and maintenance for the
+open source dependencies you use to build your applications. Save time, reduce
+risk, and improve code health, while paying the maintainers of the exact
+dependencies you use.
+
+.. raw:: html
+
+ <style type="text/css">
+ .tidelift-links {
+ display: flex;
+ justify-content: center;
+ }
+ @media only screen and (max-width: 600px) {
+ .tidelift-links {
+ flex-direction: column;
+ }
+ }
+ .tidelift-links a {
+ border: thin solid #f6914d;
+ border-radius: 0.25em;
+ font-family: Verdana, sans-serif;
+ font-size: 15px;
+ margin: 0.5em 2em;
+ padding: 0.5em 2em;
+ text-align: center;
+ text-decoration: none;
+ text-transform: uppercase;
+ }
+ .tidelift-links a.tidelift-links__learn-more {
+ background-color: white;
+ color: #f6914d;
+ }
+ .tidelift-links a.tidelift-links__request-a-demo {
+ background-color: #f6914d;
+ color: white;
+ }
+ </style>
+
+ <div class="tidelift-links">
+ <a class="tidelift-links__learn-more" href="https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=enterprise">Learn more</a>
+ <a class="tidelift-links__request-a-demo" href="https://tidelift.com/subscription/request-a-demo?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=enterprise">Request a demo</a>
+ </div>
+
+Enterprise-ready open source software—managed for you
+-----------------------------------------------------
+
+The Tidelift Subscription is a managed open source subscription for
+application dependencies covering millions of open source projects across
+JavaScript, Python, Java, PHP, Ruby, .NET, and more.
+
+Your subscription includes:
+
+* **Security updates**
+
+ * Tidelift’s security response team coordinates patches for new breaking
+ security vulnerabilities and alerts immediately through a private channel,
+ so your software supply chain is always secure.
+
+* **Licensing verification and indemnification**
+
+ * Tidelift verifies license information to enable easy policy enforcement
+ and adds intellectual property indemnification to cover creators and users
+ in case something goes wrong. You always have a 100% up-to-date bill of
+ materials for your dependencies to share with your legal team, customers,
+ or partners.
+
+* **Maintenance and code improvement**
+
+ * Tidelift ensures the software you rely on keeps working as long as you
+ need it to work. Your managed dependencies are actively maintained and we
+ recruit additional maintainers where required.
+
+* **Package selection and version guidance**
+
+ * We help you choose the best open source packages from the start—and then
+ guide you through updates to stay on the best releases as new issues
+ arise.
+
+* **Roadmap input**
+
+ * Take a seat at the table with the creators behind the software you use.
+ Tidelift’s participating maintainers earn more income as their software is
+ used by more subscribers, so they’re interested in knowing what you need.
+
+* **Tooling and cloud integration**
+
+ * Tidelift works with GitHub, GitLab, BitBucket, and more. We support every
+ cloud platform (and other deployment targets, too).
+
+The end result? All of the capabilities you expect from commercial-grade
+software, for the full breadth of open source you use. That means less time
+grappling with esoteric open source trivia, and more time building your own
+applications—and your business.
+
+.. raw:: html
+
+ <div class="tidelift-links">
+ <a class="tidelift-links__learn-more" href="https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=enterprise">Learn more</a>
+ <a class="tidelift-links__request-a-demo" href="https://tidelift.com/subscription/request-a-demo?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=enterprise">Request a demo</a>
+ </div>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/client.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/client.rst
new file mode 100644
index 0000000000..5086015b7b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/client.rst
@@ -0,0 +1,64 @@
+Client (:mod:`asyncio`)
+=======================
+
+.. automodule:: websockets.client
+
+Opening a connection
+--------------------
+
+.. autofunction:: connect(uri, *, create_protocol=None, logger=None, compression="deflate", origin=None, extensions=None, subprotocols=None, extra_headers=None, user_agent_header="Python/x.y.z websockets/X.Y", open_timeout=10, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, **kwds)
+ :async:
+
+.. autofunction:: unix_connect(path, uri="ws://localhost/", *, create_protocol=None, logger=None, compression="deflate", origin=None, extensions=None, subprotocols=None, extra_headers=None, user_agent_header="Python/x.y.z websockets/X.Y", open_timeout=10, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, **kwds)
+ :async:
+
+Using a connection
+------------------
+
+.. autoclass:: WebSocketClientProtocol(*, logger=None, origin=None, extensions=None, subprotocols=None, extra_headers=None, user_agent_header="Python/x.y.z websockets/X.Y", ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16)
+
+ .. automethod:: recv
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: wait_closed
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ .. autoproperty:: open
+
+ .. autoproperty:: closed
+
+ .. autoattribute:: latency
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: path
+
+ .. autoattribute:: request_headers
+
+ .. autoattribute:: response_headers
+
+ .. autoattribute:: subprotocol
+
+ The following attributes are available after the closing handshake,
+ once the WebSocket connection is closed:
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/common.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/common.rst
new file mode 100644
index 0000000000..dc7a54ee1a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/common.rst
@@ -0,0 +1,54 @@
+:orphan:
+
+Both sides (:mod:`asyncio`)
+===========================
+
+.. automodule:: websockets.legacy.protocol
+
+.. autoclass:: WebSocketCommonProtocol(*, logger=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16)
+
+ .. automethod:: recv
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: wait_closed
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ .. autoproperty:: open
+
+ .. autoproperty:: closed
+
+ .. autoattribute:: latency
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: path
+
+ .. autoattribute:: request_headers
+
+ .. autoattribute:: response_headers
+
+ .. autoattribute:: subprotocol
+
+ The following attributes are available after the closing handshake,
+ once the WebSocket connection is closed:
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/server.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/server.rst
new file mode 100644
index 0000000000..1063179162
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/asyncio/server.rst
@@ -0,0 +1,113 @@
+Server (:mod:`asyncio`)
+=======================
+
+.. automodule:: websockets.server
+
+Starting a server
+-----------------
+
+.. autofunction:: serve(ws_handler, host=None, port=None, *, create_protocol=None, logger=None, compression="deflate", origins=None, extensions=None, subprotocols=None, extra_headers=None, server_header="Python/x.y.z websockets/X.Y", process_request=None, select_subprotocol=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, **kwds)
+ :async:
+
+.. autofunction:: unix_serve(ws_handler, path=None, *, create_protocol=None, logger=None, compression="deflate", origins=None, extensions=None, subprotocols=None, extra_headers=None, server_header="Python/x.y.z websockets/X.Y", process_request=None, select_subprotocol=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, **kwds)
+ :async:
+
+Stopping a server
+-----------------
+
+.. autoclass:: WebSocketServer
+
+ .. automethod:: close
+
+ .. automethod:: wait_closed
+
+ .. automethod:: get_loop
+
+ .. automethod:: is_serving
+
+ .. automethod:: start_serving
+
+ .. automethod:: serve_forever
+
+ .. autoattribute:: sockets
+
+Using a connection
+------------------
+
+.. autoclass:: WebSocketServerProtocol(ws_handler, ws_server, *, logger=None, origins=None, extensions=None, subprotocols=None, extra_headers=None, server_header="Python/x.y.z websockets/X.Y", process_request=None, select_subprotocol=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16)
+
+ .. automethod:: recv
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: wait_closed
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ You can customize the opening handshake in a subclass by overriding these methods:
+
+ .. automethod:: process_request
+
+ .. automethod:: select_subprotocol
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ .. autoproperty:: open
+
+ .. autoproperty:: closed
+
+ .. autoattribute:: latency
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: path
+
+ .. autoattribute:: request_headers
+
+ .. autoattribute:: response_headers
+
+ .. autoattribute:: subprotocol
+
+ The following attributes are available after the closing handshake,
+ once the WebSocket connection is closed:
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
+
+
+Basic authentication
+--------------------
+
+.. automodule:: websockets.auth
+
+websockets supports HTTP Basic Authentication according to
+:rfc:`7235` and :rfc:`7617`.
+
+.. autofunction:: basic_auth_protocol_factory
+
+.. autoclass:: BasicAuthWebSocketServerProtocol
+
+ .. autoattribute:: realm
+
+ .. autoattribute:: username
+
+ .. automethod:: check_credentials
+
+Broadcast
+---------
+
+.. autofunction:: websockets.broadcast
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/datastructures.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/datastructures.rst
new file mode 100644
index 0000000000..ec02d42101
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/datastructures.rst
@@ -0,0 +1,66 @@
+Data structures
+===============
+
+WebSocket events
+----------------
+
+.. automodule:: websockets.frames
+
+ .. autoclass:: Frame
+
+ .. autoclass:: Opcode
+
+ .. autoattribute:: CONT
+ .. autoattribute:: TEXT
+ .. autoattribute:: BINARY
+ .. autoattribute:: CLOSE
+ .. autoattribute:: PING
+ .. autoattribute:: PONG
+
+ .. autoclass:: Close
+
+ .. autoclass:: CloseCode
+
+ .. autoattribute:: NORMAL_CLOSURE
+ .. autoattribute:: GOING_AWAY
+ .. autoattribute:: PROTOCOL_ERROR
+ .. autoattribute:: UNSUPPORTED_DATA
+ .. autoattribute:: NO_STATUS_RCVD
+ .. autoattribute:: ABNORMAL_CLOSURE
+ .. autoattribute:: INVALID_DATA
+ .. autoattribute:: POLICY_VIOLATION
+ .. autoattribute:: MESSAGE_TOO_BIG
+ .. autoattribute:: MANDATORY_EXTENSION
+ .. autoattribute:: INTERNAL_ERROR
+ .. autoattribute:: SERVICE_RESTART
+ .. autoattribute:: TRY_AGAIN_LATER
+ .. autoattribute:: BAD_GATEWAY
+ .. autoattribute:: TLS_HANDSHAKE
+
+HTTP events
+-----------
+
+.. automodule:: websockets.http11
+
+ .. autoclass:: Request
+
+ .. autoclass:: Response
+
+.. automodule:: websockets.datastructures
+
+ .. autoclass:: Headers
+
+ .. automethod:: get_all
+
+ .. automethod:: raw_items
+
+ .. autoexception:: MultipleValuesError
+
+URIs
+----
+
+.. automodule:: websockets.uri
+
+ .. autofunction:: parse_uri
+
+ .. autoclass:: WebSocketURI
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/exceptions.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/exceptions.rst
new file mode 100644
index 0000000000..907a650d20
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/exceptions.rst
@@ -0,0 +1,6 @@
+Exceptions
+==========
+
+.. automodule:: websockets.exceptions
+ :members:
+
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/extensions.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/extensions.rst
new file mode 100644
index 0000000000..a70f1b1e58
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/extensions.rst
@@ -0,0 +1,60 @@
+Extensions
+==========
+
+.. currentmodule:: websockets.extensions
+
+The WebSocket protocol supports extensions_.
+
+At the time of writing, there's only one `registered extension`_ with a public
+specification, WebSocket Per-Message Deflate.
+
+.. _extensions: https://www.rfc-editor.org/rfc/rfc6455.html#section-9
+.. _registered extension: https://www.iana.org/assignments/websocket/websocket.xhtml#extension-name
+
+Per-Message Deflate
+-------------------
+
+.. automodule:: websockets.extensions.permessage_deflate
+
+ :mod:`websockets.extensions.permessage_deflate` implements WebSocket
+ Per-Message Deflate.
+
+ This extension is specified in :rfc:`7692`.
+
+ Refer to the :doc:`topic guide on compression <../topics/compression>` to
+ learn more about tuning compression settings.
+
+ .. autoclass:: ClientPerMessageDeflateFactory
+
+ .. autoclass:: ServerPerMessageDeflateFactory
+
+Base classes
+------------
+
+.. automodule:: websockets.extensions
+
+ :mod:`websockets.extensions` defines base classes for implementing
+ extensions.
+
+ Refer to the :doc:`how-to guide on extensions <../howto/extensions>` to
+ learn more about writing an extension.
+
+ .. autoclass:: Extension
+
+ .. autoattribute:: name
+
+ .. automethod:: decode
+
+ .. automethod:: encode
+
+ .. autoclass:: ClientExtensionFactory
+
+ .. autoattribute:: name
+
+ .. automethod:: get_request_params
+
+ .. automethod:: process_response_params
+
+ .. autoclass:: ServerExtensionFactory
+
+ .. automethod:: process_request_params
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/features.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/features.rst
new file mode 100644
index 0000000000..98b3c0ddaf
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/features.rst
@@ -0,0 +1,187 @@
+Features
+========
+
+.. currentmodule:: websockets
+
+Feature support matrices summarize which implementations support which features.
+
+.. raw:: html
+
+ <style>
+ .support-matrix-table { width: 100%; }
+ .support-matrix-table th:first-child { text-align: left; }
+ .support-matrix-table th:not(:first-child) { text-align: center; width: 15%; }
+ .support-matrix-table td:not(:first-child) { text-align: center; }
+ </style>
+
+.. |aio| replace:: :mod:`asyncio`
+.. |sync| replace:: :mod:`threading`
+.. |sans| replace:: `Sans-I/O`_
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+Both sides
+----------
+
+.. table::
+ :class: support-matrix-table
+
+ +------------------------------------+--------+--------+--------+
+ | | |aio| | |sync| | |sans| |
+ +====================================+========+========+========+
+ | Perform the opening handshake | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Send a message | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Receive a message | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Iterate over received messages | ✅ | ✅ | ❌ |
+ +------------------------------------+--------+--------+--------+
+ | Send a fragmented message | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Receive a fragmented message after | ✅ | ✅ | ❌ |
+ | reassembly | | | |
+ +------------------------------------+--------+--------+--------+
+ | Receive a fragmented message frame | ❌ | ✅ | ✅ |
+ | by frame (`#479`_) | | | |
+ +------------------------------------+--------+--------+--------+
+ | Send a ping | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Respond to pings automatically | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Send a pong | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Perform the closing handshake | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Report close codes and reasons | ❌ | ✅ | ✅ |
+ | from both sides | | | |
+ +------------------------------------+--------+--------+--------+
+ | Compress messages (:rfc:`7692`) | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Tune memory usage for compression | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Negotiate extensions | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Implement custom extensions | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Negotiate a subprotocol | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Enforce security limits | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Log events | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Enforce opening timeout | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Enforce closing timeout | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Keepalive | ✅ | ❌ | — |
+ +------------------------------------+--------+--------+--------+
+ | Heartbeat | ✅ | ❌ | — |
+ +------------------------------------+--------+--------+--------+
+
+.. _#479: https://github.com/python-websockets/websockets/issues/479
+
+Server
+------
+
+.. table::
+ :class: support-matrix-table
+
+ +------------------------------------+--------+--------+--------+
+ | | |aio| | |sync| | |sans| |
+ +====================================+========+========+========+
+ | Listen on a TCP socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Listen on a Unix socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Listen using a preexisting socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Encrypt connection with TLS | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Close server on context exit | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Close connection on handler exit | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Shut down server gracefully | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Check ``Origin`` header | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Customize subprotocol selection | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Configure ``Server`` header | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Alter opening handshake request | ❌ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Alter opening handshake response | ❌ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Perform HTTP Basic Authentication | ✅ | ❌ | ❌ |
+ +------------------------------------+--------+--------+--------+
+ | Perform HTTP Digest Authentication | ❌ | ❌ | ❌ |
+ +------------------------------------+--------+--------+--------+
+ | Force HTTP response | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+
+Client
+------
+
+.. table::
+ :class: support-matrix-table
+
+ +------------------------------------+--------+--------+--------+
+ | | |aio| | |sync| | |sans| |
+ +====================================+========+========+========+
+ | Connect to a TCP socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Connect to a Unix socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Connect using a preexisting socket | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Encrypt connection with TLS | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Close connection on context exit | ✅ | ✅ | — |
+ +------------------------------------+--------+--------+--------+
+ | Reconnect automatically | ✅ | ❌ | — |
+ +------------------------------------+--------+--------+--------+
+ | Configure ``Origin`` header | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Configure ``User-Agent`` header | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Alter opening handshake request | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Connect to non-ASCII IRIs | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Perform HTTP Basic Authentication | ✅ | ✅ | ✅ |
+ +------------------------------------+--------+--------+--------+
+ | Perform HTTP Digest Authentication | ❌ | ❌ | ❌ |
+ | (`#784`_) | | | |
+ +------------------------------------+--------+--------+--------+
+ | Follow HTTP redirects | ✅ | ❌ | — |
+ +------------------------------------+--------+--------+--------+
+ | Connect via a HTTP proxy (`#364`_) | ❌ | ❌ | — |
+ +------------------------------------+--------+--------+--------+
+ | Connect via a SOCKS5 proxy | ❌ | ❌ | — |
+ | (`#475`_) | | | |
+ +------------------------------------+--------+--------+--------+
+
+.. _#364: https://github.com/python-websockets/websockets/issues/364
+.. _#475: https://github.com/python-websockets/websockets/issues/475
+.. _#784: https://github.com/python-websockets/websockets/issues/784
+
+Known limitations
+-----------------
+
+There is no way to control compression of outgoing frames on a per-frame basis
+(`#538`_). If compression is enabled, all frames are compressed.
+
+.. _#538: https://github.com/python-websockets/websockets/issues/538
+
+The server doesn't check the Host header and respond with a HTTP 400 Bad Request
+if it is missing or invalid (`#1246`).
+
+.. _#1246: https://github.com/python-websockets/websockets/issues/1246
+
+The client API doesn't attempt to guarantee that there is no more than one
+connection to a given IP address in a CONNECTING state. This behavior is
+`mandated by RFC 6455`_. However, :func:`~client.connect()` isn't the right
+layer for enforcing this constraint. It's the caller's responsibility.
+
+.. _mandated by RFC 6455: https://www.rfc-editor.org/rfc/rfc6455.html#section-4.1
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/index.rst
new file mode 100644
index 0000000000..0b80f087a1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/index.rst
@@ -0,0 +1,90 @@
+API reference
+=============
+
+.. currentmodule:: websockets
+
+Features
+--------
+
+Check which implementations support which features and known limitations.
+
+.. toctree::
+ :titlesonly:
+
+ features
+
+
+:mod:`asyncio`
+--------------
+
+This is the default implementation. It's ideal for servers that handle many
+clients concurrently.
+
+.. toctree::
+ :titlesonly:
+
+ asyncio/server
+ asyncio/client
+
+:mod:`threading`
+----------------
+
+This alternative implementation can be a good choice for clients.
+
+.. toctree::
+ :titlesonly:
+
+ sync/server
+ sync/client
+
+`Sans-I/O`_
+-----------
+
+This layer is designed for integrating in third-party libraries, typically
+application servers.
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+.. toctree::
+ :titlesonly:
+
+ sansio/server
+ sansio/client
+
+Extensions
+----------
+
+The Per-Message Deflate extension is built in. You may also define custom
+extensions.
+
+.. toctree::
+ :titlesonly:
+
+ extensions
+
+Shared
+------
+
+These low-level APIs are shared by all implementations.
+
+.. toctree::
+ :titlesonly:
+
+ datastructures
+ exceptions
+ types
+
+API stability
+-------------
+
+Public APIs documented in this API reference are subject to the
+:ref:`backwards-compatibility policy <backwards-compatibility policy>`.
+
+Anything that isn't listed in the API reference is a private API. There's no
+guarantees of behavior or backwards-compatibility for private APIs.
+
+Convenience imports
+-------------------
+
+For convenience, many public APIs can be imported directly from the
+``websockets`` package.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/client.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/client.rst
new file mode 100644
index 0000000000..09bafc7455
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/client.rst
@@ -0,0 +1,58 @@
+Client (`Sans-I/O`_)
+====================
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+.. currentmodule:: websockets.client
+
+.. autoclass:: ClientProtocol(wsuri, origin=None, extensions=None, subprotocols=None, state=State.CONNECTING, max_size=2 ** 20, logger=None)
+
+ .. automethod:: receive_data
+
+ .. automethod:: receive_eof
+
+ .. automethod:: connect
+
+ .. automethod:: send_request
+
+ .. automethod:: send_continuation
+
+ .. automethod:: send_text
+
+ .. automethod:: send_binary
+
+ .. automethod:: send_close
+
+ .. automethod:: send_ping
+
+ .. automethod:: send_pong
+
+ .. automethod:: fail
+
+ .. automethod:: events_received
+
+ .. automethod:: data_to_send
+
+ .. automethod:: close_expected
+
+ WebSocket protocol objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: state
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: handshake_exc
+
+ The following attributes are available after the closing handshake,
+ once the WebSocket connection is closed:
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
+
+ .. autoproperty:: close_exc
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/common.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/common.rst
new file mode 100644
index 0000000000..cd1ef3c63a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/common.rst
@@ -0,0 +1,64 @@
+:orphan:
+
+Both sides (`Sans-I/O`_)
+=========================
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+.. automodule:: websockets.protocol
+
+.. autoclass:: Protocol(side, state=State.OPEN, max_size=2 ** 20, logger=None)
+
+ .. automethod:: receive_data
+
+ .. automethod:: receive_eof
+
+ .. automethod:: send_continuation
+
+ .. automethod:: send_text
+
+ .. automethod:: send_binary
+
+ .. automethod:: send_close
+
+ .. automethod:: send_ping
+
+ .. automethod:: send_pong
+
+ .. automethod:: fail
+
+ .. automethod:: events_received
+
+ .. automethod:: data_to_send
+
+ .. automethod:: close_expected
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: state
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
+
+ .. autoproperty:: close_exc
+
+.. autoclass:: Side
+
+ .. autoattribute:: SERVER
+
+ .. autoattribute:: CLIENT
+
+.. autoclass:: State
+
+ .. autoattribute:: CONNECTING
+
+ .. autoattribute:: OPEN
+
+ .. autoattribute:: CLOSING
+
+ .. autoattribute:: CLOSED
+
+.. autodata:: SEND_EOF
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/server.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/server.rst
new file mode 100644
index 0000000000..d70df6277a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sansio/server.rst
@@ -0,0 +1,62 @@
+Server (`Sans-I/O`_)
+====================
+
+.. _Sans-I/O: https://sans-io.readthedocs.io/
+
+.. currentmodule:: websockets.server
+
+.. autoclass:: ServerProtocol(origins=None, extensions=None, subprotocols=None, state=State.CONNECTING, max_size=2 ** 20, logger=None)
+
+ .. automethod:: receive_data
+
+ .. automethod:: receive_eof
+
+ .. automethod:: accept
+
+ .. automethod:: select_subprotocol
+
+ .. automethod:: reject
+
+ .. automethod:: send_response
+
+ .. automethod:: send_continuation
+
+ .. automethod:: send_text
+
+ .. automethod:: send_binary
+
+ .. automethod:: send_close
+
+ .. automethod:: send_ping
+
+ .. automethod:: send_pong
+
+ .. automethod:: fail
+
+ .. automethod:: events_received
+
+ .. automethod:: data_to_send
+
+ .. automethod:: close_expected
+
+ WebSocket protocol objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: state
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: handshake_exc
+
+ The following attributes are available after the closing handshake,
+ once the WebSocket connection is closed:
+
+ .. autoproperty:: close_code
+
+ .. autoproperty:: close_reason
+
+ .. autoproperty:: close_exc
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/client.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/client.rst
new file mode 100644
index 0000000000..6cccd6ec48
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/client.rst
@@ -0,0 +1,49 @@
+Client (:mod:`threading`)
+=========================
+
+.. automodule:: websockets.sync.client
+
+Opening a connection
+--------------------
+
+.. autofunction:: connect(uri, *, sock=None, ssl_context=None, server_hostname=None, origin=None, extensions=None, subprotocols=None, additional_headers=None, user_agent_header="Python/x.y.z websockets/X.Y", compression="deflate", open_timeout=10, close_timeout=10, max_size=2 ** 20, logger=None, create_connection=None)
+
+.. autofunction:: unix_connect(path, uri=None, *, sock=None, ssl_context=None, server_hostname=None, origin=None, extensions=None, subprotocols=None, additional_headers=None, user_agent_header="Python/x.y.z websockets/X.Y", compression="deflate", open_timeout=10, close_timeout=10, max_size=2 ** 20, logger=None, create_connection=None)
+
+Using a connection
+------------------
+
+.. autoclass:: ClientConnection
+
+ .. automethod:: __iter__
+
+ .. automethod:: recv
+
+ .. automethod:: recv_streaming
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: request
+
+ .. autoattribute:: response
+
+ .. autoproperty:: subprotocol
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/common.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/common.rst
new file mode 100644
index 0000000000..3dc6d4a509
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/common.rst
@@ -0,0 +1,41 @@
+:orphan:
+
+Both sides (:mod:`threading`)
+=============================
+
+.. automodule:: websockets.sync.connection
+
+.. autoclass:: Connection
+
+ .. automethod:: __iter__
+
+ .. automethod:: recv
+
+ .. automethod:: recv_streaming
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: request
+
+ .. autoattribute:: response
+
+ .. autoproperty:: subprotocol
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/server.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/server.rst
new file mode 100644
index 0000000000..35c112046a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/sync/server.rst
@@ -0,0 +1,60 @@
+Server (:mod:`threading`)
+=========================
+
+.. automodule:: websockets.sync.server
+
+Creating a server
+-----------------
+
+.. autofunction:: serve(handler, host=None, port=None, *, sock=None, ssl_context=None, origins=None, extensions=None, subprotocols=None, select_subprotocol=None, process_request=None, process_response=None, server_header="Python/x.y.z websockets/X.Y", compression="deflate", open_timeout=10, close_timeout=10, max_size=2 ** 20, logger=None, create_connection=None)
+
+.. autofunction:: unix_serve(handler, path=None, *, sock=None, ssl_context=None, origins=None, extensions=None, subprotocols=None, select_subprotocol=None, process_request=None, process_response=None, server_header="Python/x.y.z websockets/X.Y", compression="deflate", open_timeout=10, close_timeout=10, max_size=2 ** 20, logger=None, create_connection=None)
+
+Running a server
+----------------
+
+.. autoclass:: WebSocketServer
+
+ .. automethod:: serve_forever
+
+ .. automethod:: shutdown
+
+ .. automethod:: fileno
+
+Using a connection
+------------------
+
+.. autoclass:: ServerConnection
+
+ .. automethod:: __iter__
+
+ .. automethod:: recv
+
+ .. automethod:: recv_streaming
+
+ .. automethod:: send
+
+ .. automethod:: close
+
+ .. automethod:: ping
+
+ .. automethod:: pong
+
+ WebSocket connection objects also provide these attributes:
+
+ .. autoattribute:: id
+
+ .. autoattribute:: logger
+
+ .. autoproperty:: local_address
+
+ .. autoproperty:: remote_address
+
+ The following attributes are available after the opening handshake,
+ once the WebSocket connection is open:
+
+ .. autoattribute:: request
+
+ .. autoattribute:: response
+
+ .. autoproperty:: subprotocol
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/reference/types.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/types.rst
new file mode 100644
index 0000000000..9d3aa8310b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/reference/types.rst
@@ -0,0 +1,24 @@
+Types
+=====
+
+.. automodule:: websockets.typing
+
+ .. autodata:: Data
+
+ .. autodata:: LoggerLike
+
+ .. autodata:: StatusLike
+
+ .. autodata:: Origin
+
+ .. autodata:: Subprotocol
+
+ .. autodata:: ExtensionName
+
+ .. autodata:: ExtensionParameter
+
+.. autodata:: websockets.protocol.Event
+
+.. autodata:: websockets.datastructures.HeadersLike
+
+.. autodata:: websockets.datastructures.SupportsKeysAndGetItem
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/requirements.txt b/testing/web-platform/tests/tools/third_party/websockets/docs/requirements.txt
new file mode 100644
index 0000000000..bcd1d71143
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/requirements.txt
@@ -0,0 +1,8 @@
+furo
+sphinx
+sphinx-autobuild
+sphinx-copybutton
+sphinx-inline-tabs
+sphinxcontrib-spelling
+sphinxcontrib-trio
+sphinxext-opengraph
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/spelling_wordlist.txt b/testing/web-platform/tests/tools/third_party/websockets/docs/spelling_wordlist.txt
new file mode 100644
index 0000000000..dfa7065e79
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/spelling_wordlist.txt
@@ -0,0 +1,85 @@
+augustin
+auth
+autoscaler
+aymeric
+backend
+backoff
+backpressure
+balancer
+balancers
+bottlenecked
+bufferbloat
+bugfix
+buildpack
+bytestring
+bytestrings
+changelog
+coroutine
+coroutines
+cryptocurrencies
+cryptocurrency
+css
+ctrl
+deserialize
+django
+dev
+Dockerfile
+dyno
+formatter
+fractalideas
+gunicorn
+healthz
+html
+hypercorn
+iframe
+IPv
+istio
+iterable
+js
+keepalive
+KiB
+kubernetes
+lifecycle
+linkerd
+liveness
+lookups
+MiB
+mutex
+mypy
+nginx
+Paketo
+permessage
+pid
+procfile
+proxying
+py
+pythonic
+reconnection
+redis
+redistributions
+retransmit
+runtime
+scalable
+stateful
+subclasses
+subclassing
+submodule
+subpackages
+subprotocol
+subprotocols
+supervisord
+tidelift
+tls
+tox
+txt
+unregister
+uple
+uvicorn
+uvloop
+virtualenv
+WebSocket
+websocket
+websockets
+ws
+wsgi
+www
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.rst
new file mode 100644
index 0000000000..31bc8e6da8
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.rst
@@ -0,0 +1,348 @@
+Authentication
+==============
+
+The WebSocket protocol was designed for creating web applications that need
+bidirectional communication between clients running in browsers and servers.
+
+In most practical use cases, WebSocket servers need to authenticate clients in
+order to route communications appropriately and securely.
+
+:rfc:`6455` stays elusive when it comes to authentication:
+
+ This protocol doesn't prescribe any particular way that servers can
+ authenticate clients during the WebSocket handshake. The WebSocket
+ server can use any client authentication mechanism available to a
+ generic HTTP server, such as cookies, HTTP authentication, or TLS
+ authentication.
+
+None of these three mechanisms works well in practice. Using cookies is
+cumbersome, HTTP authentication isn't supported by all mainstream browsers,
+and TLS authentication in a browser is an esoteric user experience.
+
+Fortunately, there are better alternatives! Let's discuss them.
+
+System design
+-------------
+
+Consider a setup where the WebSocket server is separate from the HTTP server.
+
+Most servers built with websockets to complement a web application adopt this
+design because websockets doesn't aim at supporting HTTP.
+
+The following diagram illustrates the authentication flow.
+
+.. image:: authentication.svg
+
+Assuming the current user is authenticated with the HTTP server (1), the
+application needs to obtain credentials from the HTTP server (2) in order to
+send them to the WebSocket server (3), who can check them against the database
+of user accounts (4).
+
+Usernames and passwords aren't a good choice of credentials here, if only
+because passwords aren't available in clear text in the database.
+
+Tokens linked to user accounts are a better choice. These tokens must be
+impossible to forge by an attacker. For additional security, they can be
+short-lived or even single-use.
+
+Sending credentials
+-------------------
+
+Assume the web application obtained authentication credentials, likely a
+token, from the HTTP server. There's four options for passing them to the
+WebSocket server.
+
+1. **Sending credentials as the first message in the WebSocket connection.**
+
+ This is fully reliable and the most secure mechanism in this discussion. It
+ has two minor downsides:
+
+ * Authentication is performed at the application layer. Ideally, it would
+ be managed at the protocol layer.
+
+ * Authentication is performed after the WebSocket handshake, making it
+ impossible to monitor authentication failures with HTTP response codes.
+
+2. **Adding credentials to the WebSocket URI in a query parameter.**
+
+ This is also fully reliable but less secure. Indeed, it has a major
+ downside:
+
+ * URIs end up in logs, which leaks credentials. Even if that risk could be
+ lowered with single-use tokens, it is usually considered unacceptable.
+
+ Authentication is still performed at the application layer but it can
+ happen before the WebSocket handshake, which improves separation of
+ concerns and enables responding to authentication failures with HTTP 401.
+
+3. **Setting a cookie on the domain of the WebSocket URI.**
+
+ Cookies are undoubtedly the most common and hardened mechanism for sending
+ credentials from a web application to a server. In an HTTP application,
+ credentials would be a session identifier or a serialized, signed session.
+
+ Unfortunately, when the WebSocket server runs on a different domain from
+ the web application, this idea bumps into the `Same-Origin Policy`_. For
+ security reasons, setting a cookie on a different origin is impossible.
+
+ The proper workaround consists in:
+
+ * creating a hidden iframe_ served from the domain of the WebSocket server
+ * sending the token to the iframe with postMessage_
+ * setting the cookie in the iframe
+
+ before opening the WebSocket connection.
+
+ Sharing a parent domain (e.g. example.com) between the HTTP server (e.g.
+ www.example.com) and the WebSocket server (e.g. ws.example.com) and setting
+ the cookie on that parent domain would work too.
+
+ However, the cookie would be shared with all subdomains of the parent
+ domain. For a cookie containing credentials, this is unacceptable.
+
+.. _Same-Origin Policy: https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy
+.. _iframe: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
+.. _postMessage: https://developer.mozilla.org/en-US/docs/Web/API/MessagePort/postMessage
+
+4. **Adding credentials to the WebSocket URI in user information.**
+
+ Letting the browser perform HTTP Basic Auth is a nice idea in theory.
+
+ In practice it doesn't work due to poor support in browsers.
+
+ As of May 2021:
+
+ * Chrome 90 behaves as expected.
+
+ * Firefox 88 caches credentials too aggressively.
+
+ When connecting again to the same server with new credentials, it reuses
+ the old credentials, which may be expired, resulting in an HTTP 401. Then
+ the next connection succeeds. Perhaps errors clear the cache.
+
+ When tokens are short-lived or single-use, this bug produces an
+ interesting effect: every other WebSocket connection fails.
+
+ * Safari 14 ignores credentials entirely.
+
+Two other options are off the table:
+
+1. **Setting a custom HTTP header**
+
+ This would be the most elegant mechanism, solving all issues with the options
+ discussed above.
+
+ Unfortunately, it doesn't work because the `WebSocket API`_ doesn't support
+ `setting custom headers`_.
+
+.. _WebSocket API: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
+.. _setting custom headers: https://github.com/whatwg/html/issues/3062
+
+2. **Authenticating with a TLS certificate**
+
+ While this is suggested by the RFC, installing a TLS certificate is too far
+ from the mainstream experience of browser users. This could make sense in
+ high security contexts. I hope developers working on such projects don't
+ take security advice from the documentation of random open source projects.
+
+Let's experiment!
+-----------------
+
+The `experiments/authentication`_ directory demonstrates these techniques.
+
+Run the experiment in an environment where websockets is installed:
+
+.. _experiments/authentication: https://github.com/python-websockets/websockets/tree/main/experiments/authentication
+
+.. code-block:: console
+
+ $ python experiments/authentication/app.py
+ Running on http://localhost:8000/
+
+When you browse to the HTTP server at http://localhost:8000/ and you submit a
+username, the server creates a token and returns a testing web page.
+
+This page opens WebSocket connections to four WebSocket servers running on
+four different origins. It attempts to authenticate with the token in four
+different ways.
+
+First message
+.............
+
+As soon as the connection is open, the client sends a message containing the
+token:
+
+.. code-block:: javascript
+
+ const websocket = new WebSocket("ws://.../");
+ websocket.onopen = () => websocket.send(token);
+
+ // ...
+
+At the beginning of the connection handler, the server receives this message
+and authenticates the user. If authentication fails, the server closes the
+connection:
+
+.. code-block:: python
+
+ async def first_message_handler(websocket):
+ token = await websocket.recv()
+ user = get_user(token)
+ if user is None:
+ await websocket.close(CloseCode.INTERNAL_ERROR, "authentication failed")
+ return
+
+ ...
+
+Query parameter
+...............
+
+The client adds the token to the WebSocket URI in a query parameter before
+opening the connection:
+
+.. code-block:: javascript
+
+ const uri = `ws://.../?token=${token}`;
+ const websocket = new WebSocket(uri);
+
+ // ...
+
+The server intercepts the HTTP request, extracts the token and authenticates
+the user. If authentication fails, it returns an HTTP 401:
+
+.. code-block:: python
+
+ class QueryParamProtocol(websockets.WebSocketServerProtocol):
+ async def process_request(self, path, headers):
+ token = get_query_parameter(path, "token")
+ if token is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Missing token\n"
+
+ user = get_user(token)
+ if user is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Invalid token\n"
+
+ self.user = user
+
+ async def query_param_handler(websocket):
+ user = websocket.user
+
+ ...
+
+Cookie
+......
+
+The client sets a cookie containing the token before opening the connection.
+
+The cookie must be set by an iframe loaded from the same origin as the
+WebSocket server. This requires passing the token to this iframe.
+
+.. code-block:: javascript
+
+ // in main window
+ iframe.contentWindow.postMessage(token, "http://...");
+
+ // in iframe
+ document.cookie = `token=${data}; SameSite=Strict`;
+
+ // in main window
+ const websocket = new WebSocket("ws://.../");
+
+ // ...
+
+This sequence must be synchronized between the main window and the iframe.
+This involves several events. Look at the full implementation for details.
+
+The server intercepts the HTTP request, extracts the token and authenticates
+the user. If authentication fails, it returns an HTTP 401:
+
+.. code-block:: python
+
+ class CookieProtocol(websockets.WebSocketServerProtocol):
+ async def process_request(self, path, headers):
+ # Serve iframe on non-WebSocket requests
+ ...
+
+ token = get_cookie(headers.get("Cookie", ""), "token")
+ if token is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Missing token\n"
+
+ user = get_user(token)
+ if user is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Invalid token\n"
+
+ self.user = user
+
+ async def cookie_handler(websocket):
+ user = websocket.user
+
+ ...
+
+User information
+................
+
+The client adds the token to the WebSocket URI in user information before
+opening the connection:
+
+.. code-block:: javascript
+
+ const uri = `ws://token:${token}@.../`;
+ const websocket = new WebSocket(uri);
+
+ // ...
+
+Since HTTP Basic Auth is designed to accept a username and a password rather
+than a token, we send ``token`` as username and the token as password.
+
+The server intercepts the HTTP request, extracts the token and authenticates
+the user. If authentication fails, it returns an HTTP 401:
+
+.. code-block:: python
+
+ class UserInfoProtocol(websockets.BasicAuthWebSocketServerProtocol):
+ async def check_credentials(self, username, password):
+ if username != "token":
+ return False
+
+ user = get_user(password)
+ if user is None:
+ return False
+
+ self.user = user
+ return True
+
+ async def user_info_handler(websocket):
+ user = websocket.user
+
+ ...
+
+Machine-to-machine authentication
+---------------------------------
+
+When the WebSocket client is a standalone program rather than a script running
+in a browser, there are far fewer constraints. HTTP Authentication is the best
+solution in this scenario.
+
+To authenticate a websockets client with HTTP Basic Authentication
+(:rfc:`7617`), include the credentials in the URI:
+
+.. code-block:: python
+
+ async with websockets.connect(
+ f"wss://{username}:{password}@example.com",
+ ) as websocket:
+ ...
+
+(You must :func:`~urllib.parse.quote` ``username`` and ``password`` if they
+contain unsafe characters.)
+
+To authenticate a websockets client with HTTP Bearer Authentication
+(:rfc:`6750`), add a suitable ``Authorization`` header:
+
+.. code-block:: python
+
+ async with websockets.connect(
+ "wss://example.com",
+ extra_headers={"Authorization": f"Bearer {token}"}
+ ) as websocket:
+ ...
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.svg b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.svg
new file mode 100644
index 0000000000..79b5fb8d56
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/authentication.svg
@@ -0,0 +1,63 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="-514 74 644 380" width="644px" height="380px"><defs><style>@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix");
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/094b15e3-94bd-435b-a595-d40edfde661a.woff2") format("woff2"),url("https://whimsical.com/fonts/7e5fbe11-4858-4bd1-9ec6-a1d9f9d227aa.woff") format("woff"),url("https://whimsical.com/fonts/0f11eff9-9f05-46f5-9703-027c510065d7.ttf") format("truetype"),url("https://whimsical.com/fonts/48b61978-3f30-4274-823c-5cdcd1876918.svg#48b61978-3f30-4274-823c-5cdcd1876918") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix");
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/46251881-ffe9-4bfb-99c7-d6ce3bebaf3e.woff2") format("woff2"),url("https://whimsical.com/fonts/790ebbf2-62c5-4a32-946f-99d405f9243e.woff") format("woff"),url("https://whimsical.com/fonts/d28199e6-0f4a-42df-97f4-606701c6f75a.ttf") format("truetype"),url("https://whimsical.com/fonts/37a462c0-d86e-492c-b9ab-35e6bd417f6c.svg#37a462c0-d86e-492c-b9ab-35e6bd417f6c") format("svg");
+}
+@font-face{
+ font-weight: 500;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix");
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/7b29ae40-30ff-4f99-a2b9-cde88669fa2f.woff2") format("woff2"),url("https://whimsical.com/fonts/bf73077c-e354-4562-a085-f4703eb1d653.woff") format("woff"),url("https://whimsical.com/fonts/0ffa6947-5317-4d07-b525-14d08a028821.ttf") format("truetype"),url("https://whimsical.com/fonts/9e423e45-5450-4991-a157-dbe6cf61eb4e.svg#9e423e45-5450-4991-a157-dbe6cf61eb4e") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 500;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix");
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/c7717981-647d-4b76-8817-33062e42d11f.woff2") format("woff2"),url("https://whimsical.com/fonts/b852cd4c-1255-40b1-a2be-73a9105b0155.woff") format("woff"),url("https://whimsical.com/fonts/821b00ad-e741-4e2d-af1a-85594367c8a2.ttf") format("truetype"),url("https://whimsical.com/fonts/d3e3b689-a6b0-45f2-b279-f5e194f87409.svg#d3e3b689-a6b0-45f2-b279-f5e194f87409") format("svg");
+}
+@font-face{
+ font-weight: 700;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix");
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/31704504-4671-47a6-a61e-397f07410d91.woff2") format("woff2"),url("https://whimsical.com/fonts/b8a280da-481f-44a0-8d9c-1bc64bd7227c.woff") format("woff"),url("https://whimsical.com/fonts/276d122a-0fab-447b-9fc0-5d7fb0eafce2.ttf") format("truetype"),url("https://whimsical.com/fonts/8fb8273a-8213-4928-808b-b5bfaf3fd7e9.svg#8fb8273a-8213-4928-808b-b5bfaf3fd7e9") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 700;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix");
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/4132c4c8-680c-4d6d-9251-a2da38503bbd.woff2") format("woff2"),url("https://whimsical.com/fonts/366401fe-6df4-47be-8f55-8a411cff0dd2.woff") format("woff"),url("https://whimsical.com/fonts/dbe4f7ba-fc16-44a6-a577-571620e9edaf.ttf") format("truetype"),url("https://whimsical.com/fonts/f874edca-ee87-4ccf-8b1d-921fbc3c1c36.svg#f874edca-ee87-4ccf-8b1d-921fbc3c1c36") format("svg");
+}
+
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Regular.woff') format('woff');
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Italic.woff') format('woff');
+ font-style: italic;
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Bold.woff') format('woff');
+ font-weight: 700;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-BoldItalic.woff') format('woff');
+ font-style: italic;
+ font-weight: 700;
+}
+* {-webkit-font-smoothing: auto; -moz-osx-font-smoothing: auto;}@media print { svg { width: 100%; height: 100%; } }</style><filter id="fill-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.16"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="fill-light-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.04"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="image-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="frame-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="badge-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.08"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><g><g><rect x="-504" y="228" width="192" height="72" rx="3" ry="3" fill="#cfeeeb"/><rect y="228" rx="3" stroke="#1AAE9F" fill="none" stroke-linejoin="round" width="192" stroke-linecap="round" stroke-width="2" x="-504" ry="3" height="72"/><text y="240" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="168" xml:space="preserve" x="-492" font-family="DIN Next, sans-serif" height="48"><tspan x="-408" y="258" text-anchor="middle" style="white-space:pre;">HTTP</tspan><tspan x="-408" y="282" text-anchor="middle" style="white-space:pre;">server</tspan></text></g></g><g><g><rect x="-72" y="228" width="192" height="72" rx="3" ry="3" fill="#d3e6f7"/><rect y="228" rx="3" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="192" stroke-linecap="round" stroke-width="2" x="-72" ry="3" height="72"/><text y="240" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="168" xml:space="preserve" x="-60" font-family="DIN Next, sans-serif" height="48"><tspan x="24" y="258" text-anchor="middle" style="white-space:pre;">WebSocket</tspan><tspan x="24" y="282" text-anchor="middle" style="white-space:pre;">server</tspan></text></g></g><g><g><rect x="-288" y="84" width="192" height="72" rx="3" ry="3" fill="#d9dde0"/><rect y="84" rx="3" stroke="#4B5C6B" fill="none" stroke-linejoin="round" width="192" stroke-linecap="round" stroke-width="2" x="-288" ry="3" height="72"/><text y="96" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="168" xml:space="preserve" x="-276" font-family="DIN Next, sans-serif" height="48"><tspan x="-192" y="114" text-anchor="middle" style="white-space:pre;">web app</tspan><tspan x="-192" y="138" text-anchor="middle" style="white-space:pre;">in browser</tspan></text></g></g><g><g><path d="M-96,372c0,6.62741 -42.98074,12 -96,12c-53.01926,0 -96,-5.37259 -96,-12c0,-6.62741 42.98074,-12 96,-12c53.01926,0 96,5.37259 96,12c0,6.62741 0,53.37259 0,60c0,6.62741 -42.98074,12 -96,12c-53.01926,0 -96,-5.37259 -96,-12c0,-6.62741 0,-60 0,-60" fill="#e2cdf2"/><path d="M-96,372c0,6.62741 -42.98074,12 -96,12c-53.01926,0 -96,-5.37259 -96,-12c0,-6.62741 42.98074,-12 96,-12c53.01926,0 96,5.37259 96,12c0,6.62741 0,53.37259 0,60c0,6.62741 -42.98074,12 -96,12c-53.01926,0 -96,-5.37259 -96,-12c0,-6.62741 0,-60 0,-60" fill="none" stroke="#730FC3" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text y="396" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="168" xml:space="preserve" x="-276" font-family="DIN Next, sans-serif" height="24"><tspan x="-192" y="414" text-anchor="middle" style="white-space:pre;">user accounts</tspan></text></g></g><g><g><path d="M-400.46606,302.69069l37.26606,13.30931M-284.8,344l33.4991,11.96396" fill="none" stroke="#1AAE9F" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-252.34924,349.70583 -247.53394,357.30931 -256.07648,360.14213" fill="#1AAE9F" stroke="#1AAE9F" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="318" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="160" xml:space="preserve" x="-404" font-family="DIN Next, sans-serif" height="24"><tspan x="-324" y="336" text-anchor="middle" style="white-space:pre;">(1) authenticate user</tspan></text></g></g><g><g><path d="M-247.35316,159.15135l-43.98017,18.84865M-356.66667,206l-40.30359,17.27297" fill="none" stroke="#1AAE9F" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-391.94549,227.14787 -400.64684,224.84865 -396.31086,216.96199" fill="#1AAE9F" stroke="#1AAE9F" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="180" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="164" xml:space="preserve" x="-406" font-family="DIN Next, sans-serif" height="24"><tspan x="-324" y="198" text-anchor="middle" style="white-space:pre;">(2) obtain credentials</tspan></text></g></g><g><g><path d="M-136.64684,159.15135l43.98017,18.84865M-27.33333,206l40.30359,17.27297" fill="none" stroke="#2C88D9" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="12.31086,216.96199 16.64684,224.84865 7.94549,227.14787" fill="#2C88D9" stroke="#2C88D9" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="180" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="153" xml:space="preserve" x="-136.5" font-family="DIN Next, sans-serif" height="24"><tspan x="-60" y="198" text-anchor="middle" style="white-space:pre;">(3) send credentials</tspan></text></g></g><g><g><path d="M16.46606,302.69069l-37.26606,13.30931M-99.2,344l-33.4991,11.96396" fill="none" stroke="#2C88D9" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-127.92352,360.14213 -136.46606,357.30931 -131.65076,349.70583" fill="#2C88D9" stroke="#2C88D9" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="318" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="160" xml:space="preserve" x="-140" font-family="DIN Next, sans-serif" height="24"><tspan x="-60" y="336" text-anchor="middle" style="white-space:pre;">(4) authenticate user</tspan></text></g></g></svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/broadcast.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/broadcast.rst
new file mode 100644
index 0000000000..1acb372d4f
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/broadcast.rst
@@ -0,0 +1,348 @@
+Broadcasting messages
+=====================
+
+.. currentmodule:: websockets
+
+
+.. admonition:: If you just want to send a message to all connected clients,
+ use :func:`broadcast`.
+ :class: tip
+
+ If you want to learn about its design in depth, continue reading this
+ document.
+
+WebSocket servers often send the same message to all connected clients or to a
+subset of clients for which the message is relevant.
+
+Let's explore options for broadcasting a message, explain the design
+of :func:`broadcast`, and discuss alternatives.
+
+For each option, we'll provide a connection handler called ``handler()`` and a
+function or coroutine called ``broadcast()`` that sends a message to all
+connected clients.
+
+Integrating them is left as an exercise for the reader. You could start with::
+
+ import asyncio
+ import websockets
+
+ async def handler(websocket):
+ ...
+
+ async def broadcast(message):
+ ...
+
+ async def broadcast_messages():
+ while True:
+ await asyncio.sleep(1)
+ message = ... # your application logic goes here
+ await broadcast(message)
+
+ async def main():
+ async with websockets.serve(handler, "localhost", 8765):
+ await broadcast_messages() # runs forever
+
+ if __name__ == "__main__":
+ asyncio.run(main())
+
+``broadcast_messages()`` must yield control to the event loop between each
+message, or else it will never let the server run. That's why it includes
+``await asyncio.sleep(1)``.
+
+A complete example is available in the `experiments/broadcast`_ directory.
+
+.. _experiments/broadcast: https://github.com/python-websockets/websockets/tree/main/experiments/broadcast
+
+The naive way
+-------------
+
+The most obvious way to send a message to all connected clients consists in
+keeping track of them and sending the message to each of them.
+
+Here's a connection handler that registers clients in a global variable::
+
+ CLIENTS = set()
+
+ async def handler(websocket):
+ CLIENTS.add(websocket)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CLIENTS.remove(websocket)
+
+This implementation assumes that the client will never send any messages. If
+you'd rather not make this assumption, you can change::
+
+ await websocket.wait_closed()
+
+to::
+
+ async for _ in websocket:
+ pass
+
+Here's a coroutine that broadcasts a message to all clients::
+
+ async def broadcast(message):
+ for websocket in CLIENTS.copy():
+ try:
+ await websocket.send(message)
+ except websockets.ConnectionClosed:
+ pass
+
+There are two tricks in this version of ``broadcast()``.
+
+First, it makes a copy of ``CLIENTS`` before iterating it. Else, if a client
+connects or disconnects while ``broadcast()`` is running, the loop would fail
+with::
+
+ RuntimeError: Set changed size during iteration
+
+Second, it ignores :exc:`~exceptions.ConnectionClosed` exceptions because a
+client could disconnect between the moment ``broadcast()`` makes a copy of
+``CLIENTS`` and the moment it sends a message to this client. This is fine: a
+client that disconnected doesn't belongs to "all connected clients" anymore.
+
+The naive way can be very fast. Indeed, if all connections have enough free
+space in their write buffers, ``await websocket.send(message)`` writes the
+message and returns immediately, as it doesn't need to wait for the buffer to
+drain. In this case, ``broadcast()`` doesn't yield control to the event loop,
+which minimizes overhead.
+
+The naive way can also fail badly. If the write buffer of a connection reaches
+``write_limit``, ``broadcast()`` waits for the buffer to drain before sending
+the message to other clients. This can cause a massive drop in performance.
+
+As a consequence, this pattern works only when write buffers never fill up,
+which is usually outside of the control of the server.
+
+If you know for sure that you will never write more than ``write_limit`` bytes
+within ``ping_interval + ping_timeout``, then websockets will terminate slow
+connections before the write buffer has time to fill up.
+
+Don't set extreme ``write_limit``, ``ping_interval``, and ``ping_timeout``
+values to ensure that this condition holds. Set reasonable values and use the
+built-in :func:`broadcast` function instead.
+
+The concurrent way
+------------------
+
+The naive way didn't work well because it serialized writes, while the whole
+point of asynchronous I/O is to perform I/O concurrently.
+
+Let's modify ``broadcast()`` to send messages concurrently::
+
+ async def send(websocket, message):
+ try:
+ await websocket.send(message)
+ except websockets.ConnectionClosed:
+ pass
+
+ def broadcast(message):
+ for websocket in CLIENTS:
+ asyncio.create_task(send(websocket, message))
+
+We move the error handling logic in a new coroutine and we schedule
+a :class:`~asyncio.Task` to run it instead of executing it immediately.
+
+Since ``broadcast()`` no longer awaits coroutines, we can make it a function
+rather than a coroutine and do away with the copy of ``CLIENTS``.
+
+This version of ``broadcast()`` makes clients independent from one another: a
+slow client won't block others. As a side effect, it makes messages
+independent from one another.
+
+If you broadcast several messages, there is no strong guarantee that they will
+be sent in the expected order. Fortunately, the event loop runs tasks in the
+order in which they are created, so the order is correct in practice.
+
+Technically, this is an implementation detail of the event loop. However, it
+seems unlikely for an event loop to run tasks in an order other than FIFO.
+
+If you wanted to enforce the order without relying this implementation detail,
+you could be tempted to wait until all clients have received the message::
+
+ async def broadcast(message):
+ if CLIENTS: # asyncio.wait doesn't accept an empty list
+ await asyncio.wait([
+ asyncio.create_task(send(websocket, message))
+ for websocket in CLIENTS
+ ])
+
+However, this doesn't really work in practice. Quite often, it will block
+until the slowest client times out.
+
+Backpressure meets broadcast
+----------------------------
+
+At this point, it becomes apparent that backpressure, usually a good practice,
+doesn't work well when broadcasting a message to thousands of clients.
+
+When you're sending messages to a single client, you don't want to send them
+faster than the network can transfer them and the client accept them. This is
+why :meth:`~server.WebSocketServerProtocol.send` checks if the write buffer
+is full and, if it is, waits until it drain, giving the network and the
+client time to catch up. This provides backpressure.
+
+Without backpressure, you could pile up data in the write buffer until the
+server process runs out of memory and the operating system kills it.
+
+The :meth:`~server.WebSocketServerProtocol.send` API is designed to enforce
+backpressure by default. This helps users of websockets write robust programs
+even if they never heard about backpressure.
+
+For comparison, :class:`asyncio.StreamWriter` requires users to understand
+backpressure and to await :meth:`~asyncio.StreamWriter.drain` explicitly
+after each :meth:`~asyncio.StreamWriter.write`.
+
+When broadcasting messages, backpressure consists in slowing down all clients
+in an attempt to let the slowest client catch up. With thousands of clients,
+the slowest one is probably timing out and isn't going to receive the message
+anyway. So it doesn't make sense to synchronize with the slowest client.
+
+How do we avoid running out of memory when slow clients can't keep up with the
+broadcast rate, then? The most straightforward option is to disconnect them.
+
+If a client gets too far behind, eventually it reaches the limit defined by
+``ping_timeout`` and websockets terminates the connection. You can read the
+discussion of :doc:`keepalive and timeouts <./timeouts>` for details.
+
+How :func:`broadcast` works
+---------------------------
+
+The built-in :func:`broadcast` function is similar to the naive way. The main
+difference is that it doesn't apply backpressure.
+
+This provides the best performance by avoiding the overhead of scheduling and
+running one task per client.
+
+Also, when sending text messages, encoding to UTF-8 happens only once rather
+than once per client, providing a small performance gain.
+
+Per-client queues
+-----------------
+
+At this point, we deal with slow clients rather brutally: we disconnect then.
+
+Can we do better? For example, we could decide to skip or to batch messages,
+depending on how far behind a client is.
+
+To implement this logic, we can create a queue of messages for each client and
+run a task that gets messages from the queue and sends them to the client::
+
+ import asyncio
+
+ CLIENTS = set()
+
+ async def relay(queue, websocket):
+ while True:
+ # Implement custom logic based on queue.qsize() and
+ # websocket.transport.get_write_buffer_size() here.
+ message = await queue.get()
+ await websocket.send(message)
+
+ async def handler(websocket):
+ queue = asyncio.Queue()
+ relay_task = asyncio.create_task(relay(queue, websocket))
+ CLIENTS.add(queue)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CLIENTS.remove(queue)
+ relay_task.cancel()
+
+Then we can broadcast a message by pushing it to all queues::
+
+ def broadcast(message):
+ for queue in CLIENTS:
+ queue.put_nowait(message)
+
+The queues provide an additional buffer between the ``broadcast()`` function
+and clients. This makes it easier to support slow clients without excessive
+memory usage because queued messages aren't duplicated to write buffers
+until ``relay()`` processes them.
+
+Publish–subscribe
+-----------------
+
+Can we avoid centralizing the list of connected clients in a global variable?
+
+If each client subscribes to a stream a messages, then broadcasting becomes as
+simple as publishing a message to the stream.
+
+Here's a message stream that supports multiple consumers::
+
+ class PubSub:
+ def __init__(self):
+ self.waiter = asyncio.Future()
+
+ def publish(self, value):
+ waiter, self.waiter = self.waiter, asyncio.Future()
+ waiter.set_result((value, self.waiter))
+
+ async def subscribe(self):
+ waiter = self.waiter
+ while True:
+ value, waiter = await waiter
+ yield value
+
+ __aiter__ = subscribe
+
+ PUBSUB = PubSub()
+
+The stream is implemented as a linked list of futures. It isn't necessary to
+synchronize consumers. They can read the stream at their own pace,
+independently from one another. Once all consumers read a message, there are
+no references left, therefore the garbage collector deletes it.
+
+The connection handler subscribes to the stream and sends messages::
+
+ async def handler(websocket):
+ async for message in PUBSUB:
+ await websocket.send(message)
+
+The broadcast function publishes to the stream::
+
+ def broadcast(message):
+ PUBSUB.publish(message)
+
+Like per-client queues, this version supports slow clients with limited memory
+usage. Unlike per-client queues, it makes it difficult to tell how far behind
+a client is. The ``PubSub`` class could be extended or refactored to provide
+this information.
+
+The ``for`` loop is gone from this version of the ``broadcast()`` function.
+However, there's still a ``for`` loop iterating on all clients hidden deep
+inside :mod:`asyncio`. When ``publish()`` sets the result of the ``waiter``
+future, :mod:`asyncio` loops on callbacks registered with this future and
+schedules them. This is how connection handlers receive the next value from
+the asynchronous iterator returned by ``subscribe()``.
+
+Performance considerations
+--------------------------
+
+The built-in :func:`broadcast` function sends all messages without yielding
+control to the event loop. So does the naive way when the network and clients
+are fast and reliable.
+
+For each client, a WebSocket frame is prepared and sent to the network. This
+is the minimum amount of work required to broadcast a message.
+
+It would be tempting to prepare a frame and reuse it for all connections.
+However, this isn't possible in general for two reasons:
+
+* Clients can negotiate different extensions. You would have to enforce the
+ same extensions with the same parameters. For example, you would have to
+ select some compression settings and reject clients that cannot support
+ these settings.
+
+* Extensions can be stateful, producing different encodings of the same
+ message depending on previous messages. For example, you would have to
+ disable context takeover to make compression stateless, resulting in poor
+ compression rates.
+
+All other patterns discussed above yield control to the event loop once per
+client because messages are sent by different tasks. This makes them slower
+than the built-in :func:`broadcast` function.
+
+There is no major difference between the performance of per-client queues and
+publish–subscribe.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/compression.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/compression.rst
new file mode 100644
index 0000000000..eaf99070db
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/compression.rst
@@ -0,0 +1,222 @@
+Compression
+===========
+
+.. currentmodule:: websockets.extensions.permessage_deflate
+
+Most WebSocket servers exchange JSON messages because they're convenient to
+parse and serialize in a browser. These messages contain text data and tend to
+be repetitive.
+
+This makes the stream of messages highly compressible. Enabling compression
+can reduce network traffic by more than 80%.
+
+There's a standard for compressing messages. :rfc:`7692` defines WebSocket
+Per-Message Deflate, a compression extension based on the Deflate_ algorithm.
+
+.. _Deflate: https://en.wikipedia.org/wiki/Deflate
+
+Configuring compression
+-----------------------
+
+:func:`~websockets.client.connect` and :func:`~websockets.server.serve` enable
+compression by default because the reduction in network bandwidth is usually
+worth the additional memory and CPU cost.
+
+If you want to disable compression, set ``compression=None``::
+
+ import websockets
+
+ websockets.connect(..., compression=None)
+
+ websockets.serve(..., compression=None)
+
+If you want to customize compression settings, you can enable the Per-Message
+Deflate extension explicitly with :class:`ClientPerMessageDeflateFactory` or
+:class:`ServerPerMessageDeflateFactory`::
+
+ import websockets
+ from websockets.extensions import permessage_deflate
+
+ websockets.connect(
+ ...,
+ extensions=[
+ permessage_deflate.ClientPerMessageDeflateFactory(
+ server_max_window_bits=11,
+ client_max_window_bits=11,
+ compress_settings={"memLevel": 4},
+ ),
+ ],
+ )
+
+ websockets.serve(
+ ...,
+ extensions=[
+ permessage_deflate.ServerPerMessageDeflateFactory(
+ server_max_window_bits=11,
+ client_max_window_bits=11,
+ compress_settings={"memLevel": 4},
+ ),
+ ],
+ )
+
+The Window Bits and Memory Level values in these examples reduce memory usage
+at the expense of compression rate.
+
+Compression settings
+--------------------
+
+When a client and a server enable the Per-Message Deflate extension, they
+negotiate two parameters to guarantee compatibility between compression and
+decompression. These parameters affect the trade-off between compression rate
+and memory usage for both sides.
+
+* **Context Takeover** means that the compression context is retained between
+ messages. In other words, compression is applied to the stream of messages
+ rather than to each message individually.
+
+ Context takeover should remain enabled to get good performance on
+ applications that send a stream of messages with similar structure,
+ that is, most applications.
+
+ This requires retaining the compression context and state between messages,
+ which increases the memory footprint of a connection.
+
+* **Window Bits** controls the size of the compression context. It must be
+ an integer between 9 (lowest memory usage) and 15 (best compression).
+ Setting it to 8 is possible but rejected by some versions of zlib.
+
+ On the server side, websockets defaults to 12. Specifically, the compression
+ window size (server to client) is always 12 while the decompression window
+ (client to server) size may be 12 or 15 depending on whether the client
+ supports configuring it.
+
+ On the client side, websockets lets the server pick a suitable value, which
+ has the same effect as defaulting to 15.
+
+:mod:`zlib` offers additional parameters for tuning compression. They control
+the trade-off between compression rate, memory usage, and CPU usage only for
+compressing. They're transparent for decompressing. Unless mentioned
+otherwise, websockets inherits defaults of :func:`~zlib.compressobj`.
+
+* **Memory Level** controls the size of the compression state. It must be an
+ integer between 1 (lowest memory usage) and 9 (best compression).
+
+ websockets defaults to 5. This is lower than zlib's default of 8. Not only
+ does a lower memory level reduce memory usage, but it can also increase
+ speed thanks to memory locality.
+
+* **Compression Level** controls the effort to optimize compression. It must
+ be an integer between 1 (lowest CPU usage) and 9 (best compression).
+
+* **Strategy** selects the compression strategy. The best choice depends on
+ the type of data being compressed.
+
+
+Tuning compression
+------------------
+
+For servers
+...........
+
+By default, websockets enables compression with conservative settings that
+optimize memory usage at the cost of a slightly worse compression rate:
+Window Bits = 12 and Memory Level = 5. This strikes a good balance for small
+messages that are typical of WebSocket servers.
+
+Here's how various compression settings affect memory usage of a single
+connection on a 64-bit system, as well a benchmark of compressed size and
+compression time for a corpus of small JSON documents.
+
+=========== ============ ============ ================ ================
+Window Bits Memory Level Memory usage Size vs. default Time vs. default
+=========== ============ ============ ================ ================
+15 8 322 KiB -4.0% +15%
+14 7 178 KiB -2.6% +10%
+13 6 106 KiB -1.4% +5%
+**12** **5** **70 KiB** **=** **=**
+11 4 52 KiB +3.7% -5%
+10 3 43 KiB +90% +50%
+9 2 39 KiB +160% +100%
+— — 19 KiB +452% —
+=========== ============ ============ ================ ================
+
+Window Bits and Memory Level don't have to move in lockstep. However, other
+combinations don't yield significantly better results than those shown above.
+
+Compressed size and compression time depend heavily on the kind of messages
+exchanged by the application so this example may not apply to your use case.
+
+You can adapt `compression/benchmark.py`_ by creating a list of typical
+messages and passing it to the ``_run`` function.
+
+Window Bits = 11 and Memory Level = 4 looks like the sweet spot in this table.
+
+websockets defaults to Window Bits = 12 and Memory Level = 5 to stay away from
+Window Bits = 10 or Memory Level = 3 where performance craters, raising doubts
+on what could happen at Window Bits = 11 and Memory Level = 4 on a different
+corpus.
+
+Defaults must be safe for all applications, hence a more conservative choice.
+
+.. _compression/benchmark.py: https://github.com/python-websockets/websockets/blob/main/experiments/compression/benchmark.py
+
+The benchmark focuses on compression because it's more expensive than
+decompression. Indeed, leaving aside small allocations, theoretical memory
+usage is:
+
+* ``(1 << (windowBits + 2)) + (1 << (memLevel + 9))`` for compression;
+* ``1 << windowBits`` for decompression.
+
+CPU usage is also higher for compression than decompression.
+
+While it's always possible for a server to use a smaller window size for
+compressing outgoing messages, using a smaller window size for decompressing
+incoming messages requires collaboration from clients.
+
+When a client doesn't support configuring the size of its compression window,
+websockets enables compression with the largest possible decompression window.
+In most use cases, this is more efficient than disabling compression both ways.
+
+If you are very sensitive to memory usage, you can reverse this behavior by
+setting the ``require_client_max_window_bits`` parameter of
+:class:`ServerPerMessageDeflateFactory` to ``True``.
+
+For clients
+...........
+
+By default, websockets enables compression with Memory Level = 5 but leaves
+the Window Bits setting up to the server.
+
+There's two good reasons and one bad reason for not optimizing the client side
+like the server side:
+
+1. If the maintainers of a server configured some optimized settings, we don't
+ want to override them with more restrictive settings.
+
+2. Optimizing memory usage doesn't matter very much for clients because it's
+ uncommon to open thousands of client connections in a program.
+
+3. On a more pragmatic note, some servers misbehave badly when a client
+ configures compression settings. `AWS API Gateway`_ is the worst offender.
+
+ .. _AWS API Gateway: https://github.com/python-websockets/websockets/issues/1065
+
+ Unfortunately, even though websockets is right and AWS is wrong, many users
+ jump to the conclusion that websockets doesn't work.
+
+ Until the ecosystem levels up, interoperability with buggy servers seems
+ more valuable than optimizing memory usage.
+
+
+Further reading
+---------------
+
+This `blog post by Ilya Grigorik`_ provides more details about how compression
+settings affect memory usage and how to optimize them.
+
+.. _blog post by Ilya Grigorik: https://www.igvita.com/2013/11/27/configuring-and-optimizing-websocket-compression/
+
+This `experiment by Peter Thorson`_ recommends Window Bits = 11 and Memory
+Level = 4 for optimizing memory usage.
+
+.. _experiment by Peter Thorson: https://mailarchive.ietf.org/arch/msg/hybi/F9t4uPufVEy8KBLuL36cZjCmM_Y/
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/data-flow.svg b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/data-flow.svg
new file mode 100644
index 0000000000..22a198ed83
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/data-flow.svg
@@ -0,0 +1,63 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="-382 -214 500 464" width="500px" height="464px"><defs><style>@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix");
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/094b15e3-94bd-435b-a595-d40edfde661a.woff2") format("woff2"),url("https://whimsical.com/fonts/7e5fbe11-4858-4bd1-9ec6-a1d9f9d227aa.woff") format("woff"),url("https://whimsical.com/fonts/0f11eff9-9f05-46f5-9703-027c510065d7.ttf") format("truetype"),url("https://whimsical.com/fonts/48b61978-3f30-4274-823c-5cdcd1876918.svg#48b61978-3f30-4274-823c-5cdcd1876918") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix");
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/46251881-ffe9-4bfb-99c7-d6ce3bebaf3e.woff2") format("woff2"),url("https://whimsical.com/fonts/790ebbf2-62c5-4a32-946f-99d405f9243e.woff") format("woff"),url("https://whimsical.com/fonts/d28199e6-0f4a-42df-97f4-606701c6f75a.ttf") format("truetype"),url("https://whimsical.com/fonts/37a462c0-d86e-492c-b9ab-35e6bd417f6c.svg#37a462c0-d86e-492c-b9ab-35e6bd417f6c") format("svg");
+}
+@font-face{
+ font-weight: 500;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix");
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/7b29ae40-30ff-4f99-a2b9-cde88669fa2f.woff2") format("woff2"),url("https://whimsical.com/fonts/bf73077c-e354-4562-a085-f4703eb1d653.woff") format("woff"),url("https://whimsical.com/fonts/0ffa6947-5317-4d07-b525-14d08a028821.ttf") format("truetype"),url("https://whimsical.com/fonts/9e423e45-5450-4991-a157-dbe6cf61eb4e.svg#9e423e45-5450-4991-a157-dbe6cf61eb4e") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 500;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix");
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/c7717981-647d-4b76-8817-33062e42d11f.woff2") format("woff2"),url("https://whimsical.com/fonts/b852cd4c-1255-40b1-a2be-73a9105b0155.woff") format("woff"),url("https://whimsical.com/fonts/821b00ad-e741-4e2d-af1a-85594367c8a2.ttf") format("truetype"),url("https://whimsical.com/fonts/d3e3b689-a6b0-45f2-b279-f5e194f87409.svg#d3e3b689-a6b0-45f2-b279-f5e194f87409") format("svg");
+}
+@font-face{
+ font-weight: 700;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix");
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/31704504-4671-47a6-a61e-397f07410d91.woff2") format("woff2"),url("https://whimsical.com/fonts/b8a280da-481f-44a0-8d9c-1bc64bd7227c.woff") format("woff"),url("https://whimsical.com/fonts/276d122a-0fab-447b-9fc0-5d7fb0eafce2.ttf") format("truetype"),url("https://whimsical.com/fonts/8fb8273a-8213-4928-808b-b5bfaf3fd7e9.svg#8fb8273a-8213-4928-808b-b5bfaf3fd7e9") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 700;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix");
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/4132c4c8-680c-4d6d-9251-a2da38503bbd.woff2") format("woff2"),url("https://whimsical.com/fonts/366401fe-6df4-47be-8f55-8a411cff0dd2.woff") format("woff"),url("https://whimsical.com/fonts/dbe4f7ba-fc16-44a6-a577-571620e9edaf.ttf") format("truetype"),url("https://whimsical.com/fonts/f874edca-ee87-4ccf-8b1d-921fbc3c1c36.svg#f874edca-ee87-4ccf-8b1d-921fbc3c1c36") format("svg");
+}
+
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Regular.woff') format('woff');
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Italic.woff') format('woff');
+ font-style: italic;
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Bold.woff') format('woff');
+ font-weight: 700;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-BoldItalic.woff') format('woff');
+ font-style: italic;
+ font-weight: 700;
+}
+* {-webkit-font-smoothing: auto; -moz-osx-font-smoothing: auto;}@media print { svg { width: 100%; height: 100%; } }</style><filter id="fill-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.16"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="fill-light-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.04"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="image-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="frame-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="badge-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.08"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><g><g><rect x="-372" y="-12" width="480" height="72" rx="3" ry="3" fill="#f6d8dd"/><rect y="-12" rx="3" stroke="#D3455B" fill="none" stroke-linejoin="round" width="480" stroke-linecap="round" stroke-width="2" x="-372" ry="3" height="72"/><text y="12" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="456" xml:space="preserve" x="-360" font-family="DIN Next, sans-serif" height="24"><tspan x="-132" y="30" text-anchor="middle" style="white-space:pre;">Integration layer</tspan></text></g></g><g><g><rect x="-372" y="168" width="480" height="72" rx="3" ry="3" fill="#d3e6f7"/><rect y="168" rx="3" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="480" stroke-linecap="round" stroke-width="2" x="-372" ry="3" height="72"/><text y="192" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="456" xml:space="preserve" x="-360" font-family="DIN Next, sans-serif" height="24"><tspan x="-132" y="210" text-anchor="middle" style="white-space:pre;">Sans-I/O layer</tspan></text></g></g><g><g><rect x="-372" y="-192" width="216" height="72" rx="3" ry="3" fill="#cfeeeb"/><rect y="-192" rx="3" stroke="#1AAE9F" fill="none" stroke-linejoin="round" width="216" stroke-linecap="round" stroke-width="2" x="-372" ry="3" height="72"/><text y="-168" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="192" xml:space="preserve" x="-360" font-family="DIN Next, sans-serif" height="24"><tspan x="-264" y="-150" text-anchor="middle" style="white-space:pre;">Application</tspan></text></g></g><g><g><path d="M-324,-20v-20M-324,-92v-16" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-329.54095,-104.9079 -324,-112 -318.45905,-104.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="-90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="79" xml:space="preserve" x="-363.5" font-family="DIN Next, sans-serif" height="48"><tspan x="-324" y="-72" text-anchor="middle" style="white-space:pre;">receive</tspan><tspan x="-324" y="-48" text-anchor="middle" style="white-space:pre;">messages</tspan></text></g></g><g><g><path d="M-204,-112l0,20M-204,-40v16" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-198.45905,-27.0921 -204,-20 -209.54095,-27.0921" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="-90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="79" xml:space="preserve" x="-243.5" font-family="DIN Next, sans-serif" height="48"><tspan x="-204" y="-72" text-anchor="middle" style="white-space:pre;">send</tspan><tspan x="-204" y="-48" text-anchor="middle" style="white-space:pre;">messages</tspan></text></g></g><g><g><path d="M96.94345,-173.14258c4.53106,1.57532 8.08271,4.56716 9.84726,8.29515c1.76456,3.72799 1.59205,7.87526 -0.4783,11.4987c1.926,5.62898 0.07743,11.66356 -4.87418,15.91158c-4.95161,4.24802 -12.28578,6.09138 -19.33826,4.86046c-2.37232,7.09867 -9.03221,12.73751 -17.68526,14.97387c-8.65305,2.23636 -18.11659,0.76458 -25.13032,-3.90829c-8.39761,8.37233 -20.93327,13.315 -34.25257,13.5054c-13.3193,0.1904 -26.06267,-4.39089 -34.82012,-12.51799c-15.68591,7.18472 -35.58915,2.88148 -44.76245,-9.678c-7.38426,1.34031 -15.11657,-0.22307 -20.85552,-4.21672c-5.73895,-3.99365 -8.80965,-9.94793 -8.28226,-16.05983c-3.457,-2.81303 -4.97104,-6.82861 -4.04383,-10.72516c0.92721,-3.89655 4.17556,-7.16931 8.67598,-8.74119c1.08624,-6.50166 5.74572,-12.25693 12.67613,-15.65724c6.93042,-3.40031 15.38838,-4.08092 23.00992,-1.85161c7.11534,-8.80068 18.56556,-14.69575 31.42744,-16.1802c12.86188,-1.48445 25.89062,1.58538 35.76002,8.42577c6.64655,-4.34187 15.16482,-6.34654 23.65054,-5.56587c8.48572,0.78068 16.23125,4.28161 21.50507,9.72014c19.34894,-5.64384 40.71077,2.33211 47.97072,17.91102z" fill="#e3e6e9"/><path d="M96.94345,-173.14258c4.53106,1.57532 8.08271,4.56716 9.84726,8.29515c1.76456,3.72799 1.59205,7.87526 -0.4783,11.4987c1.926,5.62898 0.07743,11.66356 -4.87418,15.91158c-4.95161,4.24802 -12.28578,6.09138 -19.33826,4.86046c-2.37232,7.09867 -9.03221,12.73751 -17.68526,14.97387c-8.65305,2.23636 -18.11659,0.76458 -25.13032,-3.90829c-8.39761,8.37233 -20.93327,13.315 -34.25257,13.5054c-13.3193,0.1904 -26.06267,-4.39089 -34.82012,-12.51799c-15.68591,7.18472 -35.58915,2.88148 -44.76245,-9.678c-7.38426,1.34031 -15.11657,-0.22307 -20.85552,-4.21672c-5.73895,-3.99365 -8.80965,-9.94793 -8.28226,-16.05983c-3.457,-2.81303 -4.97104,-6.82861 -4.04383,-10.72516c0.92721,-3.89655 4.17556,-7.16931 8.67598,-8.74119c1.08624,-6.50166 5.74572,-12.25693 12.67613,-15.65724c6.93042,-3.40031 15.38838,-4.08092 23.00992,-1.85161c7.11534,-8.80068 18.56556,-14.69575 31.42744,-16.1802c12.86188,-1.48445 25.89062,1.58538 35.76002,8.42577c6.64655,-4.34187 15.16482,-6.34654 23.65054,-5.56587c8.48572,0.78068 16.23125,4.28161 21.50507,9.72014c19.34894,-5.64384 40.71077,2.33211 47.97072,17.91102z" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text y="-168" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="192" xml:space="preserve" x="-96" font-family="DIN Next, sans-serif" height="24"><tspan x="0" y="-150" text-anchor="middle" style="white-space:pre;">Network</tspan></text></g></g><g><g><path d="M-60,-20v-20M-60,-92v-15.53727" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-65.54095,-104.44518 -60,-111.53727 -54.45905,-104.44518" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="-90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="38" xml:space="preserve" x="-79" font-family="DIN Next, sans-serif" height="48"><tspan x="-60" y="-72" text-anchor="middle" style="white-space:pre;">send</tspan><tspan x="-60" y="-48" text-anchor="middle" style="white-space:pre;">data</tspan></text></g></g><g><g><path d="M60,-108.78722v18.78722M60,-38v14" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="65.54095,-27.0921 60,-20 54.45905,-27.0921" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="-88" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="56" xml:space="preserve" x="32" font-family="DIN Next, sans-serif" height="48"><tspan x="60" y="-70" text-anchor="middle" style="white-space:pre;">receive</tspan><tspan x="60" y="-46" text-anchor="middle" style="white-space:pre;">data</tspan></text></g></g><g><g><path d="M60,68v20M60,140v16" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="65.54095,152.9079 60,160 54.45905,152.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="56" xml:space="preserve" x="32" font-family="DIN Next, sans-serif" height="48"><tspan x="60" y="108" text-anchor="middle" style="white-space:pre;">receive</tspan><tspan x="60" y="132" text-anchor="middle" style="white-space:pre;">bytes</tspan></text></g></g><g><g><path d="M-60,160v-20M-60,88v-16" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-65.54095,75.0921 -60,68 -54.45905,75.0921" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="42" xml:space="preserve" x="-81" font-family="DIN Next, sans-serif" height="48"><tspan x="-60" y="108" text-anchor="middle" style="white-space:pre;">send</tspan><tspan x="-60" y="132" text-anchor="middle" style="white-space:pre;">bytes</tspan></text></g></g><g><g><path d="M-212,42" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-212,42 -212,42 -212,42" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g></g><g><g><path d="M-204,68v20M-204,140v16" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-198.45905,152.9079 -204,160 -209.54095,152.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="90" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="52" xml:space="preserve" x="-230" font-family="DIN Next, sans-serif" height="48"><tspan x="-204" y="108" text-anchor="middle" style="white-space:pre;">send</tspan><tspan x="-204" y="132" text-anchor="middle" style="white-space:pre;">events</tspan></text></g></g><g><g><path d="M-324,160l0,-18M-324,90v-14" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><polygon points="-329.54095,79.0921 -324,72 -318.45905,79.0921" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><text y="92" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="56" xml:space="preserve" x="-352" font-family="DIN Next, sans-serif" height="48"><tspan x="-324" y="110" text-anchor="middle" style="white-space:pre;">receive</tspan><tspan x="-324" y="134" text-anchor="middle" style="white-space:pre;">events</tspan></text></g></g></svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.rst
new file mode 100644
index 0000000000..2a1fe9a785
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.rst
@@ -0,0 +1,181 @@
+Deployment
+==========
+
+.. currentmodule:: websockets
+
+When you deploy your websockets server to production, at a high level, your
+architecture will almost certainly look like the following diagram:
+
+.. image:: deployment.svg
+
+The basic unit for scaling a websockets server is "one server process". Each
+blue box in the diagram represents one server process.
+
+There's more variation in routing. While the routing layer is shown as one big
+box, it is likely to involve several subsystems.
+
+When you design a deployment, your should consider two questions:
+
+1. How will I run the appropriate number of server processes?
+2. How will I route incoming connections to these processes?
+
+These questions are strongly related. There's a wide range of acceptable
+answers, depending on your goals and your constraints.
+
+You can find a few concrete examples in the :ref:`deployment how-to guides
+<deployment-howto>`.
+
+Running server processes
+------------------------
+
+How many processes do I need?
+.............................
+
+Typically, one server process will manage a few hundreds or thousands
+connections, depending on the frequency of messages and the amount of work
+they require.
+
+CPU and memory usage increase with the number of connections to the server.
+
+Often CPU is the limiting factor. If a server process goes to 100% CPU, then
+you reached the limit. How much headroom you want to keep is up to you.
+
+Once you know how many connections a server process can manage and how many
+connections you need to handle, you can calculate how many processes to run.
+
+You can also automate this calculation by configuring an autoscaler to keep
+CPU usage or connection count within acceptable limits.
+
+Don't scale with threads. Threads doesn't make sense for a server built with
+:mod:`asyncio`.
+
+How do I run processes?
+.......................
+
+Most solutions for running multiple instances of a server process fall into
+one of these three buckets:
+
+1. Running N processes on a platform:
+
+ * a Kubernetes Deployment
+
+ * its equivalent on a Platform as a Service provider
+
+2. Running N servers:
+
+ * an AWS Auto Scaling group, a GCP Managed instance group, etc.
+
+ * a fixed set of long-lived servers
+
+3. Running N processes on a server:
+
+ * preferably via a process manager or supervisor
+
+Option 1 is easiest of you have access to such a platform.
+
+Option 2 almost always combines with option 3.
+
+How do I start a process?
+.........................
+
+Run a Python program that invokes :func:`~server.serve`. That's it.
+
+Don't run an ASGI server such as Uvicorn, Hypercorn, or Daphne. They're
+alternatives to websockets, not complements.
+
+Don't run a WSGI server such as Gunicorn, Waitress, or mod_wsgi. They aren't
+designed to run WebSocket applications.
+
+Applications servers handle network connections and expose a Python API. You
+don't need one because websockets handles network connections directly.
+
+How do I stop a process?
+........................
+
+Process managers send the SIGTERM signal to terminate processes. Catch this
+signal and exit the server to ensure a graceful shutdown.
+
+Here's an example:
+
+.. literalinclude:: ../../example/faq/shutdown_server.py
+ :emphasize-lines: 12-15,18
+
+When exiting the context manager, :func:`~server.serve` closes all connections
+with code 1001 (going away). As a consequence:
+
+* If the connection handler is awaiting
+ :meth:`~server.WebSocketServerProtocol.recv`, it receives a
+ :exc:`~exceptions.ConnectionClosedOK` exception. It can catch the exception
+ and clean up before exiting.
+
+* Otherwise, it should be waiting on
+ :meth:`~server.WebSocketServerProtocol.wait_closed`, so it can receive the
+ :exc:`~exceptions.ConnectionClosedOK` exception and exit.
+
+This example is easily adapted to handle other signals.
+
+If you override the default signal handler for SIGINT, which raises
+:exc:`KeyboardInterrupt`, be aware that you won't be able to interrupt a
+program with Ctrl-C anymore when it's stuck in a loop.
+
+Routing connections
+-------------------
+
+What does routing involve?
+..........................
+
+Since the routing layer is directly exposed to the Internet, it should provide
+appropriate protection against threats ranging from Internet background noise
+to targeted attacks.
+
+You should always secure WebSocket connections with TLS. Since the routing
+layer carries the public domain name, it should terminate TLS connections.
+
+Finally, it must route connections to the server processes, balancing new
+connections across them.
+
+How do I route connections?
+...........................
+
+Here are typical solutions for load balancing, matched to ways of running
+processes:
+
+1. If you're running on a platform, it comes with a routing layer:
+
+ * a Kubernetes Ingress and Service
+
+ * a service mesh: Istio, Consul, Linkerd, etc.
+
+ * the routing mesh of a Platform as a Service
+
+2. If you're running N servers, you may load balance with:
+
+ * a cloud load balancer: AWS Elastic Load Balancing, GCP Cloud Load
+ Balancing, etc.
+
+ * A software load balancer: HAProxy, NGINX, etc.
+
+3. If you're running N processes on a server, you may load balance with:
+
+ * A software load balancer: HAProxy, NGINX, etc.
+
+ * The operating system — all processes listen on the same port
+
+You may trust the load balancer to handle encryption and to provide security.
+You may add another layer in front of the load balancer for these purposes.
+
+There are many possibilities. Don't add layers that you don't need, though.
+
+How do I implement a health check?
+..................................
+
+Load balancers need a way to check whether server processes are up and running
+to avoid routing connections to a non-functional backend.
+
+websockets provide minimal support for responding to HTTP requests with the
+:meth:`~server.WebSocketServerProtocol.process_request` hook.
+
+Here's an example:
+
+.. literalinclude:: ../../example/faq/health_check_server.py
+ :emphasize-lines: 7-9,18
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.svg b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.svg
new file mode 100644
index 0000000000..cb948d8d6b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/deployment.svg
@@ -0,0 +1,63 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="-490 -34 644 356" width="644px" height="356px"><defs><style>@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix");
+ src:url("https://whimsical.com/fonts/139e8e25-0eea-4cb4-a5d4-79048803e73d.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/094b15e3-94bd-435b-a595-d40edfde661a.woff2") format("woff2"),url("https://whimsical.com/fonts/7e5fbe11-4858-4bd1-9ec6-a1d9f9d227aa.woff") format("woff"),url("https://whimsical.com/fonts/0f11eff9-9f05-46f5-9703-027c510065d7.ttf") format("truetype"),url("https://whimsical.com/fonts/48b61978-3f30-4274-823c-5cdcd1876918.svg#48b61978-3f30-4274-823c-5cdcd1876918") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 400;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix");
+ src:url("https://whimsical.com/fonts/df24d5e8-5087-42fd-99b1-b16042d666c8.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/46251881-ffe9-4bfb-99c7-d6ce3bebaf3e.woff2") format("woff2"),url("https://whimsical.com/fonts/790ebbf2-62c5-4a32-946f-99d405f9243e.woff") format("woff"),url("https://whimsical.com/fonts/d28199e6-0f4a-42df-97f4-606701c6f75a.ttf") format("truetype"),url("https://whimsical.com/fonts/37a462c0-d86e-492c-b9ab-35e6bd417f6c.svg#37a462c0-d86e-492c-b9ab-35e6bd417f6c") format("svg");
+}
+@font-face{
+ font-weight: 500;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix");
+ src:url("https://whimsical.com/fonts/c5b058fc-55ce-4e06-a175-5c7d9a7e90f4.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/7b29ae40-30ff-4f99-a2b9-cde88669fa2f.woff2") format("woff2"),url("https://whimsical.com/fonts/bf73077c-e354-4562-a085-f4703eb1d653.woff") format("woff"),url("https://whimsical.com/fonts/0ffa6947-5317-4d07-b525-14d08a028821.ttf") format("truetype"),url("https://whimsical.com/fonts/9e423e45-5450-4991-a157-dbe6cf61eb4e.svg#9e423e45-5450-4991-a157-dbe6cf61eb4e") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 500;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix");
+ src:url("https://whimsical.com/fonts/9897c008-fd65-48a4-afc7-36de2fea97b9.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/c7717981-647d-4b76-8817-33062e42d11f.woff2") format("woff2"),url("https://whimsical.com/fonts/b852cd4c-1255-40b1-a2be-73a9105b0155.woff") format("woff"),url("https://whimsical.com/fonts/821b00ad-e741-4e2d-af1a-85594367c8a2.ttf") format("truetype"),url("https://whimsical.com/fonts/d3e3b689-a6b0-45f2-b279-f5e194f87409.svg#d3e3b689-a6b0-45f2-b279-f5e194f87409") format("svg");
+}
+@font-face{
+ font-weight: 700;
+ font-family:"DIN Next";
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix");
+ src:url("https://whimsical.com/fonts/81cd3b08-fd39-4ae3-8d05-9d24709eba84.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/31704504-4671-47a6-a61e-397f07410d91.woff2") format("woff2"),url("https://whimsical.com/fonts/b8a280da-481f-44a0-8d9c-1bc64bd7227c.woff") format("woff"),url("https://whimsical.com/fonts/276d122a-0fab-447b-9fc0-5d7fb0eafce2.ttf") format("truetype"),url("https://whimsical.com/fonts/8fb8273a-8213-4928-808b-b5bfaf3fd7e9.svg#8fb8273a-8213-4928-808b-b5bfaf3fd7e9") format("svg");
+}
+@font-face{
+ font-family:"DIN Next";
+ font-weight: 700;
+ font-style: italic;
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix");
+ src:url("https://whimsical.com/fonts/00cc6df3-ed32-4004-8dd8-1c576600a408.eot?#iefix") format("eot"),url("https://whimsical.com/fonts/4132c4c8-680c-4d6d-9251-a2da38503bbd.woff2") format("woff2"),url("https://whimsical.com/fonts/366401fe-6df4-47be-8f55-8a411cff0dd2.woff") format("woff"),url("https://whimsical.com/fonts/dbe4f7ba-fc16-44a6-a577-571620e9edaf.ttf") format("truetype"),url("https://whimsical.com/fonts/f874edca-ee87-4ccf-8b1d-921fbc3c1c36.svg#f874edca-ee87-4ccf-8b1d-921fbc3c1c36") format("svg");
+}
+
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Regular.woff') format('woff');
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Italic.woff') format('woff');
+ font-style: italic;
+ font-weight: 400;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-Bold.woff') format('woff');
+ font-weight: 700;
+}
+@font-face {
+ font-family: 'PFDINMonoPro';
+ src:url('https://whimsical.com/fonts/PFDINMonoPro-BoldItalic.woff') format('woff');
+ font-style: italic;
+ font-weight: 700;
+}
+* {-webkit-font-smoothing: auto; -moz-osx-font-smoothing: auto;}@media print { svg { width: 100%; height: 100%; } }</style><filter id="fill-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.16"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="fill-light-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.04"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="image-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="frame-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="8"/><feOffset result="offsetblur" dx="0" dy="3"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.06"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="badge-shadow" x="-100%" y="-100%" width="300%" height="300%"><feGaussianBlur in="SourceAlpha" stdDeviation="6"/><feOffset result="offsetblur" dx="0" dy="2"/><feComponentTransfer result="s0"><feFuncA type="linear" slope="0.08"/></feComponentTransfer><feMerge><feMergeNode in="s0"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><g><g><path d="M132.40052,16.91125c8.20504,1.34238 13.19097,6.77278 11.13766,12.13055c-0.76086,3.6926 -4.09828,6.94687 -9.03771,8.81254c-4.93944,1.86567 -10.9238,2.13232 -16.20563,0.72209c-3.50792,6.79759 -12.12825,11.93728 -22.81409,13.60245c-10.68585,1.66516 -21.93194,-0.37877 -29.7633,-5.40937c-7.5447,11.32261 -23.72737,19.17936 -42.50646,20.63705c-18.77909,1.45769 -37.33189,-3.70278 -48.732,-13.55484c-11.00862,8.39145 -26.81112,13.46368 -43.71109,14.03023c-16.89997,0.56655 -33.41499,-3.42228 -45.68197,-11.03344c-12.09168,9.57066 -30.08677,15.12494 -49.08843,15.1514c-19.00166,0.02646 -37.03287,-5.47764 -49.18697,-15.01453c-32.22671,18.71922 -81.52408,17.01732 -110.54782,-3.81645c-9.61896,5.63808 -22.48701,8.30277 -35.32441,7.3149c-12.8374,-0.98787 -24.40407,-5.53286 -31.75198,-12.47659c-8.38039,4.12685 -19.07889,5.69428 -29.35634,4.30095c-10.27744,-1.39333 -19.13592,-5.61211 -24.30736,-11.5762c-6.03705,3.01428 -14.12058,3.62226 -21.04917,1.58316c-6.92858,-2.0391 -11.58448,-6.39632 -12.12376,-11.34603c-4.11078,-3.88947 -2.69127,-9.21224 3.19106,-11.96556c2.8597,-6.26181 10.13013,-11.25433 19.56423,-13.4345c9.43409,-2.18018 19.89581,-1.28549 28.15172,2.40755c4.56946,-5.60994 12.84561,-9.53066 22.43123,-10.62652c9.58562,-1.09585 19.40964,0.75561 26.62651,5.0181c13.21632,-10.89584 32.7134,-17.76363 53.91728,-18.99222c21.20388,-1.22858 42.24851,3.29017 58.19687,12.49616c11.75754,-9.7851 29.59785,-15.62692 48.64043,-15.92732c19.04258,-0.30041 37.29416,4.97204 49.76173,14.37498c12.30654,-11.80391 32.97339,-18.70238 54.83436,-18.30339c21.86097,0.39899 41.90535,8.04051 53.18277,20.27486c10.58585,-9.80304 28.36041,-15.18816 46.66019,-14.13654c18.29978,1.05162 34.36046,8.38113 42.16106,19.24077c7.63845,-6.15855 19.75125,-9.16677 31.72723,-7.87948c11.97598,1.2873 21.97263,6.67206 26.18437,14.10438c7.68618,-3.10406 17.06471,-3.86266 25.67861,-2.07706c8.6139,1.78561 15.60478,5.93747 19.14117,11.3679z" fill="#e3e6e9"/><path d="M132.40052,16.91125c8.20504,1.34238 13.19097,6.77278 11.13766,12.13055c-0.76086,3.6926 -4.09828,6.94687 -9.03771,8.81254c-4.93944,1.86567 -10.9238,2.13232 -16.20563,0.72209c-3.50792,6.79759 -12.12825,11.93728 -22.81409,13.60245c-10.68585,1.66516 -21.93194,-0.37877 -29.7633,-5.40937c-7.5447,11.32261 -23.72737,19.17936 -42.50646,20.63705c-18.77909,1.45769 -37.33189,-3.70278 -48.732,-13.55484c-11.00862,8.39145 -26.81112,13.46368 -43.71109,14.03023c-16.89997,0.56655 -33.41499,-3.42228 -45.68197,-11.03344c-12.09168,9.57066 -30.08677,15.12494 -49.08843,15.1514c-19.00166,0.02646 -37.03287,-5.47764 -49.18697,-15.01453c-32.22671,18.71922 -81.52408,17.01732 -110.54782,-3.81645c-9.61896,5.63808 -22.48701,8.30277 -35.32441,7.3149c-12.8374,-0.98787 -24.40407,-5.53286 -31.75198,-12.47659c-8.38039,4.12685 -19.07889,5.69428 -29.35634,4.30095c-10.27744,-1.39333 -19.13592,-5.61211 -24.30736,-11.5762c-6.03705,3.01428 -14.12058,3.62226 -21.04917,1.58316c-6.92858,-2.0391 -11.58448,-6.39632 -12.12376,-11.34603c-4.11078,-3.88947 -2.69127,-9.21224 3.19106,-11.96556c2.8597,-6.26181 10.13013,-11.25433 19.56423,-13.4345c9.43409,-2.18018 19.89581,-1.28549 28.15172,2.40755c4.56946,-5.60994 12.84561,-9.53066 22.43123,-10.62652c9.58562,-1.09585 19.40964,0.75561 26.62651,5.0181c13.21632,-10.89584 32.7134,-17.76363 53.91728,-18.99222c21.20388,-1.22858 42.24851,3.29017 58.19687,12.49616c11.75754,-9.7851 29.59785,-15.62692 48.64043,-15.92732c19.04258,-0.30041 37.29416,4.97204 49.76173,14.37498c12.30654,-11.80391 32.97339,-18.70238 54.83436,-18.30339c21.86097,0.39899 41.90535,8.04051 53.18277,20.27486c10.58585,-9.80304 28.36041,-15.18816 46.66019,-14.13654c18.29978,1.05162 34.36046,8.38113 42.16106,19.24077c7.63845,-6.15855 19.75125,-9.16677 31.72723,-7.87948c11.97598,1.2873 21.97263,6.67206 26.18437,14.10438c7.68618,-3.10406 17.06471,-3.86266 25.67861,-2.07706c8.6139,1.78561 15.60478,5.93747 19.14117,11.3679z" fill="none" stroke="#788896" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/><text y="12" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="600" xml:space="preserve" x="-468" font-family="DIN Next, sans-serif" height="24"><tspan x="-168" y="30" text-anchor="middle" style="white-space:pre;">Internet</tspan></text></g></g><g><g><rect x="-480" y="240" width="144" height="72" rx="3" ry="3" fill="#d3e6f7"/><rect y="240" rx="3" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="144" stroke-linecap="round" stroke-width="2" x="-480" ry="3" height="72"/><text y="264" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="120" xml:space="preserve" x="-468" font-family="DIN Next, sans-serif" height="24"><tspan x="-408" y="282" text-anchor="middle" style="white-space:pre;">websockets</tspan></text></g></g><g><g><rect x="-312" y="240" width="144" height="72" rx="3" ry="3" fill="#d3e6f7"/><rect y="240" rx="3" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="144" stroke-linecap="round" stroke-width="2" x="-312" ry="3" height="72"/><text y="264" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="120" xml:space="preserve" x="-300" font-family="DIN Next, sans-serif" height="24"><tspan x="-240" y="282" text-anchor="middle" style="white-space:pre;">websockets</tspan></text></g></g><g><g><rect x="0" y="240" width="144" height="72" rx="3" ry="3" fill="#d3e6f7"/><rect y="240" rx="3" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="144" stroke-linecap="round" stroke-width="2" x="0" ry="3" height="72"/><text y="264" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="120" xml:space="preserve" x="12" font-family="DIN Next, sans-serif" height="24"><tspan x="72" y="282" text-anchor="middle" style="white-space:pre;">websockets</tspan></text></g></g><g><g><rect x="-144" y="258" width="24" height="36" rx="1.5" ry="1.5" fill="#d3e6f7"/><rect y="258" rx="1.5" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="24" stroke-linecap="round" stroke-width="2" x="-144" ry="1.5" height="36"/></g></g><g><g><rect x="-48" y="258" width="24" height="36" rx="1.5" ry="1.5" fill="#d3e6f7"/><rect y="258" rx="1.5" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="24" stroke-linecap="round" stroke-width="2" x="-48" ry="1.5" height="36"/></g></g><g><g><rect x="-96" y="258" width="24" height="36" rx="1.5" ry="1.5" fill="#d3e6f7"/><rect y="258" rx="1.5" stroke="#2C88D9" fill="none" stroke-linejoin="round" width="24" stroke-linecap="round" stroke-width="2" x="-96" ry="1.5" height="36"/></g></g><g><g><rect x="-480" y="120" width="624" height="72" rx="3" ry="3" fill="#cfeeeb"/><rect y="120" rx="3" stroke="#1AAE9F" fill="none" stroke-linejoin="round" width="624" stroke-linecap="round" stroke-width="2" x="-480" ry="3" height="72"/><text y="144" font-style="normal" font-size="18" font-weight="normal" fill="#293845" width="600" xml:space="preserve" x="-468" font-family="DIN Next, sans-serif" height="24"><tspan x="-168" y="162" text-anchor="middle" style="white-space:pre;">routing</tspan></text></g></g><g><g><line stroke="#788896" fill="none" stroke-linejoin="round" y1="199.99999999999997" stroke-linecap="round" stroke-width="4" x1="-240" y2="227.99999999999994" x2="-240"/><polygon points="-234.45905,224.9079 -240,232 -245.54095,224.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g></g><g><g><line stroke="#788896" fill="none" stroke-linejoin="round" y1="199.99999999999997" stroke-linecap="round" stroke-width="4" x1="-407.99999999999994" y2="227.99999999999994" x2="-407.99999999999994"/><polygon points="-402.45905,224.9079 -408,232 -413.54095,224.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g></g><g><g><line stroke="#788896" fill="none" stroke-linejoin="round" y1="200.00000000000003" stroke-linecap="round" stroke-width="4" x1="72" y2="228" x2="72"/><polygon points="77.54095,224.9079 72,232 66.45905,224.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g></g><g><g><line stroke="#788896" fill="none" stroke-linejoin="round" y1="79.92376615249583" stroke-linecap="round" stroke-width="4" x1="-168" y2="107.99999999999994" x2="-168"/><polygon points="-162.45905,104.9079 -168,112 -173.54095,104.9079" fill="#788896" stroke="#788896" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></g></g></svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/design.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/design.rst
new file mode 100644
index 0000000000..f164d29905
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/design.rst
@@ -0,0 +1,572 @@
+Design
+======
+
+.. currentmodule:: websockets
+
+This document describes the design of websockets. It assumes familiarity with
+the specification of the WebSocket protocol in :rfc:`6455`.
+
+It's primarily intended at maintainers. It may also be useful for users who
+wish to understand what happens under the hood.
+
+.. warning::
+
+ Internals described in this document may change at any time.
+
+ Backwards compatibility is only guaranteed for :doc:`public APIs
+ <../reference/index>`.
+
+Lifecycle
+---------
+
+State
+.....
+
+WebSocket connections go through a trivial state machine:
+
+- ``CONNECTING``: initial state,
+- ``OPEN``: when the opening handshake is complete,
+- ``CLOSING``: when the closing handshake is started,
+- ``CLOSED``: when the TCP connection is closed.
+
+Transitions happen in the following places:
+
+- ``CONNECTING -> OPEN``: in
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.connection_open` which runs when
+ the :ref:`opening handshake <opening-handshake>` completes and the WebSocket
+ connection is established — not to be confused with
+ :meth:`~asyncio.BaseProtocol.connection_made` which runs when the TCP connection
+ is established;
+- ``OPEN -> CLOSING``: in
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.write_frame` immediately before
+ sending a close frame; since receiving a close frame triggers sending a
+ close frame, this does the right thing regardless of which side started the
+ :ref:`closing handshake <closing-handshake>`; also in
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.fail_connection` which duplicates
+ a few lines of code from ``write_close_frame()`` and ``write_frame()``;
+- ``* -> CLOSED``: in
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.connection_lost` which is always
+ called exactly once when the TCP connection is closed.
+
+Coroutines
+..........
+
+The following diagram shows which coroutines are running at each stage of the
+connection lifecycle on the client side.
+
+.. image:: lifecycle.svg
+ :target: _images/lifecycle.svg
+
+The lifecycle is identical on the server side, except inversion of control
+makes the equivalent of :meth:`~client.connect` implicit.
+
+Coroutines shown in green are called by the application. Multiple coroutines
+may interact with the WebSocket connection concurrently.
+
+Coroutines shown in gray manage the connection. When the opening handshake
+succeeds, :meth:`~legacy.protocol.WebSocketCommonProtocol.connection_open` starts
+two tasks:
+
+- :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` runs
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.transfer_data` which handles
+ incoming data and lets :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`
+ consume it. It may be canceled to terminate the connection. It never exits
+ with an exception other than :exc:`~asyncio.CancelledError`. See :ref:`data
+ transfer <data-transfer>` below.
+
+- :attr:`~legacy.protocol.WebSocketCommonProtocol.keepalive_ping_task` runs
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.keepalive_ping` which sends Ping
+ frames at regular intervals and ensures that corresponding Pong frames are
+ received. It is canceled when the connection terminates. It never exits
+ with an exception other than :exc:`~asyncio.CancelledError`.
+
+- :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` runs
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.close_connection` which waits for
+ the data transfer to terminate, then takes care of closing the TCP
+ connection. It must not be canceled. It never exits with an exception. See
+ :ref:`connection termination <connection-termination>` below.
+
+Besides, :meth:`~legacy.protocol.WebSocketCommonProtocol.fail_connection` starts
+the same :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` when
+the opening handshake fails, in order to close the TCP connection.
+
+Splitting the responsibilities between two tasks makes it easier to guarantee
+that websockets can terminate connections:
+
+- within a fixed timeout,
+- without leaking pending tasks,
+- without leaking open TCP connections,
+
+regardless of whether the connection terminates normally or abnormally.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` completes when no
+more data will be received on the connection. Under normal circumstances, it
+exits after exchanging close frames.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` completes when
+the TCP connection is closed.
+
+
+.. _opening-handshake:
+
+Opening handshake
+-----------------
+
+websockets performs the opening handshake when establishing a WebSocket
+connection. On the client side, :meth:`~client.connect` executes it
+before returning the protocol to the caller. On the server side, it's executed
+before passing the protocol to the ``ws_handler`` coroutine handling the
+connection.
+
+While the opening handshake is asymmetrical — the client sends an HTTP Upgrade
+request and the server replies with an HTTP Switching Protocols response —
+websockets aims at keeping the implementation of both sides consistent with
+one another.
+
+On the client side, :meth:`~client.WebSocketClientProtocol.handshake`:
+
+- builds an HTTP request based on the ``uri`` and parameters passed to
+ :meth:`~client.connect`;
+- writes the HTTP request to the network;
+- reads an HTTP response from the network;
+- checks the HTTP response, validates ``extensions`` and ``subprotocol``, and
+ configures the protocol accordingly;
+- moves to the ``OPEN`` state.
+
+On the server side, :meth:`~server.WebSocketServerProtocol.handshake`:
+
+- reads an HTTP request from the network;
+- calls :meth:`~server.WebSocketServerProtocol.process_request` which may
+ abort the WebSocket handshake and return an HTTP response instead; this
+ hook only makes sense on the server side;
+- checks the HTTP request, negotiates ``extensions`` and ``subprotocol``, and
+ configures the protocol accordingly;
+- builds an HTTP response based on the above and parameters passed to
+ :meth:`~server.serve`;
+- writes the HTTP response to the network;
+- moves to the ``OPEN`` state;
+- returns the ``path`` part of the ``uri``.
+
+The most significant asymmetry between the two sides of the opening handshake
+lies in the negotiation of extensions and, to a lesser extent, of the
+subprotocol. The server knows everything about both sides and decides what the
+parameters should be for the connection. The client merely applies them.
+
+If anything goes wrong during the opening handshake, websockets :ref:`fails
+the connection <connection-failure>`.
+
+
+.. _data-transfer:
+
+Data transfer
+-------------
+
+Symmetry
+........
+
+Once the opening handshake has completed, the WebSocket protocol enters the
+data transfer phase. This part is almost symmetrical. There are only two
+differences between a server and a client:
+
+- `client-to-server masking`_: the client masks outgoing frames; the server
+ unmasks incoming frames;
+- `closing the TCP connection`_: the server closes the connection immediately;
+ the client waits for the server to do it.
+
+.. _client-to-server masking: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.3
+.. _closing the TCP connection: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.1
+
+These differences are so minor that all the logic for `data framing`_, for
+`sending and receiving data`_ and for `closing the connection`_ is implemented
+in the same class, :class:`~legacy.protocol.WebSocketCommonProtocol`.
+
+.. _data framing: https://www.rfc-editor.org/rfc/rfc6455.html#section-5
+.. _sending and receiving data: https://www.rfc-editor.org/rfc/rfc6455.html#section-6
+.. _closing the connection: https://www.rfc-editor.org/rfc/rfc6455.html#section-7
+
+The :attr:`~legacy.protocol.WebSocketCommonProtocol.is_client` attribute tells which
+side a protocol instance is managing. This attribute is defined on the
+:attr:`~server.WebSocketServerProtocol` and
+:attr:`~client.WebSocketClientProtocol` classes.
+
+Data flow
+.........
+
+The following diagram shows how data flows between an application built on top
+of websockets and a remote endpoint. It applies regardless of which side is
+the server or the client.
+
+.. image:: protocol.svg
+ :target: _images/protocol.svg
+
+Public methods are shown in green, private methods in yellow, and buffers in
+orange. Methods related to connection termination are omitted; connection
+termination is discussed in another section below.
+
+Receiving data
+..............
+
+The left side of the diagram shows how websockets receives data.
+
+Incoming data is written to a :class:`~asyncio.StreamReader` in order to
+implement flow control and provide backpressure on the TCP connection.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`, which is started
+when the WebSocket connection is established, processes this data.
+
+When it receives data frames, it reassembles fragments and puts the resulting
+messages in the :attr:`~legacy.protocol.WebSocketCommonProtocol.messages` queue.
+
+When it encounters a control frame:
+
+- if it's a close frame, it starts the closing handshake;
+- if it's a ping frame, it answers with a pong frame;
+- if it's a pong frame, it acknowledges the corresponding ping (unless it's an
+ unsolicited pong).
+
+Running this process in a task guarantees that control frames are processed
+promptly. Without such a task, websockets would depend on the application to
+drive the connection by having exactly one coroutine awaiting
+:meth:`~legacy.protocol.WebSocketCommonProtocol.recv` at any time. While this
+happens naturally in many use cases, it cannot be relied upon.
+
+Then :meth:`~legacy.protocol.WebSocketCommonProtocol.recv` fetches the next message
+from the :attr:`~legacy.protocol.WebSocketCommonProtocol.messages` queue, with some
+complexity added for handling backpressure and termination correctly.
+
+Sending data
+............
+
+The right side of the diagram shows how websockets sends data.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.send` writes one or several data
+frames containing the message. While sending a fragmented message, concurrent
+calls to :meth:`~legacy.protocol.WebSocketCommonProtocol.send` are put on hold until
+all fragments are sent. This makes concurrent calls safe.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.ping` writes a ping frame and
+yields a :class:`~asyncio.Future` which will be completed when a matching pong
+frame is received.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.pong` writes a pong frame.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close` writes a close frame and
+waits for the TCP connection to terminate.
+
+Outgoing data is written to a :class:`~asyncio.StreamWriter` in order to
+implement flow control and provide backpressure from the TCP connection.
+
+.. _closing-handshake:
+
+Closing handshake
+.................
+
+When the other side of the connection initiates the closing handshake,
+:meth:`~legacy.protocol.WebSocketCommonProtocol.read_message` receives a close
+frame while in the ``OPEN`` state. It moves to the ``CLOSING`` state, sends a
+close frame, and returns :obj:`None`, causing
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` to terminate.
+
+When this side of the connection initiates the closing handshake with
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close`, it moves to the ``CLOSING``
+state and sends a close frame. When the other side sends a close frame,
+:meth:`~legacy.protocol.WebSocketCommonProtocol.read_message` receives it in the
+``CLOSING`` state and returns :obj:`None`, also causing
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` to terminate.
+
+If the other side doesn't send a close frame within the connection's close
+timeout, websockets :ref:`fails the connection <connection-failure>`.
+
+The closing handshake can take up to ``2 * close_timeout``: one
+``close_timeout`` to write a close frame and one ``close_timeout`` to receive
+a close frame.
+
+Then websockets terminates the TCP connection.
+
+
+.. _connection-termination:
+
+Connection termination
+----------------------
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task`, which is
+started when the WebSocket connection is established, is responsible for
+eventually closing the TCP connection.
+
+First :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` waits
+for :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` to terminate,
+which may happen as a result of:
+
+- a successful closing handshake: as explained above, this exits the infinite
+ loop in :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`;
+- a timeout while waiting for the closing handshake to complete: this cancels
+ :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`;
+- a protocol error, including connection errors: depending on the exception,
+ :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` :ref:`fails the
+ connection <connection-failure>` with a suitable code and exits.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` is separate
+from :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` to make it
+easier to implement the timeout on the closing handshake. Canceling
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` creates no risk
+of canceling :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task`
+and failing to close the TCP connection, thus leaking resources.
+
+Then :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` cancels
+:meth:`~legacy.protocol.WebSocketCommonProtocol.keepalive_ping`. This task has no
+protocol compliance responsibilities. Terminating it to avoid leaking it is
+the only concern.
+
+Terminating the TCP connection can take up to ``2 * close_timeout`` on the
+server side and ``3 * close_timeout`` on the client side. Clients start by
+waiting for the server to close the connection, hence the extra
+``close_timeout``. Then both sides go through the following steps until the
+TCP connection is lost: half-closing the connection (only for non-TLS
+connections), closing the connection, aborting the connection. At this point
+the connection drops regardless of what happens on the network.
+
+
+.. _connection-failure:
+
+Connection failure
+------------------
+
+If the opening handshake doesn't complete successfully, websockets fails the
+connection by closing the TCP connection.
+
+Once the opening handshake has completed, websockets fails the connection by
+canceling :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`
+and sending a close frame if appropriate.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` exits, unblocking
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task`, which closes
+the TCP connection.
+
+
+.. _server-shutdown:
+
+Server shutdown
+---------------
+
+:class:`~websockets.server.WebSocketServer` closes asynchronously like
+:class:`asyncio.Server`. The shutdown happen in two steps:
+
+1. Stop listening and accepting new connections;
+2. Close established connections with close code 1001 (going away) or, if
+ the opening handshake is still in progress, with HTTP status code 503
+ (Service Unavailable).
+
+The first call to :class:`~websockets.server.WebSocketServer.close` starts a
+task that performs this sequence. Further calls are ignored. This is the
+easiest way to make :class:`~websockets.server.WebSocketServer.close` and
+:class:`~websockets.server.WebSocketServer.wait_closed` idempotent.
+
+
+.. _cancellation:
+
+Cancellation
+------------
+
+User code
+.........
+
+websockets provides a WebSocket application server. It manages connections and
+passes them to user-provided connection handlers. This is an *inversion of
+control* scenario: library code calls user code.
+
+If a connection drops, the corresponding handler should terminate. If the
+server shuts down, all connection handlers must terminate. Canceling
+connection handlers would terminate them.
+
+However, using cancellation for this purpose would require all connection
+handlers to handle it properly. For example, if a connection handler starts
+some tasks, it should catch :exc:`~asyncio.CancelledError`, terminate or
+cancel these tasks, and then re-raise the exception.
+
+Cancellation is tricky in :mod:`asyncio` applications, especially when it
+interacts with finalization logic. In the example above, what if a handler
+gets interrupted with :exc:`~asyncio.CancelledError` while it's finalizing
+the tasks it started, after detecting that the connection dropped?
+
+websockets considers that cancellation may only be triggered by the caller of
+a coroutine when it doesn't care about the results of that coroutine anymore.
+(Source: `Guido van Rossum <https://groups.google.com/forum/#!msg
+/python-tulip/LZQe38CR3bg/7qZ1p_q5yycJ>`_). Since connection handlers run
+arbitrary user code, websockets has no way of deciding whether that code is
+still doing something worth caring about.
+
+For these reasons, websockets never cancels connection handlers. Instead it
+expects them to detect when the connection is closed, execute finalization
+logic if needed, and exit.
+
+Conversely, cancellation isn't a concern for WebSocket clients because they
+don't involve inversion of control.
+
+Library
+.......
+
+Most :doc:`public APIs <../reference/index>` of websockets are coroutines.
+They may be canceled, for example if the user starts a task that calls these
+coroutines and cancels the task later. websockets must handle this situation.
+
+Cancellation during the opening handshake is handled like any other exception:
+the TCP connection is closed and the exception is re-raised. This can only
+happen on the client side. On the server side, the opening handshake is
+managed by websockets and nothing results in a cancellation.
+
+Once the WebSocket connection is established, internal tasks
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` and
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` mustn't get
+accidentally canceled if a coroutine that awaits them is canceled. In other
+words, they must be shielded from cancellation.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.recv` waits for the next message in
+the queue or for :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`
+to terminate, whichever comes first. It relies on :func:`~asyncio.wait` for
+waiting on two futures in parallel. As a consequence, even though it's waiting
+on a :class:`~asyncio.Future` signaling the next message and on
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`, it doesn't
+propagate cancellation to them.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.ensure_open` is called by
+:meth:`~legacy.protocol.WebSocketCommonProtocol.send`,
+:meth:`~legacy.protocol.WebSocketCommonProtocol.ping`, and
+:meth:`~legacy.protocol.WebSocketCommonProtocol.pong`. When the connection state is
+``CLOSING``, it waits for
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` but shields it to
+prevent cancellation.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close` waits for the data transfer
+task to terminate with :func:`~asyncio.timeout`. If it's canceled or if the
+timeout elapses, :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`
+is canceled, which is correct at this point.
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close` then waits for
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` but shields it
+to prevent cancellation.
+
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close` and
+:meth:`~legacy.protocol.WebSocketCommonProtocol.fail_connection` are the only
+places where :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` may
+be canceled.
+
+:attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task` starts by
+waiting for :attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task`. It
+catches :exc:`~asyncio.CancelledError` to prevent a cancellation of
+:attr:`~legacy.protocol.WebSocketCommonProtocol.transfer_data_task` from propagating
+to :attr:`~legacy.protocol.WebSocketCommonProtocol.close_connection_task`.
+
+.. _backpressure:
+
+Backpressure
+------------
+
+.. note::
+
+ This section discusses backpressure from the perspective of a server but
+ the concept applies to clients symmetrically.
+
+With a naive implementation, if a server receives inputs faster than it can
+process them, or if it generates outputs faster than it can send them, data
+accumulates in buffers, eventually causing the server to run out of memory and
+crash.
+
+The solution to this problem is backpressure. Any part of the server that
+receives inputs faster than it can process them and send the outputs
+must propagate that information back to the previous part in the chain.
+
+websockets is designed to make it easy to get backpressure right.
+
+For incoming data, websockets builds upon :class:`~asyncio.StreamReader` which
+propagates backpressure to its own buffer and to the TCP stream. Frames are
+parsed from the input stream and added to a bounded queue. If the queue fills
+up, parsing halts until the application reads a frame.
+
+For outgoing data, websockets builds upon :class:`~asyncio.StreamWriter` which
+implements flow control. If the output buffers grow too large, it waits until
+they're drained. That's why all APIs that write frames are asynchronous.
+
+Of course, it's still possible for an application to create its own unbounded
+buffers and break the backpressure. Be careful with queues.
+
+
+.. _buffers:
+
+Buffers
+-------
+
+.. note::
+
+ This section discusses buffers from the perspective of a server but it
+ applies to clients as well.
+
+An asynchronous systems works best when its buffers are almost always empty.
+
+For example, if a client sends data too fast for a server, the queue of
+incoming messages will be constantly full. The server will always be 32
+messages (by default) behind the client. This consumes memory and increases
+latency for no good reason. The problem is called bufferbloat.
+
+If buffers are almost always full and that problem cannot be solved by adding
+capacity — typically because the system is bottlenecked by the output and
+constantly regulated by backpressure — reducing the size of buffers minimizes
+negative consequences.
+
+By default websockets has rather high limits. You can decrease them according
+to your application's characteristics.
+
+Bufferbloat can happen at every level in the stack where there is a buffer.
+For each connection, the receiving side contains these buffers:
+
+- OS buffers: tuning them is an advanced optimization.
+- :class:`~asyncio.StreamReader` bytes buffer: the default limit is 64 KiB.
+ You can set another limit by passing a ``read_limit`` keyword argument to
+ :func:`~client.connect()` or :func:`~server.serve`.
+- Incoming messages :class:`~collections.deque`: its size depends both on
+ the size and the number of messages it contains. By default the maximum
+ UTF-8 encoded size is 1 MiB and the maximum number is 32. In the worst case,
+ after UTF-8 decoding, a single message could take up to 4 MiB of memory and
+ the overall memory consumption could reach 128 MiB. You should adjust these
+ limits by setting the ``max_size`` and ``max_queue`` keyword arguments of
+ :func:`~client.connect()` or :func:`~server.serve` according to your
+ application's requirements.
+
+For each connection, the sending side contains these buffers:
+
+- :class:`~asyncio.StreamWriter` bytes buffer: the default size is 64 KiB.
+ You can set another limit by passing a ``write_limit`` keyword argument to
+ :func:`~client.connect()` or :func:`~server.serve`.
+- OS buffers: tuning them is an advanced optimization.
+
+Concurrency
+-----------
+
+Awaiting any combination of :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`,
+:meth:`~legacy.protocol.WebSocketCommonProtocol.send`,
+:meth:`~legacy.protocol.WebSocketCommonProtocol.close`
+:meth:`~legacy.protocol.WebSocketCommonProtocol.ping`, or
+:meth:`~legacy.protocol.WebSocketCommonProtocol.pong` concurrently is safe, including
+multiple calls to the same method, with one exception and one limitation.
+
+* **Only one coroutine can receive messages at a time.** This constraint
+ avoids non-deterministic behavior (and simplifies the implementation). If a
+ coroutine is awaiting :meth:`~legacy.protocol.WebSocketCommonProtocol.recv`,
+ awaiting it again in another coroutine raises :exc:`RuntimeError`.
+
+* **Sending a fragmented message forces serialization.** Indeed, the WebSocket
+ protocol doesn't support multiplexing messages. If a coroutine is awaiting
+ :meth:`~legacy.protocol.WebSocketCommonProtocol.send` to send a fragmented message,
+ awaiting it again in another coroutine waits until the first call completes.
+ This will be transparent in many cases. It may be a concern if the
+ fragmented message is generated slowly by an asynchronous iterator.
+
+Receiving frames is independent from sending frames. This isolates
+:meth:`~legacy.protocol.WebSocketCommonProtocol.recv`, which receives frames, from
+the other methods, which send frames.
+
+While the connection is open, each frame is sent with a single write. Combined
+with the concurrency model of :mod:`asyncio`, this enforces serialization. The
+only other requirement is to prevent interleaving other data frames in the
+middle of a fragmented message.
+
+After the connection is closed, sending a frame raises
+:exc:`~websockets.exceptions.ConnectionClosed`, which is safe.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/index.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/index.rst
new file mode 100644
index 0000000000..120a3dd327
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/index.rst
@@ -0,0 +1,18 @@
+Topic guides
+============
+
+Get a deeper understanding of how websockets is built and why.
+
+.. toctree::
+ :titlesonly:
+
+ deployment
+ logging
+ authentication
+ broadcast
+ compression
+ timeouts
+ design
+ memory
+ security
+ performance
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.graffle b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.graffle
new file mode 100644
index 0000000000..bd888dcf31
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.graffle
@@ -0,0 +1,25 @@
+��][W�8~~���}�G�%��a�.�0KC��N�����J���i�i���ߒs�5n����cUI咾������}틌b/ ~Y�:Z�d��� ~Y}��u�Z�����?v����j#ߋ����������j�G#_�Z;���`��� �Vk�pU[=O�ћV���R���CE���p$���2[�M�U(f�{A��zN����ƅ��l;��E�W2�\�u���B�$r �M�њ]�X�lϱ��t��Ɏ"[]��'<�&H����D�x�������}�7ZS�5�B'�OL�9ɑl�fYOD'a��s'�h,[��-۹PE.7:��9��٧d�"������
+�i�zM�&_�L,���*�mߎ������2K,�;�L�$�� Y'��eF9�x�Y�Yj.y��ٗ�X�`�Gyq@�sE̮���c�1 �K��m;�b�G�7�0Se��|Ef�/Y��k����a���AP� WeJ�;#ہ,�����M��"=�0K��V�0c�?�m��IE<�����:��o(~cp�����*�0*󷯆2��=@�U�*��x�ȷ�:��W��¡9C�m~]��WϗݫQ����i�f�:� �2��%�N�w��M
+�����<^ k`2}�0H��~���+��F�'�/2�T�s��\kS��*WO7��<&&{�v��s��(�yF[x�������J�%&Eq­���Ց�jXX:% ƅ!���f`�[#�-D-$�y]�݌���&���)Lr;wf�kM[E��톗yMe��m�}���pV�V�ݎ���a�fu1M͗3a=�۹*��m?NҜ�k{���Q]�<79/POZ��rͶ�l�f����`�=�LkM#��[Y&�%8��*ܤ��s�X)������a��0Ma0
+6�2�B�JKb@i���i"!8����u�;��H�����py2:��ǝwݥ��nz=(�P�������E����������֫�w�b�����QlC�)&$g��n�n1*A�Ж���{sF��,؊��٤��� O����7�X�b� Ģ&C�04�ʽ�ۻ�0
+dtb��8�� �Bp�X ��h��&Q~M7��K��%*�]�%Sd/J��g���8�&���� m��8����g�#���K����>����+���w��(� ���d}+��wݟ���Q`��{�t�+�����8���)տz���\����~odGn/��8�_�Iz�:Bӓ���0RC�$��$ �$��N�$Pc(�׋;G�����78OdзU�C++�1�z��P����v!����/��Tx}[��
+���:���GQr�����H�� �O��g�=u�i�V�})3tF
+Q
+� ��%«��c/�u�gO���O�t�>^ǂ�����.�͏a�wLę���R�D��#F����I��@J���dfE>��s�X����t�(� �C0�"��V)8���aA�+h��kL˄��&LsMc\�b�b!L�xAn��D�z`��D|W��'�OH���"Ne�ځ��#�,np��֒�ӗQo��p��������v�Cӹ�w�'Øb�#bppO ��2����
+�Y�c�YF:�����j`������ �:�A�V
+� �nzD܂S�8�X�B��qk6�mp��q�d�0O�ʦ^L��s����*���7��h�=�0�i>'a�k(�қ�kZE�;��rKW>àG�֌$�ʑ�����2lQ]�hnRaLM�b�*_�|�E���e��(*d��2�����%4�c�sv���z����)���H:_�����ӊR���4���4��ҁ/�=b��b�
+u�`����]�jʔ���]
+n\�]]
+rW�WӸ�׸�b:������R�fg��
+E:f&5-�H�ݯ�7���
+Ͳ��[4��zՑ����-r��O�o��&�P�u�b���~-�9�H+���P�z�1�[��5�7��q=��iV��t5[��I-{���{�[^ۂ�C�'M��.sS��U�_��o�{O��I������O���{#ǰt�N̤�p<��rj��4�yA���ENi�eYwANw��9/9�z̽�GNw��97��Vq",A *M�~����N��"���}!������,��Ŀ�a��&��:�;�8�Zywy9�>��Z������/���o��1] �0��Fj�nh�ԗ�ԣ���DŽ)�q��9�T��
+N_�G=:<���.�TK�W��<7?ZSܓZ���-����V�YWy����0�e�w�Q�n���e��*{Y��۩la� �Q�
+��/n'�v�2>���&.����{g�}�KŤ#!��@ƕ���[��#܍��E��R��aq7����dDEm�ߺ�z�,�ɭ�����S�h�J~վ�Z��i���#���8����.j� m8N7�v�
+s�k/$%u�� �y�Nn���X�Uj�)mGv��K�5KRz?s7xAU7L*�jOo5{ �An�jV�l)xOD���R�)�L.Ñ�}l ��"�T�6]u���9��UT��?GŻ����O,�F�ZG�:fo{c��m�'�;�~&r�':�$�`C&�/��2M[PM��
+͋qs��
+�$����V����Y�}?��"����Y�I {a���^W��;��T��ޭ-h���������#��-���^ئ�o����=o��G �}��w���=z�?����mH��e�.��������a��� 4�~�/���,���'Q�2*7� 1mT��5�ON����/����ZLa���4���o��7�aj�5S��[
+U��D����H���?QA�S�7=E�E��V�Q ��Xw�H�=
+���m�Ix��G3����������w��j�&�(*�!ԩ�[��n��%���Yv��;���c��5ox����
+/�I����f5�^]�Ŧ|{E��T��8�&Lߝ��>MT���2�;��
+�)�*}���)�k�4k�j�z���l��y����<r���̾-�8��9[T����o��I��R d��i�O�`��J�T���L�±���\Ө)��p���ɩ�Ŝ��Х�k�F��w
+�Β���01�٭�����ס6W�� �Ǵj
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.svg b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.svg
new file mode 100644
index 0000000000..0a9818d293
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/lifecycle.svg
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="-14.3464565 112.653543 624.6929 372.69291" width="624.6929pt" height="372.69291pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.2 <dc:date>2018-07-29 15:25:34 +0000</dc:date></metadata><defs><font-face font-family="Courier New" font-size="12" panose-1="2 7 6 9 2 2 5 2 4 4" units-per-em="1000" underline-position="-232.91016" underline-thickness="100.097656" slope="0" x-height="443.35938" cap-height="591.79688" ascent="832.51953" descent="-300.29297" font-weight="bold"><font-face-src><font-face-name name="CourierNewPS-BoldMT"/></font-face-src></font-face><font-face font-family="Courier New" font-size="12" panose-1="2 7 3 9 2 2 5 2 4 4" units-per-em="1000" underline-position="-232.91016" underline-thickness="41.015625" slope="0" x-height="422.85156" cap-height="571.28906" ascent="832.51953" descent="-300.29297" font-weight="500"><font-face-src><font-face-name name="CourierNewPSMT"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="StickArrow_Marker" viewBox="-1 -4 8 8" markerWidth="8" markerHeight="8" color="black"><g><path d="M 5.8666667 0 L 0 0 M 0 -2.2 L 5.8666667 0 L 0 2.2" fill="none" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Verdana" font-size="12" panose-1="2 11 6 4 3 5 4 4 2 4" units-per-em="1000" underline-position="-87.890625" underline-thickness="58.59375" slope="0" x-height="545.41016" cap-height="727.0508" ascent="1005.3711" descent="-209.96094" font-weight="500"><font-face-src><font-face-name name="Verdana"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><g><title>Layer 1</title><text transform="translate(19.173228 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="1.5138254" y="10" textLength="72.01172">CONNECTING</tspan></text><text transform="translate(160.90551 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="23.117341" y="10" textLength="28.804688">OPEN</tspan></text><text transform="translate(359.3307 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="12.315583" y="10" textLength="50.408203">CLOSING</tspan></text><text transform="translate(501.063 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="15.916169" y="10" textLength="43.20703">CLOSED</tspan></text><line x1="198.4252" y1="170.07874" x2="198.4252" y2="453.5433" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" stroke-dasharray="1,3"/><line x1="396.8504" y1="170.07874" x2="396.8504" y2="453.5433" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" stroke-dasharray="1,3"/><line x1="538.58267" y1="170.07874" x2="538.58267" y2="453.5433" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" stroke-dasharray="1,3"/><line x1="56.692913" y1="170.07874" x2="56.692913" y2="453.5433" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" stroke-dasharray="1,3"/><path d="M 240.94488 240.94488 L 411.02362 240.94488 C 418.85128 240.94488 425.19685 247.29045 425.19685 255.11811 L 425.19685 255.11811 C 425.19685 262.94577 418.85128 269.29134 411.02362 269.29134 L 240.94488 269.29134 C 233.11722 269.29134 226.77165 262.94577 226.77165 255.11811 L 226.77165 255.11811 C 226.77165 247.29045 233.11722 240.94488 240.94488 240.94488 Z" fill="#dadada"/><path d="M 240.94488 240.94488 L 411.02362 240.94488 C 418.85128 240.94488 425.19685 247.29045 425.19685 255.11811 L 425.19685 255.11811 C 425.19685 262.94577 418.85128 269.29134 411.02362 269.29134 L 240.94488 269.29134 C 233.11722 269.29134 226.77165 262.94577 226.77165 255.11811 L 226.77165 255.11811 C 226.77165 247.29045 233.11722 240.94488 240.94488 240.94488 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(226.77165 248.11811)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="52.40498" y="10" textLength="93.615234">transfer_data</tspan></text><path d="M 240.94488 354.3307 L 552.7559 354.3307 C 560.58356 354.3307 566.92913 360.67628 566.92913 368.50393 L 566.92913 368.50393 C 566.92913 376.3316 560.58356 382.67716 552.7559 382.67716 L 240.94488 382.67716 C 233.11722 382.67716 226.77165 376.3316 226.77165 368.50393 L 226.77165 368.50393 C 226.77165 360.67628 233.11722 354.3307 240.94488 354.3307 Z" fill="#dadada"/><path d="M 240.94488 354.3307 L 552.7559 354.3307 C 560.58356 354.3307 566.92913 360.67628 566.92913 368.50393 L 566.92913 368.50393 C 566.92913 376.3316 560.58356 382.67716 552.7559 382.67716 L 240.94488 382.67716 C 233.11722 382.67716 226.77165 376.3316 226.77165 368.50393 L 226.77165 368.50393 C 226.77165 360.67628 233.11722 354.3307 240.94488 354.3307 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(231.77165 361.50393)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="107.469364" y="10" textLength="115.21875">close_connection</tspan></text><path d="M 99.2126 184.25197 L 155.90551 184.25197 C 163.73317 184.25197 170.07874 190.59754 170.07874 198.4252 L 170.07874 198.4252 C 170.07874 206.25285 163.73317 212.59842 155.90551 212.59842 L 99.2126 212.59842 C 91.38494 212.59842 85.03937 206.25285 85.03937 198.4252 L 85.03937 198.4252 C 85.03937 190.59754 91.38494 184.25197 99.2126 184.25197 Z" fill="#6f6"/><path d="M 99.2126 184.25197 L 155.90551 184.25197 C 163.73317 184.25197 170.07874 190.59754 170.07874 198.4252 L 170.07874 198.4252 C 170.07874 206.25285 163.73317 212.59842 155.90551 212.59842 L 99.2126 212.59842 C 91.38494 212.59842 85.03937 206.25285 85.03937 198.4252 L 85.03937 198.4252 C 85.03937 190.59754 91.38494 184.25197 99.2126 184.25197 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(90.03937 191.4252)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="12.315583" y="10" textLength="50.408203">connect</tspan></text><path d="M 240.94488 184.25197 L 496.063 184.25197 C 503.89065 184.25197 510.23622 190.59754 510.23622 198.4252 L 510.23622 198.4252 C 510.23622 206.25285 503.89065 212.59842 496.063 212.59842 L 240.94488 212.59842 C 233.11722 212.59842 226.77165 206.25285 226.77165 198.4252 L 226.77165 198.4252 C 226.77165 190.59754 233.11722 184.25197 240.94488 184.25197 Z" fill="#6f6"/><path d="M 240.94488 184.25197 L 496.063 184.25197 C 503.89065 184.25197 510.23622 190.59754 510.23622 198.4252 L 510.23622 198.4252 C 510.23622 206.25285 503.89065 212.59842 496.063 212.59842 L 240.94488 212.59842 C 233.11722 212.59842 226.77165 206.25285 226.77165 198.4252 L 226.77165 198.4252 C 226.77165 190.59754 233.11722 184.25197 240.94488 184.25197 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(231.77165 191.4252)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="17.912947" y="10" textLength="100.816406">recv / send / </tspan><tspan font-family="Courier New" font-size="12" font-weight="500" x="118.72935" y="10" textLength="93.615234">ping / pong /</tspan><tspan font-family="Courier New" font-size="12" font-weight="bold" x="212.34459" y="10" textLength="50.408203"> close </tspan></text><path d="M 170.07874 198.4252 L 183.97874 198.4252 L 198.4252 198.4252 L 198.4252 283.46457 L 198.4252 368.50393 L 212.87165 368.50393 L 215.37165 368.50393" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(75.86614 410.19685)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="27.760296" y="12" textLength="52.083984">opening </tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="19.164593" y="27" textLength="58.02539">handshak</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="77.072796" y="27" textLength="7.1484375">e</tspan></text><text transform="translate(416.02362 410.19685)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="19.182171" y="12" textLength="65.021484">connection</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="16.861858" y="27" textLength="69.66211">termination</tspan></text><text transform="translate(217.59842 410.19685)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="41.03058" y="12" textLength="40.6875">data tr</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="81.507143" y="12" textLength="37.541016">ansfer</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="18.211245" y="27" textLength="116.625">&amp; closing handshak</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="134.71906" y="27" textLength="7.1484375">e</tspan></text><path d="M 425.19685 255.11811 L 439.09685 255.11811 L 453.5433 255.11811 L 453.5433 342.9307" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 240.94488 297.6378 L 411.02362 297.6378 C 418.85128 297.6378 425.19685 303.98336 425.19685 311.81102 L 425.19685 311.81102 C 425.19685 319.63868 418.85128 325.98425 411.02362 325.98425 L 240.94488 325.98425 C 233.11722 325.98425 226.77165 319.63868 226.77165 311.81102 L 226.77165 311.81102 C 226.77165 303.98336 233.11722 297.6378 240.94488 297.6378 Z" fill="#dadada"/><path d="M 240.94488 297.6378 L 411.02362 297.6378 C 418.85128 297.6378 425.19685 303.98336 425.19685 311.81102 L 425.19685 311.81102 C 425.19685 319.63868 418.85128 325.98425 411.02362 325.98425 L 240.94488 325.98425 C 233.11722 325.98425 226.77165 319.63868 226.77165 311.81102 L 226.77165 311.81102 C 226.77165 303.98336 233.11722 297.6378 240.94488 297.6378 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(226.77165 304.81102)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="48.804395" y="10" textLength="100.816406">keepalive_ping</tspan></text><line x1="198.4252" y1="255.11811" x2="214.62165" y2="255.11811" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="198.4252" y1="311.81102" x2="215.37165" y2="311.81102" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/></g></g></svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/logging.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/logging.rst
new file mode 100644
index 0000000000..e7abd96ce5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/logging.rst
@@ -0,0 +1,245 @@
+Logging
+=======
+
+.. currentmodule:: websockets
+
+Logs contents
+-------------
+
+When you run a WebSocket client, your code calls coroutines provided by
+websockets.
+
+If an error occurs, websockets tells you by raising an exception. For example,
+it raises a :exc:`~exceptions.ConnectionClosed` exception if the other side
+closes the connection.
+
+When you run a WebSocket server, websockets accepts connections, performs the
+opening handshake, runs the connection handler coroutine that you provided,
+and performs the closing handshake.
+
+Given this `inversion of control`_, if an error happens in the opening
+handshake or if the connection handler crashes, there is no way to raise an
+exception that you can handle.
+
+.. _inversion of control: https://en.wikipedia.org/wiki/Inversion_of_control
+
+Logs tell you about these errors.
+
+Besides errors, you may want to record the activity of the server.
+
+In a request/response protocol such as HTTP, there's an obvious way to record
+activity: log one event per request/response. Unfortunately, this solution
+doesn't work well for a bidirectional protocol such as WebSocket.
+
+Instead, when running as a server, websockets logs one event when a
+`connection is established`_ and another event when a `connection is
+closed`_.
+
+.. _connection is established: https://www.rfc-editor.org/rfc/rfc6455.html#section-4
+.. _connection is closed: https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.4
+
+By default, websockets doesn't log an event for every message. That would be
+excessive for many applications exchanging small messages at a fast rate. If
+you need this level of detail, you could add logging in your own code.
+
+Finally, you can enable debug logs to get details about everything websockets
+is doing. This can be useful when developing clients as well as servers.
+
+See :ref:`log levels <log-levels>` below for a list of events logged by
+websockets logs at each log level.
+
+Configure logging
+-----------------
+
+websockets relies on the :mod:`logging` module from the standard library in
+order to maximize compatibility and integrate nicely with other libraries::
+
+ import logging
+
+websockets logs to the ``"websockets.client"`` and ``"websockets.server"``
+loggers.
+
+websockets doesn't provide a default logging configuration because
+requirements vary a lot depending on the environment.
+
+Here's a basic configuration for a server in production::
+
+ logging.basicConfig(
+ format="%(asctime)s %(message)s",
+ level=logging.INFO,
+ )
+
+Here's how to enable debug logs for development::
+
+ logging.basicConfig(
+ format="%(message)s",
+ level=logging.DEBUG,
+ )
+
+Furthermore, websockets adds a ``websocket`` attribute to log records, so you
+can include additional information about the current connection in logs.
+
+You could attempt to add information with a formatter::
+
+ # this doesn't work!
+ logging.basicConfig(
+ format="{asctime} {websocket.id} {websocket.remote_address[0]} {message}",
+ level=logging.INFO,
+ style="{",
+ )
+
+However, this technique runs into two problems:
+
+* The formatter applies to all records. It will crash if it receives a record
+ without a ``websocket`` attribute. For example, this happens when logging
+ that the server starts because there is no current connection.
+
+* Even with :meth:`str.format` style, you're restricted to attribute and index
+ lookups, which isn't enough to implement some fairly simple requirements.
+
+There's a better way. :func:`~client.connect` and :func:`~server.serve` accept
+a ``logger`` argument to override the default :class:`~logging.Logger`. You
+can set ``logger`` to a :class:`~logging.LoggerAdapter` that enriches logs.
+
+For example, if the server is behind a reverse
+proxy, :attr:`~legacy.protocol.WebSocketCommonProtocol.remote_address` gives
+the IP address of the proxy, which isn't useful. IP addresses of clients are
+provided in an HTTP header set by the proxy.
+
+Here's how to include them in logs, assuming they're in the
+``X-Forwarded-For`` header::
+
+ logging.basicConfig(
+ format="%(asctime)s %(message)s",
+ level=logging.INFO,
+ )
+
+ class LoggerAdapter(logging.LoggerAdapter):
+ """Add connection ID and client IP address to websockets logs."""
+ def process(self, msg, kwargs):
+ try:
+ websocket = kwargs["extra"]["websocket"]
+ except KeyError:
+ return msg, kwargs
+ xff = websocket.request_headers.get("X-Forwarded-For")
+ return f"{websocket.id} {xff} {msg}", kwargs
+
+ async with websockets.serve(
+ ...,
+ # Python < 3.10 requires passing None as the second argument.
+ logger=LoggerAdapter(logging.getLogger("websockets.server"), None),
+ ):
+ ...
+
+Logging to JSON
+---------------
+
+Even though :mod:`logging` predates structured logging, it's still possible to
+output logs as JSON with a bit of effort.
+
+First, we need a :class:`~logging.Formatter` that renders JSON:
+
+.. literalinclude:: ../../example/logging/json_log_formatter.py
+
+Then, we configure logging to apply this formatter::
+
+ handler = logging.StreamHandler()
+ handler.setFormatter(formatter)
+
+ logger = logging.getLogger()
+ logger.addHandler(handler)
+ logger.setLevel(logging.INFO)
+
+Finally, we populate the ``event_data`` custom attribute in log records with
+a :class:`~logging.LoggerAdapter`::
+
+ class LoggerAdapter(logging.LoggerAdapter):
+ """Add connection ID and client IP address to websockets logs."""
+ def process(self, msg, kwargs):
+ try:
+ websocket = kwargs["extra"]["websocket"]
+ except KeyError:
+ return msg, kwargs
+ kwargs["extra"]["event_data"] = {
+ "connection_id": str(websocket.id),
+ "remote_addr": websocket.request_headers.get("X-Forwarded-For"),
+ }
+ return msg, kwargs
+
+ async with websockets.serve(
+ ...,
+ # Python < 3.10 requires passing None as the second argument.
+ logger=LoggerAdapter(logging.getLogger("websockets.server"), None),
+ ):
+ ...
+
+Disable logging
+---------------
+
+If your application doesn't configure :mod:`logging`, Python outputs messages
+of severity ``WARNING`` and higher to :data:`~sys.stderr`. As a consequence,
+you will see a message and a stack trace if a connection handler coroutine
+crashes or if you hit a bug in websockets.
+
+If you want to disable this behavior for websockets, you can add
+a :class:`~logging.NullHandler`::
+
+ logging.getLogger("websockets").addHandler(logging.NullHandler())
+
+Additionally, if your application configures :mod:`logging`, you must disable
+propagation to the root logger, or else its handlers could output logs::
+
+ logging.getLogger("websockets").propagate = False
+
+Alternatively, you could set the log level to ``CRITICAL`` for the
+``"websockets"`` logger, as the highest level currently used is ``ERROR``::
+
+ logging.getLogger("websockets").setLevel(logging.CRITICAL)
+
+Or you could configure a filter to drop all messages::
+
+ logging.getLogger("websockets").addFilter(lambda record: None)
+
+.. _log-levels:
+
+Log levels
+----------
+
+Here's what websockets logs at each level.
+
+``ERROR``
+.........
+
+* Exceptions raised by connection handler coroutines in servers
+* Exceptions resulting from bugs in websockets
+
+``WARNING``
+...........
+
+* Failures in :func:`~websockets.broadcast`
+
+``INFO``
+........
+
+* Server starting and stopping
+* Server establishing and closing connections
+* Client reconnecting automatically
+
+``DEBUG``
+.........
+
+* Changes to the state of connections
+* Handshake requests and responses
+* All frames sent and received
+* Steps to close a connection
+* Keepalive pings and pongs
+* Errors handled transparently
+
+Debug messages have cute prefixes that make logs easier to scan:
+
+* ``>`` - send something
+* ``<`` - receive something
+* ``=`` - set connection state
+* ``x`` - shut down connection
+* ``%`` - manage pings and pongs
+* ``!`` - handle errors and timeouts
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/memory.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/memory.rst
new file mode 100644
index 0000000000..e44247a77c
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/memory.rst
@@ -0,0 +1,48 @@
+Memory usage
+============
+
+.. currentmodule:: websockets
+
+In most cases, memory usage of a WebSocket server is proportional to the
+number of open connections. When a server handles thousands of connections,
+memory usage can become a bottleneck.
+
+Memory usage of a single connection is the sum of:
+
+1. the baseline amount of memory websockets requires for each connection,
+2. the amount of data held in buffers before the application processes it,
+3. any additional memory allocated by the application itself.
+
+Baseline
+--------
+
+Compression settings are the main factor affecting the baseline amount of
+memory used by each connection.
+
+With websockets' defaults, on the server side, a single connections uses
+70 KiB of memory.
+
+Refer to the :doc:`topic guide on compression <../topics/compression>` to
+learn more about tuning compression settings.
+
+Buffers
+-------
+
+Under normal circumstances, buffers are almost always empty.
+
+Under high load, if a server receives more messages than it can process,
+bufferbloat can result in excessive memory usage.
+
+By default websockets has generous limits. It is strongly recommended to adapt
+them to your application. When you call :func:`~server.serve`:
+
+- Set ``max_size`` (default: 1 MiB, UTF-8 encoded) to the maximum size of
+ messages your application generates.
+- Set ``max_queue`` (default: 32) to the maximum number of messages your
+ application expects to receive faster than it can process them. The queue
+ provides burst tolerance without slowing down the TCP connection.
+
+Furthermore, you can lower ``read_limit`` and ``write_limit`` (default:
+64 KiB) to reduce the size of buffers for incoming and outgoing data.
+
+The design document provides :ref:`more details about buffers <buffers>`.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/performance.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/performance.rst
new file mode 100644
index 0000000000..45e23b2390
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/performance.rst
@@ -0,0 +1,20 @@
+Performance
+===========
+
+Here are tips to optimize performance.
+
+uvloop
+------
+
+You can make a websockets application faster by running it with uvloop_.
+
+(This advice isn't specific to websockets. It applies to any :mod:`asyncio`
+application.)
+
+.. _uvloop: https://github.com/MagicStack/uvloop
+
+broadcast
+---------
+
+:func:`~websockets.broadcast` is the most efficient way to send a message to
+many clients.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.graffle b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.graffle
new file mode 100644
index 0000000000..04a9e7acb5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.graffle
@@ -0,0 +1,37 @@
+��]ks�6����
+���[Ӹ��q�t�n�xc'�v<ӡ%X�"U���f���J�x-J���ۉl�A��\q��_FQ�N�0�|�=����~2�Ꮟ���#���'�����ѯ/z�(�����g�_������Ǒ��}~��w����Q���}��q��Y����=??�C����!�v�d����5t�
+�A>x ���^|;���G�=��/�����~\��U<�_��o�b�z�ӧ���寗M��a?ȡ�Ӟ獂4
+�/�=���)��KFq8L���{��+
+NO#-���HJ�X(�P>��D�d����&y�7��$���Ӊ޽��,�2��p��Y؟�͞}Ff(��k�a|����o���b���=����2`�b?
+�f��$
+w�5y�|A9��<�S���"���1O/B�ɧ�������ip��b`oޖ�3:�����L�0ӿ%ɨÊ���A�6
+��b-\Nf1��W�hq����9o�J��(ދ�a�n���>}�bN�� zJ����'\*�d��p��0��y�7H�w��A��� �@E��~�5�$i����H�a��7��5Vm�<��Qpq��ƽ�����~���w�S飋q�qLS�-��?�8�s�|jIcng<3�c��ꊭ2�|<��X[e�I���O��un(,����>���猯J��|W�r�t�w_��.�C���R$�U�)�Qʐ���|I)�Xq�}�J� �ǂbd\}�
+��5#��JH�+�S /o�N+�4f5;�yy�v|i��\ڑ���K �Ҵ2���[�4�Z�Ϣi�gJo��W<���A��B|DY!C�DGA��ن�1�g�! ϯ���Κ@\g���* *Ʃ���1��+*��1�=)�/��1�2#�$�UT(.a�()a��Q&��>RJ�oߚ��¾�g�X6����$
+u�F��rԙ���\,,\��;N�(�&޸U��������g�5>�+�%o�劀/�2T}c3�
+�� +�h�q�A�i~���8���!&���~�K������=�z|
++7?��O���(�4>>�i�sԫ��|�~%)4��q����a�ul~9�&>���/������?��8���1&Ň������ U c �M[�����7L� ��Ad����Y��ӠZz��x����q��N�`��o~������"��+7t�J�K"|��`R��t��:t���"�v�{p�@��4?K�IDς�xlF`S�K�/]66�œ���'9<��WT16b�OC>�o) �p����y�Խ|�\~��f�Ad�������Ǖd�*�K�|�f�ՍB_�#5 �n� �M�P�kZm�N��ᵲ��������a
+.���f�̸=���*v,�����٤?�a�!BV�c_����?gYk��y��"�2���P�J���&�4f�/<N�""���Ķ�9����V�Oa׾*�|)�pG��BQ�)�P��%yO� �6}����Xs�ږkY��$��
+�><�DǏn�U��� tS&�5fQS{��a�����H� F�X>�v=��f����ĩ�v6�-�p+��5L8·�*�j]��%l-�� )@G�m�ȅ�eqΰ5|ykǍ���8Y�;B�M���"&����S˜����֎;F\��M
+��� +#.i��������Xu:)�ڛggnqS淍��``mb)}čJ�6�m��$W0H�" 1_��P�,�
+��W��!{�
+�}���m��l�����j{ɖ�@1,i��1�@n;\|�!_�Ta!�tr�H;ϒh�=�TŤNhl�� c��WV���֋��O�|m�yqUY$�7��
+��(�$'��sՄ�鏘}V�_��CKKl�K�w�ӎ1V�_h5�[��������D�f�wwCH��bE'&Z�fѢ(���e[�և\�4�
+wr��X�'VA�1���@�v�mp�F3
+֐�I'�K:�b��A�p?%�B.��xx�b�h�XI��¤s)�:���rb��'�X�W,�� {>%DA%gJ:�L�2��A���<`�L���ʀ��B�|ݐ?S�C�(�e�0
+r�OT�d�A-K�z����IM�@��w&u����6�4��+�u�,�c�����1]�����XpJ|�̨X��,��n3�$�c�{�+�Z�Y#�����š�ԝ�-����4�hl�� uO�ϖ.�+��yɱ�}���t'י�u���N�ui}���x�\殺
+��|A}_ N)�;�V.Q�"�3��8ج
+��[����1Y���pmKҟW�߅7��\_��n]� ��E�\t�E�pt-����][K����!7�{�{F�T�3�8�fG�:��<�b�>�Ew`|��G�+0�[���[�GZ��:�sK�����;�|P
+0����_V=�/���=�L�Fj��Jj�M�E�=�VqYر�
+��x;͗������u�4�e�j����F�Z3�m�f���:��1t�S{���HgY0���MB�6,||R�h9�L��u,A�\��f���Q`N}�*��AA�|y �Z�H*�m�B�7��#�杫���*�I�R��0��u�8�i]�u�]���ǹ��sm���:L��Xv=a��B��u�,���&���7��]�C���YE��ݺ�D�#��SX��_�xh`[U�z��OX��Y\_$����֊{��\�H�� O���RM 偙!1�����C�mtmR�pv5��
+:o�c=��� ��L��:�r�iy$�P����0��<��HR%WBZ�6�=�'8��J�"���d���,�R��И�������3.��/�X��0׿'sm���m[����N�� ,u�»�ݩ�ypC'�wǻ�;�aw��u���t�=�Y�9�s@瀮#Н\䷈s������}�܄m`G\P�&tn‡�/1�>K�ޠ�Њ�ͤV��m8�v�;�u8��p��47��Am=�i��HK�:�uH����&���g��N�a��ʠ,�ԫ"*PJ�h��
+�x������Aׇ��jٕ%��Ʒd��[��5��y�8_#�f �#�j�N+8vi���� s�.���0���W�1\�a`>G�pj�bk|�mk�8���xz��J�y�~��cE��\wJ��$#�4)@�Y�;׽�!��*��G�Ŵ��IX�n��曳��7߶
+��7L|SHh+�v�Hh�2,���ۥ���p
+�Զ�n��"ugQ��,|eJ�տj�Rw�r����?�-aXT`�HܽJY���-����O�X��A8ɚ 3u胪L�l�c�<��A{/�w���&v�ᙧ0��:���� �4+lֻ��j�#U�`�j���G����s�֐���}��[�X�µ���� ��˟��R)����q�e�e�)
+�q)�,�����X��T�LF��M�n�,�ܒKzsn�N��݉�eq ��afw�3�aƲ�#��:��*��� ��WU�KeA��G �K0�i���1��qRA����D�l5��&����ܮ&���}MB�٘+ՏH�%y��R},F�*u�qJ�`0�(�}��"�8��D��N$߁�ֻ+���s"��H����̷��(��ڜ���\���b��Zw�$ҫ���}]��]r��q0o@�%ð���6�lV�i�JKm�-�J�VK7 �C��8�i
+%��>ɒ�'0�����G}rX|���FI|�&9�at�I5\���]T8����K�Ψp��=N�s*�}B�T��\�t<�l��
+���8�<ʠ31���������dՖ],����Ijm>��֐|�ܓ�̴Z�۳���q0Ύ��/�jt�ڈ�yC+��?�Yx�����X��9�C�P;BP�۴A����z|����(����L��B��;���5�h|�odJ�&Y���mz�I~�Z�uX����Y�a|���n�8�6���K|/GA���+2W�a�O~ ��a��ء|�ւ�P�V]VZA�|ø9�A�7� O�ވ�:�����6���9'��nX�_a��y2;�W�
+����{��6�Ѭ@����R`g���\�K2OgF��қ�� �v�������Y�nf�q�����.�]�t�{{��$�ø��
+�s�'z����9��v���ӹsM��5}�:�nn�7�ϒ<OF��0,-�RTk��i�y��g�3\��bM��2I�?ͮ.w��]�F}���=�����9��#F��Ϣ�^�L������ዳ�����'���}�{��=�����h���GG��?~������b�����Kt������Z��ez �\���i�-�O?����N��1l�MŒ�ݦ�n��W�����%\H0�TuÜ�f��ӟA�iK܇����m������ut_���E������Ä�����rLy��W*�^��iMu�J��4g*#`�Q�7�o?�?YEQ���N] ø���^�ī:hwEc�q_���}�1������q�WM������0#���'i
+3Q�dSO���/f&���).�q�;�X�xZ��2@��"�' �������A�)��X<��n-�r�^�I��rռ]\dyz`��(8y�
+�� Jkj�L4���
+z-�|<n �"�G�ݝ�)�4��$��V��!���Y����ba��,��|/e0j��s�<}�������
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.svg b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.svg
new file mode 100644
index 0000000000..51bfd982be
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/protocol.svg
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 624.34646 822.34646" width="624.34646pt" height="822.34646pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.2 <dc:date>2019-07-07 08:38:24 +0000</dc:date></metadata><defs><font-face font-family="Verdana" font-size="12" panose-1="2 11 6 4 3 5 4 4 2 4" units-per-em="1000" underline-position="-87.890625" underline-thickness="58.59375" slope="0" x-height="545.41016" cap-height="727.0508" ascent="1005.3711" descent="-209.96094" font-weight="500"><font-face-src><font-face-name name="Verdana"/></font-face-src></font-face><font-face font-family="Courier New" font-size="12" panose-1="2 7 3 9 2 2 5 2 4 4" units-per-em="1000" underline-position="-232.91016" underline-thickness="41.015625" slope="0" x-height="422.85156" cap-height="571.28906" ascent="832.51953" descent="-300.29297" font-weight="500"><font-face-src><font-face-name name="CourierNewPSMT"/></font-face-src></font-face><font-face font-family="Courier New" font-size="12" panose-1="2 7 6 9 2 2 5 2 4 4" units-per-em="1000" underline-position="-232.91016" underline-thickness="100.097656" slope="0" x-height="443.35938" cap-height="591.79688" ascent="832.51953" descent="-300.29297" font-weight="bold"><font-face-src><font-face-name name="CourierNewPS-BoldMT"/></font-face-src></font-face><font-face font-family="Courier New" font-size="10" panose-1="2 7 3 9 2 2 5 2 4 4" units-per-em="1000" underline-position="-232.91016" underline-thickness="41.015625" slope="0" x-height="422.85156" cap-height="571.28906" ascent="832.51953" descent="-300.29297" font-weight="500"><font-face-src><font-face-name name="CourierNewPSMT"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="StickArrow_Marker" viewBox="-1 -4 8 8" markerWidth="8" markerHeight="8" color="black"><g><path d="M 5.8666667 0 L 0 0 M 0 -2.2 L 5.8666667 0 L 0 2.2" fill="none" stroke="currentColor" stroke-width="1"/></g></marker><radialGradient cx="0" cy="0" r="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="white"/><stop offset="1" stop-color="#a5a5a5"/></radialGradient><radialGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(311.81102 708.6614) scale(145.75703)"/><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="StickArrow_Marker_2" viewBox="-1 -6 14 12" markerWidth="14" markerHeight="12" color="black"><g><path d="M 12 0 L 0 0 M 0 -4.5 L 12 0 L 0 4.5" fill="none" stroke="currentColor" stroke-width="1"/></g></marker><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="StickArrow_Marker_3" viewBox="-1 -4 8 8" markerWidth="8" markerHeight="8" color="black"><g><path d="M 5.9253333 0 L 0 0 M 0 -2.222 L 5.9253333 0 L 0 2.222" fill="none" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="1314" height="1698"/><g><title>Layer 1</title><rect x="28.346457" y="765.35433" width="566.92913" height="28.346457" fill="#6cf"/><rect x="28.346457" y="765.35433" width="566.92913" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(33.346457 772.02755)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="228.50753" y="12" textLength="99.91406">remote endpoint</tspan></text><rect x="28.346457" y="85.03937" width="566.92913" height="566.92913" fill="white"/><rect x="28.346457" y="85.03937" width="566.92913" height="566.92913" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(33.346457 90.03937)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="243.79171" y="12" textLength="51.333984">websock</tspan><tspan font-family="Verdana" font-size="12" font-weight="500" x="295.00851" y="12" textLength="18.128906">ets</tspan><tspan font-family="Courier New" font-size="12" font-weight="500" x="195.65109" y="25" textLength="165.62695">WebSocketCommonProtocol</tspan></text><rect x="28.346457" y="28.346457" width="566.92913" height="28.346457" fill="#6f6"/><rect x="28.346457" y="28.346457" width="566.92913" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(33.346457 35.019685)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="230.0046" y="12" textLength="96.91992">application logic</tspan></text><path d="M 102.047243 586.77165 L 238.11023 586.77165 C 247.49858 586.77165 255.11811 596.93102 255.11811 609.4488 C 255.11811 621.9666 247.49858 632.12598 238.11023 632.12598 L 102.047243 632.12598 C 92.658897 632.12598 85.03937 621.9666 85.03937 609.4488 C 85.03937 596.93102 92.658897 586.77165 102.047243 586.77165" fill="#fc6"/><path d="M 102.047243 586.77165 L 238.11023 586.77165 C 247.49858 586.77165 255.11811 596.93102 255.11811 609.4488 C 255.11811 621.9666 247.49858 632.12598 238.11023 632.12598 L 102.047243 632.12598 C 92.658897 632.12598 85.03937 621.9666 85.03937 609.4488 C 85.03937 596.93102 92.658897 586.77165 102.047243 586.77165 M 238.11023 586.77165 C 228.72189 586.77165 221.10236 596.93102 221.10236 609.4488 C 221.10236 621.9666 228.72189 632.12598 238.11023 632.12598" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(125.33071 596.9488)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="14.896484" y="10" textLength="43.20703">reader</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x=".49414062" y="22" textLength="72.01172">StreamReader</tspan></text><path d="M 385.5118 586.77165 L 521.5748 586.77165 C 530.96315 586.77165 538.58267 596.93102 538.58267 609.4488 C 538.58267 621.9666 530.96315 632.12598 521.5748 632.12598 L 385.5118 632.12598 C 376.12346 632.12598 368.50393 621.9666 368.50393 609.4488 C 368.50393 596.93102 376.12346 586.77165 385.5118 586.77165" fill="#fc6"/><path d="M 385.5118 586.77165 L 521.5748 586.77165 C 530.96315 586.77165 538.58267 596.93102 538.58267 609.4488 C 538.58267 621.9666 530.96315 632.12598 521.5748 632.12598 L 385.5118 632.12598 C 376.12346 632.12598 368.50393 621.9666 368.50393 609.4488 C 368.50393 596.93102 376.12346 586.77165 385.5118 586.77165 M 521.5748 586.77165 C 512.18645 586.77165 504.56693 596.93102 504.56693 609.4488 C 504.56693 621.9666 512.18645 632.12598 521.5748 632.12598" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(408.79527 596.9488)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="14.896484" y="10" textLength="43.20703">writer</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x=".49414062" y="22" textLength="72.01172">StreamWriter</tspan></text><path d="M 481.88976 419.52756 L 481.88976 374.17323 C 481.88976 371.04378 469.19055 368.50393 453.5433 368.50393 C 437.89606 368.50393 425.19685 371.04378 425.19685 374.17323 L 425.19685 419.52756 C 425.19685 422.657 437.89606 425.19685 453.5433 425.19685 C 469.19055 425.19685 481.88976 422.657 481.88976 419.52756" fill="#fecc66"/><path d="M 481.88976 419.52756 L 481.88976 374.17323 C 481.88976 371.04378 469.19055 368.50393 453.5433 368.50393 C 437.89606 368.50393 425.19685 371.04378 425.19685 374.17323 L 425.19685 419.52756 C 425.19685 422.657 437.89606 425.19685 453.5433 425.19685 C 469.19055 425.19685 481.88976 422.657 481.88976 419.52756 M 481.88976 374.17323 C 481.88976 377.30267 469.19055 379.84252 453.5433 379.84252 C 437.89606 379.84252 425.19685 377.30267 425.19685 374.17323" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><text transform="translate(429.19685 387.18504)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="500" x="6.343527" y="10" textLength="36.00586">pings</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x="12.3445034" y="22" textLength="24.003906">dict</tspan></text><path d="M 85.039413 283.46457 L 255.11806 283.46457 C 270.7734 283.46457 283.46457 296.15573 283.46457 311.81107 L 283.46457 481.88972 C 283.46457 497.54506 270.7734 510.23622 255.11806 510.23622 L 85.039413 510.23622 C 69.384074 510.23622 56.692913 497.54506 56.692913 481.88972 L 56.692913 311.81107 C 56.692913 296.15573 69.384074 283.46457 85.039413 283.46457 Z" fill="#dadada"/><path d="M 85.039413 283.46457 L 255.11806 283.46457 C 270.7734 283.46457 283.46457 296.15573 283.46457 311.81107 L 283.46457 481.88972 C 283.46457 497.54506 270.7734 510.23622 255.11806 510.23622 L 85.039413 510.23622 C 69.384074 510.23622 56.692913 497.54506 56.692913 481.88972 L 56.692913 311.81107 C 56.692913 296.15573 69.384074 283.46457 85.039413 283.46457 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(61.692913 288.46457)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="43.57528" y="10" textLength="129.62109">transfer_data_task</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x="96.383873" y="22" textLength="24.003906">Task</tspan></text><path d="M 297.6378 765.35433 L 297.6378 609.4488 L 255.11811 609.4488 L 269.01811 609.4488 L 266.51811 609.4488" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 368.50393 609.4488 L 354.60393 609.4488 L 325.98425 609.4488 L 325.98425 753.95433" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 207.03401 712.3154 C 161.22047 708.6614 179.48976 677.90097 252.5726 683.1496 C 259.35307 672.91835 344.33858 674.579 343.783 683.1496 C 397.0715 672.1877 465.17102 694.04553 419.49354 705.00744 C 474.30425 710.32206 418.80189 738.9565 373.8189 734.17322 C 370.2189 742.14584 289.80283 744.9358 282.74457 734.17322 C 237.20882 745.66715 142.25953 727.9946 207.03401 712.3154 Z" fill="url(#Obj_Gradient)"/><path d="M 207.03401 712.3154 C 161.22047 708.6614 179.48976 677.90097 252.5726 683.1496 C 259.35307 672.91835 344.33858 674.579 343.783 683.1496 C 397.0715 672.1877 465.17102 694.04553 419.49354 705.00744 C 474.30425 710.32206 418.80189 738.9565 373.8189 734.17322 C 370.2189 742.14584 289.80283 744.9358 282.74457 734.17322 C 237.20882 745.66715 142.25953 727.9946 207.03401 712.3154 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(217.59842 701.1614)" fill="black"><tspan font-family="Verdana" font-size="12" font-weight="500" x="69.81416" y="12" textLength="48.796875">network</tspan></text><rect x="85.03937" y="453.5433" width="170.07874" height="28.346457" fill="#ff6"/><rect x="85.03937" y="453.5433" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(90.03937 460.71653)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="44.03351" y="10" textLength="72.01172">read_frame</tspan></text><rect x="85.03937" y="396.8504" width="170.07874" height="28.346457" fill="#ff6"/><rect x="85.03937" y="396.8504" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(90.03937 404.02362)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="26.03058" y="10" textLength="108.01758">read_data_frame</tspan></text><rect x="85.03937" y="340.15748" width="170.07874" height="28.346457" fill="#ff6"/><rect x="85.03937" y="340.15748" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(90.03937 347.3307)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="36.832338" y="10" textLength="86.41406">read_message</tspan></text><text transform="translate(178.07874 490.563)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="30.004883">bytes</tspan></text><text transform="translate(178.07874 433.87008)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="36.00586">frames</tspan></text><text transform="translate(178.07874 371.67716)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="24.003906">data</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="19" textLength="36.00586">frames</tspan></text><rect x="368.50393" y="510.23622" width="170.07874" height="28.346457" fill="#ff6"/><rect x="368.50393" y="510.23622" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(373.50393 517.40945)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="40.432924" y="10" textLength="79.21289">write_frame</tspan></text><path d="M 85.03937 609.4488 L 71.13937 609.4488 L 56.692913 609.4488 L 56.692913 595.2756 L 56.692913 566.92913 L 113.385826 566.92913 L 170.07874 566.92913 L 170.07874 495.78976 L 170.07874 494.03976" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 453.5433 539.33267 L 453.5433 552.48267 L 453.5433 566.92913 L 510.23622 566.92913 L 569.76378 566.92913 L 569.76378 595.2756 L 569.76378 609.4488 L 552.48267 609.4488 L 549.98267 609.4488" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="170.07874" y1="453.5433" x2="170.07874" y2="437.34685" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="170.07874" y1="396.8504" x2="170.07874" y2="380.65393" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 102.047243 204.09449 L 238.11023 204.09449 C 247.49858 204.09449 255.11811 214.25386 255.11811 226.77165 C 255.11811 239.28945 247.49858 249.44882 238.11023 249.44882 L 102.047243 249.44882 C 92.658897 249.44882 85.03937 239.28945 85.03937 226.77165 C 85.03937 214.25386 92.658897 204.09449 102.047243 204.09449" fill="#fc6"/><path d="M 102.047243 204.09449 L 238.11023 204.09449 C 247.49858 204.09449 255.11811 214.25386 255.11811 226.77165 C 255.11811 239.28945 247.49858 249.44882 238.11023 249.44882 L 102.047243 249.44882 C 92.658897 249.44882 85.03937 239.28945 85.03937 226.77165 C 85.03937 214.25386 92.658897 204.09449 102.047243 204.09449 M 238.11023 204.09449 C 228.72189 204.09449 221.10236 214.25386 221.10236 226.77165 C 221.10236 239.28945 228.72189 249.44882 238.11023 249.44882" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(132.33071 214.27165)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x=".1953125" y="10" textLength="57.609375">messages</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x="13.997559" y="22" textLength="30.004883">deque</tspan></text><path d="M 255.11811 354.3307 L 269.01811 354.3307 L 297.6378 354.3307 L 297.6378 328.8189 L 297.6378 226.77165 L 269.01811 226.77165 L 266.51811 226.77165" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><rect x="85.03937" y="141.73228" width="170.07874" height="28.346457" fill="#cf6"/><rect x="85.03937" y="141.73228" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(90.03937 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="65.637026" y="10" textLength="28.804688">recv</tspan></text><path d="M 85.03937 226.77165 L 71.13937 226.77165 L 42.519685 226.77165 L 42.519685 209.76378 L 42.519685 155.90551 L 71.13937 155.90551 L 73.63937 155.90551" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="170.07874" y1="141.73228" x2="170.07874" y2="68.092913" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="453.5433" y1="56.692913" x2="453.5433" y2="130.33228" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="467.71653" y1="56.692913" x2="467.71653" y2="187.8752" marker-end="url(#StickArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><line x1="481.88976" y1="56.692913" x2="481.88976" y2="244.56811" marker-end="url(#StickArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><line x1="496.063" y1="56.692913" x2="496.063" y2="300.32302" marker-end="url(#StickArrow_Marker_3)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><rect x="368.50393" y="141.73228" width="170.07874" height="28.346457" fill="#cf6"/><rect x="368.50393" y="141.73228" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(373.50393 148.90551)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="65.637026" y="10" textLength="28.804688">send</tspan></text><rect x="368.50393" y="198.4252" width="170.07874" height="28.346457" fill="#cf6"/><rect x="368.50393" y="198.4252" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><text transform="translate(373.50393 205.59842)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="500" x="65.637026" y="10" textLength="28.804688">ping</tspan></text><rect x="368.50393" y="255.11811" width="170.07874" height="28.346457" fill="#cf6"/><rect x="368.50393" y="255.11811" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><text transform="translate(373.50393 262.29134)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="500" x="65.637026" y="10" textLength="28.804688">pong</tspan></text><rect x="368.50393" y="311.81102" width="170.07874" height="28.346457" fill="#cf6"/><rect x="368.50393" y="311.81102" width="170.07874" height="28.346457" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(373.50393 318.98425)" fill="black"><tspan font-family="Courier New" font-size="12" font-weight="bold" x="62.03644" y="10" textLength="36.00586">close</tspan></text><path d="M 538.58267 155.90551 L 552.48267 155.90551 L 566.92913 155.90551 L 566.92913 481.88976 L 453.5433 481.88976 L 453.5433 496.33622 L 453.5433 498.08622" marker-end="url(#StickArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><line x1="538.58267" y1="212.59842" x2="566.92913" y2="212.59842" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><line x1="538.58267" y1="269.29134" x2="566.92913" y2="269.29134" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><line x1="538.58267" y1="325.98425" x2="566.92913" y2="325.98425" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><path d="M 255.86811 411.02362 L 262.61811 411.02362 L 340.15748 411.02362 L 340.15748 481.88976 L 453.5433 481.88976" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"/><text transform="translate(291.94527 399.02362)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="42.006836">control</tspan><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="21" textLength="36.00586">frames</tspan></text><line x1="340.15748" y1="411.02362" x2="414.64685" y2="411.02362" marker-end="url(#StickArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><path d="M 368.50393 212.59842 L 361.75393 212.59842 L 340.15748 212.59842 L 340.15748 340.15748 L 340.15748 382.67716" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/><text transform="translate(461.5433 547.2559)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="30.004883">bytes</tspan></text><text transform="translate(461.5433 490.563)" fill="black"><tspan font-family="Courier New" font-size="10" font-weight="500" x="0" y="8" textLength="36.00586">frames</tspan></text><line x1="340.15748" y1="382.67716" x2="414.64685" y2="382.67716" marker-end="url(#StickArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".75"/></g></g></svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/security.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/security.rst
new file mode 100644
index 0000000000..d3dec21bd1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/security.rst
@@ -0,0 +1,41 @@
+Security
+========
+
+Encryption
+----------
+
+For production use, a server should require encrypted connections.
+
+See this example of :ref:`encrypting connections with TLS
+<secure-server-example>`.
+
+Memory usage
+------------
+
+.. warning::
+
+ An attacker who can open an arbitrary number of connections will be able
+ to perform a denial of service by memory exhaustion. If you're concerned
+ by denial of service attacks, you must reject suspicious connections
+ before they reach websockets, typically in a reverse proxy.
+
+With the default settings, opening a connection uses 70 KiB of memory.
+
+Sending some highly compressed messages could use up to 128 MiB of memory with
+an amplification factor of 1000 between network traffic and memory usage.
+
+Configuring a server to :doc:`optimize memory usage <memory>` will improve
+security in addition to improving performance.
+
+Other limits
+------------
+
+websockets implements additional limits on the amount of data it accepts in
+order to minimize exposure to security vulnerabilities.
+
+In the opening handshake, websockets limits the number of HTTP headers to 256
+and the size of an individual header to 4096 bytes. These limits are 10 to 20
+times larger than what's expected in standard use cases. They're hard-coded.
+
+If you need to change these limits, you can monkey-patch the constants in
+``websockets.http11``.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/docs/topics/timeouts.rst b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/timeouts.rst
new file mode 100644
index 0000000000..633fc1ab43
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/docs/topics/timeouts.rst
@@ -0,0 +1,116 @@
+Timeouts
+========
+
+.. currentmodule:: websockets
+
+Long-lived connections
+----------------------
+
+Since the WebSocket protocol is intended for real-time communications over
+long-lived connections, it is desirable to ensure that connections don't
+break, and if they do, to report the problem quickly.
+
+Connections can drop as a consequence of temporary network connectivity issues,
+which are very common, even within data centers.
+
+Furthermore, WebSocket builds on top of HTTP/1.1 where connections are
+short-lived, even with ``Connection: keep-alive``. Typically, HTTP/1.1
+infrastructure closes idle connections after 30 to 120 seconds.
+
+As a consequence, proxies may terminate WebSocket connections prematurely when
+no message was exchanged in 30 seconds.
+
+.. _keepalive:
+
+Keepalive in websockets
+-----------------------
+
+To avoid these problems, websockets runs a keepalive and heartbeat mechanism
+based on WebSocket Ping_ and Pong_ frames, which are designed for this purpose.
+
+.. _Ping: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.2
+.. _Pong: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.3
+
+It loops through these steps:
+
+1. Wait 20 seconds.
+2. Send a Ping frame.
+3. Receive a corresponding Pong frame within 20 seconds.
+
+If the Pong frame isn't received, websockets considers the connection broken and
+closes it.
+
+This mechanism serves two purposes:
+
+1. It creates a trickle of traffic so that the TCP connection isn't idle and
+ network infrastructure along the path keeps it open ("keepalive").
+2. It detects if the connection drops or becomes so slow that it's unusable in
+ practice ("heartbeat"). In that case, it terminates the connection and your
+ application gets a :exc:`~exceptions.ConnectionClosed` exception.
+
+Timings are configurable with the ``ping_interval`` and ``ping_timeout``
+arguments of :func:`~client.connect` and :func:`~server.serve`. Shorter values
+will detect connection drops faster but they will increase network traffic and
+they will be more sensitive to latency.
+
+Setting ``ping_interval`` to :obj:`None` disables the whole keepalive and
+heartbeat mechanism.
+
+Setting ``ping_timeout`` to :obj:`None` disables only timeouts. This enables
+keepalive, to keep idle connections open, and disables heartbeat, to support large
+latency spikes.
+
+.. admonition:: Why doesn't websockets rely on TCP keepalive?
+ :class: hint
+
+ TCP keepalive is disabled by default on most operating systems. When
+ enabled, the default interval is two hours or more, which is far too much.
+
+Keepalive in browsers
+---------------------
+
+Browsers don't enable a keepalive mechanism like websockets by default. As a
+consequence, they can fail to notice that a WebSocket connection is broken for
+an extended period of time, until the TCP connection times out.
+
+In this scenario, the ``WebSocket`` object in the browser doesn't fire a
+``close`` event. If you have a reconnection mechanism, it doesn't kick in
+because it believes that the connection is still working.
+
+If your browser-based app mysteriously and randomly fails to receive events,
+this is a likely cause. You need a keepalive mechanism in the browser to avoid
+this scenario.
+
+Unfortunately, the WebSocket API in browsers doesn't expose the native Ping and
+Pong functionality in the WebSocket protocol. You have to roll your own in the
+application layer.
+
+Latency issues
+--------------
+
+Latency between a client and a server may increase for two reasons:
+
+* Network connectivity is poor. When network packets are lost, TCP attempts to
+ retransmit them, which manifests as latency. Excessive packet loss makes
+ the connection unusable in practice. At some point, timing out is a
+ reasonable choice.
+
+* Traffic is high. For example, if a client sends messages on the connection
+ faster than a server can process them, this manifests as latency as well,
+ because data is waiting in flight, mostly in OS buffers.
+
+ If the server is more than 20 seconds behind, it doesn't see the Pong before
+ the default timeout elapses. As a consequence, it closes the connection.
+ This is a reasonable choice to prevent overload.
+
+ If traffic spikes cause unwanted timeouts and you're confident that the server
+ will catch up eventually, you can increase ``ping_timeout`` or you can set it
+ to :obj:`None` to disable heartbeat entirely.
+
+ The same reasoning applies to situations where the server sends more traffic
+ than the client can accept.
+
+The latency measured during the last exchange of Ping and Pong frames is
+available in the :attr:`~legacy.protocol.WebSocketCommonProtocol.latency`
+attribute. Alternatively, you can measure the latency at any time with the
+:attr:`~legacy.protocol.WebSocketCommonProtocol.ping` method.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/Procfile b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/Procfile
new file mode 100644
index 0000000000..2e35818f67
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/Procfile
@@ -0,0 +1 @@
+web: python app.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/app.py
new file mode 100644
index 0000000000..4ca34d23bb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/app.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+
+import asyncio
+import http
+import signal
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def health_check(path, request_headers):
+ if path == "/healthz":
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ echo,
+ host="",
+ port=8080,
+ process_request=health_check,
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/fly.toml b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/fly.toml
new file mode 100644
index 0000000000..5290072ed2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/fly.toml
@@ -0,0 +1,16 @@
+app = "websockets-echo"
+kill_signal = "SIGTERM"
+
+[build]
+ builder = "paketobuildpacks/builder:base"
+
+[[services]]
+ internal_port = 8080
+ protocol = "tcp"
+
+ [[services.http_checks]]
+ path = "/healthz"
+
+ [[services.ports]]
+ handlers = ["tls", "http"]
+ port = 443
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/requirements.txt b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/requirements.txt
new file mode 100644
index 0000000000..14774b465e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/fly/requirements.txt
@@ -0,0 +1 @@
+websockets
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/app.py
new file mode 100644
index 0000000000..360479b8eb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/app.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+
+import asyncio
+import os
+import signal
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ echo,
+ host="localhost",
+ port=8000 + int(os.environ["SUPERVISOR_PROCESS_NAME"][-2:]),
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/haproxy.cfg b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/haproxy.cfg
new file mode 100644
index 0000000000..e63727d1c0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/haproxy.cfg
@@ -0,0 +1,17 @@
+defaults
+ mode http
+ timeout connect 10s
+ timeout client 30s
+ timeout server 30s
+
+frontend websocket
+ bind localhost:8080
+ default_backend websocket
+
+backend websocket
+ balance leastconn
+ server websockets-test_00 localhost:8000
+ server websockets-test_01 localhost:8001
+ server websockets-test_02 localhost:8002
+ server websockets-test_03 localhost:8003
+
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/supervisord.conf b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/supervisord.conf
new file mode 100644
index 0000000000..76a664d91b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/haproxy/supervisord.conf
@@ -0,0 +1,7 @@
+[supervisord]
+
+[program:websockets-test]
+command = python app.py
+process_name = %(program_name)s_%(process_num)02d
+numprocs = 4
+autorestart = true
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/Procfile b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/Procfile
new file mode 100644
index 0000000000..2e35818f67
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/Procfile
@@ -0,0 +1 @@
+web: python app.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/app.py
new file mode 100644
index 0000000000..d4ba3edb51
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/app.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+
+import asyncio
+import signal
+import os
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ echo,
+ host="",
+ port=int(os.environ["PORT"]),
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/requirements.txt b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/requirements.txt
new file mode 100644
index 0000000000..14774b465e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/heroku/requirements.txt
@@ -0,0 +1 @@
+websockets
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/Dockerfile b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/Dockerfile
new file mode 100644
index 0000000000..83ed8722c0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/Dockerfile
@@ -0,0 +1,7 @@
+FROM python:3.9-alpine
+
+RUN pip install websockets
+
+COPY app.py .
+
+CMD ["python", "app.py"]
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/app.py
new file mode 100644
index 0000000000..a8bcef6881
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/app.py
@@ -0,0 +1,49 @@
+#!/usr/bin/env python
+
+import asyncio
+import http
+import signal
+import sys
+import time
+
+import websockets
+
+
+async def slow_echo(websocket):
+ async for message in websocket:
+ # Block the event loop! This allows saturating a single asyncio
+ # process without opening an impractical number of connections.
+ time.sleep(0.1) # 100ms
+ await websocket.send(message)
+
+
+async def health_check(path, request_headers):
+ if path == "/healthz":
+ return http.HTTPStatus.OK, [], b"OK\n"
+ if path == "/inemuri":
+ loop = asyncio.get_running_loop()
+ loop.call_later(1, time.sleep, 10)
+ return http.HTTPStatus.OK, [], b"Sleeping for 10s\n"
+ if path == "/seppuku":
+ loop = asyncio.get_running_loop()
+ loop.call_later(1, sys.exit, 69)
+ return http.HTTPStatus.OK, [], b"Terminating\n"
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ slow_echo,
+ host="",
+ port=80,
+ process_request=health_check,
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/benchmark.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/benchmark.py
new file mode 100644
index 0000000000..22ee4c5bd7
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/benchmark.py
@@ -0,0 +1,27 @@
+#!/usr/bin/env python
+
+import asyncio
+import sys
+import websockets
+
+
+URI = "ws://localhost:32080"
+
+
+async def run(client_id, messages):
+ async with websockets.connect(URI) as websocket:
+ for message_id in range(messages):
+ await websocket.send(f"{client_id}:{message_id}")
+ await websocket.recv()
+
+
+async def benchmark(clients, messages):
+ await asyncio.wait([
+ asyncio.create_task(run(client_id, messages))
+ for client_id in range(clients)
+ ])
+
+
+if __name__ == "__main__":
+ clients, messages = int(sys.argv[1]), int(sys.argv[2])
+ asyncio.run(benchmark(clients, messages))
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/deployment.yaml b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/deployment.yaml
new file mode 100644
index 0000000000..ba58dd62bf
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/kubernetes/deployment.yaml
@@ -0,0 +1,35 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: websockets-test
+spec:
+ type: NodePort
+ ports:
+ - port: 80
+ nodePort: 32080
+ selector:
+ app: websockets-test
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: websockets-test
+spec:
+ selector:
+ matchLabels:
+ app: websockets-test
+ template:
+ metadata:
+ labels:
+ app: websockets-test
+ spec:
+ containers:
+ - name: websockets-test
+ image: websockets-test:1.0
+ livenessProbe:
+ httpGet:
+ path: /healthz
+ port: 80
+ periodSeconds: 1
+ ports:
+ - containerPort: 80
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/app.py
new file mode 100644
index 0000000000..24e6089756
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/app.py
@@ -0,0 +1,29 @@
+#!/usr/bin/env python
+
+import asyncio
+import os
+import signal
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.unix_serve(
+ echo,
+ path=f"{os.environ['SUPERVISOR_PROCESS_NAME']}.sock",
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/nginx.conf b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/nginx.conf
new file mode 100644
index 0000000000..67aa0086d5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/nginx.conf
@@ -0,0 +1,25 @@
+daemon off;
+
+events {
+}
+
+http {
+ server {
+ listen localhost:8080;
+
+ location / {
+ proxy_http_version 1.1;
+ proxy_pass http://websocket;
+ proxy_set_header Connection $http_connection;
+ proxy_set_header Upgrade $http_upgrade;
+ }
+ }
+
+ upstream websocket {
+ least_conn;
+ server unix:websockets-test_00.sock;
+ server unix:websockets-test_01.sock;
+ server unix:websockets-test_02.sock;
+ server unix:websockets-test_03.sock;
+ }
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/supervisord.conf b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/supervisord.conf
new file mode 100644
index 0000000000..76a664d91b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/nginx/supervisord.conf
@@ -0,0 +1,7 @@
+[supervisord]
+
+[program:websockets-test]
+command = python app.py
+process_name = %(program_name)s_%(process_num)02d
+numprocs = 4
+autorestart = true
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/app.py
new file mode 100644
index 0000000000..4ca34d23bb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/app.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+
+import asyncio
+import http
+import signal
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def health_check(path, request_headers):
+ if path == "/healthz":
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ echo,
+ host="",
+ port=8080,
+ process_request=health_check,
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/requirements.txt b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/requirements.txt
new file mode 100644
index 0000000000..14774b465e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/render/requirements.txt
@@ -0,0 +1 @@
+websockets
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/app.py
new file mode 100644
index 0000000000..bf61983ef7
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/app.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+
+import asyncio
+import signal
+
+import websockets
+
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ echo,
+ host="",
+ port=8080,
+ reuse_port=True,
+ ):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/supervisord.conf b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/supervisord.conf
new file mode 100644
index 0000000000..76a664d91b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/deployment/supervisor/supervisord.conf
@@ -0,0 +1,7 @@
+[supervisord]
+
+[program:websockets-test]
+command = python app.py
+process_name = %(program_name)s_%(process_num)02d
+numprocs = 4
+autorestart = true
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/django/authentication.py b/testing/web-platform/tests/tools/third_party/websockets/example/django/authentication.py
new file mode 100644
index 0000000000..f6dad0f55e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/django/authentication.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+
+import asyncio
+
+import django
+import websockets
+
+django.setup()
+
+from sesame.utils import get_user
+from websockets.frames import CloseCode
+
+
+async def handler(websocket):
+ sesame = await websocket.recv()
+ user = await asyncio.to_thread(get_user, sesame)
+ if user is None:
+ await websocket.close(CloseCode.INTERNAL_ERROR, "authentication failed")
+ return
+
+ await websocket.send(f"Hello {user}!")
+
+
+async def main():
+ async with websockets.serve(handler, "localhost", 8888):
+ await asyncio.Future() # run forever
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/django/notifications.py b/testing/web-platform/tests/tools/third_party/websockets/example/django/notifications.py
new file mode 100644
index 0000000000..3a9ed10cf0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/django/notifications.py
@@ -0,0 +1,73 @@
+#!/usr/bin/env python
+
+import asyncio
+import json
+
+import aioredis
+import django
+import websockets
+
+django.setup()
+
+from django.contrib.contenttypes.models import ContentType
+from sesame.utils import get_user
+from websockets.frames import CloseCode
+
+
+CONNECTIONS = {}
+
+
+def get_content_types(user):
+ """Return the set of IDs of content types visible by user."""
+ # This does only three database queries because Django caches
+ # all permissions on the first call to user.has_perm(...).
+ return {
+ ct.id
+ for ct in ContentType.objects.all()
+ if user.has_perm(f"{ct.app_label}.view_{ct.model}")
+ or user.has_perm(f"{ct.app_label}.change_{ct.model}")
+ }
+
+
+async def handler(websocket):
+ """Authenticate user and register connection in CONNECTIONS."""
+ sesame = await websocket.recv()
+ user = await asyncio.to_thread(get_user, sesame)
+ if user is None:
+ await websocket.close(CloseCode.INTERNAL_ERROR, "authentication failed")
+ return
+
+ ct_ids = await asyncio.to_thread(get_content_types, user)
+ CONNECTIONS[websocket] = {"content_type_ids": ct_ids}
+ try:
+ await websocket.wait_closed()
+ finally:
+ del CONNECTIONS[websocket]
+
+
+async def process_events():
+ """Listen to events in Redis and process them."""
+ redis = aioredis.from_url("redis://127.0.0.1:6379/1")
+ pubsub = redis.pubsub()
+ await pubsub.subscribe("events")
+ async for message in pubsub.listen():
+ if message["type"] != "message":
+ continue
+ payload = message["data"].decode()
+ # Broadcast event to all users who have permissions to see it.
+ event = json.loads(payload)
+ recipients = (
+ websocket
+ for websocket, connection in CONNECTIONS.items()
+ if event["content_type_id"] in connection["content_type_ids"]
+ )
+ websockets.broadcast(recipients, payload)
+
+
+async def main():
+ async with websockets.serve(handler, "localhost", 8888):
+ await process_events() # runs forever
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/django/signals.py b/testing/web-platform/tests/tools/third_party/websockets/example/django/signals.py
new file mode 100644
index 0000000000..6dc827f72d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/django/signals.py
@@ -0,0 +1,23 @@
+import json
+
+from django.contrib.admin.models import LogEntry
+from django.db.models.signals import post_save
+from django.dispatch import receiver
+
+from django_redis import get_redis_connection
+
+
+@receiver(post_save, sender=LogEntry)
+def publish_event(instance, **kwargs):
+ event = {
+ "model": instance.content_type.name,
+ "object": instance.object_repr,
+ "message": instance.get_change_message(),
+ "timestamp": instance.action_time.isoformat(),
+ "user": str(instance.user),
+ "content_type_id": instance.content_type_id,
+ "object_id": instance.object_id,
+ }
+ connection = get_redis_connection("default")
+ payload = json.dumps(event)
+ connection.publish("events", payload)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/echo.py b/testing/web-platform/tests/tools/third_party/websockets/example/echo.py
new file mode 100644
index 0000000000..2e47e52d94
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/echo.py
@@ -0,0 +1,14 @@
+#!/usr/bin/env python
+
+import asyncio
+from websockets.server import serve
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+async def main():
+ async with serve(echo, "localhost", 8765):
+ await asyncio.Future() # run forever
+
+asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/faq/health_check_server.py b/testing/web-platform/tests/tools/third_party/websockets/example/faq/health_check_server.py
new file mode 100644
index 0000000000..7b8bded772
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/faq/health_check_server.py
@@ -0,0 +1,22 @@
+#!/usr/bin/env python
+
+import asyncio
+import http
+import websockets
+
+async def health_check(path, request_headers):
+ if path == "/healthz":
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+async def main():
+ async with websockets.serve(
+ echo, "localhost", 8765,
+ process_request=health_check,
+ ):
+ await asyncio.Future() # run forever
+
+asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_client.py b/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_client.py
new file mode 100644
index 0000000000..539dd0304a
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_client.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+
+import asyncio
+import signal
+import websockets
+
+async def client():
+ uri = "ws://localhost:8765"
+ async with websockets.connect(uri) as websocket:
+ # Close the connection when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ loop.add_signal_handler(
+ signal.SIGTERM, loop.create_task, websocket.close())
+
+ # Process messages received on the connection.
+ async for message in websocket:
+ ...
+
+asyncio.run(client())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_server.py b/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_server.py
new file mode 100644
index 0000000000..1bcc9c90ba
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/faq/shutdown_server.py
@@ -0,0 +1,20 @@
+#!/usr/bin/env python
+
+import asyncio
+import signal
+import websockets
+
+async def echo(websocket):
+ async for message in websocket:
+ await websocket.send(message)
+
+async def server():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(echo, "localhost", 8765):
+ await stop
+
+asyncio.run(server())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/hello.py b/testing/web-platform/tests/tools/third_party/websockets/example/hello.py
new file mode 100644
index 0000000000..a3ce0699ee
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/hello.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python
+
+import asyncio
+from websockets.sync.client import connect
+
+def hello():
+ with connect("ws://localhost:8765") as websocket:
+ websocket.send("Hello world!")
+ message = websocket.recv()
+ print(f"Received: {message}")
+
+hello()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_client.py b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_client.py
new file mode 100644
index 0000000000..164732152f
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_client.py
@@ -0,0 +1,14 @@
+#!/usr/bin/env python
+
+# WS client example with HTTP Basic Authentication
+
+import asyncio
+import websockets
+
+async def hello():
+ uri = "ws://mary:p@ssw0rd@localhost:8765"
+ async with websockets.connect(uri) as websocket:
+ greeting = await websocket.recv()
+ print(greeting)
+
+asyncio.run(hello())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_server.py b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_server.py
new file mode 100644
index 0000000000..d2efeb7e53
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/basic_auth_server.py
@@ -0,0 +1,21 @@
+#!/usr/bin/env python
+
+# Server example with HTTP Basic Authentication over TLS
+
+import asyncio
+import websockets
+
+async def hello(websocket):
+ greeting = f"Hello {websocket.username}!"
+ await websocket.send(greeting)
+
+async def main():
+ async with websockets.serve(
+ hello, "localhost", 8765,
+ create_protocol=websockets.basic_auth_protocol_factory(
+ realm="example", credentials=("mary", "p@ssw0rd")
+ ),
+ ):
+ await asyncio.Future() # run forever
+
+asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_client.py b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_client.py
new file mode 100644
index 0000000000..9261567303
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_client.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+
+# WS client example connecting to a Unix socket
+
+import asyncio
+import os.path
+import websockets
+
+async def hello():
+ socket_path = os.path.join(os.path.dirname(__file__), "socket")
+ async with websockets.unix_connect(socket_path) as websocket:
+ name = input("What's your name? ")
+ await websocket.send(name)
+ print(f">>> {name}")
+
+ greeting = await websocket.recv()
+ print(f"<<< {greeting}")
+
+asyncio.run(hello())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_server.py b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_server.py
new file mode 100644
index 0000000000..335039c351
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/legacy/unix_server.py
@@ -0,0 +1,23 @@
+#!/usr/bin/env python
+
+# WS server example listening on a Unix socket
+
+import asyncio
+import os.path
+import websockets
+
+async def hello(websocket):
+ name = await websocket.recv()
+ print(f"<<< {name}")
+
+ greeting = f"Hello {name}!"
+
+ await websocket.send(greeting)
+ print(f">>> {greeting}")
+
+async def main():
+ socket_path = os.path.join(os.path.dirname(__file__), "socket")
+ async with websockets.unix_serve(hello, socket_path):
+ await asyncio.Future() # run forever
+
+asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/logging/json_log_formatter.py b/testing/web-platform/tests/tools/third_party/websockets/example/logging/json_log_formatter.py
new file mode 100644
index 0000000000..b8fc8d6dc9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/logging/json_log_formatter.py
@@ -0,0 +1,33 @@
+import json
+import logging
+import datetime
+
+class JSONFormatter(logging.Formatter):
+ """
+ Render logs as JSON.
+
+ To add details to a log record, store them in a ``event_data``
+ custom attribute. This dict is merged into the event.
+
+ """
+ def __init__(self):
+ pass # override logging.Formatter constructor
+
+ def format(self, record):
+ event = {
+ "timestamp": self.getTimestamp(record.created),
+ "message": record.getMessage(),
+ "level": record.levelname,
+ "logger": record.name,
+ }
+ event_data = getattr(record, "event_data", None)
+ if event_data:
+ event.update(event_data)
+ if record.exc_info:
+ event["exc_info"] = self.formatException(record.exc_info)
+ if record.stack_info:
+ event["stack_info"] = self.formatStack(record.stack_info)
+ return json.dumps(event)
+
+ def getTimestamp(self, created):
+ return datetime.datetime.utcfromtimestamp(created).isoformat()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client.py
new file mode 100644
index 0000000000..8d588c2b0e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client.py
@@ -0,0 +1,18 @@
+#!/usr/bin/env python
+
+import asyncio
+import websockets
+
+async def hello():
+ uri = "ws://localhost:8765"
+ async with websockets.connect(uri) as websocket:
+ name = input("What's your name? ")
+
+ await websocket.send(name)
+ print(f">>> {name}")
+
+ greeting = await websocket.recv()
+ print(f"<<< {greeting}")
+
+if __name__ == "__main__":
+ asyncio.run(hello())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client_secure.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client_secure.py
new file mode 100644
index 0000000000..f4b39f2b83
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/client_secure.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+
+import asyncio
+import pathlib
+import ssl
+import websockets
+
+ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
+localhost_pem = pathlib.Path(__file__).with_name("localhost.pem")
+ssl_context.load_verify_locations(localhost_pem)
+
+async def hello():
+ uri = "wss://localhost:8765"
+ async with websockets.connect(uri, ssl=ssl_context) as websocket:
+ name = input("What's your name? ")
+
+ await websocket.send(name)
+ print(f">>> {name}")
+
+ greeting = await websocket.recv()
+ print(f"<<< {greeting}")
+
+if __name__ == "__main__":
+ asyncio.run(hello())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.css b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.css
new file mode 100644
index 0000000000..e1f4b77148
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.css
@@ -0,0 +1,33 @@
+body {
+ font-family: "Courier New", sans-serif;
+ text-align: center;
+}
+.buttons {
+ font-size: 4em;
+ display: flex;
+ justify-content: center;
+}
+.button, .value {
+ line-height: 1;
+ padding: 2rem;
+ margin: 2rem;
+ border: medium solid;
+ min-height: 1em;
+ min-width: 1em;
+}
+.button {
+ cursor: pointer;
+ user-select: none;
+}
+.minus {
+ color: red;
+}
+.plus {
+ color: green;
+}
+.value {
+ min-width: 2em;
+}
+.state {
+ font-size: 2em;
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.html b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.html
new file mode 100644
index 0000000000..2e3433bd21
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>WebSocket demo</title>
+ <link href="counter.css" rel="stylesheet">
+ </head>
+ <body>
+ <div class="buttons">
+ <div class="minus button">-</div>
+ <div class="value">?</div>
+ <div class="plus button">+</div>
+ </div>
+ <div class="state">
+ <span class="users">?</span> online
+ </div>
+ <script src="counter.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.js b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.js
new file mode 100644
index 0000000000..37d892a28b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.js
@@ -0,0 +1,26 @@
+window.addEventListener("DOMContentLoaded", () => {
+ const websocket = new WebSocket("ws://localhost:6789/");
+
+ document.querySelector(".minus").addEventListener("click", () => {
+ websocket.send(JSON.stringify({ action: "minus" }));
+ });
+
+ document.querySelector(".plus").addEventListener("click", () => {
+ websocket.send(JSON.stringify({ action: "plus" }));
+ });
+
+ websocket.onmessage = ({ data }) => {
+ const event = JSON.parse(data);
+ switch (event.type) {
+ case "value":
+ document.querySelector(".value").textContent = event.value;
+ break;
+ case "users":
+ const users = `${event.count} user${event.count == 1 ? "" : "s"}`;
+ document.querySelector(".users").textContent = users;
+ break;
+ default:
+ console.error("unsupported event", event);
+ }
+ };
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.py
new file mode 100644
index 0000000000..566e12965e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/counter.py
@@ -0,0 +1,49 @@
+#!/usr/bin/env python
+
+import asyncio
+import json
+import logging
+import websockets
+
+logging.basicConfig()
+
+USERS = set()
+
+VALUE = 0
+
+def users_event():
+ return json.dumps({"type": "users", "count": len(USERS)})
+
+def value_event():
+ return json.dumps({"type": "value", "value": VALUE})
+
+async def counter(websocket):
+ global USERS, VALUE
+ try:
+ # Register user
+ USERS.add(websocket)
+ websockets.broadcast(USERS, users_event())
+ # Send current state to user
+ await websocket.send(value_event())
+ # Manage state changes
+ async for message in websocket:
+ event = json.loads(message)
+ if event["action"] == "minus":
+ VALUE -= 1
+ websockets.broadcast(USERS, value_event())
+ elif event["action"] == "plus":
+ VALUE += 1
+ websockets.broadcast(USERS, value_event())
+ else:
+ logging.error("unsupported event: %s", event)
+ finally:
+ # Unregister user
+ USERS.remove(websocket)
+ websockets.broadcast(USERS, users_event())
+
+async def main():
+ async with websockets.serve(counter, "localhost", 6789):
+ await asyncio.Future() # run forever
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/localhost.pem b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/localhost.pem
new file mode 100644
index 0000000000..f9a30ba8f6
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/localhost.pem
@@ -0,0 +1,48 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDG8iDak4UBpurI
+TWjSfqJ0YVG/S56nhswehupCaIzu0xQ8wqPSs36h5t1jMexJPZfvwyvFjcV+hYpj
+LMM0wMJPx9oBQEe0bsmlC66e8aF0UpSQw1aVfYoxA9BejgEyrFNE7cRbQNYFEb/5
+3HfqZKdEQA2fgQSlZ0RTRmLrD+l72iO5o2xl5bttXpqYZB2XOkyO79j/xWdu9zFE
+sgZJ5ysWbqoRAGgnxjdYYr9DARd8bIE/hN3SW7mDt5v4LqCIhGn1VmrwtT3d5AuG
+QPz4YEbm0t6GOlmFjIMYH5Y7pALRVfoJKRj6DGNIR1JicL+wqLV66kcVnj8WKbla
+20i7fR7NAgMBAAECggEAG5yvgqbG5xvLqlFUIyMAWTbIqcxNEONcoUAIc38fUGZr
+gKNjKXNQOBha0dG0AdZSqCxmftzWdGEEfA9SaJf4YCpUz6ekTB60Tfv5GIZg6kwr
+4ou6ELWD4Jmu6fC7qdTRGdgGUMQG8F0uT/eRjS67KHXbbi/x/SMAEK7MO+PRfCbj
++JGzS9Ym9mUweINPotgjHdDGwwd039VWYS+9A+QuNK27p3zq4hrWRb4wshSC8fKy
+oLoe4OQt81aowpX9k6mAU6N8vOmP8/EcQHYC+yFIIDZB2EmDP07R1LUEH3KJnzo7
+plCK1/kYPhX0a05cEdTpXdKa74AlvSRkS11sGqfUAQKBgQDj1SRv0AUGsHSA0LWx
+a0NT1ZLEXCG0uqgdgh0sTqIeirQsPROw3ky4lH5MbjkfReArFkhHu3M6KoywEPxE
+wanSRh/t1qcNjNNZUvFoUzAKVpb33RLkJppOTVEWPt+wtyDlfz1ZAXzMV66tACrx
+H2a3v0ZWUz6J+x/dESH5TTNL4QKBgQDfirmknp408pwBE+bulngKy0QvU09En8H0
+uvqr8q4jCXqJ1tXon4wsHg2yF4Fa37SCpSmvONIDwJvVWkkYLyBHKOns/fWCkW3n
+hIcYx0q2jgcoOLU0uoaM9ArRXhIxoWqV/KGkQzN+3xXC1/MxZ5OhyxBxfPCPIYIN
+YN3M1t/QbQKBgDImhsC+D30rdlmsl3IYZFed2ZKznQ/FTqBANd+8517FtWdPgnga
+VtUCitKUKKrDnNafLwXrMzAIkbNn6b/QyWrp2Lln2JnY9+TfpxgJx7de3BhvZ2sl
+PC4kQsccy+yAQxOBcKWY+Dmay251bP5qpRepWPhDlq6UwqzMyqev4KzBAoGAWDMi
+IEO9ZGK9DufNXCHeZ1PgKVQTmJ34JxmHQkTUVFqvEKfFaq1Y3ydUfAouLa7KSCnm
+ko42vuhGFB41bOdbMvh/o9RoBAZheNGfhDVN002ioUoOpSlbYU4A3q7hOtfXeCpf
+lLI3JT3cFi6ic8HMTDAU4tJLEA5GhATOPr4hPNkCgYB8jTYGcLvoeFaLEveg0kS2
+cz6ZXGLJx5m1AOQy5g9FwGaW+10lr8TF2k3AldwoiwX0R6sHAf/945aGU83ms5v9
+PB9/x66AYtSRUos9MwB4y1ur4g6FiXZUBgTJUqzz2nehPCyGjYhh49WucjszqcjX
+chS1bKZOY+1knWq8xj5Qyg==
+-----END PRIVATE KEY-----
+-----BEGIN CERTIFICATE-----
+MIIDTTCCAjWgAwIBAgIJAOjte6l+03jvMA0GCSqGSIb3DQEBCwUAMEwxCzAJBgNV
+BAYTAkZSMQ4wDAYDVQQHDAVQYXJpczEZMBcGA1UECgwQQXltZXJpYyBBdWd1c3Rp
+bjESMBAGA1UEAwwJbG9jYWxob3N0MCAXDTE4MDUwNTE2NTkyOVoYDzIwNjAwNTA0
+MTY1OTI5WjBMMQswCQYDVQQGEwJGUjEOMAwGA1UEBwwFUGFyaXMxGTAXBgNVBAoM
+EEF5bWVyaWMgQXVndXN0aW4xEjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAMbyINqThQGm6shNaNJ+onRhUb9LnqeGzB6G
+6kJojO7TFDzCo9KzfqHm3WMx7Ek9l+/DK8WNxX6FimMswzTAwk/H2gFAR7RuyaUL
+rp7xoXRSlJDDVpV9ijED0F6OATKsU0TtxFtA1gURv/ncd+pkp0RADZ+BBKVnRFNG
+YusP6XvaI7mjbGXlu21emphkHZc6TI7v2P/FZ273MUSyBknnKxZuqhEAaCfGN1hi
+v0MBF3xsgT+E3dJbuYO3m/guoIiEafVWavC1Pd3kC4ZA/PhgRubS3oY6WYWMgxgf
+ljukAtFV+gkpGPoMY0hHUmJwv7CotXrqRxWePxYpuVrbSLt9Hs0CAwEAAaMwMC4w
+LAYDVR0RBCUwI4IJbG9jYWxob3N0hwR/AAABhxAAAAAAAAAAAAAAAAAAAAABMA0G
+CSqGSIb3DQEBCwUAA4IBAQC9TsTxTEvqHPUS6sfvF77eG0D6HLOONVN91J+L7LiX
+v3bFeS1xbUS6/wIxZi5EnAt/te5vaHk/5Q1UvznQP4j2gNoM6lH/DRkSARvRitVc
+H0qN4Xp2Yk1R9VEx4ZgArcyMpI+GhE4vJRx1LE/hsuAzw7BAdsTt9zicscNg2fxO
+3ao/eBcdaC6n9aFYdE6CADMpB1lCX2oWNVdj6IavQLu7VMc+WJ3RKncwC9th+5OP
+ISPvkVZWf25rR2STmvvb0qEm3CZjk4Xd7N+gxbKKUvzEgPjrLSWzKKJAWHjCLugI
+/kQqhpjWVlTbtKzWz5bViqCjSbrIPpU2MgG9AUV9y3iV
+-----END CERTIFICATE-----
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server.py
new file mode 100644
index 0000000000..31b1829729
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server.py
@@ -0,0 +1,20 @@
+#!/usr/bin/env python
+
+import asyncio
+import websockets
+
+async def hello(websocket):
+ name = await websocket.recv()
+ print(f"<<< {name}")
+
+ greeting = f"Hello {name}!"
+
+ await websocket.send(greeting)
+ print(f">>> {greeting}")
+
+async def main():
+ async with websockets.serve(hello, "localhost", 8765):
+ await asyncio.Future() # run forever
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py
new file mode 100644
index 0000000000..de41d30dc0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+
+import asyncio
+import pathlib
+import ssl
+import websockets
+
+async def hello(websocket):
+ name = await websocket.recv()
+ print(f"<<< {name}")
+
+ greeting = f"Hello {name}!"
+
+ await websocket.send(greeting)
+ print(f">>> {greeting}")
+
+ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
+localhost_pem = pathlib.Path(__file__).with_name("localhost.pem")
+ssl_context.load_cert_chain(localhost_pem)
+
+async def main():
+ async with websockets.serve(hello, "localhost", 8765, ssl=ssl_context):
+ await asyncio.Future() # run forever
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.html b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.html
new file mode 100644
index 0000000000..b1c93b141d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>WebSocket demo</title>
+ </head>
+ <body>
+ <script src="show_time.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.js b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.js
new file mode 100644
index 0000000000..26bed7ec9e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.js
@@ -0,0 +1,12 @@
+window.addEventListener("DOMContentLoaded", () => {
+ const messages = document.createElement("ul");
+ document.body.appendChild(messages);
+
+ const websocket = new WebSocket("ws://localhost:5678/");
+ websocket.onmessage = ({ data }) => {
+ const message = document.createElement("li");
+ const content = document.createTextNode(data);
+ message.appendChild(content);
+ messages.appendChild(message);
+ };
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.py
new file mode 100644
index 0000000000..a83078e8a9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+
+import asyncio
+import datetime
+import random
+import websockets
+
+async def show_time(websocket):
+ while True:
+ message = datetime.datetime.utcnow().isoformat() + "Z"
+ await websocket.send(message)
+ await asyncio.sleep(random.random() * 2 + 1)
+
+async def main():
+ async with websockets.serve(show_time, "localhost", 5678):
+ await asyncio.Future() # run forever
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time_2.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time_2.py
new file mode 100644
index 0000000000..08e87f5931
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/show_time_2.py
@@ -0,0 +1,28 @@
+#!/usr/bin/env python
+
+import asyncio
+import datetime
+import random
+import websockets
+
+CONNECTIONS = set()
+
+async def register(websocket):
+ CONNECTIONS.add(websocket)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CONNECTIONS.remove(websocket)
+
+async def show_time():
+ while True:
+ message = datetime.datetime.utcnow().isoformat() + "Z"
+ websockets.broadcast(CONNECTIONS, message)
+ await asyncio.sleep(random.random() * 2 + 1)
+
+async def main():
+ async with websockets.serve(register, "localhost", 5678):
+ await show_time()
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.css b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.css
new file mode 100644
index 0000000000..27f0baf6e4
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.css
@@ -0,0 +1,105 @@
+/* General layout */
+
+body {
+ background-color: white;
+ display: flex;
+ flex-direction: column-reverse;
+ justify-content: center;
+ align-items: center;
+ margin: 0;
+ min-height: 100vh;
+}
+
+/* Action buttons */
+
+.actions {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-evenly;
+ align-items: flex-end;
+ width: 720px;
+ height: 100px;
+}
+
+.action {
+ color: darkgray;
+ font-family: "Helvetica Neue", sans-serif;
+ font-size: 20px;
+ line-height: 20px;
+ font-weight: 300;
+ text-align: center;
+ text-decoration: none;
+ text-transform: uppercase;
+ padding: 20px;
+ width: 120px;
+}
+
+.action:hover {
+ background-color: darkgray;
+ color: white;
+ font-weight: 700;
+}
+
+.action[href=""] {
+ display: none;
+}
+
+/* Connect Four board */
+
+.board {
+ background-color: blue;
+ display: flex;
+ flex-direction: row;
+ padding: 0 10px;
+ position: relative;
+}
+
+.board::before,
+.board::after {
+ background-color: blue;
+ content: "";
+ height: 720px;
+ width: 20px;
+ position: absolute;
+}
+
+.board::before {
+ left: -20px;
+}
+
+.board::after {
+ right: -20px;
+}
+
+.column {
+ display: flex;
+ flex-direction: column-reverse;
+ padding: 10px;
+}
+
+.cell {
+ border-radius: 50%;
+ width: 80px;
+ height: 80px;
+ margin: 10px 0;
+}
+
+.empty {
+ background-color: white;
+}
+
+.column:hover .empty {
+ background-color: lightgray;
+}
+
+.column:hover .empty ~ .empty {
+ background-color: white;
+}
+
+.red {
+ background-color: red;
+}
+
+.yellow {
+ background-color: yellow;
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.js b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.js
new file mode 100644
index 0000000000..cb5eb9fa27
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.js
@@ -0,0 +1,45 @@
+const PLAYER1 = "red";
+
+const PLAYER2 = "yellow";
+
+function createBoard(board) {
+ // Inject stylesheet.
+ const linkElement = document.createElement("link");
+ linkElement.href = import.meta.url.replace(".js", ".css");
+ linkElement.rel = "stylesheet";
+ document.head.append(linkElement);
+ // Generate board.
+ for (let column = 0; column < 7; column++) {
+ const columnElement = document.createElement("div");
+ columnElement.className = "column";
+ columnElement.dataset.column = column;
+ for (let row = 0; row < 6; row++) {
+ const cellElement = document.createElement("div");
+ cellElement.className = "cell empty";
+ cellElement.dataset.column = column;
+ columnElement.append(cellElement);
+ }
+ board.append(columnElement);
+ }
+}
+
+function playMove(board, player, column, row) {
+ // Check values of arguments.
+ if (player !== PLAYER1 && player !== PLAYER2) {
+ throw new Error(`player must be ${PLAYER1} or ${PLAYER2}.`);
+ }
+ const columnElement = board.querySelectorAll(".column")[column];
+ if (columnElement === undefined) {
+ throw new RangeError("column must be between 0 and 6.");
+ }
+ const cellElement = columnElement.querySelectorAll(".cell")[row];
+ if (cellElement === undefined) {
+ throw new RangeError("row must be between 0 and 5.");
+ }
+ // Place checker in cell.
+ if (!cellElement.classList.replace("empty", player)) {
+ throw new Error("cell must be empty.");
+ }
+}
+
+export { PLAYER1, PLAYER2, createBoard, playMove };
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.py b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.py
new file mode 100644
index 0000000000..0a61e7c7ee
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/connect4.py
@@ -0,0 +1,62 @@
+__all__ = ["PLAYER1", "PLAYER2", "Connect4"]
+
+PLAYER1, PLAYER2 = "red", "yellow"
+
+
+class Connect4:
+ """
+ A Connect Four game.
+
+ Play moves with :meth:`play`.
+
+ Get past moves with :attr:`moves`.
+
+ Check for a victory with :attr:`winner`.
+
+ """
+
+ def __init__(self):
+ self.moves = []
+ self.top = [0 for _ in range(7)]
+ self.winner = None
+
+ @property
+ def last_player(self):
+ """
+ Player who played the last move.
+
+ """
+ return PLAYER1 if len(self.moves) % 2 else PLAYER2
+
+ @property
+ def last_player_won(self):
+ """
+ Whether the last move is winning.
+
+ """
+ b = sum(1 << (8 * column + row) for _, column, row in self.moves[::-2])
+ return any(b & b >> v & b >> 2 * v & b >> 3 * v for v in [1, 7, 8, 9])
+
+ def play(self, player, column):
+ """
+ Play a move in a column.
+
+ Returns the row where the checker lands.
+
+ Raises :exc:`RuntimeError` if the move is illegal.
+
+ """
+ if player == self.last_player:
+ raise RuntimeError("It isn't your turn.")
+
+ row = self.top[column]
+ if row == 6:
+ raise RuntimeError("This slot is full.")
+
+ self.moves.append((player, column, row))
+ self.top[column] += 1
+
+ if self.winner is None and self.last_player_won:
+ self.winner = self.last_player
+
+ return row
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/favicon.ico b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/favicon.ico
new file mode 100644
index 0000000000..602c14e4eb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/start/favicon.ico
@@ -0,0 +1,2 @@
+ h& ��( >��-=��v=��`@��B��U=���;���;���;���B��#J��VE���A���=���<���;���<���R��WN���I���E���E��%>���;���;���;���=��*\��VU���Q���M���N��$K��cE���A���=���D���`����q9 ^���]���Z���U��$R��dM���I���F���g��j�j1��i0��k1Cf��b���_��#[��eU���Q���N���R���t8w�k2��i0��k19d��J]���Y���U���R���|>s�v:��r7��k3�����k2u�j50f��da���]���^����Gk�~@��z>��w<Ҧs@�l2��q��zE�h��;p��ēN��I���C��Bѳ�@�x<��o5��M��o7�ȔOJ��M���J���F(�A��z=��v:��p5ɪw3ϘS%ŒP���L���JﳂC��~A��{>ɪwDʖS�ŒP���M���J���CŻ�D͗UBƔPyÏMY̙f����������������( @ <��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��U��U��U��U��U��U��U��U��U��B��<���<���<���;���<���<��M<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��A��3<���;���;���;���;���;���;���;���U��U��U��U��U��U��U��U��U��U��U��U��U��U��U��>��>��>��>��>��>��>��F��3A���?���>���;���;���;���;���;���;���<���<��<��<��<��<��<��<��<��<��<��<��<��<��<��=��=��=��=��=��=��J��4F���D���B���?���>���<���;���;���;���;���;���>��->��>��>��>��>��>��>��>��>��>��>��>��>��<��<��<��<��<��M��5J���G���E���C���B���@���=���<���;���;���;���;���=���=��=��=��=��=��=��=��=��=��=��=��=��=��U��U��U��U��R��5N���K���I���G���E���C���B���B��A��'<���;���;���;���;���;���<��Y<��<��<��<��<��<��<��<��<��<��<��<��<��<��U��6S���Q���N���M���K���I���H���H��H��B��U@���>���<���;���;���;���;���<���U��U��U��U��U��U��U��U��U��U���j2�j2Z��6V���T���R���P���O���M���L���L��L��H��JE���A���@���=���<���;���;���;���;���<���<��<��<��<��<��<��<��<��<���k2^��1Z���X���V���T���S���P���P���P��P��K��KH���F���C���B���@���=���<���@���a���}�k��zOŜj2$�j2�j2�j2�j2�j2�j2�j2�j2�i1_���^���\���Z���X���V���V���V��V��M��LL���I���G���F���C���B���@����m��i1��i0��i0��i0��k2u�k2�k2�k2�k2�k2�k2�k2�k2�k1b���_���]���[���Z���Z���Z��Z��T��LR���N���M���J���I���H���G��sG���r6/�j0��i0��i0��i0��i1��i1�i1�i1�i1�i1�i1�i1�i1�k1d���a���`���]���]���]��]��V��MU���R���Q���N���M���K���J��rJ��J���r7p�l2��j1��i0��i0��k1��k1�k1�k1�k1�k1�k1�k1�k1��U���f��sa���a��_a��a��\��NW���V���T���R���P���O���M��qM��M���t8e�q6��o4��l2��j1��i0��k1X�k1�k1�k1�k1�k1�k1�k1�k1��U��U��U��U��U��Ub��F^���\���Z���X���W���T���T��pT��T���{<f�w;��s8��q6��o5��k2��j1�q9 �q9�q9�j2W��U��U��U��U��U�i0�i0�i0�i0�i0�i0a���_���^���[���Z���X���W��pW��W���~@g�z>��x<��v:��s8��r7��p5��l2B�l2�l2�j1}�i0��j0���U��U��U��U�i0�i0�i0�i0�i0���d���a���`���^���[���\��o\��\����Eg��B��~@��z=��y<��v:��t9��r7S�r7�r7�k3~�i0��|J��i0��i0��i0�i0�i0�j1�j1�j1�j1�j1�j1g���c���a���_���_��n_��_����JS��E���C���B��|?��z=��x<��v;R�v;�v;�n4�l2���\�����è���i0�i0�i0�i0�k1�k1�k1�k1�k1�k1���i��ff���d��Bd��d��ĝN
+��I���H���E���C��A��|?��~?Q�~?�~?�t8�q6��n4��t=�Ѽ���N��j1љj1�j1�j1�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5M`��J���H���G���D���C���BQ��B��B�z>��t9��s8��q6��m3��l3��k1��k19�k1�k1�k1�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5ÐO���M���J���H���G���G^��G��G�}?��z=��y<��u9��s8��o5��o4��o5>�o5�o5�o5�o5�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;ƑO�ÐO���L���J���I���G2��G��C���B��|?��z=��v:��u9��t7��s5>�s5�s5�s5�s5�s5�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?ʕTtőO�ÐN���M���I���I귆Gʵ�D���C��~@��|?��z=��x<�u;=�u;�u;�u;�u;�u;�u;��D��D��D��D��D��D��D��D��D��D��D��D̙W#ɖS�ŒP�ÐN���K���J���H���F���D���C��}@��|?�}?=�}?�}?�}?�}?�}?�}?�}?��I��I��I��I��I��I��I��I��I��I��I��I��I̘T�ǓQ�őO�ÏN���L���J���I���F���D���C�D<��D��D��D��D��D��D��D��D’U’U’U’U’U’U’U’U’U’U’U’U’U��U̗T�ǔQ�ŒP�ÏN���K���J���H���F鶄I8��I��I��I��I��I��I��I��I��I˘WOȓQ�œP�ÑN���Lھ�L�’U’U’U’U’U’U’U’U’U’U’U�����������������?��?����������0��`������@������������ ��0 ����0�� ��?�����������������������
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/app.py
new file mode 100644
index 0000000000..3b0fbd7868
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/app.py
@@ -0,0 +1,65 @@
+#!/usr/bin/env python
+
+import asyncio
+import itertools
+import json
+
+import websockets
+
+from connect4 import PLAYER1, PLAYER2, Connect4
+
+
+async def handler(websocket):
+ # Initialize a Connect Four game.
+ game = Connect4()
+
+ # Players take alternate turns, using the same browser.
+ turns = itertools.cycle([PLAYER1, PLAYER2])
+ player = next(turns)
+
+ async for message in websocket:
+ # Parse a "play" event from the UI.
+ event = json.loads(message)
+ assert event["type"] == "play"
+ column = event["column"]
+
+ try:
+ # Play the move.
+ row = game.play(player, column)
+ except RuntimeError as exc:
+ # Send an "error" event if the move was illegal.
+ event = {
+ "type": "error",
+ "message": str(exc),
+ }
+ await websocket.send(json.dumps(event))
+ continue
+
+ # Send a "play" event to update the UI.
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ await websocket.send(json.dumps(event))
+
+ # If move is winning, send a "win" event.
+ if game.winner is not None:
+ event = {
+ "type": "win",
+ "player": game.winner,
+ }
+ await websocket.send(json.dumps(event))
+
+ # Alternate turns.
+ player = next(turns)
+
+
+async def main():
+ async with websockets.serve(handler, "", 8001):
+ await asyncio.Future() # run forever
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/index.html b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/index.html
new file mode 100644
index 0000000000..8e38e89922
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/index.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Connect Four</title>
+ </head>
+ <body>
+ <div class="board"></div>
+ <script src="main.js" type="module"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/main.js b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/main.js
new file mode 100644
index 0000000000..dd28f9a6a8
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step1/main.js
@@ -0,0 +1,53 @@
+import { createBoard, playMove } from "./connect4.js";
+
+function showMessage(message) {
+ window.setTimeout(() => window.alert(message), 50);
+}
+
+function receiveMoves(board, websocket) {
+ websocket.addEventListener("message", ({ data }) => {
+ const event = JSON.parse(data);
+ switch (event.type) {
+ case "play":
+ // Update the UI with the move.
+ playMove(board, event.player, event.column, event.row);
+ break;
+ case "win":
+ showMessage(`Player ${event.player} wins!`);
+ // No further messages are expected; close the WebSocket connection.
+ websocket.close(1000);
+ break;
+ case "error":
+ showMessage(event.message);
+ break;
+ default:
+ throw new Error(`Unsupported event type: ${event.type}.`);
+ }
+ });
+}
+
+function sendMoves(board, websocket) {
+ // When clicking a column, send a "play" event for a move in that column.
+ board.addEventListener("click", ({ target }) => {
+ const column = target.dataset.column;
+ // Ignore clicks outside a column.
+ if (column === undefined) {
+ return;
+ }
+ const event = {
+ type: "play",
+ column: parseInt(column, 10),
+ };
+ websocket.send(JSON.stringify(event));
+ });
+}
+
+window.addEventListener("DOMContentLoaded", () => {
+ // Initialize the UI.
+ const board = document.querySelector(".board");
+ createBoard(board);
+ // Open the WebSocket connection and register event handlers.
+ const websocket = new WebSocket("ws://localhost:8001/");
+ receiveMoves(board, websocket);
+ sendMoves(board, websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/app.py
new file mode 100644
index 0000000000..2693d4304d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/app.py
@@ -0,0 +1,190 @@
+#!/usr/bin/env python
+
+import asyncio
+import json
+import secrets
+
+import websockets
+
+from connect4 import PLAYER1, PLAYER2, Connect4
+
+
+JOIN = {}
+
+WATCH = {}
+
+
+async def error(websocket, message):
+ """
+ Send an error message.
+
+ """
+ event = {
+ "type": "error",
+ "message": message,
+ }
+ await websocket.send(json.dumps(event))
+
+
+async def replay(websocket, game):
+ """
+ Send previous moves.
+
+ """
+ # Make a copy to avoid an exception if game.moves changes while iteration
+ # is in progress. If a move is played while replay is running, moves will
+ # be sent out of order but each move will be sent once and eventually the
+ # UI will be consistent.
+ for player, column, row in game.moves.copy():
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ await websocket.send(json.dumps(event))
+
+
+async def play(websocket, game, player, connected):
+ """
+ Receive and process moves from a player.
+
+ """
+ async for message in websocket:
+ # Parse a "play" event from the UI.
+ event = json.loads(message)
+ assert event["type"] == "play"
+ column = event["column"]
+
+ try:
+ # Play the move.
+ row = game.play(player, column)
+ except RuntimeError as exc:
+ # Send an "error" event if the move was illegal.
+ await error(websocket, str(exc))
+ continue
+
+ # Send a "play" event to update the UI.
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ websockets.broadcast(connected, json.dumps(event))
+
+ # If move is winning, send a "win" event.
+ if game.winner is not None:
+ event = {
+ "type": "win",
+ "player": game.winner,
+ }
+ websockets.broadcast(connected, json.dumps(event))
+
+
+async def start(websocket):
+ """
+ Handle a connection from the first player: start a new game.
+
+ """
+ # Initialize a Connect Four game, the set of WebSocket connections
+ # receiving moves from this game, and secret access tokens.
+ game = Connect4()
+ connected = {websocket}
+
+ join_key = secrets.token_urlsafe(12)
+ JOIN[join_key] = game, connected
+
+ watch_key = secrets.token_urlsafe(12)
+ WATCH[watch_key] = game, connected
+
+ try:
+ # Send the secret access tokens to the browser of the first player,
+ # where they'll be used for building "join" and "watch" links.
+ event = {
+ "type": "init",
+ "join": join_key,
+ "watch": watch_key,
+ }
+ await websocket.send(json.dumps(event))
+ # Receive and process moves from the first player.
+ await play(websocket, game, PLAYER1, connected)
+ finally:
+ del JOIN[join_key]
+ del WATCH[watch_key]
+
+
+async def join(websocket, join_key):
+ """
+ Handle a connection from the second player: join an existing game.
+
+ """
+ # Find the Connect Four game.
+ try:
+ game, connected = JOIN[join_key]
+ except KeyError:
+ await error(websocket, "Game not found.")
+ return
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+ # Send the first move, in case the first player already played it.
+ await replay(websocket, game)
+ # Receive and process moves from the second player.
+ await play(websocket, game, PLAYER2, connected)
+ finally:
+ connected.remove(websocket)
+
+
+async def watch(websocket, watch_key):
+ """
+ Handle a connection from a spectator: watch an existing game.
+
+ """
+ # Find the Connect Four game.
+ try:
+ game, connected = WATCH[watch_key]
+ except KeyError:
+ await error(websocket, "Game not found.")
+ return
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+ # Send previous moves, in case the game already started.
+ await replay(websocket, game)
+ # Keep the connection open, but don't receive any messages.
+ await websocket.wait_closed()
+ finally:
+ connected.remove(websocket)
+
+
+async def handler(websocket):
+ """
+ Handle a connection and dispatch it according to who is connecting.
+
+ """
+ # Receive and parse the "init" event from the UI.
+ message = await websocket.recv()
+ event = json.loads(message)
+ assert event["type"] == "init"
+
+ if "join" in event:
+ # Second player joins an existing game.
+ await join(websocket, event["join"])
+ elif "watch" in event:
+ # Spectator watches an existing game.
+ await watch(websocket, event["watch"])
+ else:
+ # First player starts a new game.
+ await start(websocket)
+
+
+async def main():
+ async with websockets.serve(handler, "", 8001):
+ await asyncio.Future() # run forever
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/index.html b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/index.html
new file mode 100644
index 0000000000..1a16f72a25
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/index.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Connect Four</title>
+ </head>
+ <body>
+ <div class="actions">
+ <a class="action new" href="/">New</a>
+ <a class="action join" href="">Join</a>
+ <a class="action watch" href="">Watch</a>
+ </div>
+ <div class="board"></div>
+ <script src="main.js" type="module"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/main.js b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/main.js
new file mode 100644
index 0000000000..d38a0140ac
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step2/main.js
@@ -0,0 +1,83 @@
+import { createBoard, playMove } from "./connect4.js";
+
+function initGame(websocket) {
+ websocket.addEventListener("open", () => {
+ // Send an "init" event according to who is connecting.
+ const params = new URLSearchParams(window.location.search);
+ let event = { type: "init" };
+ if (params.has("join")) {
+ // Second player joins an existing game.
+ event.join = params.get("join");
+ } else if (params.has("watch")) {
+ // Spectator watches an existing game.
+ event.watch = params.get("watch");
+ } else {
+ // First player starts a new game.
+ }
+ websocket.send(JSON.stringify(event));
+ });
+}
+
+function showMessage(message) {
+ window.setTimeout(() => window.alert(message), 50);
+}
+
+function receiveMoves(board, websocket) {
+ websocket.addEventListener("message", ({ data }) => {
+ const event = JSON.parse(data);
+ switch (event.type) {
+ case "init":
+ // Create links for inviting the second player and spectators.
+ document.querySelector(".join").href = "?join=" + event.join;
+ document.querySelector(".watch").href = "?watch=" + event.watch;
+ break;
+ case "play":
+ // Update the UI with the move.
+ playMove(board, event.player, event.column, event.row);
+ break;
+ case "win":
+ showMessage(`Player ${event.player} wins!`);
+ // No further messages are expected; close the WebSocket connection.
+ websocket.close(1000);
+ break;
+ case "error":
+ showMessage(event.message);
+ break;
+ default:
+ throw new Error(`Unsupported event type: ${event.type}.`);
+ }
+ });
+}
+
+function sendMoves(board, websocket) {
+ // Don't send moves for a spectator watching a game.
+ const params = new URLSearchParams(window.location.search);
+ if (params.has("watch")) {
+ return;
+ }
+
+ // When clicking a column, send a "play" event for a move in that column.
+ board.addEventListener("click", ({ target }) => {
+ const column = target.dataset.column;
+ // Ignore clicks outside a column.
+ if (column === undefined) {
+ return;
+ }
+ const event = {
+ type: "play",
+ column: parseInt(column, 10),
+ };
+ websocket.send(JSON.stringify(event));
+ });
+}
+
+window.addEventListener("DOMContentLoaded", () => {
+ // Initialize the UI.
+ const board = document.querySelector(".board");
+ createBoard(board);
+ // Open the WebSocket connection and register event handlers.
+ const websocket = new WebSocket("ws://localhost:8001/");
+ initGame(websocket);
+ receiveMoves(board, websocket);
+ sendMoves(board, websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/Procfile b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/Procfile
new file mode 100644
index 0000000000..2e35818f67
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/Procfile
@@ -0,0 +1 @@
+web: python app.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/app.py b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/app.py
new file mode 100644
index 0000000000..c2ee020d20
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/app.py
@@ -0,0 +1,198 @@
+#!/usr/bin/env python
+
+import asyncio
+import json
+import os
+import secrets
+import signal
+
+import websockets
+
+from connect4 import PLAYER1, PLAYER2, Connect4
+
+
+JOIN = {}
+
+WATCH = {}
+
+
+async def error(websocket, message):
+ """
+ Send an error message.
+
+ """
+ event = {
+ "type": "error",
+ "message": message,
+ }
+ await websocket.send(json.dumps(event))
+
+
+async def replay(websocket, game):
+ """
+ Send previous moves.
+
+ """
+ # Make a copy to avoid an exception if game.moves changes while iteration
+ # is in progress. If a move is played while replay is running, moves will
+ # be sent out of order but each move will be sent once and eventually the
+ # UI will be consistent.
+ for player, column, row in game.moves.copy():
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ await websocket.send(json.dumps(event))
+
+
+async def play(websocket, game, player, connected):
+ """
+ Receive and process moves from a player.
+
+ """
+ async for message in websocket:
+ # Parse a "play" event from the UI.
+ event = json.loads(message)
+ assert event["type"] == "play"
+ column = event["column"]
+
+ try:
+ # Play the move.
+ row = game.play(player, column)
+ except RuntimeError as exc:
+ # Send an "error" event if the move was illegal.
+ await error(websocket, str(exc))
+ continue
+
+ # Send a "play" event to update the UI.
+ event = {
+ "type": "play",
+ "player": player,
+ "column": column,
+ "row": row,
+ }
+ websockets.broadcast(connected, json.dumps(event))
+
+ # If move is winning, send a "win" event.
+ if game.winner is not None:
+ event = {
+ "type": "win",
+ "player": game.winner,
+ }
+ websockets.broadcast(connected, json.dumps(event))
+
+
+async def start(websocket):
+ """
+ Handle a connection from the first player: start a new game.
+
+ """
+ # Initialize a Connect Four game, the set of WebSocket connections
+ # receiving moves from this game, and secret access tokens.
+ game = Connect4()
+ connected = {websocket}
+
+ join_key = secrets.token_urlsafe(12)
+ JOIN[join_key] = game, connected
+
+ watch_key = secrets.token_urlsafe(12)
+ WATCH[watch_key] = game, connected
+
+ try:
+ # Send the secret access tokens to the browser of the first player,
+ # where they'll be used for building "join" and "watch" links.
+ event = {
+ "type": "init",
+ "join": join_key,
+ "watch": watch_key,
+ }
+ await websocket.send(json.dumps(event))
+ # Receive and process moves from the first player.
+ await play(websocket, game, PLAYER1, connected)
+ finally:
+ del JOIN[join_key]
+ del WATCH[watch_key]
+
+
+async def join(websocket, join_key):
+ """
+ Handle a connection from the second player: join an existing game.
+
+ """
+ # Find the Connect Four game.
+ try:
+ game, connected = JOIN[join_key]
+ except KeyError:
+ await error(websocket, "Game not found.")
+ return
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+ # Send the first move, in case the first player already played it.
+ await replay(websocket, game)
+ # Receive and process moves from the second player.
+ await play(websocket, game, PLAYER2, connected)
+ finally:
+ connected.remove(websocket)
+
+
+async def watch(websocket, watch_key):
+ """
+ Handle a connection from a spectator: watch an existing game.
+
+ """
+ # Find the Connect Four game.
+ try:
+ game, connected = WATCH[watch_key]
+ except KeyError:
+ await error(websocket, "Game not found.")
+ return
+
+ # Register to receive moves from this game.
+ connected.add(websocket)
+ try:
+ # Send previous moves, in case the game already started.
+ await replay(websocket, game)
+ # Keep the connection open, but don't receive any messages.
+ await websocket.wait_closed()
+ finally:
+ connected.remove(websocket)
+
+
+async def handler(websocket):
+ """
+ Handle a connection and dispatch it according to who is connecting.
+
+ """
+ # Receive and parse the "init" event from the UI.
+ message = await websocket.recv()
+ event = json.loads(message)
+ assert event["type"] == "init"
+
+ if "join" in event:
+ # Second player joins an existing game.
+ await join(websocket, event["join"])
+ elif "watch" in event:
+ # Spectator watches an existing game.
+ await watch(websocket, event["watch"])
+ else:
+ # First player starts a new game.
+ await start(websocket)
+
+
+async def main():
+ # Set the stop condition when receiving SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ port = int(os.environ.get("PORT", "8001"))
+ async with websockets.serve(handler, "", port):
+ await stop
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/index.html b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/index.html
new file mode 100644
index 0000000000..1a16f72a25
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/index.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Connect Four</title>
+ </head>
+ <body>
+ <div class="actions">
+ <a class="action new" href="/">New</a>
+ <a class="action join" href="">Join</a>
+ <a class="action watch" href="">Watch</a>
+ </div>
+ <div class="board"></div>
+ <script src="main.js" type="module"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/main.js b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/main.js
new file mode 100644
index 0000000000..3000fa2f78
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/main.js
@@ -0,0 +1,93 @@
+import { createBoard, playMove } from "./connect4.js";
+
+function getWebSocketServer() {
+ if (window.location.host === "python-websockets.github.io") {
+ return "wss://websockets-tutorial.herokuapp.com/";
+ } else if (window.location.host === "localhost:8000") {
+ return "ws://localhost:8001/";
+ } else {
+ throw new Error(`Unsupported host: ${window.location.host}`);
+ }
+}
+
+function initGame(websocket) {
+ websocket.addEventListener("open", () => {
+ // Send an "init" event according to who is connecting.
+ const params = new URLSearchParams(window.location.search);
+ let event = { type: "init" };
+ if (params.has("join")) {
+ // Second player joins an existing game.
+ event.join = params.get("join");
+ } else if (params.has("watch")) {
+ // Spectator watches an existing game.
+ event.watch = params.get("watch");
+ } else {
+ // First player starts a new game.
+ }
+ websocket.send(JSON.stringify(event));
+ });
+}
+
+function showMessage(message) {
+ window.setTimeout(() => window.alert(message), 50);
+}
+
+function receiveMoves(board, websocket) {
+ websocket.addEventListener("message", ({ data }) => {
+ const event = JSON.parse(data);
+ switch (event.type) {
+ case "init":
+ // Create links for inviting the second player and spectators.
+ document.querySelector(".join").href = "?join=" + event.join;
+ document.querySelector(".watch").href = "?watch=" + event.watch;
+ break;
+ case "play":
+ // Update the UI with the move.
+ playMove(board, event.player, event.column, event.row);
+ break;
+ case "win":
+ showMessage(`Player ${event.player} wins!`);
+ // No further messages are expected; close the WebSocket connection.
+ websocket.close(1000);
+ break;
+ case "error":
+ showMessage(event.message);
+ break;
+ default:
+ throw new Error(`Unsupported event type: ${event.type}.`);
+ }
+ });
+}
+
+function sendMoves(board, websocket) {
+ // Don't send moves for a spectator watching a game.
+ const params = new URLSearchParams(window.location.search);
+ if (params.has("watch")) {
+ return;
+ }
+
+ // When clicking a column, send a "play" event for a move in that column.
+ board.addEventListener("click", ({ target }) => {
+ const column = target.dataset.column;
+ // Ignore clicks outside a column.
+ if (column === undefined) {
+ return;
+ }
+ const event = {
+ type: "play",
+ column: parseInt(column, 10),
+ };
+ websocket.send(JSON.stringify(event));
+ });
+}
+
+window.addEventListener("DOMContentLoaded", () => {
+ // Initialize the UI.
+ const board = document.querySelector(".board");
+ createBoard(board);
+ // Open the WebSocket connection and register event handlers.
+ const websocket = new WebSocket(getWebSocketServer());
+ initGame(websocket);
+ receiveMoves(board, websocket);
+ sendMoves(board, websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/requirements.txt b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/requirements.txt
new file mode 100644
index 0000000000..14774b465e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/example/tutorial/step3/requirements.txt
@@ -0,0 +1 @@
+websockets
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/app.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/app.py
new file mode 100644
index 0000000000..039e21174b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/app.py
@@ -0,0 +1,226 @@
+#!/usr/bin/env python
+
+import asyncio
+import http
+import http.cookies
+import pathlib
+import signal
+import urllib.parse
+import uuid
+
+import websockets
+from websockets.frames import CloseCode
+
+
+# User accounts database
+
+USERS = {}
+
+
+def create_token(user, lifetime=1):
+ """Create token for user and delete it once its lifetime is over."""
+ token = uuid.uuid4().hex
+ USERS[token] = user
+ asyncio.get_running_loop().call_later(lifetime, USERS.pop, token)
+ return token
+
+
+def get_user(token):
+ """Find user authenticated by token or return None."""
+ return USERS.get(token)
+
+
+# Utilities
+
+
+def get_cookie(raw, key):
+ cookie = http.cookies.SimpleCookie(raw)
+ morsel = cookie.get(key)
+ if morsel is not None:
+ return morsel.value
+
+
+def get_query_param(path, key):
+ query = urllib.parse.urlparse(path).query
+ params = urllib.parse.parse_qs(query)
+ values = params.get(key, [])
+ if len(values) == 1:
+ return values[0]
+
+
+# Main HTTP server
+
+CONTENT_TYPES = {
+ ".css": "text/css",
+ ".html": "text/html; charset=utf-8",
+ ".ico": "image/x-icon",
+ ".js": "text/javascript",
+}
+
+
+async def serve_html(path, request_headers):
+ user = get_query_param(path, "user")
+ path = urllib.parse.urlparse(path).path
+ if path == "/":
+ if user is None:
+ page = "index.html"
+ else:
+ page = "test.html"
+ else:
+ page = path[1:]
+
+ try:
+ template = pathlib.Path(__file__).with_name(page)
+ except ValueError:
+ pass
+ else:
+ if template.is_file():
+ headers = {"Content-Type": CONTENT_TYPES[template.suffix]}
+ body = template.read_bytes()
+ if user is not None:
+ token = create_token(user)
+ body = body.replace(b"TOKEN", token.encode())
+ return http.HTTPStatus.OK, headers, body
+
+ return http.HTTPStatus.NOT_FOUND, {}, b"Not found\n"
+
+
+async def noop_handler(websocket):
+ pass
+
+
+# Send credentials as the first message in the WebSocket connection
+
+
+async def first_message_handler(websocket):
+ token = await websocket.recv()
+ user = get_user(token)
+ if user is None:
+ await websocket.close(CloseCode.INTERNAL_ERROR, "authentication failed")
+ return
+
+ await websocket.send(f"Hello {user}!")
+ message = await websocket.recv()
+ assert message == f"Goodbye {user}."
+
+
+# Add credentials to the WebSocket URI in a query parameter
+
+
+class QueryParamProtocol(websockets.WebSocketServerProtocol):
+ async def process_request(self, path, headers):
+ token = get_query_param(path, "token")
+ if token is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Missing token\n"
+
+ user = get_user(token)
+ if user is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Invalid token\n"
+
+ self.user = user
+
+
+async def query_param_handler(websocket):
+ user = websocket.user
+
+ await websocket.send(f"Hello {user}!")
+ message = await websocket.recv()
+ assert message == f"Goodbye {user}."
+
+
+# Set a cookie on the domain of the WebSocket URI
+
+
+class CookieProtocol(websockets.WebSocketServerProtocol):
+ async def process_request(self, path, headers):
+ if "Upgrade" not in headers:
+ template = pathlib.Path(__file__).with_name(path[1:])
+ headers = {"Content-Type": CONTENT_TYPES[template.suffix]}
+ body = template.read_bytes()
+ return http.HTTPStatus.OK, headers, body
+
+ token = get_cookie(headers.get("Cookie", ""), "token")
+ if token is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Missing token\n"
+
+ user = get_user(token)
+ if user is None:
+ return http.HTTPStatus.UNAUTHORIZED, [], b"Invalid token\n"
+
+ self.user = user
+
+
+async def cookie_handler(websocket):
+ user = websocket.user
+
+ await websocket.send(f"Hello {user}!")
+ message = await websocket.recv()
+ assert message == f"Goodbye {user}."
+
+
+# Adding credentials to the WebSocket URI in user information
+
+
+class UserInfoProtocol(websockets.BasicAuthWebSocketServerProtocol):
+ async def check_credentials(self, username, password):
+ if username != "token":
+ return False
+
+ user = get_user(password)
+ if user is None:
+ return False
+
+ self.user = user
+ return True
+
+
+async def user_info_handler(websocket):
+ user = websocket.user
+
+ await websocket.send(f"Hello {user}!")
+ message = await websocket.recv()
+ assert message == f"Goodbye {user}."
+
+
+# Start all five servers
+
+
+async def main():
+ # Set the stop condition when receiving SIGINT or SIGTERM.
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+ loop.add_signal_handler(signal.SIGINT, stop.set_result, None)
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ noop_handler,
+ host="",
+ port=8000,
+ process_request=serve_html,
+ ), websockets.serve(
+ first_message_handler,
+ host="",
+ port=8001,
+ ), websockets.serve(
+ query_param_handler,
+ host="",
+ port=8002,
+ create_protocol=QueryParamProtocol,
+ ), websockets.serve(
+ cookie_handler,
+ host="",
+ port=8003,
+ create_protocol=CookieProtocol,
+ ), websockets.serve(
+ user_info_handler,
+ host="",
+ port=8004,
+ create_protocol=UserInfoProtocol,
+ ):
+ print("Running on http://localhost:8000/")
+ await stop
+ print("\rExiting")
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.html
new file mode 100644
index 0000000000..ca17358fd0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Cookie | WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body class="test">
+ <p class="test">[??] Cookie</p>
+ <p class="ok">[OK] Cookie</p>
+ <p class="ko">[KO] Cookie</p>
+ <script src="script.js"></script>
+ <script src="cookie.js"></script>
+ <iframe src="http://localhost:8003/cookie_iframe.html" style="display: none;"></iframe>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.js
new file mode 100644
index 0000000000..2cca34fcbb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie.js
@@ -0,0 +1,23 @@
+// send token to iframe
+window.addEventListener("DOMContentLoaded", () => {
+ const iframe = document.querySelector("iframe");
+ iframe.addEventListener("load", () => {
+ iframe.contentWindow.postMessage(token, "http://localhost:8003");
+ });
+});
+
+// once iframe has set cookie, open WebSocket connection
+window.addEventListener("message", ({ origin }) => {
+ if (origin !== "http://localhost:8003") {
+ return;
+ }
+
+ const websocket = new WebSocket("ws://localhost:8003/");
+
+ websocket.onmessage = ({ data }) => {
+ // event.data is expected to be "Hello <user>!"
+ websocket.send(`Goodbye ${data.slice(6, -1)}.`);
+ };
+
+ runTest(websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.html
new file mode 100644
index 0000000000..9f49ebb9a0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Cookie iframe | WebSocket Authentication</title>
+ </head>
+ <body>
+ <script src="cookie_iframe.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.js
new file mode 100644
index 0000000000..2d2e692e8d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/cookie_iframe.js
@@ -0,0 +1,9 @@
+// receive token from the parent window, set cookie and notify parent
+window.addEventListener("message", ({ origin, data }) => {
+ if (origin !== "http://localhost:8000") {
+ return;
+ }
+
+ document.cookie = `token=${data}; SameSite=Strict`;
+ window.parent.postMessage("", "http://localhost:8000");
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.html
new file mode 100644
index 0000000000..4dc511a176
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>First message | WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body class="test">
+ <p class="test">[??] First message</p>
+ <p class="ok">[OK] First message</p>
+ <p class="ko">[KO] First message</p>
+ <script src="script.js"></script>
+ <script src="first_message.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.js
new file mode 100644
index 0000000000..1acf048baf
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/first_message.js
@@ -0,0 +1,11 @@
+window.addEventListener("DOMContentLoaded", () => {
+ const websocket = new WebSocket("ws://localhost:8001/");
+ websocket.onopen = () => websocket.send(token);
+
+ websocket.onmessage = ({ data }) => {
+ // event.data is expected to be "Hello <user>!"
+ websocket.send(`Goodbye ${data.slice(6, -1)}.`);
+ };
+
+ runTest(websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/index.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/index.html
new file mode 100644
index 0000000000..c37deef270
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/index.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body>
+ <form method="GET">
+ <input name="user" placeholder="username">
+ </form>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.html
new file mode 100644
index 0000000000..27aa454a40
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Query parameter | WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body class="test">
+ <p class="test">[??] Query parameter</p>
+ <p class="ok">[OK] Query parameter</p>
+ <p class="ko">[KO] Query parameter</p>
+ <script src="script.js"></script>
+ <script src="query_param.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.js
new file mode 100644
index 0000000000..6a54d0b6ca
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/query_param.js
@@ -0,0 +1,11 @@
+window.addEventListener("DOMContentLoaded", () => {
+ const uri = `ws://localhost:8002/?token=${token}`;
+ const websocket = new WebSocket(uri);
+
+ websocket.onmessage = ({ data }) => {
+ // event.data is expected to be "Hello <user>!"
+ websocket.send(`Goodbye ${data.slice(6, -1)}.`);
+ };
+
+ runTest(websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/script.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/script.js
new file mode 100644
index 0000000000..ec4e5e6709
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/script.js
@@ -0,0 +1,51 @@
+var token = window.parent.token;
+
+function getExpectedEvents() {
+ return [
+ {
+ type: "open",
+ },
+ {
+ type: "message",
+ data: `Hello ${window.parent.user}!`,
+ },
+ {
+ type: "close",
+ code: 1000,
+ reason: "",
+ wasClean: true,
+ },
+ ];
+}
+
+function isEqual(expected, actual) {
+ // good enough for our purposes here!
+ return JSON.stringify(expected) === JSON.stringify(actual);
+}
+
+function testStep(expected, actual) {
+ if (isEqual(expected, actual)) {
+ document.body.className = "ok";
+ } else if (isEqual(expected.slice(0, actual.length), actual)) {
+ document.body.className = "test";
+ } else {
+ document.body.className = "ko";
+ }
+}
+
+function runTest(websocket) {
+ const expected = getExpectedEvents();
+ var actual = [];
+ websocket.addEventListener("open", ({ type }) => {
+ actual.push({ type });
+ testStep(expected, actual);
+ });
+ websocket.addEventListener("message", ({ type, data }) => {
+ actual.push({ type, data });
+ testStep(expected, actual);
+ });
+ websocket.addEventListener("close", ({ type, code, reason, wasClean }) => {
+ actual.push({ type, code, reason, wasClean });
+ testStep(expected, actual);
+ });
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/style.css b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/style.css
new file mode 100644
index 0000000000..6e3918ccae
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/style.css
@@ -0,0 +1,69 @@
+/* page layout */
+
+body {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ margin: 0;
+ height: 100vh;
+}
+div.title, iframe {
+ width: 100vw;
+ height: 20vh;
+ border: none;
+}
+div.title {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+}
+h1, p {
+ margin: 0;
+ width: 24em;
+}
+
+/* text style */
+
+h1, input, p {
+ font-family: monospace;
+ font-size: 3em;
+}
+input {
+ color: #333;
+ border: 3px solid #999;
+ padding: 1em;
+}
+input:focus {
+ border-color: #333;
+ outline: none;
+}
+input::placeholder {
+ color: #999;
+ opacity: 1;
+}
+
+/* test results */
+
+body.test {
+ background-color: #666;
+ color: #fff;
+}
+body.ok {
+ background-color: #090;
+ color: #fff;
+}
+body.ko {
+ background-color: #900;
+ color: #fff;
+}
+body > p {
+ display: none;
+}
+body > p.title,
+body.test > p.test,
+body.ok > p.ok,
+body.ko > p.ko {
+ display: block;
+}
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.html
new file mode 100644
index 0000000000..3883d6a39e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body data-token="TOKEN">
+ <div class="title"><h1>WebSocket Authentication</h1></div>
+ <iframe src="first_message.html"></iframe>
+ <iframe src="query_param.html"></iframe>
+ <iframe src="cookie.html"></iframe>
+ <iframe src="user_info.html"></iframe>
+ <script src="test.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.js
new file mode 100644
index 0000000000..428830ff31
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/test.js
@@ -0,0 +1,6 @@
+// for connecting to WebSocket servers
+var token = document.body.dataset.token;
+
+// for test assertions only
+const params = new URLSearchParams(window.location.search);
+var user = params.get("user");
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.html b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.html
new file mode 100644
index 0000000000..7b9c99c730
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>User information | WebSocket Authentication</title>
+ <link href="style.css" rel="stylesheet">
+ </head>
+ <body class="test">
+ <p class="test">[??] User information</p>
+ <p class="ok">[OK] User information</p>
+ <p class="ko">[KO] User information</p>
+ <script src="script.js"></script>
+ <script src="user_info.js"></script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.js b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.js
new file mode 100644
index 0000000000..1dab2ce4c1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/authentication/user_info.js
@@ -0,0 +1,11 @@
+window.addEventListener("DOMContentLoaded", () => {
+ const uri = `ws://token:${token}@localhost:8004/`;
+ const websocket = new WebSocket(uri);
+
+ websocket.onmessage = ({ data }) => {
+ // event.data is expected to be "Hello <user>!"
+ websocket.send(`Goodbye ${data.slice(6, -1)}.`);
+ };
+
+ runTest(websocket);
+});
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/clients.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/clients.py
new file mode 100644
index 0000000000..fe39dfe051
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/clients.py
@@ -0,0 +1,61 @@
+#!/usr/bin/env python
+
+import asyncio
+import statistics
+import sys
+import time
+
+import websockets
+
+
+LATENCIES = {}
+
+
+async def log_latency(interval):
+ while True:
+ await asyncio.sleep(interval)
+ p = statistics.quantiles(LATENCIES.values(), n=100)
+ print(f"clients = {len(LATENCIES)}")
+ print(
+ f"p50 = {p[49] / 1e6:.1f}ms, "
+ f"p95 = {p[94] / 1e6:.1f}ms, "
+ f"p99 = {p[98] / 1e6:.1f}ms"
+ )
+ print()
+
+
+async def client():
+ try:
+ async with websockets.connect(
+ "ws://localhost:8765",
+ ping_timeout=None,
+ ) as websocket:
+ async for msg in websocket:
+ client_time = time.time_ns()
+ server_time = int(msg[:19].decode())
+ LATENCIES[websocket] = client_time - server_time
+ except Exception as exc:
+ print(exc)
+
+
+async def main(count, interval):
+ asyncio.create_task(log_latency(interval))
+ clients = []
+ for _ in range(count):
+ clients.append(asyncio.create_task(client()))
+ await asyncio.sleep(0.001) # 1ms between each connection
+ await asyncio.wait(clients)
+
+
+if __name__ == "__main__":
+ try:
+ count = int(sys.argv[1])
+ interval = float(sys.argv[2])
+ except Exception as exc:
+ print(f"Usage: {sys.argv[0]} count interval")
+ print(" Connect <count> clients e.g. 1000")
+ print(" Report latency every <interval> seconds e.g. 1")
+ print()
+ print(exc)
+ else:
+ asyncio.run(main(count, interval))
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/server.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/server.py
new file mode 100644
index 0000000000..9c9907b7f9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/broadcast/server.py
@@ -0,0 +1,153 @@
+#!/usr/bin/env python
+
+import asyncio
+import functools
+import os
+import sys
+import time
+
+import websockets
+
+
+CLIENTS = set()
+
+
+async def send(websocket, message):
+ try:
+ await websocket.send(message)
+ except websockets.ConnectionClosed:
+ pass
+
+
+async def relay(queue, websocket):
+ while True:
+ message = await queue.get()
+ await websocket.send(message)
+
+
+class PubSub:
+ def __init__(self):
+ self.waiter = asyncio.Future()
+
+ def publish(self, value):
+ waiter, self.waiter = self.waiter, asyncio.Future()
+ waiter.set_result((value, self.waiter))
+
+ async def subscribe(self):
+ waiter = self.waiter
+ while True:
+ value, waiter = await waiter
+ yield value
+
+ __aiter__ = subscribe
+
+
+PUBSUB = PubSub()
+
+
+async def handler(websocket, method=None):
+ if method in ["default", "naive", "task", "wait"]:
+ CLIENTS.add(websocket)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CLIENTS.remove(websocket)
+ elif method == "queue":
+ queue = asyncio.Queue()
+ relay_task = asyncio.create_task(relay(queue, websocket))
+ CLIENTS.add(queue)
+ try:
+ await websocket.wait_closed()
+ finally:
+ CLIENTS.remove(queue)
+ relay_task.cancel()
+ elif method == "pubsub":
+ async for message in PUBSUB:
+ await websocket.send(message)
+ else:
+ raise NotImplementedError(f"unsupported method: {method}")
+
+
+async def broadcast(method, size, delay):
+ """Broadcast messages at regular intervals."""
+ load_average = 0
+ time_average = 0
+ pc1, pt1 = time.perf_counter_ns(), time.process_time_ns()
+ await asyncio.sleep(delay)
+ while True:
+ print(f"clients = {len(CLIENTS)}")
+ pc0, pt0 = time.perf_counter_ns(), time.process_time_ns()
+ load_average = 0.9 * load_average + 0.1 * (pt0 - pt1) / (pc0 - pc1)
+ print(
+ f"load = {(pt0 - pt1) / (pc0 - pc1) * 100:.1f}% / "
+ f"average = {load_average * 100:.1f}%, "
+ f"late = {(pc0 - pc1 - delay * 1e9) / 1e6:.1f} ms"
+ )
+ pc1, pt1 = pc0, pt0
+
+ assert size > 20
+ message = str(time.time_ns()).encode() + b" " + os.urandom(size - 20)
+
+ if method == "default":
+ websockets.broadcast(CLIENTS, message)
+ elif method == "naive":
+ # Since the loop can yield control, make a copy of CLIENTS
+ # to avoid: RuntimeError: Set changed size during iteration
+ for websocket in CLIENTS.copy():
+ await send(websocket, message)
+ elif method == "task":
+ for websocket in CLIENTS:
+ asyncio.create_task(send(websocket, message))
+ elif method == "wait":
+ if CLIENTS: # asyncio.wait doesn't accept an empty list
+ await asyncio.wait(
+ [
+ asyncio.create_task(send(websocket, message))
+ for websocket in CLIENTS
+ ]
+ )
+ elif method == "queue":
+ for queue in CLIENTS:
+ queue.put_nowait(message)
+ elif method == "pubsub":
+ PUBSUB.publish(message)
+ else:
+ raise NotImplementedError(f"unsupported method: {method}")
+
+ pc2 = time.perf_counter_ns()
+ wait = delay + (pc1 - pc2) / 1e9
+ time_average = 0.9 * time_average + 0.1 * (pc2 - pc1)
+ print(
+ f"broadcast = {(pc2 - pc1) / 1e6:.1f}ms / "
+ f"average = {time_average / 1e6:.1f}ms, "
+ f"wait = {wait * 1e3:.1f}ms"
+ )
+ await asyncio.sleep(wait)
+ print()
+
+
+async def main(method, size, delay):
+ async with websockets.serve(
+ functools.partial(handler, method=method),
+ "localhost",
+ 8765,
+ compression=None,
+ ping_timeout=None,
+ ):
+ await broadcast(method, size, delay)
+
+
+if __name__ == "__main__":
+ try:
+ method = sys.argv[1]
+ assert method in ["default", "naive", "task", "wait", "queue", "pubsub"]
+ size = int(sys.argv[2])
+ delay = float(sys.argv[3])
+ except Exception as exc:
+ print(f"Usage: {sys.argv[0]} method size delay")
+ print(" Start a server broadcasting messages with <method> e.g. naive")
+ print(" Send a payload of <size> bytes every <delay> seconds")
+ print()
+ print(exc)
+ else:
+ asyncio.run(main(method, size, delay))
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/benchmark.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/benchmark.py
new file mode 100644
index 0000000000..c5b13c8fa3
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/benchmark.py
@@ -0,0 +1,163 @@
+#!/usr/bin/env python
+
+import getpass
+import json
+import pickle
+import subprocess
+import sys
+import time
+import zlib
+
+
+CORPUS_FILE = "corpus.pkl"
+
+REPEAT = 10
+
+WB, ML = 12, 5 # defaults used as a reference
+
+
+def _corpus():
+ OAUTH_TOKEN = getpass.getpass("OAuth Token? ")
+ COMMIT_API = (
+ f'curl -H "Authorization: token {OAUTH_TOKEN}" '
+ f"https://api.github.com/repos/python-websockets/websockets/git/commits/:sha"
+ )
+
+ commits = []
+
+ head = subprocess.check_output("git rev-parse HEAD", shell=True).decode().strip()
+ todo = [head]
+ seen = set()
+
+ while todo:
+ sha = todo.pop(0)
+ commit = subprocess.check_output(COMMIT_API.replace(":sha", sha), shell=True)
+ commits.append(commit)
+ seen.add(sha)
+ for parent in json.loads(commit)["parents"]:
+ sha = parent["sha"]
+ if sha not in seen and sha not in todo:
+ todo.append(sha)
+ time.sleep(1) # rate throttling
+
+ return commits
+
+
+def corpus():
+ data = _corpus()
+ with open(CORPUS_FILE, "wb") as handle:
+ pickle.dump(data, handle)
+
+
+def _run(data):
+ size = {}
+ duration = {}
+
+ for wbits in range(9, 16):
+ size[wbits] = {}
+ duration[wbits] = {}
+
+ for memLevel in range(1, 10):
+ encoder = zlib.compressobj(wbits=-wbits, memLevel=memLevel)
+ encoded = []
+
+ t0 = time.perf_counter()
+
+ for _ in range(REPEAT):
+ for item in data:
+ if isinstance(item, str):
+ item = item.encode("utf-8")
+ # Taken from PerMessageDeflate.encode
+ item = encoder.compress(item) + encoder.flush(zlib.Z_SYNC_FLUSH)
+ if item.endswith(b"\x00\x00\xff\xff"):
+ item = item[:-4]
+ encoded.append(item)
+
+ t1 = time.perf_counter()
+
+ size[wbits][memLevel] = sum(len(item) for item in encoded)
+ duration[wbits][memLevel] = (t1 - t0) / REPEAT
+
+ raw_size = sum(len(item) for item in data)
+
+ print("=" * 79)
+ print("Compression ratio")
+ print("=" * 79)
+ print("\t".join(["wb \\ ml"] + [str(memLevel) for memLevel in range(1, 10)]))
+ for wbits in range(9, 16):
+ print(
+ "\t".join(
+ [str(wbits)]
+ + [
+ f"{100 * (1 - size[wbits][memLevel] / raw_size):.1f}%"
+ for memLevel in range(1, 10)
+ ]
+ )
+ )
+ print("=" * 79)
+ print()
+
+ print("=" * 79)
+ print("CPU time")
+ print("=" * 79)
+ print("\t".join(["wb \\ ml"] + [str(memLevel) for memLevel in range(1, 10)]))
+ for wbits in range(9, 16):
+ print(
+ "\t".join(
+ [str(wbits)]
+ + [
+ f"{1000 * duration[wbits][memLevel]:.1f}ms"
+ for memLevel in range(1, 10)
+ ]
+ )
+ )
+ print("=" * 79)
+ print()
+
+ print("=" * 79)
+ print(f"Size vs. {WB} \\ {ML}")
+ print("=" * 79)
+ print("\t".join(["wb \\ ml"] + [str(memLevel) for memLevel in range(1, 10)]))
+ for wbits in range(9, 16):
+ print(
+ "\t".join(
+ [str(wbits)]
+ + [
+ f"{100 * (size[wbits][memLevel] / size[WB][ML] - 1):.1f}%"
+ for memLevel in range(1, 10)
+ ]
+ )
+ )
+ print("=" * 79)
+ print()
+
+ print("=" * 79)
+ print(f"Time vs. {WB} \\ {ML}")
+ print("=" * 79)
+ print("\t".join(["wb \\ ml"] + [str(memLevel) for memLevel in range(1, 10)]))
+ for wbits in range(9, 16):
+ print(
+ "\t".join(
+ [str(wbits)]
+ + [
+ f"{100 * (duration[wbits][memLevel] / duration[WB][ML] - 1):.1f}%"
+ for memLevel in range(1, 10)
+ ]
+ )
+ )
+ print("=" * 79)
+ print()
+
+
+def run():
+ with open(CORPUS_FILE, "rb") as handle:
+ data = pickle.load(handle)
+ _run(data)
+
+
+try:
+ run = globals()[sys.argv[1]]
+except (KeyError, IndexError):
+ print(f"Usage: {sys.argv[0]} [corpus|run]")
+else:
+ run()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/client.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/client.py
new file mode 100644
index 0000000000..3ee19ddc59
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/client.py
@@ -0,0 +1,59 @@
+#!/usr/bin/env python
+
+import asyncio
+import statistics
+import tracemalloc
+
+import websockets
+from websockets.extensions import permessage_deflate
+
+
+CLIENTS = 20
+INTERVAL = 1 / 10 # seconds
+
+WB, ML = 12, 5
+
+MEM_SIZE = []
+
+
+async def client(client):
+ # Space out connections to make them sequential.
+ await asyncio.sleep(client * INTERVAL)
+
+ tracemalloc.start()
+
+ async with websockets.connect(
+ "ws://localhost:8765",
+ extensions=[
+ permessage_deflate.ClientPerMessageDeflateFactory(
+ server_max_window_bits=WB,
+ client_max_window_bits=WB,
+ compress_settings={"memLevel": ML},
+ )
+ ],
+ ) as ws:
+ await ws.send("hello")
+ await ws.recv()
+
+ await ws.send(b"hello")
+ await ws.recv()
+
+ MEM_SIZE.append(tracemalloc.get_traced_memory()[0])
+ tracemalloc.stop()
+
+ # Hold connection open until the end of the test.
+ await asyncio.sleep(CLIENTS * INTERVAL)
+
+
+async def clients():
+ await asyncio.gather(*[client(client) for client in range(CLIENTS + 1)])
+
+
+asyncio.run(clients())
+
+
+# First connection incurs non-representative setup costs.
+del MEM_SIZE[0]
+
+print(f"µ = {statistics.mean(MEM_SIZE) / 1024:.1f} KiB")
+print(f"σ = {statistics.stdev(MEM_SIZE) / 1024:.1f} KiB")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/server.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/server.py
new file mode 100644
index 0000000000..8d1ee3cd7c
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/compression/server.py
@@ -0,0 +1,70 @@
+#!/usr/bin/env python
+
+import asyncio
+import os
+import signal
+import statistics
+import tracemalloc
+
+import websockets
+from websockets.extensions import permessage_deflate
+
+
+CLIENTS = 20
+INTERVAL = 1 / 10 # seconds
+
+WB, ML = 12, 5
+
+MEM_SIZE = []
+
+
+async def handler(ws):
+ msg = await ws.recv()
+ await ws.send(msg)
+
+ msg = await ws.recv()
+ await ws.send(msg)
+
+ MEM_SIZE.append(tracemalloc.get_traced_memory()[0])
+ tracemalloc.stop()
+
+ tracemalloc.start()
+
+ # Hold connection open until the end of the test.
+ await asyncio.sleep(CLIENTS * INTERVAL)
+
+
+async def server():
+ loop = asyncio.get_running_loop()
+ stop = loop.create_future()
+
+ # Set the stop condition when receiving SIGTERM.
+ print("Stop the server with:")
+ print(f"kill -TERM {os.getpid()}")
+ print()
+ loop.add_signal_handler(signal.SIGTERM, stop.set_result, None)
+
+ async with websockets.serve(
+ handler,
+ "localhost",
+ 8765,
+ extensions=[
+ permessage_deflate.ServerPerMessageDeflateFactory(
+ server_max_window_bits=WB,
+ client_max_window_bits=WB,
+ compress_settings={"memLevel": ML},
+ )
+ ],
+ ):
+ tracemalloc.start()
+ await stop
+
+
+asyncio.run(server())
+
+
+# First connection may incur non-representative setup costs.
+del MEM_SIZE[0]
+
+print(f"µ = {statistics.mean(MEM_SIZE) / 1024:.1f} KiB")
+print(f"σ = {statistics.stdev(MEM_SIZE) / 1024:.1f} KiB")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_frames.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_frames.py
new file mode 100644
index 0000000000..e3acbe3c20
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_frames.py
@@ -0,0 +1,101 @@
+"""Benchark parsing WebSocket frames."""
+
+import subprocess
+import sys
+import timeit
+
+from websockets.extensions.permessage_deflate import PerMessageDeflate
+from websockets.frames import Frame, Opcode
+from websockets.streams import StreamReader
+
+
+# 256kB of text, compressible by about 70%.
+text = subprocess.check_output(["git", "log", "8dd8e410"], text=True)
+
+
+def get_frame(size):
+ repeat, remainder = divmod(size, 256 * 1024)
+ payload = repeat * text + text[:remainder]
+ return Frame(Opcode.TEXT, payload.encode(), True)
+
+
+def parse_frame(data, count, mask, extensions):
+ reader = StreamReader()
+ for _ in range(count):
+ reader.feed_data(data)
+ parser = Frame.parse(
+ reader.read_exact,
+ mask=mask,
+ extensions=extensions,
+ )
+ try:
+ next(parser)
+ except StopIteration:
+ pass
+ else:
+ assert False, "parser should return frame"
+ reader.feed_eof()
+ assert reader.at_eof(), "parser should consume all data"
+
+
+def run_benchmark(size, count, compression=False, number=100):
+ if compression:
+ extensions = [PerMessageDeflate(True, True, 12, 12, {"memLevel": 5})]
+ else:
+ extensions = []
+ globals = {
+ "get_frame": get_frame,
+ "parse_frame": parse_frame,
+ "extensions": extensions,
+ }
+ sppf = (
+ min(
+ timeit.repeat(
+ f"parse_frame(data, {count}, mask=True, extensions=extensions)",
+ f"data = get_frame({size})"
+ f".serialize(mask=True, extensions=extensions)",
+ number=number,
+ globals=globals,
+ )
+ )
+ / number
+ / count
+ * 1_000_000
+ )
+ cppf = (
+ min(
+ timeit.repeat(
+ f"parse_frame(data, {count}, mask=False, extensions=extensions)",
+ f"data = get_frame({size})"
+ f".serialize(mask=False, extensions=extensions)",
+ number=number,
+ globals=globals,
+ )
+ )
+ / number
+ / count
+ * 1_000_000
+ )
+ print(f"{size}\t{compression}\t{sppf:.2f}\t{cppf:.2f}")
+
+
+if __name__ == "__main__":
+ print("Sizes are in bytes. Times are in µs per frame.", file=sys.stderr)
+ print("Run `tabs -16` for clean output. Pipe stdout to TSV for saving.")
+ print(file=sys.stderr)
+
+ print("size\tcompression\tserver\tclient")
+ run_benchmark(size=8, count=1000, compression=False)
+ run_benchmark(size=60, count=1000, compression=False)
+ run_benchmark(size=500, count=1000, compression=False)
+ run_benchmark(size=4_000, count=1000, compression=False)
+ run_benchmark(size=30_000, count=200, compression=False)
+ run_benchmark(size=250_000, count=100, compression=False)
+ run_benchmark(size=2_000_000, count=20, compression=False)
+
+ run_benchmark(size=8, count=1000, compression=True)
+ run_benchmark(size=60, count=1000, compression=True)
+ run_benchmark(size=500, count=200, compression=True)
+ run_benchmark(size=4_000, count=100, compression=True)
+ run_benchmark(size=30_000, count=20, compression=True)
+ run_benchmark(size=250_000, count=10, compression=True)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_handshake.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_handshake.py
new file mode 100644
index 0000000000..af5a4ecae2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/parse_handshake.py
@@ -0,0 +1,102 @@
+"""Benchark parsing WebSocket handshake requests."""
+
+# The parser for responses is designed similarly and should perform similarly.
+
+import sys
+import timeit
+
+from websockets.http11 import Request
+from websockets.streams import StreamReader
+
+
+CHROME_HANDSHAKE = (
+ b"GET / HTTP/1.1\r\n"
+ b"Host: localhost:5678\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Pragma: no-cache\r\n"
+ b"Cache-Control: no-cache\r\n"
+ b"User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) "
+ b"AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Origin: null\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"Accept-Encoding: gzip, deflate, br\r\n"
+ b"Accept-Language: en-GB,en;q=0.9,en-US;q=0.8,fr;q=0.7\r\n"
+ b"Sec-WebSocket-Key: ebkySAl+8+e6l5pRKTMkyQ==\r\n"
+ b"Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits\r\n"
+ b"\r\n"
+)
+
+FIREFOX_HANDSHAKE = (
+ b"GET / HTTP/1.1\r\n"
+ b"Host: localhost:5678\r\n"
+ b"User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) "
+ b"Gecko/20100101 Firefox/111.0\r\n"
+ b"Accept: */*\r\n"
+ b"Accept-Language: en-US,en;q=0.7,fr-FR;q=0.3\r\n"
+ b"Accept-Encoding: gzip, deflate, br\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"Origin: null\r\n"
+ b"Sec-WebSocket-Extensions: permessage-deflate\r\n"
+ b"Sec-WebSocket-Key: 1PuS+hnb+0AXsL7z2hNAhw==\r\n"
+ b"Connection: keep-alive, Upgrade\r\n"
+ b"Sec-Fetch-Dest: websocket\r\n"
+ b"Sec-Fetch-Mode: websocket\r\n"
+ b"Sec-Fetch-Site: cross-site\r\n"
+ b"Pragma: no-cache\r\n"
+ b"Cache-Control: no-cache\r\n"
+ b"Upgrade: websocket\r\n"
+ b"\r\n"
+)
+
+WEBSOCKETS_HANDSHAKE = (
+ b"GET / HTTP/1.1\r\n"
+ b"Host: localhost:8765\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Key: 9c55e0/siQ6tJPCs/QR8ZA==\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits\r\n"
+ b"User-Agent: Python/3.11 websockets/11.0\r\n"
+ b"\r\n"
+)
+
+
+def parse_handshake(handshake):
+ reader = StreamReader()
+ reader.feed_data(handshake)
+ parser = Request.parse(reader.read_line)
+ try:
+ next(parser)
+ except StopIteration:
+ pass
+ else:
+ assert False, "parser should return request"
+ reader.feed_eof()
+ assert reader.at_eof(), "parser should consume all data"
+
+
+def run_benchmark(name, handshake, number=10000):
+ ph = (
+ min(
+ timeit.repeat(
+ "parse_handshake(handshake)",
+ number=number,
+ globals={"parse_handshake": parse_handshake, "handshake": handshake},
+ )
+ )
+ / number
+ * 1_000_000
+ )
+ print(f"{name}\t{len(handshake)}\t{ph:.1f}")
+
+
+if __name__ == "__main__":
+ print("Sizes are in bytes. Times are in µs per frame.", file=sys.stderr)
+ print("Run `tabs -16` for clean output. Pipe stdout to TSV for saving.")
+ print(file=sys.stderr)
+
+ print("client\tsize\ttime")
+ run_benchmark("Chrome", CHROME_HANDSHAKE)
+ run_benchmark("Firefox", FIREFOX_HANDSHAKE)
+ run_benchmark("websockets", WEBSOCKETS_HANDSHAKE)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/streams.py b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/streams.py
new file mode 100644
index 0000000000..ca24a59834
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/experiments/optimization/streams.py
@@ -0,0 +1,301 @@
+"""
+Benchmark two possible implementations of a stream reader.
+
+The difference lies in the data structure that buffers incoming data:
+
+* ``ByteArrayStreamReader`` uses a ``bytearray``;
+* ``BytesDequeStreamReader`` uses a ``deque[bytes]``.
+
+``ByteArrayStreamReader`` is faster for streaming small frames, which is the
+standard use case of websockets, likely due to its simple implementation and
+to ``bytearray`` being fast at appending data and removing data at the front
+(https://hg.python.org/cpython/rev/499a96611baa).
+
+``BytesDequeStreamReader`` is faster for large frames and for bursts, likely
+because it copies payloads only once, while ``ByteArrayStreamReader`` copies
+them twice.
+
+"""
+
+
+import collections
+import os
+import timeit
+
+
+# Implementations
+
+
+class ByteArrayStreamReader:
+ def __init__(self):
+ self.buffer = bytearray()
+ self.eof = False
+
+ def readline(self):
+ n = 0 # number of bytes to read
+ p = 0 # number of bytes without a newline
+ while True:
+ n = self.buffer.find(b"\n", p) + 1
+ if n > 0:
+ break
+ p = len(self.buffer)
+ yield
+ r = self.buffer[:n]
+ del self.buffer[:n]
+ return r
+
+ def readexactly(self, n):
+ assert n >= 0
+ while len(self.buffer) < n:
+ yield
+ r = self.buffer[:n]
+ del self.buffer[:n]
+ return r
+
+ def feed_data(self, data):
+ self.buffer += data
+
+ def feed_eof(self):
+ self.eof = True
+
+ def at_eof(self):
+ return self.eof and not self.buffer
+
+
+class BytesDequeStreamReader:
+ def __init__(self):
+ self.buffer = collections.deque()
+ self.eof = False
+
+ def readline(self):
+ b = []
+ while True:
+ # Read next chunk
+ while True:
+ try:
+ c = self.buffer.popleft()
+ except IndexError:
+ yield
+ else:
+ break
+ # Handle chunk
+ n = c.find(b"\n") + 1
+ if n == len(c):
+ # Read exactly enough data
+ b.append(c)
+ break
+ elif n > 0:
+ # Read too much data
+ b.append(c[:n])
+ self.buffer.appendleft(c[n:])
+ break
+ else: # n == 0
+ # Need to read more data
+ b.append(c)
+ return b"".join(b)
+
+ def readexactly(self, n):
+ if n == 0:
+ return b""
+ b = []
+ while True:
+ # Read next chunk
+ while True:
+ try:
+ c = self.buffer.popleft()
+ except IndexError:
+ yield
+ else:
+ break
+ # Handle chunk
+ n -= len(c)
+ if n == 0:
+ # Read exactly enough data
+ b.append(c)
+ break
+ elif n < 0:
+ # Read too much data
+ b.append(c[:n])
+ self.buffer.appendleft(c[n:])
+ break
+ else: # n >= 0
+ # Need to read more data
+ b.append(c)
+ return b"".join(b)
+
+ def feed_data(self, data):
+ self.buffer.append(data)
+
+ def feed_eof(self):
+ self.eof = True
+
+ def at_eof(self):
+ return self.eof and not self.buffer
+
+
+# Tests
+
+
+class Protocol:
+ def __init__(self, StreamReader):
+ self.reader = StreamReader()
+ self.events = []
+ # Start parser coroutine
+ self.parser = self.run_parser()
+ next(self.parser)
+
+ def run_parser(self):
+ while True:
+ frame = yield from self.reader.readexactly(2)
+ self.events.append(frame)
+ frame = yield from self.reader.readline()
+ self.events.append(frame)
+
+ def data_received(self, data):
+ self.reader.feed_data(data)
+ next(self.parser) # run parser until more data is needed
+ events, self.events = self.events, []
+ return events
+
+
+def run_test(StreamReader):
+ proto = Protocol(StreamReader)
+
+ actual = proto.data_received(b"a")
+ expected = []
+ assert actual == expected, f"{actual} != {expected}"
+
+ actual = proto.data_received(b"b")
+ expected = [b"ab"]
+ assert actual == expected, f"{actual} != {expected}"
+
+ actual = proto.data_received(b"c")
+ expected = []
+ assert actual == expected, f"{actual} != {expected}"
+
+ actual = proto.data_received(b"\n")
+ expected = [b"c\n"]
+ assert actual == expected, f"{actual} != {expected}"
+
+ actual = proto.data_received(b"efghi\njklmn")
+ expected = [b"ef", b"ghi\n", b"jk"]
+ assert actual == expected, f"{actual} != {expected}"
+
+
+# Benchmarks
+
+
+def get_frame_packets(size, packet_size=None):
+ if size < 126:
+ frame = bytes([138, size])
+ elif size < 65536:
+ frame = bytes([138, 126]) + bytes(divmod(size, 256))
+ else:
+ size1, size2 = divmod(size, 65536)
+ frame = (
+ bytes([138, 127]) + bytes(divmod(size1, 256)) + bytes(divmod(size2, 256))
+ )
+ frame += os.urandom(size)
+ if packet_size is None:
+ return [frame]
+ else:
+ packets = []
+ while frame:
+ packets.append(frame[:packet_size])
+ frame = frame[packet_size:]
+ return packets
+
+
+def benchmark_stream(StreamReader, packets, size, count):
+ reader = StreamReader()
+ for _ in range(count):
+ for packet in packets:
+ reader.feed_data(packet)
+ yield from reader.readexactly(2)
+ if size >= 65536:
+ yield from reader.readexactly(4)
+ elif size >= 126:
+ yield from reader.readexactly(2)
+ yield from reader.readexactly(size)
+ reader.feed_eof()
+ assert reader.at_eof()
+
+
+def benchmark_burst(StreamReader, packets, size, count):
+ reader = StreamReader()
+ for _ in range(count):
+ for packet in packets:
+ reader.feed_data(packet)
+ reader.feed_eof()
+ for _ in range(count):
+ yield from reader.readexactly(2)
+ if size >= 65536:
+ yield from reader.readexactly(4)
+ elif size >= 126:
+ yield from reader.readexactly(2)
+ yield from reader.readexactly(size)
+ assert reader.at_eof()
+
+
+def run_benchmark(size, count, packet_size=None, number=1000):
+ stmt = f"list(benchmark(StreamReader, packets, {size}, {count}))"
+ setup = f"packets = get_frame_packets({size}, {packet_size})"
+ context = globals()
+
+ context["StreamReader"] = context["ByteArrayStreamReader"]
+ context["benchmark"] = context["benchmark_stream"]
+ bas = min(timeit.repeat(stmt, setup, number=number, globals=context))
+ context["benchmark"] = context["benchmark_burst"]
+ bab = min(timeit.repeat(stmt, setup, number=number, globals=context))
+
+ context["StreamReader"] = context["BytesDequeStreamReader"]
+ context["benchmark"] = context["benchmark_stream"]
+ bds = min(timeit.repeat(stmt, setup, number=number, globals=context))
+ context["benchmark"] = context["benchmark_burst"]
+ bdb = min(timeit.repeat(stmt, setup, number=number, globals=context))
+
+ print(
+ f"Frame size = {size} bytes, "
+ f"frame count = {count}, "
+ f"packet size = {packet_size}"
+ )
+ print(f"* ByteArrayStreamReader (stream): {bas / number * 1_000_000:.1f}µs")
+ print(
+ f"* BytesDequeStreamReader (stream): "
+ f"{bds / number * 1_000_000:.1f}µs ({(bds / bas - 1) * 100:+.1f}%)"
+ )
+ print(f"* ByteArrayStreamReader (burst): {bab / number * 1_000_000:.1f}µs")
+ print(
+ f"* BytesDequeStreamReader (burst): "
+ f"{bdb / number * 1_000_000:.1f}µs ({(bdb / bab - 1) * 100:+.1f}%)"
+ )
+ print()
+
+
+if __name__ == "__main__":
+ run_test(ByteArrayStreamReader)
+ run_test(BytesDequeStreamReader)
+
+ run_benchmark(size=8, count=1000)
+ run_benchmark(size=60, count=1000)
+ run_benchmark(size=500, count=500)
+ run_benchmark(size=4_000, count=200)
+ run_benchmark(size=30_000, count=100)
+ run_benchmark(size=250_000, count=50)
+ run_benchmark(size=2_000_000, count=20)
+
+ run_benchmark(size=4_000, count=200, packet_size=1024)
+ run_benchmark(size=30_000, count=100, packet_size=1024)
+ run_benchmark(size=250_000, count=50, packet_size=1024)
+ run_benchmark(size=2_000_000, count=20, packet_size=1024)
+
+ run_benchmark(size=30_000, count=100, packet_size=4096)
+ run_benchmark(size=250_000, count=50, packet_size=4096)
+ run_benchmark(size=2_000_000, count=20, packet_size=4096)
+
+ run_benchmark(size=30_000, count=100, packet_size=16384)
+ run_benchmark(size=250_000, count=50, packet_size=16384)
+ run_benchmark(size=2_000_000, count=20, packet_size=16384)
+
+ run_benchmark(size=250_000, count=50, packet_size=65536)
+ run_benchmark(size=2_000_000, count=20, packet_size=65536)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_request_parser.py b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_request_parser.py
new file mode 100644
index 0000000000..59e0cea0f4
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_request_parser.py
@@ -0,0 +1,42 @@
+import sys
+
+import atheris
+
+
+with atheris.instrument_imports():
+ from websockets.exceptions import SecurityError
+ from websockets.http11 import Request
+ from websockets.streams import StreamReader
+
+
+def test_one_input(data):
+ reader = StreamReader()
+ reader.feed_data(data)
+ reader.feed_eof()
+
+ parser = Request.parse(
+ reader.read_line,
+ )
+
+ try:
+ next(parser)
+ except StopIteration as exc:
+ assert isinstance(exc.value, Request)
+ return # input accepted
+ except (
+ EOFError, # connection is closed without a full HTTP request
+ SecurityError, # request exceeds a security limit
+ ValueError, # request isn't well formatted
+ ):
+ return # input rejected with a documented exception
+
+ raise RuntimeError("parsing didn't complete")
+
+
+def main():
+ atheris.Setup(sys.argv, test_one_input)
+ atheris.Fuzz()
+
+
+if __name__ == "__main__":
+ main()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_response_parser.py b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_response_parser.py
new file mode 100644
index 0000000000..6906720a49
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_http11_response_parser.py
@@ -0,0 +1,44 @@
+import sys
+
+import atheris
+
+
+with atheris.instrument_imports():
+ from websockets.exceptions import SecurityError
+ from websockets.http11 import Response
+ from websockets.streams import StreamReader
+
+
+def test_one_input(data):
+ reader = StreamReader()
+ reader.feed_data(data)
+ reader.feed_eof()
+
+ parser = Response.parse(
+ reader.read_line,
+ reader.read_exact,
+ reader.read_to_eof,
+ )
+ try:
+ next(parser)
+ except StopIteration as exc:
+ assert isinstance(exc.value, Response)
+ return # input accepted
+ except (
+ EOFError, # connection is closed without a full HTTP response
+ SecurityError, # response exceeds a security limit
+ LookupError, # response isn't well formatted
+ ValueError, # response isn't well formatted
+ ):
+ return # input rejected with a documented exception
+
+ raise RuntimeError("parsing didn't complete")
+
+
+def main():
+ atheris.Setup(sys.argv, test_one_input)
+ atheris.Fuzz()
+
+
+if __name__ == "__main__":
+ main()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_websocket_parser.py b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_websocket_parser.py
new file mode 100644
index 0000000000..1509a3549d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/fuzzing/fuzz_websocket_parser.py
@@ -0,0 +1,51 @@
+import sys
+
+import atheris
+
+
+with atheris.instrument_imports():
+ from websockets.exceptions import PayloadTooBig, ProtocolError
+ from websockets.frames import Frame
+ from websockets.streams import StreamReader
+
+
+def test_one_input(data):
+ fdp = atheris.FuzzedDataProvider(data)
+ mask = fdp.ConsumeBool()
+ max_size_enabled = fdp.ConsumeBool()
+ max_size = fdp.ConsumeInt(4)
+ payload = fdp.ConsumeBytes(atheris.ALL_REMAINING)
+
+ reader = StreamReader()
+ reader.feed_data(payload)
+ reader.feed_eof()
+
+ parser = Frame.parse(
+ reader.read_exact,
+ mask=mask,
+ max_size=max_size if max_size_enabled else None,
+ )
+
+ try:
+ next(parser)
+ except StopIteration as exc:
+ assert isinstance(exc.value, Frame)
+ return # input accepted
+ except (
+ EOFError, # connection is closed without a full WebSocket frame
+ UnicodeDecodeError, # frame contains invalid UTF-8
+ PayloadTooBig, # frame's payload size exceeds ``max_size``
+ ProtocolError, # frame contains incorrect values
+ ):
+ return # input rejected with a documented exception
+
+ raise RuntimeError("parsing didn't complete")
+
+
+def main():
+ atheris.Setup(sys.argv, test_one_input)
+ atheris.Fuzz()
+
+
+if __name__ == "__main__":
+ main()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/favicon.ico b/testing/web-platform/tests/tools/third_party/websockets/logo/favicon.ico
new file mode 100644
index 0000000000..602c14e4eb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/favicon.ico
@@ -0,0 +1,2 @@
+ h& ��( >��-=��v=��`@��B��U=���;���;���;���B��#J��VE���A���=���<���;���<���R��WN���I���E���E��%>���;���;���;���=��*\��VU���Q���M���N��$K��cE���A���=���D���`����q9 ^���]���Z���U��$R��dM���I���F���g��j�j1��i0��k1Cf��b���_��#[��eU���Q���N���R���t8w�k2��i0��k19d��J]���Y���U���R���|>s�v:��r7��k3�����k2u�j50f��da���]���^����Gk�~@��z>��w<Ҧs@�l2��q��zE�h��;p��ēN��I���C��Bѳ�@�x<��o5��M��o7�ȔOJ��M���J���F(�A��z=��v:��p5ɪw3ϘS%ŒP���L���JﳂC��~A��{>ɪwDʖS�ŒP���M���J���CŻ�D͗UBƔPyÏMY̙f����������������( @ <��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��U��U��U��U��U��U��U��U��U��B��<���<���<���;���<���<��M<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��<��A��3<���;���;���;���;���;���;���;���U��U��U��U��U��U��U��U��U��U��U��U��U��U��U��>��>��>��>��>��>��>��F��3A���?���>���;���;���;���;���;���;���<���<��<��<��<��<��<��<��<��<��<��<��<��<��<��=��=��=��=��=��=��J��4F���D���B���?���>���<���;���;���;���;���;���>��->��>��>��>��>��>��>��>��>��>��>��>��>��<��<��<��<��<��M��5J���G���E���C���B���@���=���<���;���;���;���;���=���=��=��=��=��=��=��=��=��=��=��=��=��=��U��U��U��U��R��5N���K���I���G���E���C���B���B��A��'<���;���;���;���;���;���<��Y<��<��<��<��<��<��<��<��<��<��<��<��<��<��U��6S���Q���N���M���K���I���H���H��H��B��U@���>���<���;���;���;���;���<���U��U��U��U��U��U��U��U��U��U���j2�j2Z��6V���T���R���P���O���M���L���L��L��H��JE���A���@���=���<���;���;���;���;���<���<��<��<��<��<��<��<��<��<���k2^��1Z���X���V���T���S���P���P���P��P��K��KH���F���C���B���@���=���<���@���a���}�k��zOŜj2$�j2�j2�j2�j2�j2�j2�j2�j2�i1_���^���\���Z���X���V���V���V��V��M��LL���I���G���F���C���B���@����m��i1��i0��i0��i0��k2u�k2�k2�k2�k2�k2�k2�k2�k2�k1b���_���]���[���Z���Z���Z��Z��T��LR���N���M���J���I���H���G��sG���r6/�j0��i0��i0��i0��i1��i1�i1�i1�i1�i1�i1�i1�i1�k1d���a���`���]���]���]��]��V��MU���R���Q���N���M���K���J��rJ��J���r7p�l2��j1��i0��i0��k1��k1�k1�k1�k1�k1�k1�k1�k1��U���f��sa���a��_a��a��\��NW���V���T���R���P���O���M��qM��M���t8e�q6��o4��l2��j1��i0��k1X�k1�k1�k1�k1�k1�k1�k1�k1��U��U��U��U��U��Ub��F^���\���Z���X���W���T���T��pT��T���{<f�w;��s8��q6��o5��k2��j1�q9 �q9�q9�j2W��U��U��U��U��U�i0�i0�i0�i0�i0�i0a���_���^���[���Z���X���W��pW��W���~@g�z>��x<��v:��s8��r7��p5��l2B�l2�l2�j1}�i0��j0���U��U��U��U�i0�i0�i0�i0�i0���d���a���`���^���[���\��o\��\����Eg��B��~@��z=��y<��v:��t9��r7S�r7�r7�k3~�i0��|J��i0��i0��i0�i0�i0�j1�j1�j1�j1�j1�j1g���c���a���_���_��n_��_����JS��E���C���B��|?��z=��x<��v;R�v;�v;�n4�l2���\�����è���i0�i0�i0�i0�k1�k1�k1�k1�k1�k1���i��ff���d��Bd��d��ĝN
+��I���H���E���C��A��|?��~?Q�~?�~?�t8�q6��n4��t=�Ѽ���N��j1љj1�j1�j1�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5�o5M`��J���H���G���D���C���BQ��B��B�z>��t9��s8��q6��m3��l3��k1��k19�k1�k1�k1�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5�s5ÐO���M���J���H���G���G^��G��G�}?��z=��y<��u9��s8��o5��o4��o5>�o5�o5�o5�o5�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;�u;ƑO�ÐO���L���J���I���G2��G��C���B��|?��z=��v:��u9��t7��s5>�s5�s5�s5�s5�s5�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?�}?ʕTtőO�ÐN���M���I���I귆Gʵ�D���C��~@��|?��z=��x<�u;=�u;�u;�u;�u;�u;�u;��D��D��D��D��D��D��D��D��D��D��D��D̙W#ɖS�ŒP�ÐN���K���J���H���F���D���C��}@��|?�}?=�}?�}?�}?�}?�}?�}?�}?��I��I��I��I��I��I��I��I��I��I��I��I��I̘T�ǓQ�őO�ÏN���L���J���I���F���D���C�D<��D��D��D��D��D��D��D��D’U’U’U’U’U’U’U’U’U’U’U’U’U��U̗T�ǔQ�ŒP�ÏN���K���J���H���F鶄I8��I��I��I��I��I��I��I��I��I˘WOȓQ�œP�ÑN���Lھ�L�’U’U’U’U’U’U’U’U’U’U’U�����������������?��?����������0��`������@������������ ��0 ����0�� ��?�����������������������
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/github-social-preview.html b/testing/web-platform/tests/tools/third_party/websockets/logo/github-social-preview.html
new file mode 100644
index 0000000000..7f2b45badb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/github-social-preview.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>GitHub social preview</title>
+ <style>
+ body {
+ background-color: black;
+ color: white;
+ font-family: -apple-system;
+ font-size: 36px;
+ font-weight: 100;
+ text-align: center;
+ }
+ p.screenshot {
+ background-color: white;
+ box-sizing: border-box;
+ width: 1280px;
+ height: 640px;
+ margin: 40px auto;
+ padding: 40px;
+ }
+ p.screenshot.x2 {
+ width: 640px;
+ height: 320px;
+ padding: 20px;
+ }
+ p.screenshot img {
+ height: 100%;
+ }
+ </style>
+ </head>
+ <body>
+ <p>Take a screenshot of this DOM node to make a PNG.</p>
+ <p>For 2x DPI screens.</p>
+ <p class="screenshot x2"><img src="vertical.svg" alt="preview @ 2x"></p>
+ <p>For regular screens.</p>
+ <p class="screenshot"><img src="vertical.svg" alt="preview"></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/horizontal.svg b/testing/web-platform/tests/tools/third_party/websockets/logo/horizontal.svg
new file mode 100644
index 0000000000..ee872dc478
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/horizontal.svg
@@ -0,0 +1,31 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="1024" height="256" viewBox="0 0 1024 256">
+ <linearGradient id="w" x1="0" y1="0" x2="0.1667" y2="0.6667">
+ <stop offset="0%" stop-color="#ffe873" />
+ <stop offset="100%" stop-color="#ffd43b" />
+ </linearGradient>
+ <linearGradient id="s" x1="0" y1="0" x2="0.1667" y2="0.6667">
+ <stop offset="0%" stop-color="#5a9fd4" />
+ <stop offset="100%" stop-color="#306998" />
+ </linearGradient>
+<g>
+ <path fill="url(#w)" d="m 151.60708,154.81618 c -0.43704,0.0747 -0.88656,0.12978 -1.35572,0.14933 -2.45813,0.0764 -4.25357,-0.58665 -5.82335,-2.15107 l -8.89246,-8.85942 -11.23464,-11.19805 -36.040757,-35.919452 c -3.43568,-3.42217 -7.332485,-5.347474 -11.589626,-5.723468 -2.229803,-0.198219 -4.473877,0.03111 -6.640354,0.675545 -3.242133,0.944875 -6.135526,2.664848 -8.593662,5.116366 -3.834369,3.819499 -5.86349,8.414979 -5.875977,13.287799 -0.06065,4.95281 1.951523,9.60074 5.808192,13.44424 l 55.622894,55.43648 c 1.82219,1.84175 2.65971,3.79549 2.63384,6.14568 l 0.004,0.208 c 0.0527,2.43196 -0.75991,4.34571 -2.6267,6.20612 -1.78028,1.77598 -3.8094,2.65241 -6.30945,2.75552 -2.45814,0.0764 -4.25446,-0.58844 -5.82514,-2.15286 L 48.702551,136.2618 c -5.214172,-5.19459 -11.702899,-6.98745 -18.22998,-5.04881 -3.245701,0.9431 -6.135527,2.66307 -8.595446,5.11459 -3.83437,3.82127 -5.865275,8.41676 -5.875978,13.28957 -0.05619,4.95281 1.951524,9.60252 5.806409,13.4478 l 58.10689,57.90577 c 8.319842,8.29143 19.340421,11.9376 32.743314,10.83806 12.57967,-1.02043 23.02317,-5.5848 31.03441,-13.57313 7.51265,-7.4861 11.96423,-16.35175 13.28695,-26.42537 10.47206,-1.68264 19.29494,-6.04524 26.27512,-13.00158 4.01364,-3.99994 7.14963,-8.3972 9.40531,-13.16157 -14.15569,-0.39911 -28.23645,-4.00972 -41.05247,-10.83095 z" />
+ <path fill="url(#s)" d="m 196.96038,146.11854 c 0.10259,-12.84514 -4.43017,-23.98541 -13.50635,-33.1346 L 147.57292,77.225374 c -0.24349,-0.240885 -0.46469,-0.487992 -0.68678,-0.744877 -1.48416,-1.739529 -2.18788,-3.583056 -2.21018,-5.807022 -0.0259,-2.470184 0.84911,-4.508375 2.7605,-6.407902 1.91406,-1.909304 3.8531,-2.737735 6.36564,-2.684403 2.53662,0.024 4.62728,0.943097 6.57257,2.881734 l 60.59178,60.384846 12.11408,-12.06914 c 1.12203,-0.90755 1.95777,-1.76887 2.87823,-2.93418 5.91879,-7.51544 5.26947,-18.272609 -1.51003,-25.02895 L 187.20456,37.727314 c -9.19393,-9.157192 -20.36703,-13.776677 -33.16789,-13.7269 -12.94266,-0.05067 -24.14163,4.548375 -33.28739,13.662901 -9.02892,8.996307 -13.64015,19.93925 -13.7008,32.487501 l -0.004,0.14222 c -0.002,0.167998 -0.005,0.336884 -0.005,0.506659 -0.091,12.232701 4.10729,22.95787 12.48154,31.881285 0.40226,0.43022 0.80274,0.85777 1.22283,1.27821 l 35.75088,35.62612 c 1.88909,1.88174 2.71769,3.79638 2.69361,6.20968 l 0.003,0.20977 c 0.0527,2.43197 -0.76081,4.34571 -2.6276,6.20791 -1.44759,1.43909 -3.06286,2.27818 -4.9564,2.60262 12.81601,6.82123 26.89677,10.43184 41.05246,10.83362 2.80598,-5.92525 4.2509,-12.41848 4.29906,-19.43526 z" />
+ <path fill="#ffffff" d="m 215.68093,93.181574 c 2.84701,-2.838179 7.46359,-2.836401 10.30883,0 2.84433,2.834623 2.84612,7.435446 -0.002,10.270956 -2.84345,2.83818 -7.46271,2.83818 -10.30704,0 -2.84524,-2.83551 -2.84791,-7.435444 0,-10.270956 z" />
+ </g>
+ <g>
+ <g fill="#ffd43b">
+ <path d="m 271.62046,177.33313 c 0,4.1637 1.46619,7.71227 4.39858,10.64361 2.9324,2.93556 6.48202,4.40069 10.64783,4.40069 4.16475,0 7.71438,-1.46513 10.64572,-4.40069 2.93344,-2.93134 4.40069,-6.47991 4.40069,-10.64361 v -35.00332 c 0,-2.12345 0.7647,-3.95198 2.29514,-5.48032 1.53045,-1.53256 3.35793,-2.29831 5.48349,-2.29831 h 0.12745 c 2.16664,0 3.972,0.76575 5.41923,2.29831 1.53045,1.52834 2.2962,3.35793 2.2962,5.48032 v 35.00332 c 0,4.1637 1.4662,7.71227 4.40069,10.64361 2.93134,2.93556 6.47886,4.40069 10.64572,4.40069 4.20794,0 7.77758,-1.46513 10.70997,-4.40069 2.93345,-2.93134 4.40069,-6.47991 4.40069,-10.64361 v -35.00332 c 0,-2.12345 0.76365,-3.95198 2.29515,-5.48032 1.44302,-1.53256 3.25049,-2.29831 5.41924,-2.29831 h 0.1264 c 2.12661,0 3.95409,0.76575 5.48349,2.29831 1.48831,1.52834 2.23194,3.35793 2.23194,5.48032 v 35.00332 c 0,8.45696 -2.9977,15.68261 -8.98887,21.67484 -5.99329,5.99224 -13.21999,8.98993 -21.67695,8.98993 -10.11696,0 -17.7239,-3.35583 -22.82609,-10.07272 -5.14222,6.71689 -12.77234,10.07272 -22.88719,10.07272 -8.45801,0 -15.68471,-2.99769 -21.67695,-8.98993 C 258.9998,193.01574 256,185.79113 256,177.33313 v -35.00332 c 0,-2.12345 0.76575,-3.95198 2.29619,-5.48032 1.5294,-1.53256 3.33581,-2.29831 5.41924,-2.29831 h 0.1917 c 2.08238,0 3.88774,0.76575 5.42029,2.29831 1.52834,1.52834 2.29409,3.35793 2.29409,5.48032 v 35.00332 z" />
+ <path d="m 443.95216,155.97534 c 0.51085,1.06173 0.7668,2.14346 0.7668,3.25048 0,0.8932 -0.16957,1.78536 -0.50979,2.67854 -0.72363,1.99707 -2.08343,3.4422 -4.0805,4.33434 -5.95114,2.67854 -13.77085,6.20711 -23.46228,10.58463 -12.02871,5.43924 -19.08477,8.64866 -21.16715,9.62823 3.22943,4.07944 8.26737,6.11863 15.11067,6.11863 4.5471,0 8.67077,-1.33769 12.36786,-4.01625 3.61283,-2.63534 6.14286,-6.03541 7.58798,-10.20227 1.23342,-3.48538 3.69815,-5.22754 7.39524,-5.22754 2.6343,0 4.7388,1.10702 6.31138,3.31369 0.97746,1.36193 1.46619,2.78598 1.46619,4.27325 0,0.8932 -0.16958,1.80641 -0.50874,2.74069 -2.50791,7.26988 -6.90861,13.13573 -13.19681,17.59961 -6.37563,4.63031 -13.51702,6.94757 -21.4231,6.94757 -10.11591,0 -18.76563,-3.58965 -25.94809,-10.7742 -7.18351,-7.18353 -10.77527,-15.83219 -10.77527,-25.9502 0,-10.11591 3.59176,-18.76351 10.77527,-25.95019 7.18142,-7.1814 15.83218,-10.77422 25.94809,-10.77422 7.30885,0 13.98257,1.99916 20.01904,5.99223 5.99118,3.91512 10.43296,9.05524 13.32321,15.43298 z m -33.34331,-5.67836 c -5.86583,0 -10.86059,2.06343 -14.98322,6.18604 -4.08049,4.12473 -6.12073,9.11949 -6.12073,14.98322 v 0.44661 l 35.63951,-16.00282 c -3.1441,-3.73817 -7.99035,-5.61305 -14.53556,-5.61305 z" />
+ <path d="m 465.12141,108.41246 c 2.08238,0 3.88775,0.74469 5.41924,2.23194 1.53045,1.52834 2.29619,3.35793 2.29619,5.48244 v 24.79998 c 4.80202,-4.24796 11.83701,-6.37564 21.10185,-6.37564 10.11591,0 18.76561,3.59177 25.94914,10.77422 7.18245,7.18563 10.77527,15.83429 10.77527,25.9502 0,10.11695 -3.59282,18.76561 -10.77527,25.95018 C 512.70536,204.41035 504.05566,208 493.93869,208 c -10.11696,0 -18.74349,-3.56964 -25.88382,-10.71207 -7.18457,-7.09504 -10.7974,-15.70262 -10.83954,-25.82063 v -55.33941 c 0,-2.12556 0.76576,-3.95409 2.29621,-5.48243 1.52939,-1.48727 3.3358,-2.23196 5.41924,-2.23196 h 0.19063 z m 28.81622,41.88452 c -5.86477,0 -10.85953,2.06343 -14.9832,6.18604 -4.0784,4.12473 -6.11969,9.11949 -6.11969,14.98322 0,5.8237 2.04129,10.79633 6.11969,14.91896 4.12367,4.12263 9.11737,6.18393 14.9832,6.18393 5.82371,0 10.79635,-2.0613 14.92002,-6.18393 4.12051,-4.12263 6.18288,-9.09526 6.18288,-14.91896 0,-5.86267 -2.06237,-10.85849 -6.18288,-14.98322 -4.12367,-4.12261 -9.09525,-6.18604 -14.92002,-6.18604 z" />
+ </g>
+ <g fill="#306998">
+ <path d="m 561.26467,150.17375 c -1.87066,0 -3.44325,0.6362 -4.71773,1.9107 -1.27556,1.31872 -1.91281,2.89025 -1.91281,4.71773 0,2.5511 1.23237,4.46389 3.69919,5.73733 0.84898,0.46872 4.39859,1.53045 10.64678,3.18834 5.05795,1.44619 8.81825,3.33686 11.28296,5.67413 3.52963,3.35898 5.29179,8.14097 5.29179,14.34703 0,6.11862 -2.16769,11.36829 -6.50203,15.74581 -4.37857,4.33644 -9.62823,6.50308 -15.74791,6.50308 h -16.64005 c -2.08448,0 -3.88879,-0.76365 -5.42029,-2.29621 -1.53045,-1.44407 -2.2962,-3.25048 -2.2962,-5.41712 v -0.12953 c 0,-2.12345 0.76575,-3.95198 2.2962,-5.48243 1.53044,-1.53045 3.33581,-2.29619 5.42029,-2.29619 h 17.2773 c 1.8696,0 3.44324,-0.6362 4.71773,-1.9107 1.27556,-1.27554 1.91281,-2.84707 1.91281,-4.71774 0,-2.33937 -1.21131,-4.10366 -3.63285,-5.29073 -0.63723,-0.30018 -4.20898,-1.36192 -10.71208,-3.18834 -5.05899,-1.48725 -8.82139,-3.44535 -11.28611,-5.8669 -3.52856,-3.44217 -5.29075,-8.30949 -5.29075,-14.5998 0,-6.12073 2.16876,-11.34721 6.50414,-15.68261 4.37648,-4.37752 9.62718,-6.56839 15.74687,-6.56839 h 11.73166 c 2.12452,0 3.95304,0.76575 5.48349,2.29831 1.52939,1.52834 2.29515,3.35793 2.29515,5.48032 v 0.12745 c 0,2.16876 -0.76576,3.97622 -2.29515,5.4203 -1.53045,1.52834 -3.35897,2.29619 -5.48349,2.29619 z" />
+ <path d="m 630.5677,134.55118 c 10.1159,0 18.76456,3.59177 25.94912,10.77422 7.18246,7.18563 10.77422,15.83429 10.77422,25.9502 0,10.11695 -3.59176,18.76561 -10.77422,25.95018 C 649.33331,204.40929 640.6836,208 630.5677,208 c -10.11592,0 -18.76563,-3.58965 -25.9481,-10.77422 -7.18351,-7.18351 -10.77526,-15.83217 -10.77526,-25.95018 0,-10.11591 3.59175,-18.76352 10.77526,-25.9502 7.18247,-7.18245 15.83218,-10.77422 25.9481,-10.77422 z m 0,15.7458 c -5.86585,0 -10.86059,2.06343 -14.98322,6.18604 -4.08155,4.12473 -6.12178,9.11949 -6.12178,14.98322 0,5.8237 2.04023,10.79633 6.12178,14.91896 4.12263,4.12263 9.11632,6.18393 14.98322,6.18393 5.82264,0 10.79527,-2.0613 14.91896,-6.18393 4.12261,-4.12263 6.18393,-9.09526 6.18393,-14.91896 0,-5.86267 -2.06132,-10.85849 -6.18393,-14.98322 -4.12369,-4.12261 -9.09527,-6.18604 -14.91896,-6.18604 z" />
+ <path d="m 724.0345,136.27333 c 3.61388,1.14811 5.4203,3.61282 5.4203,7.39523 v 0.32125 c 0,2.59008 -1.04278,4.65138 -3.12516,6.18394 -1.44512,1.01854 -2.93343,1.52834 -4.46178,1.52834 -0.80894,0 -1.63789,-0.12745 -2.48684,-0.38235 -2.08344,-0.67938 -4.23007,-1.02276 -6.43883,-1.02276 -5.86585,0 -10.86165,2.06343 -14.98322,6.18604 -4.08154,4.12473 -6.12074,9.11949 -6.12074,14.98322 0,5.8237 2.0392,10.79633 6.12074,14.91896 4.12157,4.12263 9.11633,6.18393 14.98322,6.18393 2.20982,0 4.35645,-0.33915 6.43883,-1.02065 0.80683,-0.25489 1.61471,-0.38234 2.42259,-0.38234 1.57046,0 3.08197,0.5119 4.52709,1.53254 2.08238,1.52835 3.12514,3.61283 3.12514,6.24819 0,3.74027 -1.80746,6.205 -5.42028,7.39524 -3.56964,1.10491 -7.26673,1.65579 -11.09232,1.65579 -10.11591,0 -18.76562,-3.58965 -25.95019,-10.77423 -7.1814,-7.18351 -10.77422,-15.83217 -10.77422,-25.95018 0,-10.11592 3.59176,-18.76352 10.77422,-25.9502 7.18351,-7.1814 15.83322,-10.77422 25.95019,-10.77422 3.82348,0.002 7.52162,0.57827 11.09126,1.72426 z" />
+ <path d="m 748.19829,108.41246 c 2.08132,0 3.88773,0.74469 5.42029,2.23194 1.5294,1.52834 2.29514,3.35793 2.29514,5.48244 v 44.18284 h 2.42259 c 5.44031,0 10.17805,-1.80642 14.21852,-5.4203 3.95198,-3.61283 6.20394,-8.07461 6.75693,-13.38852 0.25491,-1.99705 1.10597,-3.63494 2.5511,-4.90837 1.44408,-1.35982 3.16517,-2.04131 5.16328,-2.04131 h 0.19066 c 2.25405,0 4.14578,0.85212 5.67517,2.55109 1.36087,1.48727 2.04026,3.20942 2.04026,5.16329 0,0.25491 -0.0222,0.53298 -0.0632,0.82895 -1.02064,10.66889 -5.10115,18.65923 -12.24147,23.97103 3.73922,2.29831 7.18246,6.18604 10.32973,11.66849 3.27155,5.65306 4.90944,11.75483 4.90944,18.29688 v 3.25471 c 0,2.16664 -0.7668,3.972 -2.29515,5.41713 -1.53255,1.53256 -3.33791,2.29619 -5.4203,2.29619 h -0.1917 c -2.08342,0 -3.88879,-0.76363 -5.41922,-2.29619 -1.53045,-1.44408 -2.29514,-3.25049 -2.29514,-5.41713 v -3.25471 c -0.0442,-5.77629 -2.10555,-10.73102 -6.185,-14.85575 -4.12367,-4.07944 -9.09736,-6.11863 -14.91896,-6.11863 h -5.22754 v 24.22804 c 0,2.16664 -0.76574,3.97199 -2.29514,5.41712 -1.5315,1.53256 -3.33897,2.29621 -5.42028,2.29621 h -0.19381 c -2.08237,0 -3.88668,-0.76365 -5.41819,-2.29621 -1.52939,-1.44407 -2.29515,-3.25048 -2.29515,-5.41712 v -84.15879 c 0,-2.12556 0.76576,-3.95408 2.29515,-5.48243 1.53045,-1.48727 3.33582,-2.23195 5.41819,-2.23195 h 0.19381 z" />
+ <path d="m 876.85801,155.97534 c 0.5098,1.06173 0.76469,2.14346 0.76469,3.25048 0,0.8932 -0.17063,1.78536 -0.50874,2.67854 -0.72362,1.99707 -2.08342,3.4422 -4.08049,4.33434 -5.95115,2.67854 -13.77191,6.20711 -23.46229,10.58463 -12.02869,5.43924 -19.08476,8.64866 -21.16715,9.62823 3.22838,4.07944 8.26632,6.11863 15.11066,6.11863 4.54606,0 8.66973,-1.33769 12.36893,-4.01625 3.61176,-2.63534 6.14075,-6.03541 7.58587,-10.20227 1.23238,-3.48538 3.6992,-5.22754 7.39524,-5.22754 2.63536,0 4.73985,1.10702 6.31348,3.31369 0.97536,1.36193 1.46515,2.78598 1.46515,4.27325 0,0.8932 -0.16958,1.80641 -0.5098,2.74069 -2.50791,7.26988 -6.9065,13.13573 -13.19681,17.59961 -6.37563,4.63031 -13.51598,6.94757 -21.42206,6.94757 -10.1159,0 -18.76561,-3.58965 -25.94808,-10.7742 -7.18351,-7.18353 -10.77526,-15.83219 -10.77526,-25.9502 0,-10.11591 3.59175,-18.76351 10.77526,-25.95019 7.18141,-7.1814 15.83218,-10.77422 25.94808,-10.77422 7.30887,0 13.98364,1.99916 20.01906,5.99223 5.99223,3.91512 10.43294,9.05524 13.32426,15.43298 z m -33.34436,-5.67836 c -5.86479,0 -10.86059,2.06343 -14.98322,6.18604 -4.08049,4.12473 -6.12074,9.11949 -6.12074,14.98322 v 0.44661 l 35.63952,-16.00282 c -3.14516,-3.73817 -7.99034,-5.61305 -14.53556,-5.61305 z" />
+ <path d="m 898.02411,108.41246 c 2.08238,0 3.88879,0.74469 5.42028,2.23194 1.52939,1.52834 2.29515,3.35793 2.29515,5.48244 v 18.42434 h 9.56398 c 2.08237,0 3.88772,0.76575 5.42028,2.29831 1.5294,1.52834 2.29304,3.35793 2.29304,5.48032 v 0.12745 c 0,2.16876 -0.76364,3.97621 -2.29304,5.4203 -1.5315,1.52834 -3.33791,2.29619 -5.42028,2.29619 h -9.56398 v 37.80405 c 0,1.23446 0.42343,2.27724 1.27554,3.12514 0.85002,0.85212 1.9128,1.27555 3.1873,1.27555 h 5.10114 c 2.08237,0 3.88772,0.76574 5.42028,2.29619 1.5294,1.53045 2.29304,3.35898 2.29304,5.48243 v 0.12954 c 0,2.16664 -0.76364,3.97199 -2.29304,5.41711 C 919.1923,207.23635 917.38589,208 915.30352,208 h -5.10114 c -5.52563,0 -10.26442,-1.95387 -14.21746,-5.86478 -3.91196,-3.95198 -5.86479,-8.67078 -5.86479,-14.15532 v -71.85095 c 0,-2.12558 0.7647,-3.9541 2.29515,-5.48245 1.53045,-1.48725 3.33686,-2.23193 5.41924,-2.23193 h 0.18959 z" />
+ <path d="m 951.70877,150.17375 c -1.87066,0 -3.44324,0.6362 -4.71773,1.9107 -1.27556,1.31872 -1.91281,2.89025 -1.91281,4.71773 0,2.5511 1.23238,4.46389 3.69711,5.73733 0.8521,0.46872 4.40067,1.53045 10.64886,3.18834 5.05691,1.44619 8.81825,3.33686 11.28402,5.67413 3.52751,3.35898 5.2918,8.14097 5.2918,14.34703 0,6.11862 -2.16876,11.36829 -6.5031,15.74581 -4.37752,4.33644 -9.62822,6.50308 -15.74789,6.50308 h -16.64007 c -2.08342,0 -3.88879,-0.76365 -5.42028,-2.29621 -1.53045,-1.44407 -2.2941,-3.25048 -2.2941,-5.41712 v -0.12953 c 0,-2.12345 0.76365,-3.95198 2.2941,-5.48243 1.53045,-1.53045 3.33686,-2.29619 5.42028,-2.29619 h 17.2773 c 1.86962,0 3.4443,-0.6362 4.71775,-1.9107 1.27554,-1.27554 1.91279,-2.84707 1.91279,-4.71774 0,-2.33937 -1.2113,-4.10366 -3.63283,-5.29073 -0.63936,-0.30018 -4.209,-1.36192 -10.71208,-3.18834 -5.05901,-1.48725 -8.8214,-3.44535 -11.28613,-5.8669 -3.52856,-3.44217 -5.29073,-8.30949 -5.29073,-14.5998 0,-6.12073 2.16875,-11.34721 6.50413,-15.68261 4.37647,-4.37752 9.62718,-6.56839 15.74791,-6.56839 h 11.73063 c 2.1266,0 3.95304,0.76575 5.48243,2.29831 1.53045,1.52834 2.29514,3.35793 2.29514,5.48032 v 0.12745 c 0,2.16876 -0.76469,3.97622 -2.29514,5.4203 -1.52939,1.52834 -3.35687,2.29619 -5.48243,2.29619 z" />
+ </g>
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/icon.html b/testing/web-platform/tests/tools/third_party/websockets/logo/icon.html
new file mode 100644
index 0000000000..6a71ec23bc
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/icon.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Icon</title>
+ <style>
+ body {
+ font-family: -apple-system;
+ font-size: 24px;
+ font-weight: 100;
+ text-align: center;
+ }
+ </style>
+ </head>
+ <body>
+ <p>Take a screenshot of these DOM nodes to2x make a PNG.</p>
+ <p><img src="icon.svg" height="8" width="8" alt="8x8 / 16x16 @ 2x"></p>
+ <p><img src="icon.svg" height="16" width="16" alt="16x16 / 32x32 @ 2x"></p>
+ <p><img src="icon.svg" height="32" width="32" alt="32x32 / 32x32 @ 2x"></p>
+ <p><img src="icon.svg" height="32" width="32" alt="32x32 / 64x64 @ 2x"></p>
+ <p><img src="icon.svg" height="64" width="64" alt="64x64 / 128x128 @ 2x"></p>
+ <p><img src="icon.svg" height="128" width="128" alt="128x128 / 256x256 @ 2x"></p>
+ <p><img src="icon.svg" height="256" width="256" alt="256x256 / 512x512 @ 2x"></p>
+ <p><img src="icon.svg" height="512" width="512" alt="512x512 / 1024x1024 @ 2x"></p>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/icon.svg b/testing/web-platform/tests/tools/third_party/websockets/logo/icon.svg
new file mode 100644
index 0000000000..cb760940aa
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/icon.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 256 256">
+ <linearGradient id="w" x1="0" y1="0" x2="0.6667" y2="0.6667">
+ <stop offset="0%" stop-color="#ffe873" />
+ <stop offset="100%" stop-color="#ffd43b" />
+ </linearGradient>
+ <linearGradient id="s" x1="0" y1="0" x2="0.6667" y2="0.6667">
+ <stop offset="0%" stop-color="#5a9fd4" />
+ <stop offset="100%" stop-color="#306998" />
+ </linearGradient>
+ <g>
+ <path fill="url(#w)" d="m 151.60708,154.81618 c -0.43704,0.0747 -0.88656,0.12978 -1.35572,0.14933 -2.45813,0.0764 -4.25357,-0.58665 -5.82335,-2.15107 l -8.89246,-8.85942 -11.23464,-11.19805 -36.040757,-35.919452 c -3.43568,-3.42217 -7.332485,-5.347474 -11.589626,-5.723468 -2.229803,-0.198219 -4.473877,0.03111 -6.640354,0.675545 -3.242133,0.944875 -6.135526,2.664848 -8.593662,5.116366 -3.834369,3.819499 -5.86349,8.414979 -5.875977,13.287799 -0.06065,4.95281 1.951523,9.60074 5.808192,13.44424 l 55.622894,55.43648 c 1.82219,1.84175 2.65971,3.79549 2.63384,6.14568 l 0.004,0.208 c 0.0527,2.43196 -0.75991,4.34571 -2.6267,6.20612 -1.78028,1.77598 -3.8094,2.65241 -6.30945,2.75552 -2.45814,0.0764 -4.25446,-0.58844 -5.82514,-2.15286 L 48.702551,136.2618 c -5.214172,-5.19459 -11.702899,-6.98745 -18.22998,-5.04881 -3.245701,0.9431 -6.135527,2.66307 -8.595446,5.11459 -3.83437,3.82127 -5.865275,8.41676 -5.875978,13.28957 -0.05619,4.95281 1.951524,9.60252 5.806409,13.4478 l 58.10689,57.90577 c 8.319842,8.29143 19.340421,11.9376 32.743314,10.83806 12.57967,-1.02043 23.02317,-5.5848 31.03441,-13.57313 7.51265,-7.4861 11.96423,-16.35175 13.28695,-26.42537 10.47206,-1.68264 19.29494,-6.04524 26.27512,-13.00158 4.01364,-3.99994 7.14963,-8.3972 9.40531,-13.16157 -14.15569,-0.39911 -28.23645,-4.00972 -41.05247,-10.83095 z" />
+ <path fill="url(#s)" d="m 196.96038,146.11854 c 0.10259,-12.84514 -4.43017,-23.98541 -13.50635,-33.1346 L 147.57292,77.225374 c -0.24349,-0.240885 -0.46469,-0.487992 -0.68678,-0.744877 -1.48416,-1.739529 -2.18788,-3.583056 -2.21018,-5.807022 -0.0259,-2.470184 0.84911,-4.508375 2.7605,-6.407902 1.91406,-1.909304 3.8531,-2.737735 6.36564,-2.684403 2.53662,0.024 4.62728,0.943097 6.57257,2.881734 l 60.59178,60.384846 12.11408,-12.06914 c 1.12203,-0.90755 1.95777,-1.76887 2.87823,-2.93418 5.91879,-7.51544 5.26947,-18.272609 -1.51003,-25.02895 L 187.20456,37.727314 c -9.19393,-9.157192 -20.36703,-13.776677 -33.16789,-13.7269 -12.94266,-0.05067 -24.14163,4.548375 -33.28739,13.662901 -9.02892,8.996307 -13.64015,19.93925 -13.7008,32.487501 l -0.004,0.14222 c -0.002,0.167998 -0.005,0.336884 -0.005,0.506659 -0.091,12.232701 4.10729,22.95787 12.48154,31.881285 0.40226,0.43022 0.80274,0.85777 1.22283,1.27821 l 35.75088,35.62612 c 1.88909,1.88174 2.71769,3.79638 2.69361,6.20968 l 0.003,0.20977 c 0.0527,2.43197 -0.76081,4.34571 -2.6276,6.20791 -1.44759,1.43909 -3.06286,2.27818 -4.9564,2.60262 12.81601,6.82123 26.89677,10.43184 41.05246,10.83362 2.80598,-5.92525 4.2509,-12.41848 4.29906,-19.43526 z" />
+ <path fill="#ffffff" d="m 215.68093,93.181574 c 2.84701,-2.838179 7.46359,-2.836401 10.30883,0 2.84433,2.834623 2.84612,7.435446 -0.002,10.270956 -2.84345,2.83818 -7.46271,2.83818 -10.30704,0 -2.84524,-2.83551 -2.84791,-7.435444 0,-10.270956 z" />
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/old.svg b/testing/web-platform/tests/tools/third_party/websockets/logo/old.svg
new file mode 100644
index 0000000000..a073139e33
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/old.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="360" height="120" viewBox="0 0 21 7">
+ <linearGradient id="w" x1="0" y1="0" x2="1" y2="1">
+ <stop offset="0%" stop-color="#5a9fd4" />
+ <stop offset="100%" stop-color="#306998" />
+ </linearGradient>
+ <linearGradient id="s" x1="0" y1="0" x2="1" y2="1">
+ <stop offset="0%" stop-color="#ffe873" />
+ <stop offset="100%" stop-color="#ffd43b" />
+ </linearGradient>
+ <polyline fill="none" stroke="url(#w)" stroke-linecap="round" stroke-linejoin="round"
+ points="1,1 1,5 5,5 5,1 5,5 9,5 9,1"/>
+ <polyline fill="none" stroke="url(#s)" stroke-linecap="round" stroke-linejoin="round"
+ points="19,1 11,1 11,3 19,3 19,5 11,5"/>
+</svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/logo/vertical.svg b/testing/web-platform/tests/tools/third_party/websockets/logo/vertical.svg
new file mode 100644
index 0000000000..b07fb22387
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/logo/vertical.svg
@@ -0,0 +1,31 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="480" height="320" viewBox="0 0 480 320">
+ <linearGradient id="w" x1="0.2333" y1="0" x2="0.5889" y2="0.5333">
+ <stop offset="0%" stop-color="#ffe873" />
+ <stop offset="100%" stop-color="#ffd43b" />
+ </linearGradient>
+ <linearGradient id="s" x1="0.2333" y1="0" x2="0.5889" y2="0.5333">
+ <stop offset="0%" stop-color="#5a9fd4" />
+ <stop offset="100%" stop-color="#306998" />
+ </linearGradient>
+ <g>
+ <path fill="url(#w)" d="m 263.40708,146.81618 c -0.43704,0.0747 -0.88656,0.12978 -1.35572,0.14933 -2.45813,0.0764 -4.25357,-0.58665 -5.82335,-2.15107 l -8.89246,-8.85942 -11.23464,-11.19805 -36.04076,-35.919454 c -3.43568,-3.42217 -7.33248,-5.347474 -11.58962,-5.723468 -2.22981,-0.198219 -4.47388,0.03111 -6.64036,0.675545 -3.24213,0.944875 -6.13552,2.664848 -8.59366,5.116366 -3.83437,3.819499 -5.86349,8.414979 -5.87598,13.287801 -0.0607,4.95281 1.95153,9.60074 5.8082,13.44424 l 55.62289,55.43648 c 1.82219,1.84175 2.65971,3.79549 2.63384,6.14568 l 0.004,0.208 c 0.0527,2.43196 -0.75991,4.34571 -2.6267,6.20612 -1.78028,1.77598 -3.8094,2.65241 -6.30945,2.75552 -2.45814,0.0764 -4.25446,-0.58844 -5.82514,-2.15286 L 160.50255,128.2618 c -5.21417,-5.19459 -11.7029,-6.98745 -18.22998,-5.04881 -3.2457,0.9431 -6.13553,2.66307 -8.59545,5.11459 -3.83437,3.82127 -5.86527,8.41676 -5.87597,13.28957 -0.0562,4.95281 1.95152,9.60252 5.80641,13.4478 l 58.10689,57.90577 c 8.31984,8.29143 19.34042,11.9376 32.74331,10.83806 12.57967,-1.02043 23.02317,-5.5848 31.03441,-13.57313 7.51265,-7.4861 11.96423,-16.35175 13.28695,-26.42537 10.47206,-1.68264 19.29494,-6.04524 26.27512,-13.00158 4.01364,-3.99994 7.14963,-8.3972 9.40531,-13.16157 -14.15569,-0.39911 -28.23645,-4.00972 -41.05247,-10.83095 z" />
+ <path fill="url(#s)" d="m 308.76038,138.11854 c 0.10259,-12.84514 -4.43017,-23.98541 -13.50635,-33.1346 L 259.37292,69.225372 c -0.24349,-0.240885 -0.46469,-0.487992 -0.68678,-0.744877 -1.48416,-1.739529 -2.18788,-3.583056 -2.21018,-5.807022 -0.0259,-2.470184 0.84911,-4.508375 2.7605,-6.407902 1.91406,-1.909304 3.8531,-2.737735 6.36564,-2.684403 2.53662,0.024 4.62728,0.943097 6.57257,2.881734 l 60.59178,60.384848 12.11408,-12.06914 c 1.12203,-0.90755 1.95777,-1.76887 2.87823,-2.93418 5.91879,-7.515442 5.26947,-18.272611 -1.51003,-25.028952 L 299.00456,29.727312 c -9.19393,-9.157192 -20.36703,-13.776677 -33.16789,-13.7269 -12.94266,-0.05067 -24.14163,4.548375 -33.28739,13.662901 -9.02892,8.996307 -13.64015,19.93925 -13.7008,32.487501 l -0.004,0.14222 c -0.002,0.167998 -0.005,0.336884 -0.005,0.506659 -0.091,12.232701 4.10729,22.95787 12.48154,31.881285 0.40226,0.43022 0.80274,0.85777 1.22283,1.27821 l 35.75088,35.626122 c 1.88909,1.88174 2.71769,3.79638 2.69361,6.20968 l 0.003,0.20977 c 0.0527,2.43197 -0.76081,4.34571 -2.6276,6.20791 -1.44759,1.43909 -3.06286,2.27818 -4.9564,2.60262 12.81601,6.82123 26.89677,10.43184 41.05246,10.83362 2.80598,-5.92525 4.2509,-12.41848 4.29906,-19.43526 z" />
+ <path fill="#ffffff" d="m 327.48093,85.181572 c 2.84701,-2.838179 7.46359,-2.836401 10.30883,0 2.84433,2.834623 2.84612,7.435446 -0.002,10.270956 -2.84345,2.83818 -7.46271,2.83818 -10.30704,0 -2.84524,-2.83551 -2.84791,-7.435444 0,-10.270956 z" />
+ </g>
+ <g>
+ <g fill="#ffd43b">
+ <path d="m 25.719398,284.91839 c 0,2.59075 0.912299,4.79875 2.736898,6.62269 1.824599,1.82657 4.033255,2.73821 6.625313,2.73821 2.591402,0 4.800058,-0.91164 6.624002,-2.73821 1.825254,-1.82394 2.738209,-4.03194 2.738209,-6.62269 v -21.77984 c 0,-1.32126 0.475811,-2.45901 1.42809,-3.40998 0.952278,-0.95359 2.089375,-1.43006 3.411947,-1.43006 h 0.0793 c 1.348132,0 2.471467,0.47647 3.371969,1.43006 0.952278,0.95097 1.428745,2.08938 1.428745,3.40998 v 21.77984 c 0,2.59075 0.912299,4.79875 2.738209,6.62269 1.823944,1.82657 4.031289,2.73821 6.624002,2.73821 2.618274,0 4.839382,-0.91164 6.663981,-2.73821 1.825254,-1.82394 2.738209,-4.03194 2.738209,-6.62269 v -21.77984 c 0,-1.32126 0.475156,-2.45901 1.42809,-3.40998 0.897881,-0.95359 2.022526,-1.43006 3.371969,-1.43006 h 0.07865 c 1.323228,0 2.460325,0.47647 3.411948,1.43006 0.926062,0.95097 1.388766,2.08938 1.388766,3.40998 v 21.77984 c 0,5.26211 -1.865233,9.75807 -5.593077,13.48657 -3.729156,3.7285 -8.22577,5.59373 -13.487876,5.59373 -6.294998,0 -11.028207,-2.08807 -14.202904,-6.26747 -3.199602,4.1794 -7.94723,6.26747 -14.240916,6.26747 -5.262763,0 -9.759377,-1.86523 -13.487876,-5.59373 C 17.866544,294.67646 16,290.18115 16,284.91839 v -21.77984 c 0,-1.32126 0.476467,-2.45901 1.428745,-3.40998 0.951623,-0.95359 2.075612,-1.43006 3.371969,-1.43006 h 0.11928 c 1.295702,0 2.419036,0.47647 3.372625,1.43006 0.950967,0.95097 1.427434,2.08938 1.427434,3.40998 v 21.77984 z" />
+ <path d="m 132.94801,271.6291 c 0.31786,0.66063 0.47712,1.33371 0.47712,2.02252 0,0.55577 -0.10551,1.11089 -0.3172,1.66665 -0.45026,1.24262 -1.29636,2.14181 -2.53898,2.69692 -3.70293,1.66665 -8.56853,3.8622 -14.59875,6.58599 -7.48453,3.38442 -11.87497,5.38139 -13.17067,5.9909 2.00942,2.53832 5.14414,3.80715 9.40219,3.80715 2.82931,0 5.39515,-0.83234 7.69556,-2.499 2.24798,-1.63977 3.82222,-3.75537 4.72141,-6.34808 0.76746,-2.16868 2.30107,-3.25269 4.60148,-3.25269 1.63912,0 2.94859,0.68881 3.92708,2.06185 0.6082,0.84742 0.9123,1.7335 0.9123,2.65891 0,0.55577 -0.10552,1.12399 -0.31655,1.70532 -1.56048,4.52348 -4.29869,8.17334 -8.21135,10.95087 -3.96706,2.88108 -8.41059,4.32293 -13.32993,4.32293 -6.29434,0 -11.67639,-2.23356 -16.145474,-6.70395 -4.469743,-4.46975 -6.704615,-9.85114 -6.704615,-16.14679 0,-6.29434 2.234872,-11.67507 6.704615,-16.14678 4.468434,-4.46843 9.851134,-6.70396 16.145474,-6.70396 4.54773,0 8.70027,1.24392 12.45629,3.7285 3.72785,2.43607 6.49162,5.63437 8.29,9.60274 z m -20.74695,-3.5332 c -3.64985,0 -6.7577,1.28391 -9.32289,3.84909 -2.53897,2.5665 -3.808452,5.67435 -3.808452,9.32289 v 0.27789 l 22.175692,-9.95731 c -1.95633,-2.32597 -4.97177,-3.49256 -9.04435,-3.49256 z" />
+ <path d="m 146.11999,242.03442 c 1.2957,0 2.41904,0.46336 3.37197,1.38876 0.95228,0.95097 1.42874,2.08938 1.42874,3.4113 v 15.4311 c 2.98792,-2.64318 7.36525,-3.96707 13.13004,-3.96707 6.29434,0 11.67638,2.23488 16.14613,6.70396 4.46908,4.47106 6.70461,9.85245 6.70461,16.14679 0,6.29499 -2.23553,11.67638 -6.70461,16.14678 -4.46909,4.4704 -9.85113,6.70396 -16.14613,6.70396 -6.295,0 -11.66262,-2.22111 -16.10549,-6.66529 -4.4704,-4.41469 -6.71838,-9.77052 -6.7446,-16.06617 v -34.43341 c 0,-1.32257 0.47647,-2.46032 1.42875,-3.41129 0.95162,-0.92541 2.07561,-1.38877 3.37197,-1.38877 h 0.11862 z m 17.93009,26.06148 c -3.64919,0 -6.75704,1.28391 -9.32288,3.84909 -2.53767,2.5665 -3.80781,5.67435 -3.80781,9.32289 0,3.62364 1.27014,6.71772 3.80781,9.28291 2.56584,2.56519 5.67303,3.84778 9.32288,3.84778 3.62364,0 6.71773,-1.28259 9.28357,-3.84778 2.56387,-2.56519 3.84712,-5.65927 3.84712,-9.28291 0,-3.64788 -1.28325,-6.75639 -3.84712,-9.32289 -2.56584,-2.56518 -5.65927,-3.84909 -9.28357,-3.84909 z" />
+ </g>
+ <g fill="#306998">
+ <path d="m 205.94246,268.01922 c -1.16397,0 -2.14247,0.39586 -2.93548,1.18888 -0.79368,0.82054 -1.19019,1.79838 -1.19019,2.93548 0,1.58735 0.76681,2.77753 2.30172,3.56989 0.52825,0.29165 2.7369,0.95228 6.62466,1.98386 3.14717,0.89985 5.48691,2.07627 7.02051,3.53057 2.19621,2.09003 3.29267,5.06549 3.29267,8.92704 0,3.80714 -1.34879,7.0736 -4.04571,9.79739 -2.72444,2.69823 -5.9909,4.04636 -9.7987,4.04636 h -10.35381 c -1.29701,0 -2.41969,-0.47516 -3.37262,-1.42875 -0.95228,-0.89853 -1.42875,-2.02252 -1.42875,-3.37065 v -0.0806 c 0,-1.32126 0.47647,-2.45901 1.42875,-3.41129 0.95227,-0.95228 2.07561,-1.42874 3.37262,-1.42874 h 10.75032 c 1.16331,0 2.14246,-0.39586 2.93548,-1.18888 0.79368,-0.79367 1.19019,-1.77151 1.19019,-2.93548 0,-1.45561 -0.7537,-2.55339 -2.26044,-3.29201 -0.3965,-0.18678 -2.61892,-0.84742 -6.66529,-1.98386 -3.14782,-0.9254 -5.48887,-2.14377 -7.02247,-3.65051 -2.19555,-2.1418 -3.29202,-5.17035 -3.29202,-9.08432 0,-3.80846 1.34945,-7.06049 4.04702,-9.75807 2.72314,-2.72379 5.99024,-4.087 9.79805,-4.087 h 7.2997 c 1.32192,0 2.45967,0.47647 3.41195,1.43006 0.95162,0.95097 1.42809,2.08938 1.42809,3.40998 v 0.0793 c 0,1.34945 -0.47647,2.47409 -1.42809,3.37263 -0.95228,0.95097 -2.09003,1.42874 -3.41195,1.42874 z" />
+ <path d="m 249.06434,258.29851 c 6.29434,0 11.67573,2.23488 16.14612,6.70396 4.46909,4.47106 6.70396,9.85245 6.70396,16.14679 0,6.29499 -2.23487,11.67638 -6.70396,16.14678 -4.46974,4.46974 -9.85178,6.70396 -16.14612,6.70396 -6.29435,0 -11.67639,-2.23356 -16.14548,-6.70396 -4.46974,-4.46974 -6.70461,-9.85113 -6.70461,-16.14678 0,-6.29434 2.23487,-11.67508 6.70461,-16.14679 4.46909,-4.46908 9.85113,-6.70396 16.14548,-6.70396 z m 0,9.79739 c -3.64986,0 -6.7577,1.28391 -9.32289,3.84909 -2.53963,2.5665 -3.80911,5.67435 -3.80911,9.32289 0,3.62364 1.26948,6.71772 3.80911,9.28291 2.56519,2.56519 5.67238,3.84778 9.32289,3.84778 3.62298,0 6.71706,-1.28259 9.28291,-3.84778 2.56518,-2.56519 3.84778,-5.65927 3.84778,-9.28291 0,-3.64788 -1.2826,-6.75639 -3.84778,-9.32289 -2.56585,-2.56518 -5.65928,-3.84909 -9.28291,-3.84909 z" />
+ <path d="m 307.22146,259.37007 c 2.24864,0.71438 3.37263,2.24798 3.37263,4.60148 v 0.19989 c 0,1.6116 -0.64884,2.89419 -1.94454,3.84778 -0.89919,0.63376 -1.82525,0.95097 -2.77622,0.95097 -0.50334,0 -1.01913,-0.0793 -1.54737,-0.23791 -1.29636,-0.42272 -2.63204,-0.63638 -4.00638,-0.63638 -3.64986,0 -6.75836,1.28391 -9.32289,3.84909 -2.53963,2.5665 -3.80846,5.67435 -3.80846,9.32289 0,3.62364 1.26883,6.71772 3.80846,9.28291 2.56453,2.56519 5.67238,3.84778 9.32289,3.84778 1.375,0 2.71068,-0.21103 4.00638,-0.63507 0.50203,-0.1586 1.00471,-0.2379 1.50739,-0.2379 0.97718,0 1.91767,0.31851 2.81686,0.95358 1.2957,0.95097 1.94453,2.24798 1.94453,3.88776 0,2.32728 -1.12464,3.86089 -3.37262,4.60148 -2.22111,0.6875 -4.52152,1.03027 -6.90189,1.03027 -6.29434,0 -11.67638,-2.23356 -16.14678,-6.70396 -4.46843,-4.46974 -6.70396,-9.85113 -6.70396,-16.14678 0,-6.29435 2.23487,-11.67508 6.70396,-16.14679 4.46974,-4.46843 9.85178,-6.70396 16.14678,-6.70396 2.37906,0.001 4.68012,0.35981 6.90123,1.07287 z" />
+ <path d="m 322.25671,242.03442 c 1.29504,0 2.41903,0.46336 3.37262,1.38876 0.95163,0.95097 1.42809,2.08938 1.42809,3.4113 v 27.49154 h 1.50739 c 3.38508,0 6.33301,-1.12399 8.84708,-3.37263 2.45901,-2.24798 3.86023,-5.0242 4.20431,-8.33063 0.15861,-1.24261 0.68816,-2.26174 1.58735,-3.0541 0.89854,-0.84611 1.96944,-1.27015 3.21271,-1.27015 h 0.11863 c 1.40252,0 2.5796,0.53021 3.53122,1.58735 0.84676,0.92541 1.26949,1.99697 1.26949,3.21271 0,0.15861 -0.0138,0.33163 -0.0393,0.51579 -0.63507,6.63842 -3.17405,11.61019 -7.61692,14.91531 2.32663,1.43006 4.46909,3.84909 6.42739,7.26039 2.03563,3.51746 3.05476,7.31412 3.05476,11.38473 v 2.02515 c 0,1.34813 -0.47712,2.47147 -1.42809,3.37066 -0.95359,0.95359 -2.07692,1.42874 -3.37263,1.42874 h -0.11928 c -1.29635,0 -2.41969,-0.47515 -3.37196,-1.42874 -0.95228,-0.89854 -1.42809,-2.02253 -1.42809,-3.37066 v -2.02515 c -0.0275,-3.59414 -1.31012,-6.67708 -3.84844,-9.24358 -2.56584,-2.53832 -5.66058,-3.80715 -9.28291,-3.80715 h -3.25269 v 15.07523 c 0,1.34813 -0.47646,2.47146 -1.42809,3.37065 -0.95293,0.95359 -2.07758,1.42875 -3.37262,1.42875 h -0.12059 c -1.2957,0 -2.41838,-0.47516 -3.37132,-1.42875 -0.95162,-0.89853 -1.42809,-2.02252 -1.42809,-3.37065 v -52.36547 c 0,-1.32257 0.47647,-2.46032 1.42809,-3.41129 0.95228,-0.92541 2.07562,-1.38877 3.37132,-1.38877 h 0.12059 z" />
+ <path d="m 402.31164,271.6291 c 0.31721,0.66063 0.47581,1.33371 0.47581,2.02252 0,0.55577 -0.10617,1.11089 -0.31655,1.66665 -0.45025,1.24262 -1.29635,2.14181 -2.53897,2.69692 -3.70294,1.66665 -8.56919,3.8622 -14.59876,6.58599 -7.48452,3.38442 -11.87496,5.38139 -13.17067,5.9909 2.00877,2.53832 5.14349,3.80715 9.40219,3.80715 2.82866,0 5.3945,-0.83234 7.69622,-2.499 2.24732,-1.63977 3.82091,-3.75537 4.7201,-6.34808 0.76681,-2.16868 2.30172,-3.25269 4.60148,-3.25269 1.63978,0 2.94924,0.68881 3.92839,2.06185 0.60689,0.84742 0.91165,1.7335 0.91165,2.65891 0,0.55577 -0.10552,1.12399 -0.31721,1.70532 -1.56048,4.52348 -4.29738,8.17334 -8.21135,10.95087 -3.96706,2.88108 -8.40994,4.32293 -13.32928,4.32293 -6.29434,0 -11.67638,-2.23356 -16.14547,-6.70395 -4.46974,-4.46975 -6.70461,-9.85114 -6.70461,-16.14679 0,-6.29434 2.23487,-11.67507 6.70461,-16.14678 4.46843,-4.46843 9.85113,-6.70396 16.14547,-6.70396 4.54774,0 8.70093,1.24392 12.4563,3.7285 3.7285,2.43607 6.49161,5.63437 8.29065,9.60274 z m -20.7476,-3.5332 c -3.6492,0 -6.7577,1.28391 -9.32289,3.84909 -2.53897,2.5665 -3.80846,5.67435 -3.80846,9.32289 v 0.27789 l 22.1757,-9.95731 c -1.95699,-2.32597 -4.97177,-3.49256 -9.04435,-3.49256 z" />
+ <path d="m 415.48166,242.03442 c 1.2957,0 2.41969,0.46336 3.37262,1.38876 0.95162,0.95097 1.42809,2.08938 1.42809,3.4113 v 11.46403 h 5.95092 c 1.2957,0 2.41903,0.47647 3.37262,1.43006 0.95163,0.95097 1.42678,2.08938 1.42678,3.40998 v 0.0793 c 0,1.34945 -0.47515,2.47409 -1.42678,3.37263 -0.95293,0.95097 -2.07692,1.42874 -3.37262,1.42874 h -5.95092 v 23.52252 c 0,0.76811 0.26347,1.41695 0.79367,1.94453 0.5289,0.53021 1.19019,0.79368 1.98321,0.79368 h 3.17404 c 1.2957,0 2.41903,0.47646 3.37262,1.42874 0.95163,0.95228 1.42678,2.09003 1.42678,3.41129 v 0.0806 c 0,1.34813 -0.47515,2.47146 -1.42678,3.37065 C 428.65298,303.52484 427.52899,304 426.23329,304 h -3.17404 c -3.43817,0 -6.38675,-1.21574 -8.84642,-3.6492 -2.43411,-2.45901 -3.6492,-5.39515 -3.6492,-8.80775 v -44.70726 c 0,-1.32258 0.47581,-2.46033 1.42809,-3.4113 0.95228,-0.9254 2.07627,-1.38876 3.37197,-1.38876 h 0.11797 z" />
+ <path d="m 448.88545,268.01922 c -1.16397,0 -2.14246,0.39586 -2.93548,1.18888 -0.79368,0.82054 -1.19019,1.79838 -1.19019,2.93548 0,1.58735 0.76681,2.77753 2.30042,3.56989 0.5302,0.29165 2.7382,0.95228 6.62596,1.98386 3.14652,0.89985 5.48691,2.07627 7.02117,3.53057 2.19489,2.09003 3.29267,5.06549 3.29267,8.92704 0,3.80714 -1.34945,7.0736 -4.04637,9.79739 -2.72379,2.69823 -5.99089,4.04636 -9.79869,4.04636 h -10.35382 c -1.29635,0 -2.41969,-0.47516 -3.37262,-1.42875 -0.95228,-0.89853 -1.42744,-2.02252 -1.42744,-3.37065 v -0.0806 c 0,-1.32126 0.47516,-2.45901 1.42744,-3.41129 0.95228,-0.95228 2.07627,-1.42874 3.37262,-1.42874 h 10.75032 c 1.16332,0 2.14312,-0.39586 2.93549,-1.18888 0.79367,-0.79367 1.19018,-1.77151 1.19018,-2.93548 0,-1.45561 -0.7537,-2.55339 -2.26043,-3.29201 -0.39782,-0.18678 -2.61893,-0.84742 -6.66529,-1.98386 -3.14783,-0.9254 -5.48887,-2.14377 -7.02248,-3.65051 -2.19555,-2.1418 -3.29201,-5.17035 -3.29201,-9.08432 0,-3.80846 1.34944,-7.06049 4.04701,-9.75807 2.72314,-2.72379 5.99025,-4.087 9.7987,-4.087 h 7.29906 c 1.32322,0 2.45967,0.47647 3.41129,1.43006 0.95228,0.95097 1.42809,2.08938 1.42809,3.40998 v 0.0793 c 0,1.34945 -0.47581,2.47409 -1.42809,3.37263 -0.95162,0.95097 -2.08872,1.42874 -3.41129,1.42874 z" />
+ </g>
+ </g>
+</svg>
diff --git a/testing/web-platform/tests/tools/third_party/websockets/pyproject.toml b/testing/web-platform/tests/tools/third_party/websockets/pyproject.toml
new file mode 100644
index 0000000000..f24616dd7e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/pyproject.toml
@@ -0,0 +1,87 @@
+[build-system]
+requires = ["setuptools"]
+build-backend = "setuptools.build_meta"
+
+[project]
+name = "websockets"
+description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
+requires-python = ">=3.8"
+license = { text = "BSD-3-Clause" }
+authors = [
+ { name = "Aymeric Augustin", email = "aymeric.augustin@m4x.org" },
+]
+keywords = ["WebSocket"]
+classifiers = [
+ "Development Status :: 5 - Production/Stable",
+ "Environment :: Web Environment",
+ "Intended Audience :: Developers",
+ "License :: OSI Approved :: BSD License",
+ "Operating System :: OS Independent",
+ "Programming Language :: Python",
+ "Programming Language :: Python :: 3",
+ "Programming Language :: Python :: 3.8",
+ "Programming Language :: Python :: 3.9",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+]
+dynamic = ["version", "readme"]
+
+[project.urls]
+Homepage = "https://github.com/python-websockets/websockets"
+Changelog = "https://websockets.readthedocs.io/en/stable/project/changelog.html"
+Documentation = "https://websockets.readthedocs.io/"
+Funding = "https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme"
+Tracker = "https://github.com/python-websockets/websockets/issues"
+
+# On a macOS runner, build Intel, Universal, and Apple Silicon wheels.
+[tool.cibuildwheel.macos]
+archs = ["x86_64", "universal2", "arm64"]
+
+# On an Linux Intel runner with QEMU installed, build Intel and ARM wheels.
+[tool.cibuildwheel.linux]
+archs = ["auto", "aarch64"]
+
+[tool.coverage.run]
+branch = true
+omit = [
+ # */websockets matches src/websockets and .tox/**/site-packages/websockets
+ "*/websockets/__main__.py",
+ "*/websockets/legacy/async_timeout.py",
+ "*/websockets/legacy/compatibility.py",
+ "tests/maxi_cov.py",
+]
+
+[tool.coverage.paths]
+source = [
+ "src/websockets",
+ ".tox/*/lib/python*/site-packages/websockets",
+]
+
+[tool.coverage.report]
+exclude_lines = [
+ "except ImportError:",
+ "if self.debug:",
+ "if sys.platform != \"win32\":",
+ "if typing.TYPE_CHECKING:",
+ "pragma: no cover",
+ "raise AssertionError",
+ "raise NotImplementedError",
+ "self.fail\\(\".*\"\\)",
+ "@unittest.skip",
+]
+
+[tool.ruff]
+select = [
+ "E", # pycodestyle
+ "F", # Pyflakes
+ "W", # pycodestyle
+ "I", # isort
+]
+ignore = [
+ "F403",
+ "F405",
+]
+
+[tool.ruff.isort]
+combine-as-imports = true
+lines-after-imports = 2
diff --git a/testing/web-platform/tests/tools/third_party/websockets/setup.cfg b/testing/web-platform/tests/tools/third_party/websockets/setup.cfg
deleted file mode 100644
index dc424fe195..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/setup.cfg
+++ /dev/null
@@ -1,42 +0,0 @@
-[bdist_wheel]
-python-tag = py37.py38.py39.py310
-
-[metadata]
-license_file = LICENSE
-project_urls =
- Changelog = https://websockets.readthedocs.io/en/stable/project/changelog.html
- Documentation = https://websockets.readthedocs.io/
- Funding = https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme
- Tracker = https://github.com/aaugustin/websockets/issues
-
-[flake8]
-ignore = E203,E731,F403,F405,W503
-max-line-length = 88
-
-[isort]
-profile = black
-combine_as_imports = True
-lines_after_imports = 2
-
-[coverage:run]
-branch = True
-omit =
- */__main__.py
-source =
- websockets
- tests
-
-[coverage:paths]
-source =
- src/websockets
- .tox/*/lib/python*/site-packages/websockets
-
-[coverage:report]
-exclude_lines =
- if self.debug:
- pragma: no cover
-
-[egg_info]
-tag_build =
-tag_date = 0
-
diff --git a/testing/web-platform/tests/tools/third_party/websockets/setup.py b/testing/web-platform/tests/tools/third_party/websockets/setup.py
index b2d07737d2..ae0aaa65de 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/setup.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/setup.py
@@ -1,3 +1,4 @@
+import os
import pathlib
import re
@@ -6,58 +7,32 @@ import setuptools
root_dir = pathlib.Path(__file__).parent
-description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
+exec((root_dir / "src" / "websockets" / "version.py").read_text(encoding="utf-8"))
-long_description = (root_dir / 'README.rst').read_text(encoding='utf-8')
-
-# PyPI disables the "raw" directive.
+# PyPI disables the "raw" directive. Remove this section of the README.
long_description = re.sub(
r"^\.\. raw:: html.*?^(?=\w)",
"",
- long_description,
+ (root_dir / "README.rst").read_text(encoding="utf-8"),
flags=re.DOTALL | re.MULTILINE,
)
-exec((root_dir / 'src' / 'websockets' / 'version.py').read_text(encoding='utf-8'))
-
-packages = ['websockets', 'websockets/legacy', 'websockets/extensions']
-
-ext_modules = [
- setuptools.Extension(
- 'websockets.speedups',
- sources=['src/websockets/speedups.c'],
- optional=not (root_dir / '.cibuildwheel').exists(),
- )
-]
-
+# Set BUILD_EXTENSION to yes or no to force building or not building the
+# speedups extension. If unset, the extension is built only if possible.
+if os.environ.get("BUILD_EXTENSION") == "no":
+ ext_modules = []
+else:
+ ext_modules = [
+ setuptools.Extension(
+ "websockets.speedups",
+ sources=["src/websockets/speedups.c"],
+ optional=os.environ.get("BUILD_EXTENSION") != "yes",
+ )
+ ]
+
+# Static values are declared in pyproject.toml.
setuptools.setup(
- name='websockets',
version=version,
- description=description,
long_description=long_description,
- url='https://github.com/aaugustin/websockets',
- author='Aymeric Augustin',
- author_email='aymeric.augustin@m4x.org',
- license='BSD',
- classifiers=[
- 'Development Status :: 5 - Production/Stable',
- 'Environment :: Web Environment',
- 'Intended Audience :: Developers',
- 'License :: OSI Approved :: BSD License',
- 'Operating System :: OS Independent',
- 'Programming Language :: Python',
- 'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.7',
- 'Programming Language :: Python :: 3.8',
- 'Programming Language :: Python :: 3.9',
- 'Programming Language :: Python :: 3.10',
- ],
- package_dir = {'': 'src'},
- package_data = {'websockets': ['py.typed']},
- packages=packages,
ext_modules=ext_modules,
- include_package_data=True,
- zip_safe=False,
- python_requires='>=3.7',
- test_loader='unittest:TestLoader',
)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/PKG-INFO b/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/PKG-INFO
deleted file mode 100644
index 3b042a3f9f..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/PKG-INFO
+++ /dev/null
@@ -1,174 +0,0 @@
-Metadata-Version: 2.1
-Name: websockets
-Version: 10.3
-Summary: An implementation of the WebSocket Protocol (RFC 6455 & 7692)
-Home-page: https://github.com/aaugustin/websockets
-Author: Aymeric Augustin
-Author-email: aymeric.augustin@m4x.org
-License: BSD
-Project-URL: Changelog, https://websockets.readthedocs.io/en/stable/project/changelog.html
-Project-URL: Documentation, https://websockets.readthedocs.io/
-Project-URL: Funding, https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme
-Project-URL: Tracker, https://github.com/aaugustin/websockets/issues
-Platform: UNKNOWN
-Classifier: Development Status :: 5 - Production/Stable
-Classifier: Environment :: Web Environment
-Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: BSD License
-Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.7
-Classifier: Programming Language :: Python :: 3.8
-Classifier: Programming Language :: Python :: 3.9
-Classifier: Programming Language :: Python :: 3.10
-Requires-Python: >=3.7
-License-File: LICENSE
-
-.. image:: logo/horizontal.svg
- :width: 480px
- :alt: websockets
-
-|licence| |version| |pyversions| |wheel| |tests| |docs|
-
-.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |version| image:: https://img.shields.io/pypi/v/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |wheel| image:: https://img.shields.io/pypi/wheel/websockets.svg
- :target: https://pypi.python.org/pypi/websockets
-
-.. |tests| image:: https://img.shields.io/github/checks-status/aaugustin/websockets/main
- :target: https://github.com/aaugustin/websockets/actions/workflows/tests.yml
-
-.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg
- :target: https://websockets.readthedocs.io/
-
-What is ``websockets``?
------------------------
-
-websockets is a library for building WebSocket_ servers and clients in Python
-with a focus on correctness, simplicity, robustness, and performance.
-
-.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
-
-Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
-provides an elegant coroutine-based API.
-
-`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_
-
-Here's how a client sends and receives messages:
-
-.. copy-pasted because GitHub doesn't support the include directive
-
-.. code:: python
-
- #!/usr/bin/env python
-
- import asyncio
- from websockets import connect
-
- async def hello(uri):
- async with connect(uri) as websocket:
- await websocket.send("Hello world!")
- await websocket.recv()
-
- asyncio.run(hello("ws://localhost:8765"))
-
-And here's an echo server:
-
-.. code:: python
-
- #!/usr/bin/env python
-
- import asyncio
- from websockets import serve
-
- async def echo(websocket):
- async for message in websocket:
- await websocket.send(message)
-
- async def main():
- async with serve(echo, "localhost", 8765):
- await asyncio.Future() # run forever
-
- asyncio.run(main())
-
-Does that look good?
-
-`Get started with the tutorial! <https://websockets.readthedocs.io/en/stable/intro/index.html>`_
-
-Why should I use ``websockets``?
---------------------------------
-
-The development of ``websockets`` is shaped by four principles:
-
-1. **Correctness**: ``websockets`` is heavily tested for compliance
- with :rfc:`6455`. Continuous integration fails under 100% branch
- coverage.
-
-2. **Simplicity**: all you need to understand is ``msg = await ws.recv()`` and
- ``await ws.send(msg)``. ``websockets`` takes care of managing connections
- so you can focus on your application.
-
-3. **Robustness**: ``websockets`` is built for production. For example, it was
- the only library to `handle backpressure correctly`_ before the issue
- became widely known in the Python community.
-
-4. **Performance**: memory usage is optimized and configurable. A C extension
- accelerates expensive operations. It's pre-compiled for Linux, macOS and
- Windows and packaged in the wheel format for each system and Python version.
-
-Documentation is a first class concern in the project. Head over to `Read the
-Docs`_ and see for yourself.
-
-.. _Read the Docs: https://websockets.readthedocs.io/
-.. _handle backpressure correctly: https://vorpus.org/blog/some-thoughts-on-asynchronous-api-design-in-a-post-asyncawait-world/#websocket-servers
-
-Why shouldn't I use ``websockets``?
------------------------------------
-
-* If you prefer callbacks over coroutines: ``websockets`` was created to
- provide the best coroutine-based API to manage WebSocket connections in
- Python. Pick another library for a callback-based API.
-
-* If you're looking for a mixed HTTP / WebSocket library: ``websockets`` aims
- at being an excellent implementation of :rfc:`6455`: The WebSocket Protocol
- and :rfc:`7692`: Compression Extensions for WebSocket. Its support for HTTP
- is minimal — just enough for a HTTP health check.
-
- If you want to do both in the same server, look at HTTP frameworks that
- build on top of ``websockets`` to support WebSocket connections, like
- Sanic_.
-
-.. _Sanic: https://sanicframework.org/en/
-
-What else?
-----------
-
-Bug reports, patches and suggestions are welcome!
-
-To report a security vulnerability, please use the `Tidelift security
-contact`_. Tidelift will coordinate the fix and disclosure.
-
-.. _Tidelift security contact: https://tidelift.com/security
-
-For anything else, please open an issue_ or send a `pull request`_.
-
-.. _issue: https://github.com/aaugustin/websockets/issues/new
-.. _pull request: https://github.com/aaugustin/websockets/compare/
-
-Participants must uphold the `Contributor Covenant code of conduct`_.
-
-.. _Contributor Covenant code of conduct: https://github.com/aaugustin/websockets/blob/main/CODE_OF_CONDUCT.md
-
-``websockets`` is released under the `BSD license`_.
-
-.. _BSD license: https://github.com/aaugustin/websockets/blob/main/LICENSE
-
-
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/SOURCES.txt b/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/SOURCES.txt
deleted file mode 100644
index 2a51106fee..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/SOURCES.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-LICENSE
-MANIFEST.in
-README.rst
-setup.cfg
-setup.py
-src/websockets/__init__.py
-src/websockets/__main__.py
-src/websockets/auth.py
-src/websockets/client.py
-src/websockets/connection.py
-src/websockets/datastructures.py
-src/websockets/exceptions.py
-src/websockets/frames.py
-src/websockets/headers.py
-src/websockets/http.py
-src/websockets/http11.py
-src/websockets/imports.py
-src/websockets/py.typed
-src/websockets/server.py
-src/websockets/speedups.c
-src/websockets/streams.py
-src/websockets/typing.py
-src/websockets/uri.py
-src/websockets/utils.py
-src/websockets/version.py
-src/websockets.egg-info/PKG-INFO
-src/websockets.egg-info/SOURCES.txt
-src/websockets.egg-info/dependency_links.txt
-src/websockets.egg-info/not-zip-safe
-src/websockets.egg-info/top_level.txt
-src/websockets/extensions/__init__.py
-src/websockets/extensions/base.py
-src/websockets/extensions/permessage_deflate.py
-src/websockets/legacy/__init__.py
-src/websockets/legacy/auth.py
-src/websockets/legacy/client.py
-src/websockets/legacy/compatibility.py
-src/websockets/legacy/framing.py
-src/websockets/legacy/handshake.py
-src/websockets/legacy/http.py
-src/websockets/legacy/protocol.py
-src/websockets/legacy/server.py \ No newline at end of file
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/not-zip-safe b/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/not-zip-safe
deleted file mode 100644
index 8b13789179..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/not-zip-safe
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/top_level.txt b/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/top_level.txt
deleted file mode 100644
index 5474af7431..0000000000
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets.egg-info/top_level.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-websockets
-websockets/extensions
-websockets/legacy
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__init__.py
index ec34841247..fdb028f4c4 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__init__.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__init__.py
@@ -1,23 +1,24 @@
from __future__ import annotations
+import typing
+
from .imports import lazy_import
-from .version import version as __version__ # noqa
+from .version import version as __version__ # noqa: F401
-__all__ = [ # noqa
+__all__ = [
+ # .client
+ "ClientProtocol",
+ # .datastructures
+ "Headers",
+ "HeadersLike",
+ "MultipleValuesError",
+ # .exceptions
"AbortHandshake",
- "basic_auth_protocol_factory",
- "BasicAuthWebSocketServerProtocol",
- "broadcast",
- "ClientConnection",
- "connect",
"ConnectionClosed",
"ConnectionClosedError",
"ConnectionClosedOK",
- "Data",
"DuplicateParameter",
- "ExtensionName",
- "ExtensionParameter",
"InvalidHandshake",
"InvalidHeader",
"InvalidHeaderFormat",
@@ -31,84 +32,159 @@ __all__ = [ # noqa
"InvalidStatusCode",
"InvalidUpgrade",
"InvalidURI",
- "LoggerLike",
"NegotiationError",
- "Origin",
- "parse_uri",
"PayloadTooBig",
"ProtocolError",
"RedirectHandshake",
"SecurityError",
- "serve",
- "ServerConnection",
- "Subprotocol",
- "unix_connect",
- "unix_serve",
- "WebSocketClientProtocol",
- "WebSocketCommonProtocol",
"WebSocketException",
"WebSocketProtocolError",
+ # .legacy.auth
+ "BasicAuthWebSocketServerProtocol",
+ "basic_auth_protocol_factory",
+ # .legacy.client
+ "WebSocketClientProtocol",
+ "connect",
+ "unix_connect",
+ # .legacy.protocol
+ "WebSocketCommonProtocol",
+ "broadcast",
+ # .legacy.server
"WebSocketServer",
"WebSocketServerProtocol",
- "WebSocketURI",
+ "serve",
+ "unix_serve",
+ # .server
+ "ServerProtocol",
+ # .typing
+ "Data",
+ "ExtensionName",
+ "ExtensionParameter",
+ "LoggerLike",
+ "StatusLike",
+ "Origin",
+ "Subprotocol",
]
-lazy_import(
- globals(),
- aliases={
- "auth": ".legacy",
- "basic_auth_protocol_factory": ".legacy.auth",
- "BasicAuthWebSocketServerProtocol": ".legacy.auth",
- "broadcast": ".legacy.protocol",
- "ClientConnection": ".client",
- "connect": ".legacy.client",
- "unix_connect": ".legacy.client",
- "WebSocketClientProtocol": ".legacy.client",
- "Headers": ".datastructures",
- "MultipleValuesError": ".datastructures",
- "WebSocketException": ".exceptions",
- "ConnectionClosed": ".exceptions",
- "ConnectionClosedError": ".exceptions",
- "ConnectionClosedOK": ".exceptions",
- "InvalidHandshake": ".exceptions",
- "SecurityError": ".exceptions",
- "InvalidMessage": ".exceptions",
- "InvalidHeader": ".exceptions",
- "InvalidHeaderFormat": ".exceptions",
- "InvalidHeaderValue": ".exceptions",
- "InvalidOrigin": ".exceptions",
- "InvalidUpgrade": ".exceptions",
- "InvalidStatus": ".exceptions",
- "InvalidStatusCode": ".exceptions",
- "NegotiationError": ".exceptions",
- "DuplicateParameter": ".exceptions",
- "InvalidParameterName": ".exceptions",
- "InvalidParameterValue": ".exceptions",
- "AbortHandshake": ".exceptions",
- "RedirectHandshake": ".exceptions",
- "InvalidState": ".exceptions",
- "InvalidURI": ".exceptions",
- "PayloadTooBig": ".exceptions",
- "ProtocolError": ".exceptions",
- "WebSocketProtocolError": ".exceptions",
- "protocol": ".legacy",
- "WebSocketCommonProtocol": ".legacy.protocol",
- "ServerConnection": ".server",
- "serve": ".legacy.server",
- "unix_serve": ".legacy.server",
- "WebSocketServerProtocol": ".legacy.server",
- "WebSocketServer": ".legacy.server",
- "Data": ".typing",
- "LoggerLike": ".typing",
- "Origin": ".typing",
- "ExtensionHeader": ".typing",
- "ExtensionParameter": ".typing",
- "Subprotocol": ".typing",
- },
- deprecated_aliases={
- "framing": ".legacy",
- "handshake": ".legacy",
- "parse_uri": ".uri",
- "WebSocketURI": ".uri",
- },
-)
+# When type checking, import non-deprecated aliases eagerly. Else, import on demand.
+if typing.TYPE_CHECKING:
+ from .client import ClientProtocol
+ from .datastructures import Headers, HeadersLike, MultipleValuesError
+ from .exceptions import (
+ AbortHandshake,
+ ConnectionClosed,
+ ConnectionClosedError,
+ ConnectionClosedOK,
+ DuplicateParameter,
+ InvalidHandshake,
+ InvalidHeader,
+ InvalidHeaderFormat,
+ InvalidHeaderValue,
+ InvalidMessage,
+ InvalidOrigin,
+ InvalidParameterName,
+ InvalidParameterValue,
+ InvalidState,
+ InvalidStatus,
+ InvalidStatusCode,
+ InvalidUpgrade,
+ InvalidURI,
+ NegotiationError,
+ PayloadTooBig,
+ ProtocolError,
+ RedirectHandshake,
+ SecurityError,
+ WebSocketException,
+ WebSocketProtocolError,
+ )
+ from .legacy.auth import (
+ BasicAuthWebSocketServerProtocol,
+ basic_auth_protocol_factory,
+ )
+ from .legacy.client import WebSocketClientProtocol, connect, unix_connect
+ from .legacy.protocol import WebSocketCommonProtocol, broadcast
+ from .legacy.server import (
+ WebSocketServer,
+ WebSocketServerProtocol,
+ serve,
+ unix_serve,
+ )
+ from .server import ServerProtocol
+ from .typing import (
+ Data,
+ ExtensionName,
+ ExtensionParameter,
+ LoggerLike,
+ Origin,
+ StatusLike,
+ Subprotocol,
+ )
+else:
+ lazy_import(
+ globals(),
+ aliases={
+ # .client
+ "ClientProtocol": ".client",
+ # .datastructures
+ "Headers": ".datastructures",
+ "HeadersLike": ".datastructures",
+ "MultipleValuesError": ".datastructures",
+ # .exceptions
+ "AbortHandshake": ".exceptions",
+ "ConnectionClosed": ".exceptions",
+ "ConnectionClosedError": ".exceptions",
+ "ConnectionClosedOK": ".exceptions",
+ "DuplicateParameter": ".exceptions",
+ "InvalidHandshake": ".exceptions",
+ "InvalidHeader": ".exceptions",
+ "InvalidHeaderFormat": ".exceptions",
+ "InvalidHeaderValue": ".exceptions",
+ "InvalidMessage": ".exceptions",
+ "InvalidOrigin": ".exceptions",
+ "InvalidParameterName": ".exceptions",
+ "InvalidParameterValue": ".exceptions",
+ "InvalidState": ".exceptions",
+ "InvalidStatus": ".exceptions",
+ "InvalidStatusCode": ".exceptions",
+ "InvalidUpgrade": ".exceptions",
+ "InvalidURI": ".exceptions",
+ "NegotiationError": ".exceptions",
+ "PayloadTooBig": ".exceptions",
+ "ProtocolError": ".exceptions",
+ "RedirectHandshake": ".exceptions",
+ "SecurityError": ".exceptions",
+ "WebSocketException": ".exceptions",
+ "WebSocketProtocolError": ".exceptions",
+ # .legacy.auth
+ "BasicAuthWebSocketServerProtocol": ".legacy.auth",
+ "basic_auth_protocol_factory": ".legacy.auth",
+ # .legacy.client
+ "WebSocketClientProtocol": ".legacy.client",
+ "connect": ".legacy.client",
+ "unix_connect": ".legacy.client",
+ # .legacy.protocol
+ "WebSocketCommonProtocol": ".legacy.protocol",
+ "broadcast": ".legacy.protocol",
+ # .legacy.server
+ "WebSocketServer": ".legacy.server",
+ "WebSocketServerProtocol": ".legacy.server",
+ "serve": ".legacy.server",
+ "unix_serve": ".legacy.server",
+ # .server
+ "ServerProtocol": ".server",
+ # .typing
+ "Data": ".typing",
+ "ExtensionName": ".typing",
+ "ExtensionParameter": ".typing",
+ "LoggerLike": ".typing",
+ "Origin": ".typing",
+ "StatusLike": "typing",
+ "Subprotocol": ".typing",
+ },
+ deprecated_aliases={
+ "framing": ".legacy",
+ "handshake": ".legacy",
+ "parse_uri": ".uri",
+ "WebSocketURI": ".uri",
+ },
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__main__.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__main__.py
index c562d21b54..f2ea5cf4e8 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__main__.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/__main__.py
@@ -1,16 +1,18 @@
from __future__ import annotations
import argparse
-import asyncio
import os
import signal
import sys
import threading
-from typing import Any, Set
-from .exceptions import ConnectionClosed
-from .frames import Close
-from .legacy.client import connect
+
+try:
+ import readline # noqa: F401
+except ImportError: # Windows has no `readline` normally
+ pass
+
+from .sync.client import ClientConnection, connect
from .version import version as websockets_version
@@ -46,21 +48,6 @@ if sys.platform == "win32":
raise RuntimeError("unable to set console mode")
-def exit_from_event_loop_thread(
- loop: asyncio.AbstractEventLoop,
- stop: asyncio.Future[None],
-) -> None:
- loop.stop()
- if not stop.done():
- # When exiting the thread that runs the event loop, raise
- # KeyboardInterrupt in the main thread to exit the program.
- if sys.platform == "win32":
- ctrl_c = signal.CTRL_C_EVENT
- else:
- ctrl_c = signal.SIGINT
- os.kill(os.getpid(), ctrl_c)
-
-
def print_during_input(string: str) -> None:
sys.stdout.write(
# Save cursor position
@@ -93,63 +80,20 @@ def print_over_input(string: str) -> None:
sys.stdout.flush()
-async def run_client(
- uri: str,
- loop: asyncio.AbstractEventLoop,
- inputs: asyncio.Queue[str],
- stop: asyncio.Future[None],
-) -> None:
- try:
- websocket = await connect(uri)
- except Exception as exc:
- print_over_input(f"Failed to connect to {uri}: {exc}.")
- exit_from_event_loop_thread(loop, stop)
- return
- else:
- print_during_input(f"Connected to {uri}.")
-
- try:
- while True:
- incoming: asyncio.Future[Any] = asyncio.create_task(websocket.recv())
- outgoing: asyncio.Future[Any] = asyncio.create_task(inputs.get())
- done: Set[asyncio.Future[Any]]
- pending: Set[asyncio.Future[Any]]
- done, pending = await asyncio.wait(
- [incoming, outgoing, stop], return_when=asyncio.FIRST_COMPLETED
- )
-
- # Cancel pending tasks to avoid leaking them.
- if incoming in pending:
- incoming.cancel()
- if outgoing in pending:
- outgoing.cancel()
-
- if incoming in done:
- try:
- message = incoming.result()
- except ConnectionClosed:
- break
- else:
- if isinstance(message, str):
- print_during_input("< " + message)
- else:
- print_during_input("< (binary) " + message.hex())
-
- if outgoing in done:
- message = outgoing.result()
- await websocket.send(message)
-
- if stop in done:
- break
-
- finally:
- await websocket.close()
- assert websocket.close_code is not None and websocket.close_reason is not None
- close_status = Close(websocket.close_code, websocket.close_reason)
-
- print_over_input(f"Connection closed: {close_status}.")
-
- exit_from_event_loop_thread(loop, stop)
+def print_incoming_messages(websocket: ClientConnection, stop: threading.Event) -> None:
+ for message in websocket:
+ if isinstance(message, str):
+ print_during_input("< " + message)
+ else:
+ print_during_input("< (binary) " + message.hex())
+ if not stop.is_set():
+ # When the server closes the connection, raise KeyboardInterrupt
+ # in the main thread to exit the program.
+ if sys.platform == "win32":
+ ctrl_c = signal.CTRL_C_EVENT
+ else:
+ ctrl_c = signal.SIGINT
+ os.kill(os.getpid(), ctrl_c)
def main() -> None:
@@ -184,29 +128,17 @@ def main() -> None:
sys.stderr.flush()
try:
- import readline # noqa
- except ImportError: # Windows has no `readline` normally
- pass
-
- # Create an event loop that will run in a background thread.
- loop = asyncio.new_event_loop()
-
- # Due to zealous removal of the loop parameter in the Queue constructor,
- # we need a factory coroutine to run in the freshly created event loop.
- async def queue_factory() -> asyncio.Queue[str]:
- return asyncio.Queue()
-
- # Create a queue of user inputs. There's no need to limit its size.
- inputs: asyncio.Queue[str] = loop.run_until_complete(queue_factory())
-
- # Create a stop condition when receiving SIGINT or SIGTERM.
- stop: asyncio.Future[None] = loop.create_future()
+ websocket = connect(args.uri)
+ except Exception as exc:
+ print(f"Failed to connect to {args.uri}: {exc}.")
+ sys.exit(1)
+ else:
+ print(f"Connected to {args.uri}.")
- # Schedule the task that will manage the connection.
- loop.create_task(run_client(args.uri, loop, inputs, stop))
+ stop = threading.Event()
- # Start the event loop in a background thread.
- thread = threading.Thread(target=loop.run_forever)
+ # Start the thread that reads messages from the connection.
+ thread = threading.Thread(target=print_incoming_messages, args=(websocket, stop))
thread.start()
# Read from stdin in the main thread in order to receive signals.
@@ -214,17 +146,14 @@ def main() -> None:
while True:
# Since there's no size limit, put_nowait is identical to put.
message = input("> ")
- loop.call_soon_threadsafe(inputs.put_nowait, message)
+ websocket.send(message)
except (KeyboardInterrupt, EOFError): # ^C, ^D
- loop.call_soon_threadsafe(stop.set_result, None)
+ stop.set()
+ websocket.close()
+ print_over_input("Connection closed.")
- # Wait for the event loop to terminate.
thread.join()
- # For reasons unclear, even though the loop is closed in the thread,
- # it still thinks it's running here.
- loop.close()
-
if __name__ == "__main__":
main()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/auth.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/auth.py
index afcb38cffe..b792e02f5c 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/auth.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/auth.py
@@ -1,4 +1,6 @@
from __future__ import annotations
# See #940 for why lazy_import isn't used here for backwards compatibility.
-from .legacy.auth import * # noqa
+# See #1400 for why listing compatibility imports in __all__ helps PyCharm.
+from .legacy.auth import *
+from .legacy.auth import __all__ # noqa: F401
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/client.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/client.py
index df8e53429a..b2f622042d 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/client.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/client.py
@@ -1,8 +1,8 @@
from __future__ import annotations
-from typing import Generator, List, Optional, Sequence
+import warnings
+from typing import Any, Generator, List, Optional, Sequence
-from .connection import CLIENT, CONNECTING, OPEN, Connection, State
from .datastructures import Headers, MultipleValuesError
from .exceptions import (
InvalidHandshake,
@@ -23,8 +23,8 @@ from .headers import (
parse_subprotocol,
parse_upgrade,
)
-from .http import USER_AGENT
from .http11 import Request, Response
+from .protocol import CLIENT, CONNECTING, OPEN, Protocol, State
from .typing import (
ConnectionOption,
ExtensionHeader,
@@ -38,13 +38,15 @@ from .utils import accept_key, generate_key
# See #940 for why lazy_import isn't used here for backwards compatibility.
-from .legacy.client import * # isort:skip # noqa
+# See #1400 for why listing compatibility imports in __all__ helps PyCharm.
+from .legacy.client import * # isort:skip # noqa: I001
+from .legacy.client import __all__ as legacy__all__
-__all__ = ["ClientConnection"]
+__all__ = ["ClientProtocol"] + legacy__all__
-class ClientConnection(Connection):
+class ClientProtocol(Protocol):
"""
Sans-I/O implementation of a WebSocket client connection.
@@ -60,16 +62,17 @@ class ClientConnection(Connection):
preference.
state: initial state of the WebSocket connection.
max_size: maximum size of incoming messages in bytes;
- :obj:`None` to disable the limit.
+ :obj:`None` disables the limit.
logger: logger for this connection;
defaults to ``logging.getLogger("websockets.client")``;
- see the :doc:`logging guide <../topics/logging>` for details.
+ see the :doc:`logging guide <../../topics/logging>` for details.
"""
def __init__(
self,
wsuri: WebSocketURI,
+ *,
origin: Optional[Origin] = None,
extensions: Optional[Sequence[ClientExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
@@ -89,7 +92,7 @@ class ClientConnection(Connection):
self.available_subprotocols = subprotocols
self.key = generate_key()
- def connect(self) -> Request: # noqa: F811
+ def connect(self) -> Request:
"""
Create a handshake request to open a connection.
@@ -131,8 +134,6 @@ class ClientConnection(Connection):
protocol_header = build_subprotocol(self.available_subprotocols)
headers["Sec-WebSocket-Protocol"] = protocol_header
- headers["User-Agent"] = USER_AGENT
-
return Request(self.wsuri.resource_name, headers)
def process_response(self, response: Response) -> None:
@@ -223,7 +224,6 @@ class ClientConnection(Connection):
extensions = headers.get_all("Sec-WebSocket-Extensions")
if extensions:
-
if self.available_extensions is None:
raise InvalidHandshake("no extensions supported")
@@ -232,9 +232,7 @@ class ClientConnection(Connection):
)
for name, response_params in parsed_extensions:
-
for extension_factory in self.available_extensions:
-
# Skip non-matching extensions based on their name.
if extension_factory.name != name:
continue
@@ -281,7 +279,6 @@ class ClientConnection(Connection):
subprotocols = headers.get_all("Sec-WebSocket-Protocol")
if subprotocols:
-
if self.available_subprotocols is None:
raise InvalidHandshake("no subprotocols supported")
@@ -317,11 +314,17 @@ class ClientConnection(Connection):
def parse(self) -> Generator[None, None, None]:
if self.state is CONNECTING:
- response = yield from Response.parse(
- self.reader.read_line,
- self.reader.read_exact,
- self.reader.read_to_eof,
- )
+ try:
+ response = yield from Response.parse(
+ self.reader.read_line,
+ self.reader.read_exact,
+ self.reader.read_to_eof,
+ )
+ except Exception as exc:
+ self.handshake_exc = exc
+ self.parser = self.discard()
+ next(self.parser) # start coroutine
+ yield
if self.debug:
code, phrase = response.status_code, response.reason_phrase
@@ -335,13 +338,23 @@ class ClientConnection(Connection):
self.process_response(response)
except InvalidHandshake as exc:
response._exception = exc
+ self.events.append(response)
self.handshake_exc = exc
self.parser = self.discard()
next(self.parser) # start coroutine
- else:
- assert self.state is CONNECTING
- self.state = OPEN
- finally:
- self.events.append(response)
+ yield
+
+ assert self.state is CONNECTING
+ self.state = OPEN
+ self.events.append(response)
yield from super().parse()
+
+
+class ClientConnection(ClientProtocol):
+ def __init__(self, *args: Any, **kwargs: Any) -> None:
+ warnings.warn(
+ "ClientConnection was renamed to ClientProtocol",
+ DeprecationWarning,
+ )
+ super().__init__(*args, **kwargs)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/connection.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/connection.py
index db8b536993..88bcda1aaf 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/connection.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/connection.py
@@ -1,702 +1,13 @@
from __future__ import annotations
-import enum
-import logging
-import uuid
-from typing import Generator, List, Optional, Type, Union
+import warnings
-from .exceptions import (
- ConnectionClosed,
- ConnectionClosedError,
- ConnectionClosedOK,
- InvalidState,
- PayloadTooBig,
- ProtocolError,
-)
-from .extensions import Extension
-from .frames import (
- OK_CLOSE_CODES,
- OP_BINARY,
- OP_CLOSE,
- OP_CONT,
- OP_PING,
- OP_PONG,
- OP_TEXT,
- Close,
- Frame,
-)
-from .http11 import Request, Response
-from .streams import StreamReader
-from .typing import LoggerLike, Origin, Subprotocol
-
-
-__all__ = [
- "Connection",
- "Side",
- "State",
- "SEND_EOF",
-]
-
-Event = Union[Request, Response, Frame]
-"""Events that :meth:`~Connection.events_received` may return."""
-
-
-class Side(enum.IntEnum):
- """A WebSocket connection is either a server or a client."""
-
- SERVER, CLIENT = range(2)
-
-
-SERVER = Side.SERVER
-CLIENT = Side.CLIENT
-
-
-class State(enum.IntEnum):
- """A WebSocket connection is in one of these four states."""
-
- CONNECTING, OPEN, CLOSING, CLOSED = range(4)
-
-
-CONNECTING = State.CONNECTING
-OPEN = State.OPEN
-CLOSING = State.CLOSING
-CLOSED = State.CLOSED
-
-
-SEND_EOF = b""
-"""Sentinel signaling that the TCP connection must be half-closed."""
-
-
-class Connection:
- """
- Sans-I/O implementation of a WebSocket connection.
-
- Args:
- side: :attr:`~Side.CLIENT` or :attr:`~Side.SERVER`.
- state: initial state of the WebSocket connection.
- max_size: maximum size of incoming messages in bytes;
- :obj:`None` to disable the limit.
- logger: logger for this connection; depending on ``side``,
- defaults to ``logging.getLogger("websockets.client")``
- or ``logging.getLogger("websockets.server")``;
- see the :doc:`logging guide <../topics/logging>` for details.
-
- """
-
- def __init__(
- self,
- side: Side,
- state: State = OPEN,
- max_size: Optional[int] = 2**20,
- logger: Optional[LoggerLike] = None,
- ) -> None:
- # Unique identifier. For logs.
- self.id: uuid.UUID = uuid.uuid4()
- """Unique identifier of the connection. Useful in logs."""
-
- # Logger or LoggerAdapter for this connection.
- if logger is None:
- logger = logging.getLogger(f"websockets.{side.name.lower()}")
- self.logger: LoggerLike = logger
- """Logger for this connection."""
-
- # Track if DEBUG is enabled. Shortcut logging calls if it isn't.
- self.debug = logger.isEnabledFor(logging.DEBUG)
-
- # Connection side. CLIENT or SERVER.
- self.side = side
-
- # Connection state. Initially OPEN because subclasses handle CONNECTING.
- self.state = state
-
- # Maximum size of incoming messages in bytes.
- self.max_size = max_size
-
- # Current size of incoming message in bytes. Only set while reading a
- # fragmented message i.e. a data frames with the FIN bit not set.
- self.cur_size: Optional[int] = None
-
- # True while sending a fragmented message i.e. a data frames with the
- # FIN bit not set.
- self.expect_continuation_frame = False
-
- # WebSocket protocol parameters.
- self.origin: Optional[Origin] = None
- self.extensions: List[Extension] = []
- self.subprotocol: Optional[Subprotocol] = None
-
- # Close code and reason, set when a close frame is sent or received.
- self.close_rcvd: Optional[Close] = None
- self.close_sent: Optional[Close] = None
- self.close_rcvd_then_sent: Optional[bool] = None
-
- # Track if an exception happened during the handshake.
- self.handshake_exc: Optional[Exception] = None
- """
- Exception to raise if the opening handshake failed.
-
- :obj:`None` if the opening handshake succeeded.
-
- """
-
- # Track if send_eof() was called.
- self.eof_sent = False
-
- # Parser state.
- self.reader = StreamReader()
- self.events: List[Event] = []
- self.writes: List[bytes] = []
- self.parser = self.parse()
- next(self.parser) # start coroutine
- self.parser_exc: Optional[Exception] = None
-
- @property
- def state(self) -> State:
- """
- WebSocket connection state.
-
- Defined in 4.1, 4.2, 7.1.3, and 7.1.4 of :rfc:`6455`.
-
- """
- return self._state
-
- @state.setter
- def state(self, state: State) -> None:
- if self.debug:
- self.logger.debug("= connection is %s", state.name)
- self._state = state
-
- @property
- def close_code(self) -> Optional[int]:
- """
- `WebSocket close code`_.
-
- .. _WebSocket close code:
- https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.5
-
- :obj:`None` if the connection isn't closed yet.
-
- """
- if self.state is not CLOSED:
- return None
- elif self.close_rcvd is None:
- return 1006
- else:
- return self.close_rcvd.code
-
- @property
- def close_reason(self) -> Optional[str]:
- """
- `WebSocket close reason`_.
-
- .. _WebSocket close reason:
- https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.6
-
- :obj:`None` if the connection isn't closed yet.
-
- """
- if self.state is not CLOSED:
- return None
- elif self.close_rcvd is None:
- return ""
- else:
- return self.close_rcvd.reason
-
- @property
- def close_exc(self) -> ConnectionClosed:
- """
- Exception to raise when trying to interact with a closed connection.
-
- Don't raise this exception while the connection :attr:`state`
- is :attr:`~websockets.connection.State.CLOSING`; wait until
- it's :attr:`~websockets.connection.State.CLOSED`.
-
- Indeed, the exception includes the close code and reason, which are
- known only once the connection is closed.
-
- Raises:
- AssertionError: if the connection isn't closed yet.
-
- """
- assert self.state is CLOSED, "connection isn't closed yet"
- exc_type: Type[ConnectionClosed]
- if (
- self.close_rcvd is not None
- and self.close_sent is not None
- and self.close_rcvd.code in OK_CLOSE_CODES
- and self.close_sent.code in OK_CLOSE_CODES
- ):
- exc_type = ConnectionClosedOK
- else:
- exc_type = ConnectionClosedError
- exc: ConnectionClosed = exc_type(
- self.close_rcvd,
- self.close_sent,
- self.close_rcvd_then_sent,
- )
- # Chain to the exception raised in the parser, if any.
- exc.__cause__ = self.parser_exc
- return exc
-
- # Public methods for receiving data.
-
- def receive_data(self, data: bytes) -> None:
- """
- Receive data from the network.
-
- After calling this method:
-
- - You must call :meth:`data_to_send` and send this data to the network.
- - You should call :meth:`events_received` and process resulting events.
-
- Raises:
- EOFError: if :meth:`receive_eof` was called earlier.
-
- """
- self.reader.feed_data(data)
- next(self.parser)
-
- def receive_eof(self) -> None:
- """
- Receive the end of the data stream from the network.
-
- After calling this method:
-
- - You must call :meth:`data_to_send` and send this data to the network.
- - You aren't expected to call :meth:`events_received`; it won't return
- any new events.
-
- Raises:
- EOFError: if :meth:`receive_eof` was called earlier.
-
- """
- self.reader.feed_eof()
- next(self.parser)
-
- # Public methods for sending events.
-
- def send_continuation(self, data: bytes, fin: bool) -> None:
- """
- Send a `Continuation frame`_.
-
- .. _Continuation frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
-
- Parameters:
- data: payload containing the same kind of data
- as the initial frame.
- fin: FIN bit; set it to :obj:`True` if this is the last frame
- of a fragmented message and to :obj:`False` otherwise.
-
- Raises:
- ProtocolError: if a fragmented message isn't in progress.
-
- """
- if not self.expect_continuation_frame:
- raise ProtocolError("unexpected continuation frame")
- self.expect_continuation_frame = not fin
- self.send_frame(Frame(OP_CONT, data, fin))
-
- def send_text(self, data: bytes, fin: bool = True) -> None:
- """
- Send a `Text frame`_.
-
- .. _Text frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
-
- Parameters:
- data: payload containing text encoded with UTF-8.
- fin: FIN bit; set it to :obj:`False` if this is the first frame of
- a fragmented message.
-
- Raises:
- ProtocolError: if a fragmented message is in progress.
-
- """
- if self.expect_continuation_frame:
- raise ProtocolError("expected a continuation frame")
- self.expect_continuation_frame = not fin
- self.send_frame(Frame(OP_TEXT, data, fin))
-
- def send_binary(self, data: bytes, fin: bool = True) -> None:
- """
- Send a `Binary frame`_.
+# lazy_import doesn't support this use case.
+from .protocol import SEND_EOF, Protocol as Connection, Side, State # noqa: F401
- .. _Binary frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
- Parameters:
- data: payload containing arbitrary binary data.
- fin: FIN bit; set it to :obj:`False` if this is the first frame of
- a fragmented message.
-
- Raises:
- ProtocolError: if a fragmented message is in progress.
-
- """
- if self.expect_continuation_frame:
- raise ProtocolError("expected a continuation frame")
- self.expect_continuation_frame = not fin
- self.send_frame(Frame(OP_BINARY, data, fin))
-
- def send_close(self, code: Optional[int] = None, reason: str = "") -> None:
- """
- Send a `Close frame`_.
-
- .. _Close frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.1
-
- Parameters:
- code: close code.
- reason: close reason.
-
- Raises:
- ProtocolError: if a fragmented message is being sent, if the code
- isn't valid, or if a reason is provided without a code
-
- """
- if self.expect_continuation_frame:
- raise ProtocolError("expected a continuation frame")
- if code is None:
- if reason != "":
- raise ProtocolError("cannot send a reason without a code")
- close = Close(1005, "")
- data = b""
- else:
- close = Close(code, reason)
- data = close.serialize()
- # send_frame() guarantees that self.state is OPEN at this point.
- # 7.1.3. The WebSocket Closing Handshake is Started
- self.send_frame(Frame(OP_CLOSE, data))
- self.close_sent = close
- self.state = CLOSING
-
- def send_ping(self, data: bytes) -> None:
- """
- Send a `Ping frame`_.
-
- .. _Ping frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.2
-
- Parameters:
- data: payload containing arbitrary binary data.
-
- """
- self.send_frame(Frame(OP_PING, data))
-
- def send_pong(self, data: bytes) -> None:
- """
- Send a `Pong frame`_.
-
- .. _Pong frame:
- https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.3
-
- Parameters:
- data: payload containing arbitrary binary data.
-
- """
- self.send_frame(Frame(OP_PONG, data))
-
- def fail(self, code: int, reason: str = "") -> None:
- """
- `Fail the WebSocket connection`_.
-
- .. _Fail the WebSocket connection:
- https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.7
-
- Parameters:
- code: close code
- reason: close reason
-
- Raises:
- ProtocolError: if the code isn't valid.
- """
- # 7.1.7. Fail the WebSocket Connection
-
- # Send a close frame when the state is OPEN (a close frame was already
- # sent if it's CLOSING), except when failing the connection because
- # of an error reading from or writing to the network.
- if self.state is OPEN:
- if code != 1006:
- close = Close(code, reason)
- data = close.serialize()
- self.send_frame(Frame(OP_CLOSE, data))
- self.close_sent = close
- self.state = CLOSING
-
- # When failing the connection, a server closes the TCP connection
- # without waiting for the client to complete the handshake, while a
- # client waits for the server to close the TCP connection, possibly
- # after sending a close frame that the client will ignore.
- if self.side is SERVER and not self.eof_sent:
- self.send_eof()
-
- # 7.1.7. Fail the WebSocket Connection "An endpoint MUST NOT continue
- # to attempt to process data(including a responding Close frame) from
- # the remote endpoint after being instructed to _Fail the WebSocket
- # Connection_."
- self.parser = self.discard()
- next(self.parser) # start coroutine
-
- # Public method for getting incoming events after receiving data.
-
- def events_received(self) -> List[Event]:
- """
- Fetch events generated from data received from the network.
-
- Call this method immediately after any of the ``receive_*()`` methods.
-
- Process resulting events, likely by passing them to the application.
-
- Returns:
- List[Event]: Events read from the connection.
- """
- events, self.events = self.events, []
- return events
-
- # Public method for getting outgoing data after receiving data or sending events.
-
- def data_to_send(self) -> List[bytes]:
- """
- Obtain data to send to the network.
-
- Call this method immediately after any of the ``receive_*()``,
- ``send_*()``, or :meth:`fail` methods.
-
- Write resulting data to the connection.
-
- The empty bytestring :data:`~websockets.connection.SEND_EOF` signals
- the end of the data stream. When you receive it, half-close the TCP
- connection.
-
- Returns:
- List[bytes]: Data to write to the connection.
-
- """
- writes, self.writes = self.writes, []
- return writes
-
- def close_expected(self) -> bool:
- """
- Tell if the TCP connection is expected to close soon.
-
- Call this method immediately after any of the ``receive_*()`` or
- :meth:`fail` methods.
-
- If it returns :obj:`True`, schedule closing the TCP connection after a
- short timeout if the other side hasn't already closed it.
-
- Returns:
- bool: Whether the TCP connection is expected to close soon.
-
- """
- # We expect a TCP close if and only if we sent a close frame:
- # * Normal closure: once we send a close frame, we expect a TCP close:
- # server waits for client to complete the TCP closing handshake;
- # client waits for server to initiate the TCP closing handshake.
- # * Abnormal closure: we always send a close frame and the same logic
- # applies, except on EOFError where we don't send a close frame
- # because we already received the TCP close, so we don't expect it.
- # We already got a TCP Close if and only if the state is CLOSED.
- return self.state is CLOSING or self.handshake_exc is not None
-
- # Private methods for receiving data.
-
- def parse(self) -> Generator[None, None, None]:
- """
- Parse incoming data into frames.
-
- :meth:`receive_data` and :meth:`receive_eof` run this generator
- coroutine until it needs more data or reaches EOF.
-
- """
- try:
- while True:
- if (yield from self.reader.at_eof()):
- if self.debug:
- self.logger.debug("< EOF")
- # If the WebSocket connection is closed cleanly, with a
- # closing handhshake, recv_frame() substitutes parse()
- # with discard(). This branch is reached only when the
- # connection isn't closed cleanly.
- raise EOFError("unexpected end of stream")
-
- if self.max_size is None:
- max_size = None
- elif self.cur_size is None:
- max_size = self.max_size
- else:
- max_size = self.max_size - self.cur_size
-
- # During a normal closure, execution ends here on the next
- # iteration of the loop after receiving a close frame. At
- # this point, recv_frame() replaced parse() by discard().
- frame = yield from Frame.parse(
- self.reader.read_exact,
- mask=self.side is SERVER,
- max_size=max_size,
- extensions=self.extensions,
- )
-
- if self.debug:
- self.logger.debug("< %s", frame)
-
- self.recv_frame(frame)
-
- except ProtocolError as exc:
- self.fail(1002, str(exc))
- self.parser_exc = exc
-
- except EOFError as exc:
- self.fail(1006, str(exc))
- self.parser_exc = exc
-
- except UnicodeDecodeError as exc:
- self.fail(1007, f"{exc.reason} at position {exc.start}")
- self.parser_exc = exc
-
- except PayloadTooBig as exc:
- self.fail(1009, str(exc))
- self.parser_exc = exc
-
- except Exception as exc:
- self.logger.error("parser failed", exc_info=True)
- # Don't include exception details, which may be security-sensitive.
- self.fail(1011)
- self.parser_exc = exc
-
- # During an abnormal closure, execution ends here after catching an
- # exception. At this point, fail() replaced parse() by discard().
- yield
- raise AssertionError("parse() shouldn't step after error") # pragma: no cover
-
- def discard(self) -> Generator[None, None, None]:
- """
- Discard incoming data.
-
- This coroutine replaces :meth:`parse`:
-
- - after receiving a close frame, during a normal closure (1.4);
- - after sending a close frame, during an abnormal closure (7.1.7).
-
- """
- # The server close the TCP connection in the same circumstances where
- # discard() replaces parse(). The client closes the connection later,
- # after the server closes the connection or a timeout elapses.
- # (The latter case cannot be handled in this Sans-I/O layer.)
- assert (self.side is SERVER) == (self.eof_sent)
- while not (yield from self.reader.at_eof()):
- self.reader.discard()
- if self.debug:
- self.logger.debug("< EOF")
- # A server closes the TCP connection immediately, while a client
- # waits for the server to close the TCP connection.
- if self.side is CLIENT:
- self.send_eof()
- self.state = CLOSED
- # If discard() completes normally, execution ends here.
- yield
- # Once the reader reaches EOF, its feed_data/eof() methods raise an
- # error, so our receive_data/eof() methods don't step the generator.
- raise AssertionError("discard() shouldn't step after EOF") # pragma: no cover
-
- def recv_frame(self, frame: Frame) -> None:
- """
- Process an incoming frame.
-
- """
- if frame.opcode is OP_TEXT or frame.opcode is OP_BINARY:
- if self.cur_size is not None:
- raise ProtocolError("expected a continuation frame")
- if frame.fin:
- self.cur_size = None
- else:
- self.cur_size = len(frame.data)
-
- elif frame.opcode is OP_CONT:
- if self.cur_size is None:
- raise ProtocolError("unexpected continuation frame")
- if frame.fin:
- self.cur_size = None
- else:
- self.cur_size += len(frame.data)
-
- elif frame.opcode is OP_PING:
- # 5.5.2. Ping: "Upon receipt of a Ping frame, an endpoint MUST
- # send a Pong frame in response"
- pong_frame = Frame(OP_PONG, frame.data)
- self.send_frame(pong_frame)
-
- elif frame.opcode is OP_PONG:
- # 5.5.3 Pong: "A response to an unsolicited Pong frame is not
- # expected."
- pass
-
- elif frame.opcode is OP_CLOSE:
- # 7.1.5. The WebSocket Connection Close Code
- # 7.1.6. The WebSocket Connection Close Reason
- self.close_rcvd = Close.parse(frame.data)
- if self.state is CLOSING:
- assert self.close_sent is not None
- self.close_rcvd_then_sent = False
-
- if self.cur_size is not None:
- raise ProtocolError("incomplete fragmented message")
-
- # 5.5.1 Close: "If an endpoint receives a Close frame and did
- # not previously send a Close frame, the endpoint MUST send a
- # Close frame in response. (When sending a Close frame in
- # response, the endpoint typically echos the status code it
- # received.)"
-
- if self.state is OPEN:
- # Echo the original data instead of re-serializing it with
- # Close.serialize() because that fails when the close frame
- # is empty and Close.parse() synthetizes a 1005 close code.
- # The rest is identical to send_close().
- self.send_frame(Frame(OP_CLOSE, frame.data))
- self.close_sent = self.close_rcvd
- self.close_rcvd_then_sent = True
- self.state = CLOSING
-
- # 7.1.2. Start the WebSocket Closing Handshake: "Once an
- # endpoint has both sent and received a Close control frame,
- # that endpoint SHOULD _Close the WebSocket Connection_"
-
- # A server closes the TCP connection immediately, while a client
- # waits for the server to close the TCP connection.
- if self.side is SERVER:
- self.send_eof()
-
- # 1.4. Closing Handshake: "after receiving a control frame
- # indicating the connection should be closed, a peer discards
- # any further data received."
- self.parser = self.discard()
- next(self.parser) # start coroutine
-
- else: # pragma: no cover
- # This can't happen because Frame.parse() validates opcodes.
- raise AssertionError(f"unexpected opcode: {frame.opcode:02x}")
-
- self.events.append(frame)
-
- # Private methods for sending events.
-
- def send_frame(self, frame: Frame) -> None:
- if self.state is not OPEN:
- raise InvalidState(
- f"cannot write to a WebSocket in the {self.state.name} state"
- )
-
- if self.debug:
- self.logger.debug("> %s", frame)
- self.writes.append(
- frame.serialize(mask=self.side is CLIENT, extensions=self.extensions)
- )
-
- def send_eof(self) -> None:
- assert not self.eof_sent
- self.eof_sent = True
- if self.debug:
- self.logger.debug("> EOF")
- self.writes.append(SEND_EOF)
+warnings.warn(
+ "websockets.connection was renamed to websockets.protocol "
+ "and Connection was renamed to Protocol",
+ DeprecationWarning,
+)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/datastructures.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/datastructures.py
index 36a2cbaf99..a0a648463a 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/datastructures.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/datastructures.py
@@ -1,6 +1,5 @@
from __future__ import annotations
-import sys
from typing import (
Any,
Dict,
@@ -9,17 +8,12 @@ from typing import (
List,
Mapping,
MutableMapping,
+ Protocol,
Tuple,
Union,
)
-if sys.version_info[:2] >= (3, 8):
- from typing import Protocol
-else: # pragma: no cover
- Protocol = object # mypy will report errors on Python 3.7.
-
-
__all__ = ["Headers", "HeadersLike", "MultipleValuesError"]
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/exceptions.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/exceptions.py
index 0c4fc51851..f7169e3b17 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/exceptions.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/exceptions.py
@@ -34,6 +34,7 @@ import http
from typing import Optional
from . import datastructures, frames, http11
+from .typing import StatusLike
__all__ = [
@@ -120,19 +121,23 @@ class ConnectionClosed(WebSocketException):
@property
def code(self) -> int:
- return 1006 if self.rcvd is None else self.rcvd.code
+ if self.rcvd is None:
+ return frames.CloseCode.ABNORMAL_CLOSURE
+ return self.rcvd.code
@property
def reason(self) -> str:
- return "" if self.rcvd is None else self.rcvd.reason
+ if self.rcvd is None:
+ return ""
+ return self.rcvd.reason
class ConnectionClosedError(ConnectionClosed):
"""
Like :exc:`ConnectionClosed`, when the connection terminated with an error.
- A close code other than 1000 (OK) or 1001 (going away) was received or
- sent, or the closing handshake didn't complete properly.
+ A close frame with a code other than 1000 (OK) or 1001 (going away) was
+ received or sent, or the closing handshake didn't complete properly.
"""
@@ -141,7 +146,8 @@ class ConnectionClosedOK(ConnectionClosed):
"""
Like :exc:`ConnectionClosed`, when the connection terminated properly.
- A close code 1000 (OK) or 1001 (going away) was received and sent.
+ A close code with code 1000 (OK) or 1001 (going away) or without a code was
+ received and sent.
"""
@@ -171,7 +177,7 @@ class InvalidMessage(InvalidHandshake):
class InvalidHeader(InvalidHandshake):
"""
- Raised when a HTTP header doesn't have a valid format or value.
+ Raised when an HTTP header doesn't have a valid format or value.
"""
@@ -190,7 +196,7 @@ class InvalidHeader(InvalidHandshake):
class InvalidHeaderFormat(InvalidHeader):
"""
- Raised when a HTTP header cannot be parsed.
+ Raised when an HTTP header cannot be parsed.
The format of the header doesn't match the grammar for that header.
@@ -202,7 +208,7 @@ class InvalidHeaderFormat(InvalidHeader):
class InvalidHeaderValue(InvalidHeader):
"""
- Raised when a HTTP header has a wrong value.
+ Raised when an HTTP header has a wrong value.
The format of the header is correct but a value isn't acceptable.
@@ -310,7 +316,7 @@ class InvalidParameterValue(NegotiationError):
class AbortHandshake(InvalidHandshake):
"""
- Raised to abort the handshake on purpose and return a HTTP response.
+ Raised to abort the handshake on purpose and return an HTTP response.
This exception is an implementation detail.
@@ -325,11 +331,12 @@ class AbortHandshake(InvalidHandshake):
def __init__(
self,
- status: http.HTTPStatus,
+ status: StatusLike,
headers: datastructures.HeadersLike,
body: bytes = b"",
) -> None:
- self.status = status
+ # If a user passes an int instead of a HTTPStatus, fix it automatically.
+ self.status = http.HTTPStatus(status)
self.headers = datastructures.Headers(headers)
self.body = body
@@ -369,7 +376,7 @@ class InvalidState(WebSocketException, AssertionError):
class InvalidURI(WebSocketException):
"""
- Raised when connecting to an URI that isn't a valid WebSocket URI.
+ Raised when connecting to a URI that isn't a valid WebSocket URI.
"""
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/base.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/base.py
index 0609676185..6c481a46cc 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/base.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/base.py
@@ -38,6 +38,7 @@ class Extension:
PayloadTooBig: if decoding the payload exceeds ``max_size``.
"""
+ raise NotImplementedError
def encode(self, frame: frames.Frame) -> frames.Frame:
"""
@@ -50,6 +51,7 @@ class Extension:
Frame: Encoded frame.
"""
+ raise NotImplementedError
class ClientExtensionFactory:
@@ -69,6 +71,7 @@ class ClientExtensionFactory:
List[ExtensionParameter]: Parameters to send to the server.
"""
+ raise NotImplementedError
def process_response_params(
self,
@@ -91,6 +94,7 @@ class ClientExtensionFactory:
NegotiationError: if parameters aren't acceptable.
"""
+ raise NotImplementedError
class ServerExtensionFactory:
@@ -126,3 +130,4 @@ class ServerExtensionFactory:
the client aren't acceptable.
"""
+ raise NotImplementedError
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/permessage_deflate.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/permessage_deflate.py
index e0de5e8f85..b391837c66 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/permessage_deflate.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/extensions/permessage_deflate.py
@@ -211,7 +211,6 @@ def _extract_parameters(
client_max_window_bits: Optional[Union[int, bool]] = None
for name, value in params:
-
if name == "server_no_context_takeover":
if server_no_context_takeover:
raise exceptions.DuplicateParameter(name)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/frames.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/frames.py
index 043b688b52..6b1befb2e0 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/frames.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/frames.py
@@ -13,7 +13,7 @@ from .typing import Data
try:
from .speedups import apply_mask
-except ImportError: # pragma: no cover
+except ImportError:
from .utils import apply_mask
@@ -52,45 +52,70 @@ DATA_OPCODES = OP_CONT, OP_TEXT, OP_BINARY
CTRL_OPCODES = OP_CLOSE, OP_PING, OP_PONG
-# See https://www.iana.org/assignments/websocket/websocket.xhtml
-CLOSE_CODES = {
- 1000: "OK",
- 1001: "going away",
- 1002: "protocol error",
- 1003: "unsupported type",
+class CloseCode(enum.IntEnum):
+ """Close code values for WebSocket close frames."""
+
+ NORMAL_CLOSURE = 1000
+ GOING_AWAY = 1001
+ PROTOCOL_ERROR = 1002
+ UNSUPPORTED_DATA = 1003
# 1004 is reserved
- 1005: "no status code [internal]",
- 1006: "connection closed abnormally [internal]",
- 1007: "invalid data",
- 1008: "policy violation",
- 1009: "message too big",
- 1010: "extension required",
- 1011: "unexpected error",
- 1012: "service restart",
- 1013: "try again later",
- 1014: "bad gateway",
- 1015: "TLS failure [internal]",
+ NO_STATUS_RCVD = 1005
+ ABNORMAL_CLOSURE = 1006
+ INVALID_DATA = 1007
+ POLICY_VIOLATION = 1008
+ MESSAGE_TOO_BIG = 1009
+ MANDATORY_EXTENSION = 1010
+ INTERNAL_ERROR = 1011
+ SERVICE_RESTART = 1012
+ TRY_AGAIN_LATER = 1013
+ BAD_GATEWAY = 1014
+ TLS_HANDSHAKE = 1015
+
+
+# See https://www.iana.org/assignments/websocket/websocket.xhtml
+CLOSE_CODE_EXPLANATIONS: dict[int, str] = {
+ CloseCode.NORMAL_CLOSURE: "OK",
+ CloseCode.GOING_AWAY: "going away",
+ CloseCode.PROTOCOL_ERROR: "protocol error",
+ CloseCode.UNSUPPORTED_DATA: "unsupported data",
+ CloseCode.NO_STATUS_RCVD: "no status received [internal]",
+ CloseCode.ABNORMAL_CLOSURE: "abnormal closure [internal]",
+ CloseCode.INVALID_DATA: "invalid frame payload data",
+ CloseCode.POLICY_VIOLATION: "policy violation",
+ CloseCode.MESSAGE_TOO_BIG: "message too big",
+ CloseCode.MANDATORY_EXTENSION: "mandatory extension",
+ CloseCode.INTERNAL_ERROR: "internal error",
+ CloseCode.SERVICE_RESTART: "service restart",
+ CloseCode.TRY_AGAIN_LATER: "try again later",
+ CloseCode.BAD_GATEWAY: "bad gateway",
+ CloseCode.TLS_HANDSHAKE: "TLS handshake failure [internal]",
}
# Close code that are allowed in a close frame.
# Using a set optimizes `code in EXTERNAL_CLOSE_CODES`.
EXTERNAL_CLOSE_CODES = {
- 1000,
- 1001,
- 1002,
- 1003,
- 1007,
- 1008,
- 1009,
- 1010,
- 1011,
- 1012,
- 1013,
- 1014,
+ CloseCode.NORMAL_CLOSURE,
+ CloseCode.GOING_AWAY,
+ CloseCode.PROTOCOL_ERROR,
+ CloseCode.UNSUPPORTED_DATA,
+ CloseCode.INVALID_DATA,
+ CloseCode.POLICY_VIOLATION,
+ CloseCode.MESSAGE_TOO_BIG,
+ CloseCode.MANDATORY_EXTENSION,
+ CloseCode.INTERNAL_ERROR,
+ CloseCode.SERVICE_RESTART,
+ CloseCode.TRY_AGAIN_LATER,
+ CloseCode.BAD_GATEWAY,
}
-OK_CLOSE_CODES = {1000, 1001}
+
+OK_CLOSE_CODES = {
+ CloseCode.NORMAL_CLOSURE,
+ CloseCode.GOING_AWAY,
+ CloseCode.NO_STATUS_RCVD,
+}
BytesLike = bytes, bytearray, memoryview
@@ -123,7 +148,7 @@ class Frame:
def __str__(self) -> str:
"""
- Return a human-readable represention of a frame.
+ Return a human-readable representation of a frame.
"""
coding = None
@@ -191,6 +216,8 @@ class Frame:
extensions: list of extensions, applied in reverse order.
Raises:
+ EOFError: if the connection is closed without a full WebSocket frame.
+ UnicodeDecodeError: if the frame contains invalid UTF-8.
PayloadTooBig: if the frame's payload size exceeds ``max_size``.
ProtocolError: if the frame contains incorrect values.
@@ -383,7 +410,7 @@ class Close:
def __str__(self) -> str:
"""
- Return a human-readable represention of a close code and reason.
+ Return a human-readable representation of a close code and reason.
"""
if 3000 <= self.code < 4000:
@@ -391,7 +418,7 @@ class Close:
elif 4000 <= self.code < 5000:
explanation = "private use"
else:
- explanation = CLOSE_CODES.get(self.code, "unknown")
+ explanation = CLOSE_CODE_EXPLANATIONS.get(self.code, "unknown")
result = f"{self.code} ({explanation})"
if self.reason:
@@ -419,7 +446,7 @@ class Close:
close.check()
return close
elif len(data) == 0:
- return cls(1005, "")
+ return cls(CloseCode.NO_STATUS_RCVD, "")
else:
raise exceptions.ProtocolError("close frame too short")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http.py
index b14fa94bdc..9f86f6a1ff 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http.py
@@ -1,6 +1,7 @@
from __future__ import annotations
import sys
+import typing
from .imports import lazy_import
from .version import version as websockets_version
@@ -9,18 +10,22 @@ from .version import version as websockets_version
# For backwards compatibility:
-lazy_import(
- globals(),
- # Headers and MultipleValuesError used to be defined in this module.
- aliases={
- "Headers": ".datastructures",
- "MultipleValuesError": ".datastructures",
- },
- deprecated_aliases={
- "read_request": ".legacy.http",
- "read_response": ".legacy.http",
- },
-)
+# When type checking, import non-deprecated aliases eagerly. Else, import on demand.
+if typing.TYPE_CHECKING:
+ from .datastructures import Headers, MultipleValuesError # noqa: F401
+else:
+ lazy_import(
+ globals(),
+ # Headers and MultipleValuesError used to be defined in this module.
+ aliases={
+ "Headers": ".datastructures",
+ "MultipleValuesError": ".datastructures",
+ },
+ deprecated_aliases={
+ "read_request": ".legacy.http",
+ "read_response": ".legacy.http",
+ },
+ )
__all__ = ["USER_AGENT"]
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http11.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http11.py
index 84048fa47b..ec4e3b8b7d 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http11.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/http11.py
@@ -8,14 +8,12 @@ from typing import Callable, Generator, Optional
from . import datastructures, exceptions
-# Maximum total size of headers is around 256 * 4 KiB = 1 MiB
-MAX_HEADERS = 256
+# Maximum total size of headers is around 128 * 8 KiB = 1 MiB.
+MAX_HEADERS = 128
-# We can use the same limit for the request line and header lines:
-# "GET <4096 bytes> HTTP/1.1\r\n" = 4111 bytes
-# "Set-Cookie: <4097 bytes>\r\n" = 4111 bytes
-# (RFC requires 4096 bytes; for some reason Firefox supports 4097 bytes.)
-MAX_LINE = 4111
+# Limit request line and header lines. 8KiB is the most common default
+# configuration of popular HTTP servers.
+MAX_LINE = 8192
# Support for HTTP response bodies is intended to read an error message
# returned by a server. It isn't designed to perform large file transfers.
@@ -70,7 +68,7 @@ class Request:
def exception(self) -> Optional[Exception]: # pragma: no cover
warnings.warn(
"Request.exception is deprecated; "
- "use ServerConnection.handshake_exc instead",
+ "use ServerProtocol.handshake_exc instead",
DeprecationWarning,
)
return self._exception
@@ -174,7 +172,7 @@ class Response:
def exception(self) -> Optional[Exception]: # pragma: no cover
warnings.warn(
"Response.exception is deprecated; "
- "use ClientConnection.handshake_exc instead",
+ "use ClientProtocol.handshake_exc instead",
DeprecationWarning,
)
return self._exception
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/async_timeout.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/async_timeout.py
new file mode 100644
index 0000000000..8264094f5b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/async_timeout.py
@@ -0,0 +1,265 @@
+# From https://github.com/aio-libs/async-timeout/blob/master/async_timeout/__init__.py
+# Licensed under the Apache License (Apache-2.0)
+
+import asyncio
+import enum
+import sys
+import warnings
+from types import TracebackType
+from typing import Optional, Type
+
+
+# From https://github.com/python/typing_extensions/blob/main/src/typing_extensions.py
+# Licensed under the Python Software Foundation License (PSF-2.0)
+
+if sys.version_info >= (3, 11):
+ from typing import final
+else:
+ # @final exists in 3.8+, but we backport it for all versions
+ # before 3.11 to keep support for the __final__ attribute.
+ # See https://bugs.python.org/issue46342
+ def final(f):
+ """This decorator can be used to indicate to type checkers that
+ the decorated method cannot be overridden, and decorated class
+ cannot be subclassed. For example:
+
+ class Base:
+ @final
+ def done(self) -> None:
+ ...
+ class Sub(Base):
+ def done(self) -> None: # Error reported by type checker
+ ...
+ @final
+ class Leaf:
+ ...
+ class Other(Leaf): # Error reported by type checker
+ ...
+
+ There is no runtime checking of these properties. The decorator
+ sets the ``__final__`` attribute to ``True`` on the decorated object
+ to allow runtime introspection.
+ """
+ try:
+ f.__final__ = True
+ except (AttributeError, TypeError):
+ # Skip the attribute silently if it is not writable.
+ # AttributeError happens if the object has __slots__ or a
+ # read-only property, TypeError if it's a builtin class.
+ pass
+ return f
+
+
+# End https://github.com/aio-libs/async-timeout/blob/master/async_timeout/__init__.py
+
+__version__ = "4.0.2"
+
+
+__all__ = ("timeout", "timeout_at", "Timeout")
+
+
+def timeout(delay: Optional[float]) -> "Timeout":
+ """timeout context manager.
+
+ Useful in cases when you want to apply timeout logic around block
+ of code or in cases when asyncio.wait_for is not suitable. For example:
+
+ >>> async with timeout(0.001):
+ ... async with aiohttp.get('https://github.com') as r:
+ ... await r.text()
+
+
+ delay - value in seconds or None to disable timeout logic
+ """
+ loop = asyncio.get_running_loop()
+ if delay is not None:
+ deadline = loop.time() + delay # type: Optional[float]
+ else:
+ deadline = None
+ return Timeout(deadline, loop)
+
+
+def timeout_at(deadline: Optional[float]) -> "Timeout":
+ """Schedule the timeout at absolute time.
+
+ deadline argument points on the time in the same clock system
+ as loop.time().
+
+ Please note: it is not POSIX time but a time with
+ undefined starting base, e.g. the time of the system power on.
+
+ >>> async with timeout_at(loop.time() + 10):
+ ... async with aiohttp.get('https://github.com') as r:
+ ... await r.text()
+
+
+ """
+ loop = asyncio.get_running_loop()
+ return Timeout(deadline, loop)
+
+
+class _State(enum.Enum):
+ INIT = "INIT"
+ ENTER = "ENTER"
+ TIMEOUT = "TIMEOUT"
+ EXIT = "EXIT"
+
+
+@final
+class Timeout:
+ # Internal class, please don't instantiate it directly
+ # Use timeout() and timeout_at() public factories instead.
+ #
+ # Implementation note: `async with timeout()` is preferred
+ # over `with timeout()`.
+ # While technically the Timeout class implementation
+ # doesn't need to be async at all,
+ # the `async with` statement explicitly points that
+ # the context manager should be used from async function context.
+ #
+ # This design allows to avoid many silly misusages.
+ #
+ # TimeoutError is raised immediately when scheduled
+ # if the deadline is passed.
+ # The purpose is to time out as soon as possible
+ # without waiting for the next await expression.
+
+ __slots__ = ("_deadline", "_loop", "_state", "_timeout_handler")
+
+ def __init__(
+ self, deadline: Optional[float], loop: asyncio.AbstractEventLoop
+ ) -> None:
+ self._loop = loop
+ self._state = _State.INIT
+
+ self._timeout_handler = None # type: Optional[asyncio.Handle]
+ if deadline is None:
+ self._deadline = None # type: Optional[float]
+ else:
+ self.update(deadline)
+
+ def __enter__(self) -> "Timeout":
+ warnings.warn(
+ "with timeout() is deprecated, use async with timeout() instead",
+ DeprecationWarning,
+ stacklevel=2,
+ )
+ self._do_enter()
+ return self
+
+ def __exit__(
+ self,
+ exc_type: Optional[Type[BaseException]],
+ exc_val: Optional[BaseException],
+ exc_tb: Optional[TracebackType],
+ ) -> Optional[bool]:
+ self._do_exit(exc_type)
+ return None
+
+ async def __aenter__(self) -> "Timeout":
+ self._do_enter()
+ return self
+
+ async def __aexit__(
+ self,
+ exc_type: Optional[Type[BaseException]],
+ exc_val: Optional[BaseException],
+ exc_tb: Optional[TracebackType],
+ ) -> Optional[bool]:
+ self._do_exit(exc_type)
+ return None
+
+ @property
+ def expired(self) -> bool:
+ """Is timeout expired during execution?"""
+ return self._state == _State.TIMEOUT
+
+ @property
+ def deadline(self) -> Optional[float]:
+ return self._deadline
+
+ def reject(self) -> None:
+ """Reject scheduled timeout if any."""
+ # cancel is maybe better name but
+ # task.cancel() raises CancelledError in asyncio world.
+ if self._state not in (_State.INIT, _State.ENTER):
+ raise RuntimeError(f"invalid state {self._state.value}")
+ self._reject()
+
+ def _reject(self) -> None:
+ if self._timeout_handler is not None:
+ self._timeout_handler.cancel()
+ self._timeout_handler = None
+
+ def shift(self, delay: float) -> None:
+ """Advance timeout on delay seconds.
+
+ The delay can be negative.
+
+ Raise RuntimeError if shift is called when deadline is not scheduled
+ """
+ deadline = self._deadline
+ if deadline is None:
+ raise RuntimeError("cannot shift timeout if deadline is not scheduled")
+ self.update(deadline + delay)
+
+ def update(self, deadline: float) -> None:
+ """Set deadline to absolute value.
+
+ deadline argument points on the time in the same clock system
+ as loop.time().
+
+ If new deadline is in the past the timeout is raised immediately.
+
+ Please note: it is not POSIX time but a time with
+ undefined starting base, e.g. the time of the system power on.
+ """
+ if self._state == _State.EXIT:
+ raise RuntimeError("cannot reschedule after exit from context manager")
+ if self._state == _State.TIMEOUT:
+ raise RuntimeError("cannot reschedule expired timeout")
+ if self._timeout_handler is not None:
+ self._timeout_handler.cancel()
+ self._deadline = deadline
+ if self._state != _State.INIT:
+ self._reschedule()
+
+ def _reschedule(self) -> None:
+ assert self._state == _State.ENTER
+ deadline = self._deadline
+ if deadline is None:
+ return
+
+ now = self._loop.time()
+ if self._timeout_handler is not None:
+ self._timeout_handler.cancel()
+
+ task = asyncio.current_task()
+ if deadline <= now:
+ self._timeout_handler = self._loop.call_soon(self._on_timeout, task)
+ else:
+ self._timeout_handler = self._loop.call_at(deadline, self._on_timeout, task)
+
+ def _do_enter(self) -> None:
+ if self._state != _State.INIT:
+ raise RuntimeError(f"invalid state {self._state.value}")
+ self._state = _State.ENTER
+ self._reschedule()
+
+ def _do_exit(self, exc_type: Optional[Type[BaseException]]) -> None:
+ if exc_type is asyncio.CancelledError and self._state == _State.TIMEOUT:
+ self._timeout_handler = None
+ raise asyncio.TimeoutError
+ # timeout has not expired
+ self._state = _State.EXIT
+ self._reject()
+ return None
+
+ def _on_timeout(self, task: "asyncio.Task[None]") -> None:
+ task.cancel()
+ self._state = _State.TIMEOUT
+ # drop the reference early
+ self._timeout_handler = None
+
+
+# End https://github.com/aio-libs/async-timeout/blob/master/async_timeout/__init__.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/auth.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/auth.py
index 8825c14ecf..d3425836e1 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/auth.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/auth.py
@@ -67,7 +67,7 @@ class BasicAuthWebSocketServerProtocol(WebSocketServerProtocol):
Returns:
bool: :obj:`True` if the handshake should continue;
- :obj:`False` if it should fail with a HTTP 401 error.
+ :obj:`False` if it should fail with an HTTP 401 error.
"""
if self._check_credentials is not None:
@@ -81,7 +81,7 @@ class BasicAuthWebSocketServerProtocol(WebSocketServerProtocol):
request_headers: Headers,
) -> Optional[HTTPResponse]:
"""
- Check HTTP Basic Auth and return a HTTP 401 response if needed.
+ Check HTTP Basic Auth and return an HTTP 401 response if needed.
"""
try:
@@ -118,8 +118,8 @@ def basic_auth_protocol_factory(
realm: Optional[str] = None,
credentials: Optional[Union[Credentials, Iterable[Credentials]]] = None,
check_credentials: Optional[Callable[[str, str], Awaitable[bool]]] = None,
- create_protocol: Optional[Callable[[Any], BasicAuthWebSocketServerProtocol]] = None,
-) -> Callable[[Any], BasicAuthWebSocketServerProtocol]:
+ create_protocol: Optional[Callable[..., BasicAuthWebSocketServerProtocol]] = None,
+) -> Callable[..., BasicAuthWebSocketServerProtocol]:
"""
Protocol factory that enforces HTTP Basic Auth.
@@ -135,20 +135,20 @@ def basic_auth_protocol_factory(
)
Args:
- realm: indicates the scope of protection. It should contain only ASCII
- characters because the encoding of non-ASCII characters is
- undefined. Refer to section 2.2 of :rfc:`7235` for details.
- credentials: defines hard coded authorized credentials. It can be a
+ realm: Scope of protection. It should contain only ASCII characters
+ because the encoding of non-ASCII characters is undefined.
+ Refer to section 2.2 of :rfc:`7235` for details.
+ credentials: Hard coded authorized credentials. It can be a
``(username, password)`` pair or a list of such pairs.
- check_credentials: defines a coroutine that verifies credentials.
- This coroutine receives ``username`` and ``password`` arguments
+ check_credentials: Coroutine that verifies credentials.
+ It receives ``username`` and ``password`` arguments
and returns a :class:`bool`. One of ``credentials`` or
``check_credentials`` must be provided but not both.
- create_protocol: factory that creates the protocol. By default, this
+ create_protocol: Factory that creates the protocol. By default, this
is :class:`BasicAuthWebSocketServerProtocol`. It can be replaced
by a subclass.
Raises:
- TypeError: if the ``credentials`` or ``check_credentials`` argument is
+ TypeError: If the ``credentials`` or ``check_credentials`` argument is
wrong.
"""
@@ -175,11 +175,7 @@ def basic_auth_protocol_factory(
return hmac.compare_digest(expected_password, password)
if create_protocol is None:
- # Not sure why mypy cannot figure this out.
- create_protocol = cast(
- Callable[[Any], BasicAuthWebSocketServerProtocol],
- BasicAuthWebSocketServerProtocol,
- )
+ create_protocol = BasicAuthWebSocketServerProtocol
return functools.partial(
create_protocol,
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/client.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/client.py
index fadc3efe87..48622523ee 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/client.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/client.py
@@ -44,6 +44,7 @@ from ..headers import (
from ..http import USER_AGENT
from ..typing import ExtensionHeader, LoggerLike, Origin, Subprotocol
from ..uri import WebSocketURI, parse_uri
+from .compatibility import asyncio_timeout
from .handshake import build_request, check_response
from .http import read_response
from .protocol import WebSocketCommonProtocol
@@ -65,12 +66,13 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
await process(message)
The iterator exits normally when the connection is closed with close code
- 1000 (OK) or 1001 (going away). It raises
+ 1000 (OK) or 1001 (going away) or without a close code. It raises
a :exc:`~websockets.exceptions.ConnectionClosedError` when the connection
is closed with any other code.
See :func:`connect` for the documentation of ``logger``, ``origin``,
- ``extensions``, ``subprotocols``, and ``extra_headers``.
+ ``extensions``, ``subprotocols``, ``extra_headers``, and
+ ``user_agent_header``.
See :class:`~websockets.legacy.protocol.WebSocketCommonProtocol` for the
documentation of ``ping_interval``, ``ping_timeout``, ``close_timeout``,
@@ -89,6 +91,7 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
extensions: Optional[Sequence[ClientExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
extra_headers: Optional[HeadersLike] = None,
+ user_agent_header: Optional[str] = USER_AGENT,
**kwargs: Any,
) -> None:
if logger is None:
@@ -98,6 +101,7 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
self.available_extensions = extensions
self.available_subprotocols = subprotocols
self.extra_headers = extra_headers
+ self.user_agent_header = user_agent_header
def write_http_request(self, path: str, headers: Headers) -> None:
"""
@@ -127,16 +131,12 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
after this coroutine returns.
Raises:
- InvalidMessage: if the HTTP message is malformed or isn't an
+ InvalidMessage: If the HTTP message is malformed or isn't an
HTTP/1.1 GET response.
"""
try:
status_code, reason, headers = await read_response(self.reader)
- # Remove this branch when dropping support for Python < 3.8
- # because CancelledError no longer inherits Exception.
- except asyncio.CancelledError: # pragma: no cover
- raise
except Exception as exc:
raise InvalidMessage("did not receive a valid HTTP response") from exc
@@ -185,7 +185,6 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
header_values = headers.get_all("Sec-WebSocket-Extensions")
if header_values:
-
if available_extensions is None:
raise InvalidHandshake("no extensions supported")
@@ -194,9 +193,7 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
)
for name, response_params in parsed_header_values:
-
for extension_factory in available_extensions:
-
# Skip non-matching extensions based on their name.
if extension_factory.name != name:
continue
@@ -242,7 +239,6 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
header_values = headers.get_all("Sec-WebSocket-Protocol")
if header_values:
-
if available_subprotocols is None:
raise InvalidHandshake("no subprotocols supported")
@@ -274,15 +270,15 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
Args:
wsuri: URI of the WebSocket server.
- origin: value of the ``Origin`` header.
- available_extensions: list of supported extensions, in order in
- which they should be tried.
- available_subprotocols: list of supported subprotocols, in order
- of decreasing preference.
- extra_headers: arbitrary HTTP headers to add to the request.
+ origin: Value of the ``Origin`` header.
+ extensions: List of supported extensions, in order in which they
+ should be negotiated and run.
+ subprotocols: List of supported subprotocols, in order of decreasing
+ preference.
+ extra_headers: Arbitrary HTTP headers to add to the handshake request.
Raises:
- InvalidHandshake: if the handshake fails.
+ InvalidHandshake: If the handshake fails.
"""
request_headers = Headers()
@@ -315,7 +311,8 @@ class WebSocketClientProtocol(WebSocketCommonProtocol):
if self.extra_headers is not None:
request_headers.update(self.extra_headers)
- request_headers.setdefault("User-Agent", USER_AGENT)
+ if self.user_agent_header is not None:
+ request_headers.setdefault("User-Agent", self.user_agent_header)
self.write_http_request(wsuri.resource_name, request_headers)
@@ -376,25 +373,26 @@ class Connect:
Args:
uri: URI of the WebSocket server.
- create_protocol: factory for the :class:`asyncio.Protocol` managing
- the connection; defaults to :class:`WebSocketClientProtocol`; may
- be set to a wrapper or a subclass to customize connection handling.
- logger: logger for this connection;
- defaults to ``logging.getLogger("websockets.client")``;
- see the :doc:`logging guide <../topics/logging>` for details.
- compression: shortcut that enables the "permessage-deflate" extension
- by default; may be set to :obj:`None` to disable compression;
- see the :doc:`compression guide <../topics/compression>` for details.
- origin: value of the ``Origin`` header. This is useful when connecting
- to a server that validates the ``Origin`` header to defend against
- Cross-Site WebSocket Hijacking attacks.
- extensions: list of supported extensions, in order in which they
- should be tried.
- subprotocols: list of supported subprotocols, in order of decreasing
+ create_protocol: Factory for the :class:`asyncio.Protocol` managing
+ the connection. It defaults to :class:`WebSocketClientProtocol`.
+ Set it to a wrapper or a subclass to customize connection handling.
+ logger: Logger for this client.
+ It defaults to ``logging.getLogger("websockets.client")``.
+ See the :doc:`logging guide <../../topics/logging>` for details.
+ compression: The "permessage-deflate" extension is enabled by default.
+ Set ``compression`` to :obj:`None` to disable it. See the
+ :doc:`compression guide <../../topics/compression>` for details.
+ origin: Value of the ``Origin`` header, for servers that require it.
+ extensions: List of supported extensions, in order in which they
+ should be negotiated and run.
+ subprotocols: List of supported subprotocols, in order of decreasing
preference.
- extra_headers: arbitrary HTTP headers to add to the request.
- open_timeout: timeout for opening the connection in seconds;
- :obj:`None` to disable the timeout
+ extra_headers: Arbitrary HTTP headers to add to the handshake request.
+ user_agent_header: Value of the ``User-Agent`` request header.
+ It defaults to ``"Python/x.y.z websockets/X.Y"``.
+ Setting it to :obj:`None` removes the header.
+ open_timeout: Timeout for opening the connection in seconds.
+ :obj:`None` disables the timeout.
See :class:`~websockets.legacy.protocol.WebSocketCommonProtocol` for the
documentation of ``ping_interval``, ``ping_timeout``, ``close_timeout``,
@@ -415,13 +413,11 @@ class Connect:
the TCP connection. The host name from ``uri`` is still used in the TLS
handshake for secure connections and in the ``Host`` header.
- Returns:
- WebSocketClientProtocol: WebSocket connection.
-
Raises:
- InvalidURI: if ``uri`` isn't a valid WebSocket URI.
- InvalidHandshake: if the opening handshake fails.
- ~asyncio.TimeoutError: if the opening handshake times out.
+ InvalidURI: If ``uri`` isn't a valid WebSocket URI.
+ OSError: If the TCP connection fails.
+ InvalidHandshake: If the opening handshake fails.
+ ~asyncio.TimeoutError: If the opening handshake times out.
"""
@@ -431,13 +427,14 @@ class Connect:
self,
uri: str,
*,
- create_protocol: Optional[Callable[[Any], WebSocketClientProtocol]] = None,
+ create_protocol: Optional[Callable[..., WebSocketClientProtocol]] = None,
logger: Optional[LoggerLike] = None,
compression: Optional[str] = "deflate",
origin: Optional[Origin] = None,
extensions: Optional[Sequence[ClientExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
extra_headers: Optional[HeadersLike] = None,
+ user_agent_header: Optional[str] = USER_AGENT,
open_timeout: Optional[float] = 10,
ping_interval: Optional[float] = 20,
ping_timeout: Optional[float] = 20,
@@ -503,6 +500,7 @@ class Connect:
extensions=extensions,
subprotocols=subprotocols,
extra_headers=extra_headers,
+ user_agent_header=user_agent_header,
ping_interval=ping_interval,
ping_timeout=ping_timeout,
close_timeout=close_timeout,
@@ -530,6 +528,8 @@ class Connect:
else:
# If sock is given, host and port shouldn't be specified.
host, port = None, None
+ if kwargs.get("ssl"):
+ kwargs.setdefault("server_hostname", wsuri.host)
# If host and port are given, override values from the URI.
host = kwargs.pop("host", host)
port = kwargs.pop("port", port)
@@ -597,10 +597,6 @@ class Connect:
try:
async with self as protocol:
yield protocol
- # Remove this branch when dropping support for Python < 3.8
- # because CancelledError no longer inherits Exception.
- except asyncio.CancelledError: # pragma: no cover
- raise
except Exception:
# Add a random initial delay between 0 and 5 seconds.
# See 7.2.3. Recovering from Abnormal Closure in RFC 6544.
@@ -647,13 +643,13 @@ class Connect:
return self.__await_impl_timeout__().__await__()
async def __await_impl_timeout__(self) -> WebSocketClientProtocol:
- return await asyncio.wait_for(self.__await_impl__(), self.open_timeout)
+ async with asyncio_timeout(self.open_timeout):
+ return await self.__await_impl__()
async def __await_impl__(self) -> WebSocketClientProtocol:
for redirects in range(self.MAX_REDIRECTS_ALLOWED):
- transport, protocol = await self._create_connection()
- protocol = cast(WebSocketClientProtocol, protocol)
-
+ _transport, _protocol = await self._create_connection()
+ protocol = cast(WebSocketClientProtocol, _protocol)
try:
await protocol.handshake(
self._wsuri,
@@ -701,7 +697,7 @@ def unix_connect(
It's mainly useful for debugging servers listening on Unix sockets.
Args:
- path: file system path to the Unix socket.
+ path: File system path to the Unix socket.
uri: URI of the WebSocket server; the host is used in the TLS
handshake for secure connections and in the ``Host`` header.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/compatibility.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/compatibility.py
index df81de9dbc..6bd01e70de 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/compatibility.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/compatibility.py
@@ -1,13 +1,12 @@
from __future__ import annotations
-import asyncio
import sys
-from typing import Any, Dict
-def loop_if_py_lt_38(loop: asyncio.AbstractEventLoop) -> Dict[str, Any]:
- """
- Helper for the removal of the loop argument in Python 3.10.
+__all__ = ["asyncio_timeout"]
- """
- return {"loop": loop} if sys.version_info[:2] < (3, 8) else {}
+
+if sys.version_info[:2] >= (3, 11):
+ from asyncio import timeout as asyncio_timeout # noqa: F401
+else:
+ from .async_timeout import timeout as asyncio_timeout # noqa: F401
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/framing.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/framing.py
index c4de7eb28b..b77b869e3f 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/framing.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/framing.py
@@ -1,6 +1,5 @@
from __future__ import annotations
-import dataclasses
import struct
from typing import Any, Awaitable, Callable, NamedTuple, Optional, Sequence, Tuple
@@ -10,12 +9,11 @@ from ..exceptions import PayloadTooBig, ProtocolError
try:
from ..speedups import apply_mask
-except ImportError: # pragma: no cover
+except ImportError:
from ..utils import apply_mask
class Frame(NamedTuple):
-
fin: bool
opcode: frames.Opcode
data: bytes
@@ -53,16 +51,16 @@ class Frame(NamedTuple):
Read a WebSocket frame.
Args:
- reader: coroutine that reads exactly the requested number of
+ reader: Coroutine that reads exactly the requested number of
bytes, unless the end of file is reached.
- mask: whether the frame should be masked i.e. whether the read
+ mask: Whether the frame should be masked i.e. whether the read
happens on the server side.
- max_size: maximum payload size in bytes.
- extensions: list of extensions, applied in reverse order.
+ max_size: Maximum payload size in bytes.
+ extensions: List of extensions, applied in reverse order.
Raises:
- PayloadTooBig: if the frame exceeds ``max_size``.
- ProtocolError: if the frame contains incorrect values.
+ PayloadTooBig: If the frame exceeds ``max_size``.
+ ProtocolError: If the frame contains incorrect values.
"""
@@ -130,14 +128,14 @@ class Frame(NamedTuple):
Write a WebSocket frame.
Args:
- frame: frame to write.
- write: function that writes bytes.
- mask: whether the frame should be masked i.e. whether the write
+ frame: Frame to write.
+ write: Function that writes bytes.
+ mask: Whether the frame should be masked i.e. whether the write
happens on the client side.
- extensions: list of extensions, applied in order.
+ extensions: List of extensions, applied in order.
Raises:
- ProtocolError: if the frame contains incorrect values.
+ ProtocolError: If the frame contains incorrect values.
"""
# The frame is written in a single call to write in order to prevent
@@ -147,8 +145,11 @@ class Frame(NamedTuple):
# Backwards compatibility with previously documented public APIs
-
-from ..frames import Close, prepare_ctrl as encode_data, prepare_data # noqa
+from ..frames import ( # noqa: E402, F401, I001
+ Close,
+ prepare_ctrl as encode_data,
+ prepare_data,
+)
def parse_close(data: bytes) -> Tuple[int, str]:
@@ -156,14 +157,15 @@ def parse_close(data: bytes) -> Tuple[int, str]:
Parse the payload from a close frame.
Returns:
- Tuple[int, str]: close code and reason.
+ Close code and reason.
Raises:
- ProtocolError: if data is ill-formed.
- UnicodeDecodeError: if the reason isn't valid UTF-8.
+ ProtocolError: If data is ill-formed.
+ UnicodeDecodeError: If the reason isn't valid UTF-8.
"""
- return dataclasses.astuple(Close.parse(data)) # type: ignore
+ close = Close.parse(data)
+ return close.code, close.reason
def serialize_close(code: int, reason: str) -> bytes:
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/handshake.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/handshake.py
index 569937bb9a..ad8faf0404 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/handshake.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/handshake.py
@@ -21,7 +21,7 @@ def build_request(headers: Headers) -> str:
Update request headers passed in argument.
Args:
- headers: handshake request headers.
+ headers: Handshake request headers.
Returns:
str: ``key`` that must be passed to :func:`check_response`.
@@ -45,14 +45,14 @@ def check_request(headers: Headers) -> str:
the responsibility of the caller.
Args:
- headers: handshake request headers.
+ headers: Handshake request headers.
Returns:
str: ``key`` that must be passed to :func:`build_response`.
Raises:
- InvalidHandshake: if the handshake request is invalid;
- then the server must return 400 Bad Request error.
+ InvalidHandshake: If the handshake request is invalid.
+ Then, the server must return a 400 Bad Request error.
"""
connection: List[ConnectionOption] = sum(
@@ -110,8 +110,8 @@ def build_response(headers: Headers, key: str) -> None:
Update response headers passed in argument.
Args:
- headers: handshake response headers.
- key: returned by :func:`check_request`.
+ headers: Handshake response headers.
+ key: Returned by :func:`check_request`.
"""
headers["Upgrade"] = "websocket"
@@ -128,11 +128,11 @@ def check_response(headers: Headers, key: str) -> None:
the caller.
Args:
- headers: handshake response headers.
- key: returned by :func:`build_request`.
+ headers: Handshake response headers.
+ key: Returned by :func:`build_request`.
Raises:
- InvalidHandshake: if the handshake response is invalid.
+ InvalidHandshake: If the handshake response is invalid.
"""
connection: List[ConnectionOption] = sum(
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/http.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/http.py
index cc2ef1f067..2ac7f7092d 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/http.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/http.py
@@ -10,8 +10,8 @@ from ..exceptions import SecurityError
__all__ = ["read_request", "read_response"]
-MAX_HEADERS = 256
-MAX_LINE = 4110
+MAX_HEADERS = 128
+MAX_LINE = 8192
def d(value: bytes) -> str:
@@ -56,12 +56,12 @@ async def read_request(stream: asyncio.StreamReader) -> Tuple[str, Headers]:
body, it may be read from ``stream`` after this coroutine returns.
Args:
- stream: input to read the request from
+ stream: Input to read the request from.
Raises:
- EOFError: if the connection is closed without a full HTTP request
- SecurityError: if the request exceeds a security limit
- ValueError: if the request isn't well formatted
+ EOFError: If the connection is closed without a full HTTP request.
+ SecurityError: If the request exceeds a security limit.
+ ValueError: If the request isn't well formatted.
"""
# https://www.rfc-editor.org/rfc/rfc7230.html#section-3.1.1
@@ -103,12 +103,12 @@ async def read_response(stream: asyncio.StreamReader) -> Tuple[int, str, Headers
body, it may be read from ``stream`` after this coroutine returns.
Args:
- stream: input to read the response from
+ stream: Input to read the response from.
Raises:
- EOFError: if the connection is closed without a full HTTP response
- SecurityError: if the response exceeds a security limit
- ValueError: if the response isn't well formatted
+ EOFError: If the connection is closed without a full HTTP response.
+ SecurityError: If the response exceeds a security limit.
+ ValueError: If the response isn't well formatted.
"""
# https://www.rfc-editor.org/rfc/rfc7230.html#section-3.1.2
@@ -192,7 +192,7 @@ async def read_line(stream: asyncio.StreamReader) -> bytes:
"""
# Security: this is bounded by the StreamReader's limit (default = 32 KiB).
line = await stream.readline()
- # Security: this guarantees header values are small (hard-coded = 4 KiB)
+ # Security: this guarantees header values are small (hard-coded = 8 KiB)
if len(line) > MAX_LINE:
raise SecurityError("line too long")
# Not mandatory but safe - https://www.rfc-editor.org/rfc/rfc7230.html#section-3.5
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/protocol.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/protocol.py
index 3f734fe760..19cee0e652 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/protocol.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/protocol.py
@@ -7,6 +7,8 @@ import logging
import random
import ssl
import struct
+import sys
+import time
import uuid
import warnings
from typing import (
@@ -14,17 +16,18 @@ from typing import (
AsyncIterable,
AsyncIterator,
Awaitable,
+ Callable,
Deque,
Dict,
Iterable,
List,
Mapping,
Optional,
+ Tuple,
Union,
cast,
)
-from ..connection import State
from ..datastructures import Headers
from ..exceptions import (
ConnectionClosed,
@@ -44,12 +47,14 @@ from ..frames import (
OP_PONG,
OP_TEXT,
Close,
+ CloseCode,
Opcode,
prepare_ctrl,
prepare_data,
)
+from ..protocol import State
from ..typing import Data, LoggerLike, Subprotocol
-from .compatibility import loop_if_py_lt_38
+from .compatibility import asyncio_timeout
from .framing import Frame
@@ -76,38 +81,38 @@ class WebSocketCommonProtocol(asyncio.Protocol):
simplicity.
Once the connection is open, a Ping_ frame is sent every ``ping_interval``
- seconds. This serves as a keepalive. It helps keeping the connection
- open, especially in the presence of proxies with short timeouts on
- inactive connections. Set ``ping_interval`` to :obj:`None` to disable
- this behavior.
+ seconds. This serves as a keepalive. It helps keeping the connection open,
+ especially in the presence of proxies with short timeouts on inactive
+ connections. Set ``ping_interval`` to :obj:`None` to disable this behavior.
.. _Ping: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.2
If the corresponding Pong_ frame isn't received within ``ping_timeout``
- seconds, the connection is considered unusable and is closed with code
- 1011. This ensures that the remote endpoint remains responsive. Set
+ seconds, the connection is considered unusable and is closed with code 1011.
+ This ensures that the remote endpoint remains responsive. Set
``ping_timeout`` to :obj:`None` to disable this behavior.
.. _Pong: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.3
+ See the discussion of :doc:`timeouts <../../topics/timeouts>` for details.
+
The ``close_timeout`` parameter defines a maximum wait time for completing
the closing handshake and terminating the TCP connection. For legacy
reasons, :meth:`close` completes in at most ``5 * close_timeout`` seconds
for clients and ``4 * close_timeout`` for servers.
- See the discussion of :doc:`timeouts <../topics/timeouts>` for details.
-
- ``close_timeout`` needs to be a parameter of the protocol because
- websockets usually calls :meth:`close` implicitly upon exit:
+ ``close_timeout`` is a parameter of the protocol because websockets usually
+ calls :meth:`close` implicitly upon exit:
- * on the client side, when :func:`~websockets.client.connect` is used as a
+ * on the client side, when using :func:`~websockets.client.connect` as a
context manager;
- * on the server side, when the connection handler terminates;
+ * on the server side, when the connection handler terminates.
- To apply a timeout to any other API, wrap it in :func:`~asyncio.wait_for`.
+ To apply a timeout to any other API, wrap it in :func:`~asyncio.timeout` or
+ :func:`~asyncio.wait_for`.
The ``max_size`` parameter enforces the maximum size for incoming messages
- in bytes. The default value is 1 MiB. If a larger message is received,
+ in bytes. The default value is 1 MiB. If a larger message is received,
:meth:`recv` will raise :exc:`~websockets.exceptions.ConnectionClosedError`
and the connection will be closed with code 1009.
@@ -124,38 +129,38 @@ class WebSocketCommonProtocol(asyncio.Protocol):
Since Python can use up to 4 bytes of memory to represent a single
character, each connection may use up to ``4 * max_size * max_queue``
- bytes of memory to store incoming messages. By default, this is 128 MiB.
+ bytes of memory to store incoming messages. By default, this is 128 MiB.
You may want to lower the limits, depending on your application's
requirements.
The ``read_limit`` argument sets the high-water limit of the buffer for
incoming bytes. The low-water limit is half the high-water limit. The
- default value is 64 KiB, half of asyncio's default (based on the current
+ default value is 64 KiB, half of asyncio's default (based on the current
implementation of :class:`~asyncio.StreamReader`).
The ``write_limit`` argument sets the high-water limit of the buffer for
outgoing bytes. The low-water limit is a quarter of the high-water limit.
- The default value is 64 KiB, equal to asyncio's default (based on the
+ The default value is 64 KiB, equal to asyncio's default (based on the
current implementation of ``FlowControlMixin``).
- See the discussion of :doc:`memory usage <../topics/memory>` for details.
+ See the discussion of :doc:`memory usage <../../topics/memory>` for details.
Args:
- logger: logger for this connection;
- defaults to ``logging.getLogger("websockets.protocol")``;
- see the :doc:`logging guide <../topics/logging>` for details.
- ping_interval: delay between keepalive pings in seconds;
- :obj:`None` to disable keepalive pings.
- ping_timeout: timeout for keepalive pings in seconds;
- :obj:`None` to disable timeouts.
- close_timeout: timeout for closing the connection in seconds;
- for legacy reasons, the actual timeout is 4 or 5 times larger.
- max_size: maximum size of incoming messages in bytes;
- :obj:`None` to disable the limit.
- max_queue: maximum number of incoming messages in receive buffer;
- :obj:`None` to disable the limit.
- read_limit: high-water mark of read buffer in bytes.
- write_limit: high-water mark of write buffer in bytes.
+ logger: Logger for this server.
+ It defaults to ``logging.getLogger("websockets.protocol")``.
+ See the :doc:`logging guide <../../topics/logging>` for details.
+ ping_interval: Delay between keepalive pings in seconds.
+ :obj:`None` disables keepalive pings.
+ ping_timeout: Timeout for keepalive pings in seconds.
+ :obj:`None` disables timeouts.
+ close_timeout: Timeout for closing the connection in seconds.
+ For legacy reasons, the actual timeout is 4 or 5 times larger.
+ max_size: Maximum size of incoming messages in bytes.
+ :obj:`None` disables the limit.
+ max_queue: Maximum number of incoming messages in receive buffer.
+ :obj:`None` disables the limit.
+ read_limit: High-water mark of read buffer in bytes.
+ write_limit: High-water mark of write buffer in bytes.
"""
@@ -217,8 +222,6 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# Logger or LoggerAdapter for this connection.
if logger is None:
logger = logging.getLogger("websockets.protocol")
- # https://github.com/python/typeshed/issues/5561
- logger = cast(logging.Logger, logger)
self.logger: LoggerLike = logging.LoggerAdapter(logger, {"websocket": self})
"""Logger for this connection."""
@@ -242,7 +245,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
self._paused = False
self._drain_waiter: Optional[asyncio.Future[None]] = None
- self._drain_lock = asyncio.Lock(**loop_if_py_lt_38(loop))
+ self._drain_lock = asyncio.Lock()
# This class implements the data transfer and closing handshake, which
# are shared between the client-side and the server-side.
@@ -285,7 +288,19 @@ class WebSocketCommonProtocol(asyncio.Protocol):
self._fragmented_message_waiter: Optional[asyncio.Future[None]] = None
# Mapping of ping IDs to pong waiters, in chronological order.
- self.pings: Dict[bytes, asyncio.Future[None]] = {}
+ self.pings: Dict[bytes, Tuple[asyncio.Future[float], float]] = {}
+
+ self.latency: float = 0
+ """
+ Latency of the connection, in seconds.
+
+ This value is updated after sending a ping frame and receiving a
+ matching pong frame. Before the first ping, :attr:`latency` is ``0``.
+
+ By default, websockets enables a :ref:`keepalive <keepalive>` mechanism
+ that sends ping frames automatically at regular intervals. You can also
+ send ping frames and measure latency with :meth:`ping`.
+ """
# Task running the data transfer.
self.transfer_data_task: asyncio.Task[None]
@@ -325,7 +340,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# write(...); yield from drain()
# in a loop would never call connection_lost(), so it
# would not see an error when the socket is closed.
- await asyncio.sleep(0, **loop_if_py_lt_38(self.loop))
+ await asyncio.sleep(0)
await self._drain_helper()
def connection_open(self) -> None:
@@ -445,7 +460,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
if self.state is not State.CLOSED:
return None
elif self.close_rcvd is None:
- return 1006
+ return CloseCode.ABNORMAL_CLOSURE
else:
return self.close_rcvd.code
@@ -471,10 +486,11 @@ class WebSocketCommonProtocol(asyncio.Protocol):
"""
Iterate on incoming messages.
- The iterator exits normally when the connection is closed with the
- close code 1000 (OK) or 1001(going away). It raises
- a :exc:`~websockets.exceptions.ConnectionClosedError` exception when
- the connection is closed with any other code.
+ The iterator exits normally when the connection is closed with the close
+ code 1000 (OK) or 1001 (going away) or without a close code.
+
+ It raises a :exc:`~websockets.exceptions.ConnectionClosedError`
+ exception when the connection is closed with any other code.
"""
try:
@@ -488,8 +504,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
Receive the next message.
When the connection is closed, :meth:`recv` raises
- :exc:`~websockets.exceptions.ConnectionClosed`. Specifically, it
- raises :exc:`~websockets.exceptions.ConnectionClosedOK` after a normal
+ :exc:`~websockets.exceptions.ConnectionClosed`. Specifically, it raises
+ :exc:`~websockets.exceptions.ConnectionClosedOK` after a normal
connection closure and
:exc:`~websockets.exceptions.ConnectionClosedError` after a protocol
error or a network failure. This is how you detect the end of the
@@ -498,8 +514,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
Canceling :meth:`recv` is safe. There's no risk of losing the next
message. The next invocation of :meth:`recv` will return it.
- This makes it possible to enforce a timeout by wrapping :meth:`recv`
- in :func:`~asyncio.wait_for`.
+ This makes it possible to enforce a timeout by wrapping :meth:`recv` in
+ :func:`~asyncio.timeout` or :func:`~asyncio.wait_for`.
Returns:
Data: A string (:class:`str`) for a Text_ frame. A bytestring
@@ -509,8 +525,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
.. _Binary: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
Raises:
- ConnectionClosed: when the connection is closed.
- RuntimeError: if two coroutines call :meth:`recv` concurrently.
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If two coroutines call :meth:`recv` concurrently.
"""
if self._pop_message_waiter is not None:
@@ -536,7 +552,6 @@ class WebSocketCommonProtocol(asyncio.Protocol):
await asyncio.wait(
[pop_message_waiter, self.transfer_data_task],
return_when=asyncio.FIRST_COMPLETED,
- **loop_if_py_lt_38(self.loop),
)
finally:
self._pop_message_waiter = None
@@ -613,8 +628,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
to send.
Raises:
- ConnectionClosed: when the connection is closed.
- TypeError: if ``message`` doesn't have a supported type.
+ ConnectionClosed: When the connection is closed.
+ TypeError: If ``message`` doesn't have a supported type.
"""
await self.ensure_open()
@@ -639,16 +654,15 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# Fragmented message -- regular iterator.
elif isinstance(message, Iterable):
-
# Work around https://github.com/python/mypy/issues/6227
message = cast(Iterable[Data], message)
iter_message = iter(message)
try:
- message_chunk = next(iter_message)
+ fragment = next(iter_message)
except StopIteration:
return
- opcode, data = prepare_data(message_chunk)
+ opcode, data = prepare_data(fragment)
self._fragmented_message_waiter = asyncio.Future()
try:
@@ -656,8 +670,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
await self.write_frame(False, opcode, data)
# Other fragments.
- for message_chunk in iter_message:
- confirm_opcode, data = prepare_data(message_chunk)
+ for fragment in iter_message:
+ confirm_opcode, data = prepare_data(fragment)
if confirm_opcode != opcode:
raise TypeError("data contains inconsistent types")
await self.write_frame(False, OP_CONT, data)
@@ -668,7 +682,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
except (Exception, asyncio.CancelledError):
# We're half-way through a fragmented message and we can't
# complete it. This makes the connection unusable.
- self.fail_connection(1011)
+ self.fail_connection(CloseCode.INTERNAL_ERROR)
raise
finally:
@@ -678,18 +692,22 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# Fragmented message -- asynchronous iterator
elif isinstance(message, AsyncIterable):
- # aiter_message = aiter(message) without aiter
- # https://github.com/python/mypy/issues/5738
- aiter_message = type(message).__aiter__(message) # type: ignore
+ # Implement aiter_message = aiter(message) without aiter
+ # Work around https://github.com/python/mypy/issues/5738
+ aiter_message = cast(
+ Callable[[AsyncIterable[Data]], AsyncIterator[Data]],
+ type(message).__aiter__,
+ )(message)
try:
- # message_chunk = anext(aiter_message) without anext
- # https://github.com/python/mypy/issues/5738
- message_chunk = await type(aiter_message).__anext__( # type: ignore
- aiter_message
- )
+ # Implement fragment = anext(aiter_message) without anext
+ # Work around https://github.com/python/mypy/issues/5738
+ fragment = await cast(
+ Callable[[AsyncIterator[Data]], Awaitable[Data]],
+ type(aiter_message).__anext__,
+ )(aiter_message)
except StopAsyncIteration:
return
- opcode, data = prepare_data(message_chunk)
+ opcode, data = prepare_data(fragment)
self._fragmented_message_waiter = asyncio.Future()
try:
@@ -697,11 +715,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
await self.write_frame(False, opcode, data)
# Other fragments.
- # https://github.com/python/mypy/issues/5738
- # coverage reports this code as not covered, but it is
- # exercised by tests - changing it breaks the tests!
- async for message_chunk in aiter_message: # type: ignore # pragma: no cover # noqa
- confirm_opcode, data = prepare_data(message_chunk)
+ async for fragment in aiter_message:
+ confirm_opcode, data = prepare_data(fragment)
if confirm_opcode != opcode:
raise TypeError("data contains inconsistent types")
await self.write_frame(False, OP_CONT, data)
@@ -712,7 +727,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
except (Exception, asyncio.CancelledError):
# We're half-way through a fragmented message and we can't
# complete it. This makes the connection unusable.
- self.fail_connection(1011)
+ self.fail_connection(CloseCode.INTERNAL_ERROR)
raise
finally:
@@ -722,7 +737,11 @@ class WebSocketCommonProtocol(asyncio.Protocol):
else:
raise TypeError("data must be str, bytes-like, or iterable")
- async def close(self, code: int = 1000, reason: str = "") -> None:
+ async def close(
+ self,
+ code: int = CloseCode.NORMAL_CLOSURE,
+ reason: str = "",
+ ) -> None:
"""
Perform the closing handshake.
@@ -747,19 +766,16 @@ class WebSocketCommonProtocol(asyncio.Protocol):
"""
try:
- await asyncio.wait_for(
- self.write_close_frame(Close(code, reason)),
- self.close_timeout,
- **loop_if_py_lt_38(self.loop),
- )
+ async with asyncio_timeout(self.close_timeout):
+ await self.write_close_frame(Close(code, reason))
except asyncio.TimeoutError:
# If the close frame cannot be sent because the send buffers
# are full, the closing handshake won't complete anyway.
# Fail the connection to shut down faster.
self.fail_connection()
- # If no close frame is received within the timeout, wait_for() cancels
- # the data transfer task and raises TimeoutError.
+ # If no close frame is received within the timeout, asyncio_timeout()
+ # cancels the data transfer task and raises TimeoutError.
# If close() is called multiple times concurrently and one of these
# calls hits the timeout, the data transfer task will be canceled.
@@ -768,11 +784,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
try:
# If close() is canceled during the wait, self.transfer_data_task
# is canceled before the timeout elapses.
- await asyncio.wait_for(
- self.transfer_data_task,
- self.close_timeout,
- **loop_if_py_lt_38(self.loop),
- )
+ async with asyncio_timeout(self.close_timeout):
+ await self.transfer_data_task
except (asyncio.TimeoutError, asyncio.CancelledError):
pass
@@ -798,8 +811,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
.. _Ping: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.2
- A ping may serve as a keepalive or as a check that the remote endpoint
- received all messages up to this point
+ A ping may serve as a keepalive, as a check that the remote endpoint
+ received all messages up to this point, or to measure :attr:`latency`.
Canceling :meth:`ping` is discouraged. If :meth:`ping` doesn't return
immediately, it means the write buffer is full. If you don't want to
@@ -814,18 +827,20 @@ class WebSocketCommonProtocol(asyncio.Protocol):
containing four random bytes.
Returns:
- ~asyncio.Future: A future that will be completed when the
- corresponding pong is received. You can ignore it if you
- don't intend to wait.
+ ~asyncio.Future[float]: A future that will be completed when the
+ corresponding pong is received. You can ignore it if you don't
+ intend to wait. The result of the future is the latency of the
+ connection in seconds.
::
pong_waiter = await ws.ping()
- await pong_waiter # only if you want to wait for the pong
+ # only if you want to wait for the corresponding pong
+ latency = await pong_waiter
Raises:
- ConnectionClosed: when the connection is closed.
- RuntimeError: if another ping was sent with the same data and
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If another ping was sent with the same data and
the corresponding pong wasn't received yet.
"""
@@ -842,11 +857,14 @@ class WebSocketCommonProtocol(asyncio.Protocol):
while data is None or data in self.pings:
data = struct.pack("!I", random.getrandbits(32))
- self.pings[data] = self.loop.create_future()
+ pong_waiter = self.loop.create_future()
+ # Resolution of time.monotonic() may be too low on Windows.
+ ping_timestamp = time.perf_counter()
+ self.pings[data] = (pong_waiter, ping_timestamp)
await self.write_frame(True, OP_PING, data)
- return asyncio.shield(self.pings[data])
+ return asyncio.shield(pong_waiter)
async def pong(self, data: Data = b"") -> None:
"""
@@ -861,11 +879,11 @@ class WebSocketCommonProtocol(asyncio.Protocol):
wait, you should close the connection.
Args:
- data (Data): payload of the pong; a string will be encoded to
+ data (Data): Payload of the pong. A string will be encoded to
UTF-8.
Raises:
- ConnectionClosed: when the connection is closed.
+ ConnectionClosed: When the connection is closed.
"""
await self.ensure_open()
@@ -973,7 +991,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
except ProtocolError as exc:
self.transfer_data_exc = exc
- self.fail_connection(1002)
+ self.fail_connection(CloseCode.PROTOCOL_ERROR)
except (ConnectionError, TimeoutError, EOFError, ssl.SSLError) as exc:
# Reading data with self.reader.readexactly may raise:
@@ -984,15 +1002,15 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# bytes are available than requested;
# - ssl.SSLError if the other side infringes the TLS protocol.
self.transfer_data_exc = exc
- self.fail_connection(1006)
+ self.fail_connection(CloseCode.ABNORMAL_CLOSURE)
except UnicodeDecodeError as exc:
self.transfer_data_exc = exc
- self.fail_connection(1007)
+ self.fail_connection(CloseCode.INVALID_DATA)
except PayloadTooBig as exc:
self.transfer_data_exc = exc
- self.fail_connection(1009)
+ self.fail_connection(CloseCode.MESSAGE_TOO_BIG)
except Exception as exc:
# This shouldn't happen often because exceptions expected under
@@ -1001,7 +1019,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
self.logger.error("data transfer failed", exc_info=True)
self.transfer_data_exc = exc
- self.fail_connection(1011)
+ self.fail_connection(CloseCode.INTERNAL_ERROR)
async def read_message(self) -> Optional[Data]:
"""
@@ -1030,7 +1048,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
return frame.data.decode("utf-8") if text else frame.data
# 5.4. Fragmentation
- chunks: List[Data] = []
+ fragments: List[Data] = []
max_size = self.max_size
if text:
decoder_factory = codecs.getincrementaldecoder("utf-8")
@@ -1038,14 +1056,14 @@ class WebSocketCommonProtocol(asyncio.Protocol):
if max_size is None:
def append(frame: Frame) -> None:
- nonlocal chunks
- chunks.append(decoder.decode(frame.data, frame.fin))
+ nonlocal fragments
+ fragments.append(decoder.decode(frame.data, frame.fin))
else:
def append(frame: Frame) -> None:
- nonlocal chunks, max_size
- chunks.append(decoder.decode(frame.data, frame.fin))
+ nonlocal fragments, max_size
+ fragments.append(decoder.decode(frame.data, frame.fin))
assert isinstance(max_size, int)
max_size -= len(frame.data)
@@ -1053,14 +1071,14 @@ class WebSocketCommonProtocol(asyncio.Protocol):
if max_size is None:
def append(frame: Frame) -> None:
- nonlocal chunks
- chunks.append(frame.data)
+ nonlocal fragments
+ fragments.append(frame.data)
else:
def append(frame: Frame) -> None:
- nonlocal chunks, max_size
- chunks.append(frame.data)
+ nonlocal fragments, max_size
+ fragments.append(frame.data)
assert isinstance(max_size, int)
max_size -= len(frame.data)
@@ -1074,7 +1092,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
raise ProtocolError("unexpected opcode")
append(frame)
- return ("" if text else b"").join(chunks)
+ return ("" if text else b"").join(fragments)
async def read_data_frame(self, max_size: Optional[int]) -> Optional[Frame]:
"""
@@ -1099,7 +1117,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
try:
# Echo the original data instead of re-serializing it with
# Close.serialize() because that fails when the close frame
- # is empty and Close.parse() synthetizes a 1005 close code.
+ # is empty and Close.parse() synthesizes a 1005 close code.
await self.write_close_frame(self.close_rcvd, frame.data)
except ConnectionClosed:
# Connection closed before we could echo the close frame.
@@ -1117,18 +1135,20 @@ class WebSocketCommonProtocol(asyncio.Protocol):
elif frame.opcode == OP_PONG:
if frame.data in self.pings:
+ pong_timestamp = time.perf_counter()
# Sending a pong for only the most recent ping is legal.
# Acknowledge all previous pings too in that case.
ping_id = None
ping_ids = []
- for ping_id, ping in self.pings.items():
+ for ping_id, (pong_waiter, ping_timestamp) in self.pings.items():
ping_ids.append(ping_id)
- if not ping.done():
- ping.set_result(None)
+ if not pong_waiter.done():
+ pong_waiter.set_result(pong_timestamp - ping_timestamp)
if ping_id == frame.data:
+ self.latency = pong_timestamp - ping_timestamp
break
- else: # pragma: no cover
- assert False, "ping_id is in self.pings"
+ else:
+ raise AssertionError("solicited pong not found in pings")
# Remove acknowledged pings from self.pings.
for ping_id in ping_ids:
del self.pings[ping_id]
@@ -1231,10 +1251,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
try:
while True:
- await asyncio.sleep(
- self.ping_interval,
- **loop_if_py_lt_38(self.loop),
- )
+ await asyncio.sleep(self.ping_interval)
# ping() raises CancelledError if the connection is closed,
# when close_connection() cancels self.keepalive_ping_task.
@@ -1247,23 +1264,18 @@ class WebSocketCommonProtocol(asyncio.Protocol):
if self.ping_timeout is not None:
try:
- await asyncio.wait_for(
- pong_waiter,
- self.ping_timeout,
- **loop_if_py_lt_38(self.loop),
- )
+ async with asyncio_timeout(self.ping_timeout):
+ await pong_waiter
self.logger.debug("% received keepalive pong")
except asyncio.TimeoutError:
if self.debug:
self.logger.debug("! timed out waiting for keepalive pong")
- self.fail_connection(1011, "keepalive ping timeout")
+ self.fail_connection(
+ CloseCode.INTERNAL_ERROR,
+ "keepalive ping timeout",
+ )
break
- # Remove this branch when dropping support for Python < 3.8
- # because CancelledError no longer inherits Exception.
- except asyncio.CancelledError:
- raise
-
except ConnectionClosed:
pass
@@ -1297,9 +1309,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# A client should wait for a TCP close from the server.
if self.is_client and hasattr(self, "transfer_data_task"):
if await self.wait_for_connection_lost():
- # Coverage marks this line as a partially executed branch.
- # I supect a bug in coverage. Ignore it for now.
- return # pragma: no cover
+ return
if self.debug:
self.logger.debug("! timed out waiting for TCP close")
@@ -1317,9 +1327,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
pass
if await self.wait_for_connection_lost():
- # Coverage marks this line as a partially executed branch.
- # I supect a bug in coverage. Ignore it for now.
- return # pragma: no cover
+ return
if self.debug:
self.logger.debug("! timed out waiting for TCP close")
@@ -1352,12 +1360,11 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# Abort the TCP connection. Buffers are discarded.
if self.debug:
self.logger.debug("x aborting TCP connection")
- self.transport.abort()
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.transport.abort() # pragma: no cover
# connection_lost() is called quickly after aborting.
- # Coverage marks this line as a partially executed branch.
- # I supect a bug in coverage. Ignore it for now.
- await self.wait_for_connection_lost() # pragma: no cover
+ await self.wait_for_connection_lost()
async def wait_for_connection_lost(self) -> bool:
"""
@@ -1369,11 +1376,8 @@ class WebSocketCommonProtocol(asyncio.Protocol):
"""
if not self.connection_lost_waiter.done():
try:
- await asyncio.wait_for(
- asyncio.shield(self.connection_lost_waiter),
- self.close_timeout,
- **loop_if_py_lt_38(self.loop),
- )
+ async with asyncio_timeout(self.close_timeout):
+ await asyncio.shield(self.connection_lost_waiter)
except asyncio.TimeoutError:
pass
# Re-check self.connection_lost_waiter.done() synchronously because
@@ -1381,7 +1385,11 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# and the moment this coroutine resumes running.
return self.connection_lost_waiter.done()
- def fail_connection(self, code: int = 1006, reason: str = "") -> None:
+ def fail_connection(
+ self,
+ code: int = CloseCode.ABNORMAL_CLOSURE,
+ reason: str = "",
+ ) -> None:
"""
7.1.7. Fail the WebSocket Connection
@@ -1412,7 +1420,7 @@ class WebSocketCommonProtocol(asyncio.Protocol):
# sent if it's CLOSING), except when failing the connection because of
# an error reading from or writing to the network.
# Don't send a close frame if the connection is broken.
- if code != 1006 and self.state is State.OPEN:
+ if code != CloseCode.ABNORMAL_CLOSURE and self.state is State.OPEN:
close = Close(code, reason)
# Write the close frame without draining the write buffer.
@@ -1449,13 +1457,13 @@ class WebSocketCommonProtocol(asyncio.Protocol):
assert self.state is State.CLOSED
exc = self.connection_closed_exc()
- for ping in self.pings.values():
- ping.set_exception(exc)
+ for pong_waiter, _ping_timestamp in self.pings.values():
+ pong_waiter.set_exception(exc)
# If the exception is never retrieved, it will be logged when ping
# is garbage-collected. This is confusing for users.
# Given that ping is done (with an exception), canceling it does
# nothing, but it prevents logging the exception.
- ping.cancel()
+ pong_waiter.cancel()
# asyncio.Protocol methods
@@ -1496,7 +1504,6 @@ class WebSocketCommonProtocol(asyncio.Protocol):
self.connection_lost_waiter.set_result(None)
if True: # pragma: no cover
-
# Copied from asyncio.StreamReaderProtocol
if self.reader is not None:
if exc is None:
@@ -1552,13 +1559,17 @@ class WebSocketCommonProtocol(asyncio.Protocol):
self.reader.feed_eof()
-def broadcast(websockets: Iterable[WebSocketCommonProtocol], message: Data) -> None:
+def broadcast(
+ websockets: Iterable[WebSocketCommonProtocol],
+ message: Data,
+ raise_exceptions: bool = False,
+) -> None:
"""
Broadcast a message to several WebSocket connections.
- A string (:class:`str`) is sent as a Text_ frame. A bytestring or
- bytes-like object (:class:`bytes`, :class:`bytearray`, or
- :class:`memoryview`) is sent as a Binary_ frame.
+ A string (:class:`str`) is sent as a Text_ frame. A bytestring or bytes-like
+ object (:class:`bytes`, :class:`bytearray`, or :class:`memoryview`) is sent
+ as a Binary_ frame.
.. _Text: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
.. _Binary: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
@@ -1566,33 +1577,42 @@ def broadcast(websockets: Iterable[WebSocketCommonProtocol], message: Data) -> N
:func:`broadcast` pushes the message synchronously to all connections even
if their write buffers are overflowing. There's no backpressure.
- :func:`broadcast` skips silently connections that aren't open in order to
- avoid errors on connections where the closing handshake is in progress.
-
- If you broadcast messages faster than a connection can handle them,
- messages will pile up in its write buffer until the connection times out.
- Keep low values for ``ping_interval`` and ``ping_timeout`` to prevent
- excessive memory usage by slow connections when you use :func:`broadcast`.
+ If you broadcast messages faster than a connection can handle them, messages
+ will pile up in its write buffer until the connection times out. Keep
+ ``ping_interval`` and ``ping_timeout`` low to prevent excessive memory usage
+ from slow connections.
Unlike :meth:`~websockets.server.WebSocketServerProtocol.send`,
:func:`broadcast` doesn't support sending fragmented messages. Indeed,
- fragmentation is useful for sending large messages without buffering
- them in memory, while :func:`broadcast` buffers one copy per connection
- as fast as possible.
+ fragmentation is useful for sending large messages without buffering them in
+ memory, while :func:`broadcast` buffers one copy per connection as fast as
+ possible.
+
+ :func:`broadcast` skips connections that aren't open in order to avoid
+ errors on connections where the closing handshake is in progress.
+
+ :func:`broadcast` ignores failures to write the message on some connections.
+ It continues writing to other connections. On Python 3.11 and above, you
+ may set ``raise_exceptions`` to :obj:`True` to record failures and raise all
+ exceptions in a :pep:`654` :exc:`ExceptionGroup`.
Args:
- websockets (Iterable[WebSocketCommonProtocol]): WebSocket connections
- to which the message will be sent.
- message (Data): message to send.
+ websockets: WebSocket connections to which the message will be sent.
+ message: Message to send.
+ raise_exceptions: Whether to raise an exception in case of failures.
Raises:
- RuntimeError: if a connection is busy sending a fragmented message.
- TypeError: if ``message`` doesn't have a supported type.
+ TypeError: If ``message`` doesn't have a supported type.
"""
if not isinstance(message, (str, bytes, bytearray, memoryview)):
raise TypeError("data must be str or bytes-like")
+ if raise_exceptions:
+ if sys.version_info[:2] < (3, 11): # pragma: no cover
+ raise ValueError("raise_exceptions requires at least Python 3.11")
+ exceptions = []
+
opcode, data = prepare_data(message)
for websocket in websockets:
@@ -1600,6 +1620,26 @@ def broadcast(websockets: Iterable[WebSocketCommonProtocol], message: Data) -> N
continue
if websocket._fragmented_message_waiter is not None:
- raise RuntimeError("busy sending a fragmented message")
+ if raise_exceptions:
+ exception = RuntimeError("sending a fragmented message")
+ exceptions.append(exception)
+ else:
+ websocket.logger.warning(
+ "skipped broadcast: sending a fragmented message",
+ )
+
+ try:
+ websocket.write_frame_sync(True, opcode, data)
+ except Exception as write_exception:
+ if raise_exceptions:
+ exception = RuntimeError("failed to write message")
+ exception.__cause__ = write_exception
+ exceptions.append(exception)
+ else:
+ websocket.logger.warning(
+ "skipped broadcast: failed to write message",
+ exc_info=True,
+ )
- websocket.write_frame_sync(True, opcode, data)
+ if raise_exceptions:
+ raise ExceptionGroup("skipped broadcast", exceptions)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/server.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/server.py
index 3e51db1b71..7c24dd74af 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/server.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/legacy/server.py
@@ -25,7 +25,6 @@ from typing import (
cast,
)
-from ..connection import State
from ..datastructures import Headers, HeadersLike, MultipleValuesError
from ..exceptions import (
AbortHandshake,
@@ -45,8 +44,9 @@ from ..headers import (
validate_subprotocols,
)
from ..http import USER_AGENT
-from ..typing import ExtensionHeader, LoggerLike, Origin, Subprotocol
-from .compatibility import loop_if_py_lt_38
+from ..protocol import State
+from ..typing import ExtensionHeader, LoggerLike, Origin, StatusLike, Subprotocol
+from .compatibility import asyncio_timeout
from .handshake import build_response, check_request
from .http import read_request
from .protocol import WebSocketCommonProtocol
@@ -57,7 +57,7 @@ __all__ = ["serve", "unix_serve", "WebSocketServerProtocol", "WebSocketServer"]
HeadersLikeOrCallable = Union[HeadersLike, Callable[[str, Headers], HeadersLike]]
-HTTPResponse = Tuple[http.HTTPStatus, HeadersLike, bytes]
+HTTPResponse = Tuple[StatusLike, HeadersLike, bytes]
class WebSocketServerProtocol(WebSocketCommonProtocol):
@@ -73,7 +73,7 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
await process(message)
The iterator exits normally when the connection is closed with close code
- 1000 (OK) or 1001 (going away). It raises
+ 1000 (OK) or 1001 (going away) or without a close code. It raises
a :exc:`~websockets.exceptions.ConnectionClosedError` when the connection
is closed with any other code.
@@ -84,7 +84,7 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
ws_server: WebSocket server that created this connection.
See :func:`serve` for the documentation of ``ws_handler``, ``logger``, ``origins``,
- ``extensions``, ``subprotocols``, and ``extra_headers``.
+ ``extensions``, ``subprotocols``, ``extra_headers``, and ``server_header``.
See :class:`~websockets.legacy.protocol.WebSocketCommonProtocol` for the
documentation of ``ping_interval``, ``ping_timeout``, ``close_timeout``,
@@ -108,12 +108,14 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
extensions: Optional[Sequence[ServerExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
extra_headers: Optional[HeadersLikeOrCallable] = None,
+ server_header: Optional[str] = USER_AGENT,
process_request: Optional[
Callable[[str, Headers], Awaitable[Optional[HTTPResponse]]]
] = None,
select_subprotocol: Optional[
Callable[[Sequence[Subprotocol], Sequence[Subprotocol]], Subprotocol]
] = None,
+ open_timeout: Optional[float] = 10,
**kwargs: Any,
) -> None:
if logger is None:
@@ -132,8 +134,10 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
self.available_extensions = extensions
self.available_subprotocols = subprotocols
self.extra_headers = extra_headers
+ self.server_header = server_header
self._process_request = process_request
self._select_subprotocol = select_subprotocol
+ self.open_timeout = open_timeout
def connection_made(self, transport: asyncio.BaseTransport) -> None:
"""
@@ -153,22 +157,20 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
Handle the lifecycle of a WebSocket connection.
Since this method doesn't have a caller able to handle exceptions, it
- attemps to log relevant ones and guarantees that the TCP connection is
+ attempts to log relevant ones and guarantees that the TCP connection is
closed before exiting.
"""
try:
-
try:
- await self.handshake(
- origins=self.origins,
- available_extensions=self.available_extensions,
- available_subprotocols=self.available_subprotocols,
- extra_headers=self.extra_headers,
- )
- # Remove this branch when dropping support for Python < 3.8
- # because CancelledError no longer inherits Exception.
- except asyncio.CancelledError: # pragma: no cover
+ async with asyncio_timeout(self.open_timeout):
+ await self.handshake(
+ origins=self.origins,
+ available_extensions=self.available_extensions,
+ available_subprotocols=self.available_subprotocols,
+ extra_headers=self.extra_headers,
+ )
+ except asyncio.TimeoutError: # pragma: no cover
raise
except ConnectionError:
raise
@@ -216,14 +218,16 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
)
headers.setdefault("Date", email.utils.formatdate(usegmt=True))
- headers.setdefault("Server", USER_AGENT)
+ if self.server_header is not None:
+ headers.setdefault("Server", self.server_header)
+
headers.setdefault("Content-Length", str(len(body)))
headers.setdefault("Content-Type", "text/plain")
headers.setdefault("Connection", "close")
self.write_http_response(status, headers, body)
self.logger.info(
- "connection failed (%d %s)", status.value, status.phrase
+ "connection rejected (%d %s)", status.value, status.phrase
)
await self.close_transport()
return
@@ -325,9 +329,9 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
You may override this method in a :class:`WebSocketServerProtocol`
subclass, for example:
- * to return a HTTP 200 OK response on a given path; then a load
+ * to return an HTTP 200 OK response on a given path; then a load
balancer can use this path for a health check;
- * to authenticate the request and return a HTTP 401 Unauthorized or a
+ * to authenticate the request and return an HTTP 401 Unauthorized or an
HTTP 403 Forbidden when authentication fails.
You may also override this method with the ``process_request``
@@ -345,7 +349,7 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
request_headers: request headers.
Returns:
- Optional[Tuple[http.HTTPStatus, HeadersLike, bytes]]: :obj:`None`
+ Optional[Tuple[StatusLike, HeadersLike, bytes]]: :obj:`None`
to continue the WebSocket handshake normally.
An HTTP response, represented by a 3-uple of the response status,
@@ -439,15 +443,12 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
header_values = headers.get_all("Sec-WebSocket-Extensions")
if header_values and available_extensions:
-
parsed_header_values: List[ExtensionHeader] = sum(
[parse_extension(header_value) for header_value in header_values], []
)
for name, request_params in parsed_header_values:
-
for ext_factory in available_extensions:
-
# Skip non-matching extensions based on their name.
if ext_factory.name != name:
continue
@@ -499,7 +500,6 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
header_values = headers.get_all("Sec-WebSocket-Protocol")
if header_values and available_subprotocols:
-
parsed_header_values: List[Subprotocol] = sum(
[parse_subprotocol(header_value) for header_value in header_values], []
)
@@ -516,31 +516,29 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
server_subprotocols: Sequence[Subprotocol],
) -> Optional[Subprotocol]:
"""
- Pick a subprotocol among those offered by the client.
+ Pick a subprotocol among those supported by the client and the server.
- If several subprotocols are supported by the client and the server,
- the default implementation selects the preferred subprotocol by
- giving equal value to the priorities of the client and the server.
- If no subprotocol is supported by the client and the server, it
- proceeds without a subprotocol.
+ If several subprotocols are available, select the preferred subprotocol
+ by giving equal weight to the preferences of the client and the server.
- This is unlikely to be the most useful implementation in practice.
- Many servers providing a subprotocol will require that the client
- uses that subprotocol. Such rules can be implemented in a subclass.
+ If no subprotocol is available, proceed without a subprotocol.
- You may also override this method with the ``select_subprotocol``
- argument of :func:`serve` and :class:`WebSocketServerProtocol`.
+ You may provide a ``select_subprotocol`` argument to :func:`serve` or
+ :class:`WebSocketServerProtocol` to override this logic. For example,
+ you could reject the handshake if the client doesn't support a
+ particular subprotocol, rather than accept the handshake without that
+ subprotocol.
Args:
client_subprotocols: list of subprotocols offered by the client.
server_subprotocols: list of subprotocols available on the server.
Returns:
- Optional[Subprotocol]: Selected subprotocol.
+ Optional[Subprotocol]: Selected subprotocol, if a common subprotocol
+ was found.
:obj:`None` to continue without a subprotocol.
-
"""
if self._select_subprotocol is not None:
return self._select_subprotocol(client_subprotocols, server_subprotocols)
@@ -548,10 +546,10 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
subprotocols = set(client_subprotocols) & set(server_subprotocols)
if not subprotocols:
return None
- priority = lambda p: (
- client_subprotocols.index(p) + server_subprotocols.index(p)
- )
- return sorted(subprotocols, key=priority)[0]
+ return sorted(
+ subprotocols,
+ key=lambda p: client_subprotocols.index(p) + server_subprotocols.index(p),
+ )[0]
async def handshake(
self,
@@ -594,7 +592,8 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
# The connection may drop while process_request is running.
if self.state is State.CLOSED:
- raise self.connection_closed_exc() # pragma: no cover
+ # This subclass of ConnectionError is silently ignored in handler().
+ raise BrokenPipeError("connection closed during opening handshake")
# Change the response to a 503 error if the server is shutting down.
if not self.ws_server.is_serving():
@@ -635,7 +634,8 @@ class WebSocketServerProtocol(WebSocketCommonProtocol):
response_headers.update(extra_headers)
response_headers.setdefault("Date", email.utils.formatdate(usegmt=True))
- response_headers.setdefault("Server", USER_AGENT)
+ if self.server_header is not None:
+ response_headers.setdefault("Server", self.server_header)
self.write_http_response(http.HTTPStatus.SWITCHING_PROTOCOLS, response_headers)
@@ -658,9 +658,9 @@ class WebSocketServer:
when shutting down.
Args:
- logger: logger for this server;
- defaults to ``logging.getLogger("websockets.server")``;
- see the :doc:`logging guide <../topics/logging>` for details.
+ logger: Logger for this server.
+ It defaults to ``logging.getLogger("websockets.server")``.
+ See the :doc:`logging guide <../../topics/logging>` for details.
"""
@@ -707,7 +707,7 @@ class WebSocketServer:
self.logger.info("server listening on %s", name)
# Initialized here because we need a reference to the event loop.
- # This should be moved back to __init__ in Python 3.10.
+ # This should be moved back to __init__ when dropping Python < 3.10.
self.closed_waiter = server.get_loop().create_future()
def register(self, protocol: WebSocketServerProtocol) -> None:
@@ -724,26 +724,30 @@ class WebSocketServer:
"""
self.websockets.remove(protocol)
- def close(self) -> None:
+ def close(self, close_connections: bool = True) -> None:
"""
Close the server.
- This method:
+ * Close the underlying :class:`~asyncio.Server`.
+ * When ``close_connections`` is :obj:`True`, which is the default,
+ close existing connections. Specifically:
- * closes the underlying :class:`~asyncio.Server`;
- * rejects new WebSocket connections with an HTTP 503 (service
- unavailable) error; this happens when the server accepted the TCP
- connection but didn't complete the WebSocket opening handshake prior
- to closing;
- * closes open WebSocket connections with close code 1001 (going away).
+ * Reject opening WebSocket connections with an HTTP 503 (service
+ unavailable) error. This happens when the server accepted the TCP
+ connection but didn't complete the opening handshake before closing.
+ * Close open WebSocket connections with close code 1001 (going away).
+
+ * Wait until all connection handlers terminate.
:meth:`close` is idempotent.
"""
if self.close_task is None:
- self.close_task = self.get_loop().create_task(self._close())
+ self.close_task = self.get_loop().create_task(
+ self._close(close_connections)
+ )
- async def _close(self) -> None:
+ async def _close(self, close_connections: bool) -> None:
"""
Implementation of :meth:`close`.
@@ -757,36 +761,30 @@ class WebSocketServer:
# Stop accepting new connections.
self.server.close()
- # Wait until self.server.close() completes.
- await self.server.wait_closed()
-
# Wait until all accepted connections reach connection_made() and call
# register(). See https://bugs.python.org/issue34852 for details.
- await asyncio.sleep(0, **loop_if_py_lt_38(self.get_loop()))
-
- # Close OPEN connections with status code 1001. Since the server was
- # closed, handshake() closes OPENING connections with a HTTP 503
- # error. Wait until all connections are closed.
-
- close_tasks = [
- asyncio.create_task(websocket.close(1001))
- for websocket in self.websockets
- if websocket.state is not State.CONNECTING
- ]
- # asyncio.wait doesn't accept an empty first argument.
- if close_tasks:
- await asyncio.wait(
- close_tasks,
- **loop_if_py_lt_38(self.get_loop()),
- )
-
- # Wait until all connection handlers are complete.
+ await asyncio.sleep(0)
+
+ if close_connections:
+ # Close OPEN connections with close code 1001. After server.close(),
+ # handshake() closes OPENING connections with an HTTP 503 error.
+ close_tasks = [
+ asyncio.create_task(websocket.close(1001))
+ for websocket in self.websockets
+ if websocket.state is not State.CONNECTING
+ ]
+ # asyncio.wait doesn't accept an empty first argument.
+ if close_tasks:
+ await asyncio.wait(close_tasks)
+
+ # Wait until all TCP connections are closed.
+ await self.server.wait_closed()
+ # Wait until all connection handlers terminate.
# asyncio.wait doesn't accept an empty first argument.
if self.websockets:
await asyncio.wait(
- [websocket.handler_task for websocket in self.websockets],
- **loop_if_py_lt_38(self.get_loop()),
+ [websocket.handler_task for websocket in self.websockets]
)
# Tell wait_closed() to return.
@@ -829,19 +827,37 @@ class WebSocketServer:
"""
return self.server.is_serving()
- async def start_serving(self) -> None:
+ async def start_serving(self) -> None: # pragma: no cover
"""
See :meth:`asyncio.Server.start_serving`.
+ Typical use::
+
+ server = await serve(..., start_serving=False)
+ # perform additional setup here...
+ # ... then start the server
+ await server.start_serving()
+
"""
- await self.server.start_serving() # pragma: no cover
+ await self.server.start_serving()
- async def serve_forever(self) -> None:
+ async def serve_forever(self) -> None: # pragma: no cover
"""
See :meth:`asyncio.Server.serve_forever`.
+ Typical use::
+
+ server = await serve(...)
+ # this coroutine doesn't return
+ # canceling it stops the server
+ await server.serve_forever()
+
+ This is an alternative to using :func:`serve` as an asynchronous context
+ manager. Shutdown is triggered by canceling :meth:`serve_forever`
+ instead of exiting a :func:`serve` context.
+
"""
- await self.server.serve_forever() # pragma: no cover
+ await self.server.serve_forever()
@property
def sockets(self) -> Iterable[socket.socket]:
@@ -851,17 +867,17 @@ class WebSocketServer:
"""
return self.server.sockets
- async def __aenter__(self) -> WebSocketServer:
- return self # pragma: no cover
+ async def __aenter__(self) -> WebSocketServer: # pragma: no cover
+ return self
async def __aexit__(
self,
exc_type: Optional[Type[BaseException]],
exc_value: Optional[BaseException],
traceback: Optional[TracebackType],
- ) -> None:
- self.close() # pragma: no cover
- await self.wait_closed() # pragma: no cover
+ ) -> None: # pragma: no cover
+ self.close()
+ await self.wait_closed()
class Serve:
@@ -879,53 +895,61 @@ class Serve:
server performs the closing handshake and closes the connection.
Awaiting :func:`serve` yields a :class:`WebSocketServer`. This object
- provides :meth:`~WebSocketServer.close` and
- :meth:`~WebSocketServer.wait_closed` methods for shutting down the server.
+ provides a :meth:`~WebSocketServer.close` method to shut down the server::
- :func:`serve` can be used as an asynchronous context manager::
+ stop = asyncio.Future() # set this future to exit the server
+
+ server = await serve(...)
+ await stop
+ await server.close()
+
+ :func:`serve` can be used as an asynchronous context manager. Then, the
+ server is shut down automatically when exiting the context::
stop = asyncio.Future() # set this future to exit the server
async with serve(...):
await stop
- The server is shut down automatically when exiting the context.
-
Args:
- ws_handler: connection handler. It receives the WebSocket connection,
+ ws_handler: Connection handler. It receives the WebSocket connection,
which is a :class:`WebSocketServerProtocol`, in argument.
- host: network interfaces the server is bound to;
- see :meth:`~asyncio.loop.create_server` for details.
- port: TCP port the server listens on;
- see :meth:`~asyncio.loop.create_server` for details.
- create_protocol: factory for the :class:`asyncio.Protocol` managing
- the connection; defaults to :class:`WebSocketServerProtocol`; may
- be set to a wrapper or a subclass to customize connection handling.
- logger: logger for this server;
- defaults to ``logging.getLogger("websockets.server")``;
- see the :doc:`logging guide <../topics/logging>` for details.
- compression: shortcut that enables the "permessage-deflate" extension
- by default; may be set to :obj:`None` to disable compression;
- see the :doc:`compression guide <../topics/compression>` for details.
- origins: acceptable values of the ``Origin`` header; include
- :obj:`None` in the list if the lack of an origin is acceptable.
- This is useful for defending against Cross-Site WebSocket
- Hijacking attacks.
- extensions: list of supported extensions, in order in which they
- should be tried.
- subprotocols: list of supported subprotocols, in order of decreasing
+ host: Network interfaces the server binds to.
+ See :meth:`~asyncio.loop.create_server` for details.
+ port: TCP port the server listens on.
+ See :meth:`~asyncio.loop.create_server` for details.
+ create_protocol: Factory for the :class:`asyncio.Protocol` managing
+ the connection. It defaults to :class:`WebSocketServerProtocol`.
+ Set it to a wrapper or a subclass to customize connection handling.
+ logger: Logger for this server.
+ It defaults to ``logging.getLogger("websockets.server")``.
+ See the :doc:`logging guide <../../topics/logging>` for details.
+ compression: The "permessage-deflate" extension is enabled by default.
+ Set ``compression`` to :obj:`None` to disable it. See the
+ :doc:`compression guide <../../topics/compression>` for details.
+ origins: Acceptable values of the ``Origin`` header, for defending
+ against Cross-Site WebSocket Hijacking attacks. Include :obj:`None`
+ in the list if the lack of an origin is acceptable.
+ extensions: List of supported extensions, in order in which they
+ should be negotiated and run.
+ subprotocols: List of supported subprotocols, in order of decreasing
preference.
extra_headers (Union[HeadersLike, Callable[[str, Headers], HeadersLike]]):
- arbitrary HTTP headers to add to the request; this can be
+ Arbitrary HTTP headers to add to the response. This can be
a :data:`~websockets.datastructures.HeadersLike` or a callable
taking the request path and headers in arguments and returning
a :data:`~websockets.datastructures.HeadersLike`.
+ server_header: Value of the ``Server`` response header.
+ It defaults to ``"Python/x.y.z websockets/X.Y"``.
+ Setting it to :obj:`None` removes the header.
process_request (Optional[Callable[[str, Headers], \
- Awaitable[Optional[Tuple[http.HTTPStatus, HeadersLike, bytes]]]]]):
- intercept HTTP request before the opening handshake;
- see :meth:`~WebSocketServerProtocol.process_request` for details.
- select_subprotocol: select a subprotocol supported by the client;
- see :meth:`~WebSocketServerProtocol.select_subprotocol` for details.
+ Awaitable[Optional[Tuple[StatusLike, HeadersLike, bytes]]]]]):
+ Intercept HTTP request before the opening handshake.
+ See :meth:`~WebSocketServerProtocol.process_request` for details.
+ select_subprotocol: Select a subprotocol supported by the client.
+ See :meth:`~WebSocketServerProtocol.select_subprotocol` for details.
+ open_timeout: Timeout for opening connections in seconds.
+ :obj:`None` disables the timeout.
See :class:`~websockets.legacy.protocol.WebSocketCommonProtocol` for the
documentation of ``ping_interval``, ``ping_timeout``, ``close_timeout``,
@@ -955,19 +979,21 @@ class Serve:
host: Optional[Union[str, Sequence[str]]] = None,
port: Optional[int] = None,
*,
- create_protocol: Optional[Callable[[Any], WebSocketServerProtocol]] = None,
+ create_protocol: Optional[Callable[..., WebSocketServerProtocol]] = None,
logger: Optional[LoggerLike] = None,
compression: Optional[str] = "deflate",
origins: Optional[Sequence[Optional[Origin]]] = None,
extensions: Optional[Sequence[ServerExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
extra_headers: Optional[HeadersLikeOrCallable] = None,
+ server_header: Optional[str] = USER_AGENT,
process_request: Optional[
Callable[[str, Headers], Awaitable[Optional[HTTPResponse]]]
] = None,
select_subprotocol: Optional[
Callable[[Sequence[Subprotocol], Sequence[Subprotocol]], Subprotocol]
] = None,
+ open_timeout: Optional[float] = 10,
ping_interval: Optional[float] = 20,
ping_timeout: Optional[float] = 20,
close_timeout: Optional[float] = None,
@@ -1030,6 +1056,7 @@ class Serve:
host=host,
port=port,
secure=secure,
+ open_timeout=open_timeout,
ping_interval=ping_interval,
ping_timeout=ping_timeout,
close_timeout=close_timeout,
@@ -1043,6 +1070,7 @@ class Serve:
extensions=extensions,
subprotocols=subprotocols,
extra_headers=extra_headers,
+ server_header=server_header,
process_request=process_request,
select_subprotocol=select_subprotocol,
logger=logger,
@@ -1106,17 +1134,18 @@ def unix_serve(
**kwargs: Any,
) -> Serve:
"""
- Similar to :func:`serve`, but for listening on Unix sockets.
+ Start a WebSocket server listening on a Unix socket.
- This function builds upon the event
- loop's :meth:`~asyncio.loop.create_unix_server` method.
+ This function is identical to :func:`serve`, except the ``host`` and
+ ``port`` arguments are replaced by ``path``. It is only available on Unix.
- It is only available on Unix.
+ Unrecognized keyword arguments are passed the event loop's
+ :meth:`~asyncio.loop.create_unix_server` method.
It's useful for deploying a server behind a reverse proxy such as nginx.
Args:
- path: file system path to the Unix socket.
+ path: File system path to the Unix socket.
"""
return serve(ws_handler, path=path, unix=True, **kwargs)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/protocol.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/protocol.py
new file mode 100644
index 0000000000..765e6b9bb4
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/protocol.py
@@ -0,0 +1,708 @@
+from __future__ import annotations
+
+import enum
+import logging
+import uuid
+from typing import Generator, List, Optional, Type, Union
+
+from .exceptions import (
+ ConnectionClosed,
+ ConnectionClosedError,
+ ConnectionClosedOK,
+ InvalidState,
+ PayloadTooBig,
+ ProtocolError,
+)
+from .extensions import Extension
+from .frames import (
+ OK_CLOSE_CODES,
+ OP_BINARY,
+ OP_CLOSE,
+ OP_CONT,
+ OP_PING,
+ OP_PONG,
+ OP_TEXT,
+ Close,
+ CloseCode,
+ Frame,
+)
+from .http11 import Request, Response
+from .streams import StreamReader
+from .typing import LoggerLike, Origin, Subprotocol
+
+
+__all__ = [
+ "Protocol",
+ "Side",
+ "State",
+ "SEND_EOF",
+]
+
+Event = Union[Request, Response, Frame]
+"""Events that :meth:`~Protocol.events_received` may return."""
+
+
+class Side(enum.IntEnum):
+ """A WebSocket connection is either a server or a client."""
+
+ SERVER, CLIENT = range(2)
+
+
+SERVER = Side.SERVER
+CLIENT = Side.CLIENT
+
+
+class State(enum.IntEnum):
+ """A WebSocket connection is in one of these four states."""
+
+ CONNECTING, OPEN, CLOSING, CLOSED = range(4)
+
+
+CONNECTING = State.CONNECTING
+OPEN = State.OPEN
+CLOSING = State.CLOSING
+CLOSED = State.CLOSED
+
+
+SEND_EOF = b""
+"""Sentinel signaling that the TCP connection must be half-closed."""
+
+
+class Protocol:
+ """
+ Sans-I/O implementation of a WebSocket connection.
+
+ Args:
+ side: :attr:`~Side.CLIENT` or :attr:`~Side.SERVER`.
+ state: initial state of the WebSocket connection.
+ max_size: maximum size of incoming messages in bytes;
+ :obj:`None` disables the limit.
+ logger: logger for this connection; depending on ``side``,
+ defaults to ``logging.getLogger("websockets.client")``
+ or ``logging.getLogger("websockets.server")``;
+ see the :doc:`logging guide <../../topics/logging>` for details.
+
+ """
+
+ def __init__(
+ self,
+ side: Side,
+ *,
+ state: State = OPEN,
+ max_size: Optional[int] = 2**20,
+ logger: Optional[LoggerLike] = None,
+ ) -> None:
+ # Unique identifier. For logs.
+ self.id: uuid.UUID = uuid.uuid4()
+ """Unique identifier of the connection. Useful in logs."""
+
+ # Logger or LoggerAdapter for this connection.
+ if logger is None:
+ logger = logging.getLogger(f"websockets.{side.name.lower()}")
+ self.logger: LoggerLike = logger
+ """Logger for this connection."""
+
+ # Track if DEBUG is enabled. Shortcut logging calls if it isn't.
+ self.debug = logger.isEnabledFor(logging.DEBUG)
+
+ # Connection side. CLIENT or SERVER.
+ self.side = side
+
+ # Connection state. Initially OPEN because subclasses handle CONNECTING.
+ self.state = state
+
+ # Maximum size of incoming messages in bytes.
+ self.max_size = max_size
+
+ # Current size of incoming message in bytes. Only set while reading a
+ # fragmented message i.e. a data frames with the FIN bit not set.
+ self.cur_size: Optional[int] = None
+
+ # True while sending a fragmented message i.e. a data frames with the
+ # FIN bit not set.
+ self.expect_continuation_frame = False
+
+ # WebSocket protocol parameters.
+ self.origin: Optional[Origin] = None
+ self.extensions: List[Extension] = []
+ self.subprotocol: Optional[Subprotocol] = None
+
+ # Close code and reason, set when a close frame is sent or received.
+ self.close_rcvd: Optional[Close] = None
+ self.close_sent: Optional[Close] = None
+ self.close_rcvd_then_sent: Optional[bool] = None
+
+ # Track if an exception happened during the handshake.
+ self.handshake_exc: Optional[Exception] = None
+ """
+ Exception to raise if the opening handshake failed.
+
+ :obj:`None` if the opening handshake succeeded.
+
+ """
+
+ # Track if send_eof() was called.
+ self.eof_sent = False
+
+ # Parser state.
+ self.reader = StreamReader()
+ self.events: List[Event] = []
+ self.writes: List[bytes] = []
+ self.parser = self.parse()
+ next(self.parser) # start coroutine
+ self.parser_exc: Optional[Exception] = None
+
+ @property
+ def state(self) -> State:
+ """
+ WebSocket connection state.
+
+ Defined in 4.1, 4.2, 7.1.3, and 7.1.4 of :rfc:`6455`.
+
+ """
+ return self._state
+
+ @state.setter
+ def state(self, state: State) -> None:
+ if self.debug:
+ self.logger.debug("= connection is %s", state.name)
+ self._state = state
+
+ @property
+ def close_code(self) -> Optional[int]:
+ """
+ `WebSocket close code`_.
+
+ .. _WebSocket close code:
+ https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.5
+
+ :obj:`None` if the connection isn't closed yet.
+
+ """
+ if self.state is not CLOSED:
+ return None
+ elif self.close_rcvd is None:
+ return CloseCode.ABNORMAL_CLOSURE
+ else:
+ return self.close_rcvd.code
+
+ @property
+ def close_reason(self) -> Optional[str]:
+ """
+ `WebSocket close reason`_.
+
+ .. _WebSocket close reason:
+ https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.6
+
+ :obj:`None` if the connection isn't closed yet.
+
+ """
+ if self.state is not CLOSED:
+ return None
+ elif self.close_rcvd is None:
+ return ""
+ else:
+ return self.close_rcvd.reason
+
+ @property
+ def close_exc(self) -> ConnectionClosed:
+ """
+ Exception to raise when trying to interact with a closed connection.
+
+ Don't raise this exception while the connection :attr:`state`
+ is :attr:`~websockets.protocol.State.CLOSING`; wait until
+ it's :attr:`~websockets.protocol.State.CLOSED`.
+
+ Indeed, the exception includes the close code and reason, which are
+ known only once the connection is closed.
+
+ Raises:
+ AssertionError: if the connection isn't closed yet.
+
+ """
+ assert self.state is CLOSED, "connection isn't closed yet"
+ exc_type: Type[ConnectionClosed]
+ if (
+ self.close_rcvd is not None
+ and self.close_sent is not None
+ and self.close_rcvd.code in OK_CLOSE_CODES
+ and self.close_sent.code in OK_CLOSE_CODES
+ ):
+ exc_type = ConnectionClosedOK
+ else:
+ exc_type = ConnectionClosedError
+ exc: ConnectionClosed = exc_type(
+ self.close_rcvd,
+ self.close_sent,
+ self.close_rcvd_then_sent,
+ )
+ # Chain to the exception raised in the parser, if any.
+ exc.__cause__ = self.parser_exc
+ return exc
+
+ # Public methods for receiving data.
+
+ def receive_data(self, data: bytes) -> None:
+ """
+ Receive data from the network.
+
+ After calling this method:
+
+ - You must call :meth:`data_to_send` and send this data to the network.
+ - You should call :meth:`events_received` and process resulting events.
+
+ Raises:
+ EOFError: if :meth:`receive_eof` was called earlier.
+
+ """
+ self.reader.feed_data(data)
+ next(self.parser)
+
+ def receive_eof(self) -> None:
+ """
+ Receive the end of the data stream from the network.
+
+ After calling this method:
+
+ - You must call :meth:`data_to_send` and send this data to the network;
+ it will return ``[b""]``, signaling the end of the stream, or ``[]``.
+ - You aren't expected to call :meth:`events_received`; it won't return
+ any new events.
+
+ Raises:
+ EOFError: if :meth:`receive_eof` was called earlier.
+
+ """
+ self.reader.feed_eof()
+ next(self.parser)
+
+ # Public methods for sending events.
+
+ def send_continuation(self, data: bytes, fin: bool) -> None:
+ """
+ Send a `Continuation frame`_.
+
+ .. _Continuation frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
+
+ Parameters:
+ data: payload containing the same kind of data
+ as the initial frame.
+ fin: FIN bit; set it to :obj:`True` if this is the last frame
+ of a fragmented message and to :obj:`False` otherwise.
+
+ Raises:
+ ProtocolError: if a fragmented message isn't in progress.
+
+ """
+ if not self.expect_continuation_frame:
+ raise ProtocolError("unexpected continuation frame")
+ self.expect_continuation_frame = not fin
+ self.send_frame(Frame(OP_CONT, data, fin))
+
+ def send_text(self, data: bytes, fin: bool = True) -> None:
+ """
+ Send a `Text frame`_.
+
+ .. _Text frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
+
+ Parameters:
+ data: payload containing text encoded with UTF-8.
+ fin: FIN bit; set it to :obj:`False` if this is the first frame of
+ a fragmented message.
+
+ Raises:
+ ProtocolError: if a fragmented message is in progress.
+
+ """
+ if self.expect_continuation_frame:
+ raise ProtocolError("expected a continuation frame")
+ self.expect_continuation_frame = not fin
+ self.send_frame(Frame(OP_TEXT, data, fin))
+
+ def send_binary(self, data: bytes, fin: bool = True) -> None:
+ """
+ Send a `Binary frame`_.
+
+ .. _Binary frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.6
+
+ Parameters:
+ data: payload containing arbitrary binary data.
+ fin: FIN bit; set it to :obj:`False` if this is the first frame of
+ a fragmented message.
+
+ Raises:
+ ProtocolError: if a fragmented message is in progress.
+
+ """
+ if self.expect_continuation_frame:
+ raise ProtocolError("expected a continuation frame")
+ self.expect_continuation_frame = not fin
+ self.send_frame(Frame(OP_BINARY, data, fin))
+
+ def send_close(self, code: Optional[int] = None, reason: str = "") -> None:
+ """
+ Send a `Close frame`_.
+
+ .. _Close frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.1
+
+ Parameters:
+ code: close code.
+ reason: close reason.
+
+ Raises:
+ ProtocolError: if a fragmented message is being sent, if the code
+ isn't valid, or if a reason is provided without a code
+
+ """
+ if self.expect_continuation_frame:
+ raise ProtocolError("expected a continuation frame")
+ if code is None:
+ if reason != "":
+ raise ProtocolError("cannot send a reason without a code")
+ close = Close(CloseCode.NO_STATUS_RCVD, "")
+ data = b""
+ else:
+ close = Close(code, reason)
+ data = close.serialize()
+ # send_frame() guarantees that self.state is OPEN at this point.
+ # 7.1.3. The WebSocket Closing Handshake is Started
+ self.send_frame(Frame(OP_CLOSE, data))
+ self.close_sent = close
+ self.state = CLOSING
+
+ def send_ping(self, data: bytes) -> None:
+ """
+ Send a `Ping frame`_.
+
+ .. _Ping frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.2
+
+ Parameters:
+ data: payload containing arbitrary binary data.
+
+ """
+ self.send_frame(Frame(OP_PING, data))
+
+ def send_pong(self, data: bytes) -> None:
+ """
+ Send a `Pong frame`_.
+
+ .. _Pong frame:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-5.5.3
+
+ Parameters:
+ data: payload containing arbitrary binary data.
+
+ """
+ self.send_frame(Frame(OP_PONG, data))
+
+ def fail(self, code: int, reason: str = "") -> None:
+ """
+ `Fail the WebSocket connection`_.
+
+ .. _Fail the WebSocket connection:
+ https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.7
+
+ Parameters:
+ code: close code
+ reason: close reason
+
+ Raises:
+ ProtocolError: if the code isn't valid.
+ """
+ # 7.1.7. Fail the WebSocket Connection
+
+ # Send a close frame when the state is OPEN (a close frame was already
+ # sent if it's CLOSING), except when failing the connection because
+ # of an error reading from or writing to the network.
+ if self.state is OPEN:
+ if code != CloseCode.ABNORMAL_CLOSURE:
+ close = Close(code, reason)
+ data = close.serialize()
+ self.send_frame(Frame(OP_CLOSE, data))
+ self.close_sent = close
+ self.state = CLOSING
+
+ # When failing the connection, a server closes the TCP connection
+ # without waiting for the client to complete the handshake, while a
+ # client waits for the server to close the TCP connection, possibly
+ # after sending a close frame that the client will ignore.
+ if self.side is SERVER and not self.eof_sent:
+ self.send_eof()
+
+ # 7.1.7. Fail the WebSocket Connection "An endpoint MUST NOT continue
+ # to attempt to process data(including a responding Close frame) from
+ # the remote endpoint after being instructed to _Fail the WebSocket
+ # Connection_."
+ self.parser = self.discard()
+ next(self.parser) # start coroutine
+
+ # Public method for getting incoming events after receiving data.
+
+ def events_received(self) -> List[Event]:
+ """
+ Fetch events generated from data received from the network.
+
+ Call this method immediately after any of the ``receive_*()`` methods.
+
+ Process resulting events, likely by passing them to the application.
+
+ Returns:
+ List[Event]: Events read from the connection.
+ """
+ events, self.events = self.events, []
+ return events
+
+ # Public method for getting outgoing data after receiving data or sending events.
+
+ def data_to_send(self) -> List[bytes]:
+ """
+ Obtain data to send to the network.
+
+ Call this method immediately after any of the ``receive_*()``,
+ ``send_*()``, or :meth:`fail` methods.
+
+ Write resulting data to the connection.
+
+ The empty bytestring :data:`~websockets.protocol.SEND_EOF` signals
+ the end of the data stream. When you receive it, half-close the TCP
+ connection.
+
+ Returns:
+ List[bytes]: Data to write to the connection.
+
+ """
+ writes, self.writes = self.writes, []
+ return writes
+
+ def close_expected(self) -> bool:
+ """
+ Tell if the TCP connection is expected to close soon.
+
+ Call this method immediately after any of the ``receive_*()``,
+ ``send_close()``, or :meth:`fail` methods.
+
+ If it returns :obj:`True`, schedule closing the TCP connection after a
+ short timeout if the other side hasn't already closed it.
+
+ Returns:
+ bool: Whether the TCP connection is expected to close soon.
+
+ """
+ # We expect a TCP close if and only if we sent a close frame:
+ # * Normal closure: once we send a close frame, we expect a TCP close:
+ # server waits for client to complete the TCP closing handshake;
+ # client waits for server to initiate the TCP closing handshake.
+ # * Abnormal closure: we always send a close frame and the same logic
+ # applies, except on EOFError where we don't send a close frame
+ # because we already received the TCP close, so we don't expect it.
+ # We already got a TCP Close if and only if the state is CLOSED.
+ return self.state is CLOSING or self.handshake_exc is not None
+
+ # Private methods for receiving data.
+
+ def parse(self) -> Generator[None, None, None]:
+ """
+ Parse incoming data into frames.
+
+ :meth:`receive_data` and :meth:`receive_eof` run this generator
+ coroutine until it needs more data or reaches EOF.
+
+ :meth:`parse` never raises an exception. Instead, it sets the
+ :attr:`parser_exc` and yields control.
+
+ """
+ try:
+ while True:
+ if (yield from self.reader.at_eof()):
+ if self.debug:
+ self.logger.debug("< EOF")
+ # If the WebSocket connection is closed cleanly, with a
+ # closing handhshake, recv_frame() substitutes parse()
+ # with discard(). This branch is reached only when the
+ # connection isn't closed cleanly.
+ raise EOFError("unexpected end of stream")
+
+ if self.max_size is None:
+ max_size = None
+ elif self.cur_size is None:
+ max_size = self.max_size
+ else:
+ max_size = self.max_size - self.cur_size
+
+ # During a normal closure, execution ends here on the next
+ # iteration of the loop after receiving a close frame. At
+ # this point, recv_frame() replaced parse() by discard().
+ frame = yield from Frame.parse(
+ self.reader.read_exact,
+ mask=self.side is SERVER,
+ max_size=max_size,
+ extensions=self.extensions,
+ )
+
+ if self.debug:
+ self.logger.debug("< %s", frame)
+
+ self.recv_frame(frame)
+
+ except ProtocolError as exc:
+ self.fail(CloseCode.PROTOCOL_ERROR, str(exc))
+ self.parser_exc = exc
+
+ except EOFError as exc:
+ self.fail(CloseCode.ABNORMAL_CLOSURE, str(exc))
+ self.parser_exc = exc
+
+ except UnicodeDecodeError as exc:
+ self.fail(CloseCode.INVALID_DATA, f"{exc.reason} at position {exc.start}")
+ self.parser_exc = exc
+
+ except PayloadTooBig as exc:
+ self.fail(CloseCode.MESSAGE_TOO_BIG, str(exc))
+ self.parser_exc = exc
+
+ except Exception as exc:
+ self.logger.error("parser failed", exc_info=True)
+ # Don't include exception details, which may be security-sensitive.
+ self.fail(CloseCode.INTERNAL_ERROR)
+ self.parser_exc = exc
+
+ # During an abnormal closure, execution ends here after catching an
+ # exception. At this point, fail() replaced parse() by discard().
+ yield
+ raise AssertionError("parse() shouldn't step after error")
+
+ def discard(self) -> Generator[None, None, None]:
+ """
+ Discard incoming data.
+
+ This coroutine replaces :meth:`parse`:
+
+ - after receiving a close frame, during a normal closure (1.4);
+ - after sending a close frame, during an abnormal closure (7.1.7).
+
+ """
+ # The server close the TCP connection in the same circumstances where
+ # discard() replaces parse(). The client closes the connection later,
+ # after the server closes the connection or a timeout elapses.
+ # (The latter case cannot be handled in this Sans-I/O layer.)
+ assert (self.side is SERVER) == (self.eof_sent)
+ while not (yield from self.reader.at_eof()):
+ self.reader.discard()
+ if self.debug:
+ self.logger.debug("< EOF")
+ # A server closes the TCP connection immediately, while a client
+ # waits for the server to close the TCP connection.
+ if self.side is CLIENT:
+ self.send_eof()
+ self.state = CLOSED
+ # If discard() completes normally, execution ends here.
+ yield
+ # Once the reader reaches EOF, its feed_data/eof() methods raise an
+ # error, so our receive_data/eof() methods don't step the generator.
+ raise AssertionError("discard() shouldn't step after EOF")
+
+ def recv_frame(self, frame: Frame) -> None:
+ """
+ Process an incoming frame.
+
+ """
+ if frame.opcode is OP_TEXT or frame.opcode is OP_BINARY:
+ if self.cur_size is not None:
+ raise ProtocolError("expected a continuation frame")
+ if frame.fin:
+ self.cur_size = None
+ else:
+ self.cur_size = len(frame.data)
+
+ elif frame.opcode is OP_CONT:
+ if self.cur_size is None:
+ raise ProtocolError("unexpected continuation frame")
+ if frame.fin:
+ self.cur_size = None
+ else:
+ self.cur_size += len(frame.data)
+
+ elif frame.opcode is OP_PING:
+ # 5.5.2. Ping: "Upon receipt of a Ping frame, an endpoint MUST
+ # send a Pong frame in response"
+ pong_frame = Frame(OP_PONG, frame.data)
+ self.send_frame(pong_frame)
+
+ elif frame.opcode is OP_PONG:
+ # 5.5.3 Pong: "A response to an unsolicited Pong frame is not
+ # expected."
+ pass
+
+ elif frame.opcode is OP_CLOSE:
+ # 7.1.5. The WebSocket Connection Close Code
+ # 7.1.6. The WebSocket Connection Close Reason
+ self.close_rcvd = Close.parse(frame.data)
+ if self.state is CLOSING:
+ assert self.close_sent is not None
+ self.close_rcvd_then_sent = False
+
+ if self.cur_size is not None:
+ raise ProtocolError("incomplete fragmented message")
+
+ # 5.5.1 Close: "If an endpoint receives a Close frame and did
+ # not previously send a Close frame, the endpoint MUST send a
+ # Close frame in response. (When sending a Close frame in
+ # response, the endpoint typically echos the status code it
+ # received.)"
+
+ if self.state is OPEN:
+ # Echo the original data instead of re-serializing it with
+ # Close.serialize() because that fails when the close frame
+ # is empty and Close.parse() synthesizes a 1005 close code.
+ # The rest is identical to send_close().
+ self.send_frame(Frame(OP_CLOSE, frame.data))
+ self.close_sent = self.close_rcvd
+ self.close_rcvd_then_sent = True
+ self.state = CLOSING
+
+ # 7.1.2. Start the WebSocket Closing Handshake: "Once an
+ # endpoint has both sent and received a Close control frame,
+ # that endpoint SHOULD _Close the WebSocket Connection_"
+
+ # A server closes the TCP connection immediately, while a client
+ # waits for the server to close the TCP connection.
+ if self.side is SERVER:
+ self.send_eof()
+
+ # 1.4. Closing Handshake: "after receiving a control frame
+ # indicating the connection should be closed, a peer discards
+ # any further data received."
+ self.parser = self.discard()
+ next(self.parser) # start coroutine
+
+ else:
+ # This can't happen because Frame.parse() validates opcodes.
+ raise AssertionError(f"unexpected opcode: {frame.opcode:02x}")
+
+ self.events.append(frame)
+
+ # Private methods for sending events.
+
+ def send_frame(self, frame: Frame) -> None:
+ if self.state is not OPEN:
+ raise InvalidState(
+ f"cannot write to a WebSocket in the {self.state.name} state"
+ )
+
+ if self.debug:
+ self.logger.debug("> %s", frame)
+ self.writes.append(
+ frame.serialize(mask=self.side is CLIENT, extensions=self.extensions)
+ )
+
+ def send_eof(self) -> None:
+ assert not self.eof_sent
+ self.eof_sent = True
+ if self.debug:
+ self.logger.debug("> EOF")
+ self.writes.append(SEND_EOF)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/server.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/server.py
index 5dad50b6a1..191660553f 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/server.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/server.py
@@ -4,9 +4,9 @@ import base64
import binascii
import email.utils
import http
-from typing import Generator, List, Optional, Sequence, Tuple, cast
+import warnings
+from typing import Any, Callable, Generator, List, Optional, Sequence, Tuple, cast
-from .connection import CONNECTING, OPEN, SERVER, Connection, State
from .datastructures import Headers, MultipleValuesError
from .exceptions import (
InvalidHandshake,
@@ -25,13 +25,14 @@ from .headers import (
parse_subprotocol,
parse_upgrade,
)
-from .http import USER_AGENT
from .http11 import Request, Response
+from .protocol import CONNECTING, OPEN, SERVER, Protocol, State
from .typing import (
ConnectionOption,
ExtensionHeader,
LoggerLike,
Origin,
+ StatusLike,
Subprotocol,
UpgradeProtocol,
)
@@ -39,13 +40,15 @@ from .utils import accept_key
# See #940 for why lazy_import isn't used here for backwards compatibility.
-from .legacy.server import * # isort:skip # noqa
+# See #1400 for why listing compatibility imports in __all__ helps PyCharm.
+from .legacy.server import * # isort:skip # noqa: I001
+from .legacy.server import __all__ as legacy__all__
-__all__ = ["ServerConnection"]
+__all__ = ["ServerProtocol"] + legacy__all__
-class ServerConnection(Connection):
+class ServerProtocol(Protocol):
"""
Sans-I/O implementation of a WebSocket server connection.
@@ -58,20 +61,31 @@ class ServerConnection(Connection):
should be tried.
subprotocols: list of supported subprotocols, in order of decreasing
preference.
+ select_subprotocol: Callback for selecting a subprotocol among
+ those supported by the client and the server. It has the same
+ signature as the :meth:`select_subprotocol` method, including a
+ :class:`ServerProtocol` instance as first argument.
state: initial state of the WebSocket connection.
max_size: maximum size of incoming messages in bytes;
- :obj:`None` to disable the limit.
+ :obj:`None` disables the limit.
logger: logger for this connection;
defaults to ``logging.getLogger("websockets.client")``;
- see the :doc:`logging guide <../topics/logging>` for details.
+ see the :doc:`logging guide <../../topics/logging>` for details.
"""
def __init__(
self,
+ *,
origins: Optional[Sequence[Optional[Origin]]] = None,
extensions: Optional[Sequence[ServerExtensionFactory]] = None,
subprotocols: Optional[Sequence[Subprotocol]] = None,
+ select_subprotocol: Optional[
+ Callable[
+ [ServerProtocol, Sequence[Subprotocol]],
+ Optional[Subprotocol],
+ ]
+ ] = None,
state: State = CONNECTING,
max_size: Optional[int] = 2**20,
logger: Optional[LoggerLike] = None,
@@ -85,6 +99,14 @@ class ServerConnection(Connection):
self.origins = origins
self.available_extensions = extensions
self.available_subprotocols = subprotocols
+ if select_subprotocol is not None:
+ # Bind select_subprotocol then shadow self.select_subprotocol.
+ # Use setattr to work around https://github.com/python/mypy/issues/2427.
+ setattr(
+ self,
+ "select_subprotocol",
+ select_subprotocol.__get__(self, self.__class__),
+ )
def accept(self, request: Request) -> Response:
"""
@@ -95,13 +117,13 @@ class ServerConnection(Connection):
You must send the handshake response with :meth:`send_response`.
- You can modify it before sending it, for example to add HTTP headers.
+ You may modify it before sending it, for example to add HTTP headers.
Args:
request: WebSocket handshake request event received from the client.
Returns:
- Response: WebSocket handshake response event to send to the client.
+ WebSocket handshake response event to send to the client.
"""
try:
@@ -145,6 +167,8 @@ class ServerConnection(Connection):
f"Failed to open a WebSocket connection: {exc}.\n",
)
except Exception as exc:
+ # Handle exceptions raised by user-provided select_subprotocol and
+ # unexpected errors.
request._exception = exc
self.handshake_exc = exc
self.logger.error("opening handshake failed", exc_info=True)
@@ -170,13 +194,12 @@ class ServerConnection(Connection):
if protocol_header is not None:
headers["Sec-WebSocket-Protocol"] = protocol_header
- headers["Server"] = USER_AGENT
-
self.logger.info("connection open")
return Response(101, "Switching Protocols", headers)
def process_request(
- self, request: Request
+ self,
+ request: Request,
) -> Tuple[str, Optional[str], Optional[str]]:
"""
Check a handshake request and negotiate extensions and subprotocol.
@@ -274,6 +297,7 @@ class ServerConnection(Connection):
Optional[Origin]: origin, if it is acceptable.
Raises:
+ InvalidHandshake: if the Origin header is invalid.
InvalidOrigin: if the origin isn't acceptable.
"""
@@ -298,8 +322,8 @@ class ServerConnection(Connection):
Accept or reject each extension proposed in the client request.
Negotiate parameters for accepted extensions.
- :rfc:`6455` leaves the rules up to the specification of each
- :extension.
+ Per :rfc:`6455`, negotiation rules are defined by the specification of
+ each extension.
To provide this level of flexibility, for each extension proposed by
the client, we check for a match with each extension available in the
@@ -324,7 +348,7 @@ class ServerConnection(Connection):
HTTP response header and list of accepted extensions.
Raises:
- InvalidHandshake: to abort the handshake with an HTTP 400 error.
+ InvalidHandshake: if the Sec-WebSocket-Extensions header is invalid.
"""
response_header_value: Optional[str] = None
@@ -335,15 +359,12 @@ class ServerConnection(Connection):
header_values = headers.get_all("Sec-WebSocket-Extensions")
if header_values and self.available_extensions:
-
parsed_header_values: List[ExtensionHeader] = sum(
[parse_extension(header_value) for header_value in header_values], []
)
for name, request_params in parsed_header_values:
-
for ext_factory in self.available_extensions:
-
# Skip non-matching extensions based on their name.
if ext_factory.name != name:
continue
@@ -384,64 +405,83 @@ class ServerConnection(Connection):
also the value of the ``Sec-WebSocket-Protocol`` response header.
Raises:
- InvalidHandshake: to abort the handshake with an HTTP 400 error.
+ InvalidHandshake: if the Sec-WebSocket-Subprotocol header is invalid.
"""
- subprotocol: Optional[Subprotocol] = None
-
- header_values = headers.get_all("Sec-WebSocket-Protocol")
-
- if header_values and self.available_subprotocols:
-
- parsed_header_values: List[Subprotocol] = sum(
- [parse_subprotocol(header_value) for header_value in header_values], []
- )
-
- subprotocol = self.select_subprotocol(
- parsed_header_values, self.available_subprotocols
- )
+ subprotocols: Sequence[Subprotocol] = sum(
+ [
+ parse_subprotocol(header_value)
+ for header_value in headers.get_all("Sec-WebSocket-Protocol")
+ ],
+ [],
+ )
- return subprotocol
+ return self.select_subprotocol(subprotocols)
def select_subprotocol(
self,
- client_subprotocols: Sequence[Subprotocol],
- server_subprotocols: Sequence[Subprotocol],
+ subprotocols: Sequence[Subprotocol],
) -> Optional[Subprotocol]:
"""
Pick a subprotocol among those offered by the client.
- If several subprotocols are supported by the client and the server,
- the default implementation selects the preferred subprotocols by
- giving equal value to the priorities of the client and the server.
+ If several subprotocols are supported by both the client and the server,
+ pick the first one in the list declared the server.
+
+ If the server doesn't support any subprotocols, continue without a
+ subprotocol, regardless of what the client offers.
+
+ If the server supports at least one subprotocol and the client doesn't
+ offer any, abort the handshake with an HTTP 400 error.
- If no common subprotocol is supported by the client and the server, it
- proceeds without a subprotocol.
+ You provide a ``select_subprotocol`` argument to :class:`ServerProtocol`
+ to override this logic. For example, you could accept the connection
+ even if client doesn't offer a subprotocol, rather than reject it.
- This is unlikely to be the most useful implementation in practice, as
- many servers providing a subprotocol will require that the client uses
- that subprotocol.
+ Here's how to negotiate the ``chat`` subprotocol if the client supports
+ it and continue without a subprotocol otherwise::
+
+ def select_subprotocol(protocol, subprotocols):
+ if "chat" in subprotocols:
+ return "chat"
Args:
- client_subprotocols: list of subprotocols offered by the client.
- server_subprotocols: list of subprotocols available on the server.
+ subprotocols: list of subprotocols offered by the client.
Returns:
- Optional[Subprotocol]: Subprotocol, if a common subprotocol was
- found.
+ Optional[Subprotocol]: Selected subprotocol, if a common subprotocol
+ was found.
+
+ :obj:`None` to continue without a subprotocol.
+
+ Raises:
+ NegotiationError: custom implementations may raise this exception
+ to abort the handshake with an HTTP 400 error.
"""
- subprotocols = set(client_subprotocols) & set(server_subprotocols)
- if not subprotocols:
+ # Server doesn't offer any subprotocols.
+ if not self.available_subprotocols: # None or empty list
return None
- priority = lambda p: (
- client_subprotocols.index(p) + server_subprotocols.index(p)
+
+ # Server offers at least one subprotocol but client doesn't offer any.
+ if not subprotocols:
+ raise NegotiationError("missing subprotocol")
+
+ # Server and client both offer subprotocols. Look for a shared one.
+ proposed_subprotocols = set(subprotocols)
+ for subprotocol in self.available_subprotocols:
+ if subprotocol in proposed_subprotocols:
+ return subprotocol
+
+ # No common subprotocol was found.
+ raise NegotiationError(
+ "invalid subprotocol; expected one of "
+ + ", ".join(self.available_subprotocols)
)
- return sorted(subprotocols, key=priority)[0]
def reject(
self,
- status: http.HTTPStatus,
+ status: StatusLike,
text: str,
) -> Response:
"""
@@ -462,6 +502,8 @@ class ServerConnection(Connection):
Response: WebSocket handshake response event to send to the client.
"""
+ # If a user passes an int instead of a HTTPStatus, fix it automatically.
+ status = http.HTTPStatus(status)
body = text.encode()
headers = Headers(
[
@@ -469,16 +511,15 @@ class ServerConnection(Connection):
("Connection", "close"),
("Content-Length", str(len(body))),
("Content-Type", "text/plain; charset=utf-8"),
- ("Server", USER_AGENT),
]
)
response = Response(status.value, status.phrase, headers, body)
# When reject() is called from accept(), handshake_exc is already set.
# If a user calls reject(), set handshake_exc to guarantee invariant:
- # "handshake_exc is None if and only if opening handshake succeded."
+ # "handshake_exc is None if and only if opening handshake succeeded."
if self.handshake_exc is None:
self.handshake_exc = InvalidStatus(response)
- self.logger.info("connection failed (%d %s)", status.value, status.phrase)
+ self.logger.info("connection rejected (%d %s)", status.value, status.phrase)
return response
def send_response(self, response: Response) -> None:
@@ -509,7 +550,16 @@ class ServerConnection(Connection):
def parse(self) -> Generator[None, None, None]:
if self.state is CONNECTING:
- request = yield from Request.parse(self.reader.read_line)
+ try:
+ request = yield from Request.parse(
+ self.reader.read_line,
+ )
+ except Exception as exc:
+ self.handshake_exc = exc
+ self.send_eof()
+ self.parser = self.discard()
+ next(self.parser) # start coroutine
+ yield
if self.debug:
self.logger.debug("< GET %s HTTP/1.1", request.path)
@@ -519,3 +569,12 @@ class ServerConnection(Connection):
self.events.append(request)
yield from super().parse()
+
+
+class ServerConnection(ServerProtocol):
+ def __init__(self, *args: Any, **kwargs: Any) -> None:
+ warnings.warn(
+ "ServerConnection was renamed to ServerProtocol",
+ DeprecationWarning,
+ )
+ super().__init__(*args, **kwargs)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/speedups.pyi b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/speedups.pyi
new file mode 100644
index 0000000000..821438a064
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/speedups.pyi
@@ -0,0 +1 @@
+def apply_mask(data: bytes, mask: bytes) -> bytes: ...
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/__init__.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/client.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/client.py
new file mode 100644
index 0000000000..087ff5f569
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/client.py
@@ -0,0 +1,328 @@
+from __future__ import annotations
+
+import socket
+import ssl
+import threading
+from typing import Any, Optional, Sequence, Type
+
+from ..client import ClientProtocol
+from ..datastructures import HeadersLike
+from ..extensions.base import ClientExtensionFactory
+from ..extensions.permessage_deflate import enable_client_permessage_deflate
+from ..headers import validate_subprotocols
+from ..http import USER_AGENT
+from ..http11 import Response
+from ..protocol import CONNECTING, OPEN, Event
+from ..typing import LoggerLike, Origin, Subprotocol
+from ..uri import parse_uri
+from .connection import Connection
+from .utils import Deadline
+
+
+__all__ = ["connect", "unix_connect", "ClientConnection"]
+
+
+class ClientConnection(Connection):
+ """
+ Threaded implementation of a WebSocket client connection.
+
+ :class:`ClientConnection` provides :meth:`recv` and :meth:`send` methods for
+ receiving and sending messages.
+
+ It supports iteration to receive messages::
+
+ for message in websocket:
+ process(message)
+
+ The iterator exits normally when the connection is closed with close code
+ 1000 (OK) or 1001 (going away) or without a close code. It raises a
+ :exc:`~websockets.exceptions.ConnectionClosedError` when the connection is
+ closed with any other code.
+
+ Args:
+ socket: Socket connected to a WebSocket server.
+ protocol: Sans-I/O connection.
+ close_timeout: Timeout for closing the connection in seconds.
+
+ """
+
+ def __init__(
+ self,
+ socket: socket.socket,
+ protocol: ClientProtocol,
+ *,
+ close_timeout: Optional[float] = 10,
+ ) -> None:
+ self.protocol: ClientProtocol
+ self.response_rcvd = threading.Event()
+ super().__init__(
+ socket,
+ protocol,
+ close_timeout=close_timeout,
+ )
+
+ def handshake(
+ self,
+ additional_headers: Optional[HeadersLike] = None,
+ user_agent_header: Optional[str] = USER_AGENT,
+ timeout: Optional[float] = None,
+ ) -> None:
+ """
+ Perform the opening handshake.
+
+ """
+ with self.send_context(expected_state=CONNECTING):
+ self.request = self.protocol.connect()
+ if additional_headers is not None:
+ self.request.headers.update(additional_headers)
+ if user_agent_header is not None:
+ self.request.headers["User-Agent"] = user_agent_header
+ self.protocol.send_request(self.request)
+
+ if not self.response_rcvd.wait(timeout):
+ self.close_socket()
+ self.recv_events_thread.join()
+ raise TimeoutError("timed out during handshake")
+
+ if self.response is None:
+ self.close_socket()
+ self.recv_events_thread.join()
+ raise ConnectionError("connection closed during handshake")
+
+ if self.protocol.state is not OPEN:
+ self.recv_events_thread.join(self.close_timeout)
+ self.close_socket()
+ self.recv_events_thread.join()
+
+ if self.protocol.handshake_exc is not None:
+ raise self.protocol.handshake_exc
+
+ def process_event(self, event: Event) -> None:
+ """
+ Process one incoming event.
+
+ """
+ # First event - handshake response.
+ if self.response is None:
+ assert isinstance(event, Response)
+ self.response = event
+ self.response_rcvd.set()
+ # Later events - frames.
+ else:
+ super().process_event(event)
+
+ def recv_events(self) -> None:
+ """
+ Read incoming data from the socket and process events.
+
+ """
+ try:
+ super().recv_events()
+ finally:
+ # If the connection is closed during the handshake, unblock it.
+ self.response_rcvd.set()
+
+
+def connect(
+ uri: str,
+ *,
+ # TCP/TLS — unix and path are only for unix_connect()
+ sock: Optional[socket.socket] = None,
+ ssl_context: Optional[ssl.SSLContext] = None,
+ server_hostname: Optional[str] = None,
+ unix: bool = False,
+ path: Optional[str] = None,
+ # WebSocket
+ origin: Optional[Origin] = None,
+ extensions: Optional[Sequence[ClientExtensionFactory]] = None,
+ subprotocols: Optional[Sequence[Subprotocol]] = None,
+ additional_headers: Optional[HeadersLike] = None,
+ user_agent_header: Optional[str] = USER_AGENT,
+ compression: Optional[str] = "deflate",
+ # Timeouts
+ open_timeout: Optional[float] = 10,
+ close_timeout: Optional[float] = 10,
+ # Limits
+ max_size: Optional[int] = 2**20,
+ # Logging
+ logger: Optional[LoggerLike] = None,
+ # Escape hatch for advanced customization
+ create_connection: Optional[Type[ClientConnection]] = None,
+) -> ClientConnection:
+ """
+ Connect to the WebSocket server at ``uri``.
+
+ This function returns a :class:`ClientConnection` instance, which you can
+ use to send and receive messages.
+
+ :func:`connect` may be used as a context manager::
+
+ async with websockets.sync.client.connect(...) as websocket:
+ ...
+
+ The connection is closed automatically when exiting the context.
+
+ Args:
+ uri: URI of the WebSocket server.
+ sock: Preexisting TCP socket. ``sock`` overrides the host and port
+ from ``uri``. You may call :func:`socket.create_connection` to
+ create a suitable TCP socket.
+ ssl_context: Configuration for enabling TLS on the connection.
+ server_hostname: Host name for the TLS handshake. ``server_hostname``
+ overrides the host name from ``uri``.
+ origin: Value of the ``Origin`` header, for servers that require it.
+ extensions: List of supported extensions, in order in which they
+ should be negotiated and run.
+ subprotocols: List of supported subprotocols, in order of decreasing
+ preference.
+ additional_headers (HeadersLike | None): Arbitrary HTTP headers to add
+ to the handshake request.
+ user_agent_header: Value of the ``User-Agent`` request header.
+ It defaults to ``"Python/x.y.z websockets/X.Y"``.
+ Setting it to :obj:`None` removes the header.
+ compression: The "permessage-deflate" extension is enabled by default.
+ Set ``compression`` to :obj:`None` to disable it. See the
+ :doc:`compression guide <../../topics/compression>` for details.
+ open_timeout: Timeout for opening the connection in seconds.
+ :obj:`None` disables the timeout.
+ close_timeout: Timeout for closing the connection in seconds.
+ :obj:`None` disables the timeout.
+ max_size: Maximum size of incoming messages in bytes.
+ :obj:`None` disables the limit.
+ logger: Logger for this client.
+ It defaults to ``logging.getLogger("websockets.client")``.
+ See the :doc:`logging guide <../../topics/logging>` for details.
+ create_connection: Factory for the :class:`ClientConnection` managing
+ the connection. Set it to a wrapper or a subclass to customize
+ connection handling.
+
+ Raises:
+ InvalidURI: If ``uri`` isn't a valid WebSocket URI.
+ OSError: If the TCP connection fails.
+ InvalidHandshake: If the opening handshake fails.
+ TimeoutError: If the opening handshake times out.
+
+ """
+
+ # Process parameters
+
+ wsuri = parse_uri(uri)
+ if not wsuri.secure and ssl_context is not None:
+ raise TypeError("ssl_context argument is incompatible with a ws:// URI")
+
+ if unix:
+ if path is None and sock is None:
+ raise TypeError("missing path argument")
+ elif path is not None and sock is not None:
+ raise TypeError("path and sock arguments are incompatible")
+ else:
+ assert path is None # private argument, only set by unix_connect()
+
+ if subprotocols is not None:
+ validate_subprotocols(subprotocols)
+
+ if compression == "deflate":
+ extensions = enable_client_permessage_deflate(extensions)
+ elif compression is not None:
+ raise ValueError(f"unsupported compression: {compression}")
+
+ # Calculate timeouts on the TCP, TLS, and WebSocket handshakes.
+ # The TCP and TLS timeouts must be set on the socket, then removed
+ # to avoid conflicting with the WebSocket timeout in handshake().
+ deadline = Deadline(open_timeout)
+
+ if create_connection is None:
+ create_connection = ClientConnection
+
+ try:
+ # Connect socket
+
+ if sock is None:
+ if unix:
+ sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
+ sock.settimeout(deadline.timeout())
+ assert path is not None # validated above -- this is for mpypy
+ sock.connect(path)
+ else:
+ sock = socket.create_connection(
+ (wsuri.host, wsuri.port),
+ deadline.timeout(),
+ )
+ sock.settimeout(None)
+
+ # Disable Nagle algorithm
+
+ if not unix:
+ sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, True)
+
+ # Initialize TLS wrapper and perform TLS handshake
+
+ if wsuri.secure:
+ if ssl_context is None:
+ ssl_context = ssl.create_default_context()
+ if server_hostname is None:
+ server_hostname = wsuri.host
+ sock.settimeout(deadline.timeout())
+ sock = ssl_context.wrap_socket(sock, server_hostname=server_hostname)
+ sock.settimeout(None)
+
+ # Initialize WebSocket connection
+
+ protocol = ClientProtocol(
+ wsuri,
+ origin=origin,
+ extensions=extensions,
+ subprotocols=subprotocols,
+ state=CONNECTING,
+ max_size=max_size,
+ logger=logger,
+ )
+
+ # Initialize WebSocket protocol
+
+ connection = create_connection(
+ sock,
+ protocol,
+ close_timeout=close_timeout,
+ )
+ # On failure, handshake() closes the socket and raises an exception.
+ connection.handshake(
+ additional_headers,
+ user_agent_header,
+ deadline.timeout(),
+ )
+
+ except Exception:
+ if sock is not None:
+ sock.close()
+ raise
+
+ return connection
+
+
+def unix_connect(
+ path: Optional[str] = None,
+ uri: Optional[str] = None,
+ **kwargs: Any,
+) -> ClientConnection:
+ """
+ Connect to a WebSocket server listening on a Unix socket.
+
+ This function is identical to :func:`connect`, except for the additional
+ ``path`` argument. It's only available on Unix.
+
+ It's mainly useful for debugging servers listening on Unix sockets.
+
+ Args:
+ path: File system path to the Unix socket.
+ uri: URI of the WebSocket server. ``uri`` defaults to
+ ``ws://localhost/`` or, when a ``ssl_context`` is provided, to
+ ``wss://localhost/``.
+
+ """
+ if uri is None:
+ if kwargs.get("ssl_context") is None:
+ uri = "ws://localhost/"
+ else:
+ uri = "wss://localhost/"
+ return connect(uri=uri, unix=True, path=path, **kwargs)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/connection.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/connection.py
new file mode 100644
index 0000000000..4a8879e370
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/connection.py
@@ -0,0 +1,773 @@
+from __future__ import annotations
+
+import contextlib
+import logging
+import random
+import socket
+import struct
+import threading
+import uuid
+from types import TracebackType
+from typing import Any, Dict, Iterable, Iterator, Mapping, Optional, Type, Union
+
+from ..exceptions import ConnectionClosed, ConnectionClosedOK, ProtocolError
+from ..frames import DATA_OPCODES, BytesLike, CloseCode, Frame, Opcode, prepare_ctrl
+from ..http11 import Request, Response
+from ..protocol import CLOSED, OPEN, Event, Protocol, State
+from ..typing import Data, LoggerLike, Subprotocol
+from .messages import Assembler
+from .utils import Deadline
+
+
+__all__ = ["Connection"]
+
+logger = logging.getLogger(__name__)
+
+
+class Connection:
+ """
+ Threaded implementation of a WebSocket connection.
+
+ :class:`Connection` provides APIs shared between WebSocket servers and
+ clients.
+
+ You shouldn't use it directly. Instead, use
+ :class:`~websockets.sync.client.ClientConnection` or
+ :class:`~websockets.sync.server.ServerConnection`.
+
+ """
+
+ recv_bufsize = 65536
+
+ def __init__(
+ self,
+ socket: socket.socket,
+ protocol: Protocol,
+ *,
+ close_timeout: Optional[float] = 10,
+ ) -> None:
+ self.socket = socket
+ self.protocol = protocol
+ self.close_timeout = close_timeout
+
+ # Inject reference to this instance in the protocol's logger.
+ self.protocol.logger = logging.LoggerAdapter(
+ self.protocol.logger,
+ {"websocket": self},
+ )
+
+ # Copy attributes from the protocol for convenience.
+ self.id: uuid.UUID = self.protocol.id
+ """Unique identifier of the connection. Useful in logs."""
+ self.logger: LoggerLike = self.protocol.logger
+ """Logger for this connection."""
+ self.debug = self.protocol.debug
+
+ # HTTP handshake request and response.
+ self.request: Optional[Request] = None
+ """Opening handshake request."""
+ self.response: Optional[Response] = None
+ """Opening handshake response."""
+
+ # Mutex serializing interactions with the protocol.
+ self.protocol_mutex = threading.Lock()
+
+ # Assembler turning frames into messages and serializing reads.
+ self.recv_messages = Assembler()
+
+ # Whether we are busy sending a fragmented message.
+ self.send_in_progress = False
+
+ # Deadline for the closing handshake.
+ self.close_deadline: Optional[Deadline] = None
+
+ # Mapping of ping IDs to pong waiters, in chronological order.
+ self.pings: Dict[bytes, threading.Event] = {}
+
+ # Receiving events from the socket.
+ self.recv_events_thread = threading.Thread(target=self.recv_events)
+ self.recv_events_thread.start()
+
+ # Exception raised in recv_events, to be chained to ConnectionClosed
+ # in the user thread in order to show why the TCP connection dropped.
+ self.recv_events_exc: Optional[BaseException] = None
+
+ # Public attributes
+
+ @property
+ def local_address(self) -> Any:
+ """
+ Local address of the connection.
+
+ For IPv4 connections, this is a ``(host, port)`` tuple.
+
+ The format of the address depends on the address family.
+ See :meth:`~socket.socket.getsockname`.
+
+ """
+ return self.socket.getsockname()
+
+ @property
+ def remote_address(self) -> Any:
+ """
+ Remote address of the connection.
+
+ For IPv4 connections, this is a ``(host, port)`` tuple.
+
+ The format of the address depends on the address family.
+ See :meth:`~socket.socket.getpeername`.
+
+ """
+ return self.socket.getpeername()
+
+ @property
+ def subprotocol(self) -> Optional[Subprotocol]:
+ """
+ Subprotocol negotiated during the opening handshake.
+
+ :obj:`None` if no subprotocol was negotiated.
+
+ """
+ return self.protocol.subprotocol
+
+ # Public methods
+
+ def __enter__(self) -> Connection:
+ return self
+
+ def __exit__(
+ self,
+ exc_type: Optional[Type[BaseException]],
+ exc_value: Optional[BaseException],
+ traceback: Optional[TracebackType],
+ ) -> None:
+ if exc_type is None:
+ self.close()
+ else:
+ self.close(CloseCode.INTERNAL_ERROR)
+
+ def __iter__(self) -> Iterator[Data]:
+ """
+ Iterate on incoming messages.
+
+ The iterator calls :meth:`recv` and yields messages in an infinite loop.
+
+ It exits when the connection is closed normally. It raises a
+ :exc:`~websockets.exceptions.ConnectionClosedError` exception after a
+ protocol error or a network failure.
+
+ """
+ try:
+ while True:
+ yield self.recv()
+ except ConnectionClosedOK:
+ return
+
+ def recv(self, timeout: Optional[float] = None) -> Data:
+ """
+ Receive the next message.
+
+ When the connection is closed, :meth:`recv` raises
+ :exc:`~websockets.exceptions.ConnectionClosed`. Specifically, it raises
+ :exc:`~websockets.exceptions.ConnectionClosedOK` after a normal closure
+ and :exc:`~websockets.exceptions.ConnectionClosedError` after a protocol
+ error or a network failure. This is how you detect the end of the
+ message stream.
+
+ If ``timeout`` is :obj:`None`, block until a message is received. If
+ ``timeout`` is set and no message is received within ``timeout``
+ seconds, raise :exc:`TimeoutError`. Set ``timeout`` to ``0`` to check if
+ a message was already received.
+
+ If the message is fragmented, wait until all fragments are received,
+ reassemble them, and return the whole message.
+
+ Returns:
+ A string (:class:`str`) for a Text_ frame or a bytestring
+ (:class:`bytes`) for a Binary_ frame.
+
+ .. _Text: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+ .. _Binary: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+
+ Raises:
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If two threads call :meth:`recv` or
+ :meth:`recv_streaming` concurrently.
+
+ """
+ try:
+ return self.recv_messages.get(timeout)
+ except EOFError:
+ raise self.protocol.close_exc from self.recv_events_exc
+ except RuntimeError:
+ raise RuntimeError(
+ "cannot call recv while another thread "
+ "is already running recv or recv_streaming"
+ ) from None
+
+ def recv_streaming(self) -> Iterator[Data]:
+ """
+ Receive the next message frame by frame.
+
+ If the message is fragmented, yield each fragment as it is received.
+ The iterator must be fully consumed, or else the connection will become
+ unusable.
+
+ :meth:`recv_streaming` raises the same exceptions as :meth:`recv`.
+
+ Returns:
+ An iterator of strings (:class:`str`) for a Text_ frame or
+ bytestrings (:class:`bytes`) for a Binary_ frame.
+
+ .. _Text: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+ .. _Binary: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+
+ Raises:
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If two threads call :meth:`recv` or
+ :meth:`recv_streaming` concurrently.
+
+ """
+ try:
+ yield from self.recv_messages.get_iter()
+ except EOFError:
+ raise self.protocol.close_exc from self.recv_events_exc
+ except RuntimeError:
+ raise RuntimeError(
+ "cannot call recv_streaming while another thread "
+ "is already running recv or recv_streaming"
+ ) from None
+
+ def send(self, message: Union[Data, Iterable[Data]]) -> None:
+ """
+ Send a message.
+
+ A string (:class:`str`) is sent as a Text_ frame. A bytestring or
+ bytes-like object (:class:`bytes`, :class:`bytearray`, or
+ :class:`memoryview`) is sent as a Binary_ frame.
+
+ .. _Text: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+ .. _Binary: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.6
+
+ :meth:`send` also accepts an iterable of strings, bytestrings, or
+ bytes-like objects to enable fragmentation_. Each item is treated as a
+ message fragment and sent in its own frame. All items must be of the
+ same type, or else :meth:`send` will raise a :exc:`TypeError` and the
+ connection will be closed.
+
+ .. _fragmentation: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.4
+
+ :meth:`send` rejects dict-like objects because this is often an error.
+ (If you really want to send the keys of a dict-like object as fragments,
+ call its :meth:`~dict.keys` method and pass the result to :meth:`send`.)
+
+ When the connection is closed, :meth:`send` raises
+ :exc:`~websockets.exceptions.ConnectionClosed`. Specifically, it
+ raises :exc:`~websockets.exceptions.ConnectionClosedOK` after a normal
+ connection closure and
+ :exc:`~websockets.exceptions.ConnectionClosedError` after a protocol
+ error or a network failure.
+
+ Args:
+ message: Message to send.
+
+ Raises:
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If a connection is busy sending a fragmented message.
+ TypeError: If ``message`` doesn't have a supported type.
+
+ """
+ # Unfragmented message -- this case must be handled first because
+ # strings and bytes-like objects are iterable.
+
+ if isinstance(message, str):
+ with self.send_context():
+ if self.send_in_progress:
+ raise RuntimeError(
+ "cannot call send while another thread "
+ "is already running send"
+ )
+ self.protocol.send_text(message.encode("utf-8"))
+
+ elif isinstance(message, BytesLike):
+ with self.send_context():
+ if self.send_in_progress:
+ raise RuntimeError(
+ "cannot call send while another thread "
+ "is already running send"
+ )
+ self.protocol.send_binary(message)
+
+ # Catch a common mistake -- passing a dict to send().
+
+ elif isinstance(message, Mapping):
+ raise TypeError("data is a dict-like object")
+
+ # Fragmented message -- regular iterator.
+
+ elif isinstance(message, Iterable):
+ chunks = iter(message)
+ try:
+ chunk = next(chunks)
+ except StopIteration:
+ return
+
+ try:
+ # First fragment.
+ if isinstance(chunk, str):
+ text = True
+ with self.send_context():
+ if self.send_in_progress:
+ raise RuntimeError(
+ "cannot call send while another thread "
+ "is already running send"
+ )
+ self.send_in_progress = True
+ self.protocol.send_text(
+ chunk.encode("utf-8"),
+ fin=False,
+ )
+ elif isinstance(chunk, BytesLike):
+ text = False
+ with self.send_context():
+ if self.send_in_progress:
+ raise RuntimeError(
+ "cannot call send while another thread "
+ "is already running send"
+ )
+ self.send_in_progress = True
+ self.protocol.send_binary(
+ chunk,
+ fin=False,
+ )
+ else:
+ raise TypeError("data iterable must contain bytes or str")
+
+ # Other fragments
+ for chunk in chunks:
+ if isinstance(chunk, str) and text:
+ with self.send_context():
+ assert self.send_in_progress
+ self.protocol.send_continuation(
+ chunk.encode("utf-8"),
+ fin=False,
+ )
+ elif isinstance(chunk, BytesLike) and not text:
+ with self.send_context():
+ assert self.send_in_progress
+ self.protocol.send_continuation(
+ chunk,
+ fin=False,
+ )
+ else:
+ raise TypeError("data iterable must contain uniform types")
+
+ # Final fragment.
+ with self.send_context():
+ self.protocol.send_continuation(b"", fin=True)
+ self.send_in_progress = False
+
+ except RuntimeError:
+ # We didn't start sending a fragmented message.
+ raise
+
+ except Exception:
+ # We're half-way through a fragmented message and we can't
+ # complete it. This makes the connection unusable.
+ with self.send_context():
+ self.protocol.fail(
+ CloseCode.INTERNAL_ERROR,
+ "error in fragmented message",
+ )
+ raise
+
+ else:
+ raise TypeError("data must be bytes, str, or iterable")
+
+ def close(self, code: int = CloseCode.NORMAL_CLOSURE, reason: str = "") -> None:
+ """
+ Perform the closing handshake.
+
+ :meth:`close` waits for the other end to complete the handshake, for the
+ TCP connection to terminate, and for all incoming messages to be read
+ with :meth:`recv`.
+
+ :meth:`close` is idempotent: it doesn't do anything once the
+ connection is closed.
+
+ Args:
+ code: WebSocket close code.
+ reason: WebSocket close reason.
+
+ """
+ try:
+ # The context manager takes care of waiting for the TCP connection
+ # to terminate after calling a method that sends a close frame.
+ with self.send_context():
+ if self.send_in_progress:
+ self.protocol.fail(
+ CloseCode.INTERNAL_ERROR,
+ "close during fragmented message",
+ )
+ else:
+ self.protocol.send_close(code, reason)
+ except ConnectionClosed:
+ # Ignore ConnectionClosed exceptions raised from send_context().
+ # They mean that the connection is closed, which was the goal.
+ pass
+
+ def ping(self, data: Optional[Data] = None) -> threading.Event:
+ """
+ Send a Ping_.
+
+ .. _Ping: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.2
+
+ A ping may serve as a keepalive or as a check that the remote endpoint
+ received all messages up to this point
+
+ Args:
+ data: Payload of the ping. A :class:`str` will be encoded to UTF-8.
+ If ``data`` is :obj:`None`, the payload is four random bytes.
+
+ Returns:
+ An event that will be set when the corresponding pong is received.
+ You can ignore it if you don't intend to wait.
+
+ ::
+
+ pong_event = ws.ping()
+ pong_event.wait() # only if you want to wait for the pong
+
+ Raises:
+ ConnectionClosed: When the connection is closed.
+ RuntimeError: If another ping was sent with the same data and
+ the corresponding pong wasn't received yet.
+
+ """
+ if data is not None:
+ data = prepare_ctrl(data)
+
+ with self.send_context():
+ # Protect against duplicates if a payload is explicitly set.
+ if data in self.pings:
+ raise RuntimeError("already waiting for a pong with the same data")
+
+ # Generate a unique random payload otherwise.
+ while data is None or data in self.pings:
+ data = struct.pack("!I", random.getrandbits(32))
+
+ pong_waiter = threading.Event()
+ self.pings[data] = pong_waiter
+ self.protocol.send_ping(data)
+ return pong_waiter
+
+ def pong(self, data: Data = b"") -> None:
+ """
+ Send a Pong_.
+
+ .. _Pong: https://www.rfc-editor.org/rfc/rfc6455.html#section-5.5.3
+
+ An unsolicited pong may serve as a unidirectional heartbeat.
+
+ Args:
+ data: Payload of the pong. A :class:`str` will be encoded to UTF-8.
+
+ Raises:
+ ConnectionClosed: When the connection is closed.
+
+ """
+ data = prepare_ctrl(data)
+
+ with self.send_context():
+ self.protocol.send_pong(data)
+
+ # Private methods
+
+ def process_event(self, event: Event) -> None:
+ """
+ Process one incoming event.
+
+ This method is overridden in subclasses to handle the handshake.
+
+ """
+ assert isinstance(event, Frame)
+ if event.opcode in DATA_OPCODES:
+ self.recv_messages.put(event)
+
+ if event.opcode is Opcode.PONG:
+ self.acknowledge_pings(bytes(event.data))
+
+ def acknowledge_pings(self, data: bytes) -> None:
+ """
+ Acknowledge pings when receiving a pong.
+
+ """
+ with self.protocol_mutex:
+ # Ignore unsolicited pong.
+ if data not in self.pings:
+ return
+ # Sending a pong for only the most recent ping is legal.
+ # Acknowledge all previous pings too in that case.
+ ping_id = None
+ ping_ids = []
+ for ping_id, ping in self.pings.items():
+ ping_ids.append(ping_id)
+ ping.set()
+ if ping_id == data:
+ break
+ else:
+ raise AssertionError("solicited pong not found in pings")
+ # Remove acknowledged pings from self.pings.
+ for ping_id in ping_ids:
+ del self.pings[ping_id]
+
+ def recv_events(self) -> None:
+ """
+ Read incoming data from the socket and process events.
+
+ Run this method in a thread as long as the connection is alive.
+
+ ``recv_events()`` exits immediately when the ``self.socket`` is closed.
+
+ """
+ try:
+ while True:
+ try:
+ if self.close_deadline is not None:
+ self.socket.settimeout(self.close_deadline.timeout())
+ data = self.socket.recv(self.recv_bufsize)
+ except Exception as exc:
+ if self.debug:
+ self.logger.debug("error while receiving data", exc_info=True)
+ # When the closing handshake is initiated by our side,
+ # recv() may block until send_context() closes the socket.
+ # In that case, send_context() already set recv_events_exc.
+ # Calling set_recv_events_exc() avoids overwriting it.
+ with self.protocol_mutex:
+ self.set_recv_events_exc(exc)
+ break
+
+ if data == b"":
+ break
+
+ # Acquire the connection lock.
+ with self.protocol_mutex:
+ # Feed incoming data to the connection.
+ self.protocol.receive_data(data)
+
+ # This isn't expected to raise an exception.
+ events = self.protocol.events_received()
+
+ # Write outgoing data to the socket.
+ try:
+ self.send_data()
+ except Exception as exc:
+ if self.debug:
+ self.logger.debug("error while sending data", exc_info=True)
+ # Similarly to the above, avoid overriding an exception
+ # set by send_context(), in case of a race condition
+ # i.e. send_context() closes the socket after recv()
+ # returns above but before send_data() calls send().
+ self.set_recv_events_exc(exc)
+ break
+
+ if self.protocol.close_expected():
+ # If the connection is expected to close soon, set the
+ # close deadline based on the close timeout.
+ if self.close_deadline is None:
+ self.close_deadline = Deadline(self.close_timeout)
+
+ # Unlock conn_mutex before processing events. Else, the
+ # application can't send messages in response to events.
+
+ # If self.send_data raised an exception, then events are lost.
+ # Given that automatic responses write small amounts of data,
+ # this should be uncommon, so we don't handle the edge case.
+
+ try:
+ for event in events:
+ # This may raise EOFError if the closing handshake
+ # times out while a message is waiting to be read.
+ self.process_event(event)
+ except EOFError:
+ break
+
+ # Breaking out of the while True: ... loop means that we believe
+ # that the socket doesn't work anymore.
+ with self.protocol_mutex:
+ # Feed the end of the data stream to the connection.
+ self.protocol.receive_eof()
+
+ # This isn't expected to generate events.
+ assert not self.protocol.events_received()
+
+ # There is no error handling because send_data() can only write
+ # the end of the data stream here and it handles errors itself.
+ self.send_data()
+
+ except Exception as exc:
+ # This branch should never run. It's a safety net in case of bugs.
+ self.logger.error("unexpected internal error", exc_info=True)
+ with self.protocol_mutex:
+ self.set_recv_events_exc(exc)
+ # We don't know where we crashed. Force protocol state to CLOSED.
+ self.protocol.state = CLOSED
+ finally:
+ # This isn't expected to raise an exception.
+ self.close_socket()
+
+ @contextlib.contextmanager
+ def send_context(
+ self,
+ *,
+ expected_state: State = OPEN, # CONNECTING during the opening handshake
+ ) -> Iterator[None]:
+ """
+ Create a context for writing to the connection from user code.
+
+ On entry, :meth:`send_context` acquires the connection lock and checks
+ that the connection is open; on exit, it writes outgoing data to the
+ socket::
+
+ with self.send_context():
+ self.protocol.send_text(message.encode("utf-8"))
+
+ When the connection isn't open on entry, when the connection is expected
+ to close on exit, or when an unexpected error happens, terminating the
+ connection, :meth:`send_context` waits until the connection is closed
+ then raises :exc:`~websockets.exceptions.ConnectionClosed`.
+
+ """
+ # Should we wait until the connection is closed?
+ wait_for_close = False
+ # Should we close the socket and raise ConnectionClosed?
+ raise_close_exc = False
+ # What exception should we chain ConnectionClosed to?
+ original_exc: Optional[BaseException] = None
+
+ # Acquire the protocol lock.
+ with self.protocol_mutex:
+ if self.protocol.state is expected_state:
+ # Let the caller interact with the protocol.
+ try:
+ yield
+ except (ProtocolError, RuntimeError):
+ # The protocol state wasn't changed. Exit immediately.
+ raise
+ except Exception as exc:
+ self.logger.error("unexpected internal error", exc_info=True)
+ # This branch should never run. It's a safety net in case of
+ # bugs. Since we don't know what happened, we will close the
+ # connection and raise the exception to the caller.
+ wait_for_close = False
+ raise_close_exc = True
+ original_exc = exc
+ else:
+ # Check if the connection is expected to close soon.
+ if self.protocol.close_expected():
+ wait_for_close = True
+ # If the connection is expected to close soon, set the
+ # close deadline based on the close timeout.
+
+ # Since we tested earlier that protocol.state was OPEN
+ # (or CONNECTING) and we didn't release protocol_mutex,
+ # it is certain that self.close_deadline is still None.
+ assert self.close_deadline is None
+ self.close_deadline = Deadline(self.close_timeout)
+ # Write outgoing data to the socket.
+ try:
+ self.send_data()
+ except Exception as exc:
+ if self.debug:
+ self.logger.debug("error while sending data", exc_info=True)
+ # While the only expected exception here is OSError,
+ # other exceptions would be treated identically.
+ wait_for_close = False
+ raise_close_exc = True
+ original_exc = exc
+
+ else: # self.protocol.state is not expected_state
+ # Minor layering violation: we assume that the connection
+ # will be closing soon if it isn't in the expected state.
+ wait_for_close = True
+ raise_close_exc = True
+
+ # To avoid a deadlock, release the connection lock by exiting the
+ # context manager before waiting for recv_events() to terminate.
+
+ # If the connection is expected to close soon and the close timeout
+ # elapses, close the socket to terminate the connection.
+ if wait_for_close:
+ if self.close_deadline is None:
+ timeout = self.close_timeout
+ else:
+ # Thread.join() returns immediately if timeout is negative.
+ timeout = self.close_deadline.timeout(raise_if_elapsed=False)
+ self.recv_events_thread.join(timeout)
+
+ if self.recv_events_thread.is_alive():
+ # There's no risk to overwrite another error because
+ # original_exc is never set when wait_for_close is True.
+ assert original_exc is None
+ original_exc = TimeoutError("timed out while closing connection")
+ # Set recv_events_exc before closing the socket in order to get
+ # proper exception reporting.
+ raise_close_exc = True
+ with self.protocol_mutex:
+ self.set_recv_events_exc(original_exc)
+
+ # If an error occurred, close the socket to terminate the connection and
+ # raise an exception.
+ if raise_close_exc:
+ self.close_socket()
+ self.recv_events_thread.join()
+ raise self.protocol.close_exc from original_exc
+
+ def send_data(self) -> None:
+ """
+ Send outgoing data.
+
+ This method requires holding protocol_mutex.
+
+ Raises:
+ OSError: When a socket operations fails.
+
+ """
+ assert self.protocol_mutex.locked()
+ for data in self.protocol.data_to_send():
+ if data:
+ if self.close_deadline is not None:
+ self.socket.settimeout(self.close_deadline.timeout())
+ self.socket.sendall(data)
+ else:
+ try:
+ self.socket.shutdown(socket.SHUT_WR)
+ except OSError: # socket already closed
+ pass
+
+ def set_recv_events_exc(self, exc: Optional[BaseException]) -> None:
+ """
+ Set recv_events_exc, if not set yet.
+
+ This method requires holding protocol_mutex.
+
+ """
+ assert self.protocol_mutex.locked()
+ if self.recv_events_exc is None:
+ self.recv_events_exc = exc
+
+ def close_socket(self) -> None:
+ """
+ Shutdown and close socket. Close message assembler.
+
+ Calling close_socket() guarantees that recv_events() terminates. Indeed,
+ recv_events() may block only on socket.recv() or on recv_messages.put().
+
+ """
+ # shutdown() is required to interrupt recv() on Linux.
+ try:
+ self.socket.shutdown(socket.SHUT_RDWR)
+ except OSError:
+ pass # socket is already closed
+ self.socket.close()
+ self.recv_messages.close()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/messages.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/messages.py
new file mode 100644
index 0000000000..67a22313ca
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/messages.py
@@ -0,0 +1,281 @@
+from __future__ import annotations
+
+import codecs
+import queue
+import threading
+from typing import Iterator, List, Optional, cast
+
+from ..frames import Frame, Opcode
+from ..typing import Data
+
+
+__all__ = ["Assembler"]
+
+UTF8Decoder = codecs.getincrementaldecoder("utf-8")
+
+
+class Assembler:
+ """
+ Assemble messages from frames.
+
+ """
+
+ def __init__(self) -> None:
+ # Serialize reads and writes -- except for reads via synchronization
+ # primitives provided by the threading and queue modules.
+ self.mutex = threading.Lock()
+
+ # We create a latch with two events to ensure proper interleaving of
+ # writing and reading messages.
+ # put() sets this event to tell get() that a message can be fetched.
+ self.message_complete = threading.Event()
+ # get() sets this event to let put() that the message was fetched.
+ self.message_fetched = threading.Event()
+
+ # This flag prevents concurrent calls to get() by user code.
+ self.get_in_progress = False
+ # This flag prevents concurrent calls to put() by library code.
+ self.put_in_progress = False
+
+ # Decoder for text frames, None for binary frames.
+ self.decoder: Optional[codecs.IncrementalDecoder] = None
+
+ # Buffer of frames belonging to the same message.
+ self.chunks: List[Data] = []
+
+ # When switching from "buffering" to "streaming", we use a thread-safe
+ # queue for transferring frames from the writing thread (library code)
+ # to the reading thread (user code). We're buffering when chunks_queue
+ # is None and streaming when it's a SimpleQueue. None is a sentinel
+ # value marking the end of the stream, superseding message_complete.
+
+ # Stream data from frames belonging to the same message.
+ # Remove quotes around type when dropping Python < 3.9.
+ self.chunks_queue: Optional["queue.SimpleQueue[Optional[Data]]"] = None
+
+ # This flag marks the end of the stream.
+ self.closed = False
+
+ def get(self, timeout: Optional[float] = None) -> Data:
+ """
+ Read the next message.
+
+ :meth:`get` returns a single :class:`str` or :class:`bytes`.
+
+ If the message is fragmented, :meth:`get` waits until the last frame is
+ received, then it reassembles the message and returns it. To receive
+ messages frame by frame, use :meth:`get_iter` instead.
+
+ Args:
+ timeout: If a timeout is provided and elapses before a complete
+ message is received, :meth:`get` raises :exc:`TimeoutError`.
+
+ Raises:
+ EOFError: If the stream of frames has ended.
+ RuntimeError: If two threads run :meth:`get` or :meth:``get_iter`
+ concurrently.
+
+ """
+ with self.mutex:
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ if self.get_in_progress:
+ raise RuntimeError("get or get_iter is already running")
+
+ self.get_in_progress = True
+
+ # If the message_complete event isn't set yet, release the lock to
+ # allow put() to run and eventually set it.
+ # Locking with get_in_progress ensures only one thread can get here.
+ completed = self.message_complete.wait(timeout)
+
+ with self.mutex:
+ self.get_in_progress = False
+
+ # Waiting for a complete message timed out.
+ if not completed:
+ raise TimeoutError(f"timed out in {timeout:.1f}s")
+
+ # get() was unblocked by close() rather than put().
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ assert self.message_complete.is_set()
+ self.message_complete.clear()
+
+ joiner: Data = b"" if self.decoder is None else ""
+ # mypy cannot figure out that chunks have the proper type.
+ message: Data = joiner.join(self.chunks) # type: ignore
+
+ assert not self.message_fetched.is_set()
+ self.message_fetched.set()
+
+ self.chunks = []
+ assert self.chunks_queue is None
+
+ return message
+
+ def get_iter(self) -> Iterator[Data]:
+ """
+ Stream the next message.
+
+ Iterating the return value of :meth:`get_iter` yields a :class:`str` or
+ :class:`bytes` for each frame in the message.
+
+ The iterator must be fully consumed before calling :meth:`get_iter` or
+ :meth:`get` again. Else, :exc:`RuntimeError` is raised.
+
+ This method only makes sense for fragmented messages. If messages aren't
+ fragmented, use :meth:`get` instead.
+
+ Raises:
+ EOFError: If the stream of frames has ended.
+ RuntimeError: If two threads run :meth:`get` or :meth:``get_iter`
+ concurrently.
+
+ """
+ with self.mutex:
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ if self.get_in_progress:
+ raise RuntimeError("get or get_iter is already running")
+
+ chunks = self.chunks
+ self.chunks = []
+ self.chunks_queue = cast(
+ # Remove quotes around type when dropping Python < 3.9.
+ "queue.SimpleQueue[Optional[Data]]",
+ queue.SimpleQueue(),
+ )
+
+ # Sending None in chunk_queue supersedes setting message_complete
+ # when switching to "streaming". If message is already complete
+ # when the switch happens, put() didn't send None, so we have to.
+ if self.message_complete.is_set():
+ self.chunks_queue.put(None)
+
+ self.get_in_progress = True
+
+ # Locking with get_in_progress ensures only one thread can get here.
+ yield from chunks
+ while True:
+ chunk = self.chunks_queue.get()
+ if chunk is None:
+ break
+ yield chunk
+
+ with self.mutex:
+ self.get_in_progress = False
+
+ assert self.message_complete.is_set()
+ self.message_complete.clear()
+
+ # get_iter() was unblocked by close() rather than put().
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ assert not self.message_fetched.is_set()
+ self.message_fetched.set()
+
+ assert self.chunks == []
+ self.chunks_queue = None
+
+ def put(self, frame: Frame) -> None:
+ """
+ Add ``frame`` to the next message.
+
+ When ``frame`` is the final frame in a message, :meth:`put` waits until
+ the message is fetched, either by calling :meth:`get` or by fully
+ consuming the return value of :meth:`get_iter`.
+
+ :meth:`put` assumes that the stream of frames respects the protocol. If
+ it doesn't, the behavior is undefined.
+
+ Raises:
+ EOFError: If the stream of frames has ended.
+ RuntimeError: If two threads run :meth:`put` concurrently.
+
+ """
+ with self.mutex:
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ if self.put_in_progress:
+ raise RuntimeError("put is already running")
+
+ if frame.opcode is Opcode.TEXT:
+ self.decoder = UTF8Decoder(errors="strict")
+ elif frame.opcode is Opcode.BINARY:
+ self.decoder = None
+ elif frame.opcode is Opcode.CONT:
+ pass
+ else:
+ # Ignore control frames.
+ return
+
+ data: Data
+ if self.decoder is not None:
+ data = self.decoder.decode(frame.data, frame.fin)
+ else:
+ data = frame.data
+
+ if self.chunks_queue is None:
+ self.chunks.append(data)
+ else:
+ self.chunks_queue.put(data)
+
+ if not frame.fin:
+ return
+
+ # Message is complete. Wait until it's fetched to return.
+
+ assert not self.message_complete.is_set()
+ self.message_complete.set()
+
+ if self.chunks_queue is not None:
+ self.chunks_queue.put(None)
+
+ assert not self.message_fetched.is_set()
+
+ self.put_in_progress = True
+
+ # Release the lock to allow get() to run and eventually set the event.
+ self.message_fetched.wait()
+
+ with self.mutex:
+ self.put_in_progress = False
+
+ assert self.message_fetched.is_set()
+ self.message_fetched.clear()
+
+ # put() was unblocked by close() rather than get() or get_iter().
+ if self.closed:
+ raise EOFError("stream of frames ended")
+
+ self.decoder = None
+
+ def close(self) -> None:
+ """
+ End the stream of frames.
+
+ Callling :meth:`close` concurrently with :meth:`get`, :meth:`get_iter`,
+ or :meth:`put` is safe. They will raise :exc:`EOFError`.
+
+ """
+ with self.mutex:
+ if self.closed:
+ return
+
+ self.closed = True
+
+ # Unblock get or get_iter.
+ if self.get_in_progress:
+ self.message_complete.set()
+ if self.chunks_queue is not None:
+ self.chunks_queue.put(None)
+
+ # Unblock put().
+ if self.put_in_progress:
+ self.message_fetched.set()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/server.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/server.py
new file mode 100644
index 0000000000..14767968c9
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/server.py
@@ -0,0 +1,530 @@
+from __future__ import annotations
+
+import http
+import logging
+import os
+import selectors
+import socket
+import ssl
+import sys
+import threading
+from types import TracebackType
+from typing import Any, Callable, Optional, Sequence, Type
+
+from websockets.frames import CloseCode
+
+from ..extensions.base import ServerExtensionFactory
+from ..extensions.permessage_deflate import enable_server_permessage_deflate
+from ..headers import validate_subprotocols
+from ..http import USER_AGENT
+from ..http11 import Request, Response
+from ..protocol import CONNECTING, OPEN, Event
+from ..server import ServerProtocol
+from ..typing import LoggerLike, Origin, Subprotocol
+from .connection import Connection
+from .utils import Deadline
+
+
+__all__ = ["serve", "unix_serve", "ServerConnection", "WebSocketServer"]
+
+
+class ServerConnection(Connection):
+ """
+ Threaded implementation of a WebSocket server connection.
+
+ :class:`ServerConnection` provides :meth:`recv` and :meth:`send` methods for
+ receiving and sending messages.
+
+ It supports iteration to receive messages::
+
+ for message in websocket:
+ process(message)
+
+ The iterator exits normally when the connection is closed with close code
+ 1000 (OK) or 1001 (going away) or without a close code. It raises a
+ :exc:`~websockets.exceptions.ConnectionClosedError` when the connection is
+ closed with any other code.
+
+ Args:
+ socket: Socket connected to a WebSocket client.
+ protocol: Sans-I/O connection.
+ close_timeout: Timeout for closing the connection in seconds.
+
+ """
+
+ def __init__(
+ self,
+ socket: socket.socket,
+ protocol: ServerProtocol,
+ *,
+ close_timeout: Optional[float] = 10,
+ ) -> None:
+ self.protocol: ServerProtocol
+ self.request_rcvd = threading.Event()
+ super().__init__(
+ socket,
+ protocol,
+ close_timeout=close_timeout,
+ )
+
+ def handshake(
+ self,
+ process_request: Optional[
+ Callable[
+ [ServerConnection, Request],
+ Optional[Response],
+ ]
+ ] = None,
+ process_response: Optional[
+ Callable[
+ [ServerConnection, Request, Response],
+ Optional[Response],
+ ]
+ ] = None,
+ server_header: Optional[str] = USER_AGENT,
+ timeout: Optional[float] = None,
+ ) -> None:
+ """
+ Perform the opening handshake.
+
+ """
+ if not self.request_rcvd.wait(timeout):
+ self.close_socket()
+ self.recv_events_thread.join()
+ raise TimeoutError("timed out during handshake")
+
+ if self.request is None:
+ self.close_socket()
+ self.recv_events_thread.join()
+ raise ConnectionError("connection closed during handshake")
+
+ with self.send_context(expected_state=CONNECTING):
+ self.response = None
+
+ if process_request is not None:
+ try:
+ self.response = process_request(self, self.request)
+ except Exception as exc:
+ self.protocol.handshake_exc = exc
+ self.logger.error("opening handshake failed", exc_info=True)
+ self.response = self.protocol.reject(
+ http.HTTPStatus.INTERNAL_SERVER_ERROR,
+ (
+ "Failed to open a WebSocket connection.\n"
+ "See server log for more information.\n"
+ ),
+ )
+
+ if self.response is None:
+ self.response = self.protocol.accept(self.request)
+
+ if server_header is not None:
+ self.response.headers["Server"] = server_header
+
+ if process_response is not None:
+ try:
+ response = process_response(self, self.request, self.response)
+ except Exception as exc:
+ self.protocol.handshake_exc = exc
+ self.logger.error("opening handshake failed", exc_info=True)
+ self.response = self.protocol.reject(
+ http.HTTPStatus.INTERNAL_SERVER_ERROR,
+ (
+ "Failed to open a WebSocket connection.\n"
+ "See server log for more information.\n"
+ ),
+ )
+ else:
+ if response is not None:
+ self.response = response
+
+ self.protocol.send_response(self.response)
+
+ if self.protocol.state is not OPEN:
+ self.recv_events_thread.join(self.close_timeout)
+ self.close_socket()
+ self.recv_events_thread.join()
+
+ if self.protocol.handshake_exc is not None:
+ raise self.protocol.handshake_exc
+
+ def process_event(self, event: Event) -> None:
+ """
+ Process one incoming event.
+
+ """
+ # First event - handshake request.
+ if self.request is None:
+ assert isinstance(event, Request)
+ self.request = event
+ self.request_rcvd.set()
+ # Later events - frames.
+ else:
+ super().process_event(event)
+
+ def recv_events(self) -> None:
+ """
+ Read incoming data from the socket and process events.
+
+ """
+ try:
+ super().recv_events()
+ finally:
+ # If the connection is closed during the handshake, unblock it.
+ self.request_rcvd.set()
+
+
+class WebSocketServer:
+ """
+ WebSocket server returned by :func:`serve`.
+
+ This class mirrors the API of :class:`~socketserver.BaseServer`, notably the
+ :meth:`~socketserver.BaseServer.serve_forever` and
+ :meth:`~socketserver.BaseServer.shutdown` methods, as well as the context
+ manager protocol.
+
+ Args:
+ socket: Server socket listening for new connections.
+ handler: Handler for one connection. Receives the socket and address
+ returned by :meth:`~socket.socket.accept`.
+ logger: Logger for this server.
+
+ """
+
+ def __init__(
+ self,
+ socket: socket.socket,
+ handler: Callable[[socket.socket, Any], None],
+ logger: Optional[LoggerLike] = None,
+ ):
+ self.socket = socket
+ self.handler = handler
+ if logger is None:
+ logger = logging.getLogger("websockets.server")
+ self.logger = logger
+ if sys.platform != "win32":
+ self.shutdown_watcher, self.shutdown_notifier = os.pipe()
+
+ def serve_forever(self) -> None:
+ """
+ See :meth:`socketserver.BaseServer.serve_forever`.
+
+ This method doesn't return. Calling :meth:`shutdown` from another thread
+ stops the server.
+
+ Typical use::
+
+ with serve(...) as server:
+ server.serve_forever()
+
+ """
+ poller = selectors.DefaultSelector()
+ poller.register(self.socket, selectors.EVENT_READ)
+ if sys.platform != "win32":
+ poller.register(self.shutdown_watcher, selectors.EVENT_READ)
+
+ while True:
+ poller.select()
+ try:
+ # If the socket is closed, this will raise an exception and exit
+ # the loop. So we don't need to check the return value of select().
+ sock, addr = self.socket.accept()
+ except OSError:
+ break
+ thread = threading.Thread(target=self.handler, args=(sock, addr))
+ thread.start()
+
+ def shutdown(self) -> None:
+ """
+ See :meth:`socketserver.BaseServer.shutdown`.
+
+ """
+ self.socket.close()
+ if sys.platform != "win32":
+ os.write(self.shutdown_notifier, b"x")
+
+ def fileno(self) -> int:
+ """
+ See :meth:`socketserver.BaseServer.fileno`.
+
+ """
+ return self.socket.fileno()
+
+ def __enter__(self) -> WebSocketServer:
+ return self
+
+ def __exit__(
+ self,
+ exc_type: Optional[Type[BaseException]],
+ exc_value: Optional[BaseException],
+ traceback: Optional[TracebackType],
+ ) -> None:
+ self.shutdown()
+
+
+def serve(
+ handler: Callable[[ServerConnection], None],
+ host: Optional[str] = None,
+ port: Optional[int] = None,
+ *,
+ # TCP/TLS — unix and path are only for unix_serve()
+ sock: Optional[socket.socket] = None,
+ ssl_context: Optional[ssl.SSLContext] = None,
+ unix: bool = False,
+ path: Optional[str] = None,
+ # WebSocket
+ origins: Optional[Sequence[Optional[Origin]]] = None,
+ extensions: Optional[Sequence[ServerExtensionFactory]] = None,
+ subprotocols: Optional[Sequence[Subprotocol]] = None,
+ select_subprotocol: Optional[
+ Callable[
+ [ServerConnection, Sequence[Subprotocol]],
+ Optional[Subprotocol],
+ ]
+ ] = None,
+ process_request: Optional[
+ Callable[
+ [ServerConnection, Request],
+ Optional[Response],
+ ]
+ ] = None,
+ process_response: Optional[
+ Callable[
+ [ServerConnection, Request, Response],
+ Optional[Response],
+ ]
+ ] = None,
+ server_header: Optional[str] = USER_AGENT,
+ compression: Optional[str] = "deflate",
+ # Timeouts
+ open_timeout: Optional[float] = 10,
+ close_timeout: Optional[float] = 10,
+ # Limits
+ max_size: Optional[int] = 2**20,
+ # Logging
+ logger: Optional[LoggerLike] = None,
+ # Escape hatch for advanced customization
+ create_connection: Optional[Type[ServerConnection]] = None,
+) -> WebSocketServer:
+ """
+ Create a WebSocket server listening on ``host`` and ``port``.
+
+ Whenever a client connects, the server creates a :class:`ServerConnection`,
+ performs the opening handshake, and delegates to the ``handler``.
+
+ The handler receives a :class:`ServerConnection` instance, which you can use
+ to send and receive messages.
+
+ Once the handler completes, either normally or with an exception, the server
+ performs the closing handshake and closes the connection.
+
+ :class:`WebSocketServer` mirrors the API of
+ :class:`~socketserver.BaseServer`. Treat it as a context manager to ensure
+ that it will be closed and call the :meth:`~WebSocketServer.serve_forever`
+ method to serve requests::
+
+ def handler(websocket):
+ ...
+
+ with websockets.sync.server.serve(handler, ...) as server:
+ server.serve_forever()
+
+ Args:
+ handler: Connection handler. It receives the WebSocket connection,
+ which is a :class:`ServerConnection`, in argument.
+ host: Network interfaces the server binds to.
+ See :func:`~socket.create_server` for details.
+ port: TCP port the server listens on.
+ See :func:`~socket.create_server` for details.
+ sock: Preexisting TCP socket. ``sock`` replaces ``host`` and ``port``.
+ You may call :func:`socket.create_server` to create a suitable TCP
+ socket.
+ ssl_context: Configuration for enabling TLS on the connection.
+ origins: Acceptable values of the ``Origin`` header, for defending
+ against Cross-Site WebSocket Hijacking attacks. Include :obj:`None`
+ in the list if the lack of an origin is acceptable.
+ extensions: List of supported extensions, in order in which they
+ should be negotiated and run.
+ subprotocols: List of supported subprotocols, in order of decreasing
+ preference.
+ select_subprotocol: Callback for selecting a subprotocol among
+ those supported by the client and the server. It receives a
+ :class:`ServerConnection` (not a
+ :class:`~websockets.server.ServerProtocol`!) instance and a list of
+ subprotocols offered by the client. Other than the first argument,
+ it has the same behavior as the
+ :meth:`ServerProtocol.select_subprotocol
+ <websockets.server.ServerProtocol.select_subprotocol>` method.
+ process_request: Intercept the request during the opening handshake.
+ Return an HTTP response to force the response or :obj:`None` to
+ continue normally. When you force an HTTP 101 Continue response,
+ the handshake is successful. Else, the connection is aborted.
+ process_response: Intercept the response during the opening handshake.
+ Return an HTTP response to force the response or :obj:`None` to
+ continue normally. When you force an HTTP 101 Continue response,
+ the handshake is successful. Else, the connection is aborted.
+ server_header: Value of the ``Server`` response header.
+ It defaults to ``"Python/x.y.z websockets/X.Y"``. Setting it to
+ :obj:`None` removes the header.
+ compression: The "permessage-deflate" extension is enabled by default.
+ Set ``compression`` to :obj:`None` to disable it. See the
+ :doc:`compression guide <../../topics/compression>` for details.
+ open_timeout: Timeout for opening connections in seconds.
+ :obj:`None` disables the timeout.
+ close_timeout: Timeout for closing connections in seconds.
+ :obj:`None` disables the timeout.
+ max_size: Maximum size of incoming messages in bytes.
+ :obj:`None` disables the limit.
+ logger: Logger for this server.
+ It defaults to ``logging.getLogger("websockets.server")``. See the
+ :doc:`logging guide <../../topics/logging>` for details.
+ create_connection: Factory for the :class:`ServerConnection` managing
+ the connection. Set it to a wrapper or a subclass to customize
+ connection handling.
+ """
+
+ # Process parameters
+
+ if subprotocols is not None:
+ validate_subprotocols(subprotocols)
+
+ if compression == "deflate":
+ extensions = enable_server_permessage_deflate(extensions)
+ elif compression is not None:
+ raise ValueError(f"unsupported compression: {compression}")
+
+ if create_connection is None:
+ create_connection = ServerConnection
+
+ # Bind socket and listen
+
+ if sock is None:
+ if unix:
+ if path is None:
+ raise TypeError("missing path argument")
+ sock = socket.create_server(path, family=socket.AF_UNIX)
+ else:
+ sock = socket.create_server((host, port))
+ else:
+ if path is not None:
+ raise TypeError("path and sock arguments are incompatible")
+
+ # Initialize TLS wrapper
+
+ if ssl_context is not None:
+ sock = ssl_context.wrap_socket(
+ sock,
+ server_side=True,
+ # Delay TLS handshake until after we set a timeout on the socket.
+ do_handshake_on_connect=False,
+ )
+
+ # Define request handler
+
+ def conn_handler(sock: socket.socket, addr: Any) -> None:
+ # Calculate timeouts on the TLS and WebSocket handshakes.
+ # The TLS timeout must be set on the socket, then removed
+ # to avoid conflicting with the WebSocket timeout in handshake().
+ deadline = Deadline(open_timeout)
+
+ try:
+ # Disable Nagle algorithm
+
+ if not unix:
+ sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, True)
+
+ # Perform TLS handshake
+
+ if ssl_context is not None:
+ sock.settimeout(deadline.timeout())
+ assert isinstance(sock, ssl.SSLSocket) # mypy cannot figure this out
+ sock.do_handshake()
+ sock.settimeout(None)
+
+ # Create a closure so that select_subprotocol has access to self.
+
+ protocol_select_subprotocol: Optional[
+ Callable[
+ [ServerProtocol, Sequence[Subprotocol]],
+ Optional[Subprotocol],
+ ]
+ ] = None
+
+ if select_subprotocol is not None:
+
+ def protocol_select_subprotocol(
+ protocol: ServerProtocol,
+ subprotocols: Sequence[Subprotocol],
+ ) -> Optional[Subprotocol]:
+ # mypy doesn't know that select_subprotocol is immutable.
+ assert select_subprotocol is not None
+ # Ensure this function is only used in the intended context.
+ assert protocol is connection.protocol
+ return select_subprotocol(connection, subprotocols)
+
+ # Initialize WebSocket connection
+
+ protocol = ServerProtocol(
+ origins=origins,
+ extensions=extensions,
+ subprotocols=subprotocols,
+ select_subprotocol=protocol_select_subprotocol,
+ state=CONNECTING,
+ max_size=max_size,
+ logger=logger,
+ )
+
+ # Initialize WebSocket protocol
+
+ assert create_connection is not None # help mypy
+ connection = create_connection(
+ sock,
+ protocol,
+ close_timeout=close_timeout,
+ )
+ # On failure, handshake() closes the socket, raises an exception, and
+ # logs it.
+ connection.handshake(
+ process_request,
+ process_response,
+ server_header,
+ deadline.timeout(),
+ )
+
+ except Exception:
+ sock.close()
+ return
+
+ try:
+ handler(connection)
+ except Exception:
+ protocol.logger.error("connection handler failed", exc_info=True)
+ connection.close(CloseCode.INTERNAL_ERROR)
+ else:
+ connection.close()
+
+ # Initialize server
+
+ return WebSocketServer(sock, conn_handler, logger)
+
+
+def unix_serve(
+ handler: Callable[[ServerConnection], Any],
+ path: Optional[str] = None,
+ **kwargs: Any,
+) -> WebSocketServer:
+ """
+ Create a WebSocket server listening on a Unix socket.
+
+ This function is identical to :func:`serve`, except the ``host`` and
+ ``port`` arguments are replaced by ``path``. It's only available on Unix.
+
+ It's useful for deploying a server behind a reverse proxy such as nginx.
+
+ Args:
+ handler: Connection handler. It receives the WebSocket connection,
+ which is a :class:`ServerConnection`, in argument.
+ path: File system path to the Unix socket.
+
+ """
+ return serve(handler, path=path, unix=True, **kwargs)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/utils.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/utils.py
new file mode 100644
index 0000000000..471f32e19d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/sync/utils.py
@@ -0,0 +1,46 @@
+from __future__ import annotations
+
+import time
+from typing import Optional
+
+
+__all__ = ["Deadline"]
+
+
+class Deadline:
+ """
+ Manage timeouts across multiple steps.
+
+ Args:
+ timeout: Time available in seconds or :obj:`None` if there is no limit.
+
+ """
+
+ def __init__(self, timeout: Optional[float]) -> None:
+ self.deadline: Optional[float]
+ if timeout is None:
+ self.deadline = None
+ else:
+ self.deadline = time.monotonic() + timeout
+
+ def timeout(self, *, raise_if_elapsed: bool = True) -> Optional[float]:
+ """
+ Calculate a timeout from a deadline.
+
+ Args:
+ raise_if_elapsed (bool): Whether to raise :exc:`TimeoutError`
+ if the deadline lapsed.
+
+ Raises:
+ TimeoutError: If the deadline lapsed.
+
+ Returns:
+ Time left in seconds or :obj:`None` if there is no limit.
+
+ """
+ if self.deadline is None:
+ return None
+ timeout = self.deadline - time.monotonic()
+ if raise_if_elapsed and timeout <= 0:
+ raise TimeoutError("timed out")
+ return timeout
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/typing.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/typing.py
index e672ba0069..cc3e3ec0d9 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/typing.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/typing.py
@@ -1,5 +1,6 @@
from __future__ import annotations
+import http
import logging
from typing import List, NewType, Optional, Tuple, Union
@@ -7,6 +8,7 @@ from typing import List, NewType, Optional, Tuple, Union
__all__ = [
"Data",
"LoggerLike",
+ "StatusLike",
"Origin",
"Subprotocol",
"ExtensionName",
@@ -30,6 +32,11 @@ LoggerLike = Union[logging.Logger, logging.LoggerAdapter]
"""Types accepted where a :class:`~logging.Logger` is expected."""
+StatusLike = Union[http.HTTPStatus, int]
+"""
+Types accepted where an :class:`~http.HTTPStatus` is expected."""
+
+
Origin = NewType("Origin", str)
"""Value of a ``Origin`` header."""
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/uri.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/uri.py
index fff0c38064..385090f66a 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/uri.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/uri.py
@@ -33,8 +33,8 @@ class WebSocketURI:
port: int
path: str
query: str
- username: Optional[str]
- password: Optional[str]
+ username: Optional[str] = None
+ password: Optional[str] = None
@property
def resource_name(self) -> str:
diff --git a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/version.py b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/version.py
index c30bfd68f3..d1c99458e2 100644
--- a/testing/web-platform/tests/tools/third_party/websockets/src/websockets/version.py
+++ b/testing/web-platform/tests/tools/third_party/websockets/src/websockets/version.py
@@ -1,5 +1,7 @@
from __future__ import annotations
+import importlib.metadata
+
__all__ = ["tag", "version", "commit"]
@@ -18,7 +20,7 @@ __all__ = ["tag", "version", "commit"]
released = True
-tag = version = commit = "10.3"
+tag = version = commit = "12.0"
if not released: # pragma: no cover
@@ -44,7 +46,11 @@ if not released: # pragma: no cover
text=True,
).stdout.strip()
# subprocess.run raises FileNotFoundError if git isn't on $PATH.
- except (FileNotFoundError, subprocess.CalledProcessError):
+ except (
+ FileNotFoundError,
+ subprocess.CalledProcessError,
+ subprocess.TimeoutExpired,
+ ):
pass
else:
description_re = r"[0-9.]+-([0-9]+)-(g[0-9a-f]{7,}(?:-dirty)?)"
@@ -56,8 +62,6 @@ if not released: # pragma: no cover
# Read version from package metadata if it is installed.
try:
- import importlib.metadata # move up when dropping Python 3.7
-
return importlib.metadata.version("websockets")
except ImportError:
pass
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/tests/__init__.py
new file mode 100644
index 0000000000..dd78609f5b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/__init__.py
@@ -0,0 +1,5 @@
+import logging
+
+
+# Avoid displaying stack traces at the ERROR logging level.
+logging.basicConfig(level=logging.CRITICAL)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/__init__.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_base.py b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_base.py
new file mode 100644
index 0000000000..b18ffb6fb8
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_base.py
@@ -0,0 +1,4 @@
+from websockets.extensions.base import *
+
+
+# Abstract classes don't provide any behavior to test.
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_permessage_deflate.py b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_permessage_deflate.py
new file mode 100644
index 0000000000..0e698566fb
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/test_permessage_deflate.py
@@ -0,0 +1,977 @@
+import dataclasses
+import unittest
+
+from websockets.exceptions import (
+ DuplicateParameter,
+ InvalidParameterName,
+ InvalidParameterValue,
+ NegotiationError,
+ PayloadTooBig,
+ ProtocolError,
+)
+from websockets.extensions.permessage_deflate import *
+from websockets.frames import (
+ OP_BINARY,
+ OP_CLOSE,
+ OP_CONT,
+ OP_PING,
+ OP_PONG,
+ OP_TEXT,
+ Close,
+ CloseCode,
+ Frame,
+)
+
+from .utils import ClientNoOpExtensionFactory, ServerNoOpExtensionFactory
+
+
+class PerMessageDeflateTestsMixin:
+ def assertExtensionEqual(self, extension1, extension2):
+ self.assertEqual(
+ extension1.remote_no_context_takeover,
+ extension2.remote_no_context_takeover,
+ )
+ self.assertEqual(
+ extension1.local_no_context_takeover,
+ extension2.local_no_context_takeover,
+ )
+ self.assertEqual(
+ extension1.remote_max_window_bits,
+ extension2.remote_max_window_bits,
+ )
+ self.assertEqual(
+ extension1.local_max_window_bits,
+ extension2.local_max_window_bits,
+ )
+
+
+class PerMessageDeflateTests(unittest.TestCase, PerMessageDeflateTestsMixin):
+ def setUp(self):
+ # Set up an instance of the permessage-deflate extension with the most
+ # common settings. Since the extension is symmetrical, this instance
+ # may be used for testing both encoding and decoding.
+ self.extension = PerMessageDeflate(False, False, 15, 15)
+
+ def test_name(self):
+ assert self.extension.name == "permessage-deflate"
+
+ def test_repr(self):
+ self.assertExtensionEqual(eval(repr(self.extension)), self.extension)
+
+ # Control frames aren't encoded or decoded.
+
+ def test_no_encode_decode_ping_frame(self):
+ frame = Frame(OP_PING, b"")
+
+ self.assertEqual(self.extension.encode(frame), frame)
+
+ self.assertEqual(self.extension.decode(frame), frame)
+
+ def test_no_encode_decode_pong_frame(self):
+ frame = Frame(OP_PONG, b"")
+
+ self.assertEqual(self.extension.encode(frame), frame)
+
+ self.assertEqual(self.extension.decode(frame), frame)
+
+ def test_no_encode_decode_close_frame(self):
+ frame = Frame(OP_CLOSE, Close(CloseCode.NORMAL_CLOSURE, "").serialize())
+
+ self.assertEqual(self.extension.encode(frame), frame)
+
+ self.assertEqual(self.extension.decode(frame), frame)
+
+ # Data frames are encoded and decoded.
+
+ def test_encode_decode_text_frame(self):
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ enc_frame = self.extension.encode(frame)
+
+ self.assertEqual(
+ enc_frame,
+ dataclasses.replace(frame, rsv1=True, data=b"JNL;\xbc\x12\x00"),
+ )
+
+ dec_frame = self.extension.decode(enc_frame)
+
+ self.assertEqual(dec_frame, frame)
+
+ def test_encode_decode_binary_frame(self):
+ frame = Frame(OP_BINARY, b"tea")
+
+ enc_frame = self.extension.encode(frame)
+
+ self.assertEqual(
+ enc_frame,
+ dataclasses.replace(frame, rsv1=True, data=b"*IM\x04\x00"),
+ )
+
+ dec_frame = self.extension.decode(enc_frame)
+
+ self.assertEqual(dec_frame, frame)
+
+ def test_encode_decode_fragmented_text_frame(self):
+ frame1 = Frame(OP_TEXT, "café".encode("utf-8"), fin=False)
+ frame2 = Frame(OP_CONT, " & ".encode("utf-8"), fin=False)
+ frame3 = Frame(OP_CONT, "croissants".encode("utf-8"))
+
+ enc_frame1 = self.extension.encode(frame1)
+ enc_frame2 = self.extension.encode(frame2)
+ enc_frame3 = self.extension.encode(frame3)
+
+ self.assertEqual(
+ enc_frame1,
+ dataclasses.replace(
+ frame1, rsv1=True, data=b"JNL;\xbc\x12\x00\x00\x00\xff\xff"
+ ),
+ )
+ self.assertEqual(
+ enc_frame2,
+ dataclasses.replace(frame2, data=b"RPS\x00\x00\x00\x00\xff\xff"),
+ )
+ self.assertEqual(
+ enc_frame3,
+ dataclasses.replace(frame3, data=b"J.\xca\xcf,.N\xcc+)\x06\x00"),
+ )
+
+ dec_frame1 = self.extension.decode(enc_frame1)
+ dec_frame2 = self.extension.decode(enc_frame2)
+ dec_frame3 = self.extension.decode(enc_frame3)
+
+ self.assertEqual(dec_frame1, frame1)
+ self.assertEqual(dec_frame2, frame2)
+ self.assertEqual(dec_frame3, frame3)
+
+ def test_encode_decode_fragmented_binary_frame(self):
+ frame1 = Frame(OP_TEXT, b"tea ", fin=False)
+ frame2 = Frame(OP_CONT, b"time")
+
+ enc_frame1 = self.extension.encode(frame1)
+ enc_frame2 = self.extension.encode(frame2)
+
+ self.assertEqual(
+ enc_frame1,
+ dataclasses.replace(
+ frame1, rsv1=True, data=b"*IMT\x00\x00\x00\x00\xff\xff"
+ ),
+ )
+ self.assertEqual(
+ enc_frame2,
+ dataclasses.replace(frame2, data=b"*\xc9\xccM\x05\x00"),
+ )
+
+ dec_frame1 = self.extension.decode(enc_frame1)
+ dec_frame2 = self.extension.decode(enc_frame2)
+
+ self.assertEqual(dec_frame1, frame1)
+ self.assertEqual(dec_frame2, frame2)
+
+ def test_no_decode_text_frame(self):
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ # Try decoding a frame that wasn't encoded.
+ self.assertEqual(self.extension.decode(frame), frame)
+
+ def test_no_decode_binary_frame(self):
+ frame = Frame(OP_TEXT, b"tea")
+
+ # Try decoding a frame that wasn't encoded.
+ self.assertEqual(self.extension.decode(frame), frame)
+
+ def test_no_decode_fragmented_text_frame(self):
+ frame1 = Frame(OP_TEXT, "café".encode("utf-8"), fin=False)
+ frame2 = Frame(OP_CONT, " & ".encode("utf-8"), fin=False)
+ frame3 = Frame(OP_CONT, "croissants".encode("utf-8"))
+
+ dec_frame1 = self.extension.decode(frame1)
+ dec_frame2 = self.extension.decode(frame2)
+ dec_frame3 = self.extension.decode(frame3)
+
+ self.assertEqual(dec_frame1, frame1)
+ self.assertEqual(dec_frame2, frame2)
+ self.assertEqual(dec_frame3, frame3)
+
+ def test_no_decode_fragmented_binary_frame(self):
+ frame1 = Frame(OP_TEXT, b"tea ", fin=False)
+ frame2 = Frame(OP_CONT, b"time")
+
+ dec_frame1 = self.extension.decode(frame1)
+ dec_frame2 = self.extension.decode(frame2)
+
+ self.assertEqual(dec_frame1, frame1)
+ self.assertEqual(dec_frame2, frame2)
+
+ def test_context_takeover(self):
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ enc_frame1 = self.extension.encode(frame)
+ enc_frame2 = self.extension.encode(frame)
+
+ self.assertEqual(enc_frame1.data, b"JNL;\xbc\x12\x00")
+ self.assertEqual(enc_frame2.data, b"J\x06\x11\x00\x00")
+
+ def test_remote_no_context_takeover(self):
+ # No context takeover when decoding messages.
+ self.extension = PerMessageDeflate(True, False, 15, 15)
+
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ enc_frame1 = self.extension.encode(frame)
+ enc_frame2 = self.extension.encode(frame)
+
+ self.assertEqual(enc_frame1.data, b"JNL;\xbc\x12\x00")
+ self.assertEqual(enc_frame2.data, b"J\x06\x11\x00\x00")
+
+ dec_frame1 = self.extension.decode(enc_frame1)
+ self.assertEqual(dec_frame1, frame)
+
+ with self.assertRaises(ProtocolError):
+ self.extension.decode(enc_frame2)
+
+ def test_local_no_context_takeover(self):
+ # No context takeover when encoding and decoding messages.
+ self.extension = PerMessageDeflate(True, True, 15, 15)
+
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ enc_frame1 = self.extension.encode(frame)
+ enc_frame2 = self.extension.encode(frame)
+
+ self.assertEqual(enc_frame1.data, b"JNL;\xbc\x12\x00")
+ self.assertEqual(enc_frame2.data, b"JNL;\xbc\x12\x00")
+
+ dec_frame1 = self.extension.decode(enc_frame1)
+ dec_frame2 = self.extension.decode(enc_frame2)
+
+ self.assertEqual(dec_frame1, frame)
+ self.assertEqual(dec_frame2, frame)
+
+ # Compression settings can be customized.
+
+ def test_compress_settings(self):
+ # Configure an extension so that no compression actually occurs.
+ extension = PerMessageDeflate(False, False, 15, 15, {"level": 0})
+
+ frame = Frame(OP_TEXT, "café".encode("utf-8"))
+
+ enc_frame = extension.encode(frame)
+
+ self.assertEqual(
+ enc_frame,
+ dataclasses.replace(
+ frame,
+ rsv1=True,
+ data=b"\x00\x05\x00\xfa\xffcaf\xc3\xa9\x00", # not compressed
+ ),
+ )
+
+ # Frames aren't decoded beyond max_size.
+
+ def test_decompress_max_size(self):
+ frame = Frame(OP_TEXT, ("a" * 20).encode("utf-8"))
+
+ enc_frame = self.extension.encode(frame)
+
+ self.assertEqual(enc_frame.data, b"JL\xc4\x04\x00\x00")
+
+ with self.assertRaises(PayloadTooBig):
+ self.extension.decode(enc_frame, max_size=10)
+
+
+class ClientPerMessageDeflateFactoryTests(
+ unittest.TestCase, PerMessageDeflateTestsMixin
+):
+ def test_name(self):
+ assert ClientPerMessageDeflateFactory.name == "permessage-deflate"
+
+ def test_init(self):
+ for config in [
+ (False, False, 8, None), # server_max_window_bits ≥ 8
+ (False, True, 15, None), # server_max_window_bits ≤ 15
+ (True, False, None, 8), # client_max_window_bits ≥ 8
+ (True, True, None, 15), # client_max_window_bits ≤ 15
+ (False, False, None, True), # client_max_window_bits
+ (False, False, None, None, {"memLevel": 4}),
+ ]:
+ with self.subTest(config=config):
+ # This does not raise an exception.
+ ClientPerMessageDeflateFactory(*config)
+
+ def test_init_error(self):
+ for config in [
+ (False, False, 7, 8), # server_max_window_bits < 8
+ (False, True, 8, 7), # client_max_window_bits < 8
+ (True, False, 16, 15), # server_max_window_bits > 15
+ (True, True, 15, 16), # client_max_window_bits > 15
+ (False, False, True, None), # server_max_window_bits
+ (False, False, None, None, {"wbits": 11}),
+ ]:
+ with self.subTest(config=config):
+ with self.assertRaises(ValueError):
+ ClientPerMessageDeflateFactory(*config)
+
+ def test_get_request_params(self):
+ for config, result in [
+ # Test without any parameter
+ (
+ (False, False, None, None),
+ [],
+ ),
+ # Test server_no_context_takeover
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", None)],
+ ),
+ # Test client_no_context_takeover
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", None)],
+ ),
+ # Test server_max_window_bits
+ (
+ (False, False, 10, None),
+ [("server_max_window_bits", "10")],
+ ),
+ # Test client_max_window_bits
+ (
+ (False, False, None, 10),
+ [("client_max_window_bits", "10")],
+ ),
+ (
+ (False, False, None, True),
+ [("client_max_window_bits", None)],
+ ),
+ # Test all parameters together
+ (
+ (True, True, 12, 12),
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "12"),
+ ("client_max_window_bits", "12"),
+ ],
+ ),
+ ]:
+ with self.subTest(config=config):
+ factory = ClientPerMessageDeflateFactory(*config)
+ self.assertEqual(factory.get_request_params(), result)
+
+ def test_process_response_params(self):
+ for config, response_params, result in [
+ # Test without any parameter
+ (
+ (False, False, None, None),
+ [],
+ (False, False, 15, 15),
+ ),
+ (
+ (False, False, None, None),
+ [("unknown", None)],
+ InvalidParameterName,
+ ),
+ # Test server_no_context_takeover
+ (
+ (False, False, None, None),
+ [("server_no_context_takeover", None)],
+ (True, False, 15, 15),
+ ),
+ (
+ (True, False, None, None),
+ [],
+ NegotiationError,
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", None)],
+ (True, False, 15, 15),
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", None)] * 2,
+ DuplicateParameter,
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", "42")],
+ InvalidParameterValue,
+ ),
+ # Test client_no_context_takeover
+ (
+ (False, False, None, None),
+ [("client_no_context_takeover", None)],
+ (False, True, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [],
+ (False, True, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", None)],
+ (False, True, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", None)] * 2,
+ DuplicateParameter,
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", "42")],
+ InvalidParameterValue,
+ ),
+ # Test server_max_window_bits
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "7")],
+ NegotiationError,
+ ),
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "10")],
+ (False, False, 10, 15),
+ ),
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "16")],
+ NegotiationError,
+ ),
+ (
+ (False, False, 12, None),
+ [],
+ NegotiationError,
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "10")],
+ (False, False, 10, 15),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "12")],
+ (False, False, 12, 15),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "13")],
+ NegotiationError,
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "12")] * 2,
+ DuplicateParameter,
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "42")],
+ InvalidParameterValue,
+ ),
+ # Test client_max_window_bits
+ (
+ (False, False, None, None),
+ [("client_max_window_bits", "10")],
+ NegotiationError,
+ ),
+ (
+ (False, False, None, True),
+ [],
+ (False, False, 15, 15),
+ ),
+ (
+ (False, False, None, True),
+ [("client_max_window_bits", "7")],
+ NegotiationError,
+ ),
+ (
+ (False, False, None, True),
+ [("client_max_window_bits", "10")],
+ (False, False, 15, 10),
+ ),
+ (
+ (False, False, None, True),
+ [("client_max_window_bits", "16")],
+ NegotiationError,
+ ),
+ (
+ (False, False, None, 12),
+ [],
+ (False, False, 15, 12),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "10")],
+ (False, False, 15, 10),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "12")],
+ (False, False, 15, 12),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "13")],
+ NegotiationError,
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "12")] * 2,
+ DuplicateParameter,
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "42")],
+ InvalidParameterValue,
+ ),
+ # Test all parameters together
+ (
+ (True, True, 12, 12),
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ (True, True, 10, 10),
+ ),
+ (
+ (False, False, None, True),
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ (True, True, 10, 10),
+ ),
+ (
+ (True, True, 12, 12),
+ [
+ ("server_no_context_takeover", None),
+ ("server_max_window_bits", "12"),
+ ],
+ (True, True, 12, 12),
+ ),
+ ]:
+ with self.subTest(config=config, response_params=response_params):
+ factory = ClientPerMessageDeflateFactory(*config)
+ if isinstance(result, type) and issubclass(result, Exception):
+ with self.assertRaises(result):
+ factory.process_response_params(response_params, [])
+ else:
+ extension = factory.process_response_params(response_params, [])
+ expected = PerMessageDeflate(*result)
+ self.assertExtensionEqual(extension, expected)
+
+ def test_process_response_params_deduplication(self):
+ factory = ClientPerMessageDeflateFactory(False, False, None, None)
+ with self.assertRaises(NegotiationError):
+ factory.process_response_params(
+ [], [PerMessageDeflate(False, False, 15, 15)]
+ )
+
+ def test_enable_client_permessage_deflate(self):
+ for extensions, (
+ expected_len,
+ expected_position,
+ expected_compress_settings,
+ ) in [
+ (
+ None,
+ (1, 0, {"memLevel": 5}),
+ ),
+ (
+ [],
+ (1, 0, {"memLevel": 5}),
+ ),
+ (
+ [ClientNoOpExtensionFactory()],
+ (2, 1, {"memLevel": 5}),
+ ),
+ (
+ [ClientPerMessageDeflateFactory(compress_settings={"memLevel": 7})],
+ (1, 0, {"memLevel": 7}),
+ ),
+ (
+ [
+ ClientPerMessageDeflateFactory(compress_settings={"memLevel": 7}),
+ ClientNoOpExtensionFactory(),
+ ],
+ (2, 0, {"memLevel": 7}),
+ ),
+ (
+ [
+ ClientNoOpExtensionFactory(),
+ ClientPerMessageDeflateFactory(compress_settings={"memLevel": 7}),
+ ],
+ (2, 1, {"memLevel": 7}),
+ ),
+ ]:
+ with self.subTest(extensions=extensions):
+ extensions = enable_client_permessage_deflate(extensions)
+ self.assertEqual(len(extensions), expected_len)
+ extension = extensions[expected_position]
+ self.assertIsInstance(extension, ClientPerMessageDeflateFactory)
+ self.assertEqual(
+ extension.compress_settings,
+ expected_compress_settings,
+ )
+
+
+class ServerPerMessageDeflateFactoryTests(
+ unittest.TestCase, PerMessageDeflateTestsMixin
+):
+ def test_name(self):
+ assert ServerPerMessageDeflateFactory.name == "permessage-deflate"
+
+ def test_init(self):
+ for config in [
+ (False, False, 8, None), # server_max_window_bits ≥ 8
+ (False, True, 15, None), # server_max_window_bits ≤ 15
+ (True, False, None, 8), # client_max_window_bits ≥ 8
+ (True, True, None, 15), # client_max_window_bits ≤ 15
+ (False, False, None, None, {"memLevel": 4}),
+ (False, False, None, 12, {}, True), # require_client_max_window_bits
+ ]:
+ with self.subTest(config=config):
+ # This does not raise an exception.
+ ServerPerMessageDeflateFactory(*config)
+
+ def test_init_error(self):
+ for config in [
+ (False, False, 7, 8), # server_max_window_bits < 8
+ (False, True, 8, 7), # client_max_window_bits < 8
+ (True, False, 16, 15), # server_max_window_bits > 15
+ (True, True, 15, 16), # client_max_window_bits > 15
+ (False, False, None, True), # client_max_window_bits
+ (False, False, True, None), # server_max_window_bits
+ (False, False, None, None, {"wbits": 11}),
+ (False, False, None, None, {}, True), # require_client_max_window_bits
+ ]:
+ with self.subTest(config=config):
+ with self.assertRaises(ValueError):
+ ServerPerMessageDeflateFactory(*config)
+
+ def test_process_request_params(self):
+ # Parameters in result appear swapped vs. config because the order is
+ # (remote, local) vs. (server, client).
+ for config, request_params, response_params, result in [
+ # Test without any parameter
+ (
+ (False, False, None, None),
+ [],
+ [],
+ (False, False, 15, 15),
+ ),
+ (
+ (False, False, None, None),
+ [("unknown", None)],
+ None,
+ InvalidParameterName,
+ ),
+ # Test server_no_context_takeover
+ (
+ (False, False, None, None),
+ [("server_no_context_takeover", None)],
+ [("server_no_context_takeover", None)],
+ (False, True, 15, 15),
+ ),
+ (
+ (True, False, None, None),
+ [],
+ [("server_no_context_takeover", None)],
+ (False, True, 15, 15),
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", None)],
+ [("server_no_context_takeover", None)],
+ (False, True, 15, 15),
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", None)] * 2,
+ None,
+ DuplicateParameter,
+ ),
+ (
+ (True, False, None, None),
+ [("server_no_context_takeover", "42")],
+ None,
+ InvalidParameterValue,
+ ),
+ # Test client_no_context_takeover
+ (
+ (False, False, None, None),
+ [("client_no_context_takeover", None)],
+ [("client_no_context_takeover", None)], # doesn't matter
+ (True, False, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [],
+ [("client_no_context_takeover", None)],
+ (True, False, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", None)],
+ [("client_no_context_takeover", None)], # doesn't matter
+ (True, False, 15, 15),
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", None)] * 2,
+ None,
+ DuplicateParameter,
+ ),
+ (
+ (False, True, None, None),
+ [("client_no_context_takeover", "42")],
+ None,
+ InvalidParameterValue,
+ ),
+ # Test server_max_window_bits
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "7")],
+ None,
+ NegotiationError,
+ ),
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "10")],
+ [("server_max_window_bits", "10")],
+ (False, False, 15, 10),
+ ),
+ (
+ (False, False, None, None),
+ [("server_max_window_bits", "16")],
+ None,
+ NegotiationError,
+ ),
+ (
+ (False, False, 12, None),
+ [],
+ [("server_max_window_bits", "12")],
+ (False, False, 15, 12),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "10")],
+ [("server_max_window_bits", "10")],
+ (False, False, 15, 10),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "12")],
+ [("server_max_window_bits", "12")],
+ (False, False, 15, 12),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "13")],
+ [("server_max_window_bits", "12")],
+ (False, False, 15, 12),
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "12")] * 2,
+ None,
+ DuplicateParameter,
+ ),
+ (
+ (False, False, 12, None),
+ [("server_max_window_bits", "42")],
+ None,
+ InvalidParameterValue,
+ ),
+ # Test client_max_window_bits
+ (
+ (False, False, None, None),
+ [("client_max_window_bits", None)],
+ [],
+ (False, False, 15, 15),
+ ),
+ (
+ (False, False, None, None),
+ [("client_max_window_bits", "7")],
+ None,
+ InvalidParameterValue,
+ ),
+ (
+ (False, False, None, None),
+ [("client_max_window_bits", "10")],
+ [("client_max_window_bits", "10")], # doesn't matter
+ (False, False, 10, 15),
+ ),
+ (
+ (False, False, None, None),
+ [("client_max_window_bits", "16")],
+ None,
+ InvalidParameterValue,
+ ),
+ (
+ (False, False, None, 12),
+ [],
+ [],
+ (False, False, 15, 15),
+ ),
+ (
+ (False, False, None, 12, {}, True),
+ [],
+ None,
+ NegotiationError,
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", None)],
+ [("client_max_window_bits", "12")],
+ (False, False, 12, 15),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "10")],
+ [("client_max_window_bits", "10")],
+ (False, False, 10, 15),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "12")],
+ [("client_max_window_bits", "12")], # doesn't matter
+ (False, False, 12, 15),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "13")],
+ [("client_max_window_bits", "12")], # doesn't matter
+ (False, False, 12, 15),
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "12")] * 2,
+ None,
+ DuplicateParameter,
+ ),
+ (
+ (False, False, None, 12),
+ [("client_max_window_bits", "42")],
+ None,
+ InvalidParameterValue,
+ ),
+ # Test all parameters together
+ (
+ (True, True, 12, 12),
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ (True, True, 10, 10),
+ ),
+ (
+ (False, False, None, None),
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "10"),
+ ("client_max_window_bits", "10"),
+ ],
+ (True, True, 10, 10),
+ ),
+ (
+ (True, True, 12, 12),
+ [("client_max_window_bits", None)],
+ [
+ ("server_no_context_takeover", None),
+ ("client_no_context_takeover", None),
+ ("server_max_window_bits", "12"),
+ ("client_max_window_bits", "12"),
+ ],
+ (True, True, 12, 12),
+ ),
+ ]:
+ with self.subTest(
+ config=config,
+ request_params=request_params,
+ response_params=response_params,
+ ):
+ factory = ServerPerMessageDeflateFactory(*config)
+ if isinstance(result, type) and issubclass(result, Exception):
+ with self.assertRaises(result):
+ factory.process_request_params(request_params, [])
+ else:
+ params, extension = factory.process_request_params(
+ request_params, []
+ )
+ self.assertEqual(params, response_params)
+ expected = PerMessageDeflate(*result)
+ self.assertExtensionEqual(extension, expected)
+
+ def test_process_response_params_deduplication(self):
+ factory = ServerPerMessageDeflateFactory(False, False, None, None)
+ with self.assertRaises(NegotiationError):
+ factory.process_request_params(
+ [], [PerMessageDeflate(False, False, 15, 15)]
+ )
+
+ def test_enable_server_permessage_deflate(self):
+ for extensions, (
+ expected_len,
+ expected_position,
+ expected_compress_settings,
+ ) in [
+ (
+ None,
+ (1, 0, {"memLevel": 5}),
+ ),
+ (
+ [],
+ (1, 0, {"memLevel": 5}),
+ ),
+ (
+ [ServerNoOpExtensionFactory()],
+ (2, 1, {"memLevel": 5}),
+ ),
+ (
+ [ServerPerMessageDeflateFactory(compress_settings={"memLevel": 7})],
+ (1, 0, {"memLevel": 7}),
+ ),
+ (
+ [
+ ServerPerMessageDeflateFactory(compress_settings={"memLevel": 7}),
+ ServerNoOpExtensionFactory(),
+ ],
+ (2, 0, {"memLevel": 7}),
+ ),
+ (
+ [
+ ServerNoOpExtensionFactory(),
+ ServerPerMessageDeflateFactory(compress_settings={"memLevel": 7}),
+ ],
+ (2, 1, {"memLevel": 7}),
+ ),
+ ]:
+ with self.subTest(extensions=extensions):
+ extensions = enable_server_permessage_deflate(extensions)
+ self.assertEqual(len(extensions), expected_len)
+ extension = extensions[expected_position]
+ self.assertIsInstance(extension, ServerPerMessageDeflateFactory)
+ self.assertEqual(
+ extension.compress_settings,
+ expected_compress_settings,
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/utils.py
new file mode 100644
index 0000000000..24fb74b4e6
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/extensions/utils.py
@@ -0,0 +1,113 @@
+import dataclasses
+
+from websockets.exceptions import NegotiationError
+
+
+class OpExtension:
+ name = "x-op"
+
+ def __init__(self, op=None):
+ self.op = op
+
+ def decode(self, frame, *, max_size=None):
+ return frame # pragma: no cover
+
+ def encode(self, frame):
+ return frame # pragma: no cover
+
+ def __eq__(self, other):
+ return isinstance(other, OpExtension) and self.op == other.op
+
+
+class ClientOpExtensionFactory:
+ name = "x-op"
+
+ def __init__(self, op=None):
+ self.op = op
+
+ def get_request_params(self):
+ return [("op", self.op)]
+
+ def process_response_params(self, params, accepted_extensions):
+ if params != [("op", self.op)]:
+ raise NegotiationError()
+ return OpExtension(self.op)
+
+
+class ServerOpExtensionFactory:
+ name = "x-op"
+
+ def __init__(self, op=None):
+ self.op = op
+
+ def process_request_params(self, params, accepted_extensions):
+ if params != [("op", self.op)]:
+ raise NegotiationError()
+ return [("op", self.op)], OpExtension(self.op)
+
+
+class NoOpExtension:
+ name = "x-no-op"
+
+ def __repr__(self):
+ return "NoOpExtension()"
+
+ def decode(self, frame, *, max_size=None):
+ return frame
+
+ def encode(self, frame):
+ return frame
+
+
+class ClientNoOpExtensionFactory:
+ name = "x-no-op"
+
+ def get_request_params(self):
+ return []
+
+ def process_response_params(self, params, accepted_extensions):
+ if params:
+ raise NegotiationError()
+ return NoOpExtension()
+
+
+class ServerNoOpExtensionFactory:
+ name = "x-no-op"
+
+ def __init__(self, params=None):
+ self.params = params or []
+
+ def process_request_params(self, params, accepted_extensions):
+ return self.params, NoOpExtension()
+
+
+class Rsv2Extension:
+ name = "x-rsv2"
+
+ def decode(self, frame, *, max_size=None):
+ assert frame.rsv2
+ return dataclasses.replace(frame, rsv2=False)
+
+ def encode(self, frame):
+ assert not frame.rsv2
+ return dataclasses.replace(frame, rsv2=True)
+
+ def __eq__(self, other):
+ return isinstance(other, Rsv2Extension)
+
+
+class ClientRsv2ExtensionFactory:
+ name = "x-rsv2"
+
+ def get_request_params(self):
+ return []
+
+ def process_response_params(self, params, accepted_extensions):
+ return Rsv2Extension()
+
+
+class ServerRsv2ExtensionFactory:
+ name = "x-rsv2"
+
+ def process_request_params(self, params, accepted_extensions):
+ return [], Rsv2Extension()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/__init__.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_auth.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_auth.py
new file mode 100644
index 0000000000..3754bcf3a5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_auth.py
@@ -0,0 +1,184 @@
+import hmac
+import unittest
+import urllib.error
+
+from websockets.exceptions import InvalidStatusCode
+from websockets.headers import build_authorization_basic
+from websockets.legacy.auth import *
+from websockets.legacy.auth import is_credentials
+
+from .test_client_server import ClientServerTestsMixin, with_client, with_server
+from .utils import AsyncioTestCase
+
+
+class AuthTests(unittest.TestCase):
+ def test_is_credentials(self):
+ self.assertTrue(is_credentials(("username", "password")))
+
+ def test_is_not_credentials(self):
+ self.assertFalse(is_credentials(None))
+ self.assertFalse(is_credentials("username"))
+
+
+class CustomWebSocketServerProtocol(BasicAuthWebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ type(self).used = True
+ return await super().process_request(path, request_headers)
+
+
+class CheckWebSocketServerProtocol(BasicAuthWebSocketServerProtocol):
+ async def check_credentials(self, username, password):
+ return hmac.compare_digest(password, "letmein")
+
+
+class AuthClientServerTests(ClientServerTestsMixin, AsyncioTestCase):
+ create_protocol = basic_auth_protocol_factory(
+ realm="auth-tests", credentials=("hello", "iloveyou")
+ )
+
+ @with_server(create_protocol=create_protocol)
+ @with_client(user_info=("hello", "iloveyou"))
+ def test_basic_auth(self):
+ req_headers = self.client.request_headers
+ resp_headers = self.client.response_headers
+ self.assertEqual(req_headers["Authorization"], "Basic aGVsbG86aWxvdmV5b3U=")
+ self.assertNotIn("WWW-Authenticate", resp_headers)
+
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ def test_basic_auth_server_no_credentials(self):
+ with self.assertRaises(TypeError) as raised:
+ basic_auth_protocol_factory(realm="auth-tests", credentials=None)
+ self.assertEqual(
+ str(raised.exception), "provide either credentials or check_credentials"
+ )
+
+ def test_basic_auth_server_bad_credentials(self):
+ with self.assertRaises(TypeError) as raised:
+ basic_auth_protocol_factory(realm="auth-tests", credentials=42)
+ self.assertEqual(str(raised.exception), "invalid credentials argument: 42")
+
+ create_protocol_multiple_credentials = basic_auth_protocol_factory(
+ realm="auth-tests",
+ credentials=[("hello", "iloveyou"), ("goodbye", "stillloveu")],
+ )
+
+ @with_server(create_protocol=create_protocol_multiple_credentials)
+ @with_client(user_info=("hello", "iloveyou"))
+ def test_basic_auth_server_multiple_credentials(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ def test_basic_auth_bad_multiple_credentials(self):
+ with self.assertRaises(TypeError) as raised:
+ basic_auth_protocol_factory(
+ realm="auth-tests", credentials=[("hello", "iloveyou"), 42]
+ )
+ self.assertEqual(
+ str(raised.exception),
+ "invalid credentials argument: [('hello', 'iloveyou'), 42]",
+ )
+
+ async def check_credentials(username, password):
+ return hmac.compare_digest(password, "iloveyou")
+
+ create_protocol_check_credentials = basic_auth_protocol_factory(
+ realm="auth-tests",
+ check_credentials=check_credentials,
+ )
+
+ @with_server(create_protocol=create_protocol_check_credentials)
+ @with_client(user_info=("hello", "iloveyou"))
+ def test_basic_auth_check_credentials(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ create_protocol_custom_protocol = basic_auth_protocol_factory(
+ realm="auth-tests",
+ credentials=[("hello", "iloveyou")],
+ create_protocol=CustomWebSocketServerProtocol,
+ )
+
+ @with_server(create_protocol=create_protocol_custom_protocol)
+ @with_client(user_info=("hello", "iloveyou"))
+ def test_basic_auth_custom_protocol(self):
+ self.assertTrue(CustomWebSocketServerProtocol.used)
+ del CustomWebSocketServerProtocol.used
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ @with_server(create_protocol=CheckWebSocketServerProtocol)
+ @with_client(user_info=("hello", "letmein"))
+ def test_basic_auth_custom_protocol_subclass(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ # CustomWebSocketServerProtocol doesn't override check_credentials
+ @with_server(create_protocol=CustomWebSocketServerProtocol)
+ def test_basic_auth_defaults_to_deny_all(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client(user_info=("hello", "iloveyou"))
+ self.assertEqual(raised.exception.status_code, 401)
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_missing_credentials(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client()
+ self.assertEqual(raised.exception.status_code, 401)
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_missing_credentials_details(self):
+ with self.assertRaises(urllib.error.HTTPError) as raised:
+ self.loop.run_until_complete(self.make_http_request())
+ self.assertEqual(raised.exception.code, 401)
+ self.assertEqual(
+ raised.exception.headers["WWW-Authenticate"],
+ 'Basic realm="auth-tests", charset="UTF-8"',
+ )
+ self.assertEqual(raised.exception.read().decode(), "Missing credentials\n")
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_unsupported_credentials(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client(extra_headers={"Authorization": "Digest ..."})
+ self.assertEqual(raised.exception.status_code, 401)
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_unsupported_credentials_details(self):
+ with self.assertRaises(urllib.error.HTTPError) as raised:
+ self.loop.run_until_complete(
+ self.make_http_request(headers={"Authorization": "Digest ..."})
+ )
+ self.assertEqual(raised.exception.code, 401)
+ self.assertEqual(
+ raised.exception.headers["WWW-Authenticate"],
+ 'Basic realm="auth-tests", charset="UTF-8"',
+ )
+ self.assertEqual(raised.exception.read().decode(), "Unsupported credentials\n")
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_invalid_username(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client(user_info=("goodbye", "iloveyou"))
+ self.assertEqual(raised.exception.status_code, 401)
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_invalid_password(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client(user_info=("hello", "ihateyou"))
+ self.assertEqual(raised.exception.status_code, 401)
+
+ @with_server(create_protocol=create_protocol)
+ def test_basic_auth_invalid_credentials_details(self):
+ with self.assertRaises(urllib.error.HTTPError) as raised:
+ authorization = build_authorization_basic("hello", "ihateyou")
+ self.loop.run_until_complete(
+ self.make_http_request(headers={"Authorization": authorization})
+ )
+ self.assertEqual(raised.exception.code, 401)
+ self.assertEqual(
+ raised.exception.headers["WWW-Authenticate"],
+ 'Basic realm="auth-tests", charset="UTF-8"',
+ )
+ self.assertEqual(raised.exception.read().decode(), "Invalid credentials\n")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_client_server.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_client_server.py
new file mode 100644
index 0000000000..c49d91b707
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_client_server.py
@@ -0,0 +1,1636 @@
+import asyncio
+import contextlib
+import functools
+import http
+import logging
+import platform
+import random
+import socket
+import ssl
+import sys
+import unittest
+import unittest.mock
+import urllib.error
+import urllib.request
+import warnings
+
+from websockets.datastructures import Headers
+from websockets.exceptions import (
+ ConnectionClosed,
+ InvalidHandshake,
+ InvalidHeader,
+ InvalidStatusCode,
+ NegotiationError,
+)
+from websockets.extensions.permessage_deflate import (
+ ClientPerMessageDeflateFactory,
+ PerMessageDeflate,
+ ServerPerMessageDeflateFactory,
+)
+from websockets.frames import CloseCode
+from websockets.http import USER_AGENT
+from websockets.legacy.client import *
+from websockets.legacy.compatibility import asyncio_timeout
+from websockets.legacy.handshake import build_response
+from websockets.legacy.http import read_response
+from websockets.legacy.server import *
+from websockets.protocol import State
+from websockets.uri import parse_uri
+
+from ..extensions.utils import (
+ ClientNoOpExtensionFactory,
+ NoOpExtension,
+ ServerNoOpExtensionFactory,
+)
+from ..utils import CERTIFICATE, MS, temp_unix_socket_path
+from .utils import AsyncioTestCase
+
+
+async def default_handler(ws):
+ if ws.path == "/deprecated_attributes":
+ await ws.recv() # delay that allows catching warnings
+ await ws.send(repr((ws.host, ws.port, ws.secure)))
+ elif ws.path == "/close_timeout":
+ await ws.send(repr(ws.close_timeout))
+ elif ws.path == "/path":
+ await ws.send(str(ws.path))
+ elif ws.path == "/headers":
+ await ws.send(repr(ws.request_headers))
+ await ws.send(repr(ws.response_headers))
+ elif ws.path == "/extensions":
+ await ws.send(repr(ws.extensions))
+ elif ws.path == "/subprotocol":
+ await ws.send(repr(ws.subprotocol))
+ elif ws.path == "/slow_stop":
+ await ws.wait_closed()
+ await asyncio.sleep(2 * MS)
+ else:
+ await ws.send((await ws.recv()))
+
+
+async def redirect_request(path, headers, test, status):
+ if path == "/absolute_redirect":
+ location = get_server_uri(test.server, test.secure, "/")
+ elif path == "/relative_redirect":
+ location = "/"
+ elif path == "/infinite":
+ location = get_server_uri(test.server, test.secure, "/infinite")
+ elif path == "/force_insecure":
+ location = get_server_uri(test.server, False, "/")
+ elif path == "/missing_location":
+ return status, {}, b""
+ else:
+ return None
+ return status, {"Location": location}, b""
+
+
+@contextlib.contextmanager
+def temp_test_server(test, **kwargs):
+ test.start_server(**kwargs)
+ try:
+ yield
+ finally:
+ test.stop_server()
+
+
+def temp_test_redirecting_server(test, status=http.HTTPStatus.FOUND, **kwargs):
+ process_request = functools.partial(redirect_request, test=test, status=status)
+ return temp_test_server(test, process_request=process_request, **kwargs)
+
+
+@contextlib.contextmanager
+def temp_test_client(test, *args, **kwargs):
+ test.start_client(*args, **kwargs)
+ try:
+ yield
+ finally:
+ test.stop_client()
+
+
+def with_manager(manager, *args, **kwargs):
+ """
+ Return a decorator that wraps a function with a context manager.
+
+ """
+
+ def decorate(func):
+ @functools.wraps(func)
+ def _decorate(self, *_args, **_kwargs):
+ with manager(self, *args, **kwargs):
+ return func(self, *_args, **_kwargs)
+
+ return _decorate
+
+ return decorate
+
+
+def with_server(**kwargs):
+ """
+ Return a decorator for TestCase methods that starts and stops a server.
+
+ """
+ return with_manager(temp_test_server, **kwargs)
+
+
+def with_client(*args, **kwargs):
+ """
+ Return a decorator for TestCase methods that starts and stops a client.
+
+ """
+ return with_manager(temp_test_client, *args, **kwargs)
+
+
+def get_server_address(server):
+ """
+ Return an address on which the given server listens.
+
+ """
+ # Pick a random socket in order to test both IPv4 and IPv6 on systems
+ # where both are available. Randomizing tests is usually a bad idea. If
+ # needed, either use the first socket, or test separately IPv4 and IPv6.
+ server_socket = random.choice(server.sockets)
+
+ if server_socket.family == socket.AF_INET6: # pragma: no cover
+ return server_socket.getsockname()[:2] # (no IPv6 on CI)
+ elif server_socket.family == socket.AF_INET:
+ return server_socket.getsockname()
+ else: # pragma: no cover
+ raise ValueError("expected an IPv6, IPv4, or Unix socket")
+
+
+def get_server_uri(server, secure=False, resource_name="/", user_info=None):
+ """
+ Return a WebSocket URI for connecting to the given server.
+
+ """
+ proto = "wss" if secure else "ws"
+ user_info = ":".join(user_info) + "@" if user_info else ""
+ host, port = get_server_address(server)
+ if ":" in host: # IPv6 address
+ host = f"[{host}]"
+ return f"{proto}://{user_info}{host}:{port}{resource_name}"
+
+
+class UnauthorizedServerProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ # Test returning headers as a Headers instance (1/3)
+ return http.HTTPStatus.UNAUTHORIZED, Headers([("X-Access", "denied")]), b""
+
+
+class ForbiddenServerProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ # Test returning headers as a dict (2/3)
+ return http.HTTPStatus.FORBIDDEN, {"X-Access": "denied"}, b""
+
+
+class HealthCheckServerProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ # Test returning headers as a list of pairs (3/3)
+ if path == "/__health__/":
+ return http.HTTPStatus.OK, [("X-Access", "OK")], b"status = green\n"
+
+
+class ProcessRequestReturningIntProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ assert path == "/__health__/"
+ return 200, [], b"OK\n"
+
+
+class SlowOpeningHandshakeProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ await asyncio.sleep(10 * MS)
+
+
+class FooClientProtocol(WebSocketClientProtocol):
+ pass
+
+
+class BarClientProtocol(WebSocketClientProtocol):
+ pass
+
+
+class ClientServerTestsMixin:
+ secure = False
+
+ def setUp(self):
+ super().setUp()
+ self.server = None
+
+ def start_server(self, deprecation_warnings=None, **kwargs):
+ handler = kwargs.pop("handler", default_handler)
+ # Disable compression by default in tests.
+ kwargs.setdefault("compression", None)
+ # Disable pings by default in tests.
+ kwargs.setdefault("ping_interval", None)
+
+ # This logic is encapsulated in a coroutine to prevent it from executing
+ # before the event loop is running which causes asyncio.get_event_loop()
+ # to raise a DeprecationWarning on Python ≥ 3.10.
+ async def start_server():
+ return await serve(handler, "localhost", 0, **kwargs)
+
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ self.server = self.loop.run_until_complete(start_server())
+
+ expected_warnings = [] if deprecation_warnings is None else deprecation_warnings
+ self.assertDeprecationWarnings(recorded_warnings, expected_warnings)
+
+ def start_client(
+ self, resource_name="/", user_info=None, deprecation_warnings=None, **kwargs
+ ):
+ # Disable compression by default in tests.
+ kwargs.setdefault("compression", None)
+ # Disable pings by default in tests.
+ kwargs.setdefault("ping_interval", None)
+
+ secure = kwargs.get("ssl") is not None
+ try:
+ server_uri = kwargs.pop("uri")
+ except KeyError:
+ server_uri = get_server_uri(self.server, secure, resource_name, user_info)
+
+ # This logic is encapsulated in a coroutine to prevent it from executing
+ # before the event loop is running which causes asyncio.get_event_loop()
+ # to raise a DeprecationWarning on Python ≥ 3.10.
+ async def start_client():
+ return await connect(server_uri, **kwargs)
+
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ self.client = self.loop.run_until_complete(start_client())
+
+ expected_warnings = [] if deprecation_warnings is None else deprecation_warnings
+ self.assertDeprecationWarnings(recorded_warnings, expected_warnings)
+
+ def stop_client(self):
+ self.loop.run_until_complete(
+ asyncio.wait_for(self.client.close_connection_task, timeout=1)
+ )
+
+ def stop_server(self):
+ self.server.close()
+ self.loop.run_until_complete(
+ asyncio.wait_for(self.server.wait_closed(), timeout=1)
+ )
+
+ @contextlib.contextmanager
+ def temp_server(self, **kwargs):
+ with temp_test_server(self, **kwargs):
+ yield
+
+ @contextlib.contextmanager
+ def temp_client(self, *args, **kwargs):
+ with temp_test_client(self, *args, **kwargs):
+ yield
+
+ def make_http_request(self, path="/", headers=None):
+ if headers is None:
+ headers = {}
+
+ # Set url to 'https?://<host>:<port><path>'.
+ url = get_server_uri(
+ self.server, resource_name=path, secure=self.secure
+ ).replace("ws", "http")
+
+ request = urllib.request.Request(url=url, headers=headers)
+
+ if self.secure:
+ open_health_check = functools.partial(
+ urllib.request.urlopen, request, context=self.client_context
+ )
+ else:
+ open_health_check = functools.partial(urllib.request.urlopen, request)
+
+ return self.loop.run_in_executor(None, open_health_check)
+
+
+class SecureClientServerTestsMixin(ClientServerTestsMixin):
+ secure = True
+
+ @property
+ def server_context(self):
+ ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
+ ssl_context.load_cert_chain(CERTIFICATE)
+ return ssl_context
+
+ @property
+ def client_context(self):
+ ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
+ ssl_context.load_verify_locations(CERTIFICATE)
+ return ssl_context
+
+ def start_server(self, **kwargs):
+ kwargs.setdefault("ssl", self.server_context)
+ super().start_server(**kwargs)
+
+ def start_client(self, path="/", **kwargs):
+ kwargs.setdefault("ssl", self.client_context)
+ super().start_client(path, **kwargs)
+
+
+class CommonClientServerTests:
+ """
+ Mixin that defines most tests but doesn't inherit unittest.TestCase.
+
+ Tests are run by the ClientServerTests and SecureClientServerTests subclasses.
+
+ """
+
+ @with_server()
+ @with_client()
+ def test_basic(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ def test_redirect(self):
+ redirect_statuses = [
+ http.HTTPStatus.MOVED_PERMANENTLY,
+ http.HTTPStatus.FOUND,
+ http.HTTPStatus.SEE_OTHER,
+ http.HTTPStatus.TEMPORARY_REDIRECT,
+ http.HTTPStatus.PERMANENT_REDIRECT,
+ ]
+ for status in redirect_statuses:
+ with temp_test_redirecting_server(self, status):
+ with self.temp_client("/absolute_redirect"):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ def test_redirect_relative_location(self):
+ with temp_test_redirecting_server(self):
+ with self.temp_client("/relative_redirect"):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ def test_infinite_redirect(self):
+ with temp_test_redirecting_server(self):
+ with self.assertRaises(InvalidHandshake):
+ with self.temp_client("/infinite"):
+ self.fail("did not raise")
+
+ def test_redirect_missing_location(self):
+ with temp_test_redirecting_server(self):
+ with self.assertRaises(InvalidHeader):
+ with self.temp_client("/missing_location"):
+ self.fail("did not raise")
+
+ def test_loop_backwards_compatibility(self):
+ with self.temp_server(
+ loop=self.loop,
+ deprecation_warnings=["remove loop argument"],
+ ):
+ with self.temp_client(
+ loop=self.loop,
+ deprecation_warnings=["remove loop argument"],
+ ):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ @with_server()
+ def test_explicit_host_port(self):
+ uri = get_server_uri(self.server, self.secure)
+ wsuri = parse_uri(uri)
+
+ # Change host and port to invalid values.
+ scheme = "wss" if wsuri.secure else "ws"
+ port = 65535 - wsuri.port
+ changed_uri = f"{scheme}://example.com:{port}/"
+
+ with self.temp_client(uri=changed_uri, host=wsuri.host, port=wsuri.port):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ @with_server()
+ def test_explicit_socket(self):
+ class TrackedSocket(socket.socket):
+ def __init__(self, *args, **kwargs):
+ self.used_for_read = False
+ self.used_for_write = False
+ super().__init__(*args, **kwargs)
+
+ def recv(self, *args, **kwargs):
+ self.used_for_read = True
+ return super().recv(*args, **kwargs)
+
+ def recv_into(self, *args, **kwargs):
+ self.used_for_read = True
+ return super().recv_into(*args, **kwargs)
+
+ def send(self, *args, **kwargs):
+ self.used_for_write = True
+ return super().send(*args, **kwargs)
+
+ server_socket = [
+ sock for sock in self.server.sockets if sock.family == socket.AF_INET
+ ][0]
+ client_socket = TrackedSocket(socket.AF_INET, socket.SOCK_STREAM)
+ client_socket.connect(server_socket.getsockname())
+
+ try:
+ self.assertFalse(client_socket.used_for_read)
+ self.assertFalse(client_socket.used_for_write)
+
+ with self.temp_client(sock=client_socket):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ self.assertTrue(client_socket.used_for_read)
+ self.assertTrue(client_socket.used_for_write)
+
+ finally:
+ client_socket.close()
+
+ @unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+ def test_unix_socket(self):
+ with temp_unix_socket_path() as path:
+ # Like self.start_server() but with unix_serve().
+ async def start_server():
+ return await unix_serve(default_handler, path)
+
+ self.server = self.loop.run_until_complete(start_server())
+
+ try:
+ # Like self.start_client() but with unix_connect()
+ async def start_client():
+ return await unix_connect(path)
+
+ self.client = self.loop.run_until_complete(start_client())
+
+ try:
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ finally:
+ self.stop_client()
+
+ finally:
+ self.stop_server()
+
+ def test_ws_handler_argument_backwards_compatibility(self):
+ async def handler_with_path(ws, path):
+ await ws.send(path)
+
+ with self.temp_server(
+ handler=handler_with_path,
+ # Enable deprecation warning and announce deprecation in 11.0.
+ # deprecation_warnings=["remove second argument of ws_handler"],
+ ):
+ with self.temp_client("/path"):
+ self.assertEqual(
+ self.loop.run_until_complete(self.client.recv()),
+ "/path",
+ )
+
+ def test_ws_handler_argument_backwards_compatibility_partial(self):
+ async def handler_with_path(ws, path, extra):
+ await ws.send(path)
+
+ bound_handler_with_path = functools.partial(handler_with_path, extra=None)
+
+ with self.temp_server(
+ handler=bound_handler_with_path,
+ # Enable deprecation warning and announce deprecation in 11.0.
+ # deprecation_warnings=["remove second argument of ws_handler"],
+ ):
+ with self.temp_client("/path"):
+ self.assertEqual(
+ self.loop.run_until_complete(self.client.recv()),
+ "/path",
+ )
+
+ async def process_request_OK(path, request_headers):
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+ @with_server(process_request=process_request_OK)
+ def test_process_request_argument(self):
+ response = self.loop.run_until_complete(self.make_http_request("/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+
+ def legacy_process_request_OK(path, request_headers):
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+ @with_server(process_request=legacy_process_request_OK)
+ def test_process_request_argument_backwards_compatibility(self):
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ response = self.loop.run_until_complete(self.make_http_request("/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+
+ self.assertDeprecationWarnings(
+ recorded_warnings, ["declare process_request as a coroutine"]
+ )
+
+ class ProcessRequestOKServerProtocol(WebSocketServerProtocol):
+ async def process_request(self, path, request_headers):
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+ @with_server(create_protocol=ProcessRequestOKServerProtocol)
+ def test_process_request_override(self):
+ response = self.loop.run_until_complete(self.make_http_request("/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+
+ class LegacyProcessRequestOKServerProtocol(WebSocketServerProtocol):
+ def process_request(self, path, request_headers):
+ return http.HTTPStatus.OK, [], b"OK\n"
+
+ @with_server(create_protocol=LegacyProcessRequestOKServerProtocol)
+ def test_process_request_override_backwards_compatibility(self):
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ response = self.loop.run_until_complete(self.make_http_request("/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+
+ self.assertDeprecationWarnings(
+ recorded_warnings, ["declare process_request as a coroutine"]
+ )
+
+ def select_subprotocol_chat(client_subprotocols, server_subprotocols):
+ return "chat"
+
+ @with_server(
+ subprotocols=["superchat", "chat"], select_subprotocol=select_subprotocol_chat
+ )
+ @with_client("/subprotocol", subprotocols=["superchat", "chat"])
+ def test_select_subprotocol_argument(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr("chat"))
+ self.assertEqual(self.client.subprotocol, "chat")
+
+ class SelectSubprotocolChatServerProtocol(WebSocketServerProtocol):
+ def select_subprotocol(self, client_subprotocols, server_subprotocols):
+ return "chat"
+
+ @with_server(
+ subprotocols=["superchat", "chat"],
+ create_protocol=SelectSubprotocolChatServerProtocol,
+ )
+ @with_client("/subprotocol", subprotocols=["superchat", "chat"])
+ def test_select_subprotocol_override(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr("chat"))
+ self.assertEqual(self.client.subprotocol, "chat")
+
+ @with_server()
+ @with_client("/deprecated_attributes")
+ def test_protocol_deprecated_attributes(self):
+ # The test could be connecting with IPv6 or IPv4.
+ expected_client_attrs = [
+ server_socket.getsockname()[:2] + (self.secure,)
+ for server_socket in self.server.sockets
+ ]
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ client_attrs = (self.client.host, self.client.port, self.client.secure)
+ self.assertDeprecationWarnings(
+ recorded_warnings,
+ [
+ "use remote_address[0] instead of host",
+ "use remote_address[1] instead of port",
+ "don't use secure",
+ ],
+ )
+ self.assertIn(client_attrs, expected_client_attrs)
+
+ expected_server_attrs = ("localhost", 0, self.secure)
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ self.loop.run_until_complete(self.client.send(""))
+ server_attrs = self.loop.run_until_complete(self.client.recv())
+ self.assertDeprecationWarnings(
+ recorded_warnings,
+ [
+ "use local_address[0] instead of host",
+ "use local_address[1] instead of port",
+ "don't use secure",
+ ],
+ )
+ self.assertEqual(server_attrs, repr(expected_server_attrs))
+
+ @with_server()
+ @with_client("/path")
+ def test_protocol_path(self):
+ client_path = self.client.path
+ self.assertEqual(client_path, "/path")
+ server_path = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_path, "/path")
+
+ @with_server()
+ @with_client("/headers")
+ def test_protocol_headers(self):
+ client_req = self.client.request_headers
+ client_resp = self.client.response_headers
+ self.assertEqual(client_req["User-Agent"], USER_AGENT)
+ self.assertEqual(client_resp["Server"], USER_AGENT)
+ server_req = self.loop.run_until_complete(self.client.recv())
+ server_resp = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_req, repr(client_req))
+ self.assertEqual(server_resp, repr(client_resp))
+
+ @with_server()
+ @with_client("/headers", extra_headers={"X-Spam": "Eggs"})
+ def test_protocol_custom_request_headers(self):
+ req_headers = self.loop.run_until_complete(self.client.recv())
+ self.loop.run_until_complete(self.client.recv())
+ self.assertIn("('X-Spam', 'Eggs')", req_headers)
+
+ @with_server()
+ @with_client("/headers", extra_headers={"User-Agent": "websockets"})
+ def test_protocol_custom_user_agent_header_legacy(self):
+ req_headers = self.loop.run_until_complete(self.client.recv())
+ self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(req_headers.count("User-Agent"), 1)
+ self.assertIn("('User-Agent', 'websockets')", req_headers)
+
+ @with_server()
+ @with_client("/headers", user_agent_header=None)
+ def test_protocol_no_user_agent_header(self):
+ req_headers = self.loop.run_until_complete(self.client.recv())
+ self.loop.run_until_complete(self.client.recv())
+ self.assertNotIn("User-Agent", req_headers)
+
+ @with_server()
+ @with_client("/headers", user_agent_header="websockets")
+ def test_protocol_custom_user_agent_header(self):
+ req_headers = self.loop.run_until_complete(self.client.recv())
+ self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(req_headers.count("User-Agent"), 1)
+ self.assertIn("('User-Agent', 'websockets')", req_headers)
+
+ @with_server(extra_headers=lambda p, r: {"X-Spam": "Eggs"})
+ @with_client("/headers")
+ def test_protocol_custom_response_headers_callable(self):
+ self.loop.run_until_complete(self.client.recv())
+ resp_headers = self.loop.run_until_complete(self.client.recv())
+ self.assertIn("('X-Spam', 'Eggs')", resp_headers)
+
+ @with_server(extra_headers=lambda p, r: None)
+ @with_client("/headers")
+ def test_protocol_custom_response_headers_callable_none(self):
+ self.loop.run_until_complete(self.client.recv()) # doesn't crash
+ self.loop.run_until_complete(self.client.recv()) # nothing to check
+
+ @with_server(extra_headers={"X-Spam": "Eggs"})
+ @with_client("/headers")
+ def test_protocol_custom_response_headers(self):
+ self.loop.run_until_complete(self.client.recv())
+ resp_headers = self.loop.run_until_complete(self.client.recv())
+ self.assertIn("('X-Spam', 'Eggs')", resp_headers)
+
+ @with_server(extra_headers={"Server": "websockets"})
+ @with_client("/headers")
+ def test_protocol_custom_server_header_legacy(self):
+ self.loop.run_until_complete(self.client.recv())
+ resp_headers = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(resp_headers.count("Server"), 1)
+ self.assertIn("('Server', 'websockets')", resp_headers)
+
+ @with_server(server_header=None)
+ @with_client("/headers")
+ def test_protocol_no_server_header(self):
+ self.loop.run_until_complete(self.client.recv())
+ resp_headers = self.loop.run_until_complete(self.client.recv())
+ self.assertNotIn("Server", resp_headers)
+
+ @with_server(server_header="websockets")
+ @with_client("/headers")
+ def test_protocol_custom_server_header(self):
+ self.loop.run_until_complete(self.client.recv())
+ resp_headers = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(resp_headers.count("Server"), 1)
+ self.assertIn("('Server', 'websockets')", resp_headers)
+
+ @with_server(create_protocol=HealthCheckServerProtocol)
+ def test_http_request_http_endpoint(self):
+ # Making an HTTP request to an HTTP endpoint succeeds.
+ response = self.loop.run_until_complete(self.make_http_request("/__health__/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+ self.assertEqual(response.read(), b"status = green\n")
+
+ @with_server(create_protocol=HealthCheckServerProtocol)
+ def test_http_request_ws_endpoint(self):
+ # Making an HTTP request to a WS endpoint fails.
+ with self.assertRaises(urllib.error.HTTPError) as raised:
+ self.loop.run_until_complete(self.make_http_request())
+
+ self.assertEqual(raised.exception.code, 426)
+ self.assertEqual(raised.exception.headers["Upgrade"], "websocket")
+
+ @with_server(create_protocol=HealthCheckServerProtocol)
+ def test_ws_connection_http_endpoint(self):
+ # Making a WS connection to an HTTP endpoint fails.
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client("/__health__/")
+
+ self.assertEqual(raised.exception.status_code, 200)
+
+ @with_server(create_protocol=HealthCheckServerProtocol)
+ def test_ws_connection_ws_endpoint(self):
+ # Making a WS connection to a WS endpoint succeeds.
+ self.start_client()
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+ self.stop_client()
+
+ @with_server(create_protocol=HealthCheckServerProtocol, server_header=None)
+ def test_http_request_no_server_header(self):
+ response = self.loop.run_until_complete(self.make_http_request("/__health__/"))
+
+ with contextlib.closing(response):
+ self.assertNotIn("Server", response.headers)
+
+ @with_server(create_protocol=HealthCheckServerProtocol, server_header="websockets")
+ def test_http_request_custom_server_header(self):
+ response = self.loop.run_until_complete(self.make_http_request("/__health__/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.headers["Server"], "websockets")
+
+ @with_server(create_protocol=ProcessRequestReturningIntProtocol)
+ def test_process_request_returns_int_status(self):
+ response = self.loop.run_until_complete(self.make_http_request("/__health__/"))
+
+ with contextlib.closing(response):
+ self.assertEqual(response.code, 200)
+ self.assertEqual(response.read(), b"OK\n")
+
+ def assert_client_raises_code(self, status_code):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client()
+ self.assertEqual(raised.exception.status_code, status_code)
+
+ @with_server(create_protocol=UnauthorizedServerProtocol)
+ def test_server_create_protocol(self):
+ self.assert_client_raises_code(401)
+
+ def create_unauthorized_server_protocol(*args, **kwargs):
+ return UnauthorizedServerProtocol(*args, **kwargs)
+
+ @with_server(create_protocol=create_unauthorized_server_protocol)
+ def test_server_create_protocol_function(self):
+ self.assert_client_raises_code(401)
+
+ @with_server(
+ klass=UnauthorizedServerProtocol,
+ deprecation_warnings=["rename klass to create_protocol"],
+ )
+ def test_server_klass_backwards_compatibility(self):
+ self.assert_client_raises_code(401)
+
+ @with_server(
+ create_protocol=ForbiddenServerProtocol,
+ klass=UnauthorizedServerProtocol,
+ deprecation_warnings=["rename klass to create_protocol"],
+ )
+ def test_server_create_protocol_over_klass(self):
+ self.assert_client_raises_code(403)
+
+ @with_server()
+ @with_client("/path", create_protocol=FooClientProtocol)
+ def test_client_create_protocol(self):
+ self.assertIsInstance(self.client, FooClientProtocol)
+
+ @with_server()
+ @with_client(
+ "/path",
+ create_protocol=(lambda *args, **kwargs: FooClientProtocol(*args, **kwargs)),
+ )
+ def test_client_create_protocol_function(self):
+ self.assertIsInstance(self.client, FooClientProtocol)
+
+ @with_server()
+ @with_client(
+ "/path",
+ klass=FooClientProtocol,
+ deprecation_warnings=["rename klass to create_protocol"],
+ )
+ def test_client_klass(self):
+ self.assertIsInstance(self.client, FooClientProtocol)
+
+ @with_server()
+ @with_client(
+ "/path",
+ create_protocol=BarClientProtocol,
+ klass=FooClientProtocol,
+ deprecation_warnings=["rename klass to create_protocol"],
+ )
+ def test_client_create_protocol_over_klass(self):
+ self.assertIsInstance(self.client, BarClientProtocol)
+
+ @with_server(close_timeout=7)
+ @with_client("/close_timeout")
+ def test_server_close_timeout(self):
+ close_timeout = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(eval(close_timeout), 7)
+
+ @with_server(timeout=6, deprecation_warnings=["rename timeout to close_timeout"])
+ @with_client("/close_timeout")
+ def test_server_timeout_backwards_compatibility(self):
+ close_timeout = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(eval(close_timeout), 6)
+
+ @with_server(
+ close_timeout=7,
+ timeout=6,
+ deprecation_warnings=["rename timeout to close_timeout"],
+ )
+ @with_client("/close_timeout")
+ def test_server_close_timeout_over_timeout(self):
+ close_timeout = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(eval(close_timeout), 7)
+
+ @with_server()
+ @with_client("/close_timeout", close_timeout=7)
+ def test_client_close_timeout(self):
+ self.assertEqual(self.client.close_timeout, 7)
+
+ @with_server()
+ @with_client(
+ "/close_timeout",
+ timeout=6,
+ deprecation_warnings=["rename timeout to close_timeout"],
+ )
+ def test_client_timeout_backwards_compatibility(self):
+ self.assertEqual(self.client.close_timeout, 6)
+
+ @with_server()
+ @with_client(
+ "/close_timeout",
+ close_timeout=7,
+ timeout=6,
+ deprecation_warnings=["rename timeout to close_timeout"],
+ )
+ def test_client_close_timeout_over_timeout(self):
+ self.assertEqual(self.client.close_timeout, 7)
+
+ @with_server()
+ @with_client("/extensions")
+ def test_no_extension(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_extensions, repr([]))
+ self.assertEqual(repr(self.client.extensions), repr([]))
+
+ @with_server(extensions=[ServerNoOpExtensionFactory()])
+ @with_client("/extensions", extensions=[ClientNoOpExtensionFactory()])
+ def test_extension(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_extensions, repr([NoOpExtension()]))
+ self.assertEqual(repr(self.client.extensions), repr([NoOpExtension()]))
+
+ @with_server()
+ @with_client("/extensions", extensions=[ClientNoOpExtensionFactory()])
+ def test_extension_not_accepted(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_extensions, repr([]))
+ self.assertEqual(repr(self.client.extensions), repr([]))
+
+ @with_server(extensions=[ServerNoOpExtensionFactory()])
+ @with_client("/extensions")
+ def test_extension_not_requested(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_extensions, repr([]))
+ self.assertEqual(repr(self.client.extensions), repr([]))
+
+ @with_server(extensions=[ServerNoOpExtensionFactory([("foo", None)])])
+ def test_extension_client_rejection(self):
+ with self.assertRaises(NegotiationError):
+ self.start_client("/extensions", extensions=[ClientNoOpExtensionFactory()])
+
+ @with_server(
+ extensions=[
+ # No match because the client doesn't send client_max_window_bits.
+ ServerPerMessageDeflateFactory(
+ client_max_window_bits=10,
+ require_client_max_window_bits=True,
+ ),
+ ServerPerMessageDeflateFactory(),
+ ]
+ )
+ @with_client(
+ "/extensions",
+ extensions=[
+ ClientPerMessageDeflateFactory(client_max_window_bits=None),
+ ],
+ )
+ def test_extension_no_match_then_match(self):
+ # The order requested by the client has priority.
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(
+ server_extensions, repr([PerMessageDeflate(False, False, 15, 15)])
+ )
+ self.assertEqual(
+ repr(self.client.extensions),
+ repr([PerMessageDeflate(False, False, 15, 15)]),
+ )
+
+ @with_server(extensions=[ServerPerMessageDeflateFactory()])
+ @with_client("/extensions", extensions=[ClientNoOpExtensionFactory()])
+ def test_extension_mismatch(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_extensions, repr([]))
+ self.assertEqual(repr(self.client.extensions), repr([]))
+
+ @with_server(
+ extensions=[ServerNoOpExtensionFactory(), ServerPerMessageDeflateFactory()]
+ )
+ @with_client(
+ "/extensions",
+ extensions=[ClientPerMessageDeflateFactory(), ClientNoOpExtensionFactory()],
+ )
+ def test_extension_order(self):
+ # The order requested by the client has priority.
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(
+ server_extensions,
+ repr([PerMessageDeflate(False, False, 15, 15), NoOpExtension()]),
+ )
+ self.assertEqual(
+ repr(self.client.extensions),
+ repr([PerMessageDeflate(False, False, 15, 15), NoOpExtension()]),
+ )
+
+ @with_server(extensions=[ServerNoOpExtensionFactory()])
+ @unittest.mock.patch.object(WebSocketServerProtocol, "process_extensions")
+ def test_extensions_error(self, _process_extensions):
+ _process_extensions.return_value = "x-no-op", [NoOpExtension()]
+
+ with self.assertRaises(NegotiationError):
+ self.start_client(
+ "/extensions", extensions=[ClientPerMessageDeflateFactory()]
+ )
+
+ @with_server(extensions=[ServerNoOpExtensionFactory()])
+ @unittest.mock.patch.object(WebSocketServerProtocol, "process_extensions")
+ def test_extensions_error_no_extensions(self, _process_extensions):
+ _process_extensions.return_value = "x-no-op", [NoOpExtension()]
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client("/extensions")
+
+ @with_server(compression="deflate")
+ @with_client("/extensions", compression="deflate")
+ def test_compression_deflate(self):
+ server_extensions = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(
+ server_extensions, repr([PerMessageDeflate(False, False, 12, 12)])
+ )
+ self.assertEqual(
+ repr(self.client.extensions),
+ repr([PerMessageDeflate(False, False, 12, 12)]),
+ )
+
+ def test_compression_unsupported_server(self):
+ with self.assertRaises(ValueError):
+ self.start_server(compression="xz")
+
+ @with_server()
+ def test_compression_unsupported_client(self):
+ with self.assertRaises(ValueError):
+ self.start_client(compression="xz")
+
+ @with_server()
+ @with_client("/subprotocol")
+ def test_no_subprotocol(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr(None))
+ self.assertEqual(self.client.subprotocol, None)
+
+ @with_server(subprotocols=["superchat", "chat"])
+ @with_client("/subprotocol", subprotocols=["otherchat", "chat"])
+ def test_subprotocol(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr("chat"))
+ self.assertEqual(self.client.subprotocol, "chat")
+
+ def test_invalid_subprotocol_server(self):
+ with self.assertRaises(TypeError):
+ self.start_server(subprotocols="sip")
+
+ @with_server()
+ def test_invalid_subprotocol_client(self):
+ with self.assertRaises(TypeError):
+ self.start_client(subprotocols="sip")
+
+ @with_server(subprotocols=["superchat"])
+ @with_client("/subprotocol", subprotocols=["otherchat"])
+ def test_subprotocol_not_accepted(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr(None))
+ self.assertEqual(self.client.subprotocol, None)
+
+ @with_server()
+ @with_client("/subprotocol", subprotocols=["otherchat", "chat"])
+ def test_subprotocol_not_offered(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr(None))
+ self.assertEqual(self.client.subprotocol, None)
+
+ @with_server(subprotocols=["superchat", "chat"])
+ @with_client("/subprotocol")
+ def test_subprotocol_not_requested(self):
+ server_subprotocol = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(server_subprotocol, repr(None))
+ self.assertEqual(self.client.subprotocol, None)
+
+ @with_server(subprotocols=["superchat"])
+ @unittest.mock.patch.object(WebSocketServerProtocol, "process_subprotocol")
+ def test_subprotocol_error(self, _process_subprotocol):
+ _process_subprotocol.return_value = "superchat"
+
+ with self.assertRaises(NegotiationError):
+ self.start_client("/subprotocol", subprotocols=["otherchat"])
+ self.run_loop_once()
+
+ @with_server(subprotocols=["superchat"])
+ @unittest.mock.patch.object(WebSocketServerProtocol, "process_subprotocol")
+ def test_subprotocol_error_no_subprotocols(self, _process_subprotocol):
+ _process_subprotocol.return_value = "superchat"
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client("/subprotocol")
+ self.run_loop_once()
+
+ @with_server(subprotocols=["superchat", "chat"])
+ @unittest.mock.patch.object(WebSocketServerProtocol, "process_subprotocol")
+ def test_subprotocol_error_two_subprotocols(self, _process_subprotocol):
+ _process_subprotocol.return_value = "superchat, chat"
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client("/subprotocol", subprotocols=["superchat", "chat"])
+ self.run_loop_once()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.server.read_request")
+ def test_server_receives_malformed_request(self, _read_request):
+ _read_request.side_effect = ValueError("read_request failed")
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.client.read_response")
+ def test_client_receives_malformed_response(self, _read_response):
+ _read_response.side_effect = ValueError("read_response failed")
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client()
+ self.run_loop_once()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.client.build_request")
+ def test_client_sends_invalid_handshake_request(self, _build_request):
+ def wrong_build_request(headers):
+ return "42"
+
+ _build_request.side_effect = wrong_build_request
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.server.build_response")
+ def test_server_sends_invalid_handshake_response(self, _build_response):
+ def wrong_build_response(headers, key):
+ return build_response(headers, "42")
+
+ _build_response.side_effect = wrong_build_response
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.client.read_response")
+ def test_server_does_not_switch_protocols(self, _read_response):
+ async def wrong_read_response(stream):
+ status_code, reason, headers = await read_response(stream)
+ return 400, "Bad Request", headers
+
+ _read_response.side_effect = wrong_read_response
+
+ with self.assertRaises(InvalidStatusCode):
+ self.start_client()
+ self.run_loop_once()
+
+ @with_server()
+ @unittest.mock.patch(
+ "websockets.legacy.server.WebSocketServerProtocol.process_request"
+ )
+ def test_server_error_in_handshake(self, _process_request):
+ _process_request.side_effect = Exception("process_request crashed")
+
+ with self.assertRaises(InvalidHandshake):
+ self.start_client()
+
+ @with_server(create_protocol=SlowOpeningHandshakeProtocol)
+ def test_client_connect_canceled_during_handshake(self):
+ sock = socket.create_connection(get_server_address(self.server))
+ sock.send(b"") # socket is connected
+
+ async def cancelled_client():
+ start_client = connect(get_server_uri(self.server), sock=sock)
+ async with asyncio_timeout(5 * MS):
+ await start_client
+
+ with self.assertRaises(asyncio.TimeoutError):
+ self.loop.run_until_complete(cancelled_client())
+
+ with self.assertRaises(OSError):
+ sock.send(b"") # socket is closed
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.server.WebSocketServerProtocol.send")
+ def test_server_handler_crashes(self, send):
+ send.side_effect = ValueError("send failed")
+
+ with self.temp_client():
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.client.recv())
+
+ # Connection ends with an unexpected error.
+ self.assertEqual(self.client.close_code, CloseCode.INTERNAL_ERROR)
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.server.WebSocketServerProtocol.close")
+ def test_server_close_crashes(self, close):
+ close.side_effect = ValueError("close failed")
+
+ with self.temp_client():
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ # Connection ends with an abnormal closure.
+ self.assertEqual(self.client.close_code, CloseCode.ABNORMAL_CLOSURE)
+
+ @with_server()
+ @with_client()
+ @unittest.mock.patch.object(WebSocketClientProtocol, "handshake")
+ def test_client_closes_connection_before_handshake(self, handshake):
+ # We have mocked the handshake() method to prevent the client from
+ # performing the opening handshake. Force it to close the connection.
+ self.client.transport.close()
+ # The server should stop properly anyway. It used to hang because the
+ # task handling the connection was waiting for the opening handshake.
+
+ @with_server(create_protocol=SlowOpeningHandshakeProtocol)
+ def test_server_shuts_down_during_opening_handshake(self):
+ self.loop.call_later(5 * MS, self.server.close)
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client()
+ exception = raised.exception
+ self.assertEqual(
+ str(exception), "server rejected WebSocket connection: HTTP 503"
+ )
+ self.assertEqual(exception.status_code, 503)
+
+ @with_server()
+ def test_server_shuts_down_during_connection_handling(self):
+ with self.temp_client():
+ server_ws = next(iter(self.server.websockets))
+ self.server.close()
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ # Server closed the connection with 1001 Going Away.
+ self.assertEqual(self.client.close_code, CloseCode.GOING_AWAY)
+ self.assertEqual(server_ws.close_code, CloseCode.GOING_AWAY)
+
+ @with_server()
+ def test_server_shuts_down_gracefully_during_connection_handling(self):
+ with self.temp_client():
+ server_ws = next(iter(self.server.websockets))
+ self.server.close(close_connections=False)
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+
+ # Client closed the connection with 1000 OK.
+ self.assertEqual(self.client.close_code, CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server_ws.close_code, CloseCode.NORMAL_CLOSURE)
+
+ @with_server()
+ def test_server_shuts_down_and_waits_until_handlers_terminate(self):
+ # This handler waits a bit after the connection is closed in order
+ # to test that wait_closed() really waits for handlers to complete.
+ self.start_client("/slow_stop")
+ server_ws = next(iter(self.server.websockets))
+
+ # Test that the handler task keeps running after close().
+ self.server.close()
+ self.loop.run_until_complete(asyncio.sleep(MS))
+ self.assertFalse(server_ws.handler_task.done())
+
+ # Test that the handler task terminates before wait_closed() returns.
+ self.loop.run_until_complete(self.server.wait_closed())
+ self.assertTrue(server_ws.handler_task.done())
+
+ @with_server(create_protocol=ForbiddenServerProtocol)
+ def test_invalid_status_error_during_client_connect(self):
+ with self.assertRaises(InvalidStatusCode) as raised:
+ self.start_client()
+ exception = raised.exception
+ self.assertEqual(
+ str(exception), "server rejected WebSocket connection: HTTP 403"
+ )
+ self.assertEqual(exception.status_code, 403)
+
+ @with_server()
+ @unittest.mock.patch(
+ "websockets.legacy.server.WebSocketServerProtocol.write_http_response"
+ )
+ @unittest.mock.patch(
+ "websockets.legacy.server.WebSocketServerProtocol.read_http_request"
+ )
+ def test_connection_error_during_opening_handshake(
+ self, _read_http_request, _write_http_response
+ ):
+ _read_http_request.side_effect = ConnectionError
+
+ # This exception is currently platform-dependent. It was observed to
+ # be ConnectionResetError on Linux in the non-TLS case, and
+ # InvalidMessage otherwise (including both Linux and macOS). This
+ # doesn't matter though since this test is primarily for testing a
+ # code path on the server side.
+ with self.assertRaises(Exception):
+ self.start_client()
+
+ # No response must not be written if the network connection is broken.
+ _write_http_response.assert_not_called()
+
+ @with_server()
+ @unittest.mock.patch("websockets.legacy.server.WebSocketServerProtocol.close")
+ def test_connection_error_during_closing_handshake(self, close):
+ close.side_effect = ConnectionError
+
+ with self.temp_client():
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ reply = self.loop.run_until_complete(self.client.recv())
+ self.assertEqual(reply, "Hello!")
+
+ # Connection ends with an abnormal closure.
+ self.assertEqual(self.client.close_code, CloseCode.ABNORMAL_CLOSURE)
+
+
+class ClientServerTests(
+ CommonClientServerTests, ClientServerTestsMixin, AsyncioTestCase
+):
+ pass
+
+
+class SecureClientServerTests(
+ CommonClientServerTests, SecureClientServerTestsMixin, AsyncioTestCase
+):
+ # The implementation of this test makes it hard to run it over TLS.
+ test_client_connect_canceled_during_handshake = None
+
+ # TLS over Unix sockets doesn't make sense.
+ test_unix_socket = None
+
+ # This test fails under PyPy due to a difference with CPython.
+ if platform.python_implementation() == "PyPy": # pragma: no cover
+ test_http_request_ws_endpoint = None
+
+ @with_server()
+ def test_ws_uri_is_rejected(self):
+ with self.assertRaises(ValueError):
+ self.start_client(
+ uri=get_server_uri(self.server, secure=False), ssl=self.client_context
+ )
+
+ def test_redirect_insecure(self):
+ with temp_test_redirecting_server(self):
+ with self.assertRaises(InvalidHandshake):
+ with self.temp_client("/force_insecure"):
+ self.fail("did not raise")
+
+
+class ClientServerOriginTests(ClientServerTestsMixin, AsyncioTestCase):
+ @with_server(origins=["http://localhost"])
+ @with_client(origin="http://localhost")
+ def test_checking_origin_succeeds(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.assertEqual(self.loop.run_until_complete(self.client.recv()), "Hello!")
+
+ @with_server(origins=["http://localhost"])
+ def test_checking_origin_fails(self):
+ with self.assertRaisesRegex(
+ InvalidHandshake, "server rejected WebSocket connection: HTTP 403"
+ ):
+ self.start_client(origin="http://otherhost")
+
+ @with_server(origins=["http://localhost"])
+ def test_checking_origins_fails_with_multiple_headers(self):
+ with self.assertRaisesRegex(
+ InvalidHandshake, "server rejected WebSocket connection: HTTP 400"
+ ):
+ self.start_client(
+ origin="http://localhost",
+ extra_headers=[("Origin", "http://otherhost")],
+ )
+
+ @with_server(origins=[None])
+ @with_client()
+ def test_checking_lack_of_origin_succeeds(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.assertEqual(self.loop.run_until_complete(self.client.recv()), "Hello!")
+
+ @with_server(origins=[""])
+ # The deprecation warning is raised when a client connects to the server.
+ @with_client(deprecation_warnings=["use None instead of '' in origins"])
+ def test_checking_lack_of_origin_succeeds_backwards_compatibility(self):
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.assertEqual(self.loop.run_until_complete(self.client.recv()), "Hello!")
+
+
+@unittest.skipIf(
+ sys.version_info[:2] >= (3, 11), "asyncio.coroutine has been removed in Python 3.11"
+)
+class YieldFromTests(ClientServerTestsMixin, AsyncioTestCase): # pragma: no cover
+ @with_server()
+ def test_client(self):
+ # @asyncio.coroutine is deprecated on Python ≥ 3.8
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+
+ @asyncio.coroutine
+ def run_client():
+ # Yield from connect.
+ client = yield from connect(get_server_uri(self.server))
+ self.assertEqual(client.state, State.OPEN)
+ yield from client.close()
+ self.assertEqual(client.state, State.CLOSED)
+
+ self.loop.run_until_complete(run_client())
+
+ def test_server(self):
+ # @asyncio.coroutine is deprecated on Python ≥ 3.8
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+
+ @asyncio.coroutine
+ def run_server():
+ # Yield from serve.
+ server = yield from serve(default_handler, "localhost", 0)
+ self.assertTrue(server.sockets)
+ server.close()
+ yield from server.wait_closed()
+ self.assertFalse(server.sockets)
+
+ self.loop.run_until_complete(run_server())
+
+
+class AsyncAwaitTests(ClientServerTestsMixin, AsyncioTestCase):
+ @with_server()
+ def test_client(self):
+ async def run_client():
+ # Await connect.
+ client = await connect(get_server_uri(self.server))
+ self.assertEqual(client.state, State.OPEN)
+ await client.close()
+ self.assertEqual(client.state, State.CLOSED)
+
+ self.loop.run_until_complete(run_client())
+
+ def test_server(self):
+ async def run_server():
+ # Await serve.
+ server = await serve(default_handler, "localhost", 0)
+ self.assertTrue(server.sockets)
+ server.close()
+ await server.wait_closed()
+ self.assertFalse(server.sockets)
+
+ self.loop.run_until_complete(run_server())
+
+
+class ContextManagerTests(ClientServerTestsMixin, AsyncioTestCase):
+ @with_server()
+ def test_client(self):
+ async def run_client():
+ # Use connect as an asynchronous context manager.
+ async with connect(get_server_uri(self.server)) as client:
+ self.assertEqual(client.state, State.OPEN)
+
+ # Check that exiting the context manager closed the connection.
+ self.assertEqual(client.state, State.CLOSED)
+
+ self.loop.run_until_complete(run_client())
+
+ def test_server(self):
+ async def run_server():
+ # Use serve as an asynchronous context manager.
+ async with serve(default_handler, "localhost", 0) as server:
+ self.assertTrue(server.sockets)
+
+ # Check that exiting the context manager closed the server.
+ self.assertFalse(server.sockets)
+
+ self.loop.run_until_complete(run_server())
+
+ @unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+ def test_unix_server(self):
+ async def run_server(path):
+ async with unix_serve(default_handler, path) as server:
+ self.assertTrue(server.sockets)
+
+ # Check that exiting the context manager closed the server.
+ self.assertFalse(server.sockets)
+
+ with temp_unix_socket_path() as path:
+ self.loop.run_until_complete(run_server(path))
+
+
+class AsyncIteratorTests(ClientServerTestsMixin, AsyncioTestCase):
+ # This is a protocol-level feature, but since it's a high-level API, it is
+ # much easier to exercise at the client or server level.
+
+ MESSAGES = ["3", "2", "1", "Fire!"]
+
+ async def echo_handler(ws):
+ for message in AsyncIteratorTests.MESSAGES:
+ await ws.send(message)
+
+ @with_server(handler=echo_handler)
+ def test_iterate_on_messages(self):
+ messages = []
+
+ async def run_client():
+ nonlocal messages
+ async with connect(get_server_uri(self.server)) as ws:
+ async for message in ws:
+ messages.append(message)
+
+ self.loop.run_until_complete(run_client())
+
+ self.assertEqual(messages, self.MESSAGES)
+
+ async def echo_handler_going_away(ws):
+ for message in AsyncIteratorTests.MESSAGES:
+ await ws.send(message)
+ await ws.close(CloseCode.GOING_AWAY)
+
+ @with_server(handler=echo_handler_going_away)
+ def test_iterate_on_messages_going_away_exit_ok(self):
+ messages = []
+
+ async def run_client():
+ nonlocal messages
+ async with connect(get_server_uri(self.server)) as ws:
+ async for message in ws:
+ messages.append(message)
+
+ self.loop.run_until_complete(run_client())
+
+ self.assertEqual(messages, self.MESSAGES)
+
+ async def echo_handler_internal_error(ws):
+ for message in AsyncIteratorTests.MESSAGES:
+ await ws.send(message)
+ await ws.close(CloseCode.INTERNAL_ERROR)
+
+ @with_server(handler=echo_handler_internal_error)
+ def test_iterate_on_messages_internal_error_exit_not_ok(self):
+ messages = []
+
+ async def run_client():
+ nonlocal messages
+ async with connect(get_server_uri(self.server)) as ws:
+ async for message in ws:
+ messages.append(message)
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(run_client())
+
+ self.assertEqual(messages, self.MESSAGES)
+
+
+class ReconnectionTests(ClientServerTestsMixin, AsyncioTestCase):
+ async def echo_handler(ws):
+ async for msg in ws:
+ await ws.send(msg)
+
+ service_available = True
+
+ async def maybe_service_unavailable(path, headers):
+ if not ReconnectionTests.service_available:
+ return http.HTTPStatus.SERVICE_UNAVAILABLE, [], b""
+
+ async def disable_server(self, duration):
+ ReconnectionTests.service_available = False
+ await asyncio.sleep(duration)
+ ReconnectionTests.service_available = True
+
+ @with_server(handler=echo_handler, process_request=maybe_service_unavailable)
+ def test_reconnect(self):
+ # Big, ugly integration test :-(
+
+ async def run_client():
+ iteration = 0
+ connect_inst = connect(get_server_uri(self.server))
+ connect_inst.BACKOFF_MIN = 10 * MS
+ connect_inst.BACKOFF_MAX = 99 * MS
+ connect_inst.BACKOFF_INITIAL = 0
+ # coverage has a hard time dealing with this code - I give up.
+ async for ws in connect_inst: # pragma: no cover
+ await ws.send("spam")
+ msg = await ws.recv()
+ self.assertEqual(msg, "spam")
+
+ iteration += 1
+ if iteration == 1:
+ # Exit block normally.
+ pass
+ elif iteration == 2:
+ # Disable server for a little bit
+ asyncio.create_task(self.disable_server(50 * MS))
+ await asyncio.sleep(0)
+ elif iteration == 3:
+ # Exit block after catching connection error.
+ server_ws = next(iter(self.server.websockets))
+ await server_ws.close()
+ with self.assertRaises(ConnectionClosed):
+ await ws.recv()
+ else:
+ # Exit block with an exception.
+ raise Exception("BOOM")
+ pass # work around bug in coverage
+
+ with self.assertLogs("websockets", logging.INFO) as logs:
+ with self.assertRaisesRegex(Exception, "BOOM"):
+ self.loop.run_until_complete(run_client())
+
+ # Iteration 1
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][:2],
+ [
+ "connection open",
+ "connection closed",
+ ],
+ )
+ # Iteration 2
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][2:4],
+ [
+ "connection open",
+ "connection closed",
+ ],
+ )
+ # Iteration 3
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][4:-1],
+ [
+ "connection rejected (503 Service Unavailable)",
+ "connection closed",
+ "! connect failed; reconnecting in 0.0 seconds",
+ ]
+ + [
+ "connection rejected (503 Service Unavailable)",
+ "connection closed",
+ "! connect failed again; retrying in 0 seconds",
+ ]
+ * ((len(logs.records) - 8) // 3)
+ + [
+ "connection open",
+ "connection closed",
+ ],
+ )
+ # Iteration 4
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][-1:],
+ [
+ "connection open",
+ ],
+ )
+
+
+class LoggerTests(ClientServerTestsMixin, AsyncioTestCase):
+ def test_logger_client(self):
+ with self.assertLogs("test.server", logging.DEBUG) as server_logs:
+ self.start_server(logger=logging.getLogger("test.server"))
+ with self.assertLogs("test.client", logging.DEBUG) as client_logs:
+ self.start_client(logger=logging.getLogger("test.client"))
+ self.loop.run_until_complete(self.client.send("Hello!"))
+ self.loop.run_until_complete(self.client.recv())
+ self.stop_client()
+ self.stop_server()
+
+ self.assertGreater(len(server_logs.records), 0)
+ self.assertGreater(len(client_logs.records), 0)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_framing.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_framing.py
new file mode 100644
index 0000000000..e1e4c891b0
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_framing.py
@@ -0,0 +1,206 @@
+import asyncio
+import codecs
+import dataclasses
+import unittest
+import unittest.mock
+import warnings
+
+from websockets.exceptions import PayloadTooBig, ProtocolError
+from websockets.frames import OP_BINARY, OP_CLOSE, OP_PING, OP_PONG, OP_TEXT, CloseCode
+from websockets.legacy.framing import *
+
+from .utils import AsyncioTestCase
+
+
+class FramingTests(AsyncioTestCase):
+ def decode(self, message, mask=False, max_size=None, extensions=None):
+ stream = asyncio.StreamReader(loop=self.loop)
+ stream.feed_data(message)
+ stream.feed_eof()
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+ frame = self.loop.run_until_complete(
+ Frame.read(
+ stream.readexactly,
+ mask=mask,
+ max_size=max_size,
+ extensions=extensions,
+ )
+ )
+ # Make sure all the data was consumed.
+ self.assertTrue(stream.at_eof())
+ return frame
+
+ def encode(self, frame, mask=False, extensions=None):
+ write = unittest.mock.Mock()
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+ frame.write(write, mask=mask, extensions=extensions)
+ # Ensure the entire frame is sent with a single call to write().
+ # Multiple calls cause TCP fragmentation and degrade performance.
+ self.assertEqual(write.call_count, 1)
+ # The frame data is the single positional argument of that call.
+ self.assertEqual(len(write.call_args[0]), 1)
+ self.assertEqual(len(write.call_args[1]), 0)
+ return write.call_args[0][0]
+
+ def round_trip(self, message, expected, mask=False, extensions=None):
+ decoded = self.decode(message, mask, extensions=extensions)
+ decoded.check()
+ self.assertEqual(decoded, expected)
+ encoded = self.encode(decoded, mask, extensions=extensions)
+ if mask: # non-deterministic encoding
+ decoded = self.decode(encoded, mask, extensions=extensions)
+ self.assertEqual(decoded, expected)
+ else: # deterministic encoding
+ self.assertEqual(encoded, message)
+
+ def test_text(self):
+ self.round_trip(b"\x81\x04Spam", Frame(True, OP_TEXT, b"Spam"))
+
+ def test_text_masked(self):
+ self.round_trip(
+ b"\x81\x84\x5b\xfb\xe1\xa8\x08\x8b\x80\xc5",
+ Frame(True, OP_TEXT, b"Spam"),
+ mask=True,
+ )
+
+ def test_binary(self):
+ self.round_trip(b"\x82\x04Eggs", Frame(True, OP_BINARY, b"Eggs"))
+
+ def test_binary_masked(self):
+ self.round_trip(
+ b"\x82\x84\x53\xcd\xe2\x89\x16\xaa\x85\xfa",
+ Frame(True, OP_BINARY, b"Eggs"),
+ mask=True,
+ )
+
+ def test_non_ascii_text(self):
+ self.round_trip(
+ b"\x81\x05caf\xc3\xa9", Frame(True, OP_TEXT, "café".encode("utf-8"))
+ )
+
+ def test_non_ascii_text_masked(self):
+ self.round_trip(
+ b"\x81\x85\x64\xbe\xee\x7e\x07\xdf\x88\xbd\xcd",
+ Frame(True, OP_TEXT, "café".encode("utf-8")),
+ mask=True,
+ )
+
+ def test_close(self):
+ self.round_trip(b"\x88\x00", Frame(True, OP_CLOSE, b""))
+
+ def test_ping(self):
+ self.round_trip(b"\x89\x04ping", Frame(True, OP_PING, b"ping"))
+
+ def test_pong(self):
+ self.round_trip(b"\x8a\x04pong", Frame(True, OP_PONG, b"pong"))
+
+ def test_long(self):
+ self.round_trip(
+ b"\x82\x7e\x00\x7e" + 126 * b"a", Frame(True, OP_BINARY, 126 * b"a")
+ )
+
+ def test_very_long(self):
+ self.round_trip(
+ b"\x82\x7f\x00\x00\x00\x00\x00\x01\x00\x00" + 65536 * b"a",
+ Frame(True, OP_BINARY, 65536 * b"a"),
+ )
+
+ def test_payload_too_big(self):
+ with self.assertRaises(PayloadTooBig):
+ self.decode(b"\x82\x7e\x04\x01" + 1025 * b"a", max_size=1024)
+
+ def test_bad_reserved_bits(self):
+ for encoded in [b"\xc0\x00", b"\xa0\x00", b"\x90\x00"]:
+ with self.subTest(encoded=encoded):
+ with self.assertRaises(ProtocolError):
+ self.decode(encoded)
+
+ def test_good_opcode(self):
+ for opcode in list(range(0x00, 0x03)) + list(range(0x08, 0x0B)):
+ encoded = bytes([0x80 | opcode, 0])
+ with self.subTest(encoded=encoded):
+ self.decode(encoded) # does not raise an exception
+
+ def test_bad_opcode(self):
+ for opcode in list(range(0x03, 0x08)) + list(range(0x0B, 0x10)):
+ encoded = bytes([0x80 | opcode, 0])
+ with self.subTest(encoded=encoded):
+ with self.assertRaises(ProtocolError):
+ self.decode(encoded)
+
+ def test_mask_flag(self):
+ # Mask flag correctly set.
+ self.decode(b"\x80\x80\x00\x00\x00\x00", mask=True)
+ # Mask flag incorrectly unset.
+ with self.assertRaises(ProtocolError):
+ self.decode(b"\x80\x80\x00\x00\x00\x00")
+ # Mask flag correctly unset.
+ self.decode(b"\x80\x00")
+ # Mask flag incorrectly set.
+ with self.assertRaises(ProtocolError):
+ self.decode(b"\x80\x00", mask=True)
+
+ def test_control_frame_max_length(self):
+ # At maximum allowed length.
+ self.decode(b"\x88\x7e\x00\x7d" + 125 * b"a")
+ # Above maximum allowed length.
+ with self.assertRaises(ProtocolError):
+ self.decode(b"\x88\x7e\x00\x7e" + 126 * b"a")
+
+ def test_fragmented_control_frame(self):
+ # Fin bit correctly set.
+ self.decode(b"\x88\x00")
+ # Fin bit incorrectly unset.
+ with self.assertRaises(ProtocolError):
+ self.decode(b"\x08\x00")
+
+ def test_extensions(self):
+ class Rot13:
+ @staticmethod
+ def encode(frame):
+ assert frame.opcode == OP_TEXT
+ text = frame.data.decode()
+ data = codecs.encode(text, "rot13").encode()
+ return dataclasses.replace(frame, data=data)
+
+ # This extensions is symmetrical.
+ @staticmethod
+ def decode(frame, *, max_size=None):
+ return Rot13.encode(frame)
+
+ self.round_trip(
+ b"\x81\x05uryyb", Frame(True, OP_TEXT, b"hello"), extensions=[Rot13()]
+ )
+
+
+class ParseAndSerializeCloseTests(unittest.TestCase):
+ def assertCloseData(self, code, reason, data):
+ """
+ Serializing code / reason yields data. Parsing data yields code / reason.
+
+ """
+ serialized = serialize_close(code, reason)
+ self.assertEqual(serialized, data)
+ parsed = parse_close(data)
+ self.assertEqual(parsed, (code, reason))
+
+ def test_parse_close_and_serialize_close(self):
+ self.assertCloseData(CloseCode.NORMAL_CLOSURE, "", b"\x03\xe8")
+ self.assertCloseData(CloseCode.NORMAL_CLOSURE, "OK", b"\x03\xe8OK")
+
+ def test_parse_close_empty(self):
+ self.assertEqual(parse_close(b""), (CloseCode.NO_STATUS_RCVD, ""))
+
+ def test_parse_close_errors(self):
+ with self.assertRaises(ProtocolError):
+ parse_close(b"\x03")
+ with self.assertRaises(ProtocolError):
+ parse_close(b"\x03\xe7")
+ with self.assertRaises(UnicodeDecodeError):
+ parse_close(b"\x03\xe8\xff\xff")
+
+ def test_serialize_close_errors(self):
+ with self.assertRaises(ProtocolError):
+ serialize_close(999, "")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_handshake.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_handshake.py
new file mode 100644
index 0000000000..661ae64fc4
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_handshake.py
@@ -0,0 +1,184 @@
+import contextlib
+import unittest
+
+from websockets.datastructures import Headers
+from websockets.exceptions import (
+ InvalidHandshake,
+ InvalidHeader,
+ InvalidHeaderValue,
+ InvalidUpgrade,
+)
+from websockets.legacy.handshake import *
+from websockets.utils import accept_key
+
+
+class HandshakeTests(unittest.TestCase):
+ def test_round_trip(self):
+ request_headers = Headers()
+ request_key = build_request(request_headers)
+ response_key = check_request(request_headers)
+ self.assertEqual(request_key, response_key)
+ response_headers = Headers()
+ build_response(response_headers, response_key)
+ check_response(response_headers, request_key)
+
+ @contextlib.contextmanager
+ def assertValidRequestHeaders(self):
+ """
+ Provide request headers for modification.
+
+ Assert that the transformation kept them valid.
+
+ """
+ headers = Headers()
+ build_request(headers)
+ yield headers
+ check_request(headers)
+
+ @contextlib.contextmanager
+ def assertInvalidRequestHeaders(self, exc_type):
+ """
+ Provide request headers for modification.
+
+ Assert that the transformation made them invalid.
+
+ """
+ headers = Headers()
+ build_request(headers)
+ yield headers
+ assert issubclass(exc_type, InvalidHandshake)
+ with self.assertRaises(exc_type):
+ check_request(headers)
+
+ def test_request_invalid_connection(self):
+ with self.assertInvalidRequestHeaders(InvalidUpgrade) as headers:
+ del headers["Connection"]
+ headers["Connection"] = "Downgrade"
+
+ def test_request_missing_connection(self):
+ with self.assertInvalidRequestHeaders(InvalidUpgrade) as headers:
+ del headers["Connection"]
+
+ def test_request_additional_connection(self):
+ with self.assertValidRequestHeaders() as headers:
+ headers["Connection"] = "close"
+
+ def test_request_invalid_upgrade(self):
+ with self.assertInvalidRequestHeaders(InvalidUpgrade) as headers:
+ del headers["Upgrade"]
+ headers["Upgrade"] = "socketweb"
+
+ def test_request_missing_upgrade(self):
+ with self.assertInvalidRequestHeaders(InvalidUpgrade) as headers:
+ del headers["Upgrade"]
+
+ def test_request_additional_upgrade(self):
+ with self.assertInvalidRequestHeaders(InvalidUpgrade) as headers:
+ headers["Upgrade"] = "socketweb"
+
+ def test_request_invalid_key_not_base64(self):
+ with self.assertInvalidRequestHeaders(InvalidHeaderValue) as headers:
+ del headers["Sec-WebSocket-Key"]
+ headers["Sec-WebSocket-Key"] = "!@#$%^&*()"
+
+ def test_request_invalid_key_not_well_padded(self):
+ with self.assertInvalidRequestHeaders(InvalidHeaderValue) as headers:
+ del headers["Sec-WebSocket-Key"]
+ headers["Sec-WebSocket-Key"] = "CSIRmL8dWYxeAdr/XpEHRw"
+
+ def test_request_invalid_key_not_16_bytes_long(self):
+ with self.assertInvalidRequestHeaders(InvalidHeaderValue) as headers:
+ del headers["Sec-WebSocket-Key"]
+ headers["Sec-WebSocket-Key"] = "ZLpprpvK4PE="
+
+ def test_request_missing_key(self):
+ with self.assertInvalidRequestHeaders(InvalidHeader) as headers:
+ del headers["Sec-WebSocket-Key"]
+
+ def test_request_additional_key(self):
+ with self.assertInvalidRequestHeaders(InvalidHeader) as headers:
+ # This duplicates the Sec-WebSocket-Key header.
+ headers["Sec-WebSocket-Key"] = headers["Sec-WebSocket-Key"]
+
+ def test_request_invalid_version(self):
+ with self.assertInvalidRequestHeaders(InvalidHeaderValue) as headers:
+ del headers["Sec-WebSocket-Version"]
+ headers["Sec-WebSocket-Version"] = "42"
+
+ def test_request_missing_version(self):
+ with self.assertInvalidRequestHeaders(InvalidHeader) as headers:
+ del headers["Sec-WebSocket-Version"]
+
+ def test_request_additional_version(self):
+ with self.assertInvalidRequestHeaders(InvalidHeader) as headers:
+ # This duplicates the Sec-WebSocket-Version header.
+ headers["Sec-WebSocket-Version"] = headers["Sec-WebSocket-Version"]
+
+ @contextlib.contextmanager
+ def assertValidResponseHeaders(self, key="CSIRmL8dWYxeAdr/XpEHRw=="):
+ """
+ Provide response headers for modification.
+
+ Assert that the transformation kept them valid.
+
+ """
+ headers = Headers()
+ build_response(headers, key)
+ yield headers
+ check_response(headers, key)
+
+ @contextlib.contextmanager
+ def assertInvalidResponseHeaders(self, exc_type, key="CSIRmL8dWYxeAdr/XpEHRw=="):
+ """
+ Provide response headers for modification.
+
+ Assert that the transformation made them invalid.
+
+ """
+ headers = Headers()
+ build_response(headers, key)
+ yield headers
+ assert issubclass(exc_type, InvalidHandshake)
+ with self.assertRaises(exc_type):
+ check_response(headers, key)
+
+ def test_response_invalid_connection(self):
+ with self.assertInvalidResponseHeaders(InvalidUpgrade) as headers:
+ del headers["Connection"]
+ headers["Connection"] = "Downgrade"
+
+ def test_response_missing_connection(self):
+ with self.assertInvalidResponseHeaders(InvalidUpgrade) as headers:
+ del headers["Connection"]
+
+ def test_response_additional_connection(self):
+ with self.assertValidResponseHeaders() as headers:
+ headers["Connection"] = "close"
+
+ def test_response_invalid_upgrade(self):
+ with self.assertInvalidResponseHeaders(InvalidUpgrade) as headers:
+ del headers["Upgrade"]
+ headers["Upgrade"] = "socketweb"
+
+ def test_response_missing_upgrade(self):
+ with self.assertInvalidResponseHeaders(InvalidUpgrade) as headers:
+ del headers["Upgrade"]
+
+ def test_response_additional_upgrade(self):
+ with self.assertInvalidResponseHeaders(InvalidUpgrade) as headers:
+ headers["Upgrade"] = "socketweb"
+
+ def test_response_invalid_accept(self):
+ with self.assertInvalidResponseHeaders(InvalidHeaderValue) as headers:
+ del headers["Sec-WebSocket-Accept"]
+ other_key = "1Eq4UDEFQYg3YspNgqxv5g=="
+ headers["Sec-WebSocket-Accept"] = accept_key(other_key)
+
+ def test_response_missing_accept(self):
+ with self.assertInvalidResponseHeaders(InvalidHeader) as headers:
+ del headers["Sec-WebSocket-Accept"]
+
+ def test_response_additional_accept(self):
+ with self.assertInvalidResponseHeaders(InvalidHeader) as headers:
+ # This duplicates the Sec-WebSocket-Accept header.
+ headers["Sec-WebSocket-Accept"] = headers["Sec-WebSocket-Accept"]
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_http.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_http.py
new file mode 100644
index 0000000000..15d53e08d2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_http.py
@@ -0,0 +1,135 @@
+import asyncio
+
+from websockets.exceptions import SecurityError
+from websockets.legacy.http import *
+from websockets.legacy.http import read_headers
+
+from .utils import AsyncioTestCase
+
+
+class HTTPAsyncTests(AsyncioTestCase):
+ def setUp(self):
+ super().setUp()
+ self.stream = asyncio.StreamReader(loop=self.loop)
+
+ async def test_read_request(self):
+ # Example from the protocol overview in RFC 6455
+ self.stream.feed_data(
+ b"GET /chat HTTP/1.1\r\n"
+ b"Host: server.example.com\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n"
+ b"Origin: http://example.com\r\n"
+ b"Sec-WebSocket-Protocol: chat, superchat\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"\r\n"
+ )
+ path, headers = await read_request(self.stream)
+ self.assertEqual(path, "/chat")
+ self.assertEqual(headers["Upgrade"], "websocket")
+
+ async def test_read_request_empty(self):
+ self.stream.feed_eof()
+ with self.assertRaisesRegex(
+ EOFError, "connection closed while reading HTTP request line"
+ ):
+ await read_request(self.stream)
+
+ async def test_read_request_invalid_request_line(self):
+ self.stream.feed_data(b"GET /\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP request line: GET /"):
+ await read_request(self.stream)
+
+ async def test_read_request_unsupported_method(self):
+ self.stream.feed_data(b"OPTIONS * HTTP/1.1\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "unsupported HTTP method: OPTIONS"):
+ await read_request(self.stream)
+
+ async def test_read_request_unsupported_version(self):
+ self.stream.feed_data(b"GET /chat HTTP/1.0\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "unsupported HTTP version: HTTP/1.0"):
+ await read_request(self.stream)
+
+ async def test_read_request_invalid_header(self):
+ self.stream.feed_data(b"GET /chat HTTP/1.1\r\nOops\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP header line: Oops"):
+ await read_request(self.stream)
+
+ async def test_read_response(self):
+ # Example from the protocol overview in RFC 6455
+ self.stream.feed_data(
+ b"HTTP/1.1 101 Switching Protocols\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\n"
+ b"Sec-WebSocket-Protocol: chat\r\n"
+ b"\r\n"
+ )
+ status_code, reason, headers = await read_response(self.stream)
+ self.assertEqual(status_code, 101)
+ self.assertEqual(reason, "Switching Protocols")
+ self.assertEqual(headers["Upgrade"], "websocket")
+
+ async def test_read_response_empty(self):
+ self.stream.feed_eof()
+ with self.assertRaisesRegex(
+ EOFError, "connection closed while reading HTTP status line"
+ ):
+ await read_response(self.stream)
+
+ async def test_read_request_invalid_status_line(self):
+ self.stream.feed_data(b"Hello!\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP status line: Hello!"):
+ await read_response(self.stream)
+
+ async def test_read_response_unsupported_version(self):
+ self.stream.feed_data(b"HTTP/1.0 400 Bad Request\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "unsupported HTTP version: HTTP/1.0"):
+ await read_response(self.stream)
+
+ async def test_read_response_invalid_status(self):
+ self.stream.feed_data(b"HTTP/1.1 OMG WTF\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP status code: OMG"):
+ await read_response(self.stream)
+
+ async def test_read_response_unsupported_status(self):
+ self.stream.feed_data(b"HTTP/1.1 007 My name is Bond\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "unsupported HTTP status code: 007"):
+ await read_response(self.stream)
+
+ async def test_read_response_invalid_reason(self):
+ self.stream.feed_data(b"HTTP/1.1 200 \x7f\r\n\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP reason phrase: \\x7f"):
+ await read_response(self.stream)
+
+ async def test_read_response_invalid_header(self):
+ self.stream.feed_data(b"HTTP/1.1 500 Internal Server Error\r\nOops\r\n")
+ with self.assertRaisesRegex(ValueError, "invalid HTTP header line: Oops"):
+ await read_response(self.stream)
+
+ async def test_header_name(self):
+ self.stream.feed_data(b"foo bar: baz qux\r\n\r\n")
+ with self.assertRaises(ValueError):
+ await read_headers(self.stream)
+
+ async def test_header_value(self):
+ self.stream.feed_data(b"foo: \x00\x00\x0f\r\n\r\n")
+ with self.assertRaises(ValueError):
+ await read_headers(self.stream)
+
+ async def test_headers_limit(self):
+ self.stream.feed_data(b"foo: bar\r\n" * 129 + b"\r\n")
+ with self.assertRaises(SecurityError):
+ await read_headers(self.stream)
+
+ async def test_line_limit(self):
+ # Header line contains 5 + 8186 + 2 = 8193 bytes.
+ self.stream.feed_data(b"foo: " + b"a" * 8186 + b"\r\n\r\n")
+ with self.assertRaises(SecurityError):
+ await read_headers(self.stream)
+
+ async def test_line_ending(self):
+ self.stream.feed_data(b"foo: bar\n\n")
+ with self.assertRaises(EOFError):
+ await read_headers(self.stream)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_protocol.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_protocol.py
new file mode 100644
index 0000000000..f2eb0fea03
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/test_protocol.py
@@ -0,0 +1,1708 @@
+import asyncio
+import contextlib
+import logging
+import sys
+import unittest
+import unittest.mock
+import warnings
+
+from websockets.exceptions import ConnectionClosed, InvalidState
+from websockets.frames import (
+ OP_BINARY,
+ OP_CLOSE,
+ OP_CONT,
+ OP_PING,
+ OP_PONG,
+ OP_TEXT,
+ Close,
+ CloseCode,
+)
+from websockets.legacy.framing import Frame
+from websockets.legacy.protocol import WebSocketCommonProtocol, broadcast
+from websockets.protocol import State
+
+from ..utils import MS
+from .utils import AsyncioTestCase
+
+
+async def async_iterable(iterable):
+ for item in iterable:
+ yield item
+
+
+class TransportMock(unittest.mock.Mock):
+ """
+ Transport mock to control the protocol's inputs and outputs in tests.
+
+ It calls the protocol's connection_made and connection_lost methods like
+ actual transports.
+
+ It also calls the protocol's connection_open method to bypass the
+ WebSocket handshake.
+
+ To simulate incoming data, tests call the protocol's data_received and
+ eof_received methods directly.
+
+ They could also pause_writing and resume_writing to test flow control.
+
+ """
+
+ # This should happen in __init__ but overriding Mock.__init__ is hard.
+ def setup_mock(self, loop, protocol):
+ self.loop = loop
+ self.protocol = protocol
+ self._eof = False
+ self._closing = False
+ # Simulate a successful TCP handshake.
+ self.protocol.connection_made(self)
+ # Simulate a successful WebSocket handshake.
+ self.protocol.connection_open()
+
+ def can_write_eof(self):
+ return True
+
+ def write_eof(self):
+ # When the protocol half-closes the TCP connection, it expects the
+ # other end to close it. Simulate that.
+ if not self._eof:
+ self.loop.call_soon(self.close)
+ self._eof = True
+
+ def close(self):
+ # Simulate how actual transports drop the connection.
+ if not self._closing:
+ self.loop.call_soon(self.protocol.connection_lost, None)
+ self._closing = True
+
+ def abort(self):
+ # Change this to an `if` if tests call abort() multiple times.
+ assert self.protocol.state is not State.CLOSED
+ self.loop.call_soon(self.protocol.connection_lost, None)
+
+
+class CommonTests:
+ """
+ Mixin that defines most tests but doesn't inherit unittest.TestCase.
+
+ Tests are run by the ServerTests and ClientTests subclasses.
+
+ """
+
+ def setUp(self):
+ super().setUp()
+
+ # This logic is encapsulated in a coroutine to prevent it from executing
+ # before the event loop is running which causes asyncio.get_event_loop()
+ # to raise a DeprecationWarning on Python ≥ 3.10.
+
+ async def create_protocol():
+ # Disable pings to make it easier to test what frames are sent exactly.
+ return WebSocketCommonProtocol(ping_interval=None)
+
+ self.protocol = self.loop.run_until_complete(create_protocol())
+ self.transport = TransportMock()
+ self.transport.setup_mock(self.loop, self.protocol)
+
+ def tearDown(self):
+ self.transport.close()
+ self.loop.run_until_complete(self.protocol.close())
+ super().tearDown()
+
+ # Utilities for writing tests.
+
+ def make_drain_slow(self, delay=MS):
+ # Process connection_made in order to initialize self.protocol.transport.
+ self.run_loop_once()
+
+ original_drain = self.protocol._drain
+
+ async def delayed_drain():
+ await asyncio.sleep(delay)
+ await original_drain()
+
+ self.protocol._drain = delayed_drain
+
+ close_frame = Frame(
+ True,
+ OP_CLOSE,
+ Close(CloseCode.NORMAL_CLOSURE, "close").serialize(),
+ )
+ local_close = Frame(
+ True,
+ OP_CLOSE,
+ Close(CloseCode.NORMAL_CLOSURE, "local").serialize(),
+ )
+ remote_close = Frame(
+ True,
+ OP_CLOSE,
+ Close(CloseCode.NORMAL_CLOSURE, "remote").serialize(),
+ )
+
+ def receive_frame(self, frame):
+ """
+ Make the protocol receive a frame.
+
+ """
+ write = self.protocol.data_received
+ mask = not self.protocol.is_client
+ frame.write(write, mask=mask)
+
+ def receive_eof(self):
+ """
+ Make the protocol receive the end of the data stream.
+
+ Since ``WebSocketCommonProtocol.eof_received`` returns ``None``, an
+ actual transport would close itself after calling it. This function
+ emulates that behavior.
+
+ """
+ self.protocol.eof_received()
+ self.loop.call_soon(self.transport.close)
+
+ def receive_eof_if_client(self):
+ """
+ Like receive_eof, but only if this is the client side.
+
+ Since the server is supposed to initiate the termination of the TCP
+ connection, this method helps making tests work for both sides.
+
+ """
+ if self.protocol.is_client:
+ self.receive_eof()
+
+ def close_connection(self, code=CloseCode.NORMAL_CLOSURE, reason="close"):
+ """
+ Execute a closing handshake.
+
+ This puts the connection in the CLOSED state.
+
+ """
+ close_frame_data = Close(code, reason).serialize()
+ # Prepare the response to the closing handshake from the remote side.
+ self.receive_frame(Frame(True, OP_CLOSE, close_frame_data))
+ self.receive_eof_if_client()
+ # Trigger the closing handshake from the local side and complete it.
+ self.loop.run_until_complete(self.protocol.close(code, reason))
+ # Empty the outgoing data stream so we can make assertions later on.
+ self.assertOneFrameSent(True, OP_CLOSE, close_frame_data)
+
+ assert self.protocol.state is State.CLOSED
+
+ def half_close_connection_local(
+ self,
+ code=CloseCode.NORMAL_CLOSURE,
+ reason="close",
+ ):
+ """
+ Start a closing handshake but do not complete it.
+
+ The main difference with `close_connection` is that the connection is
+ left in the CLOSING state until the event loop runs again.
+
+ The current implementation returns a task that must be awaited or
+ canceled, else asyncio complains about destroying a pending task.
+
+ """
+ close_frame_data = Close(code, reason).serialize()
+ # Trigger the closing handshake from the local endpoint.
+ close_task = self.loop.create_task(self.protocol.close(code, reason))
+ self.run_loop_once() # write_frame executes
+ # Empty the outgoing data stream so we can make assertions later on.
+ self.assertOneFrameSent(True, OP_CLOSE, close_frame_data)
+
+ assert self.protocol.state is State.CLOSING
+
+ # Complete the closing sequence at 1ms intervals so the test can run
+ # at each point even it goes back to the event loop several times.
+ self.loop.call_later(
+ MS, self.receive_frame, Frame(True, OP_CLOSE, close_frame_data)
+ )
+ self.loop.call_later(2 * MS, self.receive_eof_if_client)
+
+ # This task must be awaited or canceled by the caller.
+ return close_task
+
+ def half_close_connection_remote(
+ self,
+ code=CloseCode.NORMAL_CLOSURE,
+ reason="close",
+ ):
+ """
+ Receive a closing handshake but do not complete it.
+
+ The main difference with `close_connection` is that the connection is
+ left in the CLOSING state until the event loop runs again.
+
+ """
+ # On the server side, websockets completes the closing handshake and
+ # closes the TCP connection immediately. Yield to the event loop after
+ # sending the close frame to run the test while the connection is in
+ # the CLOSING state.
+ if not self.protocol.is_client:
+ self.make_drain_slow()
+
+ close_frame_data = Close(code, reason).serialize()
+ # Trigger the closing handshake from the remote endpoint.
+ self.receive_frame(Frame(True, OP_CLOSE, close_frame_data))
+ self.run_loop_once() # read_frame executes
+ # Empty the outgoing data stream so we can make assertions later on.
+ self.assertOneFrameSent(True, OP_CLOSE, close_frame_data)
+
+ assert self.protocol.state is State.CLOSING
+
+ # Complete the closing sequence at 1ms intervals so the test can run
+ # at each point even it goes back to the event loop several times.
+ self.loop.call_later(2 * MS, self.receive_eof_if_client)
+
+ def process_invalid_frames(self):
+ """
+ Make the protocol fail quickly after simulating invalid data.
+
+ To achieve this, this function triggers the protocol's eof_received,
+ which interrupts pending reads waiting for more data.
+
+ """
+ self.run_loop_once()
+ self.receive_eof()
+ self.loop.run_until_complete(self.protocol.close_connection_task)
+
+ def sent_frames(self):
+ """
+ Read all frames sent to the transport.
+
+ """
+ stream = asyncio.StreamReader(loop=self.loop)
+
+ for (data,), kw in self.transport.write.call_args_list:
+ stream.feed_data(data)
+ self.transport.write.call_args_list = []
+ stream.feed_eof()
+
+ frames = []
+ while not stream.at_eof():
+ frames.append(
+ self.loop.run_until_complete(
+ Frame.read(stream.readexactly, mask=self.protocol.is_client)
+ )
+ )
+ return frames
+
+ def last_sent_frame(self):
+ """
+ Read the last frame sent to the transport.
+
+ This method assumes that at most one frame was sent. It raises an
+ AssertionError otherwise.
+
+ """
+ frames = self.sent_frames()
+ if frames:
+ assert len(frames) == 1
+ return frames[0]
+
+ def assertFramesSent(self, *frames):
+ self.assertEqual(self.sent_frames(), [Frame(*args) for args in frames])
+
+ def assertOneFrameSent(self, *args):
+ self.assertEqual(self.last_sent_frame(), Frame(*args))
+
+ def assertNoFrameSent(self):
+ self.assertIsNone(self.last_sent_frame())
+
+ def assertConnectionClosed(self, code, message):
+ # The following line guarantees that connection_lost was called.
+ self.assertEqual(self.protocol.state, State.CLOSED)
+ # A close frame was received.
+ self.assertEqual(self.protocol.close_code, code)
+ self.assertEqual(self.protocol.close_reason, message)
+
+ def assertConnectionFailed(self, code, message):
+ # The following line guarantees that connection_lost was called.
+ self.assertEqual(self.protocol.state, State.CLOSED)
+ # No close frame was received.
+ self.assertEqual(self.protocol.close_code, CloseCode.ABNORMAL_CLOSURE)
+ self.assertEqual(self.protocol.close_reason, "")
+ # A close frame was sent -- unless the connection was already lost.
+ if code == CloseCode.ABNORMAL_CLOSURE:
+ self.assertNoFrameSent()
+ else:
+ self.assertOneFrameSent(True, OP_CLOSE, Close(code, message).serialize())
+
+ @contextlib.contextmanager
+ def assertCompletesWithin(self, min_time, max_time):
+ t0 = self.loop.time()
+ yield
+ t1 = self.loop.time()
+ dt = t1 - t0
+ self.assertGreaterEqual(dt, min_time, f"Too fast: {dt} < {min_time}")
+ self.assertLess(dt, max_time, f"Too slow: {dt} >= {max_time}")
+
+ # Test constructor.
+
+ def test_timeout_backwards_compatibility(self):
+ async def create_protocol():
+ return WebSocketCommonProtocol(ping_interval=None, timeout=5)
+
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter("always")
+ protocol = self.loop.run_until_complete(create_protocol())
+
+ self.assertEqual(protocol.close_timeout, 5)
+ self.assertDeprecationWarnings(recorded, ["rename timeout to close_timeout"])
+
+ def test_loop_backwards_compatibility(self):
+ loop = asyncio.new_event_loop()
+ self.addCleanup(loop.close)
+
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter("always")
+ protocol = WebSocketCommonProtocol(ping_interval=None, loop=loop)
+
+ self.assertEqual(protocol.loop, loop)
+ self.assertDeprecationWarnings(recorded, ["remove loop argument"])
+
+ # Test public attributes.
+
+ def test_local_address(self):
+ get_extra_info = unittest.mock.Mock(return_value=("host", 4312))
+ self.transport.get_extra_info = get_extra_info
+
+ self.assertEqual(self.protocol.local_address, ("host", 4312))
+ get_extra_info.assert_called_with("sockname")
+
+ def test_local_address_before_connection(self):
+ # Emulate the situation before connection_open() runs.
+ _transport = self.protocol.transport
+ del self.protocol.transport
+ try:
+ self.assertEqual(self.protocol.local_address, None)
+ finally:
+ self.protocol.transport = _transport
+
+ def test_remote_address(self):
+ get_extra_info = unittest.mock.Mock(return_value=("host", 4312))
+ self.transport.get_extra_info = get_extra_info
+
+ self.assertEqual(self.protocol.remote_address, ("host", 4312))
+ get_extra_info.assert_called_with("peername")
+
+ def test_remote_address_before_connection(self):
+ # Emulate the situation before connection_open() runs.
+ _transport = self.protocol.transport
+ del self.protocol.transport
+ try:
+ self.assertEqual(self.protocol.remote_address, None)
+ finally:
+ self.protocol.transport = _transport
+
+ def test_open(self):
+ self.assertTrue(self.protocol.open)
+ self.close_connection()
+ self.assertFalse(self.protocol.open)
+
+ def test_closed(self):
+ self.assertFalse(self.protocol.closed)
+ self.close_connection()
+ self.assertTrue(self.protocol.closed)
+
+ def test_wait_closed(self):
+ wait_closed = self.loop.create_task(self.protocol.wait_closed())
+ self.assertFalse(wait_closed.done())
+ self.close_connection()
+ self.assertTrue(wait_closed.done())
+
+ def test_close_code(self):
+ self.close_connection(CloseCode.GOING_AWAY, "Bye!")
+ self.assertEqual(self.protocol.close_code, CloseCode.GOING_AWAY)
+
+ def test_close_reason(self):
+ self.close_connection(CloseCode.GOING_AWAY, "Bye!")
+ self.assertEqual(self.protocol.close_reason, "Bye!")
+
+ def test_close_code_not_set(self):
+ self.assertIsNone(self.protocol.close_code)
+
+ def test_close_reason_not_set(self):
+ self.assertIsNone(self.protocol.close_reason)
+
+ # Test the recv coroutine.
+
+ def test_recv_text(self):
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café")
+
+ def test_recv_binary(self):
+ self.receive_frame(Frame(True, OP_BINARY, b"tea"))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, b"tea")
+
+ def test_recv_on_closing_connection_local(self):
+ close_task = self.half_close_connection_local()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.recv())
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_recv_on_closing_connection_remote(self):
+ self.half_close_connection_remote()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.recv())
+
+ def test_recv_on_closed_connection(self):
+ self.close_connection()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.recv())
+
+ def test_recv_protocol_error(self):
+ self.receive_frame(Frame(True, OP_CONT, "café".encode("utf-8")))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.PROTOCOL_ERROR, "")
+
+ def test_recv_unicode_error(self):
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("latin-1")))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.INVALID_DATA, "")
+
+ def test_recv_text_payload_too_big(self):
+ self.protocol.max_size = 1024
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8") * 205))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.MESSAGE_TOO_BIG, "")
+
+ def test_recv_binary_payload_too_big(self):
+ self.protocol.max_size = 1024
+ self.receive_frame(Frame(True, OP_BINARY, b"tea" * 342))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.MESSAGE_TOO_BIG, "")
+
+ def test_recv_text_no_max_size(self):
+ self.protocol.max_size = None # for test coverage
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8") * 205))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café" * 205)
+
+ def test_recv_binary_no_max_size(self):
+ self.protocol.max_size = None # for test coverage
+ self.receive_frame(Frame(True, OP_BINARY, b"tea" * 342))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, b"tea" * 342)
+
+ def test_recv_queue_empty(self):
+ recv = self.loop.create_task(self.protocol.recv())
+ with self.assertRaises(asyncio.TimeoutError):
+ self.loop.run_until_complete(
+ asyncio.wait_for(asyncio.shield(recv), timeout=MS)
+ )
+
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ data = self.loop.run_until_complete(recv)
+ self.assertEqual(data, "café")
+
+ def test_recv_queue_full(self):
+ self.protocol.max_queue = 2
+ # Test internals because it's hard to verify buffers from the outside.
+ self.assertEqual(list(self.protocol.messages), [])
+
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), ["café"])
+
+ self.receive_frame(Frame(True, OP_BINARY, b"tea"))
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), ["café", b"tea"])
+
+ self.receive_frame(Frame(True, OP_BINARY, b"milk"))
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), ["café", b"tea"])
+
+ self.loop.run_until_complete(self.protocol.recv())
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), [b"tea", b"milk"])
+
+ self.loop.run_until_complete(self.protocol.recv())
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), [b"milk"])
+
+ self.loop.run_until_complete(self.protocol.recv())
+ self.run_loop_once()
+ self.assertEqual(list(self.protocol.messages), [])
+
+ def test_recv_queue_no_limit(self):
+ self.protocol.max_queue = None
+
+ for _ in range(100):
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ self.run_loop_once()
+
+ # Incoming message queue can contain at least 100 messages.
+ self.assertEqual(list(self.protocol.messages), ["café"] * 100)
+
+ for _ in range(100):
+ self.loop.run_until_complete(self.protocol.recv())
+
+ self.assertEqual(list(self.protocol.messages), [])
+
+ def test_recv_other_error(self):
+ async def read_message():
+ raise Exception("BOOM")
+
+ self.protocol.read_message = read_message
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.INTERNAL_ERROR, "")
+
+ def test_recv_canceled(self):
+ recv = self.loop.create_task(self.protocol.recv())
+ self.loop.call_soon(recv.cancel)
+
+ with self.assertRaises(asyncio.CancelledError):
+ self.loop.run_until_complete(recv)
+
+ # The next frame doesn't disappear in a vacuum (it used to).
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café")
+
+ def test_recv_canceled_race_condition(self):
+ recv = self.loop.create_task(
+ asyncio.wait_for(self.protocol.recv(), timeout=0.000_001)
+ )
+ self.loop.call_soon(
+ self.receive_frame, Frame(True, OP_TEXT, "café".encode("utf-8"))
+ )
+
+ with self.assertRaises(asyncio.TimeoutError):
+ self.loop.run_until_complete(recv)
+
+ # The previous frame doesn't disappear in a vacuum (it used to).
+ self.receive_frame(Frame(True, OP_TEXT, "tea".encode("utf-8")))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ # If we're getting "tea" there, it means "café" was swallowed (ha, ha).
+ self.assertEqual(data, "café")
+
+ def test_recv_when_transfer_data_cancelled(self):
+ # Clog incoming queue.
+ self.protocol.max_queue = 1
+ self.receive_frame(Frame(True, OP_TEXT, "café".encode("utf-8")))
+ self.receive_frame(Frame(True, OP_BINARY, b"tea"))
+ self.run_loop_once()
+
+ # Flow control kicks in (check with an implementation detail).
+ self.assertFalse(self.protocol._put_message_waiter.done())
+
+ # Schedule recv().
+ recv = self.loop.create_task(self.protocol.recv())
+
+ # Cancel transfer_data_task (again, implementation detail).
+ self.protocol.fail_connection()
+ self.run_loop_once()
+ self.assertTrue(self.protocol.transfer_data_task.cancelled())
+
+ # recv() completes properly.
+ self.assertEqual(self.loop.run_until_complete(recv), "café")
+
+ def test_recv_prevents_concurrent_calls(self):
+ recv = self.loop.create_task(self.protocol.recv())
+
+ with self.assertRaises(RuntimeError) as raised:
+ self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(
+ str(raised.exception),
+ "cannot call recv while another coroutine "
+ "is already waiting for the next message",
+ )
+ recv.cancel()
+
+ # Test the send coroutine.
+
+ def test_send_text(self):
+ self.loop.run_until_complete(self.protocol.send("café"))
+ self.assertOneFrameSent(True, OP_TEXT, "café".encode("utf-8"))
+
+ def test_send_binary(self):
+ self.loop.run_until_complete(self.protocol.send(b"tea"))
+ self.assertOneFrameSent(True, OP_BINARY, b"tea")
+
+ def test_send_binary_from_bytearray(self):
+ self.loop.run_until_complete(self.protocol.send(bytearray(b"tea")))
+ self.assertOneFrameSent(True, OP_BINARY, b"tea")
+
+ def test_send_binary_from_memoryview(self):
+ self.loop.run_until_complete(self.protocol.send(memoryview(b"tea")))
+ self.assertOneFrameSent(True, OP_BINARY, b"tea")
+
+ def test_send_dict(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.send({"not": "encoded"}))
+ self.assertNoFrameSent()
+
+ def test_send_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.send(42))
+ self.assertNoFrameSent()
+
+ def test_send_iterable_text(self):
+ self.loop.run_until_complete(self.protocol.send(["ca", "fé"]))
+ self.assertFramesSent(
+ (False, OP_TEXT, "ca".encode("utf-8")),
+ (False, OP_CONT, "fé".encode("utf-8")),
+ (True, OP_CONT, "".encode("utf-8")),
+ )
+
+ def test_send_iterable_binary(self):
+ self.loop.run_until_complete(self.protocol.send([b"te", b"a"]))
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_iterable_binary_from_bytearray(self):
+ self.loop.run_until_complete(
+ self.protocol.send([bytearray(b"te"), bytearray(b"a")])
+ )
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_iterable_binary_from_memoryview(self):
+ self.loop.run_until_complete(
+ self.protocol.send([memoryview(b"te"), memoryview(b"a")])
+ )
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_empty_iterable(self):
+ self.loop.run_until_complete(self.protocol.send([]))
+ self.assertNoFrameSent()
+
+ def test_send_iterable_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.send([42]))
+ self.assertNoFrameSent()
+
+ def test_send_iterable_mixed_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.send(["café", b"tea"]))
+ self.assertFramesSent(
+ (False, OP_TEXT, "café".encode("utf-8")),
+ (True, OP_CLOSE, Close(CloseCode.INTERNAL_ERROR, "").serialize()),
+ )
+
+ def test_send_iterable_prevents_concurrent_send(self):
+ self.make_drain_slow(2 * MS)
+
+ async def send_iterable():
+ await self.protocol.send(["ca", "fé"])
+
+ async def send_concurrent():
+ await asyncio.sleep(MS)
+ await self.protocol.send(b"tea")
+
+ async def run_concurrently():
+ await asyncio.gather(
+ send_iterable(),
+ send_concurrent(),
+ )
+
+ self.loop.run_until_complete(run_concurrently())
+
+ self.assertFramesSent(
+ (False, OP_TEXT, "ca".encode("utf-8")),
+ (False, OP_CONT, "fé".encode("utf-8")),
+ (True, OP_CONT, "".encode("utf-8")),
+ (True, OP_BINARY, b"tea"),
+ )
+
+ def test_send_async_iterable_text(self):
+ self.loop.run_until_complete(self.protocol.send(async_iterable(["ca", "fé"])))
+ self.assertFramesSent(
+ (False, OP_TEXT, "ca".encode("utf-8")),
+ (False, OP_CONT, "fé".encode("utf-8")),
+ (True, OP_CONT, "".encode("utf-8")),
+ )
+
+ def test_send_async_iterable_binary(self):
+ self.loop.run_until_complete(self.protocol.send(async_iterable([b"te", b"a"])))
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_async_iterable_binary_from_bytearray(self):
+ self.loop.run_until_complete(
+ self.protocol.send(async_iterable([bytearray(b"te"), bytearray(b"a")]))
+ )
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_async_iterable_binary_from_memoryview(self):
+ self.loop.run_until_complete(
+ self.protocol.send(async_iterable([memoryview(b"te"), memoryview(b"a")]))
+ )
+ self.assertFramesSent(
+ (False, OP_BINARY, b"te"), (False, OP_CONT, b"a"), (True, OP_CONT, b"")
+ )
+
+ def test_send_empty_async_iterable(self):
+ self.loop.run_until_complete(self.protocol.send(async_iterable([])))
+ self.assertNoFrameSent()
+
+ def test_send_async_iterable_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.send(async_iterable([42])))
+ self.assertNoFrameSent()
+
+ def test_send_async_iterable_mixed_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(
+ self.protocol.send(async_iterable(["café", b"tea"]))
+ )
+ self.assertFramesSent(
+ (False, OP_TEXT, "café".encode("utf-8")),
+ (True, OP_CLOSE, Close(CloseCode.INTERNAL_ERROR, "").serialize()),
+ )
+
+ def test_send_async_iterable_prevents_concurrent_send(self):
+ self.make_drain_slow(2 * MS)
+
+ async def send_async_iterable():
+ await self.protocol.send(async_iterable(["ca", "fé"]))
+
+ async def send_concurrent():
+ await asyncio.sleep(MS)
+ await self.protocol.send(b"tea")
+
+ async def run_concurrently():
+ await asyncio.gather(
+ send_async_iterable(),
+ send_concurrent(),
+ )
+
+ self.loop.run_until_complete(run_concurrently())
+
+ self.assertFramesSent(
+ (False, OP_TEXT, "ca".encode("utf-8")),
+ (False, OP_CONT, "fé".encode("utf-8")),
+ (True, OP_CONT, "".encode("utf-8")),
+ (True, OP_BINARY, b"tea"),
+ )
+
+ def test_send_on_closing_connection_local(self):
+ close_task = self.half_close_connection_local()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.send("foobar"))
+
+ self.assertNoFrameSent()
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_send_on_closing_connection_remote(self):
+ self.half_close_connection_remote()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.send("foobar"))
+
+ self.assertNoFrameSent()
+
+ def test_send_on_closed_connection(self):
+ self.close_connection()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.send("foobar"))
+
+ self.assertNoFrameSent()
+
+ # Test the ping coroutine.
+
+ def test_ping_default(self):
+ self.loop.run_until_complete(self.protocol.ping())
+ # With our testing tools, it's more convenient to extract the expected
+ # ping data from the library's internals than from the frame sent.
+ ping_data = next(iter(self.protocol.pings))
+ self.assertIsInstance(ping_data, bytes)
+ self.assertEqual(len(ping_data), 4)
+ self.assertOneFrameSent(True, OP_PING, ping_data)
+
+ def test_ping_text(self):
+ self.loop.run_until_complete(self.protocol.ping("café"))
+ self.assertOneFrameSent(True, OP_PING, "café".encode("utf-8"))
+
+ def test_ping_binary(self):
+ self.loop.run_until_complete(self.protocol.ping(b"tea"))
+ self.assertOneFrameSent(True, OP_PING, b"tea")
+
+ def test_ping_binary_from_bytearray(self):
+ self.loop.run_until_complete(self.protocol.ping(bytearray(b"tea")))
+ self.assertOneFrameSent(True, OP_PING, b"tea")
+
+ def test_ping_binary_from_memoryview(self):
+ self.loop.run_until_complete(self.protocol.ping(memoryview(b"tea")))
+ self.assertOneFrameSent(True, OP_PING, b"tea")
+
+ def test_ping_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.ping(42))
+ self.assertNoFrameSent()
+
+ def test_ping_on_closing_connection_local(self):
+ close_task = self.half_close_connection_local()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.ping())
+
+ self.assertNoFrameSent()
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_ping_on_closing_connection_remote(self):
+ self.half_close_connection_remote()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.ping())
+
+ self.assertNoFrameSent()
+
+ def test_ping_on_closed_connection(self):
+ self.close_connection()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.ping())
+
+ self.assertNoFrameSent()
+
+ # Test the pong coroutine.
+
+ def test_pong_default(self):
+ self.loop.run_until_complete(self.protocol.pong())
+ self.assertOneFrameSent(True, OP_PONG, b"")
+
+ def test_pong_text(self):
+ self.loop.run_until_complete(self.protocol.pong("café"))
+ self.assertOneFrameSent(True, OP_PONG, "café".encode("utf-8"))
+
+ def test_pong_binary(self):
+ self.loop.run_until_complete(self.protocol.pong(b"tea"))
+ self.assertOneFrameSent(True, OP_PONG, b"tea")
+
+ def test_pong_binary_from_bytearray(self):
+ self.loop.run_until_complete(self.protocol.pong(bytearray(b"tea")))
+ self.assertOneFrameSent(True, OP_PONG, b"tea")
+
+ def test_pong_binary_from_memoryview(self):
+ self.loop.run_until_complete(self.protocol.pong(memoryview(b"tea")))
+ self.assertOneFrameSent(True, OP_PONG, b"tea")
+
+ def test_pong_type_error(self):
+ with self.assertRaises(TypeError):
+ self.loop.run_until_complete(self.protocol.pong(42))
+ self.assertNoFrameSent()
+
+ def test_pong_on_closing_connection_local(self):
+ close_task = self.half_close_connection_local()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.pong())
+
+ self.assertNoFrameSent()
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_pong_on_closing_connection_remote(self):
+ self.half_close_connection_remote()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.pong())
+
+ self.assertNoFrameSent()
+
+ def test_pong_on_closed_connection(self):
+ self.close_connection()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.pong())
+
+ self.assertNoFrameSent()
+
+ # Test the protocol's logic for acknowledging pings with pongs.
+
+ def test_answer_ping(self):
+ self.receive_frame(Frame(True, OP_PING, b"test"))
+ self.run_loop_once()
+ self.assertOneFrameSent(True, OP_PONG, b"test")
+
+ def test_answer_ping_does_not_crash_if_connection_closing(self):
+ close_task = self.half_close_connection_local()
+
+ self.receive_frame(Frame(True, OP_PING, b"test"))
+ self.run_loop_once()
+
+ with self.assertNoLogs():
+ self.loop.run_until_complete(self.protocol.close())
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_answer_ping_does_not_crash_if_connection_closed(self):
+ self.make_drain_slow()
+ # Drop the connection right after receiving a ping frame,
+ # which prevents responding with a pong frame properly.
+ self.receive_frame(Frame(True, OP_PING, b"test"))
+ self.receive_eof()
+ self.run_loop_once()
+
+ with self.assertNoLogs():
+ self.loop.run_until_complete(self.protocol.close())
+
+ def test_ignore_pong(self):
+ self.receive_frame(Frame(True, OP_PONG, b"test"))
+ self.run_loop_once()
+ self.assertNoFrameSent()
+
+ def test_acknowledge_ping(self):
+ pong_waiter = self.loop.run_until_complete(self.protocol.ping())
+ self.assertFalse(pong_waiter.done())
+ ping_frame = self.last_sent_frame()
+ pong_frame = Frame(True, OP_PONG, ping_frame.data)
+ self.receive_frame(pong_frame)
+ self.run_loop_once()
+ self.run_loop_once()
+ self.assertTrue(pong_waiter.done())
+
+ def test_abort_ping(self):
+ pong_waiter = self.loop.run_until_complete(self.protocol.ping())
+ # Remove the frame from the buffer, else close_connection() complains.
+ self.last_sent_frame()
+ self.assertFalse(pong_waiter.done())
+ self.close_connection()
+ self.assertTrue(pong_waiter.done())
+ self.assertIsInstance(pong_waiter.exception(), ConnectionClosed)
+
+ def test_abort_ping_does_not_log_exception_if_not_retreived(self):
+ self.loop.run_until_complete(self.protocol.ping())
+ # Get the internal Future, which isn't directly returned by ping().
+ ((pong_waiter, _timestamp),) = self.protocol.pings.values()
+ # Remove the frame from the buffer, else close_connection() complains.
+ self.last_sent_frame()
+ self.close_connection()
+ # Check a private attribute, for lack of a better solution.
+ self.assertFalse(pong_waiter._log_traceback)
+
+ def test_acknowledge_previous_pings(self):
+ pings = [
+ (self.loop.run_until_complete(self.protocol.ping()), self.last_sent_frame())
+ for i in range(3)
+ ]
+ # Unsolicited pong doesn't acknowledge pings
+ self.receive_frame(Frame(True, OP_PONG, b""))
+ self.run_loop_once()
+ self.run_loop_once()
+ self.assertFalse(pings[0][0].done())
+ self.assertFalse(pings[1][0].done())
+ self.assertFalse(pings[2][0].done())
+ # Pong acknowledges all previous pings
+ self.receive_frame(Frame(True, OP_PONG, pings[1][1].data))
+ self.run_loop_once()
+ self.run_loop_once()
+ self.assertTrue(pings[0][0].done())
+ self.assertTrue(pings[1][0].done())
+ self.assertFalse(pings[2][0].done())
+
+ def test_acknowledge_aborted_ping(self):
+ pong_waiter = self.loop.run_until_complete(self.protocol.ping())
+ ping_frame = self.last_sent_frame()
+ # Clog incoming queue. This lets connection_lost() abort pending pings
+ # with a ConnectionClosed exception before transfer_data_task
+ # terminates and close_connection cancels keepalive_ping_task.
+ self.protocol.max_queue = 1
+ self.receive_frame(Frame(True, OP_TEXT, b"1"))
+ self.receive_frame(Frame(True, OP_TEXT, b"2"))
+ # Add pong frame to the queue.
+ pong_frame = Frame(True, OP_PONG, ping_frame.data)
+ self.receive_frame(pong_frame)
+ # Connection drops.
+ self.receive_eof()
+ self.loop.run_until_complete(self.protocol.wait_closed())
+ # Ping receives a ConnectionClosed exception.
+ with self.assertRaises(ConnectionClosed):
+ pong_waiter.result()
+
+ # transfer_data doesn't crash, which would be logged.
+ with self.assertNoLogs():
+ # Unclog incoming queue.
+ self.loop.run_until_complete(self.protocol.recv())
+ self.loop.run_until_complete(self.protocol.recv())
+
+ def test_canceled_ping(self):
+ pong_waiter = self.loop.run_until_complete(self.protocol.ping())
+ ping_frame = self.last_sent_frame()
+ pong_waiter.cancel()
+ pong_frame = Frame(True, OP_PONG, ping_frame.data)
+ self.receive_frame(pong_frame)
+ self.run_loop_once()
+ self.run_loop_once()
+ self.assertTrue(pong_waiter.cancelled())
+
+ def test_duplicate_ping(self):
+ self.loop.run_until_complete(self.protocol.ping(b"foobar"))
+ self.assertOneFrameSent(True, OP_PING, b"foobar")
+ with self.assertRaises(RuntimeError):
+ self.loop.run_until_complete(self.protocol.ping(b"foobar"))
+ self.assertNoFrameSent()
+
+ # Test the protocol's logic for measuring latency
+
+ def test_record_latency_on_pong(self):
+ self.assertEqual(self.protocol.latency, 0)
+ self.loop.run_until_complete(self.protocol.ping(b"test"))
+ self.receive_frame(Frame(True, OP_PONG, b"test"))
+ self.run_loop_once()
+ self.assertGreater(self.protocol.latency, 0)
+
+ def test_return_latency_on_pong(self):
+ pong_waiter = self.loop.run_until_complete(self.protocol.ping())
+ ping_frame = self.last_sent_frame()
+ pong_frame = Frame(True, OP_PONG, ping_frame.data)
+ self.receive_frame(pong_frame)
+ latency = self.loop.run_until_complete(pong_waiter)
+ self.assertGreater(latency, 0)
+
+ # Test the protocol's logic for rebuilding fragmented messages.
+
+ def test_fragmented_text(self):
+ self.receive_frame(Frame(False, OP_TEXT, "ca".encode("utf-8")))
+ self.receive_frame(Frame(True, OP_CONT, "fé".encode("utf-8")))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café")
+
+ def test_fragmented_binary(self):
+ self.receive_frame(Frame(False, OP_BINARY, b"t"))
+ self.receive_frame(Frame(False, OP_CONT, b"e"))
+ self.receive_frame(Frame(True, OP_CONT, b"a"))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, b"tea")
+
+ def test_fragmented_text_payload_too_big(self):
+ self.protocol.max_size = 1024
+ self.receive_frame(Frame(False, OP_TEXT, "café".encode("utf-8") * 100))
+ self.receive_frame(Frame(True, OP_CONT, "café".encode("utf-8") * 105))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.MESSAGE_TOO_BIG, "")
+
+ def test_fragmented_binary_payload_too_big(self):
+ self.protocol.max_size = 1024
+ self.receive_frame(Frame(False, OP_BINARY, b"tea" * 171))
+ self.receive_frame(Frame(True, OP_CONT, b"tea" * 171))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.MESSAGE_TOO_BIG, "")
+
+ def test_fragmented_text_no_max_size(self):
+ self.protocol.max_size = None # for test coverage
+ self.receive_frame(Frame(False, OP_TEXT, "café".encode("utf-8") * 100))
+ self.receive_frame(Frame(True, OP_CONT, "café".encode("utf-8") * 105))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café" * 205)
+
+ def test_fragmented_binary_no_max_size(self):
+ self.protocol.max_size = None # for test coverage
+ self.receive_frame(Frame(False, OP_BINARY, b"tea" * 171))
+ self.receive_frame(Frame(True, OP_CONT, b"tea" * 171))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, b"tea" * 342)
+
+ def test_control_frame_within_fragmented_text(self):
+ self.receive_frame(Frame(False, OP_TEXT, "ca".encode("utf-8")))
+ self.receive_frame(Frame(True, OP_PING, b""))
+ self.receive_frame(Frame(True, OP_CONT, "fé".encode("utf-8")))
+ data = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(data, "café")
+ self.assertOneFrameSent(True, OP_PONG, b"")
+
+ def test_unterminated_fragmented_text(self):
+ self.receive_frame(Frame(False, OP_TEXT, "ca".encode("utf-8")))
+ # Missing the second part of the fragmented frame.
+ self.receive_frame(Frame(True, OP_BINARY, b"tea"))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.PROTOCOL_ERROR, "")
+
+ def test_close_handshake_in_fragmented_text(self):
+ self.receive_frame(Frame(False, OP_TEXT, "ca".encode("utf-8")))
+ self.receive_frame(Frame(True, OP_CLOSE, b""))
+ self.process_invalid_frames()
+ # The RFC may have overlooked this case: it says that control frames
+ # can be interjected in the middle of a fragmented message and that a
+ # close frame must be echoed. Even though there's an unterminated
+ # message, technically, the closing handshake was successful.
+ self.assertConnectionClosed(CloseCode.NO_STATUS_RCVD, "")
+
+ def test_connection_close_in_fragmented_text(self):
+ self.receive_frame(Frame(False, OP_TEXT, "ca".encode("utf-8")))
+ self.process_invalid_frames()
+ self.assertConnectionFailed(CloseCode.ABNORMAL_CLOSURE, "")
+
+ # Test miscellaneous code paths to ensure full coverage.
+
+ def test_connection_lost(self):
+ # Test calling connection_lost without going through close_connection.
+ self.protocol.connection_lost(None)
+
+ self.assertConnectionFailed(CloseCode.ABNORMAL_CLOSURE, "")
+
+ def test_ensure_open_before_opening_handshake(self):
+ # Simulate a bug by forcibly reverting the protocol state.
+ self.protocol.state = State.CONNECTING
+
+ with self.assertRaises(InvalidState):
+ self.loop.run_until_complete(self.protocol.ensure_open())
+
+ def test_ensure_open_during_unclean_close(self):
+ # Process connection_made in order to start transfer_data_task.
+ self.run_loop_once()
+
+ # Ensure the test terminates quickly.
+ self.loop.call_later(MS, self.receive_eof_if_client)
+
+ # Simulate the case when close() times out sending a close frame.
+ self.protocol.fail_connection()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.ensure_open())
+
+ def test_legacy_recv(self):
+ # By default legacy_recv in disabled.
+ self.assertEqual(self.protocol.legacy_recv, False)
+
+ self.close_connection()
+
+ # Enable legacy_recv.
+ self.protocol.legacy_recv = True
+
+ # Now recv() returns None instead of raising ConnectionClosed.
+ self.assertIsNone(self.loop.run_until_complete(self.protocol.recv()))
+
+ def test_connection_closed_attributes(self):
+ self.close_connection()
+
+ with self.assertRaises(ConnectionClosed) as context:
+ self.loop.run_until_complete(self.protocol.recv())
+
+ connection_closed_exc = context.exception
+ self.assertEqual(connection_closed_exc.code, CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(connection_closed_exc.reason, "close")
+
+ # Test the protocol logic for sending keepalive pings.
+
+ def restart_protocol_with_keepalive_ping(
+ self,
+ ping_interval=3 * MS,
+ ping_timeout=3 * MS,
+ ):
+ initial_protocol = self.protocol
+
+ # copied from tearDown
+
+ self.transport.close()
+ self.loop.run_until_complete(self.protocol.close())
+
+ # copied from setUp, but enables keepalive pings
+
+ async def create_protocol():
+ return WebSocketCommonProtocol(
+ ping_interval=ping_interval,
+ ping_timeout=ping_timeout,
+ )
+
+ self.protocol = self.loop.run_until_complete(create_protocol())
+
+ self.transport = TransportMock()
+ self.transport.setup_mock(self.loop, self.protocol)
+ self.protocol.is_client = initial_protocol.is_client
+ self.protocol.side = initial_protocol.side
+
+ def test_keepalive_ping(self):
+ self.restart_protocol_with_keepalive_ping()
+
+ # Ping is sent at 3ms and acknowledged at 4ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ (ping_1,) = tuple(self.protocol.pings)
+ self.assertOneFrameSent(True, OP_PING, ping_1)
+ self.receive_frame(Frame(True, OP_PONG, ping_1))
+
+ # Next ping is sent at 7ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ (ping_2,) = tuple(self.protocol.pings)
+ self.assertOneFrameSent(True, OP_PING, ping_2)
+
+ # The keepalive ping task goes on.
+ self.assertFalse(self.protocol.keepalive_ping_task.done())
+
+ def test_keepalive_ping_not_acknowledged_closes_connection(self):
+ self.restart_protocol_with_keepalive_ping()
+
+ # Ping is sent at 3ms and not acknowledged.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ (ping_1,) = tuple(self.protocol.pings)
+ self.assertOneFrameSent(True, OP_PING, ping_1)
+
+ # Connection is closed at 6ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ self.assertOneFrameSent(
+ True,
+ OP_CLOSE,
+ Close(CloseCode.INTERNAL_ERROR, "keepalive ping timeout").serialize(),
+ )
+
+ # The keepalive ping task is complete.
+ self.assertEqual(self.protocol.keepalive_ping_task.result(), None)
+
+ def test_keepalive_ping_stops_when_connection_closing(self):
+ self.restart_protocol_with_keepalive_ping()
+ close_task = self.half_close_connection_local()
+
+ # No ping sent at 3ms because the closing handshake is in progress.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ self.assertNoFrameSent()
+
+ # The keepalive ping task terminated.
+ self.assertTrue(self.protocol.keepalive_ping_task.cancelled())
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_keepalive_ping_stops_when_connection_closed(self):
+ self.restart_protocol_with_keepalive_ping()
+ self.close_connection()
+
+ # The keepalive ping task terminated.
+ self.assertTrue(self.protocol.keepalive_ping_task.cancelled())
+
+ def test_keepalive_ping_does_not_crash_when_connection_lost(self):
+ self.restart_protocol_with_keepalive_ping()
+ # Clog incoming queue. This lets connection_lost() abort pending pings
+ # with a ConnectionClosed exception before transfer_data_task
+ # terminates and close_connection cancels keepalive_ping_task.
+ self.protocol.max_queue = 1
+ self.receive_frame(Frame(True, OP_TEXT, b"1"))
+ self.receive_frame(Frame(True, OP_TEXT, b"2"))
+ # Ping is sent at 3ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ ((pong_waiter, _timestamp),) = self.protocol.pings.values()
+ # Connection drops.
+ self.receive_eof()
+ self.loop.run_until_complete(self.protocol.wait_closed())
+
+ # The ping waiter receives a ConnectionClosed exception.
+ with self.assertRaises(ConnectionClosed):
+ pong_waiter.result()
+ # The keepalive ping task terminated properly.
+ self.assertIsNone(self.protocol.keepalive_ping_task.result())
+
+ # Unclog incoming queue to terminate the test quickly.
+ self.loop.run_until_complete(self.protocol.recv())
+ self.loop.run_until_complete(self.protocol.recv())
+
+ def test_keepalive_ping_with_no_ping_interval(self):
+ self.restart_protocol_with_keepalive_ping(ping_interval=None)
+
+ # No ping is sent at 3ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ self.assertNoFrameSent()
+
+ def test_keepalive_ping_with_no_ping_timeout(self):
+ self.restart_protocol_with_keepalive_ping(ping_timeout=None)
+
+ # Ping is sent at 3ms and not acknowledged.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ (ping_1,) = tuple(self.protocol.pings)
+ self.assertOneFrameSent(True, OP_PING, ping_1)
+
+ # Next ping is sent at 7ms anyway.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+ ping_1_again, ping_2 = tuple(self.protocol.pings)
+ self.assertEqual(ping_1, ping_1_again)
+ self.assertOneFrameSent(True, OP_PING, ping_2)
+
+ # The keepalive ping task goes on.
+ self.assertFalse(self.protocol.keepalive_ping_task.done())
+
+ def test_keepalive_ping_unexpected_error(self):
+ self.restart_protocol_with_keepalive_ping()
+
+ async def ping():
+ raise Exception("BOOM")
+
+ self.protocol.ping = ping
+
+ # The keepalive ping task fails when sending a ping at 3ms.
+ self.loop.run_until_complete(asyncio.sleep(4 * MS))
+
+ # The keepalive ping task is complete.
+ # It logs and swallows the exception.
+ self.assertEqual(self.protocol.keepalive_ping_task.result(), None)
+
+ # Test the protocol logic for closing the connection.
+
+ def test_local_close(self):
+ # Emulate how the remote endpoint answers the closing handshake.
+ self.loop.call_later(MS, self.receive_frame, self.close_frame)
+ self.loop.call_later(MS, self.receive_eof_if_client)
+
+ # Run the closing handshake.
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertOneFrameSent(*self.close_frame)
+
+ # Closing the connection again is a no-op.
+ self.loop.run_until_complete(self.protocol.close(reason="oh noes!"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertNoFrameSent()
+
+ def test_remote_close(self):
+ # Emulate how the remote endpoint initiates the closing handshake.
+ self.loop.call_later(MS, self.receive_frame, self.close_frame)
+ self.loop.call_later(MS, self.receive_eof_if_client)
+
+ # Wait for some data in order to process the handshake.
+ # After recv() raises ConnectionClosed, the connection is closed.
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(self.protocol.recv())
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertOneFrameSent(*self.close_frame)
+
+ # Closing the connection again is a no-op.
+ self.loop.run_until_complete(self.protocol.close(reason="oh noes!"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertNoFrameSent()
+
+ def test_remote_close_and_connection_lost(self):
+ self.make_drain_slow()
+ # Drop the connection right after receiving a close frame,
+ # which prevents echoing the close frame properly.
+ self.receive_frame(self.close_frame)
+ self.receive_eof()
+ self.run_loop_once()
+
+ with self.assertNoLogs():
+ self.loop.run_until_complete(self.protocol.close(reason="oh noes!"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertOneFrameSent(*self.close_frame)
+
+ def test_simultaneous_close(self):
+ # Receive the incoming close frame right after self.protocol.close()
+ # starts executing. This reproduces the error described in:
+ # https://github.com/python-websockets/websockets/issues/339
+ self.loop.call_soon(self.receive_frame, self.remote_close)
+ self.loop.call_soon(self.receive_eof_if_client)
+ self.run_loop_once()
+
+ self.loop.run_until_complete(self.protocol.close(reason="local"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "remote")
+ # The current implementation sends a close frame in response to the
+ # close frame received from the remote end. It skips the close frame
+ # that should be sent as a result of calling close().
+ self.assertOneFrameSent(*self.remote_close)
+
+ def test_close_preserves_incoming_frames(self):
+ self.receive_frame(Frame(True, OP_TEXT, b"hello"))
+ self.run_loop_once()
+
+ self.loop.call_later(MS, self.receive_frame, self.close_frame)
+ self.loop.call_later(MS, self.receive_eof_if_client)
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+ self.assertOneFrameSent(*self.close_frame)
+
+ next_message = self.loop.run_until_complete(self.protocol.recv())
+ self.assertEqual(next_message, "hello")
+
+ def test_close_protocol_error(self):
+ invalid_close_frame = Frame(True, OP_CLOSE, b"\x00")
+ self.receive_frame(invalid_close_frame)
+ self.receive_eof_if_client()
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+
+ self.assertConnectionFailed(CloseCode.PROTOCOL_ERROR, "")
+
+ def test_close_connection_lost(self):
+ self.receive_eof()
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+
+ self.assertConnectionFailed(CloseCode.ABNORMAL_CLOSURE, "")
+
+ def test_local_close_during_recv(self):
+ recv = self.loop.create_task(self.protocol.recv())
+
+ self.loop.call_later(MS, self.receive_frame, self.close_frame)
+ self.loop.call_later(MS, self.receive_eof_if_client)
+
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(recv)
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+
+ # There is no test_remote_close_during_recv because it would be identical
+ # to test_remote_close.
+
+ def test_remote_close_during_send(self):
+ self.make_drain_slow()
+ send = self.loop.create_task(self.protocol.send("hello"))
+
+ self.receive_frame(self.close_frame)
+ self.receive_eof()
+
+ with self.assertRaises(ConnectionClosed):
+ self.loop.run_until_complete(send)
+
+ self.assertConnectionClosed(CloseCode.NORMAL_CLOSURE, "close")
+
+ # There is no test_local_close_during_send because this cannot really
+ # happen, considering that writes are serialized.
+
+ def test_broadcast_text(self):
+ broadcast([self.protocol], "café")
+ self.assertOneFrameSent(True, OP_TEXT, "café".encode("utf-8"))
+
+ def test_broadcast_binary(self):
+ broadcast([self.protocol], b"tea")
+ self.assertOneFrameSent(True, OP_BINARY, b"tea")
+
+ def test_broadcast_type_error(self):
+ with self.assertRaises(TypeError):
+ broadcast([self.protocol], ["ca", "fé"])
+
+ def test_broadcast_no_clients(self):
+ broadcast([], "café")
+ self.assertNoFrameSent()
+
+ def test_broadcast_two_clients(self):
+ broadcast([self.protocol, self.protocol], "café")
+ self.assertFramesSent(
+ (True, OP_TEXT, "café".encode("utf-8")),
+ (True, OP_TEXT, "café".encode("utf-8")),
+ )
+
+ def test_broadcast_skips_closed_connection(self):
+ self.close_connection()
+
+ with self.assertNoLogs():
+ broadcast([self.protocol], "café")
+ self.assertNoFrameSent()
+
+ def test_broadcast_skips_closing_connection(self):
+ close_task = self.half_close_connection_local()
+
+ with self.assertNoLogs():
+ broadcast([self.protocol], "café")
+ self.assertNoFrameSent()
+
+ self.loop.run_until_complete(close_task) # cleanup
+
+ def test_broadcast_skips_connection_sending_fragmented_text(self):
+ self.make_drain_slow()
+ self.loop.create_task(self.protocol.send(["ca", "fé"]))
+ self.run_loop_once()
+ self.assertOneFrameSent(False, OP_TEXT, "ca".encode("utf-8"))
+
+ with self.assertLogs("websockets", logging.WARNING) as logs:
+ broadcast([self.protocol], "café")
+
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][:2],
+ ["skipped broadcast: sending a fragmented message"],
+ )
+
+ @unittest.skipIf(
+ sys.version_info[:2] < (3, 11), "raise_exceptions requires Python 3.11+"
+ )
+ def test_broadcast_reports_connection_sending_fragmented_text(self):
+ self.make_drain_slow()
+ self.loop.create_task(self.protocol.send(["ca", "fé"]))
+ self.run_loop_once()
+ self.assertOneFrameSent(False, OP_TEXT, "ca".encode("utf-8"))
+
+ with self.assertRaises(ExceptionGroup) as raised:
+ broadcast([self.protocol], "café", raise_exceptions=True)
+
+ self.assertEqual(str(raised.exception), "skipped broadcast (1 sub-exception)")
+ self.assertEqual(
+ str(raised.exception.exceptions[0]), "sending a fragmented message"
+ )
+
+ def test_broadcast_skips_connection_failing_to_send(self):
+ # Configure mock to raise an exception when writing to the network.
+ self.protocol.transport.write.side_effect = RuntimeError
+
+ with self.assertLogs("websockets", logging.WARNING) as logs:
+ broadcast([self.protocol], "café")
+
+ self.assertEqual(
+ [record.getMessage() for record in logs.records][:2],
+ ["skipped broadcast: failed to write message"],
+ )
+
+ @unittest.skipIf(
+ sys.version_info[:2] < (3, 11), "raise_exceptions requires Python 3.11+"
+ )
+ def test_broadcast_reports_connection_failing_to_send(self):
+ # Configure mock to raise an exception when writing to the network.
+ self.protocol.transport.write.side_effect = RuntimeError("BOOM")
+
+ with self.assertRaises(ExceptionGroup) as raised:
+ broadcast([self.protocol], "café", raise_exceptions=True)
+
+ self.assertEqual(str(raised.exception), "skipped broadcast (1 sub-exception)")
+ self.assertEqual(str(raised.exception.exceptions[0]), "failed to write message")
+ self.assertEqual(str(raised.exception.exceptions[0].__cause__), "BOOM")
+
+
+class ServerTests(CommonTests, AsyncioTestCase):
+ def setUp(self):
+ super().setUp()
+ self.protocol.is_client = False
+ self.protocol.side = "server"
+
+ def test_local_close_send_close_frame_timeout(self):
+ self.protocol.close_timeout = 10 * MS
+ self.make_drain_slow(50 * MS)
+ # If we can't send a close frame, time out in 10ms.
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(9 * MS, 19 * MS):
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ self.assertConnectionClosed(CloseCode.ABNORMAL_CLOSURE, "")
+
+ def test_local_close_receive_close_frame_timeout(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the client doesn't send a close frame, time out in 10ms.
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(9 * MS, 19 * MS):
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ self.assertConnectionClosed(CloseCode.ABNORMAL_CLOSURE, "")
+
+ def test_local_close_connection_lost_timeout_after_write_eof(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the client doesn't close its side of the TCP connection after we
+ # half-close our side with write_eof(), time out in 10ms.
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(9 * MS, 19 * MS):
+ # HACK: disable write_eof => other end drops connection emulation.
+ self.transport._eof = True
+ self.receive_frame(self.close_frame)
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.NORMAL_CLOSURE,
+ "close",
+ )
+
+ def test_local_close_connection_lost_timeout_after_close(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the client doesn't close its side of the TCP connection after we
+ # half-close our side with write_eof() and close it with close(), time
+ # out in 20ms.
+ # Check the timing within -1/+9ms for robustness.
+ # Add another 10ms because this test is flaky and I don't understand.
+ with self.assertCompletesWithin(19 * MS, 39 * MS):
+ # HACK: disable write_eof => other end drops connection emulation.
+ self.transport._eof = True
+ # HACK: disable close => other end drops connection emulation.
+ self.transport._closing = True
+ self.receive_frame(self.close_frame)
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.NORMAL_CLOSURE,
+ "close",
+ )
+
+
+class ClientTests(CommonTests, AsyncioTestCase):
+ def setUp(self):
+ super().setUp()
+ self.protocol.is_client = True
+ self.protocol.side = "client"
+
+ def test_local_close_send_close_frame_timeout(self):
+ self.protocol.close_timeout = 10 * MS
+ self.make_drain_slow(50 * MS)
+ # If we can't send a close frame, time out in 20ms.
+ # - 10ms waiting for sending a close frame
+ # - 10ms waiting for receiving a half-close
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(19 * MS, 29 * MS):
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.ABNORMAL_CLOSURE,
+ "",
+ )
+
+ def test_local_close_receive_close_frame_timeout(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the server doesn't send a close frame, time out in 20ms:
+ # - 10ms waiting for receiving a close frame
+ # - 10ms waiting for receiving a half-close
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(19 * MS, 29 * MS):
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.ABNORMAL_CLOSURE,
+ "",
+ )
+
+ def test_local_close_connection_lost_timeout_after_write_eof(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the server doesn't half-close its side of the TCP connection
+ # after we send a close frame, time out in 20ms:
+ # - 10ms waiting for receiving a half-close
+ # - 10ms waiting for receiving a close after write_eof
+ # Check the timing within -1/+9ms for robustness.
+ with self.assertCompletesWithin(19 * MS, 29 * MS):
+ # HACK: disable write_eof => other end drops connection emulation.
+ self.transport._eof = True
+ self.receive_frame(self.close_frame)
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.NORMAL_CLOSURE,
+ "close",
+ )
+
+ def test_local_close_connection_lost_timeout_after_close(self):
+ self.protocol.close_timeout = 10 * MS
+ # If the client doesn't close its side of the TCP connection after we
+ # half-close our side with write_eof() and close it with close(), time
+ # out in 30ms.
+ # - 10ms waiting for receiving a half-close
+ # - 10ms waiting for receiving a close after write_eof
+ # - 10ms waiting for receiving a close after close
+ # Check the timing within -1/+9ms for robustness.
+ # Add another 10ms because this test is flaky and I don't understand.
+ with self.assertCompletesWithin(29 * MS, 49 * MS):
+ # HACK: disable write_eof => other end drops connection emulation.
+ self.transport._eof = True
+ # HACK: disable close => other end drops connection emulation.
+ self.transport._closing = True
+ self.receive_frame(self.close_frame)
+ self.run_loop_once()
+ self.loop.run_until_complete(self.protocol.close(reason="close"))
+ # Due to a bug in coverage, this is erroneously reported as not covered.
+ self.assertConnectionClosed( # pragma: no cover
+ CloseCode.NORMAL_CLOSURE,
+ "close",
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/utils.py
new file mode 100644
index 0000000000..4a21dcaeb5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/legacy/utils.py
@@ -0,0 +1,84 @@
+import asyncio
+import contextlib
+import functools
+import logging
+import unittest
+
+
+class AsyncioTestCase(unittest.TestCase):
+ """
+ Base class for tests that sets up an isolated event loop for each test.
+
+ IsolatedAsyncioTestCase was introduced in Python 3.8 for similar purposes
+ but isn't a drop-in replacement.
+
+ """
+
+ def __init_subclass__(cls, **kwargs):
+ """
+ Convert test coroutines to test functions.
+
+ This supports asynchronous tests transparently.
+
+ """
+ super().__init_subclass__(**kwargs)
+ for name in unittest.defaultTestLoader.getTestCaseNames(cls):
+ test = getattr(cls, name)
+ if asyncio.iscoroutinefunction(test):
+ setattr(cls, name, cls.convert_async_to_sync(test))
+
+ @staticmethod
+ def convert_async_to_sync(test):
+ """
+ Convert a test coroutine to a test function.
+
+ """
+
+ @functools.wraps(test)
+ def test_func(self, *args, **kwargs):
+ return self.loop.run_until_complete(test(self, *args, **kwargs))
+
+ return test_func
+
+ def setUp(self):
+ super().setUp()
+ self.loop = asyncio.new_event_loop()
+ asyncio.set_event_loop(self.loop)
+
+ def tearDown(self):
+ self.loop.close()
+ super().tearDown()
+
+ def run_loop_once(self):
+ # Process callbacks scheduled with call_soon by appending a callback
+ # to stop the event loop then running it until it hits that callback.
+ self.loop.call_soon(self.loop.stop)
+ self.loop.run_forever()
+
+ # Remove when dropping Python < 3.10
+ @contextlib.contextmanager
+ def assertNoLogs(self, logger="websockets", level=logging.ERROR):
+ """
+ No message is logged on the given logger with at least the given level.
+
+ """
+ with self.assertLogs(logger, level) as logs:
+ # We want to test that no log message is emitted
+ # but assertLogs expects at least one log message.
+ logging.getLogger(logger).log(level, "dummy")
+ yield
+
+ level_name = logging.getLevelName(level)
+ self.assertEqual(logs.output, [f"{level_name}:{logger}:dummy"])
+
+ def assertDeprecationWarnings(self, recorded_warnings, expected_warnings):
+ """
+ Check recorded deprecation warnings match a list of expected messages.
+
+ """
+ for recorded in recorded_warnings:
+ self.assertEqual(type(recorded.message), DeprecationWarning)
+ self.assertEqual(
+ set(str(recorded.message) for recorded in recorded_warnings),
+ set(expected_warnings),
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/maxi_cov.py b/testing/web-platform/tests/tools/third_party/websockets/tests/maxi_cov.py
new file mode 100644
index 0000000000..2568dcf18b
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/maxi_cov.py
@@ -0,0 +1,156 @@
+#!/usr/bin/env python
+
+"""Measure coverage of each module by its test module."""
+
+import glob
+import os.path
+import subprocess
+import sys
+
+
+UNMAPPED_SRC_FILES = ["websockets/version.py"]
+UNMAPPED_TEST_FILES = ["tests/test_exports.py"]
+
+
+def check_environment():
+ """Check that prerequisites for running this script are met."""
+ try:
+ import websockets # noqa: F401
+ except ImportError:
+ print("failed to import websockets; is src on PYTHONPATH?")
+ return False
+ try:
+ import coverage # noqa: F401
+ except ImportError:
+ print("failed to locate Coverage.py; is it installed?")
+ return False
+ return True
+
+
+def get_mapping(src_dir="src"):
+ """Return a dict mapping each source file to its test file."""
+
+ # List source and test files.
+
+ src_files = glob.glob(
+ os.path.join(src_dir, "websockets/**/*.py"),
+ recursive=True,
+ )
+ test_files = glob.glob(
+ "tests/**/*.py",
+ recursive=True,
+ )
+
+ src_files = [
+ os.path.relpath(src_file, src_dir)
+ for src_file in sorted(src_files)
+ if "legacy" not in os.path.dirname(src_file)
+ if os.path.basename(src_file) != "__init__.py"
+ and os.path.basename(src_file) != "__main__.py"
+ and os.path.basename(src_file) != "compatibility.py"
+ ]
+ test_files = [
+ test_file
+ for test_file in sorted(test_files)
+ if "legacy" not in os.path.dirname(test_file)
+ and os.path.basename(test_file) != "__init__.py"
+ and os.path.basename(test_file).startswith("test_")
+ ]
+
+ # Map source files to test files.
+
+ mapping = {}
+ unmapped_test_files = []
+
+ for test_file in test_files:
+ dir_name, file_name = os.path.split(test_file)
+ assert dir_name.startswith("tests")
+ assert file_name.startswith("test_")
+ src_file = os.path.join(
+ "websockets" + dir_name[len("tests") :],
+ file_name[len("test_") :],
+ )
+ if src_file in src_files:
+ mapping[src_file] = test_file
+ else:
+ unmapped_test_files.append(test_file)
+
+ unmapped_src_files = list(set(src_files) - set(mapping))
+
+ # Ensure that all files are mapped.
+
+ assert unmapped_src_files == UNMAPPED_SRC_FILES
+ assert unmapped_test_files == UNMAPPED_TEST_FILES
+
+ return mapping
+
+
+def get_ignored_files(src_dir="src"):
+ """Return the list of files to exclude from coverage measurement."""
+
+ return [
+ # */websockets matches src/websockets and .tox/**/site-packages/websockets.
+ # There are no tests for the __main__ module and for compatibility modules.
+ "*/websockets/__main__.py",
+ "*/websockets/*/compatibility.py",
+ # This approach isn't applicable to the test suite of the legacy
+ # implementation, due to the huge test_client_server test module.
+ "*/websockets/legacy/*",
+ "tests/legacy/*",
+ ] + [
+ # Exclude test utilities that are shared between several test modules.
+ # Also excludes this script.
+ test_file
+ for test_file in sorted(glob.glob("tests/**/*.py", recursive=True))
+ if "legacy" not in os.path.dirname(test_file)
+ and os.path.basename(test_file) != "__init__.py"
+ and not os.path.basename(test_file).startswith("test_")
+ ]
+
+
+def run_coverage(mapping, src_dir="src"):
+ # Initialize a new coverage measurement session. The --source option
+ # includes all files in the report, even if they're never imported.
+ print("\nInitializing session\n", flush=True)
+ subprocess.run(
+ [
+ sys.executable,
+ "-m",
+ "coverage",
+ "run",
+ "--source",
+ ",".join([os.path.join(src_dir, "websockets"), "tests"]),
+ "--omit",
+ ",".join(get_ignored_files(src_dir)),
+ "-m",
+ "unittest",
+ ]
+ + UNMAPPED_TEST_FILES,
+ check=True,
+ )
+ # Append coverage of each source module by the corresponding test module.
+ for src_file, test_file in mapping.items():
+ print(f"\nTesting {src_file} with {test_file}\n", flush=True)
+ subprocess.run(
+ [
+ sys.executable,
+ "-m",
+ "coverage",
+ "run",
+ "--append",
+ "--include",
+ ",".join([os.path.join(src_dir, src_file), test_file]),
+ "-m",
+ "unittest",
+ test_file,
+ ],
+ check=True,
+ )
+
+
+if __name__ == "__main__":
+ if not check_environment():
+ sys.exit(1)
+ src_dir = sys.argv[1] if len(sys.argv) == 2 else "src"
+ mapping = get_mapping(src_dir)
+ run_coverage(mapping, src_dir)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/protocol.py b/testing/web-platform/tests/tools/third_party/websockets/tests/protocol.py
new file mode 100644
index 0000000000..4e843daab3
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/protocol.py
@@ -0,0 +1,29 @@
+from websockets.protocol import Protocol
+
+
+class RecordingProtocol(Protocol):
+ """
+ Protocol subclass that records incoming frames.
+
+ By interfacing with this protocol, you can check easily what the component
+ being testing sends during a test.
+
+ """
+
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+ self.frames_rcvd = []
+
+ def get_frames_rcvd(self):
+ """
+ Get incoming frames received up to this point.
+
+ Calling this method clears the list. Each frame is returned only once.
+
+ """
+ frames_rcvd, self.frames_rcvd = self.frames_rcvd, []
+ return frames_rcvd
+
+ def recv_frame(self, frame):
+ self.frames_rcvd.append(frame)
+ super().recv_frame(frame)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/__init__.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/__init__.py
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/client.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/client.py
new file mode 100644
index 0000000000..683893e88c
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/client.py
@@ -0,0 +1,39 @@
+import contextlib
+import ssl
+
+from websockets.sync.client import *
+from websockets.sync.server import WebSocketServer
+
+from ..utils import CERTIFICATE
+
+
+__all__ = [
+ "CLIENT_CONTEXT",
+ "run_client",
+ "run_unix_client",
+]
+
+
+CLIENT_CONTEXT = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
+CLIENT_CONTEXT.load_verify_locations(CERTIFICATE)
+
+
+@contextlib.contextmanager
+def run_client(wsuri_or_server, secure=None, resource_name="/", **kwargs):
+ if isinstance(wsuri_or_server, str):
+ wsuri = wsuri_or_server
+ else:
+ assert isinstance(wsuri_or_server, WebSocketServer)
+ if secure is None:
+ secure = "ssl_context" in kwargs
+ protocol = "wss" if secure else "ws"
+ host, port = wsuri_or_server.socket.getsockname()
+ wsuri = f"{protocol}://{host}:{port}{resource_name}"
+ with connect(wsuri, **kwargs) as client:
+ yield client
+
+
+@contextlib.contextmanager
+def run_unix_client(path, **kwargs):
+ with unix_connect(path, **kwargs) as client:
+ yield client
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/connection.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/connection.py
new file mode 100644
index 0000000000..89d4909ee1
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/connection.py
@@ -0,0 +1,109 @@
+import contextlib
+import time
+
+from websockets.sync.connection import Connection
+
+
+class InterceptingConnection(Connection):
+ """
+ Connection subclass that can intercept outgoing packets.
+
+ By interfacing with this connection, you can simulate network conditions
+ affecting what the component being tested receives during a test.
+
+ """
+
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+ self.socket = InterceptingSocket(self.socket)
+
+ @contextlib.contextmanager
+ def delay_frames_sent(self, delay):
+ """
+ Add a delay before sending frames.
+
+ Delays cumulate: they're added before every frame or before EOF.
+
+ """
+ assert self.socket.delay_sendall is None
+ self.socket.delay_sendall = delay
+ try:
+ yield
+ finally:
+ self.socket.delay_sendall = None
+
+ @contextlib.contextmanager
+ def delay_eof_sent(self, delay):
+ """
+ Add a delay before sending EOF.
+
+ Delays cumulate: they're added before every frame or before EOF.
+
+ """
+ assert self.socket.delay_shutdown is None
+ self.socket.delay_shutdown = delay
+ try:
+ yield
+ finally:
+ self.socket.delay_shutdown = None
+
+ @contextlib.contextmanager
+ def drop_frames_sent(self):
+ """
+ Prevent frames from being sent.
+
+ Since TCP is reliable, sending frames or EOF afterwards is unrealistic.
+
+ """
+ assert not self.socket.drop_sendall
+ self.socket.drop_sendall = True
+ try:
+ yield
+ finally:
+ self.socket.drop_sendall = False
+
+ @contextlib.contextmanager
+ def drop_eof_sent(self):
+ """
+ Prevent EOF from being sent.
+
+ Since TCP is reliable, sending frames or EOF afterwards is unrealistic.
+
+ """
+ assert not self.socket.drop_shutdown
+ self.socket.drop_shutdown = True
+ try:
+ yield
+ finally:
+ self.socket.drop_shutdown = False
+
+
+class InterceptingSocket:
+ """
+ Socket wrapper that intercepts calls to sendall and shutdown.
+
+ This is coupled to the implementation, which relies on these two methods.
+
+ """
+
+ def __init__(self, socket):
+ self.socket = socket
+ self.delay_sendall = None
+ self.delay_shutdown = None
+ self.drop_sendall = False
+ self.drop_shutdown = False
+
+ def __getattr__(self, name):
+ return getattr(self.socket, name)
+
+ def sendall(self, bytes, flags=0):
+ if self.delay_sendall is not None:
+ time.sleep(self.delay_sendall)
+ if not self.drop_sendall:
+ self.socket.sendall(bytes, flags)
+
+ def shutdown(self, how):
+ if self.delay_shutdown is not None:
+ time.sleep(self.delay_shutdown)
+ if not self.drop_shutdown:
+ self.socket.shutdown(how)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/server.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/server.py
new file mode 100644
index 0000000000..a9a77438ca
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/server.py
@@ -0,0 +1,65 @@
+import contextlib
+import ssl
+import threading
+
+from websockets.sync.server import *
+
+from ..utils import CERTIFICATE
+
+
+SERVER_CONTEXT = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
+SERVER_CONTEXT.load_cert_chain(CERTIFICATE)
+
+# Work around https://github.com/openssl/openssl/issues/7967
+
+# This bug causes connect() to hang in tests for the client. Including this
+# workaround acknowledges that the issue could happen outside of the test suite.
+
+# It shouldn't happen too often, or else OpenSSL 1.1.1 would be unusable. If it
+# happens, we can look for a library-level fix, but it won't be easy.
+
+SERVER_CONTEXT.num_tickets = 0
+
+
+def crash(ws):
+ raise RuntimeError
+
+
+def do_nothing(ws):
+ pass
+
+
+def eval_shell(ws):
+ for expr in ws:
+ value = eval(expr)
+ ws.send(str(value))
+
+
+class EvalShellMixin:
+ def assertEval(self, client, expr, value):
+ client.send(expr)
+ self.assertEqual(client.recv(), value)
+
+
+@contextlib.contextmanager
+def run_server(ws_handler=eval_shell, host="localhost", port=0, **kwargs):
+ with serve(ws_handler, host, port, **kwargs) as server:
+ thread = threading.Thread(target=server.serve_forever)
+ thread.start()
+ try:
+ yield server
+ finally:
+ server.shutdown()
+ thread.join()
+
+
+@contextlib.contextmanager
+def run_unix_server(path, ws_handler=eval_shell, **kwargs):
+ with unix_serve(ws_handler, path, **kwargs) as server:
+ thread = threading.Thread(target=server.serve_forever)
+ thread.start()
+ try:
+ yield server
+ finally:
+ server.shutdown()
+ thread.join()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_client.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_client.py
new file mode 100644
index 0000000000..c900f3b0fe
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_client.py
@@ -0,0 +1,274 @@
+import socket
+import ssl
+import threading
+import unittest
+
+from websockets.exceptions import InvalidHandshake
+from websockets.extensions.permessage_deflate import PerMessageDeflate
+from websockets.sync.client import *
+
+from ..utils import MS, temp_unix_socket_path
+from .client import CLIENT_CONTEXT, run_client, run_unix_client
+from .server import SERVER_CONTEXT, do_nothing, run_server, run_unix_server
+
+
+class ClientTests(unittest.TestCase):
+ def test_connection(self):
+ """Client connects to server and the handshake succeeds."""
+ with run_server() as server:
+ with run_client(server) as client:
+ self.assertEqual(client.protocol.state.name, "OPEN")
+
+ def test_connection_fails(self):
+ """Client connects to server but the handshake fails."""
+
+ def remove_accept_header(self, request, response):
+ del response.headers["Sec-WebSocket-Accept"]
+
+ # The connection will be open for the server but failed for the client.
+ # Use a connection handler that exits immediately to avoid an exception.
+ with run_server(do_nothing, process_response=remove_accept_header) as server:
+ with self.assertRaisesRegex(
+ InvalidHandshake,
+ "missing Sec-WebSocket-Accept header",
+ ):
+ with run_client(server, close_timeout=MS):
+ self.fail("did not raise")
+
+ def test_tcp_connection_fails(self):
+ """Client fails to connect to server."""
+ with self.assertRaises(OSError):
+ with run_client("ws://localhost:54321"): # invalid port
+ self.fail("did not raise")
+
+ def test_existing_socket(self):
+ """Client connects using a pre-existing socket."""
+ with run_server() as server:
+ with socket.create_connection(server.socket.getsockname()) as sock:
+ # Use a non-existing domain to ensure we connect to the right socket.
+ with run_client("ws://invalid/", sock=sock) as client:
+ self.assertEqual(client.protocol.state.name, "OPEN")
+
+ def test_additional_headers(self):
+ """Client can set additional headers with additional_headers."""
+ with run_server() as server:
+ with run_client(
+ server, additional_headers={"Authorization": "Bearer ..."}
+ ) as client:
+ self.assertEqual(client.request.headers["Authorization"], "Bearer ...")
+
+ def test_override_user_agent(self):
+ """Client can override User-Agent header with user_agent_header."""
+ with run_server() as server:
+ with run_client(server, user_agent_header="Smith") as client:
+ self.assertEqual(client.request.headers["User-Agent"], "Smith")
+
+ def test_remove_user_agent(self):
+ """Client can remove User-Agent header with user_agent_header."""
+ with run_server() as server:
+ with run_client(server, user_agent_header=None) as client:
+ self.assertNotIn("User-Agent", client.request.headers)
+
+ def test_compression_is_enabled(self):
+ """Client enables compression by default."""
+ with run_server() as server:
+ with run_client(server) as client:
+ self.assertEqual(
+ [type(ext) for ext in client.protocol.extensions],
+ [PerMessageDeflate],
+ )
+
+ def test_disable_compression(self):
+ """Client disables compression."""
+ with run_server() as server:
+ with run_client(server, compression=None) as client:
+ self.assertEqual(client.protocol.extensions, [])
+
+ def test_custom_connection_factory(self):
+ """Client runs ClientConnection factory provided in create_connection."""
+
+ def create_connection(*args, **kwargs):
+ client = ClientConnection(*args, **kwargs)
+ client.create_connection_ran = True
+ return client
+
+ with run_server() as server:
+ with run_client(server, create_connection=create_connection) as client:
+ self.assertTrue(client.create_connection_ran)
+
+ def test_timeout_during_handshake(self):
+ """Client times out before receiving handshake response from server."""
+ gate = threading.Event()
+
+ def stall_connection(self, request):
+ gate.wait()
+
+ # The connection will be open for the server but failed for the client.
+ # Use a connection handler that exits immediately to avoid an exception.
+ with run_server(do_nothing, process_request=stall_connection) as server:
+ try:
+ with self.assertRaisesRegex(
+ TimeoutError,
+ "timed out during handshake",
+ ):
+ # While it shouldn't take 50ms to open a connection, this
+ # test becomes flaky in CI when setting a smaller timeout,
+ # even after increasing WEBSOCKETS_TESTS_TIMEOUT_FACTOR.
+ with run_client(server, open_timeout=5 * MS):
+ self.fail("did not raise")
+ finally:
+ gate.set()
+
+ def test_connection_closed_during_handshake(self):
+ """Client reads EOF before receiving handshake response from server."""
+
+ def close_connection(self, request):
+ self.close_socket()
+
+ with run_server(process_request=close_connection) as server:
+ with self.assertRaisesRegex(
+ ConnectionError,
+ "connection closed during handshake",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+
+class SecureClientTests(unittest.TestCase):
+ def test_connection(self):
+ """Client connects to server securely."""
+ with run_server(ssl_context=SERVER_CONTEXT) as server:
+ with run_client(server, ssl_context=CLIENT_CONTEXT) as client:
+ self.assertEqual(client.protocol.state.name, "OPEN")
+ self.assertEqual(client.socket.version()[:3], "TLS")
+
+ def test_set_server_hostname_implicitly(self):
+ """Client sets server_hostname to the host in the WebSocket URI."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path, ssl_context=SERVER_CONTEXT):
+ with run_unix_client(
+ path,
+ ssl_context=CLIENT_CONTEXT,
+ uri="wss://overridden/",
+ ) as client:
+ self.assertEqual(client.socket.server_hostname, "overridden")
+
+ def test_set_server_hostname_explicitly(self):
+ """Client sets server_hostname to the value provided in argument."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path, ssl_context=SERVER_CONTEXT):
+ with run_unix_client(
+ path,
+ ssl_context=CLIENT_CONTEXT,
+ server_hostname="overridden",
+ ) as client:
+ self.assertEqual(client.socket.server_hostname, "overridden")
+
+ def test_reject_invalid_server_certificate(self):
+ """Client rejects certificate where server certificate isn't trusted."""
+ with run_server(ssl_context=SERVER_CONTEXT) as server:
+ with self.assertRaisesRegex(
+ ssl.SSLCertVerificationError,
+ r"certificate verify failed: self[ -]signed certificate",
+ ):
+ # The test certificate isn't trusted system-wide.
+ with run_client(server, secure=True):
+ self.fail("did not raise")
+
+ def test_reject_invalid_server_hostname(self):
+ """Client rejects certificate where server hostname doesn't match."""
+ with run_server(ssl_context=SERVER_CONTEXT) as server:
+ with self.assertRaisesRegex(
+ ssl.SSLCertVerificationError,
+ r"certificate verify failed: Hostname mismatch",
+ ):
+ # This hostname isn't included in the test certificate.
+ with run_client(
+ server, ssl_context=CLIENT_CONTEXT, server_hostname="invalid"
+ ):
+ self.fail("did not raise")
+
+
+@unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+class UnixClientTests(unittest.TestCase):
+ def test_connection(self):
+ """Client connects to server over a Unix socket."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path):
+ with run_unix_client(path) as client:
+ self.assertEqual(client.protocol.state.name, "OPEN")
+
+ def test_set_host_header(self):
+ """Client sets the Host header to the host in the WebSocket URI."""
+ # This is part of the documented behavior of unix_connect().
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path):
+ with run_unix_client(path, uri="ws://overridden/") as client:
+ self.assertEqual(client.request.headers["Host"], "overridden")
+
+
+@unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+class SecureUnixClientTests(unittest.TestCase):
+ def test_connection(self):
+ """Client connects to server securely over a Unix socket."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path, ssl_context=SERVER_CONTEXT):
+ with run_unix_client(path, ssl_context=CLIENT_CONTEXT) as client:
+ self.assertEqual(client.protocol.state.name, "OPEN")
+ self.assertEqual(client.socket.version()[:3], "TLS")
+
+ def test_set_server_hostname(self):
+ """Client sets server_hostname to the host in the WebSocket URI."""
+ # This is part of the documented behavior of unix_connect().
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path, ssl_context=SERVER_CONTEXT):
+ with run_unix_client(
+ path,
+ ssl_context=CLIENT_CONTEXT,
+ uri="wss://overridden/",
+ ) as client:
+ self.assertEqual(client.socket.server_hostname, "overridden")
+
+
+class ClientUsageErrorsTests(unittest.TestCase):
+ def test_ssl_context_without_secure_uri(self):
+ """Client rejects ssl_context when URI isn't secure."""
+ with self.assertRaisesRegex(
+ TypeError,
+ "ssl_context argument is incompatible with a ws:// URI",
+ ):
+ connect("ws://localhost/", ssl_context=CLIENT_CONTEXT)
+
+ def test_unix_without_path_or_sock(self):
+ """Unix client requires path when sock isn't provided."""
+ with self.assertRaisesRegex(
+ TypeError,
+ "missing path argument",
+ ):
+ unix_connect()
+
+ def test_unix_with_path_and_sock(self):
+ """Unix client rejects path when sock is provided."""
+ sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
+ self.addCleanup(sock.close)
+ with self.assertRaisesRegex(
+ TypeError,
+ "path and sock arguments are incompatible",
+ ):
+ unix_connect(path="/", sock=sock)
+
+ def test_invalid_subprotocol(self):
+ """Client rejects single value of subprotocols."""
+ with self.assertRaisesRegex(
+ TypeError,
+ "subprotocols must be a list",
+ ):
+ connect("ws://localhost/", subprotocols="chat")
+
+ def test_unsupported_compression(self):
+ """Client rejects incorrect value of compression."""
+ with self.assertRaisesRegex(
+ ValueError,
+ "unsupported compression: False",
+ ):
+ connect("ws://localhost/", compression=False)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_connection.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_connection.py
new file mode 100644
index 0000000000..63544d4add
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_connection.py
@@ -0,0 +1,752 @@
+import contextlib
+import logging
+import platform
+import socket
+import sys
+import threading
+import time
+import unittest
+import uuid
+from unittest.mock import patch
+
+from websockets.exceptions import ConnectionClosedError, ConnectionClosedOK
+from websockets.frames import CloseCode, Frame, Opcode
+from websockets.protocol import CLIENT, SERVER, Protocol
+from websockets.sync.connection import *
+
+from ..protocol import RecordingProtocol
+from ..utils import MS
+from .connection import InterceptingConnection
+
+
+# Connection implements symmetrical behavior between clients and servers.
+# All tests run on the client side and the server side to validate this.
+
+
+class ClientConnectionTests(unittest.TestCase):
+ LOCAL = CLIENT
+ REMOTE = SERVER
+
+ def setUp(self):
+ socket_, remote_socket = socket.socketpair()
+ protocol = Protocol(self.LOCAL)
+ remote_protocol = RecordingProtocol(self.REMOTE)
+ self.connection = Connection(socket_, protocol, close_timeout=2 * MS)
+ self.remote_connection = InterceptingConnection(remote_socket, remote_protocol)
+
+ def tearDown(self):
+ self.remote_connection.close()
+ self.connection.close()
+
+ # Test helpers built upon RecordingProtocol and InterceptingConnection.
+
+ def assertFrameSent(self, frame):
+ """Check that a single frame was sent."""
+ time.sleep(MS) # let the remote side process messages
+ self.assertEqual(self.remote_connection.protocol.get_frames_rcvd(), [frame])
+
+ def assertNoFrameSent(self):
+ """Check that no frame was sent."""
+ time.sleep(MS) # let the remote side process messages
+ self.assertEqual(self.remote_connection.protocol.get_frames_rcvd(), [])
+
+ @contextlib.contextmanager
+ def delay_frames_rcvd(self, delay):
+ """Delay frames before they're received by the connection."""
+ with self.remote_connection.delay_frames_sent(delay):
+ yield
+ time.sleep(MS) # let the remote side process messages
+
+ @contextlib.contextmanager
+ def delay_eof_rcvd(self, delay):
+ """Delay EOF before it's received by the connection."""
+ with self.remote_connection.delay_eof_sent(delay):
+ yield
+ time.sleep(MS) # let the remote side process messages
+
+ @contextlib.contextmanager
+ def drop_frames_rcvd(self):
+ """Drop frames before they're received by the connection."""
+ with self.remote_connection.drop_frames_sent():
+ yield
+ time.sleep(MS) # let the remote side process messages
+
+ @contextlib.contextmanager
+ def drop_eof_rcvd(self):
+ """Drop EOF before it's received by the connection."""
+ with self.remote_connection.drop_eof_sent():
+ yield
+ time.sleep(MS) # let the remote side process messages
+
+ # Test __enter__ and __exit__.
+
+ def test_enter(self):
+ """__enter__ returns the connection itself."""
+ with self.connection as connection:
+ self.assertIs(connection, self.connection)
+
+ def test_exit(self):
+ """__exit__ closes the connection with code 1000."""
+ with self.connection:
+ self.assertNoFrameSent()
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xe8"))
+
+ def test_exit_with_exception(self):
+ """__exit__ with an exception closes the connection with code 1011."""
+ with self.assertRaises(RuntimeError):
+ with self.connection:
+ raise RuntimeError
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xf3"))
+
+ # Test __iter__.
+
+ def test_iter_text(self):
+ """__iter__ yields text messages."""
+ iterator = iter(self.connection)
+ self.remote_connection.send("😀")
+ self.assertEqual(next(iterator), "😀")
+ self.remote_connection.send("😀")
+ self.assertEqual(next(iterator), "😀")
+
+ def test_iter_binary(self):
+ """__iter__ yields binary messages."""
+ iterator = iter(self.connection)
+ self.remote_connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(next(iterator), b"\x01\x02\xfe\xff")
+ self.remote_connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(next(iterator), b"\x01\x02\xfe\xff")
+
+ def test_iter_mixed(self):
+ """__iter__ yields a mix of text and binary messages."""
+ iterator = iter(self.connection)
+ self.remote_connection.send("😀")
+ self.assertEqual(next(iterator), "😀")
+ self.remote_connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(next(iterator), b"\x01\x02\xfe\xff")
+
+ def test_iter_connection_closed_ok(self):
+ """__iter__ terminates after a normal closure."""
+ iterator = iter(self.connection)
+ self.remote_connection.close()
+ with self.assertRaises(StopIteration):
+ next(iterator)
+
+ def test_iter_connection_closed_error(self):
+ """__iter__ raises ConnnectionClosedError after an error."""
+ iterator = iter(self.connection)
+ self.remote_connection.close(code=CloseCode.INTERNAL_ERROR)
+ with self.assertRaises(ConnectionClosedError):
+ next(iterator)
+
+ # Test recv.
+
+ def test_recv_text(self):
+ """recv receives a text message."""
+ self.remote_connection.send("😀")
+ self.assertEqual(self.connection.recv(), "😀")
+
+ def test_recv_binary(self):
+ """recv receives a binary message."""
+ self.remote_connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(self.connection.recv(), b"\x01\x02\xfe\xff")
+
+ def test_recv_fragmented_text(self):
+ """recv receives a fragmented text message."""
+ self.remote_connection.send(["😀", "😀"])
+ self.assertEqual(self.connection.recv(), "😀😀")
+
+ def test_recv_fragmented_binary(self):
+ """recv receives a fragmented binary message."""
+ self.remote_connection.send([b"\x01\x02", b"\xfe\xff"])
+ self.assertEqual(self.connection.recv(), b"\x01\x02\xfe\xff")
+
+ def test_recv_connection_closed_ok(self):
+ """recv raises ConnectionClosedOK after a normal closure."""
+ self.remote_connection.close()
+ with self.assertRaises(ConnectionClosedOK):
+ self.connection.recv()
+
+ def test_recv_connection_closed_error(self):
+ """recv raises ConnectionClosedError after an error."""
+ self.remote_connection.close(code=CloseCode.INTERNAL_ERROR)
+ with self.assertRaises(ConnectionClosedError):
+ self.connection.recv()
+
+ def test_recv_during_recv(self):
+ """recv raises RuntimeError when called concurrently with itself."""
+ recv_thread = threading.Thread(target=self.connection.recv)
+ recv_thread.start()
+
+ with self.assertRaisesRegex(
+ RuntimeError,
+ "cannot call recv while another thread "
+ "is already running recv or recv_streaming",
+ ):
+ self.connection.recv()
+
+ self.remote_connection.send("")
+ recv_thread.join()
+
+ def test_recv_during_recv_streaming(self):
+ """recv raises RuntimeError when called concurrently with recv_streaming."""
+ recv_streaming_thread = threading.Thread(
+ target=lambda: list(self.connection.recv_streaming())
+ )
+ recv_streaming_thread.start()
+
+ with self.assertRaisesRegex(
+ RuntimeError,
+ "cannot call recv while another thread "
+ "is already running recv or recv_streaming",
+ ):
+ self.connection.recv()
+
+ self.remote_connection.send("")
+ recv_streaming_thread.join()
+
+ # Test recv_streaming.
+
+ def test_recv_streaming_text(self):
+ """recv_streaming receives a text message."""
+ self.remote_connection.send("😀")
+ self.assertEqual(
+ list(self.connection.recv_streaming()),
+ ["😀"],
+ )
+
+ def test_recv_streaming_binary(self):
+ """recv_streaming receives a binary message."""
+ self.remote_connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(
+ list(self.connection.recv_streaming()),
+ [b"\x01\x02\xfe\xff"],
+ )
+
+ def test_recv_streaming_fragmented_text(self):
+ """recv_streaming receives a fragmented text message."""
+ self.remote_connection.send(["😀", "😀"])
+ # websockets sends an trailing empty fragment. That's an implementation detail.
+ self.assertEqual(
+ list(self.connection.recv_streaming()),
+ ["😀", "😀", ""],
+ )
+
+ def test_recv_streaming_fragmented_binary(self):
+ """recv_streaming receives a fragmented binary message."""
+ self.remote_connection.send([b"\x01\x02", b"\xfe\xff"])
+ # websockets sends an trailing empty fragment. That's an implementation detail.
+ self.assertEqual(
+ list(self.connection.recv_streaming()),
+ [b"\x01\x02", b"\xfe\xff", b""],
+ )
+
+ def test_recv_streaming_connection_closed_ok(self):
+ """recv_streaming raises ConnectionClosedOK after a normal closure."""
+ self.remote_connection.close()
+ with self.assertRaises(ConnectionClosedOK):
+ list(self.connection.recv_streaming())
+
+ def test_recv_streaming_connection_closed_error(self):
+ """recv_streaming raises ConnectionClosedError after an error."""
+ self.remote_connection.close(code=CloseCode.INTERNAL_ERROR)
+ with self.assertRaises(ConnectionClosedError):
+ list(self.connection.recv_streaming())
+
+ def test_recv_streaming_during_recv(self):
+ """recv_streaming raises RuntimeError when called concurrently with recv."""
+ recv_thread = threading.Thread(target=self.connection.recv)
+ recv_thread.start()
+
+ with self.assertRaisesRegex(
+ RuntimeError,
+ "cannot call recv_streaming while another thread "
+ "is already running recv or recv_streaming",
+ ):
+ list(self.connection.recv_streaming())
+
+ self.remote_connection.send("")
+ recv_thread.join()
+
+ def test_recv_streaming_during_recv_streaming(self):
+ """recv_streaming raises RuntimeError when called concurrently with itself."""
+ recv_streaming_thread = threading.Thread(
+ target=lambda: list(self.connection.recv_streaming())
+ )
+ recv_streaming_thread.start()
+
+ with self.assertRaisesRegex(
+ RuntimeError,
+ r"cannot call recv_streaming while another thread "
+ r"is already running recv or recv_streaming",
+ ):
+ list(self.connection.recv_streaming())
+
+ self.remote_connection.send("")
+ recv_streaming_thread.join()
+
+ # Test send.
+
+ def test_send_text(self):
+ """send sends a text message."""
+ self.connection.send("😀")
+ self.assertEqual(self.remote_connection.recv(), "😀")
+
+ def test_send_binary(self):
+ """send sends a binary message."""
+ self.connection.send(b"\x01\x02\xfe\xff")
+ self.assertEqual(self.remote_connection.recv(), b"\x01\x02\xfe\xff")
+
+ def test_send_fragmented_text(self):
+ """send sends a fragmented text message."""
+ self.connection.send(["😀", "😀"])
+ # websockets sends an trailing empty fragment. That's an implementation detail.
+ self.assertEqual(
+ list(self.remote_connection.recv_streaming()),
+ ["😀", "😀", ""],
+ )
+
+ def test_send_fragmented_binary(self):
+ """send sends a fragmented binary message."""
+ self.connection.send([b"\x01\x02", b"\xfe\xff"])
+ # websockets sends an trailing empty fragment. That's an implementation detail.
+ self.assertEqual(
+ list(self.remote_connection.recv_streaming()),
+ [b"\x01\x02", b"\xfe\xff", b""],
+ )
+
+ def test_send_connection_closed_ok(self):
+ """send raises ConnectionClosedOK after a normal closure."""
+ self.remote_connection.close()
+ with self.assertRaises(ConnectionClosedOK):
+ self.connection.send("😀")
+
+ def test_send_connection_closed_error(self):
+ """send raises ConnectionClosedError after an error."""
+ self.remote_connection.close(code=CloseCode.INTERNAL_ERROR)
+ with self.assertRaises(ConnectionClosedError):
+ self.connection.send("😀")
+
+ def test_send_during_send(self):
+ """send raises RuntimeError when called concurrently with itself."""
+ recv_thread = threading.Thread(target=self.remote_connection.recv)
+ recv_thread.start()
+
+ send_gate = threading.Event()
+ exit_gate = threading.Event()
+
+ def fragments():
+ yield "😀"
+ send_gate.set()
+ exit_gate.wait()
+ yield "😀"
+
+ send_thread = threading.Thread(
+ target=self.connection.send,
+ args=(fragments(),),
+ )
+ send_thread.start()
+
+ send_gate.wait()
+ # The check happens in four code paths, depending on the argument.
+ for message in [
+ "😀",
+ b"\x01\x02\xfe\xff",
+ ["😀", "😀"],
+ [b"\x01\x02", b"\xfe\xff"],
+ ]:
+ with self.subTest(message=message):
+ with self.assertRaisesRegex(
+ RuntimeError,
+ "cannot call send while another thread is already running send",
+ ):
+ self.connection.send(message)
+
+ exit_gate.set()
+ send_thread.join()
+ recv_thread.join()
+
+ def test_send_empty_iterable(self):
+ """send does nothing when called with an empty iterable."""
+ self.connection.send([])
+ self.connection.close()
+ self.assertEqual(list(iter(self.remote_connection)), [])
+
+ def test_send_mixed_iterable(self):
+ """send raises TypeError when called with an iterable of inconsistent types."""
+ with self.assertRaises(TypeError):
+ self.connection.send(["😀", b"\xfe\xff"])
+
+ def test_send_unsupported_iterable(self):
+ """send raises TypeError when called with an iterable of unsupported type."""
+ with self.assertRaises(TypeError):
+ self.connection.send([None])
+
+ def test_send_dict(self):
+ """send raises TypeError when called with a dict."""
+ with self.assertRaises(TypeError):
+ self.connection.send({"type": "object"})
+
+ def test_send_unsupported_type(self):
+ """send raises TypeError when called with an unsupported type."""
+ with self.assertRaises(TypeError):
+ self.connection.send(None)
+
+ # Test close.
+
+ def test_close(self):
+ """close sends a close frame."""
+ self.connection.close()
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xe8"))
+
+ def test_close_explicit_code_reason(self):
+ """close sends a close frame with a given code and reason."""
+ self.connection.close(CloseCode.GOING_AWAY, "bye!")
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xe9bye!"))
+
+ def test_close_waits_for_close_frame(self):
+ """close waits for a close frame (then EOF) before returning."""
+ with self.delay_frames_rcvd(MS):
+ self.connection.close()
+
+ with self.assertRaises(ConnectionClosedOK) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); then received 1000 (OK)")
+ self.assertIsNone(exc.__cause__)
+
+ def test_close_waits_for_connection_closed(self):
+ """close waits for EOF before returning."""
+ if self.LOCAL is SERVER:
+ self.skipTest("only relevant on the client-side")
+
+ with self.delay_eof_rcvd(MS):
+ self.connection.close()
+
+ with self.assertRaises(ConnectionClosedOK) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); then received 1000 (OK)")
+ self.assertIsNone(exc.__cause__)
+
+ def test_close_timeout_waiting_for_close_frame(self):
+ """close times out if no close frame is received."""
+ with self.drop_eof_rcvd(), self.drop_frames_rcvd():
+ self.connection.close()
+
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); no close frame received")
+ self.assertIsInstance(exc.__cause__, TimeoutError)
+
+ def test_close_timeout_waiting_for_connection_closed(self):
+ """close times out if EOF isn't received."""
+ if self.LOCAL is SERVER:
+ self.skipTest("only relevant on the client-side")
+
+ with self.drop_eof_rcvd():
+ self.connection.close()
+
+ with self.assertRaises(ConnectionClosedOK) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); then received 1000 (OK)")
+ # Remove socket.timeout when dropping Python < 3.10.
+ self.assertIsInstance(exc.__cause__, (socket.timeout, TimeoutError))
+
+ def test_close_waits_for_recv(self):
+ self.remote_connection.send("😀")
+
+ close_thread = threading.Thread(target=self.connection.close)
+ close_thread.start()
+
+ # Let close() initiate the closing handshake and send a close frame.
+ time.sleep(MS)
+ self.assertTrue(close_thread.is_alive())
+
+ # Connection isn't closed yet.
+ self.connection.recv()
+
+ # Let close() receive a close frame and finish the closing handshake.
+ time.sleep(MS)
+ self.assertFalse(close_thread.is_alive())
+
+ # Connection is closed now.
+ with self.assertRaises(ConnectionClosedOK) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); then received 1000 (OK)")
+ self.assertIsNone(exc.__cause__)
+
+ def test_close_timeout_waiting_for_recv(self):
+ self.remote_connection.send("😀")
+
+ close_thread = threading.Thread(target=self.connection.close)
+ close_thread.start()
+
+ # Let close() time out during the closing handshake.
+ time.sleep(3 * MS)
+ self.assertFalse(close_thread.is_alive())
+
+ # Connection is closed now.
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "sent 1000 (OK); no close frame received")
+ self.assertIsInstance(exc.__cause__, TimeoutError)
+
+ def test_close_idempotency(self):
+ """close does nothing if the connection is already closed."""
+ self.connection.close()
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xe8"))
+
+ self.connection.close()
+ self.assertNoFrameSent()
+
+ @unittest.skipIf(
+ platform.python_implementation() == "PyPy",
+ "this test fails randomly due to a bug in PyPy", # see #1314 for details
+ )
+ def test_close_idempotency_race_condition(self):
+ """close waits if the connection is already closing."""
+
+ self.connection.close_timeout = 5 * MS
+
+ def closer():
+ with self.delay_frames_rcvd(3 * MS):
+ self.connection.close()
+
+ close_thread = threading.Thread(target=closer)
+ close_thread.start()
+
+ # Let closer() initiate the closing handshake and send a close frame.
+ time.sleep(MS)
+ self.assertFrameSent(Frame(Opcode.CLOSE, b"\x03\xe8"))
+
+ # Connection isn't closed yet.
+ with self.assertRaises(TimeoutError):
+ self.connection.recv(timeout=0)
+
+ self.connection.close()
+ self.assertNoFrameSent()
+
+ # Connection is closed now.
+ with self.assertRaises(ConnectionClosedOK):
+ self.connection.recv(timeout=0)
+
+ close_thread.join()
+
+ def test_close_during_send(self):
+ """close fails the connection when called concurrently with send."""
+ close_gate = threading.Event()
+ exit_gate = threading.Event()
+
+ def closer():
+ close_gate.wait()
+ self.connection.close()
+ exit_gate.set()
+
+ def fragments():
+ yield "😀"
+ close_gate.set()
+ exit_gate.wait()
+ yield "😀"
+
+ close_thread = threading.Thread(target=closer)
+ close_thread.start()
+
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.send(fragments())
+
+ exc = raised.exception
+ self.assertEqual(
+ str(exc),
+ "sent 1011 (internal error) close during fragmented message; "
+ "no close frame received",
+ )
+ self.assertIsNone(exc.__cause__)
+
+ close_thread.join()
+
+ # Test ping.
+
+ @patch("random.getrandbits")
+ def test_ping(self, getrandbits):
+ """ping sends a ping frame with a random payload."""
+ getrandbits.return_value = 1918987876
+ self.connection.ping()
+ getrandbits.assert_called_once_with(32)
+ self.assertFrameSent(Frame(Opcode.PING, b"rand"))
+
+ def test_ping_explicit_text(self):
+ """ping sends a ping frame with a payload provided as text."""
+ self.connection.ping("ping")
+ self.assertFrameSent(Frame(Opcode.PING, b"ping"))
+
+ def test_ping_explicit_binary(self):
+ """ping sends a ping frame with a payload provided as binary."""
+ self.connection.ping(b"ping")
+ self.assertFrameSent(Frame(Opcode.PING, b"ping"))
+
+ def test_ping_duplicate_payload(self):
+ """ping rejects the same payload until receiving the pong."""
+ with self.remote_connection.protocol_mutex: # block response to ping
+ pong_waiter = self.connection.ping("idem")
+ with self.assertRaisesRegex(
+ RuntimeError,
+ "already waiting for a pong with the same data",
+ ):
+ self.connection.ping("idem")
+ self.assertTrue(pong_waiter.wait(MS))
+ self.connection.ping("idem") # doesn't raise an exception
+
+ def test_acknowledge_ping(self):
+ """ping is acknowledged by a pong with the same payload."""
+ with self.drop_frames_rcvd():
+ pong_waiter = self.connection.ping("this")
+ self.assertFalse(pong_waiter.wait(MS))
+ self.remote_connection.pong("this")
+ self.assertTrue(pong_waiter.wait(MS))
+
+ def test_acknowledge_ping_non_matching_pong(self):
+ """ping isn't acknowledged by a pong with a different payload."""
+ with self.drop_frames_rcvd():
+ pong_waiter = self.connection.ping("this")
+ self.remote_connection.pong("that")
+ self.assertFalse(pong_waiter.wait(MS))
+
+ def test_acknowledge_previous_ping(self):
+ """ping is acknowledged by a pong with the same payload as a later ping."""
+ with self.drop_frames_rcvd():
+ pong_waiter = self.connection.ping("this")
+ self.connection.ping("that")
+ self.remote_connection.pong("that")
+ self.assertTrue(pong_waiter.wait(MS))
+
+ # Test pong.
+
+ def test_pong(self):
+ """pong sends a pong frame."""
+ self.connection.pong()
+ self.assertFrameSent(Frame(Opcode.PONG, b""))
+
+ def test_pong_explicit_text(self):
+ """pong sends a pong frame with a payload provided as text."""
+ self.connection.pong("pong")
+ self.assertFrameSent(Frame(Opcode.PONG, b"pong"))
+
+ def test_pong_explicit_binary(self):
+ """pong sends a pong frame with a payload provided as binary."""
+ self.connection.pong(b"pong")
+ self.assertFrameSent(Frame(Opcode.PONG, b"pong"))
+
+ # Test attributes.
+
+ def test_id(self):
+ """Connection has an id attribute."""
+ self.assertIsInstance(self.connection.id, uuid.UUID)
+
+ def test_logger(self):
+ """Connection has a logger attribute."""
+ self.assertIsInstance(self.connection.logger, logging.LoggerAdapter)
+
+ def test_local_address(self):
+ """Connection has a local_address attribute."""
+ self.assertIsNotNone(self.connection.local_address)
+
+ def test_remote_address(self):
+ """Connection has a remote_address attribute."""
+ self.assertIsNotNone(self.connection.remote_address)
+
+ def test_request(self):
+ """Connection has a request attribute."""
+ self.assertIsNone(self.connection.request)
+
+ def test_response(self):
+ """Connection has a response attribute."""
+ self.assertIsNone(self.connection.response)
+
+ def test_subprotocol(self):
+ """Connection has a subprotocol attribute."""
+ self.assertIsNone(self.connection.subprotocol)
+
+ # Test reporting of network errors.
+
+ @unittest.skipUnless(sys.platform == "darwin", "works only on BSD")
+ def test_reading_in_recv_events_fails(self):
+ """Error when reading incoming frames is correctly reported."""
+ # Inject a fault by closing the socket. This works only on BSD.
+ # I cannot find a way to achieve the same effect on Linux.
+ self.connection.socket.close()
+ # The connection closed exception reports the injected fault.
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.recv()
+ self.assertIsInstance(raised.exception.__cause__, IOError)
+
+ def test_writing_in_recv_events_fails(self):
+ """Error when responding to incoming frames is correctly reported."""
+ # Inject a fault by shutting down the socket for writing — but not by
+ # closing it because that would terminate the connection.
+ self.connection.socket.shutdown(socket.SHUT_WR)
+ # Receive a ping. Responding with a pong will fail.
+ self.remote_connection.ping()
+ # The connection closed exception reports the injected fault.
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.recv()
+ self.assertIsInstance(raised.exception.__cause__, BrokenPipeError)
+
+ def test_writing_in_send_context_fails(self):
+ """Error when sending outgoing frame is correctly reported."""
+ # Inject a fault by shutting down the socket for writing — but not by
+ # closing it because that would terminate the connection.
+ self.connection.socket.shutdown(socket.SHUT_WR)
+ # Sending a pong will fail.
+ # The connection closed exception reports the injected fault.
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.pong()
+ self.assertIsInstance(raised.exception.__cause__, BrokenPipeError)
+
+ # Test safety nets — catching all exceptions in case of bugs.
+
+ @patch("websockets.protocol.Protocol.events_received")
+ def test_unexpected_failure_in_recv_events(self, events_received):
+ """Unexpected internal error in recv_events() is correctly reported."""
+ # Inject a fault in a random call in recv_events().
+ # This test is tightly coupled to the implementation.
+ events_received.side_effect = AssertionError
+ # Receive a message to trigger the fault.
+ self.remote_connection.send("😀")
+
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.recv()
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "no close frame received or sent")
+ self.assertIsInstance(exc.__cause__, AssertionError)
+
+ @patch("websockets.protocol.Protocol.send_text")
+ def test_unexpected_failure_in_send_context(self, send_text):
+ """Unexpected internal error in send_context() is correctly reported."""
+ # Inject a fault in a random call in send_context().
+ # This test is tightly coupled to the implementation.
+ send_text.side_effect = AssertionError
+
+ # Send a message to trigger the fault.
+ # The connection closed exception reports the injected fault.
+ with self.assertRaises(ConnectionClosedError) as raised:
+ self.connection.send("😀")
+
+ exc = raised.exception
+ self.assertEqual(str(exc), "no close frame received or sent")
+ self.assertIsInstance(exc.__cause__, AssertionError)
+
+
+class ServerConnectionTests(ClientConnectionTests):
+ LOCAL = SERVER
+ REMOTE = CLIENT
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_messages.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_messages.py
new file mode 100644
index 0000000000..825eb87974
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_messages.py
@@ -0,0 +1,479 @@
+import time
+
+from websockets.frames import OP_BINARY, OP_CONT, OP_PING, OP_PONG, OP_TEXT, Frame
+from websockets.sync.messages import *
+
+from ..utils import MS
+from .utils import ThreadTestCase
+
+
+class AssemblerTests(ThreadTestCase):
+ """
+ Tests in this class interact a lot with hidden synchronization mechanisms:
+
+ - get() / get_iter() and put() must run in separate threads when a final
+ frame is set because put() waits for get() / get_iter() to fetch the
+ message before returning.
+
+ - run_in_thread() lets its target run before yielding back control on entry,
+ which guarantees the intended execution order of test cases.
+
+ - run_in_thread() waits for its target to finish running before yielding
+ back control on exit, which allows making assertions immediately.
+
+ - When the main thread performs actions that let another thread progress, it
+ must wait before making assertions, to avoid depending on scheduling.
+
+ """
+
+ def setUp(self):
+ self.assembler = Assembler()
+
+ def tearDown(self):
+ """
+ Check that the assembler goes back to its default state after each test.
+
+ This removes the need for testing various sequences.
+
+ """
+ self.assertFalse(self.assembler.mutex.locked())
+ self.assertFalse(self.assembler.get_in_progress)
+ self.assertFalse(self.assembler.put_in_progress)
+ if not self.assembler.closed:
+ self.assertFalse(self.assembler.message_complete.is_set())
+ self.assertFalse(self.assembler.message_fetched.is_set())
+ self.assertIsNone(self.assembler.decoder)
+ self.assertEqual(self.assembler.chunks, [])
+ self.assertIsNone(self.assembler.chunks_queue)
+
+ # Test get
+
+ def test_get_text_message_already_received(self):
+ """get returns a text message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, "café")
+
+ def test_get_binary_message_already_received(self):
+ """get returns a binary message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_BINARY, b"tea"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, b"tea")
+
+ def test_get_text_message_not_received_yet(self):
+ """get returns a text message when it is received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ self.assertEqual(message, "café")
+
+ def test_get_binary_message_not_received_yet(self):
+ """get returns a binary message when it is received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_BINARY, b"tea"))
+
+ self.assertEqual(message, b"tea")
+
+ def test_get_fragmented_text_message_already_received(self):
+ """get reassembles a fragmented a text message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, "café")
+
+ def test_get_fragmented_binary_message_already_received(self):
+ """get reassembles a fragmented binary message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, b"tea")
+
+ def test_get_fragmented_text_message_being_received(self):
+ """get reassembles a fragmented text message that is partially received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ self.assertEqual(message, "café")
+
+ def test_get_fragmented_binary_message_being_received(self):
+ """get reassembles a fragmented binary message that is partially received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ self.assertEqual(message, b"tea")
+
+ def test_get_fragmented_text_message_not_received_yet(self):
+ """get reassembles a fragmented text message when it is received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ self.assertEqual(message, "café")
+
+ def test_get_fragmented_binary_message_not_received_yet(self):
+ """get reassembles a fragmented binary message when it is received."""
+ message = None
+
+ def getter():
+ nonlocal message
+ message = self.assembler.get()
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ self.assertEqual(message, b"tea")
+
+ # Test get_iter
+
+ def test_get_iter_text_message_already_received(self):
+ """get_iter yields a text message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ with self.run_in_thread(putter):
+ fragments = list(self.assembler.get_iter())
+
+ self.assertEqual(fragments, ["café"])
+
+ def test_get_iter_binary_message_already_received(self):
+ """get_iter yields a binary message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_BINARY, b"tea"))
+
+ with self.run_in_thread(putter):
+ fragments = list(self.assembler.get_iter())
+
+ self.assertEqual(fragments, [b"tea"])
+
+ def test_get_iter_text_message_not_received_yet(self):
+ """get_iter yields a text message when it is received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ self.assertEqual(fragments, ["café"])
+
+ def test_get_iter_binary_message_not_received_yet(self):
+ """get_iter yields a binary message when it is received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_BINARY, b"tea"))
+
+ self.assertEqual(fragments, [b"tea"])
+
+ def test_get_iter_fragmented_text_message_already_received(self):
+ """get_iter yields a fragmented text message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ with self.run_in_thread(putter):
+ fragments = list(self.assembler.get_iter())
+
+ self.assertEqual(fragments, ["ca", "f", "é"])
+
+ def test_get_iter_fragmented_binary_message_already_received(self):
+ """get_iter yields a fragmented binary message that is already received."""
+
+ def putter():
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ with self.run_in_thread(putter):
+ fragments = list(self.assembler.get_iter())
+
+ self.assertEqual(fragments, [b"t", b"e", b"a"])
+
+ def test_get_iter_fragmented_text_message_being_received(self):
+ """get_iter yields a fragmented text message that is partially received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ with self.run_in_thread(getter):
+ self.assertEqual(fragments, ["ca"])
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, ["ca", "f"])
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ self.assertEqual(fragments, ["ca", "f", "é"])
+
+ def test_get_iter_fragmented_binary_message_being_received(self):
+ """get_iter yields a fragmented binary message that is partially received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ with self.run_in_thread(getter):
+ self.assertEqual(fragments, [b"t"])
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, [b"t", b"e"])
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ self.assertEqual(fragments, [b"t", b"e", b"a"])
+
+ def test_get_iter_fragmented_text_message_not_received_yet(self):
+ """get_iter yields a fragmented text message when it is received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_TEXT, b"ca", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, ["ca"])
+ self.assembler.put(Frame(OP_CONT, b"f\xc3", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, ["ca", "f"])
+ self.assembler.put(Frame(OP_CONT, b"\xa9"))
+
+ self.assertEqual(fragments, ["ca", "f", "é"])
+
+ def test_get_iter_fragmented_binary_message_not_received_yet(self):
+ """get_iter yields a fragmented binary message when it is received."""
+ fragments = []
+
+ def getter():
+ for fragment in self.assembler.get_iter():
+ fragments.append(fragment)
+
+ with self.run_in_thread(getter):
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, [b"t"])
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ time.sleep(MS)
+ self.assertEqual(fragments, [b"t", b"e"])
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ self.assertEqual(fragments, [b"t", b"e", b"a"])
+
+ # Test timeouts
+
+ def test_get_with_timeout_completes(self):
+ """get returns a message when it is received before the timeout."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get(MS)
+
+ self.assertEqual(message, "café")
+
+ def test_get_with_timeout_times_out(self):
+ """get raises TimeoutError when no message is received before the timeout."""
+ with self.assertRaises(TimeoutError):
+ self.assembler.get(MS)
+
+ # Test control frames
+
+ def test_control_frame_before_message_is_ignored(self):
+ """get ignores control frames between messages."""
+
+ def putter():
+ self.assembler.put(Frame(OP_PING, b""))
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, "café")
+
+ def test_control_frame_in_fragmented_message_is_ignored(self):
+ """get ignores control frames within fragmented messages."""
+
+ def putter():
+ self.assembler.put(Frame(OP_BINARY, b"t", fin=False))
+ self.assembler.put(Frame(OP_PING, b""))
+ self.assembler.put(Frame(OP_CONT, b"e", fin=False))
+ self.assembler.put(Frame(OP_PONG, b""))
+ self.assembler.put(Frame(OP_CONT, b"a"))
+
+ with self.run_in_thread(putter):
+ message = self.assembler.get()
+
+ self.assertEqual(message, b"tea")
+
+ # Test concurrency
+
+ def test_get_fails_when_get_is_running(self):
+ """get cannot be called concurrently with itself."""
+ with self.run_in_thread(self.assembler.get):
+ with self.assertRaises(RuntimeError):
+ self.assembler.get()
+ self.assembler.put(Frame(OP_TEXT, b"")) # unlock other thread
+
+ def test_get_fails_when_get_iter_is_running(self):
+ """get cannot be called concurrently with get_iter."""
+ with self.run_in_thread(lambda: list(self.assembler.get_iter())):
+ with self.assertRaises(RuntimeError):
+ self.assembler.get()
+ self.assembler.put(Frame(OP_TEXT, b"")) # unlock other thread
+
+ def test_get_iter_fails_when_get_is_running(self):
+ """get_iter cannot be called concurrently with get."""
+ with self.run_in_thread(self.assembler.get):
+ with self.assertRaises(RuntimeError):
+ list(self.assembler.get_iter())
+ self.assembler.put(Frame(OP_TEXT, b"")) # unlock other thread
+
+ def test_get_iter_fails_when_get_iter_is_running(self):
+ """get_iter cannot be called concurrently with itself."""
+ with self.run_in_thread(lambda: list(self.assembler.get_iter())):
+ with self.assertRaises(RuntimeError):
+ list(self.assembler.get_iter())
+ self.assembler.put(Frame(OP_TEXT, b"")) # unlock other thread
+
+ def test_put_fails_when_put_is_running(self):
+ """put cannot be called concurrently with itself."""
+
+ def putter():
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ with self.run_in_thread(putter):
+ with self.assertRaises(RuntimeError):
+ self.assembler.put(Frame(OP_BINARY, b"tea"))
+ self.assembler.get() # unblock other thread
+
+ # Test termination
+
+ def test_get_fails_when_interrupted_by_close(self):
+ """get raises EOFError when close is called."""
+
+ def closer():
+ time.sleep(2 * MS)
+ self.assembler.close()
+
+ with self.run_in_thread(closer):
+ with self.assertRaises(EOFError):
+ self.assembler.get()
+
+ def test_get_iter_fails_when_interrupted_by_close(self):
+ """get_iter raises EOFError when close is called."""
+
+ def closer():
+ time.sleep(2 * MS)
+ self.assembler.close()
+
+ with self.run_in_thread(closer):
+ with self.assertRaises(EOFError):
+ list(self.assembler.get_iter())
+
+ def test_put_fails_when_interrupted_by_close(self):
+ """put raises EOFError when close is called."""
+
+ def closer():
+ time.sleep(2 * MS)
+ self.assembler.close()
+
+ with self.run_in_thread(closer):
+ with self.assertRaises(EOFError):
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ def test_get_fails_after_close(self):
+ """get raises EOFError after close is called."""
+ self.assembler.close()
+ with self.assertRaises(EOFError):
+ self.assembler.get()
+
+ def test_get_iter_fails_after_close(self):
+ """get_iter raises EOFError after close is called."""
+ self.assembler.close()
+ with self.assertRaises(EOFError):
+ list(self.assembler.get_iter())
+
+ def test_put_fails_after_close(self):
+ """put raises EOFError after close is called."""
+ self.assembler.close()
+ with self.assertRaises(EOFError):
+ self.assembler.put(Frame(OP_TEXT, b"caf\xc3\xa9"))
+
+ def test_close_is_idempotent(self):
+ """close can be called multiple times safely."""
+ self.assembler.close()
+ self.assembler.close()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_server.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_server.py
new file mode 100644
index 0000000000..f9db842468
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_server.py
@@ -0,0 +1,388 @@
+import dataclasses
+import http
+import logging
+import socket
+import threading
+import unittest
+
+from websockets.exceptions import (
+ ConnectionClosedError,
+ ConnectionClosedOK,
+ InvalidStatus,
+ NegotiationError,
+)
+from websockets.http11 import Request, Response
+from websockets.sync.server import *
+
+from ..utils import MS, temp_unix_socket_path
+from .client import CLIENT_CONTEXT, run_client, run_unix_client
+from .server import (
+ SERVER_CONTEXT,
+ EvalShellMixin,
+ crash,
+ do_nothing,
+ eval_shell,
+ run_server,
+ run_unix_server,
+)
+
+
+class ServerTests(EvalShellMixin, unittest.TestCase):
+ def test_connection(self):
+ """Server receives connection from client and the handshake succeeds."""
+ with run_server() as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.protocol.state.name", "OPEN")
+
+ def test_connection_fails(self):
+ """Server receives connection from client but the handshake fails."""
+
+ def remove_key_header(self, request):
+ del request.headers["Sec-WebSocket-Key"]
+
+ with run_server(process_request=remove_key_header) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 400",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_connection_handler_returns(self):
+ """Connection handler returns."""
+ with run_server(do_nothing) as server:
+ with run_client(server) as client:
+ with self.assertRaisesRegex(
+ ConnectionClosedOK,
+ r"received 1000 \(OK\); then sent 1000 \(OK\)",
+ ):
+ client.recv()
+
+ def test_connection_handler_raises_exception(self):
+ """Connection handler raises an exception."""
+ with run_server(crash) as server:
+ with run_client(server) as client:
+ with self.assertRaisesRegex(
+ ConnectionClosedError,
+ r"received 1011 \(internal error\); "
+ r"then sent 1011 \(internal error\)",
+ ):
+ client.recv()
+
+ def test_existing_socket(self):
+ """Server receives connection using a pre-existing socket."""
+ with socket.create_server(("localhost", 0)) as sock:
+ with run_server(sock=sock):
+ # Build WebSocket URI to ensure we connect to the right socket.
+ with run_client("ws://{}:{}/".format(*sock.getsockname())) as client:
+ self.assertEval(client, "ws.protocol.state.name", "OPEN")
+
+ def test_select_subprotocol(self):
+ """Server selects a subprotocol with the select_subprotocol callable."""
+
+ def select_subprotocol(ws, subprotocols):
+ ws.select_subprotocol_ran = True
+ assert "chat" in subprotocols
+ return "chat"
+
+ with run_server(
+ subprotocols=["chat"],
+ select_subprotocol=select_subprotocol,
+ ) as server:
+ with run_client(server, subprotocols=["chat"]) as client:
+ self.assertEval(client, "ws.select_subprotocol_ran", "True")
+ self.assertEval(client, "ws.subprotocol", "chat")
+
+ def test_select_subprotocol_rejects_handshake(self):
+ """Server rejects handshake if select_subprotocol raises NegotiationError."""
+
+ def select_subprotocol(ws, subprotocols):
+ raise NegotiationError
+
+ with run_server(select_subprotocol=select_subprotocol) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 400",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_select_subprotocol_raises_exception(self):
+ """Server returns an error if select_subprotocol raises an exception."""
+
+ def select_subprotocol(ws, subprotocols):
+ raise RuntimeError
+
+ with run_server(select_subprotocol=select_subprotocol) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 500",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_process_request(self):
+ """Server runs process_request before processing the handshake."""
+
+ def process_request(ws, request):
+ self.assertIsInstance(request, Request)
+ ws.process_request_ran = True
+
+ with run_server(process_request=process_request) as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.process_request_ran", "True")
+
+ def test_process_request_abort_handshake(self):
+ """Server aborts handshake if process_request returns a response."""
+
+ def process_request(ws, request):
+ return ws.protocol.reject(http.HTTPStatus.FORBIDDEN, "Forbidden")
+
+ with run_server(process_request=process_request) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 403",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_process_request_raises_exception(self):
+ """Server returns an error if process_request raises an exception."""
+
+ def process_request(ws, request):
+ raise RuntimeError
+
+ with run_server(process_request=process_request) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 500",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_process_response(self):
+ """Server runs process_response after processing the handshake."""
+
+ def process_response(ws, request, response):
+ self.assertIsInstance(request, Request)
+ self.assertIsInstance(response, Response)
+ ws.process_response_ran = True
+
+ with run_server(process_response=process_response) as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.process_response_ran", "True")
+
+ def test_process_response_override_response(self):
+ """Server runs process_response after processing the handshake."""
+
+ def process_response(ws, request, response):
+ headers = response.headers.copy()
+ headers["X-ProcessResponse-Ran"] = "true"
+ return dataclasses.replace(response, headers=headers)
+
+ with run_server(process_response=process_response) as server:
+ with run_client(server) as client:
+ self.assertEqual(
+ client.response.headers["X-ProcessResponse-Ran"], "true"
+ )
+
+ def test_process_response_raises_exception(self):
+ """Server returns an error if process_response raises an exception."""
+
+ def process_response(ws, request, response):
+ raise RuntimeError
+
+ with run_server(process_response=process_response) as server:
+ with self.assertRaisesRegex(
+ InvalidStatus,
+ "server rejected WebSocket connection: HTTP 500",
+ ):
+ with run_client(server):
+ self.fail("did not raise")
+
+ def test_override_server(self):
+ """Server can override Server header with server_header."""
+ with run_server(server_header="Neo") as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.response.headers['Server']", "Neo")
+
+ def test_remove_server(self):
+ """Server can remove Server header with server_header."""
+ with run_server(server_header=None) as server:
+ with run_client(server) as client:
+ self.assertEval(client, "'Server' in ws.response.headers", "False")
+
+ def test_compression_is_enabled(self):
+ """Server enables compression by default."""
+ with run_server() as server:
+ with run_client(server) as client:
+ self.assertEval(
+ client,
+ "[type(ext).__name__ for ext in ws.protocol.extensions]",
+ "['PerMessageDeflate']",
+ )
+
+ def test_disable_compression(self):
+ """Server disables compression."""
+ with run_server(compression=None) as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.protocol.extensions", "[]")
+
+ def test_custom_connection_factory(self):
+ """Server runs ServerConnection factory provided in create_connection."""
+
+ def create_connection(*args, **kwargs):
+ server = ServerConnection(*args, **kwargs)
+ server.create_connection_ran = True
+ return server
+
+ with run_server(create_connection=create_connection) as server:
+ with run_client(server) as client:
+ self.assertEval(client, "ws.create_connection_ran", "True")
+
+ def test_timeout_during_handshake(self):
+ """Server times out before receiving handshake request from client."""
+ with run_server(open_timeout=MS) as server:
+ with socket.create_connection(server.socket.getsockname()) as sock:
+ self.assertEqual(sock.recv(4096), b"")
+
+ def test_connection_closed_during_handshake(self):
+ """Server reads EOF before receiving handshake request from client."""
+ with run_server() as server:
+ # Patch handler to record a reference to the thread running it.
+ server_thread = None
+ conn_received = threading.Event()
+ original_handler = server.handler
+
+ def handler(sock, addr):
+ nonlocal server_thread
+ server_thread = threading.current_thread()
+ nonlocal conn_received
+ conn_received.set()
+ original_handler(sock, addr)
+
+ server.handler = handler
+
+ with socket.create_connection(server.socket.getsockname()):
+ # Wait for the server to receive the connection, then close it.
+ conn_received.wait()
+
+ # Wait for the server thread to terminate.
+ server_thread.join()
+
+
+class SecureServerTests(EvalShellMixin, unittest.TestCase):
+ def test_connection(self):
+ """Server receives secure connection from client."""
+ with run_server(ssl_context=SERVER_CONTEXT) as server:
+ with run_client(server, ssl_context=CLIENT_CONTEXT) as client:
+ self.assertEval(client, "ws.protocol.state.name", "OPEN")
+ self.assertEval(client, "ws.socket.version()[:3]", "TLS")
+
+ def test_timeout_during_tls_handshake(self):
+ """Server times out before receiving TLS handshake request from client."""
+ with run_server(ssl_context=SERVER_CONTEXT, open_timeout=MS) as server:
+ with socket.create_connection(server.socket.getsockname()) as sock:
+ self.assertEqual(sock.recv(4096), b"")
+
+ def test_connection_closed_during_tls_handshake(self):
+ """Server reads EOF before receiving TLS handshake request from client."""
+ with run_server(ssl_context=SERVER_CONTEXT) as server:
+ # Patch handler to record a reference to the thread running it.
+ server_thread = None
+ conn_received = threading.Event()
+ original_handler = server.handler
+
+ def handler(sock, addr):
+ nonlocal server_thread
+ server_thread = threading.current_thread()
+ nonlocal conn_received
+ conn_received.set()
+ original_handler(sock, addr)
+
+ server.handler = handler
+
+ with socket.create_connection(server.socket.getsockname()):
+ # Wait for the server to receive the connection, then close it.
+ conn_received.wait()
+
+ # Wait for the server thread to terminate.
+ server_thread.join()
+
+
+@unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+class UnixServerTests(EvalShellMixin, unittest.TestCase):
+ def test_connection(self):
+ """Server receives connection from client over a Unix socket."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path):
+ with run_unix_client(path) as client:
+ self.assertEval(client, "ws.protocol.state.name", "OPEN")
+
+
+@unittest.skipUnless(hasattr(socket, "AF_UNIX"), "this test requires Unix sockets")
+class SecureUnixServerTests(EvalShellMixin, unittest.TestCase):
+ def test_connection(self):
+ """Server receives secure connection from client over a Unix socket."""
+ with temp_unix_socket_path() as path:
+ with run_unix_server(path, ssl_context=SERVER_CONTEXT):
+ with run_unix_client(path, ssl_context=CLIENT_CONTEXT) as client:
+ self.assertEval(client, "ws.protocol.state.name", "OPEN")
+ self.assertEval(client, "ws.socket.version()[:3]", "TLS")
+
+
+class ServerUsageErrorsTests(unittest.TestCase):
+ def test_unix_without_path_or_sock(self):
+ """Unix server requires path when sock isn't provided."""
+ with self.assertRaisesRegex(
+ TypeError,
+ "missing path argument",
+ ):
+ unix_serve(eval_shell)
+
+ def test_unix_with_path_and_sock(self):
+ """Unix server rejects path when sock is provided."""
+ sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
+ self.addCleanup(sock.close)
+ with self.assertRaisesRegex(
+ TypeError,
+ "path and sock arguments are incompatible",
+ ):
+ unix_serve(eval_shell, path="/", sock=sock)
+
+ def test_invalid_subprotocol(self):
+ """Server rejects single value of subprotocols."""
+ with self.assertRaisesRegex(
+ TypeError,
+ "subprotocols must be a list",
+ ):
+ serve(eval_shell, subprotocols="chat")
+
+ def test_unsupported_compression(self):
+ """Server rejects incorrect value of compression."""
+ with self.assertRaisesRegex(
+ ValueError,
+ "unsupported compression: False",
+ ):
+ serve(eval_shell, compression=False)
+
+
+class WebSocketServerTests(unittest.TestCase):
+ def test_logger(self):
+ """WebSocketServer accepts a logger argument."""
+ logger = logging.getLogger("test")
+ with run_server(logger=logger) as server:
+ self.assertIs(server.logger, logger)
+
+ def test_fileno(self):
+ """WebSocketServer provides a fileno attribute."""
+ with run_server() as server:
+ self.assertIsInstance(server.fileno(), int)
+
+ def test_shutdown(self):
+ """WebSocketServer provides a shutdown method."""
+ with run_server() as server:
+ server.shutdown()
+ # Check that the server socket is closed.
+ with self.assertRaises(OSError):
+ server.socket.accept()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_utils.py
new file mode 100644
index 0000000000..2980a97b42
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/test_utils.py
@@ -0,0 +1,33 @@
+import unittest
+
+from websockets.sync.utils import *
+
+from ..utils import MS
+
+
+class DeadlineTests(unittest.TestCase):
+ def test_timeout_pending(self):
+ """timeout returns remaining time if deadline is in the future."""
+ deadline = Deadline(MS)
+ timeout = deadline.timeout()
+ self.assertGreater(timeout, 0)
+ self.assertLess(timeout, MS)
+
+ def test_timeout_elapsed_exception(self):
+ """timeout raises TimeoutError if deadline is in the past."""
+ deadline = Deadline(-MS)
+ with self.assertRaises(TimeoutError):
+ deadline.timeout()
+
+ def test_timeout_elapsed_no_exception(self):
+ """timeout doesn't raise TimeoutError when raise_if_elapsed is disabled."""
+ deadline = Deadline(-MS)
+ timeout = deadline.timeout(raise_if_elapsed=False)
+ self.assertGreater(timeout, -2 * MS)
+ self.assertLess(timeout, -MS)
+
+ def test_no_timeout(self):
+ """timeout returns None when no deadline is set."""
+ deadline = Deadline(None)
+ timeout = deadline.timeout()
+ self.assertIsNone(timeout, None)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/sync/utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/utils.py
new file mode 100644
index 0000000000..8903cd3499
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/sync/utils.py
@@ -0,0 +1,26 @@
+import contextlib
+import threading
+import time
+import unittest
+
+from ..utils import MS
+
+
+class ThreadTestCase(unittest.TestCase):
+ @contextlib.contextmanager
+ def run_in_thread(self, target):
+ """
+ Run ``target`` function without arguments in a thread.
+
+ In order to facilitate writing tests, this helper lets the thread run
+ for 1ms on entry and joins the thread with a 1ms timeout on exit.
+
+ """
+ thread = threading.Thread(target=target)
+ thread.start()
+ time.sleep(MS)
+ try:
+ yield
+ finally:
+ thread.join(MS)
+ self.assertFalse(thread.is_alive())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_auth.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_auth.py
new file mode 100644
index 0000000000..28db931552
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_auth.py
@@ -0,0 +1 @@
+from websockets.auth import *
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_client.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_client.py
new file mode 100644
index 0000000000..c83c87038f
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_client.py
@@ -0,0 +1,614 @@
+import logging
+import unittest
+import unittest.mock
+
+from websockets.client import *
+from websockets.datastructures import Headers
+from websockets.exceptions import InvalidHandshake, InvalidHeader
+from websockets.frames import OP_TEXT, Frame
+from websockets.http11 import Request, Response
+from websockets.protocol import CONNECTING, OPEN
+from websockets.uri import parse_uri
+from websockets.utils import accept_key
+
+from .extensions.utils import (
+ ClientOpExtensionFactory,
+ ClientRsv2ExtensionFactory,
+ OpExtension,
+ Rsv2Extension,
+)
+from .test_utils import ACCEPT, KEY
+from .utils import DATE, DeprecationTestCase
+
+
+class ConnectTests(unittest.TestCase):
+ def test_send_connect(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("wss://example.com/test"))
+ request = client.connect()
+ self.assertIsInstance(request, Request)
+ client.send_request(request)
+ self.assertEqual(
+ client.data_to_send(),
+ [
+ f"GET /test HTTP/1.1\r\n"
+ f"Host: example.com\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Key: {KEY}\r\n"
+ f"Sec-WebSocket-Version: 13\r\n"
+ f"\r\n".encode()
+ ],
+ )
+ self.assertFalse(client.close_expected())
+
+ def test_connect_request(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("wss://example.com/test"))
+ request = client.connect()
+ self.assertEqual(request.path, "/test")
+ self.assertEqual(
+ request.headers,
+ Headers(
+ {
+ "Host": "example.com",
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Key": KEY,
+ "Sec-WebSocket-Version": "13",
+ }
+ ),
+ )
+
+ def test_path(self):
+ client = ClientProtocol(parse_uri("wss://example.com/endpoint?test=1"))
+ request = client.connect()
+
+ self.assertEqual(request.path, "/endpoint?test=1")
+
+ def test_port(self):
+ for uri, host in [
+ ("ws://example.com/", "example.com"),
+ ("ws://example.com:80/", "example.com"),
+ ("ws://example.com:8080/", "example.com:8080"),
+ ("wss://example.com/", "example.com"),
+ ("wss://example.com:443/", "example.com"),
+ ("wss://example.com:8443/", "example.com:8443"),
+ ]:
+ with self.subTest(uri=uri):
+ client = ClientProtocol(parse_uri(uri))
+ request = client.connect()
+
+ self.assertEqual(request.headers["Host"], host)
+
+ def test_user_info(self):
+ client = ClientProtocol(parse_uri("wss://hello:iloveyou@example.com/"))
+ request = client.connect()
+
+ self.assertEqual(request.headers["Authorization"], "Basic aGVsbG86aWxvdmV5b3U=")
+
+ def test_origin(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ origin="https://example.com",
+ )
+ request = client.connect()
+
+ self.assertEqual(request.headers["Origin"], "https://example.com")
+
+ def test_extensions(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory()],
+ )
+ request = client.connect()
+
+ self.assertEqual(request.headers["Sec-WebSocket-Extensions"], "x-op; op")
+
+ def test_subprotocols(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ subprotocols=["chat"],
+ )
+ request = client.connect()
+
+ self.assertEqual(request.headers["Sec-WebSocket-Protocol"], "chat")
+
+
+class AcceptRejectTests(unittest.TestCase):
+ def test_receive_accept(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(
+ (
+ f"HTTP/1.1 101 Switching Protocols\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Accept: {ACCEPT}\r\n"
+ f"Date: {DATE}\r\n"
+ f"\r\n"
+ ).encode(),
+ )
+ [response] = client.events_received()
+ self.assertIsInstance(response, Response)
+ self.assertEqual(client.data_to_send(), [])
+ self.assertFalse(client.close_expected())
+ self.assertEqual(client.state, OPEN)
+
+ def test_receive_reject(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(
+ (
+ f"HTTP/1.1 404 Not Found\r\n"
+ f"Date: {DATE}\r\n"
+ f"Content-Length: 13\r\n"
+ f"Content-Type: text/plain; charset=utf-8\r\n"
+ f"Connection: close\r\n"
+ f"\r\n"
+ f"Sorry folks.\n"
+ ).encode(),
+ )
+ [response] = client.events_received()
+ self.assertIsInstance(response, Response)
+ self.assertEqual(client.data_to_send(), [])
+ self.assertTrue(client.close_expected())
+ self.assertEqual(client.state, CONNECTING)
+
+ def test_accept_response(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(
+ (
+ f"HTTP/1.1 101 Switching Protocols\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Accept: {ACCEPT}\r\n"
+ f"Date: {DATE}\r\n"
+ f"\r\n"
+ ).encode(),
+ )
+ [response] = client.events_received()
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.reason_phrase, "Switching Protocols")
+ self.assertEqual(
+ response.headers,
+ Headers(
+ {
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Accept": ACCEPT,
+ "Date": DATE,
+ }
+ ),
+ )
+ self.assertIsNone(response.body)
+
+ def test_reject_response(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(
+ (
+ f"HTTP/1.1 404 Not Found\r\n"
+ f"Date: {DATE}\r\n"
+ f"Content-Length: 13\r\n"
+ f"Content-Type: text/plain; charset=utf-8\r\n"
+ f"Connection: close\r\n"
+ f"\r\n"
+ f"Sorry folks.\n"
+ ).encode(),
+ )
+ [response] = client.events_received()
+ self.assertEqual(response.status_code, 404)
+ self.assertEqual(response.reason_phrase, "Not Found")
+ self.assertEqual(
+ response.headers,
+ Headers(
+ {
+ "Date": DATE,
+ "Content-Length": "13",
+ "Content-Type": "text/plain; charset=utf-8",
+ "Connection": "close",
+ }
+ ),
+ )
+ self.assertEqual(response.body, b"Sorry folks.\n")
+
+ def test_no_response(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_eof()
+ self.assertEqual(client.events_received(), [])
+
+ def test_partial_response(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(b"HTTP/1.1 101 Switching Protocols\r\n")
+ client.receive_eof()
+ self.assertEqual(client.events_received(), [])
+
+ def test_random_response(self):
+ with unittest.mock.patch("websockets.client.generate_key", return_value=KEY):
+ client = ClientProtocol(parse_uri("ws://example.com/test"))
+ client.connect()
+ client.receive_data(b"220 smtp.invalid\r\n")
+ client.receive_data(b"250 Hello relay.invalid\r\n")
+ client.receive_data(b"250 Ok\r\n")
+ client.receive_data(b"250 Ok\r\n")
+ client.receive_eof()
+ self.assertEqual(client.events_received(), [])
+
+ def make_accept_response(self, client):
+ request = client.connect()
+ return Response(
+ status_code=101,
+ reason_phrase="Switching Protocols",
+ headers=Headers(
+ {
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Accept": accept_key(
+ request.headers["Sec-WebSocket-Key"]
+ ),
+ }
+ ),
+ )
+
+ def test_basic(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+
+ def test_missing_connection(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Connection"]
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Connection header")
+
+ def test_invalid_connection(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Connection"]
+ response.headers["Connection"] = "close"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "invalid Connection header: close")
+
+ def test_missing_upgrade(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Upgrade"]
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Upgrade header")
+
+ def test_invalid_upgrade(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Upgrade"]
+ response.headers["Upgrade"] = "h2c"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "invalid Upgrade header: h2c")
+
+ def test_missing_accept(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Sec-WebSocket-Accept"]
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Sec-WebSocket-Accept header")
+
+ def test_multiple_accept(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Accept"] = ACCEPT
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "invalid Sec-WebSocket-Accept header: "
+ "more than one Sec-WebSocket-Accept header found",
+ )
+
+ def test_invalid_accept(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ del response.headers["Sec-WebSocket-Accept"]
+ response.headers["Sec-WebSocket-Accept"] = ACCEPT
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise client.handshake_exc
+ self.assertEqual(
+ str(raised.exception), f"invalid Sec-WebSocket-Accept header: {ACCEPT}"
+ )
+
+ def test_no_extensions(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [])
+
+ def test_no_extension(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory()],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [OpExtension()])
+
+ def test_extension(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientRsv2ExtensionFactory()],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-rsv2"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [Rsv2Extension()])
+
+ def test_unexpected_extension(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "no extensions supported")
+
+ def test_unsupported_extension(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientRsv2ExtensionFactory()],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "Unsupported extension: name = x-op, params = [('op', None)]",
+ )
+
+ def test_supported_extension_parameters(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory("this")],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op=this"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [OpExtension("this")])
+
+ def test_unsupported_extension_parameters(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory("this")],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op=that"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "Unsupported extension: name = x-op, params = [('op', 'that')]",
+ )
+
+ def test_multiple_supported_extension_parameters(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[
+ ClientOpExtensionFactory("this"),
+ ClientOpExtensionFactory("that"),
+ ],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op=that"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [OpExtension("that")])
+
+ def test_multiple_extensions(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory(), ClientRsv2ExtensionFactory()],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ response.headers["Sec-WebSocket-Extensions"] = "x-rsv2"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [OpExtension(), Rsv2Extension()])
+
+ def test_multiple_extensions_order(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ extensions=[ClientOpExtensionFactory(), ClientRsv2ExtensionFactory()],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Extensions"] = "x-rsv2"
+ response.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.extensions, [Rsv2Extension(), OpExtension()])
+
+ def test_no_subprotocols(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertIsNone(client.subprotocol)
+
+ def test_no_subprotocol(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"), subprotocols=["chat"])
+ response = self.make_accept_response(client)
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertIsNone(client.subprotocol)
+
+ def test_subprotocol(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"), subprotocols=["chat"])
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Protocol"] = "chat"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.subprotocol, "chat")
+
+ def test_unexpected_subprotocol(self):
+ client = ClientProtocol(parse_uri("wss://example.com/"))
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Protocol"] = "chat"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "no subprotocols supported")
+
+ def test_multiple_subprotocols(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ subprotocols=["superchat", "chat"],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Protocol"] = "superchat"
+ response.headers["Sec-WebSocket-Protocol"] = "chat"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(
+ str(raised.exception), "multiple subprotocols: superchat, chat"
+ )
+
+ def test_supported_subprotocol(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ subprotocols=["superchat", "chat"],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Protocol"] = "chat"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, OPEN)
+ self.assertEqual(client.subprotocol, "chat")
+
+ def test_unsupported_subprotocol(self):
+ client = ClientProtocol(
+ parse_uri("wss://example.com/"),
+ subprotocols=["superchat", "chat"],
+ )
+ response = self.make_accept_response(client)
+ response.headers["Sec-WebSocket-Protocol"] = "otherchat"
+ client.receive_data(response.serialize())
+ [response] = client.events_received()
+
+ self.assertEqual(client.state, CONNECTING)
+ with self.assertRaises(InvalidHandshake) as raised:
+ raise client.handshake_exc
+ self.assertEqual(str(raised.exception), "unsupported subprotocol: otherchat")
+
+
+class MiscTests(unittest.TestCase):
+ def test_bypass_handshake(self):
+ client = ClientProtocol(parse_uri("ws://example.com/test"), state=OPEN)
+ client.receive_data(b"\x81\x06Hello!")
+ [frame] = client.events_received()
+ self.assertEqual(frame, Frame(OP_TEXT, b"Hello!"))
+
+ def test_custom_logger(self):
+ logger = logging.getLogger("test")
+ with self.assertLogs("test", logging.DEBUG) as logs:
+ ClientProtocol(parse_uri("wss://example.com/test"), logger=logger)
+ self.assertEqual(len(logs.records), 1)
+
+
+class BackwardsCompatibilityTests(DeprecationTestCase):
+ def test_client_connection_class(self):
+ with self.assertDeprecationWarning(
+ "ClientConnection was renamed to ClientProtocol"
+ ):
+ from websockets.client import ClientConnection
+
+ client = ClientConnection("ws://localhost/")
+
+ self.assertIsInstance(client, ClientProtocol)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_connection.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_connection.py
new file mode 100644
index 0000000000..6592d67d0d
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_connection.py
@@ -0,0 +1,14 @@
+from websockets.protocol import Protocol
+
+from .utils import DeprecationTestCase
+
+
+class BackwardsCompatibilityTests(DeprecationTestCase):
+ def test_connection_class(self):
+ with self.assertDeprecationWarning(
+ "websockets.connection was renamed to websockets.protocol "
+ "and Connection was renamed to Protocol"
+ ):
+ from websockets.connection import Connection
+
+ self.assertIs(Connection, Protocol)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_datastructures.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_datastructures.py
new file mode 100644
index 0000000000..32b79817ae
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_datastructures.py
@@ -0,0 +1,236 @@
+import unittest
+
+from websockets.datastructures import *
+
+
+class MultipleValuesErrorTests(unittest.TestCase):
+ def test_multiple_values_error_str(self):
+ self.assertEqual(str(MultipleValuesError("Connection")), "'Connection'")
+ self.assertEqual(str(MultipleValuesError()), "")
+
+
+class HeadersTests(unittest.TestCase):
+ def setUp(self):
+ self.headers = Headers([("Connection", "Upgrade"), ("Server", "websockets")])
+
+ def test_init(self):
+ self.assertEqual(
+ Headers(),
+ Headers(),
+ )
+
+ def test_init_from_kwargs(self):
+ self.assertEqual(
+ Headers(connection="Upgrade", server="websockets"),
+ self.headers,
+ )
+
+ def test_init_from_headers(self):
+ self.assertEqual(
+ Headers(self.headers),
+ self.headers,
+ )
+
+ def test_init_from_headers_and_kwargs(self):
+ self.assertEqual(
+ Headers(Headers(connection="Upgrade"), server="websockets"),
+ self.headers,
+ )
+
+ def test_init_from_mapping(self):
+ self.assertEqual(
+ Headers({"Connection": "Upgrade", "Server": "websockets"}),
+ self.headers,
+ )
+
+ def test_init_from_mapping_and_kwargs(self):
+ self.assertEqual(
+ Headers({"Connection": "Upgrade"}, server="websockets"),
+ self.headers,
+ )
+
+ def test_init_from_iterable(self):
+ self.assertEqual(
+ Headers([("Connection", "Upgrade"), ("Server", "websockets")]),
+ self.headers,
+ )
+
+ def test_init_from_iterable_and_kwargs(self):
+ self.assertEqual(
+ Headers([("Connection", "Upgrade")], server="websockets"),
+ self.headers,
+ )
+
+ def test_init_multiple_positional_arguments(self):
+ with self.assertRaises(TypeError):
+ Headers(Headers(connection="Upgrade"), Headers(server="websockets"))
+
+ def test_str(self):
+ self.assertEqual(
+ str(self.headers), "Connection: Upgrade\r\nServer: websockets\r\n\r\n"
+ )
+
+ def test_repr(self):
+ self.assertEqual(
+ repr(self.headers),
+ "Headers([('Connection', 'Upgrade'), ('Server', 'websockets')])",
+ )
+
+ def test_copy(self):
+ self.assertEqual(repr(self.headers.copy()), repr(self.headers))
+
+ def test_serialize(self):
+ self.assertEqual(
+ self.headers.serialize(),
+ b"Connection: Upgrade\r\nServer: websockets\r\n\r\n",
+ )
+
+ def test_contains(self):
+ self.assertIn("Server", self.headers)
+
+ def test_contains_case_insensitive(self):
+ self.assertIn("server", self.headers)
+
+ def test_contains_not_found(self):
+ self.assertNotIn("Date", self.headers)
+
+ def test_contains_non_string_key(self):
+ self.assertNotIn(42, self.headers)
+
+ def test_iter(self):
+ self.assertEqual(set(iter(self.headers)), {"connection", "server"})
+
+ def test_len(self):
+ self.assertEqual(len(self.headers), 2)
+
+ def test_getitem(self):
+ self.assertEqual(self.headers["Server"], "websockets")
+
+ def test_getitem_case_insensitive(self):
+ self.assertEqual(self.headers["server"], "websockets")
+
+ def test_getitem_key_error(self):
+ with self.assertRaises(KeyError):
+ self.headers["Upgrade"]
+
+ def test_setitem(self):
+ self.headers["Upgrade"] = "websocket"
+ self.assertEqual(self.headers["Upgrade"], "websocket")
+
+ def test_setitem_case_insensitive(self):
+ self.headers["upgrade"] = "websocket"
+ self.assertEqual(self.headers["Upgrade"], "websocket")
+
+ def test_delitem(self):
+ del self.headers["Connection"]
+ with self.assertRaises(KeyError):
+ self.headers["Connection"]
+
+ def test_delitem_case_insensitive(self):
+ del self.headers["connection"]
+ with self.assertRaises(KeyError):
+ self.headers["Connection"]
+
+ def test_eq(self):
+ other_headers = Headers([("Connection", "Upgrade"), ("Server", "websockets")])
+ self.assertEqual(self.headers, other_headers)
+
+ def test_eq_case_insensitive(self):
+ other_headers = Headers(connection="Upgrade", server="websockets")
+ self.assertEqual(self.headers, other_headers)
+
+ def test_eq_not_equal(self):
+ other_headers = Headers([("Connection", "close"), ("Server", "websockets")])
+ self.assertNotEqual(self.headers, other_headers)
+
+ def test_eq_other_type(self):
+ self.assertNotEqual(
+ self.headers, "Connection: Upgrade\r\nServer: websockets\r\n\r\n"
+ )
+
+ def test_clear(self):
+ self.headers.clear()
+ self.assertFalse(self.headers)
+ self.assertEqual(self.headers, Headers())
+
+ def test_get_all(self):
+ self.assertEqual(self.headers.get_all("Connection"), ["Upgrade"])
+
+ def test_get_all_case_insensitive(self):
+ self.assertEqual(self.headers.get_all("connection"), ["Upgrade"])
+
+ def test_get_all_no_values(self):
+ self.assertEqual(self.headers.get_all("Upgrade"), [])
+
+ def test_raw_items(self):
+ self.assertEqual(
+ list(self.headers.raw_items()),
+ [("Connection", "Upgrade"), ("Server", "websockets")],
+ )
+
+
+class MultiValueHeadersTests(unittest.TestCase):
+ def setUp(self):
+ self.headers = Headers([("Server", "Python"), ("Server", "websockets")])
+
+ def test_init_from_headers(self):
+ self.assertEqual(
+ Headers(self.headers),
+ self.headers,
+ )
+
+ def test_init_from_headers_and_kwargs(self):
+ self.assertEqual(
+ Headers(Headers(server="Python"), server="websockets"),
+ self.headers,
+ )
+
+ def test_str(self):
+ self.assertEqual(
+ str(self.headers), "Server: Python\r\nServer: websockets\r\n\r\n"
+ )
+
+ def test_repr(self):
+ self.assertEqual(
+ repr(self.headers),
+ "Headers([('Server', 'Python'), ('Server', 'websockets')])",
+ )
+
+ def test_copy(self):
+ self.assertEqual(repr(self.headers.copy()), repr(self.headers))
+
+ def test_serialize(self):
+ self.assertEqual(
+ self.headers.serialize(),
+ b"Server: Python\r\nServer: websockets\r\n\r\n",
+ )
+
+ def test_iter(self):
+ self.assertEqual(set(iter(self.headers)), {"server"})
+
+ def test_len(self):
+ self.assertEqual(len(self.headers), 1)
+
+ def test_getitem_multiple_values_error(self):
+ with self.assertRaises(MultipleValuesError):
+ self.headers["Server"]
+
+ def test_setitem(self):
+ self.headers["Server"] = "redux"
+ self.assertEqual(
+ self.headers.get_all("Server"), ["Python", "websockets", "redux"]
+ )
+
+ def test_delitem(self):
+ del self.headers["Server"]
+ with self.assertRaises(KeyError):
+ self.headers["Server"]
+
+ def test_get_all(self):
+ self.assertEqual(self.headers.get_all("Server"), ["Python", "websockets"])
+
+ def test_raw_items(self):
+ self.assertEqual(
+ list(self.headers.raw_items()),
+ [("Server", "Python"), ("Server", "websockets")],
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_exceptions.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_exceptions.py
new file mode 100644
index 0000000000..1e6f58fad5
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_exceptions.py
@@ -0,0 +1,196 @@
+import unittest
+
+from websockets.datastructures import Headers
+from websockets.exceptions import *
+from websockets.frames import Close, CloseCode
+from websockets.http11 import Response
+
+
+class ExceptionsTests(unittest.TestCase):
+ def test_str(self):
+ for exception, exception_str in [
+ (
+ WebSocketException("something went wrong"),
+ "something went wrong",
+ ),
+ (
+ ConnectionClosed(
+ Close(CloseCode.NORMAL_CLOSURE, ""),
+ Close(CloseCode.NORMAL_CLOSURE, ""),
+ True,
+ ),
+ "received 1000 (OK); then sent 1000 (OK)",
+ ),
+ (
+ ConnectionClosed(
+ Close(CloseCode.GOING_AWAY, "Bye!"),
+ Close(CloseCode.GOING_AWAY, "Bye!"),
+ False,
+ ),
+ "sent 1001 (going away) Bye!; then received 1001 (going away) Bye!",
+ ),
+ (
+ ConnectionClosed(
+ Close(CloseCode.NORMAL_CLOSURE, "race"),
+ Close(CloseCode.NORMAL_CLOSURE, "cond"),
+ True,
+ ),
+ "received 1000 (OK) race; then sent 1000 (OK) cond",
+ ),
+ (
+ ConnectionClosed(
+ Close(CloseCode.NORMAL_CLOSURE, "cond"),
+ Close(CloseCode.NORMAL_CLOSURE, "race"),
+ False,
+ ),
+ "sent 1000 (OK) race; then received 1000 (OK) cond",
+ ),
+ (
+ ConnectionClosed(
+ None,
+ Close(CloseCode.MESSAGE_TOO_BIG, ""),
+ None,
+ ),
+ "sent 1009 (message too big); no close frame received",
+ ),
+ (
+ ConnectionClosed(
+ Close(CloseCode.PROTOCOL_ERROR, ""),
+ None,
+ None,
+ ),
+ "received 1002 (protocol error); no close frame sent",
+ ),
+ (
+ ConnectionClosedOK(
+ Close(CloseCode.NORMAL_CLOSURE, ""),
+ Close(CloseCode.NORMAL_CLOSURE, ""),
+ True,
+ ),
+ "received 1000 (OK); then sent 1000 (OK)",
+ ),
+ (
+ ConnectionClosedError(
+ None,
+ None,
+ None,
+ ),
+ "no close frame received or sent",
+ ),
+ (
+ InvalidHandshake("invalid request"),
+ "invalid request",
+ ),
+ (
+ SecurityError("redirect from WSS to WS"),
+ "redirect from WSS to WS",
+ ),
+ (
+ InvalidMessage("malformed HTTP message"),
+ "malformed HTTP message",
+ ),
+ (
+ InvalidHeader("Name"),
+ "missing Name header",
+ ),
+ (
+ InvalidHeader("Name", None),
+ "missing Name header",
+ ),
+ (
+ InvalidHeader("Name", ""),
+ "empty Name header",
+ ),
+ (
+ InvalidHeader("Name", "Value"),
+ "invalid Name header: Value",
+ ),
+ (
+ InvalidHeaderFormat("Sec-WebSocket-Protocol", "exp. token", "a=|", 3),
+ "invalid Sec-WebSocket-Protocol header: exp. token at 3 in a=|",
+ ),
+ (
+ InvalidHeaderValue("Sec-WebSocket-Version", "42"),
+ "invalid Sec-WebSocket-Version header: 42",
+ ),
+ (
+ InvalidOrigin("http://bad.origin"),
+ "invalid Origin header: http://bad.origin",
+ ),
+ (
+ InvalidUpgrade("Upgrade"),
+ "missing Upgrade header",
+ ),
+ (
+ InvalidUpgrade("Connection", "websocket"),
+ "invalid Connection header: websocket",
+ ),
+ (
+ InvalidStatus(Response(401, "Unauthorized", Headers())),
+ "server rejected WebSocket connection: HTTP 401",
+ ),
+ (
+ InvalidStatusCode(403, Headers()),
+ "server rejected WebSocket connection: HTTP 403",
+ ),
+ (
+ NegotiationError("unsupported subprotocol: spam"),
+ "unsupported subprotocol: spam",
+ ),
+ (
+ DuplicateParameter("a"),
+ "duplicate parameter: a",
+ ),
+ (
+ InvalidParameterName("|"),
+ "invalid parameter name: |",
+ ),
+ (
+ InvalidParameterValue("a", None),
+ "missing value for parameter a",
+ ),
+ (
+ InvalidParameterValue("a", ""),
+ "empty value for parameter a",
+ ),
+ (
+ InvalidParameterValue("a", "|"),
+ "invalid value for parameter a: |",
+ ),
+ (
+ AbortHandshake(200, Headers(), b"OK\n"),
+ "HTTP 200, 0 headers, 3 bytes",
+ ),
+ (
+ RedirectHandshake("wss://example.com"),
+ "redirect to wss://example.com",
+ ),
+ (
+ InvalidState("WebSocket connection isn't established yet"),
+ "WebSocket connection isn't established yet",
+ ),
+ (
+ InvalidURI("|", "not at all!"),
+ "| isn't a valid URI: not at all!",
+ ),
+ (
+ PayloadTooBig("payload length exceeds limit: 2 > 1 bytes"),
+ "payload length exceeds limit: 2 > 1 bytes",
+ ),
+ (
+ ProtocolError("invalid opcode: 7"),
+ "invalid opcode: 7",
+ ),
+ ]:
+ with self.subTest(exception=exception):
+ self.assertEqual(str(exception), exception_str)
+
+ def test_connection_closed_attributes_backwards_compatibility(self):
+ exception = ConnectionClosed(Close(CloseCode.NORMAL_CLOSURE, "OK"), None, None)
+ self.assertEqual(exception.code, CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(exception.reason, "OK")
+
+ def test_connection_closed_attributes_backwards_compatibility_defaults(self):
+ exception = ConnectionClosed(None, None, None)
+ self.assertEqual(exception.code, CloseCode.ABNORMAL_CLOSURE)
+ self.assertEqual(exception.reason, "")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_exports.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_exports.py
new file mode 100644
index 0000000000..67a1a6f994
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_exports.py
@@ -0,0 +1,30 @@
+import unittest
+
+import websockets
+import websockets.auth
+import websockets.client
+import websockets.datastructures
+import websockets.exceptions
+import websockets.legacy.protocol
+import websockets.server
+import websockets.typing
+import websockets.uri
+
+
+combined_exports = (
+ websockets.auth.__all__
+ + websockets.client.__all__
+ + websockets.datastructures.__all__
+ + websockets.exceptions.__all__
+ + websockets.legacy.protocol.__all__
+ + websockets.server.__all__
+ + websockets.typing.__all__
+)
+
+
+class ExportsTests(unittest.TestCase):
+ def test_top_level_module_reexports_all_submodule_exports(self):
+ self.assertEqual(set(combined_exports), set(websockets.__all__))
+
+ def test_submodule_exports_are_globally_unique(self):
+ self.assertEqual(len(set(combined_exports)), len(combined_exports))
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_frames.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_frames.py
new file mode 100644
index 0000000000..e323b3b57c
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_frames.py
@@ -0,0 +1,495 @@
+import codecs
+import dataclasses
+import unittest
+import unittest.mock
+
+from websockets.exceptions import PayloadTooBig, ProtocolError
+from websockets.frames import *
+from websockets.frames import CloseCode
+from websockets.streams import StreamReader
+
+from .utils import GeneratorTestCase
+
+
+class FramesTestCase(GeneratorTestCase):
+ def enforce_mask(self, mask):
+ return unittest.mock.patch("secrets.token_bytes", return_value=mask)
+
+ def parse(self, data, mask, max_size=None, extensions=None):
+ """
+ Parse a frame from a bytestring.
+
+ """
+ reader = StreamReader()
+ reader.feed_data(data)
+ reader.feed_eof()
+ parser = Frame.parse(
+ reader.read_exact, mask=mask, max_size=max_size, extensions=extensions
+ )
+ return self.assertGeneratorReturns(parser)
+
+ def assertFrameData(self, frame, data, mask, extensions=None):
+ """
+ Serializing frame yields data. Parsing data yields frame.
+
+ """
+ # Compare frames first, because test failures are easier to read,
+ # especially when mask = True.
+ parsed = self.parse(data, mask=mask, extensions=extensions)
+ self.assertEqual(parsed, frame)
+
+ # Make masking deterministic by reusing the same "random" mask.
+ # This has an effect only when mask is True.
+ mask_bytes = data[2:6] if mask else b""
+ with self.enforce_mask(mask_bytes):
+ serialized = frame.serialize(mask=mask, extensions=extensions)
+ self.assertEqual(serialized, data)
+
+
+class FrameTests(FramesTestCase):
+ def test_text_unmasked(self):
+ self.assertFrameData(
+ Frame(OP_TEXT, b"Spam"),
+ b"\x81\x04Spam",
+ mask=False,
+ )
+
+ def test_text_masked(self):
+ self.assertFrameData(
+ Frame(OP_TEXT, b"Spam"),
+ b"\x81\x84\x5b\xfb\xe1\xa8\x08\x8b\x80\xc5",
+ mask=True,
+ )
+
+ def test_binary_unmasked(self):
+ self.assertFrameData(
+ Frame(OP_BINARY, b"Eggs"),
+ b"\x82\x04Eggs",
+ mask=False,
+ )
+
+ def test_binary_masked(self):
+ self.assertFrameData(
+ Frame(OP_BINARY, b"Eggs"),
+ b"\x82\x84\x53\xcd\xe2\x89\x16\xaa\x85\xfa",
+ mask=True,
+ )
+
+ def test_non_ascii_text_unmasked(self):
+ self.assertFrameData(
+ Frame(OP_TEXT, "café".encode("utf-8")),
+ b"\x81\x05caf\xc3\xa9",
+ mask=False,
+ )
+
+ def test_non_ascii_text_masked(self):
+ self.assertFrameData(
+ Frame(OP_TEXT, "café".encode("utf-8")),
+ b"\x81\x85\x64\xbe\xee\x7e\x07\xdf\x88\xbd\xcd",
+ mask=True,
+ )
+
+ def test_close(self):
+ self.assertFrameData(
+ Frame(OP_CLOSE, b""),
+ b"\x88\x00",
+ mask=False,
+ )
+
+ def test_ping(self):
+ self.assertFrameData(
+ Frame(OP_PING, b"ping"),
+ b"\x89\x04ping",
+ mask=False,
+ )
+
+ def test_pong(self):
+ self.assertFrameData(
+ Frame(OP_PONG, b"pong"),
+ b"\x8a\x04pong",
+ mask=False,
+ )
+
+ def test_long(self):
+ self.assertFrameData(
+ Frame(OP_BINARY, 126 * b"a"),
+ b"\x82\x7e\x00\x7e" + 126 * b"a",
+ mask=False,
+ )
+
+ def test_very_long(self):
+ self.assertFrameData(
+ Frame(OP_BINARY, 65536 * b"a"),
+ b"\x82\x7f\x00\x00\x00\x00\x00\x01\x00\x00" + 65536 * b"a",
+ mask=False,
+ )
+
+ def test_payload_too_big(self):
+ with self.assertRaises(PayloadTooBig):
+ self.parse(b"\x82\x7e\x04\x01" + 1025 * b"a", mask=False, max_size=1024)
+
+ def test_bad_reserved_bits(self):
+ for data in [b"\xc0\x00", b"\xa0\x00", b"\x90\x00"]:
+ with self.subTest(data=data):
+ with self.assertRaises(ProtocolError):
+ self.parse(data, mask=False)
+
+ def test_good_opcode(self):
+ for opcode in list(range(0x00, 0x03)) + list(range(0x08, 0x0B)):
+ data = bytes([0x80 | opcode, 0])
+ with self.subTest(data=data):
+ self.parse(data, mask=False) # does not raise an exception
+
+ def test_bad_opcode(self):
+ for opcode in list(range(0x03, 0x08)) + list(range(0x0B, 0x10)):
+ data = bytes([0x80 | opcode, 0])
+ with self.subTest(data=data):
+ with self.assertRaises(ProtocolError):
+ self.parse(data, mask=False)
+
+ def test_mask_flag(self):
+ # Mask flag correctly set.
+ self.parse(b"\x80\x80\x00\x00\x00\x00", mask=True)
+ # Mask flag incorrectly unset.
+ with self.assertRaises(ProtocolError):
+ self.parse(b"\x80\x80\x00\x00\x00\x00", mask=False)
+ # Mask flag correctly unset.
+ self.parse(b"\x80\x00", mask=False)
+ # Mask flag incorrectly set.
+ with self.assertRaises(ProtocolError):
+ self.parse(b"\x80\x00", mask=True)
+
+ def test_control_frame_max_length(self):
+ # At maximum allowed length.
+ self.parse(b"\x88\x7e\x00\x7d" + 125 * b"a", mask=False)
+ # Above maximum allowed length.
+ with self.assertRaises(ProtocolError):
+ self.parse(b"\x88\x7e\x00\x7e" + 126 * b"a", mask=False)
+
+ def test_fragmented_control_frame(self):
+ # Fin bit correctly set.
+ self.parse(b"\x88\x00", mask=False)
+ # Fin bit incorrectly unset.
+ with self.assertRaises(ProtocolError):
+ self.parse(b"\x08\x00", mask=False)
+
+ def test_extensions(self):
+ class Rot13:
+ @staticmethod
+ def encode(frame):
+ assert frame.opcode == OP_TEXT
+ text = frame.data.decode()
+ data = codecs.encode(text, "rot13").encode()
+ return dataclasses.replace(frame, data=data)
+
+ # This extensions is symmetrical.
+ @staticmethod
+ def decode(frame, *, max_size=None):
+ return Rot13.encode(frame)
+
+ self.assertFrameData(
+ Frame(OP_TEXT, b"hello"),
+ b"\x81\x05uryyb",
+ mask=False,
+ extensions=[Rot13()],
+ )
+
+
+class StrTests(unittest.TestCase):
+ def test_cont_text(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, b" cr\xc3\xa8me", fin=False)),
+ "CONT ' crème' [text, 7 bytes, continued]",
+ )
+
+ def test_cont_binary(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, b"\xfc\xfd\xfe\xff", fin=False)),
+ "CONT fc fd fe ff [binary, 4 bytes, continued]",
+ )
+
+ def test_cont_binary_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, memoryview(b"\xfc\xfd\xfe\xff"), fin=False)),
+ "CONT fc fd fe ff [binary, 4 bytes, continued]",
+ )
+
+ def test_cont_final_text(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, b" cr\xc3\xa8me")),
+ "CONT ' crème' [text, 7 bytes]",
+ )
+
+ def test_cont_final_binary(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, b"\xfc\xfd\xfe\xff")),
+ "CONT fc fd fe ff [binary, 4 bytes]",
+ )
+
+ def test_cont_final_binary_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, memoryview(b"\xfc\xfd\xfe\xff"))),
+ "CONT fc fd fe ff [binary, 4 bytes]",
+ )
+
+ def test_cont_text_truncated(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, b"caf\xc3\xa9 " * 16, fin=False)),
+ "CONT 'café café café café café café café café café ca..."
+ "fé café café café café ' [text, 96 bytes, continued]",
+ )
+
+ def test_cont_binary_truncated(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, bytes(range(256)), fin=False)),
+ "CONT 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ..."
+ " f8 f9 fa fb fc fd fe ff [binary, 256 bytes, continued]",
+ )
+
+ def test_cont_binary_truncated_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_CONT, memoryview(bytes(range(256))), fin=False)),
+ "CONT 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ..."
+ " f8 f9 fa fb fc fd fe ff [binary, 256 bytes, continued]",
+ )
+
+ def test_text(self):
+ self.assertEqual(
+ str(Frame(OP_TEXT, b"caf\xc3\xa9")),
+ "TEXT 'café' [5 bytes]",
+ )
+
+ def test_text_non_final(self):
+ self.assertEqual(
+ str(Frame(OP_TEXT, b"caf\xc3\xa9", fin=False)),
+ "TEXT 'café' [5 bytes, continued]",
+ )
+
+ def test_text_truncated(self):
+ self.assertEqual(
+ str(Frame(OP_TEXT, b"caf\xc3\xa9 " * 16)),
+ "TEXT 'café café café café café café café café café ca..."
+ "fé café café café café ' [96 bytes]",
+ )
+
+ def test_text_with_newline(self):
+ self.assertEqual(
+ str(Frame(OP_TEXT, b"Hello\nworld!")),
+ "TEXT 'Hello\\nworld!' [12 bytes]",
+ )
+
+ def test_binary(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, b"\x00\x01\x02\x03")),
+ "BINARY 00 01 02 03 [4 bytes]",
+ )
+
+ def test_binary_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, memoryview(b"\x00\x01\x02\x03"))),
+ "BINARY 00 01 02 03 [4 bytes]",
+ )
+
+ def test_binary_non_final(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, b"\x00\x01\x02\x03", fin=False)),
+ "BINARY 00 01 02 03 [4 bytes, continued]",
+ )
+
+ def test_binary_non_final_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, memoryview(b"\x00\x01\x02\x03"), fin=False)),
+ "BINARY 00 01 02 03 [4 bytes, continued]",
+ )
+
+ def test_binary_truncated(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, bytes(range(256)))),
+ "BINARY 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ..."
+ " f8 f9 fa fb fc fd fe ff [256 bytes]",
+ )
+
+ def test_binary_truncated_from_memoryview(self):
+ self.assertEqual(
+ str(Frame(OP_BINARY, memoryview(bytes(range(256))))),
+ "BINARY 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ..."
+ " f8 f9 fa fb fc fd fe ff [256 bytes]",
+ )
+
+ def test_close(self):
+ self.assertEqual(
+ str(Frame(OP_CLOSE, b"\x03\xe8")),
+ "CLOSE 1000 (OK) [2 bytes]",
+ )
+
+ def test_close_reason(self):
+ self.assertEqual(
+ str(Frame(OP_CLOSE, b"\x03\xe9Bye!")),
+ "CLOSE 1001 (going away) Bye! [6 bytes]",
+ )
+
+ def test_ping(self):
+ self.assertEqual(
+ str(Frame(OP_PING, b"")),
+ "PING '' [0 bytes]",
+ )
+
+ def test_ping_text(self):
+ self.assertEqual(
+ str(Frame(OP_PING, b"ping")),
+ "PING 'ping' [text, 4 bytes]",
+ )
+
+ def test_ping_text_with_newline(self):
+ self.assertEqual(
+ str(Frame(OP_PING, b"ping\n")),
+ "PING 'ping\\n' [text, 5 bytes]",
+ )
+
+ def test_ping_binary(self):
+ self.assertEqual(
+ str(Frame(OP_PING, b"\xff\x00\xff\x00")),
+ "PING ff 00 ff 00 [binary, 4 bytes]",
+ )
+
+ def test_pong(self):
+ self.assertEqual(
+ str(Frame(OP_PONG, b"")),
+ "PONG '' [0 bytes]",
+ )
+
+ def test_pong_text(self):
+ self.assertEqual(
+ str(Frame(OP_PONG, b"pong")),
+ "PONG 'pong' [text, 4 bytes]",
+ )
+
+ def test_pong_text_with_newline(self):
+ self.assertEqual(
+ str(Frame(OP_PONG, b"pong\n")),
+ "PONG 'pong\\n' [text, 5 bytes]",
+ )
+
+ def test_pong_binary(self):
+ self.assertEqual(
+ str(Frame(OP_PONG, b"\xff\x00\xff\x00")),
+ "PONG ff 00 ff 00 [binary, 4 bytes]",
+ )
+
+
+class PrepareDataTests(unittest.TestCase):
+ def test_prepare_data_str(self):
+ self.assertEqual(
+ prepare_data("café"),
+ (OP_TEXT, b"caf\xc3\xa9"),
+ )
+
+ def test_prepare_data_bytes(self):
+ self.assertEqual(
+ prepare_data(b"tea"),
+ (OP_BINARY, b"tea"),
+ )
+
+ def test_prepare_data_bytearray(self):
+ self.assertEqual(
+ prepare_data(bytearray(b"tea")),
+ (OP_BINARY, bytearray(b"tea")),
+ )
+
+ def test_prepare_data_memoryview(self):
+ self.assertEqual(
+ prepare_data(memoryview(b"tea")),
+ (OP_BINARY, memoryview(b"tea")),
+ )
+
+ def test_prepare_data_list(self):
+ with self.assertRaises(TypeError):
+ prepare_data([])
+
+ def test_prepare_data_none(self):
+ with self.assertRaises(TypeError):
+ prepare_data(None)
+
+
+class PrepareCtrlTests(unittest.TestCase):
+ def test_prepare_ctrl_str(self):
+ self.assertEqual(prepare_ctrl("café"), b"caf\xc3\xa9")
+
+ def test_prepare_ctrl_bytes(self):
+ self.assertEqual(prepare_ctrl(b"tea"), b"tea")
+
+ def test_prepare_ctrl_bytearray(self):
+ self.assertEqual(prepare_ctrl(bytearray(b"tea")), b"tea")
+
+ def test_prepare_ctrl_memoryview(self):
+ self.assertEqual(prepare_ctrl(memoryview(b"tea")), b"tea")
+
+ def test_prepare_ctrl_list(self):
+ with self.assertRaises(TypeError):
+ prepare_ctrl([])
+
+ def test_prepare_ctrl_none(self):
+ with self.assertRaises(TypeError):
+ prepare_ctrl(None)
+
+
+class CloseTests(unittest.TestCase):
+ def assertCloseData(self, close, data):
+ """
+ Serializing close yields data. Parsing data yields close.
+
+ """
+ serialized = close.serialize()
+ self.assertEqual(serialized, data)
+ parsed = Close.parse(data)
+ self.assertEqual(parsed, close)
+
+ def test_str(self):
+ self.assertEqual(
+ str(Close(CloseCode.NORMAL_CLOSURE, "")),
+ "1000 (OK)",
+ )
+ self.assertEqual(
+ str(Close(CloseCode.GOING_AWAY, "Bye!")),
+ "1001 (going away) Bye!",
+ )
+ self.assertEqual(
+ str(Close(3000, "")),
+ "3000 (registered)",
+ )
+ self.assertEqual(
+ str(Close(4000, "")),
+ "4000 (private use)",
+ )
+ self.assertEqual(
+ str(Close(5000, "")),
+ "5000 (unknown)",
+ )
+
+ def test_parse_and_serialize(self):
+ self.assertCloseData(
+ Close(CloseCode.NORMAL_CLOSURE, "OK"),
+ b"\x03\xe8OK",
+ )
+ self.assertCloseData(
+ Close(CloseCode.GOING_AWAY, ""),
+ b"\x03\xe9",
+ )
+
+ def test_parse_empty(self):
+ self.assertEqual(
+ Close.parse(b""),
+ Close(CloseCode.NO_STATUS_RCVD, ""),
+ )
+
+ def test_parse_errors(self):
+ with self.assertRaises(ProtocolError):
+ Close.parse(b"\x03")
+ with self.assertRaises(ProtocolError):
+ Close.parse(b"\x03\xe7")
+ with self.assertRaises(UnicodeDecodeError):
+ Close.parse(b"\x03\xe8\xff\xff")
+
+ def test_serialize_errors(self):
+ with self.assertRaises(ProtocolError):
+ Close(999, "").serialize()
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_headers.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_headers.py
new file mode 100644
index 0000000000..4ebd8b90cf
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_headers.py
@@ -0,0 +1,222 @@
+import unittest
+
+from websockets.exceptions import InvalidHeaderFormat, InvalidHeaderValue
+from websockets.headers import *
+
+
+class HeadersTests(unittest.TestCase):
+ def test_build_host(self):
+ for (host, port, secure), result in [
+ (("localhost", 80, False), "localhost"),
+ (("localhost", 8000, False), "localhost:8000"),
+ (("localhost", 443, True), "localhost"),
+ (("localhost", 8443, True), "localhost:8443"),
+ (("example.com", 80, False), "example.com"),
+ (("example.com", 8000, False), "example.com:8000"),
+ (("example.com", 443, True), "example.com"),
+ (("example.com", 8443, True), "example.com:8443"),
+ (("127.0.0.1", 80, False), "127.0.0.1"),
+ (("127.0.0.1", 8000, False), "127.0.0.1:8000"),
+ (("127.0.0.1", 443, True), "127.0.0.1"),
+ (("127.0.0.1", 8443, True), "127.0.0.1:8443"),
+ (("::1", 80, False), "[::1]"),
+ (("::1", 8000, False), "[::1]:8000"),
+ (("::1", 443, True), "[::1]"),
+ (("::1", 8443, True), "[::1]:8443"),
+ ]:
+ with self.subTest(host=host, port=port, secure=secure):
+ self.assertEqual(build_host(host, port, secure), result)
+
+ def test_parse_connection(self):
+ for header, parsed in [
+ # Realistic use cases
+ ("Upgrade", ["Upgrade"]), # Safari, Chrome
+ ("keep-alive, Upgrade", ["keep-alive", "Upgrade"]), # Firefox
+ # Pathological example
+ (",,\t, , ,Upgrade ,,", ["Upgrade"]),
+ ]:
+ with self.subTest(header=header):
+ self.assertEqual(parse_connection(header), parsed)
+
+ def test_parse_connection_invalid_header_format(self):
+ for header in ["???", "keep-alive; Upgrade"]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderFormat):
+ parse_connection(header)
+
+ def test_parse_upgrade(self):
+ for header, parsed in [
+ # Realistic use case
+ ("websocket", ["websocket"]),
+ # Synthetic example
+ ("http/3.0, websocket", ["http/3.0", "websocket"]),
+ # Pathological example
+ (",, WebSocket, \t,,", ["WebSocket"]),
+ ]:
+ with self.subTest(header=header):
+ self.assertEqual(parse_upgrade(header), parsed)
+
+ def test_parse_upgrade_invalid_header_format(self):
+ for header in ["???", "websocket 2", "http/3.0; websocket"]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderFormat):
+ parse_upgrade(header)
+
+ def test_parse_extension(self):
+ for header, parsed in [
+ # Synthetic examples
+ ("foo", [("foo", [])]),
+ ("foo, bar", [("foo", []), ("bar", [])]),
+ (
+ 'foo; name; token=token; quoted-string="quoted-string", '
+ "bar; quux; quuux",
+ [
+ (
+ "foo",
+ [
+ ("name", None),
+ ("token", "token"),
+ ("quoted-string", "quoted-string"),
+ ],
+ ),
+ ("bar", [("quux", None), ("quuux", None)]),
+ ],
+ ),
+ # Pathological example
+ (
+ ",\t, , ,foo ;bar = 42,, baz,,",
+ [("foo", [("bar", "42")]), ("baz", [])],
+ ),
+ # Realistic use cases for permessage-deflate
+ ("permessage-deflate", [("permessage-deflate", [])]),
+ (
+ "permessage-deflate; client_max_window_bits",
+ [("permessage-deflate", [("client_max_window_bits", None)])],
+ ),
+ (
+ "permessage-deflate; server_max_window_bits=10",
+ [("permessage-deflate", [("server_max_window_bits", "10")])],
+ ),
+ ]:
+ with self.subTest(header=header):
+ self.assertEqual(parse_extension(header), parsed)
+ # Also ensure that build_extension round-trips cleanly.
+ unparsed = build_extension(parsed)
+ self.assertEqual(parse_extension(unparsed), parsed)
+
+ def test_parse_extension_invalid_header_format(self):
+ for header in [
+ # Truncated examples
+ "",
+ ",\t,",
+ "foo;",
+ "foo; bar;",
+ "foo; bar=",
+ 'foo; bar="baz',
+ # Wrong delimiter
+ "foo, bar, baz=quux; quuux",
+ # Value in quoted string parameter that isn't a token
+ 'foo; bar=" "',
+ ]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderFormat):
+ parse_extension(header)
+
+ def test_parse_subprotocol(self):
+ for header, parsed in [
+ # Synthetic examples
+ ("foo", ["foo"]),
+ ("foo, bar", ["foo", "bar"]),
+ # Pathological example
+ (",\t, , ,foo ,, bar,baz,,", ["foo", "bar", "baz"]),
+ ]:
+ with self.subTest(header=header):
+ self.assertEqual(parse_subprotocol(header), parsed)
+ # Also ensure that build_subprotocol round-trips cleanly.
+ unparsed = build_subprotocol(parsed)
+ self.assertEqual(parse_subprotocol(unparsed), parsed)
+
+ def test_parse_subprotocol_invalid_header(self):
+ for header in [
+ # Truncated examples
+ "",
+ ",\t,",
+ # Wrong delimiter
+ "foo; bar",
+ ]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderFormat):
+ parse_subprotocol(header)
+
+ def test_validate_subprotocols(self):
+ for subprotocols in [[], ["sip"], ["v1.usp"], ["sip", "v1.usp"]]:
+ with self.subTest(subprotocols=subprotocols):
+ validate_subprotocols(subprotocols)
+
+ def test_validate_subprotocols_invalid(self):
+ for subprotocols, exception in [
+ ({"sip": None}, TypeError),
+ ("sip", TypeError),
+ ([""], ValueError),
+ ]:
+ with self.subTest(subprotocols=subprotocols):
+ with self.assertRaises(exception):
+ validate_subprotocols(subprotocols)
+
+ def test_build_www_authenticate_basic(self):
+ # Test vector from RFC 7617
+ self.assertEqual(
+ build_www_authenticate_basic("foo"), 'Basic realm="foo", charset="UTF-8"'
+ )
+
+ def test_build_www_authenticate_basic_invalid_realm(self):
+ # Realm contains a control character forbidden in quoted-string encoding
+ with self.assertRaises(ValueError):
+ build_www_authenticate_basic("\u0007")
+
+ def test_build_authorization_basic(self):
+ # Test vector from RFC 7617
+ self.assertEqual(
+ build_authorization_basic("Aladdin", "open sesame"),
+ "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==",
+ )
+
+ def test_build_authorization_basic_utf8(self):
+ # Test vector from RFC 7617
+ self.assertEqual(
+ build_authorization_basic("test", "123£"), "Basic dGVzdDoxMjPCow=="
+ )
+
+ def test_parse_authorization_basic(self):
+ for header, parsed in [
+ ("Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==", ("Aladdin", "open sesame")),
+ # Password contains non-ASCII character
+ ("Basic dGVzdDoxMjPCow==", ("test", "123£")),
+ # Password contains a colon
+ ("Basic YWxhZGRpbjpvcGVuOnNlc2FtZQ==", ("aladdin", "open:sesame")),
+ # Scheme name must be case insensitive
+ ("basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==", ("Aladdin", "open sesame")),
+ ]:
+ with self.subTest(header=header):
+ self.assertEqual(parse_authorization_basic(header), parsed)
+
+ def test_parse_authorization_basic_invalid_header_format(self):
+ for header in [
+ "// Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==",
+ "Basic\tQWxhZGRpbjpvcGVuIHNlc2FtZQ==",
+ "Basic ****************************",
+ "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== //",
+ ]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderFormat):
+ parse_authorization_basic(header)
+
+ def test_parse_authorization_basic_invalid_header_value(self):
+ for header in [
+ "Digest ...",
+ "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ",
+ "Basic QWxhZGNlc2FtZQ==",
+ ]:
+ with self.subTest(header=header):
+ with self.assertRaises(InvalidHeaderValue):
+ parse_authorization_basic(header)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_http.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_http.py
new file mode 100644
index 0000000000..036bc14102
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_http.py
@@ -0,0 +1 @@
+from websockets.http import *
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_http11.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_http11.py
new file mode 100644
index 0000000000..d2e5e04627
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_http11.py
@@ -0,0 +1,344 @@
+from websockets.datastructures import Headers
+from websockets.exceptions import SecurityError
+from websockets.http11 import *
+from websockets.http11 import parse_headers
+from websockets.streams import StreamReader
+
+from .utils import GeneratorTestCase
+
+
+class RequestTests(GeneratorTestCase):
+ def setUp(self):
+ super().setUp()
+ self.reader = StreamReader()
+
+ def parse(self):
+ return Request.parse(self.reader.read_line)
+
+ def test_parse(self):
+ # Example from the protocol overview in RFC 6455
+ self.reader.feed_data(
+ b"GET /chat HTTP/1.1\r\n"
+ b"Host: server.example.com\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n"
+ b"Origin: http://example.com\r\n"
+ b"Sec-WebSocket-Protocol: chat, superchat\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"\r\n"
+ )
+ request = self.assertGeneratorReturns(self.parse())
+ self.assertEqual(request.path, "/chat")
+ self.assertEqual(request.headers["Upgrade"], "websocket")
+
+ def test_parse_empty(self):
+ self.reader.feed_eof()
+ with self.assertRaises(EOFError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "connection closed while reading HTTP request line",
+ )
+
+ def test_parse_invalid_request_line(self):
+ self.reader.feed_data(b"GET /\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP request line: GET /",
+ )
+
+ def test_parse_unsupported_method(self):
+ self.reader.feed_data(b"OPTIONS * HTTP/1.1\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "unsupported HTTP method: OPTIONS",
+ )
+
+ def test_parse_unsupported_version(self):
+ self.reader.feed_data(b"GET /chat HTTP/1.0\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "unsupported HTTP version: HTTP/1.0",
+ )
+
+ def test_parse_invalid_header(self):
+ self.reader.feed_data(b"GET /chat HTTP/1.1\r\nOops\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP header line: Oops",
+ )
+
+ def test_parse_body(self):
+ self.reader.feed_data(b"GET / HTTP/1.1\r\nContent-Length: 3\r\n\r\nYo\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "unsupported request body",
+ )
+
+ def test_parse_body_with_transfer_encoding(self):
+ self.reader.feed_data(b"GET / HTTP/1.1\r\nTransfer-Encoding: chunked\r\n\r\n")
+ with self.assertRaises(NotImplementedError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "transfer codings aren't supported",
+ )
+
+ def test_serialize(self):
+ # Example from the protocol overview in RFC 6455
+ request = Request(
+ "/chat",
+ Headers(
+ [
+ ("Host", "server.example.com"),
+ ("Upgrade", "websocket"),
+ ("Connection", "Upgrade"),
+ ("Sec-WebSocket-Key", "dGhlIHNhbXBsZSBub25jZQ=="),
+ ("Origin", "http://example.com"),
+ ("Sec-WebSocket-Protocol", "chat, superchat"),
+ ("Sec-WebSocket-Version", "13"),
+ ]
+ ),
+ )
+ self.assertEqual(
+ request.serialize(),
+ b"GET /chat HTTP/1.1\r\n"
+ b"Host: server.example.com\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n"
+ b"Origin: http://example.com\r\n"
+ b"Sec-WebSocket-Protocol: chat, superchat\r\n"
+ b"Sec-WebSocket-Version: 13\r\n"
+ b"\r\n",
+ )
+
+
+class ResponseTests(GeneratorTestCase):
+ def setUp(self):
+ super().setUp()
+ self.reader = StreamReader()
+
+ def parse(self):
+ return Response.parse(
+ self.reader.read_line,
+ self.reader.read_exact,
+ self.reader.read_to_eof,
+ )
+
+ def test_parse(self):
+ # Example from the protocol overview in RFC 6455
+ self.reader.feed_data(
+ b"HTTP/1.1 101 Switching Protocols\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\n"
+ b"Sec-WebSocket-Protocol: chat\r\n"
+ b"\r\n"
+ )
+ response = self.assertGeneratorReturns(self.parse())
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.reason_phrase, "Switching Protocols")
+ self.assertEqual(response.headers["Upgrade"], "websocket")
+ self.assertIsNone(response.body)
+
+ def test_parse_empty(self):
+ self.reader.feed_eof()
+ with self.assertRaises(EOFError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "connection closed while reading HTTP status line",
+ )
+
+ def test_parse_invalid_status_line(self):
+ self.reader.feed_data(b"Hello!\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP status line: Hello!",
+ )
+
+ def test_parse_unsupported_version(self):
+ self.reader.feed_data(b"HTTP/1.0 400 Bad Request\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "unsupported HTTP version: HTTP/1.0",
+ )
+
+ def test_parse_invalid_status(self):
+ self.reader.feed_data(b"HTTP/1.1 OMG WTF\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP status code: OMG",
+ )
+
+ def test_parse_unsupported_status(self):
+ self.reader.feed_data(b"HTTP/1.1 007 My name is Bond\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "unsupported HTTP status code: 007",
+ )
+
+ def test_parse_invalid_reason(self):
+ self.reader.feed_data(b"HTTP/1.1 200 \x7f\r\n\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP reason phrase: \x7f",
+ )
+
+ def test_parse_invalid_header(self):
+ self.reader.feed_data(b"HTTP/1.1 500 Internal Server Error\r\nOops\r\n")
+ with self.assertRaises(ValueError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "invalid HTTP header line: Oops",
+ )
+
+ def test_parse_body_with_content_length(self):
+ self.reader.feed_data(
+ b"HTTP/1.1 200 OK\r\nContent-Length: 13\r\n\r\nHello world!\n"
+ )
+ response = self.assertGeneratorReturns(self.parse())
+ self.assertEqual(response.body, b"Hello world!\n")
+
+ def test_parse_body_without_content_length(self):
+ self.reader.feed_data(b"HTTP/1.1 200 OK\r\n\r\nHello world!\n")
+ gen = self.parse()
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_eof()
+ response = self.assertGeneratorReturns(gen)
+ self.assertEqual(response.body, b"Hello world!\n")
+
+ def test_parse_body_with_content_length_too_long(self):
+ self.reader.feed_data(b"HTTP/1.1 200 OK\r\nContent-Length: 1048577\r\n\r\n")
+ with self.assertRaises(SecurityError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "body too large: 1048577 bytes",
+ )
+
+ def test_parse_body_without_content_length_too_long(self):
+ self.reader.feed_data(b"HTTP/1.1 200 OK\r\n\r\n" + b"a" * 1048577)
+ with self.assertRaises(SecurityError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "body too large: over 1048576 bytes",
+ )
+
+ def test_parse_body_with_transfer_encoding(self):
+ self.reader.feed_data(b"HTTP/1.1 200 OK\r\nTransfer-Encoding: chunked\r\n\r\n")
+ with self.assertRaises(NotImplementedError) as raised:
+ next(self.parse())
+ self.assertEqual(
+ str(raised.exception),
+ "transfer codings aren't supported",
+ )
+
+ def test_parse_body_no_content(self):
+ self.reader.feed_data(b"HTTP/1.1 204 No Content\r\n\r\n")
+ response = self.assertGeneratorReturns(self.parse())
+ self.assertIsNone(response.body)
+
+ def test_parse_body_not_modified(self):
+ self.reader.feed_data(b"HTTP/1.1 304 Not Modified\r\n\r\n")
+ response = self.assertGeneratorReturns(self.parse())
+ self.assertIsNone(response.body)
+
+ def test_serialize(self):
+ # Example from the protocol overview in RFC 6455
+ response = Response(
+ 101,
+ "Switching Protocols",
+ Headers(
+ [
+ ("Upgrade", "websocket"),
+ ("Connection", "Upgrade"),
+ ("Sec-WebSocket-Accept", "s3pPLMBiTxaQ9kYGzzhZRbK+xOo="),
+ ("Sec-WebSocket-Protocol", "chat"),
+ ]
+ ),
+ )
+ self.assertEqual(
+ response.serialize(),
+ b"HTTP/1.1 101 Switching Protocols\r\n"
+ b"Upgrade: websocket\r\n"
+ b"Connection: Upgrade\r\n"
+ b"Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\n"
+ b"Sec-WebSocket-Protocol: chat\r\n"
+ b"\r\n",
+ )
+
+ def test_serialize_with_body(self):
+ response = Response(
+ 200,
+ "OK",
+ Headers([("Content-Length", "13"), ("Content-Type", "text/plain")]),
+ b"Hello world!\n",
+ )
+ self.assertEqual(
+ response.serialize(),
+ b"HTTP/1.1 200 OK\r\n"
+ b"Content-Length: 13\r\n"
+ b"Content-Type: text/plain\r\n"
+ b"\r\n"
+ b"Hello world!\n",
+ )
+
+
+class HeadersTests(GeneratorTestCase):
+ def setUp(self):
+ super().setUp()
+ self.reader = StreamReader()
+
+ def parse_headers(self):
+ return parse_headers(self.reader.read_line)
+
+ def test_parse_invalid_name(self):
+ self.reader.feed_data(b"foo bar: baz qux\r\n\r\n")
+ with self.assertRaises(ValueError):
+ next(self.parse_headers())
+
+ def test_parse_invalid_value(self):
+ self.reader.feed_data(b"foo: \x00\x00\x0f\r\n\r\n")
+ with self.assertRaises(ValueError):
+ next(self.parse_headers())
+
+ def test_parse_too_long_value(self):
+ self.reader.feed_data(b"foo: bar\r\n" * 129 + b"\r\n")
+ with self.assertRaises(SecurityError):
+ next(self.parse_headers())
+
+ def test_parse_too_long_line(self):
+ # Header line contains 5 + 8186 + 2 = 8193 bytes.
+ self.reader.feed_data(b"foo: " + b"a" * 8186 + b"\r\n\r\n")
+ with self.assertRaises(SecurityError):
+ next(self.parse_headers())
+
+ def test_parse_invalid_line_ending(self):
+ self.reader.feed_data(b"foo: bar\n\n")
+ with self.assertRaises(EOFError):
+ next(self.parse_headers())
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_imports.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_imports.py
new file mode 100644
index 0000000000..b69ed93162
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_imports.py
@@ -0,0 +1,64 @@
+import types
+import unittest
+import warnings
+
+from websockets.imports import *
+
+
+foo = object()
+
+bar = object()
+
+
+class ImportsTests(unittest.TestCase):
+ def setUp(self):
+ self.mod = types.ModuleType("tests.test_imports.test_alias")
+ self.mod.__package__ = self.mod.__name__
+
+ def test_get_alias(self):
+ lazy_import(
+ vars(self.mod),
+ aliases={"foo": "...test_imports"},
+ )
+
+ self.assertEqual(self.mod.foo, foo)
+
+ def test_get_deprecated_alias(self):
+ lazy_import(
+ vars(self.mod),
+ deprecated_aliases={"bar": "...test_imports"},
+ )
+
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ self.assertEqual(self.mod.bar, bar)
+
+ self.assertEqual(len(recorded_warnings), 1)
+ warning = recorded_warnings[0].message
+ self.assertEqual(
+ str(warning), "tests.test_imports.test_alias.bar is deprecated"
+ )
+ self.assertEqual(type(warning), DeprecationWarning)
+
+ def test_dir(self):
+ lazy_import(
+ vars(self.mod),
+ aliases={"foo": "...test_imports"},
+ deprecated_aliases={"bar": "...test_imports"},
+ )
+
+ self.assertEqual(
+ [item for item in dir(self.mod) if not item[:2] == item[-2:] == "__"],
+ ["bar", "foo"],
+ )
+
+ def test_attribute_error(self):
+ lazy_import(vars(self.mod))
+
+ with self.assertRaises(AttributeError) as raised:
+ self.mod.foo
+
+ self.assertEqual(
+ str(raised.exception),
+ "module 'tests.test_imports.test_alias' has no attribute 'foo'",
+ )
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.cnf b/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.cnf
new file mode 100644
index 0000000000..4069e39670
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.cnf
@@ -0,0 +1,27 @@
+[ req ]
+
+default_md = sha256
+encrypt_key = no
+
+prompt = no
+
+distinguished_name = dn
+x509_extensions = ext
+
+[ dn ]
+
+C = "FR"
+L = "Paris"
+O = "Aymeric Augustin"
+CN = "localhost"
+
+[ ext ]
+
+subjectAltName = @san
+
+[ san ]
+
+DNS.1 = localhost
+DNS.2 = overridden
+IP.3 = 127.0.0.1
+IP.4 = ::1
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.pem b/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.pem
new file mode 100644
index 0000000000..8df63ec8f4
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_localhost.pem
@@ -0,0 +1,48 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDYOOQyq8yYtn5x
+K3yRborFxTFse16JIVb4x/ZhZgGm49eARCi09fmczQxJdQpHz81Ij6z0xi7AUYH7
+9wS8T0Lh3uGFDDS1GzITUVPIqSUi0xim2T6XPzXFVQYI1D/OjUxlHm+3/up+WwbL
+sBgBO/lDmzoa3ZN7kt9HQoGc/14oQz1Qsv1QTDQs69r+o7mmBJr/hf/g7S0Csyy3
+iC6aaq+yCUyzDbjXceTI7WJqbTGNnK0/DjdFD/SJS/uSDNEg0AH53eqcCSjm+Ei/
+UF8qR5Pu4sSsNwToOW2MVgjtHFazc+kG3rzD6+3Dp+t6x6uI/npyuudOMCmOtd6z
+kX0UPQaNAgMBAAECggEAS4eMBztGC+5rusKTEAZKSY15l0h9HG/d/qdzJFDKsO6T
+/8VPZu8pk6F48kwFHFK1hexSYWq9OAcA3fBK4jDZzybZJm2+F6l5U5AsMUMMqt6M
+lPP8Tj8RXG433muuIkvvbL82DVLpvNu1Qv+vUvcNOpWFtY7DDv6eKjlMJ3h4/pzh
+89MNt26VMCYOlq1NSjuZBzFohL2u9nsFehlOpcVsqNfNfcYCq9+5yoH8fWJP90Op
+hqhvqUoGLN7DRKV1f+AWHSA4nmGgvVviV5PQgMhtk5exlN7kG+rDc3LbzhefS1Sp
+Tat1qIgm8fK2n+Q/obQPjHOGOGuvE5cIF7E275ZKgQKBgQDt87BqALKWnbkbQnb7
+GS1h6LRcKyZhFbxnO2qbviBWSo15LEF8jPGV33Dj+T56hqufa/rUkbZiUbIR9yOX
+dnOwpAVTo+ObAwZfGfHvrnufiIbHFqJBumaYLqjRZ7AC0QtS3G+kjS9dbllrr7ok
+fO4JdfKRXzBJKrkQdCn8hR22rQKBgQDon0b49Dxs1EfdSDbDode2TSwE83fI3vmR
+SKUkNY8ma6CRbomVRWijhBM458wJeuhpjPZOvjNMsnDzGwrtdAp2VfFlMIDnA8ZC
+fEWIAAH2QYKXKGmkoXOcWB2QbvbI154zCm6zFGtzvRKOCGmTXuhFajO8VPwOyJVt
+aSJA3bLrYQKBgQDJM2/tAfAAKRdW9GlUwqI8Ep9G+/l0yANJqtTnIemH7XwYhJJO
+9YJlPszfB2aMBgliQNSUHy1/jyKpzDYdITyLlPUoFwEilnkxuud2yiuf5rpH51yF
+hU6wyWtXvXv3tbkEdH42PmdZcjBMPQeBSN2hxEi6ISncBDL9tau26PwJ9QKBgQCs
+cNYl2reoXTzgtpWSNDk6NL769JjJWTFcF6QD0YhKjOI8rNpkw00sWc3+EybXqDr9
+c7dq6+gPZQAB1vwkxi6zRkZqIqiLl+qygnjwtkC+EhYCg7y8g8q2DUPtO7TJcb0e
+TQ9+xRZad8B3dZj93A8G1hF//OfU9bB/qL3xo+bsQQKBgC/9YJvgLIWA/UziLcB2
+29Ai0nbPkN5df7z4PifUHHSlbQJHKak8UKbMP+8S064Ul0F7g8UCjZMk2LzSbaNY
+XU5+2j0sIOnGUFoSlvcpdowzYrD2LN5PkKBot7AOq/v7HlcOoR8J8RGWAMpCrHsI
+a/u/dlZs+/K16RcavQwx8rag
+-----END PRIVATE KEY-----
+-----BEGIN CERTIFICATE-----
+MIIDWTCCAkGgAwIBAgIJAOL9UKiOOxupMA0GCSqGSIb3DQEBCwUAMEwxCzAJBgNV
+BAYTAkZSMQ4wDAYDVQQHDAVQYXJpczEZMBcGA1UECgwQQXltZXJpYyBBdWd1c3Rp
+bjESMBAGA1UEAwwJbG9jYWxob3N0MCAXDTIyMTAxNTE5Mjg0MVoYDzIwNjQxMDE0
+MTkyODQxWjBMMQswCQYDVQQGEwJGUjEOMAwGA1UEBwwFUGFyaXMxGTAXBgNVBAoM
+EEF5bWVyaWMgQXVndXN0aW4xEjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBANg45DKrzJi2fnErfJFuisXFMWx7XokhVvjH
+9mFmAabj14BEKLT1+ZzNDEl1CkfPzUiPrPTGLsBRgfv3BLxPQuHe4YUMNLUbMhNR
+U8ipJSLTGKbZPpc/NcVVBgjUP86NTGUeb7f+6n5bBsuwGAE7+UObOhrdk3uS30dC
+gZz/XihDPVCy/VBMNCzr2v6juaYEmv+F/+DtLQKzLLeILppqr7IJTLMNuNdx5Mjt
+YmptMY2crT8ON0UP9IlL+5IM0SDQAfnd6pwJKOb4SL9QXypHk+7ixKw3BOg5bYxW
+CO0cVrNz6QbevMPr7cOn63rHq4j+enK6504wKY613rORfRQ9Bo0CAwEAAaM8MDow
+OAYDVR0RBDEwL4IJbG9jYWxob3N0ggpvdmVycmlkZGVuhwR/AAABhxAAAAAAAAAA
+AAAAAAAAAAABMA0GCSqGSIb3DQEBCwUAA4IBAQBPNDGDdl4wsCRlDuyCHBC8o+vW
+Vb14thUw9Z6UrlsQRXLONxHOXbNAj1sYQACNwIWuNz36HXu5m8Xw/ID/bOhnIg+b
+Y6l/JU/kZQYB7SV1aR3ZdbCK0gjfkE0POBHuKOjUFIOPBCtJ4tIBUX94zlgJrR9v
+2rqJC3TIYrR7pVQumHZsI5GZEMpM5NxfreWwxcgltgxmGdm7elcizHfz7k5+szwh
+4eZ/rxK9bw1q8BIvVBWelRvUR55mIrCjzfZp5ZObSYQTZlW7PzXBe5Jk+1w31YHM
+RSBA2EpPhYlGNqPidi7bg7rnQcsc6+hE0OqzTL/hWxPm9Vbp9dj3HFTik1wa
+-----END CERTIFICATE-----
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_protocol.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_protocol.py
new file mode 100644
index 0000000000..a64172b539
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_protocol.py
@@ -0,0 +1,1790 @@
+import logging
+import unittest.mock
+
+from websockets.exceptions import (
+ ConnectionClosedError,
+ ConnectionClosedOK,
+ InvalidState,
+ PayloadTooBig,
+ ProtocolError,
+)
+from websockets.frames import (
+ OP_BINARY,
+ OP_CLOSE,
+ OP_CONT,
+ OP_PING,
+ OP_PONG,
+ OP_TEXT,
+ Close,
+ CloseCode,
+ Frame,
+)
+from websockets.protocol import *
+from websockets.protocol import CLIENT, CLOSED, CLOSING, SERVER
+
+from .extensions.utils import Rsv2Extension
+from .test_frames import FramesTestCase
+
+
+class ProtocolTestCase(FramesTestCase):
+ def assertFrameSent(self, connection, frame, eof=False):
+ """
+ Outgoing data for ``connection`` contains the given frame.
+
+ ``frame`` may be ``None`` if no frame is expected.
+
+ When ``eof`` is ``True``, the end of the stream is also expected.
+
+ """
+ frames_sent = [
+ None
+ if write is SEND_EOF
+ else self.parse(
+ write,
+ mask=connection.side is CLIENT,
+ extensions=connection.extensions,
+ )
+ for write in connection.data_to_send()
+ ]
+ frames_expected = [] if frame is None else [frame]
+ if eof:
+ frames_expected += [None]
+ self.assertEqual(frames_sent, frames_expected)
+
+ def assertFrameReceived(self, connection, frame):
+ """
+ Incoming data for ``connection`` contains the given frame.
+
+ ``frame`` may be ``None`` if no frame is expected.
+
+ """
+ frames_received = connection.events_received()
+ frames_expected = [] if frame is None else [frame]
+ self.assertEqual(frames_received, frames_expected)
+
+ def assertConnectionClosing(self, connection, code=None, reason=""):
+ """
+ Incoming data caused the "Start the WebSocket Closing Handshake" process.
+
+ """
+ close_frame = Frame(
+ OP_CLOSE,
+ b"" if code is None else Close(code, reason).serialize(),
+ )
+ # A close frame was received.
+ self.assertFrameReceived(connection, close_frame)
+ # A close frame and possibly the end of stream were sent.
+ self.assertFrameSent(connection, close_frame, eof=connection.side is SERVER)
+
+ def assertConnectionFailing(self, connection, code=None, reason=""):
+ """
+ Incoming data caused the "Fail the WebSocket Connection" process.
+
+ """
+ close_frame = Frame(
+ OP_CLOSE,
+ b"" if code is None else Close(code, reason).serialize(),
+ )
+ # No frame was received.
+ self.assertFrameReceived(connection, None)
+ # A close frame and possibly the end of stream were sent.
+ self.assertFrameSent(connection, close_frame, eof=connection.side is SERVER)
+
+
+class MaskingTests(ProtocolTestCase):
+ """
+ Test frame masking.
+
+ 5.1. Overview
+
+ """
+
+ unmasked_text_frame_date = b"\x81\x04Spam"
+ masked_text_frame_data = b"\x81\x84\x00\xff\x00\xff\x53\x8f\x61\x92"
+
+ def test_client_sends_masked_frame(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\xff\x00\xff"):
+ client.send_text(b"Spam", True)
+ self.assertEqual(client.data_to_send(), [self.masked_text_frame_data])
+
+ def test_server_sends_unmasked_frame(self):
+ server = Protocol(SERVER)
+ server.send_text(b"Spam", True)
+ self.assertEqual(server.data_to_send(), [self.unmasked_text_frame_date])
+
+ def test_client_receives_unmasked_frame(self):
+ client = Protocol(CLIENT)
+ client.receive_data(self.unmasked_text_frame_date)
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, b"Spam"),
+ )
+
+ def test_server_receives_masked_frame(self):
+ server = Protocol(SERVER)
+ server.receive_data(self.masked_text_frame_data)
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, b"Spam"),
+ )
+
+ def test_client_receives_masked_frame(self):
+ client = Protocol(CLIENT)
+ client.receive_data(self.masked_text_frame_data)
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "incorrect masking")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "incorrect masking"
+ )
+
+ def test_server_receives_unmasked_frame(self):
+ server = Protocol(SERVER)
+ server.receive_data(self.unmasked_text_frame_date)
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "incorrect masking")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "incorrect masking"
+ )
+
+
+class ContinuationTests(ProtocolTestCase):
+ """
+ Test continuation frames without text or binary frames.
+
+ """
+
+ def test_client_sends_unexpected_continuation(self):
+ client = Protocol(CLIENT)
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_continuation(b"", fin=False)
+ self.assertEqual(str(raised.exception), "unexpected continuation frame")
+
+ def test_server_sends_unexpected_continuation(self):
+ server = Protocol(SERVER)
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_continuation(b"", fin=False)
+ self.assertEqual(str(raised.exception), "unexpected continuation frame")
+
+ def test_client_receives_unexpected_continuation(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x00\x00")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "unexpected continuation frame")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "unexpected continuation frame"
+ )
+
+ def test_server_receives_unexpected_continuation(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x00\x80\x00\x00\x00\x00")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "unexpected continuation frame")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "unexpected continuation frame"
+ )
+
+ def test_client_sends_continuation_after_sending_close(self):
+ client = Protocol(CLIENT)
+ # Since it isn't possible to send a close frame in a fragmented
+ # message (see test_client_send_close_in_fragmented_message), in fact,
+ # this is the same test as test_client_sends_unexpected_continuation.
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_continuation(b"", fin=False)
+ self.assertEqual(str(raised.exception), "unexpected continuation frame")
+
+ def test_server_sends_continuation_after_sending_close(self):
+ # Since it isn't possible to send a close frame in a fragmented
+ # message (see test_server_send_close_in_fragmented_message), in fact,
+ # this is the same test as test_server_sends_unexpected_continuation.
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_continuation(b"", fin=False)
+ self.assertEqual(str(raised.exception), "unexpected continuation frame")
+
+ def test_client_receives_continuation_after_receiving_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE)
+ client.receive_data(b"\x00\x00")
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_continuation_after_receiving_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY)
+ server.receive_data(b"\x00\x80\x00\xff\x00\xff")
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+
+class TextTests(ProtocolTestCase):
+ """
+ Test text frames and continuation frames.
+
+ """
+
+ def test_client_sends_text(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_text("😀".encode())
+ self.assertEqual(
+ client.data_to_send(), [b"\x81\x84\x00\x00\x00\x00\xf0\x9f\x98\x80"]
+ )
+
+ def test_server_sends_text(self):
+ server = Protocol(SERVER)
+ server.send_text("😀".encode())
+ self.assertEqual(server.data_to_send(), [b"\x81\x04\xf0\x9f\x98\x80"])
+
+ def test_client_receives_text(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x81\x04\xf0\x9f\x98\x80")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, "😀".encode()),
+ )
+
+ def test_server_receives_text(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x81\x84\x00\x00\x00\x00\xf0\x9f\x98\x80")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, "😀".encode()),
+ )
+
+ def test_client_receives_text_over_size_limit(self):
+ client = Protocol(CLIENT, max_size=3)
+ client.receive_data(b"\x81\x04\xf0\x9f\x98\x80")
+ self.assertIsInstance(client.parser_exc, PayloadTooBig)
+ self.assertEqual(str(client.parser_exc), "over size limit (4 > 3 bytes)")
+ self.assertConnectionFailing(
+ client, CloseCode.MESSAGE_TOO_BIG, "over size limit (4 > 3 bytes)"
+ )
+
+ def test_server_receives_text_over_size_limit(self):
+ server = Protocol(SERVER, max_size=3)
+ server.receive_data(b"\x81\x84\x00\x00\x00\x00\xf0\x9f\x98\x80")
+ self.assertIsInstance(server.parser_exc, PayloadTooBig)
+ self.assertEqual(str(server.parser_exc), "over size limit (4 > 3 bytes)")
+ self.assertConnectionFailing(
+ server, CloseCode.MESSAGE_TOO_BIG, "over size limit (4 > 3 bytes)"
+ )
+
+ def test_client_receives_text_without_size_limit(self):
+ client = Protocol(CLIENT, max_size=None)
+ client.receive_data(b"\x81\x04\xf0\x9f\x98\x80")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, "😀".encode()),
+ )
+
+ def test_server_receives_text_without_size_limit(self):
+ server = Protocol(SERVER, max_size=None)
+ server.receive_data(b"\x81\x84\x00\x00\x00\x00\xf0\x9f\x98\x80")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, "😀".encode()),
+ )
+
+ def test_client_sends_fragmented_text(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_text("😀".encode()[:2], fin=False)
+ self.assertEqual(client.data_to_send(), [b"\x01\x82\x00\x00\x00\x00\xf0\x9f"])
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_continuation("😀😀".encode()[2:6], fin=False)
+ self.assertEqual(
+ client.data_to_send(), [b"\x00\x84\x00\x00\x00\x00\x98\x80\xf0\x9f"]
+ )
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_continuation("😀".encode()[2:], fin=True)
+ self.assertEqual(client.data_to_send(), [b"\x80\x82\x00\x00\x00\x00\x98\x80"])
+
+ def test_server_sends_fragmented_text(self):
+ server = Protocol(SERVER)
+ server.send_text("😀".encode()[:2], fin=False)
+ self.assertEqual(server.data_to_send(), [b"\x01\x02\xf0\x9f"])
+ server.send_continuation("😀😀".encode()[2:6], fin=False)
+ self.assertEqual(server.data_to_send(), [b"\x00\x04\x98\x80\xf0\x9f"])
+ server.send_continuation("😀".encode()[2:], fin=True)
+ self.assertEqual(server.data_to_send(), [b"\x80\x02\x98\x80"])
+
+ def test_client_receives_fragmented_text(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x01\x02\xf0\x9f")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ client.receive_data(b"\x00\x04\x98\x80\xf0\x9f")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, "😀😀".encode()[2:6], fin=False),
+ )
+ client.receive_data(b"\x80\x02\x98\x80")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, "😀".encode()[2:]),
+ )
+
+ def test_server_receives_fragmented_text(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x01\x82\x00\x00\x00\x00\xf0\x9f")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ server.receive_data(b"\x00\x84\x00\x00\x00\x00\x98\x80\xf0\x9f")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, "😀😀".encode()[2:6], fin=False),
+ )
+ server.receive_data(b"\x80\x82\x00\x00\x00\x00\x98\x80")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, "😀".encode()[2:]),
+ )
+
+ def test_client_receives_fragmented_text_over_size_limit(self):
+ client = Protocol(CLIENT, max_size=3)
+ client.receive_data(b"\x01\x02\xf0\x9f")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ client.receive_data(b"\x80\x02\x98\x80")
+ self.assertIsInstance(client.parser_exc, PayloadTooBig)
+ self.assertEqual(str(client.parser_exc), "over size limit (2 > 1 bytes)")
+ self.assertConnectionFailing(
+ client, CloseCode.MESSAGE_TOO_BIG, "over size limit (2 > 1 bytes)"
+ )
+
+ def test_server_receives_fragmented_text_over_size_limit(self):
+ server = Protocol(SERVER, max_size=3)
+ server.receive_data(b"\x01\x82\x00\x00\x00\x00\xf0\x9f")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ server.receive_data(b"\x80\x82\x00\x00\x00\x00\x98\x80")
+ self.assertIsInstance(server.parser_exc, PayloadTooBig)
+ self.assertEqual(str(server.parser_exc), "over size limit (2 > 1 bytes)")
+ self.assertConnectionFailing(
+ server, CloseCode.MESSAGE_TOO_BIG, "over size limit (2 > 1 bytes)"
+ )
+
+ def test_client_receives_fragmented_text_without_size_limit(self):
+ client = Protocol(CLIENT, max_size=None)
+ client.receive_data(b"\x01\x02\xf0\x9f")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ client.receive_data(b"\x00\x04\x98\x80\xf0\x9f")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, "😀😀".encode()[2:6], fin=False),
+ )
+ client.receive_data(b"\x80\x02\x98\x80")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, "😀".encode()[2:]),
+ )
+
+ def test_server_receives_fragmented_text_without_size_limit(self):
+ server = Protocol(SERVER, max_size=None)
+ server.receive_data(b"\x01\x82\x00\x00\x00\x00\xf0\x9f")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, "😀".encode()[:2], fin=False),
+ )
+ server.receive_data(b"\x00\x84\x00\x00\x00\x00\x98\x80\xf0\x9f")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, "😀😀".encode()[2:6], fin=False),
+ )
+ server.receive_data(b"\x80\x82\x00\x00\x00\x00\x98\x80")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, "😀".encode()[2:]),
+ )
+
+ def test_client_sends_unexpected_text(self):
+ client = Protocol(CLIENT)
+ client.send_text(b"", fin=False)
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_text(b"", fin=False)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+
+ def test_server_sends_unexpected_text(self):
+ server = Protocol(SERVER)
+ server.send_text(b"", fin=False)
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_text(b"", fin=False)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+
+ def test_client_receives_unexpected_text(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x01\x00")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, b"", fin=False),
+ )
+ client.receive_data(b"\x01\x00")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "expected a continuation frame")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "expected a continuation frame"
+ )
+
+ def test_server_receives_unexpected_text(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x01\x80\x00\x00\x00\x00")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, b"", fin=False),
+ )
+ server.receive_data(b"\x01\x80\x00\x00\x00\x00")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "expected a continuation frame")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "expected a continuation frame"
+ )
+
+ def test_client_sends_text_after_sending_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ with self.assertRaises(InvalidState):
+ client.send_text(b"")
+
+ def test_server_sends_text_after_sending_close(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ with self.assertRaises(InvalidState):
+ server.send_text(b"")
+
+ def test_client_receives_text_after_receiving_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE)
+ client.receive_data(b"\x81\x00")
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_text_after_receiving_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY)
+ server.receive_data(b"\x81\x80\x00\xff\x00\xff")
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+
+class BinaryTests(ProtocolTestCase):
+ """
+ Test binary frames and continuation frames.
+
+ """
+
+ def test_client_sends_binary(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_binary(b"\x01\x02\xfe\xff")
+ self.assertEqual(
+ client.data_to_send(), [b"\x82\x84\x00\x00\x00\x00\x01\x02\xfe\xff"]
+ )
+
+ def test_server_sends_binary(self):
+ server = Protocol(SERVER)
+ server.send_binary(b"\x01\x02\xfe\xff")
+ self.assertEqual(server.data_to_send(), [b"\x82\x04\x01\x02\xfe\xff"])
+
+ def test_client_receives_binary(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x82\x04\x01\x02\xfe\xff")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_BINARY, b"\x01\x02\xfe\xff"),
+ )
+
+ def test_server_receives_binary(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x82\x84\x00\x00\x00\x00\x01\x02\xfe\xff")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_BINARY, b"\x01\x02\xfe\xff"),
+ )
+
+ def test_client_receives_binary_over_size_limit(self):
+ client = Protocol(CLIENT, max_size=3)
+ client.receive_data(b"\x82\x04\x01\x02\xfe\xff")
+ self.assertIsInstance(client.parser_exc, PayloadTooBig)
+ self.assertEqual(str(client.parser_exc), "over size limit (4 > 3 bytes)")
+ self.assertConnectionFailing(
+ client, CloseCode.MESSAGE_TOO_BIG, "over size limit (4 > 3 bytes)"
+ )
+
+ def test_server_receives_binary_over_size_limit(self):
+ server = Protocol(SERVER, max_size=3)
+ server.receive_data(b"\x82\x84\x00\x00\x00\x00\x01\x02\xfe\xff")
+ self.assertIsInstance(server.parser_exc, PayloadTooBig)
+ self.assertEqual(str(server.parser_exc), "over size limit (4 > 3 bytes)")
+ self.assertConnectionFailing(
+ server, CloseCode.MESSAGE_TOO_BIG, "over size limit (4 > 3 bytes)"
+ )
+
+ def test_client_sends_fragmented_binary(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_binary(b"\x01\x02", fin=False)
+ self.assertEqual(client.data_to_send(), [b"\x02\x82\x00\x00\x00\x00\x01\x02"])
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_continuation(b"\xee\xff\x01\x02", fin=False)
+ self.assertEqual(
+ client.data_to_send(), [b"\x00\x84\x00\x00\x00\x00\xee\xff\x01\x02"]
+ )
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_continuation(b"\xee\xff", fin=True)
+ self.assertEqual(client.data_to_send(), [b"\x80\x82\x00\x00\x00\x00\xee\xff"])
+
+ def test_server_sends_fragmented_binary(self):
+ server = Protocol(SERVER)
+ server.send_binary(b"\x01\x02", fin=False)
+ self.assertEqual(server.data_to_send(), [b"\x02\x02\x01\x02"])
+ server.send_continuation(b"\xee\xff\x01\x02", fin=False)
+ self.assertEqual(server.data_to_send(), [b"\x00\x04\xee\xff\x01\x02"])
+ server.send_continuation(b"\xee\xff", fin=True)
+ self.assertEqual(server.data_to_send(), [b"\x80\x02\xee\xff"])
+
+ def test_client_receives_fragmented_binary(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x02\x02\x01\x02")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_BINARY, b"\x01\x02", fin=False),
+ )
+ client.receive_data(b"\x00\x04\xfe\xff\x01\x02")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, b"\xfe\xff\x01\x02", fin=False),
+ )
+ client.receive_data(b"\x80\x02\xfe\xff")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, b"\xfe\xff"),
+ )
+
+ def test_server_receives_fragmented_binary(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x02\x82\x00\x00\x00\x00\x01\x02")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_BINARY, b"\x01\x02", fin=False),
+ )
+ server.receive_data(b"\x00\x84\x00\x00\x00\x00\xee\xff\x01\x02")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, b"\xee\xff\x01\x02", fin=False),
+ )
+ server.receive_data(b"\x80\x82\x00\x00\x00\x00\xfe\xff")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, b"\xfe\xff"),
+ )
+
+ def test_client_receives_fragmented_binary_over_size_limit(self):
+ client = Protocol(CLIENT, max_size=3)
+ client.receive_data(b"\x02\x02\x01\x02")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_BINARY, b"\x01\x02", fin=False),
+ )
+ client.receive_data(b"\x80\x02\xfe\xff")
+ self.assertIsInstance(client.parser_exc, PayloadTooBig)
+ self.assertEqual(str(client.parser_exc), "over size limit (2 > 1 bytes)")
+ self.assertConnectionFailing(
+ client, CloseCode.MESSAGE_TOO_BIG, "over size limit (2 > 1 bytes)"
+ )
+
+ def test_server_receives_fragmented_binary_over_size_limit(self):
+ server = Protocol(SERVER, max_size=3)
+ server.receive_data(b"\x02\x82\x00\x00\x00\x00\x01\x02")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_BINARY, b"\x01\x02", fin=False),
+ )
+ server.receive_data(b"\x80\x82\x00\x00\x00\x00\xfe\xff")
+ self.assertIsInstance(server.parser_exc, PayloadTooBig)
+ self.assertEqual(str(server.parser_exc), "over size limit (2 > 1 bytes)")
+ self.assertConnectionFailing(
+ server, CloseCode.MESSAGE_TOO_BIG, "over size limit (2 > 1 bytes)"
+ )
+
+ def test_client_sends_unexpected_binary(self):
+ client = Protocol(CLIENT)
+ client.send_binary(b"", fin=False)
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_binary(b"", fin=False)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+
+ def test_server_sends_unexpected_binary(self):
+ server = Protocol(SERVER)
+ server.send_binary(b"", fin=False)
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_binary(b"", fin=False)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+
+ def test_client_receives_unexpected_binary(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x02\x00")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_BINARY, b"", fin=False),
+ )
+ client.receive_data(b"\x02\x00")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "expected a continuation frame")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "expected a continuation frame"
+ )
+
+ def test_server_receives_unexpected_binary(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x02\x80\x00\x00\x00\x00")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_BINARY, b"", fin=False),
+ )
+ server.receive_data(b"\x02\x80\x00\x00\x00\x00")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "expected a continuation frame")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "expected a continuation frame"
+ )
+
+ def test_client_sends_binary_after_sending_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ with self.assertRaises(InvalidState):
+ client.send_binary(b"")
+
+ def test_server_sends_binary_after_sending_close(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ with self.assertRaises(InvalidState):
+ server.send_binary(b"")
+
+ def test_client_receives_binary_after_receiving_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE)
+ client.receive_data(b"\x82\x00")
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_binary_after_receiving_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY)
+ server.receive_data(b"\x82\x80\x00\xff\x00\xff")
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+
+class CloseTests(ProtocolTestCase):
+ """
+ Test close frames.
+
+ See RFC 6544:
+
+ 5.5.1. Close
+ 7.1.6. The WebSocket Connection Close Reason
+ 7.1.7. Fail the WebSocket Connection
+
+ """
+
+ def test_close_code(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x04\x03\xe8OK")
+ client.receive_eof()
+ self.assertEqual(client.close_code, CloseCode.NORMAL_CLOSURE)
+
+ def test_close_reason(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x84\x00\x00\x00\x00\x03\xe8OK")
+ server.receive_eof()
+ self.assertEqual(server.close_reason, "OK")
+
+ def test_close_code_not_provided(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x00\x00\x00\x00")
+ server.receive_eof()
+ self.assertEqual(server.close_code, CloseCode.NO_STATUS_RCVD)
+
+ def test_close_reason_not_provided(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ client.receive_eof()
+ self.assertEqual(client.close_reason, "")
+
+ def test_close_code_not_available(self):
+ client = Protocol(CLIENT)
+ client.receive_eof()
+ self.assertEqual(client.close_code, CloseCode.ABNORMAL_CLOSURE)
+
+ def test_close_reason_not_available(self):
+ server = Protocol(SERVER)
+ server.receive_eof()
+ self.assertEqual(server.close_reason, "")
+
+ def test_close_code_not_available_yet(self):
+ server = Protocol(SERVER)
+ self.assertIsNone(server.close_code)
+
+ def test_close_reason_not_available_yet(self):
+ client = Protocol(CLIENT)
+ self.assertIsNone(client.close_reason)
+
+ def test_client_sends_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x3c\x3c\x3c\x3c"):
+ client.send_close()
+ self.assertEqual(client.data_to_send(), [b"\x88\x80\x3c\x3c\x3c\x3c"])
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_sends_close(self):
+ server = Protocol(SERVER)
+ server.send_close()
+ self.assertEqual(server.data_to_send(), [b"\x88\x00"])
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_receives_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x3c\x3c\x3c\x3c"):
+ client.receive_data(b"\x88\x00")
+ self.assertEqual(client.events_received(), [Frame(OP_CLOSE, b"")])
+ self.assertEqual(client.data_to_send(), [b"\x88\x80\x3c\x3c\x3c\x3c"])
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_receives_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertEqual(server.events_received(), [Frame(OP_CLOSE, b"")])
+ self.assertEqual(server.data_to_send(), [b"\x88\x00", b""])
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_sends_close_then_receives_close(self):
+ # Client-initiated close handshake on the client side.
+ client = Protocol(CLIENT)
+
+ client.send_close()
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, Frame(OP_CLOSE, b""))
+
+ client.receive_data(b"\x88\x00")
+ self.assertFrameReceived(client, Frame(OP_CLOSE, b""))
+ self.assertFrameSent(client, None)
+
+ client.receive_eof()
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None, eof=True)
+
+ def test_server_sends_close_then_receives_close(self):
+ # Server-initiated close handshake on the server side.
+ server = Protocol(SERVER)
+
+ server.send_close()
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, Frame(OP_CLOSE, b""))
+
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertFrameReceived(server, Frame(OP_CLOSE, b""))
+ self.assertFrameSent(server, None, eof=True)
+
+ server.receive_eof()
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+ def test_client_receives_close_then_sends_close(self):
+ # Server-initiated close handshake on the client side.
+ client = Protocol(CLIENT)
+
+ client.receive_data(b"\x88\x00")
+ self.assertFrameReceived(client, Frame(OP_CLOSE, b""))
+ self.assertFrameSent(client, Frame(OP_CLOSE, b""))
+
+ client.receive_eof()
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None, eof=True)
+
+ def test_server_receives_close_then_sends_close(self):
+ # Client-initiated close handshake on the server side.
+ server = Protocol(SERVER)
+
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertFrameReceived(server, Frame(OP_CLOSE, b""))
+ self.assertFrameSent(server, Frame(OP_CLOSE, b""), eof=True)
+
+ server.receive_eof()
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+ def test_client_sends_close_with_code(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_sends_close_with_code(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_receives_close_with_code(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE, "")
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_receives_close_with_code(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY, "")
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_sends_close_with_code_and_reason(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY, "going away")
+ self.assertEqual(
+ client.data_to_send(), [b"\x88\x8c\x00\x00\x00\x00\x03\xe9going away"]
+ )
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_sends_close_with_code_and_reason(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE, "OK")
+ self.assertEqual(server.data_to_send(), [b"\x88\x04\x03\xe8OK"])
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_receives_close_with_code_and_reason(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x04\x03\xe8OK")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE, "OK")
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_receives_close_with_code_and_reason(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x8c\x00\x00\x00\x00\x03\xe9going away")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY, "going away")
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_sends_close_with_reason_only(self):
+ client = Protocol(CLIENT)
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_close(reason="going away")
+ self.assertEqual(str(raised.exception), "cannot send a reason without a code")
+
+ def test_server_sends_close_with_reason_only(self):
+ server = Protocol(SERVER)
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_close(reason="OK")
+ self.assertEqual(str(raised.exception), "cannot send a reason without a code")
+
+ def test_client_receives_close_with_truncated_code(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x01\x03")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "close frame too short")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "close frame too short"
+ )
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_receives_close_with_truncated_code(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x81\x00\x00\x00\x00\x03")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "close frame too short")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "close frame too short"
+ )
+ self.assertIs(server.state, CLOSING)
+
+ def test_client_receives_close_with_non_utf8_reason(self):
+ client = Protocol(CLIENT)
+
+ client.receive_data(b"\x88\x04\x03\xe8\xff\xff")
+ self.assertIsInstance(client.parser_exc, UnicodeDecodeError)
+ self.assertEqual(
+ str(client.parser_exc),
+ "'utf-8' codec can't decode byte 0xff in position 0: invalid start byte",
+ )
+ self.assertConnectionFailing(
+ client, CloseCode.INVALID_DATA, "invalid start byte at position 0"
+ )
+ self.assertIs(client.state, CLOSING)
+
+ def test_server_receives_close_with_non_utf8_reason(self):
+ server = Protocol(SERVER)
+
+ server.receive_data(b"\x88\x84\x00\x00\x00\x00\x03\xe9\xff\xff")
+ self.assertIsInstance(server.parser_exc, UnicodeDecodeError)
+ self.assertEqual(
+ str(server.parser_exc),
+ "'utf-8' codec can't decode byte 0xff in position 0: invalid start byte",
+ )
+ self.assertConnectionFailing(
+ server, CloseCode.INVALID_DATA, "invalid start byte at position 0"
+ )
+ self.assertIs(server.state, CLOSING)
+
+
+class PingTests(ProtocolTestCase):
+ """
+ Test ping. See 5.5.2. Ping in RFC 6544.
+
+ """
+
+ def test_client_sends_ping(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x44\x88\xcc"):
+ client.send_ping(b"")
+ self.assertEqual(client.data_to_send(), [b"\x89\x80\x00\x44\x88\xcc"])
+
+ def test_server_sends_ping(self):
+ server = Protocol(SERVER)
+ server.send_ping(b"")
+ self.assertEqual(server.data_to_send(), [b"\x89\x00"])
+
+ def test_client_receives_ping(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x89\x00")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PING, b""),
+ )
+ self.assertFrameSent(
+ client,
+ Frame(OP_PONG, b""),
+ )
+
+ def test_server_receives_ping(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x89\x80\x00\x44\x88\xcc")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PING, b""),
+ )
+ self.assertFrameSent(
+ server,
+ Frame(OP_PONG, b""),
+ )
+
+ def test_client_sends_ping_with_data(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x44\x88\xcc"):
+ client.send_ping(b"\x22\x66\xaa\xee")
+ self.assertEqual(
+ client.data_to_send(), [b"\x89\x84\x00\x44\x88\xcc\x22\x22\x22\x22"]
+ )
+
+ def test_server_sends_ping_with_data(self):
+ server = Protocol(SERVER)
+ server.send_ping(b"\x22\x66\xaa\xee")
+ self.assertEqual(server.data_to_send(), [b"\x89\x04\x22\x66\xaa\xee"])
+
+ def test_client_receives_ping_with_data(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x89\x04\x22\x66\xaa\xee")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PING, b"\x22\x66\xaa\xee"),
+ )
+ self.assertFrameSent(
+ client,
+ Frame(OP_PONG, b"\x22\x66\xaa\xee"),
+ )
+
+ def test_server_receives_ping_with_data(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x89\x84\x00\x44\x88\xcc\x22\x22\x22\x22")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PING, b"\x22\x66\xaa\xee"),
+ )
+ self.assertFrameSent(
+ server,
+ Frame(OP_PONG, b"\x22\x66\xaa\xee"),
+ )
+
+ def test_client_sends_fragmented_ping_frame(self):
+ client = Protocol(CLIENT)
+ # This is only possible through a private API.
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_frame(Frame(OP_PING, b"", fin=False))
+ self.assertEqual(str(raised.exception), "fragmented control frame")
+
+ def test_server_sends_fragmented_ping_frame(self):
+ server = Protocol(SERVER)
+ # This is only possible through a private API.
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_frame(Frame(OP_PING, b"", fin=False))
+ self.assertEqual(str(raised.exception), "fragmented control frame")
+
+ def test_client_receives_fragmented_ping_frame(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x09\x00")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "fragmented control frame")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "fragmented control frame"
+ )
+
+ def test_server_receives_fragmented_ping_frame(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x09\x80\x3c\x3c\x3c\x3c")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "fragmented control frame")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "fragmented control frame"
+ )
+
+ def test_client_sends_ping_after_sending_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ # The spec says: "An endpoint MAY send a Ping frame any time (...)
+ # before the connection is closed" but websockets doesn't support
+ # sending a Ping frame after a Close frame.
+ with self.assertRaises(InvalidState) as raised:
+ client.send_ping(b"")
+ self.assertEqual(
+ str(raised.exception),
+ "cannot write to a WebSocket in the CLOSING state",
+ )
+
+ def test_server_sends_ping_after_sending_close(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ # The spec says: "An endpoint MAY send a Ping frame any time (...)
+ # before the connection is closed" but websockets doesn't support
+ # sending a Ping frame after a Close frame.
+ with self.assertRaises(InvalidState) as raised:
+ server.send_ping(b"")
+ self.assertEqual(
+ str(raised.exception),
+ "cannot write to a WebSocket in the CLOSING state",
+ )
+
+ def test_client_receives_ping_after_receiving_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE)
+ client.receive_data(b"\x89\x04\x22\x66\xaa\xee")
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_ping_after_receiving_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY)
+ server.receive_data(b"\x89\x84\x00\x44\x88\xcc\x22\x22\x22\x22")
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+
+class PongTests(ProtocolTestCase):
+ """
+ Test pong frames. See 5.5.3. Pong in RFC 6544.
+
+ """
+
+ def test_client_sends_pong(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x44\x88\xcc"):
+ client.send_pong(b"")
+ self.assertEqual(client.data_to_send(), [b"\x8a\x80\x00\x44\x88\xcc"])
+
+ def test_server_sends_pong(self):
+ server = Protocol(SERVER)
+ server.send_pong(b"")
+ self.assertEqual(server.data_to_send(), [b"\x8a\x00"])
+
+ def test_client_receives_pong(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x8a\x00")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PONG, b""),
+ )
+
+ def test_server_receives_pong(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x8a\x80\x00\x44\x88\xcc")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PONG, b""),
+ )
+
+ def test_client_sends_pong_with_data(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x44\x88\xcc"):
+ client.send_pong(b"\x22\x66\xaa\xee")
+ self.assertEqual(
+ client.data_to_send(), [b"\x8a\x84\x00\x44\x88\xcc\x22\x22\x22\x22"]
+ )
+
+ def test_server_sends_pong_with_data(self):
+ server = Protocol(SERVER)
+ server.send_pong(b"\x22\x66\xaa\xee")
+ self.assertEqual(server.data_to_send(), [b"\x8a\x04\x22\x66\xaa\xee"])
+
+ def test_client_receives_pong_with_data(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x8a\x04\x22\x66\xaa\xee")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PONG, b"\x22\x66\xaa\xee"),
+ )
+
+ def test_server_receives_pong_with_data(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x8a\x84\x00\x44\x88\xcc\x22\x22\x22\x22")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PONG, b"\x22\x66\xaa\xee"),
+ )
+
+ def test_client_sends_fragmented_pong_frame(self):
+ client = Protocol(CLIENT)
+ # This is only possible through a private API.
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_frame(Frame(OP_PONG, b"", fin=False))
+ self.assertEqual(str(raised.exception), "fragmented control frame")
+
+ def test_server_sends_fragmented_pong_frame(self):
+ server = Protocol(SERVER)
+ # This is only possible through a private API.
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_frame(Frame(OP_PONG, b"", fin=False))
+ self.assertEqual(str(raised.exception), "fragmented control frame")
+
+ def test_client_receives_fragmented_pong_frame(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x0a\x00")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "fragmented control frame")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "fragmented control frame"
+ )
+
+ def test_server_receives_fragmented_pong_frame(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x0a\x80\x3c\x3c\x3c\x3c")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "fragmented control frame")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "fragmented control frame"
+ )
+
+ def test_client_sends_pong_after_sending_close(self):
+ client = Protocol(CLIENT)
+ with self.enforce_mask(b"\x00\x00\x00\x00"):
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(client.data_to_send(), [b"\x88\x82\x00\x00\x00\x00\x03\xe9"])
+ # websockets doesn't support sending a Pong frame after a Close frame.
+ with self.assertRaises(InvalidState):
+ client.send_pong(b"")
+
+ def test_server_sends_pong_after_sending_close(self):
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(server.data_to_send(), [b"\x88\x02\x03\xe8"])
+ # websockets doesn't support sending a Pong frame after a Close frame.
+ with self.assertRaises(InvalidState):
+ server.send_pong(b"")
+
+ def test_client_receives_pong_after_receiving_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertConnectionClosing(client, CloseCode.NORMAL_CLOSURE)
+ client.receive_data(b"\x8a\x04\x22\x66\xaa\xee")
+ self.assertFrameReceived(client, None)
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_pong_after_receiving_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertConnectionClosing(server, CloseCode.GOING_AWAY)
+ server.receive_data(b"\x8a\x84\x00\x44\x88\xcc\x22\x22\x22\x22")
+ self.assertFrameReceived(server, None)
+ self.assertFrameSent(server, None)
+
+
+class FailTests(ProtocolTestCase):
+ """
+ Test failing the connection.
+
+ See 7.1.7. Fail the WebSocket Connection in RFC 6544.
+
+ """
+
+ def test_client_stops_processing_frames_after_fail(self):
+ client = Protocol(CLIENT)
+ client.fail(CloseCode.PROTOCOL_ERROR)
+ self.assertConnectionFailing(client, CloseCode.PROTOCOL_ERROR)
+ client.receive_data(b"\x88\x02\x03\xea")
+ self.assertFrameReceived(client, None)
+
+ def test_server_stops_processing_frames_after_fail(self):
+ server = Protocol(SERVER)
+ server.fail(CloseCode.PROTOCOL_ERROR)
+ self.assertConnectionFailing(server, CloseCode.PROTOCOL_ERROR)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xea")
+ self.assertFrameReceived(server, None)
+
+
+class FragmentationTests(ProtocolTestCase):
+ """
+ Test message fragmentation.
+
+ See 5.4. Fragmentation in RFC 6544.
+
+ """
+
+ def test_client_send_ping_pong_in_fragmented_message(self):
+ client = Protocol(CLIENT)
+ client.send_text(b"Spam", fin=False)
+ self.assertFrameSent(client, Frame(OP_TEXT, b"Spam", fin=False))
+ client.send_ping(b"Ping")
+ self.assertFrameSent(client, Frame(OP_PING, b"Ping"))
+ client.send_continuation(b"Ham", fin=False)
+ self.assertFrameSent(client, Frame(OP_CONT, b"Ham", fin=False))
+ client.send_pong(b"Pong")
+ self.assertFrameSent(client, Frame(OP_PONG, b"Pong"))
+ client.send_continuation(b"Eggs", fin=True)
+ self.assertFrameSent(client, Frame(OP_CONT, b"Eggs"))
+
+ def test_server_send_ping_pong_in_fragmented_message(self):
+ server = Protocol(SERVER)
+ server.send_text(b"Spam", fin=False)
+ self.assertFrameSent(server, Frame(OP_TEXT, b"Spam", fin=False))
+ server.send_ping(b"Ping")
+ self.assertFrameSent(server, Frame(OP_PING, b"Ping"))
+ server.send_continuation(b"Ham", fin=False)
+ self.assertFrameSent(server, Frame(OP_CONT, b"Ham", fin=False))
+ server.send_pong(b"Pong")
+ self.assertFrameSent(server, Frame(OP_PONG, b"Pong"))
+ server.send_continuation(b"Eggs", fin=True)
+ self.assertFrameSent(server, Frame(OP_CONT, b"Eggs"))
+
+ def test_client_receive_ping_pong_in_fragmented_message(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x01\x04Spam")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, b"Spam", fin=False),
+ )
+ client.receive_data(b"\x89\x04Ping")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PING, b"Ping"),
+ )
+ self.assertFrameSent(
+ client,
+ Frame(OP_PONG, b"Ping"),
+ )
+ client.receive_data(b"\x00\x03Ham")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, b"Ham", fin=False),
+ )
+ client.receive_data(b"\x8a\x04Pong")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_PONG, b"Pong"),
+ )
+ client.receive_data(b"\x80\x04Eggs")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_CONT, b"Eggs"),
+ )
+
+ def test_server_receive_ping_pong_in_fragmented_message(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x01\x84\x00\x00\x00\x00Spam")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, b"Spam", fin=False),
+ )
+ server.receive_data(b"\x89\x84\x00\x00\x00\x00Ping")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PING, b"Ping"),
+ )
+ self.assertFrameSent(
+ server,
+ Frame(OP_PONG, b"Ping"),
+ )
+ server.receive_data(b"\x00\x83\x00\x00\x00\x00Ham")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, b"Ham", fin=False),
+ )
+ server.receive_data(b"\x8a\x84\x00\x00\x00\x00Pong")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_PONG, b"Pong"),
+ )
+ server.receive_data(b"\x80\x84\x00\x00\x00\x00Eggs")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_CONT, b"Eggs"),
+ )
+
+ def test_client_send_close_in_fragmented_message(self):
+ client = Protocol(CLIENT)
+ client.send_text(b"Spam", fin=False)
+ self.assertFrameSent(client, Frame(OP_TEXT, b"Spam", fin=False))
+ # The spec says: "An endpoint MUST be capable of handling control
+ # frames in the middle of a fragmented message." However, since the
+ # endpoint must not send a data frame after a close frame, a close
+ # frame can't be "in the middle" of a fragmented message.
+ with self.assertRaises(ProtocolError) as raised:
+ client.send_close(CloseCode.GOING_AWAY)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+ client.send_continuation(b"Eggs", fin=True)
+
+ def test_server_send_close_in_fragmented_message(self):
+ server = Protocol(CLIENT)
+ server.send_text(b"Spam", fin=False)
+ self.assertFrameSent(server, Frame(OP_TEXT, b"Spam", fin=False))
+ # The spec says: "An endpoint MUST be capable of handling control
+ # frames in the middle of a fragmented message." However, since the
+ # endpoint must not send a data frame after a close frame, a close
+ # frame can't be "in the middle" of a fragmented message.
+ with self.assertRaises(ProtocolError) as raised:
+ server.send_close(CloseCode.NORMAL_CLOSURE)
+ self.assertEqual(str(raised.exception), "expected a continuation frame")
+
+ def test_client_receive_close_in_fragmented_message(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x01\x04Spam")
+ self.assertFrameReceived(
+ client,
+ Frame(OP_TEXT, b"Spam", fin=False),
+ )
+ # The spec says: "An endpoint MUST be capable of handling control
+ # frames in the middle of a fragmented message." However, since the
+ # endpoint must not send a data frame after a close frame, a close
+ # frame can't be "in the middle" of a fragmented message.
+ client.receive_data(b"\x88\x02\x03\xe8")
+ self.assertIsInstance(client.parser_exc, ProtocolError)
+ self.assertEqual(str(client.parser_exc), "incomplete fragmented message")
+ self.assertConnectionFailing(
+ client, CloseCode.PROTOCOL_ERROR, "incomplete fragmented message"
+ )
+
+ def test_server_receive_close_in_fragmented_message(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x01\x84\x00\x00\x00\x00Spam")
+ self.assertFrameReceived(
+ server,
+ Frame(OP_TEXT, b"Spam", fin=False),
+ )
+ # The spec says: "An endpoint MUST be capable of handling control
+ # frames in the middle of a fragmented message." However, since the
+ # endpoint must not send a data frame after a close frame, a close
+ # frame can't be "in the middle" of a fragmented message.
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe9")
+ self.assertIsInstance(server.parser_exc, ProtocolError)
+ self.assertEqual(str(server.parser_exc), "incomplete fragmented message")
+ self.assertConnectionFailing(
+ server, CloseCode.PROTOCOL_ERROR, "incomplete fragmented message"
+ )
+
+
+class EOFTests(ProtocolTestCase):
+ """
+ Test half-closes on connection termination.
+
+ """
+
+ def test_client_receives_eof(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ self.assertConnectionClosing(client)
+ client.receive_eof()
+ self.assertIs(client.state, CLOSED)
+
+ def test_server_receives_eof(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertConnectionClosing(server)
+ server.receive_eof()
+ self.assertIs(server.state, CLOSED)
+
+ def test_client_receives_eof_between_frames(self):
+ client = Protocol(CLIENT)
+ client.receive_eof()
+ self.assertIsInstance(client.parser_exc, EOFError)
+ self.assertEqual(str(client.parser_exc), "unexpected end of stream")
+ self.assertIs(client.state, CLOSED)
+
+ def test_server_receives_eof_between_frames(self):
+ server = Protocol(SERVER)
+ server.receive_eof()
+ self.assertIsInstance(server.parser_exc, EOFError)
+ self.assertEqual(str(server.parser_exc), "unexpected end of stream")
+ self.assertIs(server.state, CLOSED)
+
+ def test_client_receives_eof_inside_frame(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x81")
+ client.receive_eof()
+ self.assertIsInstance(client.parser_exc, EOFError)
+ self.assertEqual(
+ str(client.parser_exc),
+ "stream ends after 1 bytes, expected 2 bytes",
+ )
+ self.assertIs(client.state, CLOSED)
+
+ def test_server_receives_eof_inside_frame(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x81")
+ server.receive_eof()
+ self.assertIsInstance(server.parser_exc, EOFError)
+ self.assertEqual(
+ str(server.parser_exc),
+ "stream ends after 1 bytes, expected 2 bytes",
+ )
+ self.assertIs(server.state, CLOSED)
+
+ def test_client_receives_data_after_exception(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(client, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ client.receive_data(b"\x00\x00")
+ self.assertFrameSent(client, None)
+
+ def test_server_receives_data_after_exception(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(server, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ server.receive_data(b"\x00\x00")
+ self.assertFrameSent(server, None)
+
+ def test_client_receives_eof_after_exception(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(client, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ client.receive_eof()
+ self.assertFrameSent(client, None, eof=True)
+
+ def test_server_receives_eof_after_exception(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(server, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ server.receive_eof()
+ self.assertFrameSent(server, None)
+
+ def test_client_receives_data_and_eof_after_exception(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(client, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ client.receive_data(b"\x00\x00")
+ client.receive_eof()
+ self.assertFrameSent(client, None, eof=True)
+
+ def test_server_receives_data_and_eof_after_exception(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\xff\xff")
+ self.assertConnectionFailing(server, CloseCode.PROTOCOL_ERROR, "invalid opcode")
+ server.receive_data(b"\x00\x00")
+ server.receive_eof()
+ self.assertFrameSent(server, None)
+
+ def test_client_receives_data_after_eof(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ self.assertConnectionClosing(client)
+ client.receive_eof()
+ with self.assertRaises(EOFError) as raised:
+ client.receive_data(b"\x88\x00")
+ self.assertEqual(str(raised.exception), "stream ended")
+
+ def test_server_receives_data_after_eof(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertConnectionClosing(server)
+ server.receive_eof()
+ with self.assertRaises(EOFError) as raised:
+ server.receive_data(b"\x88\x80\x00\x00\x00\x00")
+ self.assertEqual(str(raised.exception), "stream ended")
+
+ def test_client_receives_eof_after_eof(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ self.assertConnectionClosing(client)
+ client.receive_eof()
+ with self.assertRaises(EOFError) as raised:
+ client.receive_eof()
+ self.assertEqual(str(raised.exception), "stream ended")
+
+ def test_server_receives_eof_after_eof(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertConnectionClosing(server)
+ server.receive_eof()
+ with self.assertRaises(EOFError) as raised:
+ server.receive_eof()
+ self.assertEqual(str(raised.exception), "stream ended")
+
+
+class TCPCloseTests(ProtocolTestCase):
+ """
+ Test expectation of TCP close on connection termination.
+
+ """
+
+ def test_client_default(self):
+ client = Protocol(CLIENT)
+ self.assertFalse(client.close_expected())
+
+ def test_server_default(self):
+ server = Protocol(SERVER)
+ self.assertFalse(server.close_expected())
+
+ def test_client_sends_close(self):
+ client = Protocol(CLIENT)
+ client.send_close()
+ self.assertTrue(client.close_expected())
+
+ def test_server_sends_close(self):
+ server = Protocol(SERVER)
+ server.send_close()
+ self.assertTrue(server.close_expected())
+
+ def test_client_receives_close(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ self.assertTrue(client.close_expected())
+
+ def test_client_receives_close_then_eof(self):
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x00")
+ client.receive_eof()
+ self.assertFalse(client.close_expected())
+
+ def test_server_receives_close_then_eof(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ server.receive_eof()
+ self.assertFalse(server.close_expected())
+
+ def test_server_receives_close(self):
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x80\x3c\x3c\x3c\x3c")
+ self.assertTrue(server.close_expected())
+
+ def test_client_fails_connection(self):
+ client = Protocol(CLIENT)
+ client.fail(CloseCode.PROTOCOL_ERROR)
+ self.assertTrue(client.close_expected())
+
+ def test_server_fails_connection(self):
+ server = Protocol(SERVER)
+ server.fail(CloseCode.PROTOCOL_ERROR)
+ self.assertTrue(server.close_expected())
+
+
+class ConnectionClosedTests(ProtocolTestCase):
+ """
+ Test connection closed exception.
+
+ """
+
+ def test_client_sends_close_then_receives_close(self):
+ # Client-initiated close handshake on the client side complete.
+ client = Protocol(CLIENT)
+ client.send_close(CloseCode.NORMAL_CLOSURE, "")
+ client.receive_data(b"\x88\x02\x03\xe8")
+ client.receive_eof()
+ exc = client.close_exc
+ self.assertIsInstance(exc, ConnectionClosedOK)
+ self.assertEqual(exc.rcvd, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertFalse(exc.rcvd_then_sent)
+
+ def test_server_sends_close_then_receives_close(self):
+ # Server-initiated close handshake on the server side complete.
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE, "")
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe8")
+ server.receive_eof()
+ exc = server.close_exc
+ self.assertIsInstance(exc, ConnectionClosedOK)
+ self.assertEqual(exc.rcvd, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertFalse(exc.rcvd_then_sent)
+
+ def test_client_receives_close_then_sends_close(self):
+ # Server-initiated close handshake on the client side complete.
+ client = Protocol(CLIENT)
+ client.receive_data(b"\x88\x02\x03\xe8")
+ client.receive_eof()
+ exc = client.close_exc
+ self.assertIsInstance(exc, ConnectionClosedOK)
+ self.assertEqual(exc.rcvd, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertTrue(exc.rcvd_then_sent)
+
+ def test_server_receives_close_then_sends_close(self):
+ # Client-initiated close handshake on the server side complete.
+ server = Protocol(SERVER)
+ server.receive_data(b"\x88\x82\x00\x00\x00\x00\x03\xe8")
+ server.receive_eof()
+ exc = server.close_exc
+ self.assertIsInstance(exc, ConnectionClosedOK)
+ self.assertEqual(exc.rcvd, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertTrue(exc.rcvd_then_sent)
+
+ def test_client_sends_close_then_receives_eof(self):
+ # Client-initiated close handshake on the client side times out.
+ client = Protocol(CLIENT)
+ client.send_close(CloseCode.NORMAL_CLOSURE, "")
+ client.receive_eof()
+ exc = client.close_exc
+ self.assertIsInstance(exc, ConnectionClosedError)
+ self.assertIsNone(exc.rcvd)
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertIsNone(exc.rcvd_then_sent)
+
+ def test_server_sends_close_then_receives_eof(self):
+ # Server-initiated close handshake on the server side times out.
+ server = Protocol(SERVER)
+ server.send_close(CloseCode.NORMAL_CLOSURE, "")
+ server.receive_eof()
+ exc = server.close_exc
+ self.assertIsInstance(exc, ConnectionClosedError)
+ self.assertIsNone(exc.rcvd)
+ self.assertEqual(exc.sent, Close(CloseCode.NORMAL_CLOSURE, ""))
+ self.assertIsNone(exc.rcvd_then_sent)
+
+ def test_client_receives_eof(self):
+ # Server-initiated close handshake on the client side times out.
+ client = Protocol(CLIENT)
+ client.receive_eof()
+ exc = client.close_exc
+ self.assertIsInstance(exc, ConnectionClosedError)
+ self.assertIsNone(exc.rcvd)
+ self.assertIsNone(exc.sent)
+ self.assertIsNone(exc.rcvd_then_sent)
+
+ def test_server_receives_eof(self):
+ # Client-initiated close handshake on the server side times out.
+ server = Protocol(SERVER)
+ server.receive_eof()
+ exc = server.close_exc
+ self.assertIsInstance(exc, ConnectionClosedError)
+ self.assertIsNone(exc.rcvd)
+ self.assertIsNone(exc.sent)
+ self.assertIsNone(exc.rcvd_then_sent)
+
+
+class ErrorTests(ProtocolTestCase):
+ """
+ Test other error cases.
+
+ """
+
+ def test_client_hits_internal_error_reading_frame(self):
+ client = Protocol(CLIENT)
+ # This isn't supposed to happen, so we're simulating it.
+ with unittest.mock.patch("struct.unpack", side_effect=RuntimeError("BOOM")):
+ client.receive_data(b"\x81\x00")
+ self.assertIsInstance(client.parser_exc, RuntimeError)
+ self.assertEqual(str(client.parser_exc), "BOOM")
+ self.assertConnectionFailing(client, CloseCode.INTERNAL_ERROR, "")
+
+ def test_server_hits_internal_error_reading_frame(self):
+ server = Protocol(SERVER)
+ # This isn't supposed to happen, so we're simulating it.
+ with unittest.mock.patch("struct.unpack", side_effect=RuntimeError("BOOM")):
+ server.receive_data(b"\x81\x80\x00\x00\x00\x00")
+ self.assertIsInstance(server.parser_exc, RuntimeError)
+ self.assertEqual(str(server.parser_exc), "BOOM")
+ self.assertConnectionFailing(server, CloseCode.INTERNAL_ERROR, "")
+
+
+class ExtensionsTests(ProtocolTestCase):
+ """
+ Test how extensions affect frames.
+
+ """
+
+ def test_client_extension_encodes_frame(self):
+ client = Protocol(CLIENT)
+ client.extensions = [Rsv2Extension()]
+ with self.enforce_mask(b"\x00\x44\x88\xcc"):
+ client.send_ping(b"")
+ self.assertEqual(client.data_to_send(), [b"\xa9\x80\x00\x44\x88\xcc"])
+
+ def test_server_extension_encodes_frame(self):
+ server = Protocol(SERVER)
+ server.extensions = [Rsv2Extension()]
+ server.send_ping(b"")
+ self.assertEqual(server.data_to_send(), [b"\xa9\x00"])
+
+ def test_client_extension_decodes_frame(self):
+ client = Protocol(CLIENT)
+ client.extensions = [Rsv2Extension()]
+ client.receive_data(b"\xaa\x00")
+ self.assertEqual(client.events_received(), [Frame(OP_PONG, b"")])
+
+ def test_server_extension_decodes_frame(self):
+ server = Protocol(SERVER)
+ server.extensions = [Rsv2Extension()]
+ server.receive_data(b"\xaa\x80\x00\x44\x88\xcc")
+ self.assertEqual(server.events_received(), [Frame(OP_PONG, b"")])
+
+
+class MiscTests(unittest.TestCase):
+ def test_client_default_logger(self):
+ client = Protocol(CLIENT)
+ logger = logging.getLogger("websockets.client")
+ self.assertIs(client.logger, logger)
+
+ def test_server_default_logger(self):
+ server = Protocol(SERVER)
+ logger = logging.getLogger("websockets.server")
+ self.assertIs(server.logger, logger)
+
+ def test_client_custom_logger(self):
+ logger = logging.getLogger("test")
+ client = Protocol(CLIENT, logger=logger)
+ self.assertIs(client.logger, logger)
+
+ def test_server_custom_logger(self):
+ logger = logging.getLogger("test")
+ server = Protocol(SERVER, logger=logger)
+ self.assertIs(server.logger, logger)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_server.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_server.py
new file mode 100644
index 0000000000..b6f5e35681
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_server.py
@@ -0,0 +1,686 @@
+import http
+import logging
+import unittest
+import unittest.mock
+
+from websockets.datastructures import Headers
+from websockets.exceptions import (
+ InvalidHeader,
+ InvalidOrigin,
+ InvalidUpgrade,
+ NegotiationError,
+)
+from websockets.frames import OP_TEXT, Frame
+from websockets.http11 import Request, Response
+from websockets.protocol import CONNECTING, OPEN
+from websockets.server import *
+
+from .extensions.utils import (
+ OpExtension,
+ Rsv2Extension,
+ ServerOpExtensionFactory,
+ ServerRsv2ExtensionFactory,
+)
+from .test_utils import ACCEPT, KEY
+from .utils import DATE, DeprecationTestCase
+
+
+class ConnectTests(unittest.TestCase):
+ def test_receive_connect(self):
+ server = ServerProtocol()
+ server.receive_data(
+ (
+ f"GET /test HTTP/1.1\r\n"
+ f"Host: example.com\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Key: {KEY}\r\n"
+ f"Sec-WebSocket-Version: 13\r\n"
+ f"\r\n"
+ ).encode(),
+ )
+ [request] = server.events_received()
+ self.assertIsInstance(request, Request)
+ self.assertEqual(server.data_to_send(), [])
+ self.assertFalse(server.close_expected())
+
+ def test_connect_request(self):
+ server = ServerProtocol()
+ server.receive_data(
+ (
+ f"GET /test HTTP/1.1\r\n"
+ f"Host: example.com\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Key: {KEY}\r\n"
+ f"Sec-WebSocket-Version: 13\r\n"
+ f"\r\n"
+ ).encode(),
+ )
+ [request] = server.events_received()
+ self.assertEqual(request.path, "/test")
+ self.assertEqual(
+ request.headers,
+ Headers(
+ {
+ "Host": "example.com",
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Key": KEY,
+ "Sec-WebSocket-Version": "13",
+ }
+ ),
+ )
+
+ def test_no_request(self):
+ server = ServerProtocol()
+ server.receive_eof()
+ self.assertEqual(server.events_received(), [])
+
+ def test_partial_request(self):
+ server = ServerProtocol()
+ server.receive_data(b"GET /test HTTP/1.1\r\n")
+ server.receive_eof()
+ self.assertEqual(server.events_received(), [])
+
+ def test_random_request(self):
+ server = ServerProtocol()
+ server.receive_data(b"HELO relay.invalid\r\n")
+ server.receive_data(b"MAIL FROM: <alice@invalid>\r\n")
+ server.receive_data(b"RCPT TO: <bob@invalid>\r\n")
+ self.assertEqual(server.events_received(), [])
+
+
+class AcceptRejectTests(unittest.TestCase):
+ def make_request(self):
+ return Request(
+ path="/test",
+ headers=Headers(
+ {
+ "Host": "example.com",
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Key": KEY,
+ "Sec-WebSocket-Version": "13",
+ }
+ ),
+ )
+
+ def test_send_accept(self):
+ server = ServerProtocol()
+ with unittest.mock.patch("email.utils.formatdate", return_value=DATE):
+ response = server.accept(self.make_request())
+ self.assertIsInstance(response, Response)
+ server.send_response(response)
+ self.assertEqual(
+ server.data_to_send(),
+ [
+ f"HTTP/1.1 101 Switching Protocols\r\n"
+ f"Date: {DATE}\r\n"
+ f"Upgrade: websocket\r\n"
+ f"Connection: Upgrade\r\n"
+ f"Sec-WebSocket-Accept: {ACCEPT}\r\n"
+ f"\r\n".encode()
+ ],
+ )
+ self.assertFalse(server.close_expected())
+ self.assertEqual(server.state, OPEN)
+
+ def test_send_reject(self):
+ server = ServerProtocol()
+ with unittest.mock.patch("email.utils.formatdate", return_value=DATE):
+ response = server.reject(http.HTTPStatus.NOT_FOUND, "Sorry folks.\n")
+ self.assertIsInstance(response, Response)
+ server.send_response(response)
+ self.assertEqual(
+ server.data_to_send(),
+ [
+ f"HTTP/1.1 404 Not Found\r\n"
+ f"Date: {DATE}\r\n"
+ f"Connection: close\r\n"
+ f"Content-Length: 13\r\n"
+ f"Content-Type: text/plain; charset=utf-8\r\n"
+ f"\r\n"
+ f"Sorry folks.\n".encode(),
+ b"",
+ ],
+ )
+ self.assertTrue(server.close_expected())
+ self.assertEqual(server.state, CONNECTING)
+
+ def test_accept_response(self):
+ server = ServerProtocol()
+ with unittest.mock.patch("email.utils.formatdate", return_value=DATE):
+ response = server.accept(self.make_request())
+ self.assertIsInstance(response, Response)
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.reason_phrase, "Switching Protocols")
+ self.assertEqual(
+ response.headers,
+ Headers(
+ {
+ "Date": DATE,
+ "Upgrade": "websocket",
+ "Connection": "Upgrade",
+ "Sec-WebSocket-Accept": ACCEPT,
+ }
+ ),
+ )
+ self.assertIsNone(response.body)
+
+ def test_reject_response(self):
+ server = ServerProtocol()
+ with unittest.mock.patch("email.utils.formatdate", return_value=DATE):
+ response = server.reject(http.HTTPStatus.NOT_FOUND, "Sorry folks.\n")
+ self.assertIsInstance(response, Response)
+ self.assertEqual(response.status_code, 404)
+ self.assertEqual(response.reason_phrase, "Not Found")
+ self.assertEqual(
+ response.headers,
+ Headers(
+ {
+ "Date": DATE,
+ "Connection": "close",
+ "Content-Length": "13",
+ "Content-Type": "text/plain; charset=utf-8",
+ }
+ ),
+ )
+ self.assertEqual(response.body, b"Sorry folks.\n")
+
+ def test_reject_response_supports_int_status(self):
+ server = ServerProtocol()
+ response = server.reject(404, "Sorry folks.\n")
+ self.assertEqual(response.status_code, 404)
+ self.assertEqual(response.reason_phrase, "Not Found")
+
+ def test_basic(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+
+ def test_unexpected_exception(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ with unittest.mock.patch(
+ "websockets.server.ServerProtocol.process_request",
+ side_effect=Exception("BOOM"),
+ ):
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 500)
+ with self.assertRaises(Exception) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "BOOM")
+
+ def test_missing_connection(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Connection"]
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 426)
+ self.assertEqual(response.headers["Upgrade"], "websocket")
+ with self.assertRaises(InvalidUpgrade) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Connection header")
+
+ def test_invalid_connection(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Connection"]
+ request.headers["Connection"] = "close"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 426)
+ self.assertEqual(response.headers["Upgrade"], "websocket")
+ with self.assertRaises(InvalidUpgrade) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "invalid Connection header: close")
+
+ def test_missing_upgrade(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Upgrade"]
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 426)
+ self.assertEqual(response.headers["Upgrade"], "websocket")
+ with self.assertRaises(InvalidUpgrade) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Upgrade header")
+
+ def test_invalid_upgrade(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Upgrade"]
+ request.headers["Upgrade"] = "h2c"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 426)
+ self.assertEqual(response.headers["Upgrade"], "websocket")
+ with self.assertRaises(InvalidUpgrade) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "invalid Upgrade header: h2c")
+
+ def test_missing_key(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Sec-WebSocket-Key"]
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Sec-WebSocket-Key header")
+
+ def test_multiple_key(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Key"] = KEY
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "invalid Sec-WebSocket-Key header: "
+ "more than one Sec-WebSocket-Key header found",
+ )
+
+ def test_invalid_key(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Sec-WebSocket-Key"]
+ request.headers["Sec-WebSocket-Key"] = "not Base64 data!"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception), "invalid Sec-WebSocket-Key header: not Base64 data!"
+ )
+
+ def test_truncated_key(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Sec-WebSocket-Key"]
+ request.headers["Sec-WebSocket-Key"] = KEY[
+ :16
+ ] # 12 bytes instead of 16, Base64-encoded
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception), f"invalid Sec-WebSocket-Key header: {KEY[:16]}"
+ )
+
+ def test_missing_version(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Sec-WebSocket-Version"]
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Sec-WebSocket-Version header")
+
+ def test_multiple_version(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Version"] = "11"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "invalid Sec-WebSocket-Version header: "
+ "more than one Sec-WebSocket-Version header found",
+ )
+
+ def test_invalid_version(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ del request.headers["Sec-WebSocket-Version"]
+ request.headers["Sec-WebSocket-Version"] = "11"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception), "invalid Sec-WebSocket-Version header: 11"
+ )
+
+ def test_no_origin(self):
+ server = ServerProtocol(origins=["https://example.com"])
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 403)
+ with self.assertRaises(InvalidOrigin) as raised:
+ raise server.handshake_exc
+ self.assertEqual(str(raised.exception), "missing Origin header")
+
+ def test_origin(self):
+ server = ServerProtocol(origins=["https://example.com"])
+ request = self.make_request()
+ request.headers["Origin"] = "https://example.com"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(server.origin, "https://example.com")
+
+ def test_unexpected_origin(self):
+ server = ServerProtocol(origins=["https://example.com"])
+ request = self.make_request()
+ request.headers["Origin"] = "https://other.example.com"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 403)
+ with self.assertRaises(InvalidOrigin) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception), "invalid Origin header: https://other.example.com"
+ )
+
+ def test_multiple_origin(self):
+ server = ServerProtocol(
+ origins=["https://example.com", "https://other.example.com"]
+ )
+ request = self.make_request()
+ request.headers["Origin"] = "https://example.com"
+ request.headers["Origin"] = "https://other.example.com"
+ response = server.accept(request)
+
+ # This is prohibited by the HTTP specification, so the return code is
+ # 400 Bad Request rather than 403 Forbidden.
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaises(InvalidHeader) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception),
+ "invalid Origin header: more than one Origin header found",
+ )
+
+ def test_supported_origin(self):
+ server = ServerProtocol(
+ origins=["https://example.com", "https://other.example.com"]
+ )
+ request = self.make_request()
+ request.headers["Origin"] = "https://other.example.com"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(server.origin, "https://other.example.com")
+
+ def test_unsupported_origin(self):
+ server = ServerProtocol(
+ origins=["https://example.com", "https://other.example.com"]
+ )
+ request = self.make_request()
+ request.headers["Origin"] = "https://original.example.com"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 403)
+ with self.assertRaises(InvalidOrigin) as raised:
+ raise server.handshake_exc
+ self.assertEqual(
+ str(raised.exception), "invalid Origin header: https://original.example.com"
+ )
+
+ def test_no_origin_accepted(self):
+ server = ServerProtocol(origins=[None])
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertIsNone(server.origin)
+
+ def test_no_extensions(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Extensions", response.headers)
+ self.assertEqual(server.extensions, [])
+
+ def test_no_extension(self):
+ server = ServerProtocol(extensions=[ServerOpExtensionFactory()])
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Extensions", response.headers)
+ self.assertEqual(server.extensions, [])
+
+ def test_extension(self):
+ server = ServerProtocol(extensions=[ServerOpExtensionFactory()])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Extensions"], "x-op; op")
+ self.assertEqual(server.extensions, [OpExtension()])
+
+ def test_unexpected_extension(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Extensions", response.headers)
+ self.assertEqual(server.extensions, [])
+
+ def test_unsupported_extension(self):
+ server = ServerProtocol(extensions=[ServerRsv2ExtensionFactory()])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Extensions", response.headers)
+ self.assertEqual(server.extensions, [])
+
+ def test_supported_extension_parameters(self):
+ server = ServerProtocol(extensions=[ServerOpExtensionFactory("this")])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op=this"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Extensions"], "x-op; op=this")
+ self.assertEqual(server.extensions, [OpExtension("this")])
+
+ def test_unsupported_extension_parameters(self):
+ server = ServerProtocol(extensions=[ServerOpExtensionFactory("this")])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op=that"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Extensions", response.headers)
+ self.assertEqual(server.extensions, [])
+
+ def test_multiple_supported_extension_parameters(self):
+ server = ServerProtocol(
+ extensions=[
+ ServerOpExtensionFactory("this"),
+ ServerOpExtensionFactory("that"),
+ ]
+ )
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op=that"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Extensions"], "x-op; op=that")
+ self.assertEqual(server.extensions, [OpExtension("that")])
+
+ def test_multiple_extensions(self):
+ server = ServerProtocol(
+ extensions=[ServerOpExtensionFactory(), ServerRsv2ExtensionFactory()]
+ )
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ request.headers["Sec-WebSocket-Extensions"] = "x-rsv2"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(
+ response.headers["Sec-WebSocket-Extensions"], "x-op; op, x-rsv2"
+ )
+ self.assertEqual(server.extensions, [OpExtension(), Rsv2Extension()])
+
+ def test_multiple_extensions_order(self):
+ server = ServerProtocol(
+ extensions=[ServerOpExtensionFactory(), ServerRsv2ExtensionFactory()]
+ )
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Extensions"] = "x-rsv2"
+ request.headers["Sec-WebSocket-Extensions"] = "x-op; op"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(
+ response.headers["Sec-WebSocket-Extensions"], "x-rsv2, x-op; op"
+ )
+ self.assertEqual(server.extensions, [Rsv2Extension(), OpExtension()])
+
+ def test_no_subprotocols(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Protocol", response.headers)
+ self.assertIsNone(server.subprotocol)
+
+ def test_no_subprotocol(self):
+ server = ServerProtocol(subprotocols=["chat"])
+ request = self.make_request()
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaisesRegex(
+ NegotiationError,
+ r"missing subprotocol",
+ ):
+ raise server.handshake_exc
+
+ def test_subprotocol(self):
+ server = ServerProtocol(subprotocols=["chat"])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "chat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Protocol"], "chat")
+ self.assertEqual(server.subprotocol, "chat")
+
+ def test_unexpected_subprotocol(self):
+ server = ServerProtocol()
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "chat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Protocol", response.headers)
+ self.assertIsNone(server.subprotocol)
+
+ def test_multiple_subprotocols(self):
+ server = ServerProtocol(subprotocols=["superchat", "chat"])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "chat"
+ request.headers["Sec-WebSocket-Protocol"] = "superchat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Protocol"], "superchat")
+ self.assertEqual(server.subprotocol, "superchat")
+
+ def test_supported_subprotocol(self):
+ server = ServerProtocol(subprotocols=["superchat", "chat"])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "chat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Protocol"], "chat")
+ self.assertEqual(server.subprotocol, "chat")
+
+ def test_unsupported_subprotocol(self):
+ server = ServerProtocol(subprotocols=["superchat", "chat"])
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "otherchat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 400)
+ with self.assertRaisesRegex(
+ NegotiationError,
+ r"invalid subprotocol; expected one of superchat, chat",
+ ):
+ raise server.handshake_exc
+
+ @staticmethod
+ def optional_chat(protocol, subprotocols):
+ if "chat" in subprotocols:
+ return "chat"
+
+ def test_select_subprotocol(self):
+ server = ServerProtocol(select_subprotocol=self.optional_chat)
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "chat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertEqual(response.headers["Sec-WebSocket-Protocol"], "chat")
+ self.assertEqual(server.subprotocol, "chat")
+
+ def test_select_no_subprotocol(self):
+ server = ServerProtocol(select_subprotocol=self.optional_chat)
+ request = self.make_request()
+ request.headers["Sec-WebSocket-Protocol"] = "otherchat"
+ response = server.accept(request)
+
+ self.assertEqual(response.status_code, 101)
+ self.assertNotIn("Sec-WebSocket-Protocol", response.headers)
+ self.assertIsNone(server.subprotocol)
+
+
+class MiscTests(unittest.TestCase):
+ def test_bypass_handshake(self):
+ server = ServerProtocol(state=OPEN)
+ server.receive_data(b"\x81\x86\x00\x00\x00\x00Hello!")
+ [frame] = server.events_received()
+ self.assertEqual(frame, Frame(OP_TEXT, b"Hello!"))
+
+ def test_custom_logger(self):
+ logger = logging.getLogger("test")
+ with self.assertLogs("test", logging.DEBUG) as logs:
+ ServerProtocol(logger=logger)
+ self.assertEqual(len(logs.records), 1)
+
+
+class BackwardsCompatibilityTests(DeprecationTestCase):
+ def test_server_connection_class(self):
+ with self.assertDeprecationWarning(
+ "ServerConnection was renamed to ServerProtocol"
+ ):
+ from websockets.server import ServerConnection
+
+ server = ServerConnection()
+
+ self.assertIsInstance(server, ServerProtocol)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_streams.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_streams.py
new file mode 100644
index 0000000000..fd7c66a0bd
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_streams.py
@@ -0,0 +1,198 @@
+from websockets.streams import StreamReader
+
+from .utils import GeneratorTestCase
+
+
+class StreamReaderTests(GeneratorTestCase):
+ def setUp(self):
+ self.reader = StreamReader()
+
+ def test_read_line(self):
+ self.reader.feed_data(b"spam\neggs\n")
+
+ gen = self.reader.read_line(32)
+ line = self.assertGeneratorReturns(gen)
+ self.assertEqual(line, b"spam\n")
+
+ gen = self.reader.read_line(32)
+ line = self.assertGeneratorReturns(gen)
+ self.assertEqual(line, b"eggs\n")
+
+ def test_read_line_need_more_data(self):
+ self.reader.feed_data(b"spa")
+
+ gen = self.reader.read_line(32)
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_data(b"m\neg")
+ line = self.assertGeneratorReturns(gen)
+ self.assertEqual(line, b"spam\n")
+
+ gen = self.reader.read_line(32)
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_data(b"gs\n")
+ line = self.assertGeneratorReturns(gen)
+ self.assertEqual(line, b"eggs\n")
+
+ def test_read_line_not_enough_data(self):
+ self.reader.feed_data(b"spa")
+ self.reader.feed_eof()
+
+ gen = self.reader.read_line(32)
+ with self.assertRaises(EOFError) as raised:
+ next(gen)
+ self.assertEqual(
+ str(raised.exception),
+ "stream ends after 3 bytes, before end of line",
+ )
+
+ def test_read_line_too_long(self):
+ self.reader.feed_data(b"spam\neggs\n")
+
+ gen = self.reader.read_line(2)
+ with self.assertRaises(RuntimeError) as raised:
+ next(gen)
+ self.assertEqual(
+ str(raised.exception),
+ "read 5 bytes, expected no more than 2 bytes",
+ )
+
+ def test_read_line_too_long_need_more_data(self):
+ self.reader.feed_data(b"spa")
+
+ gen = self.reader.read_line(2)
+ with self.assertRaises(RuntimeError) as raised:
+ next(gen)
+ self.assertEqual(
+ str(raised.exception),
+ "read 3 bytes, expected no more than 2 bytes",
+ )
+
+ def test_read_exact(self):
+ self.reader.feed_data(b"spameggs")
+
+ gen = self.reader.read_exact(4)
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"spam")
+
+ gen = self.reader.read_exact(4)
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"eggs")
+
+ def test_read_exact_need_more_data(self):
+ self.reader.feed_data(b"spa")
+
+ gen = self.reader.read_exact(4)
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_data(b"meg")
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"spam")
+
+ gen = self.reader.read_exact(4)
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_data(b"gs")
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"eggs")
+
+ def test_read_exact_not_enough_data(self):
+ self.reader.feed_data(b"spa")
+ self.reader.feed_eof()
+
+ gen = self.reader.read_exact(4)
+ with self.assertRaises(EOFError) as raised:
+ next(gen)
+ self.assertEqual(
+ str(raised.exception),
+ "stream ends after 3 bytes, expected 4 bytes",
+ )
+
+ def test_read_to_eof(self):
+ gen = self.reader.read_to_eof(32)
+
+ self.reader.feed_data(b"spam")
+ self.assertGeneratorRunning(gen)
+
+ self.reader.feed_eof()
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"spam")
+
+ def test_read_to_eof_at_eof(self):
+ self.reader.feed_eof()
+
+ gen = self.reader.read_to_eof(32)
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"")
+
+ def test_read_to_eof_too_long(self):
+ gen = self.reader.read_to_eof(2)
+
+ self.reader.feed_data(b"spam")
+ with self.assertRaises(RuntimeError) as raised:
+ next(gen)
+ self.assertEqual(
+ str(raised.exception),
+ "read 4 bytes, expected no more than 2 bytes",
+ )
+
+ def test_at_eof_after_feed_data(self):
+ gen = self.reader.at_eof()
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_data(b"spam")
+ eof = self.assertGeneratorReturns(gen)
+ self.assertFalse(eof)
+
+ def test_at_eof_after_feed_eof(self):
+ gen = self.reader.at_eof()
+ self.assertGeneratorRunning(gen)
+ self.reader.feed_eof()
+ eof = self.assertGeneratorReturns(gen)
+ self.assertTrue(eof)
+
+ def test_feed_data_after_feed_data(self):
+ self.reader.feed_data(b"spam")
+ self.reader.feed_data(b"eggs")
+
+ gen = self.reader.read_exact(8)
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"spameggs")
+ gen = self.reader.at_eof()
+ self.assertGeneratorRunning(gen)
+
+ def test_feed_eof_after_feed_data(self):
+ self.reader.feed_data(b"spam")
+ self.reader.feed_eof()
+
+ gen = self.reader.read_exact(4)
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"spam")
+ gen = self.reader.at_eof()
+ eof = self.assertGeneratorReturns(gen)
+ self.assertTrue(eof)
+
+ def test_feed_data_after_feed_eof(self):
+ self.reader.feed_eof()
+ with self.assertRaises(EOFError) as raised:
+ self.reader.feed_data(b"spam")
+ self.assertEqual(
+ str(raised.exception),
+ "stream ended",
+ )
+
+ def test_feed_eof_after_feed_eof(self):
+ self.reader.feed_eof()
+ with self.assertRaises(EOFError) as raised:
+ self.reader.feed_eof()
+ self.assertEqual(
+ str(raised.exception),
+ "stream ended",
+ )
+
+ def test_discard(self):
+ gen = self.reader.read_to_eof(32)
+
+ self.reader.feed_data(b"spam")
+ self.reader.discard()
+ self.assertGeneratorRunning(gen)
+
+ self.reader.feed_eof()
+ data = self.assertGeneratorReturns(gen)
+ self.assertEqual(data, b"")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_typing.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_typing.py
new file mode 100644
index 0000000000..202de840f3
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_typing.py
@@ -0,0 +1 @@
+from websockets.typing import *
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_uri.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_uri.py
new file mode 100644
index 0000000000..8acc01c187
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_uri.py
@@ -0,0 +1,96 @@
+import unittest
+
+from websockets.exceptions import InvalidURI
+from websockets.uri import *
+
+
+VALID_URIS = [
+ (
+ "ws://localhost/",
+ WebSocketURI(False, "localhost", 80, "/", "", None, None),
+ ),
+ (
+ "wss://localhost/",
+ WebSocketURI(True, "localhost", 443, "/", "", None, None),
+ ),
+ (
+ "ws://localhost",
+ WebSocketURI(False, "localhost", 80, "", "", None, None),
+ ),
+ (
+ "ws://localhost/path?query",
+ WebSocketURI(False, "localhost", 80, "/path", "query", None, None),
+ ),
+ (
+ "ws://localhost/path;params",
+ WebSocketURI(False, "localhost", 80, "/path;params", "", None, None),
+ ),
+ (
+ "WS://LOCALHOST/PATH?QUERY",
+ WebSocketURI(False, "localhost", 80, "/PATH", "QUERY", None, None),
+ ),
+ (
+ "ws://user:pass@localhost/",
+ WebSocketURI(False, "localhost", 80, "/", "", "user", "pass"),
+ ),
+ (
+ "ws://høst/",
+ WebSocketURI(False, "xn--hst-0na", 80, "/", "", None, None),
+ ),
+ (
+ "ws://üser:påss@høst/πass?qùéry",
+ WebSocketURI(
+ False,
+ "xn--hst-0na",
+ 80,
+ "/%CF%80ass",
+ "q%C3%B9%C3%A9ry",
+ "%C3%BCser",
+ "p%C3%A5ss",
+ ),
+ ),
+]
+
+INVALID_URIS = [
+ "http://localhost/",
+ "https://localhost/",
+ "ws://localhost/path#fragment",
+ "ws://user@localhost/",
+ "ws:///path",
+]
+
+RESOURCE_NAMES = [
+ ("ws://localhost/", "/"),
+ ("ws://localhost", "/"),
+ ("ws://localhost/path?query", "/path?query"),
+ ("ws://høst/πass?qùéry", "/%CF%80ass?q%C3%B9%C3%A9ry"),
+]
+
+USER_INFOS = [
+ ("ws://localhost/", None),
+ ("ws://user:pass@localhost/", ("user", "pass")),
+ ("ws://üser:påss@høst/", ("%C3%BCser", "p%C3%A5ss")),
+]
+
+
+class URITests(unittest.TestCase):
+ def test_success(self):
+ for uri, parsed in VALID_URIS:
+ with self.subTest(uri=uri):
+ self.assertEqual(parse_uri(uri), parsed)
+
+ def test_error(self):
+ for uri in INVALID_URIS:
+ with self.subTest(uri=uri):
+ with self.assertRaises(InvalidURI):
+ parse_uri(uri)
+
+ def test_resource_name(self):
+ for uri, resource_name in RESOURCE_NAMES:
+ with self.subTest(uri=uri):
+ self.assertEqual(parse_uri(uri).resource_name, resource_name)
+
+ def test_user_info(self):
+ for uri, user_info in USER_INFOS:
+ with self.subTest(uri=uri):
+ self.assertEqual(parse_uri(uri).user_info, user_info)
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/test_utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/test_utils.py
new file mode 100644
index 0000000000..678fcfe798
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/test_utils.py
@@ -0,0 +1,103 @@
+import base64
+import itertools
+import platform
+import unittest
+
+from websockets.utils import accept_key, apply_mask as py_apply_mask, generate_key
+
+
+# Test vector from RFC 6455
+KEY = "dGhlIHNhbXBsZSBub25jZQ=="
+ACCEPT = "s3pPLMBiTxaQ9kYGzzhZRbK+xOo="
+
+
+class UtilsTests(unittest.TestCase):
+ def test_generate_key(self):
+ key = generate_key()
+ self.assertEqual(len(base64.b64decode(key.encode())), 16)
+
+ def test_accept_key(self):
+ self.assertEqual(accept_key(KEY), ACCEPT)
+
+
+class ApplyMaskTests(unittest.TestCase):
+ @staticmethod
+ def apply_mask(*args, **kwargs):
+ return py_apply_mask(*args, **kwargs)
+
+ apply_mask_type_combos = list(itertools.product([bytes, bytearray], repeat=2))
+
+ apply_mask_test_values = [
+ (b"", b"1234", b""),
+ (b"aBcDe", b"\x00\x00\x00\x00", b"aBcDe"),
+ (b"abcdABCD", b"1234", b"PPPPpppp"),
+ (b"abcdABCD" * 10, b"1234", b"PPPPpppp" * 10),
+ ]
+
+ def test_apply_mask(self):
+ for data_type, mask_type in self.apply_mask_type_combos:
+ for data_in, mask, data_out in self.apply_mask_test_values:
+ data_in, mask = data_type(data_in), mask_type(mask)
+
+ with self.subTest(data_in=data_in, mask=mask):
+ result = self.apply_mask(data_in, mask)
+ self.assertEqual(result, data_out)
+
+ def test_apply_mask_memoryview(self):
+ for mask_type in [bytes, bytearray]:
+ for data_in, mask, data_out in self.apply_mask_test_values:
+ data_in, mask = memoryview(data_in), mask_type(mask)
+
+ with self.subTest(data_in=data_in, mask=mask):
+ result = self.apply_mask(data_in, mask)
+ self.assertEqual(result, data_out)
+
+ def test_apply_mask_non_contiguous_memoryview(self):
+ for mask_type in [bytes, bytearray]:
+ for data_in, mask, data_out in self.apply_mask_test_values:
+ data_in, mask = memoryview(data_in)[::-1], mask_type(mask)[::-1]
+ data_out = data_out[::-1]
+
+ with self.subTest(data_in=data_in, mask=mask):
+ result = self.apply_mask(data_in, mask)
+ self.assertEqual(result, data_out)
+
+ def test_apply_mask_check_input_types(self):
+ for data_in, mask in [(None, None), (b"abcd", None), (None, b"abcd")]:
+ with self.subTest(data_in=data_in, mask=mask):
+ with self.assertRaises(TypeError):
+ self.apply_mask(data_in, mask)
+
+ def test_apply_mask_check_mask_length(self):
+ for data_in, mask in [
+ (b"", b""),
+ (b"abcd", b"123"),
+ (b"", b"aBcDe"),
+ (b"12345678", b"12345678"),
+ ]:
+ with self.subTest(data_in=data_in, mask=mask):
+ with self.assertRaises(ValueError):
+ self.apply_mask(data_in, mask)
+
+
+try:
+ from websockets.speedups import apply_mask as c_apply_mask
+except ImportError:
+ pass
+else:
+
+ class SpeedupsTests(ApplyMaskTests):
+ @staticmethod
+ def apply_mask(*args, **kwargs):
+ try:
+ return c_apply_mask(*args, **kwargs)
+ except NotImplementedError as exc: # pragma: no cover
+ # PyPy doesn't implement creating contiguous readonly buffer
+ # from non-contiguous. We don't care about this edge case.
+ if (
+ platform.python_implementation() == "PyPy"
+ and "not implemented yet" in str(exc)
+ ):
+ raise unittest.SkipTest(str(exc))
+ else:
+ raise
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tests/utils.py b/testing/web-platform/tests/tools/third_party/websockets/tests/utils.py
new file mode 100644
index 0000000000..2937a2f15e
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tests/utils.py
@@ -0,0 +1,88 @@
+import contextlib
+import email.utils
+import os
+import pathlib
+import platform
+import tempfile
+import time
+import unittest
+import warnings
+
+
+# Generate TLS certificate with:
+# $ openssl req -x509 -config test_localhost.cnf -days 15340 -newkey rsa:2048 \
+# -out test_localhost.crt -keyout test_localhost.key
+# $ cat test_localhost.key test_localhost.crt > test_localhost.pem
+# $ rm test_localhost.key test_localhost.crt
+
+CERTIFICATE = bytes(pathlib.Path(__file__).with_name("test_localhost.pem"))
+
+
+DATE = email.utils.formatdate(usegmt=True)
+
+
+# Unit for timeouts. May be increased on slow machines by setting the
+# WEBSOCKETS_TESTS_TIMEOUT_FACTOR environment variable.
+MS = 0.001 * float(os.environ.get("WEBSOCKETS_TESTS_TIMEOUT_FACTOR", "1"))
+
+# PyPy has a performance penalty for this test suite.
+if platform.python_implementation() == "PyPy": # pragma: no cover
+ MS *= 5
+
+# asyncio's debug mode has a 10x performance penalty for this test suite.
+if os.environ.get("PYTHONASYNCIODEBUG"): # pragma: no cover
+ MS *= 10
+
+# Ensure that timeouts are larger than the clock's resolution (for Windows).
+MS = max(MS, 2.5 * time.get_clock_info("monotonic").resolution)
+
+
+class GeneratorTestCase(unittest.TestCase):
+ """
+ Base class for testing generator-based coroutines.
+
+ """
+
+ def assertGeneratorRunning(self, gen):
+ """
+ Check that a generator-based coroutine hasn't completed yet.
+
+ """
+ next(gen)
+
+ def assertGeneratorReturns(self, gen):
+ """
+ Check that a generator-based coroutine completes and return its value.
+
+ """
+ with self.assertRaises(StopIteration) as raised:
+ next(gen)
+ return raised.exception.value
+
+
+class DeprecationTestCase(unittest.TestCase):
+ """
+ Base class for testing deprecations.
+
+ """
+
+ @contextlib.contextmanager
+ def assertDeprecationWarning(self, message):
+ """
+ Check that a deprecation warning was raised with the given message.
+
+ """
+ with warnings.catch_warnings(record=True) as recorded_warnings:
+ warnings.simplefilter("always")
+ yield
+
+ self.assertEqual(len(recorded_warnings), 1)
+ warning = recorded_warnings[0]
+ self.assertEqual(warning.category, DeprecationWarning)
+ self.assertEqual(str(warning.message), message)
+
+
+@contextlib.contextmanager
+def temp_unix_socket_path():
+ with tempfile.TemporaryDirectory() as temp_dir:
+ yield str(pathlib.Path(temp_dir) / "websockets")
diff --git a/testing/web-platform/tests/tools/third_party/websockets/tox.ini b/testing/web-platform/tests/tools/third_party/websockets/tox.ini
new file mode 100644
index 0000000000..939d8c0cd8
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/tox.ini
@@ -0,0 +1,39 @@
+[tox]
+envlist =
+ py37
+ py38
+ py39
+ py310
+ py311
+ coverage
+ black
+ ruff
+ mypy
+
+[testenv]
+commands = python -W error::DeprecationWarning -W error::PendingDeprecationWarning -m unittest {posargs}
+
+[testenv:coverage]
+commands =
+ python -m coverage erase
+ python -m coverage run --source {envsitepackagesdir}/websockets,tests -m unittest {posargs}
+ python -m coverage report --show-missing --fail-under=100
+deps = coverage
+
+[testenv:maxi_cov]
+commands =
+ python tests/maxi_cov.py {envsitepackagesdir}
+ python -m coverage report --show-missing --fail-under=100
+deps = coverage
+
+[testenv:black]
+commands = black --check src tests
+deps = black
+
+[testenv:ruff]
+commands = ruff src tests
+deps = ruff
+
+[testenv:mypy]
+commands = mypy --strict src
+deps = mypy
diff --git a/testing/web-platform/tests/tools/third_party_modified/mozlog/mozlog/formatters/html/html.py b/testing/web-platform/tests/tools/third_party_modified/mozlog/mozlog/formatters/html/html.py
index 040de1ae53..87fa4a638a 100644
--- a/testing/web-platform/tests/tools/third_party_modified/mozlog/mozlog/formatters/html/html.py
+++ b/testing/web-platform/tests/tools/third_party_modified/mozlog/mozlog/formatters/html/html.py
@@ -6,7 +6,7 @@ import base64
import json
import os
from collections import defaultdict
-from datetime import datetime
+from datetime import datetime, timezone
from .. import base
@@ -242,7 +242,7 @@ class HTMLFormatter(base.BaseFormatter):
)
def generate_html(self):
- generated = datetime.utcnow()
+ generated = datetime.now(timezone.utc)
with open(os.path.join(base_path, "main.js")) as main_f:
doc = html.html(
self.head,
diff --git a/testing/web-platform/tests/tools/tox.ini b/testing/web-platform/tests/tools/tox.ini
index a4b747ac4f..61442932f3 100644
--- a/testing/web-platform/tests/tools/tox.ini
+++ b/testing/web-platform/tests/tools/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py37,py38,py39,py310,py311,{py37,py38,py39,py310,py311}-{flake8,mypy}
+envlist = py38,py39,py310,py311,py312,{py38,py39,py310,py311,py312}-{flake8,mypy}
skipsdist=True
skip_missing_interpreters=False
diff --git a/testing/web-platform/tests/tools/wave/requirements.txt b/testing/web-platform/tests/tools/wave/requirements.txt
index b2c151b8fe..3bb476fd96 100644
--- a/testing/web-platform/tests/tools/wave/requirements.txt
+++ b/testing/web-platform/tests/tools/wave/requirements.txt
@@ -1,2 +1,2 @@
ua-parser==0.18.0
-python-dateutil==2.8.2
+python-dateutil==2.9.0.post0
diff --git a/testing/web-platform/tests/tools/wave/tox.ini b/testing/web-platform/tests/tools/wave/tox.ini
index 06bdfcd674..88c76096f4 100644
--- a/testing/web-platform/tests/tools/wave/tox.ini
+++ b/testing/web-platform/tests/tools/wave/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py37,py38,py39,py310,py311
+envlist = py38,py39,py310,py311,py312
skipsdist=True
skip_missing_interpreters = False
diff --git a/testing/web-platform/tests/tools/webtransport/h3/capsule.py b/testing/web-platform/tests/tools/webtransport/h3/capsule.py
index 74ca71ade9..fc8183a65f 100644
--- a/testing/web-platform/tests/tools/webtransport/h3/capsule.py
+++ b/testing/web-platform/tests/tools/webtransport/h3/capsule.py
@@ -108,7 +108,7 @@ class H3CapsuleDecoder:
if self._final:
raise e
if not self._buffer:
- return 0
+ return
size = self._buffer.capacity - self._buffer.tell()
if size >= UINT_VAR_MAX_SIZE:
raise e
diff --git a/testing/web-platform/tests/tools/wpt/browser.py b/testing/web-platform/tests/tools/wpt/browser.py
index ea71499ec4..4c42ffa4e8 100644
--- a/testing/web-platform/tests/tools/wpt/browser.py
+++ b/testing/web-platform/tests/tools/wpt/browser.py
@@ -1452,7 +1452,7 @@ class ChromeAndroidBase(Browser):
if browser_binary is None:
browser_binary = self.find_binary(channel)
chrome = Chrome(self.logger)
- return chrome.install_webdriver_by_version(self.version(browser_binary), dest)
+ return chrome.install_webdriver_by_version(self.version(browser_binary), dest, channel)
def version(self, binary=None, webdriver_binary=None):
if not binary:
@@ -1489,20 +1489,6 @@ class ChromeAndroid(ChromeAndroidBase):
return "com.android.chrome"
-# TODO(aluo): This is largely copied from the AndroidWebView implementation.
-# Tests are not running for weblayer yet (crbug/1019521), this initial
-# implementation will help to reproduce and debug any issues.
-class AndroidWeblayer(ChromeAndroidBase):
- """Weblayer-specific interface for Android."""
-
- product = "android_weblayer"
- # TODO(aluo): replace this with weblayer version after tests are working.
- requirements = "requirements_chromium.txt"
-
- def find_binary(self, venv_path=None, channel=None):
- return "org.chromium.weblayer.shell"
-
-
class AndroidWebview(ChromeAndroidBase):
"""Webview-specific interface for Android.
@@ -1656,10 +1642,10 @@ class Opera(Browser):
return m.group(0)
-class EdgeChromium(Browser):
+class Edge(Browser):
"""Microsoft Edge Chromium Browser class."""
- product = "edgechromium"
+ product = "edge"
requirements = "requirements_chromium.txt"
platform = {
"Linux": "linux",
diff --git a/testing/web-platform/tests/tools/wpt/install.py b/testing/web-platform/tests/tools/wpt/install.py
index 382c1e2eb8..1e6408b0be 100644
--- a/testing/web-platform/tests/tools/wpt/install.py
+++ b/testing/web-platform/tests/tools/wpt/install.py
@@ -4,14 +4,13 @@ import argparse
from . import browser
latest_channels = {
- 'android_weblayer': 'dev',
'android_webview': 'dev',
'firefox': 'nightly',
'firefox_android': 'nightly',
'chrome': 'canary',
'chrome_android': 'dev',
'chromium': 'nightly',
- 'edgechromium': 'dev',
+ 'edge': 'dev',
'safari': 'preview',
'servo': 'nightly',
'webkitgtk_minibrowser': 'nightly',
diff --git a/testing/web-platform/tests/tools/wpt/requirements_android.txt b/testing/web-platform/tests/tools/wpt/requirements_android.txt
index 17672383cb..e8205caa70 100644
--- a/testing/web-platform/tests/tools/wpt/requirements_android.txt
+++ b/testing/web-platform/tests/tools/wpt/requirements_android.txt
@@ -1 +1 @@
-mozrunner==8.3.0
+mozrunner==8.3.1
diff --git a/testing/web-platform/tests/tools/wpt/requirements_install.txt b/testing/web-platform/tests/tools/wpt/requirements_install.txt
index 55bed99f8c..f7df06548c 100644
--- a/testing/web-platform/tests/tools/wpt/requirements_install.txt
+++ b/testing/web-platform/tests/tools/wpt/requirements_install.txt
@@ -1,2 +1,2 @@
mozinstall==2.1.0
-packaging==23.1
+packaging==24.0
diff --git a/testing/web-platform/tests/tools/wpt/run.py b/testing/web-platform/tests/tools/wpt/run.py
index b9db082517..c84cdb442a 100644
--- a/testing/web-platform/tests/tools/wpt/run.py
+++ b/testing/web-platform/tests/tools/wpt/run.py
@@ -111,10 +111,9 @@ otherwise install OpenSSL and ensure that it's on your $PATH.""")
def check_environ(product):
- if product not in ("android_weblayer", "android_webview", "chrome",
- "chrome_android", "chrome_ios", "content_shell",
- "edgechromium", "firefox", "firefox_android", "ladybird", "servo",
- "wktr"):
+ if product not in ("android_webview", "chrome", "chrome_android", "chrome_ios",
+ "content_shell", "edge", "firefox", "firefox_android",
+ "ladybird", "servo", "wktr"):
config_builder = serve.build_config(os.path.join(wpt_root, "config.json"))
# Override the ports to avoid looking for free ports
config_builder.ssl = {"type": "none"}
@@ -568,6 +567,8 @@ class ChromeAndroidBase(BrowserSetup):
if kwargs["package_name"] is None:
kwargs["package_name"] = self.browser.find_binary(
channel=browser_channel)
+ if not kwargs["device_serial"]:
+ kwargs["device_serial"] = ["emulator-5554"]
if kwargs["webdriver_binary"] is None:
webdriver_binary = None
if not kwargs["install_webdriver"]:
@@ -615,17 +616,6 @@ class ChromeiOS(BrowserSetup):
raise WptrunError("Unable to locate or install chromedriver binary")
-class AndroidWeblayer(ChromeAndroidBase):
- name = "android_weblayer"
- browser_cls = browser.AndroidWeblayer
-
- def setup_kwargs(self, kwargs):
- super().setup_kwargs(kwargs)
- if kwargs["browser_channel"] in self.experimental_channels and kwargs["enable_experimental"] is None:
- logger.info("Automatically turning on experimental features for WebLayer Dev/Canary")
- kwargs["enable_experimental"] = True
-
-
class AndroidWebview(ChromeAndroidBase):
name = "android_webview"
browser_cls = browser.AndroidWebview
@@ -663,9 +653,9 @@ class Opera(BrowserSetup):
raise WptrunError("Unable to locate or install operadriver binary")
-class EdgeChromium(BrowserSetup):
+class Edge(BrowserSetup):
name = "MicrosoftEdge"
- browser_cls = browser.EdgeChromium
+ browser_cls = browser.Edge
experimental_channels: ClassVar[Tuple[str, ...]] = ("dev", "canary")
def setup_kwargs(self, kwargs):
@@ -872,7 +862,6 @@ class Epiphany(BrowserSetup):
product_setup = {
- "android_weblayer": AndroidWeblayer,
"android_webview": AndroidWebview,
"firefox": Firefox,
"firefox_android": FirefoxAndroid,
@@ -881,7 +870,7 @@ product_setup = {
"chrome_ios": ChromeiOS,
"chromium": Chromium,
"content_shell": ContentShell,
- "edgechromium": EdgeChromium,
+ "edge": Edge,
"safari": Safari,
"servo": Servo,
"servodriver": ServoWebDriver,
@@ -924,6 +913,9 @@ def setup_wptrunner(venv, **kwargs):
args_general(kwargs)
if kwargs["product"] not in product_setup:
+ if kwargs["product"] == "edgechromium":
+ raise WptrunError("edgechromium has been renamed to edge.")
+
raise WptrunError("Unsupported product %s" % kwargs["product"])
setup_cls = product_setup[kwargs["product"]](venv, kwargs["prompt"])
diff --git a/testing/web-platform/tests/tools/wpt/tests/test_browser.py b/testing/web-platform/tests/tools/wpt/tests/test_browser.py
index 95094e376d..3a45dab16e 100644
--- a/testing/web-platform/tests/tools/wpt/tests/test_browser.py
+++ b/testing/web-platform/tests/tools/wpt/tests/test_browser.py
@@ -30,33 +30,33 @@ def test_all_browser_abc():
assert not inspect.isabstract(cls), "%s is abstract" % name
-def test_edgechromium_webdriver_supports_browser():
+def test_edge_webdriver_supports_browser():
# MSEdgeDriver binary cannot be called.
- edge = browser.EdgeChromium(logger)
+ edge = browser.Edge(logger)
edge.webdriver_version = mock.MagicMock(return_value=None)
assert not edge.webdriver_supports_browser('/usr/bin/edgedriver', '/usr/bin/edge', 'stable')
# Browser binary cannot be called.
- edge = browser.EdgeChromium(logger)
+ edge = browser.Edge(logger)
edge.webdriver_version = mock.MagicMock(return_value='70.0.1')
edge.version = mock.MagicMock(return_value=None)
assert edge.webdriver_supports_browser('/usr/bin/edgedriver', '/usr/bin/edge', 'stable')
# Browser version matches.
- edge = browser.EdgeChromium(logger)
+ edge = browser.Edge(logger)
# Versions should be an exact match to be compatible.
edge.webdriver_version = mock.MagicMock(return_value='70.1.5')
edge.version = mock.MagicMock(return_value='70.1.5')
assert edge.webdriver_supports_browser('/usr/bin/edgedriver', '/usr/bin/edge', 'stable')
# Browser version doesn't match.
- edge = browser.EdgeChromium(logger)
+ edge = browser.Edge(logger)
edge.webdriver_version = mock.MagicMock(return_value='70.0.1')
edge.version = mock.MagicMock(return_value='69.0.1')
assert not edge.webdriver_supports_browser('/usr/bin/edgedriver', '/usr/bin/edge', 'stable')
# MSEdgeDriver version should match for MAJOR.MINOR.BUILD version.
- edge = browser.EdgeChromium(logger)
+ edge = browser.Edge(logger)
edge.webdriver_version = mock.MagicMock(return_value='70.0.1.0')
edge.version = mock.MagicMock(return_value='70.0.1.1 dev')
assert edge.webdriver_supports_browser('/usr/bin/edgedriver', '/usr/bin/edge', 'dev')
@@ -68,8 +68,8 @@ def test_edgechromium_webdriver_supports_browser():
# logic to test there.
@pytest.mark.skipif(sys.platform.startswith('win'), reason='just uses _get_fileversion on Windows')
@mock.patch('tools.wpt.browser.call')
-def test_edgechromium_webdriver_version(mocked_call):
- edge = browser.EdgeChromium(logger)
+def test_edge_webdriver_version(mocked_call):
+ edge = browser.Edge(logger)
webdriver_binary = '/usr/bin/edgedriver'
# Working cases.
diff --git a/testing/web-platform/tests/tools/wpt/tox.ini b/testing/web-platform/tests/tools/wpt/tox.ini
index 4068f70898..b6e3dab231 100644
--- a/testing/web-platform/tests/tools/wpt/tox.ini
+++ b/testing/web-platform/tests/tools/wpt/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py37,py38,py39,py310,py311
+envlist = py38,py39,py310,py311,py312
skipsdist=True
skip_missing_interpreters = False
diff --git a/testing/web-platform/tests/tools/wpt/utils.py b/testing/web-platform/tests/tools/wpt/utils.py
index 5899dc3f3a..51bb3f55dc 100644
--- a/testing/web-platform/tests/tools/wpt/utils.py
+++ b/testing/web-platform/tests/tools/wpt/utils.py
@@ -46,8 +46,11 @@ def untar(fileobj, dest="."):
"""Extract tar archive."""
logger.debug("untar")
fileobj = seekable(fileobj)
+ kwargs = {}
+ if sys.version_info.major >= 3 and sys.version_info.minor >= 12:
+ kwargs["filter"] = "tar"
with tarfile.open(fileobj=fileobj) as tar_data:
- tar_data.extractall(path=dest)
+ tar_data.extractall(path=dest, **kwargs)
def unzip(fileobj, dest=None, limit=None):
diff --git a/testing/web-platform/tests/tools/wptrunner/docs/expectation.rst b/testing/web-platform/tests/tools/wptrunner/docs/expectation.rst
index fea676565b..76f088dd8f 100644
--- a/testing/web-platform/tests/tools/wptrunner/docs/expectation.rst
+++ b/testing/web-platform/tests/tools/wptrunner/docs/expectation.rst
@@ -153,7 +153,7 @@ When used for expectation data, metadata files have the following format:
:implementation-status:
One of the values ``implementing``,
- ``not-implementing`` or ``default``. This is used in conjunction
+ ``not-implementing`` or ``backlog``. This is used in conjunction
with the ``--skip-implementation-status`` command line argument to
``wptrunner`` to ignore certain features where running the test is
low value.
diff --git a/testing/web-platform/tests/tools/wptrunner/requirements.txt b/testing/web-platform/tests/tools/wptrunner/requirements.txt
index a7face3bd0..bb9b4ac77c 100644
--- a/testing/web-platform/tests/tools/wptrunner/requirements.txt
+++ b/testing/web-platform/tests/tools/wptrunner/requirements.txt
@@ -1,11 +1,11 @@
html5lib==1.1
-mozdebug==0.3.0
+mozdebug==0.3.1
mozinfo==1.2.3 # https://bugzilla.mozilla.org/show_bug.cgi?id=1621226
mozlog==8.0.0
mozprocess==1.3.1
-packaging==23.1
-pillow==9.5.0
+packaging==24.0
+pillow==10.3.0
requests==2.31.0
six==1.16.0
-urllib3==2.0.7
-aioquic==0.9.19
+urllib3==2.2.1
+aioquic==0.9.21
diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt b/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt
index 3ba4731494..ed377b9c95 100644
--- a/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt
+++ b/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt
@@ -1,10 +1,10 @@
marionette_driver==3.4.0
mozcrash==2.2.0
-mozdevice==4.1.1
+mozdevice==4.1.2
mozinstall==2.1.0
mozleak==0.2
-mozprofile==2.6.1
-mozrunner==8.3.0
+mozprofile==3.0.0
+mozrunner==8.3.1
mozversion==2.4.0
-psutil==5.9.5
+psutil==5.9.8
redo==2.0.4
diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_opera.txt b/testing/web-platform/tests/tools/wptrunner/requirements_opera.txt
index db0c5dd992..6c2425f337 100644
--- a/testing/web-platform/tests/tools/wptrunner/requirements_opera.txt
+++ b/testing/web-platform/tests/tools/wptrunner/requirements_opera.txt
@@ -1,2 +1,2 @@
mozprocess==1.3.1
-selenium==4.18.1
+selenium==4.20.0
diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_safari.txt b/testing/web-platform/tests/tools/wptrunner/requirements_safari.txt
index bcce11aed8..0704b2dbf6 100644
--- a/testing/web-platform/tests/tools/wptrunner/requirements_safari.txt
+++ b/testing/web-platform/tests/tools/wptrunner/requirements_safari.txt
@@ -1 +1 @@
-psutil==5.9.5
+psutil==5.9.8
diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_sauce.txt b/testing/web-platform/tests/tools/wptrunner/requirements_sauce.txt
index c9e42346ce..806352e87e 100644
--- a/testing/web-platform/tests/tools/wptrunner/requirements_sauce.txt
+++ b/testing/web-platform/tests/tools/wptrunner/requirements_sauce.txt
@@ -1,2 +1,2 @@
-selenium==4.18.1
+selenium==4.20.0
requests==2.31.0
diff --git a/testing/web-platform/tests/tools/wptrunner/tox.ini b/testing/web-platform/tests/tools/wptrunner/tox.ini
index 82d3ac6f55..c380be1252 100644
--- a/testing/web-platform/tests/tools/wptrunner/tox.ini
+++ b/testing/web-platform/tests/tools/wptrunner/tox.ini
@@ -2,7 +2,7 @@
xfail_strict=true
[tox]
-envlist = py311-{base,chrome,firefox,opera,safari,sauce,servo,webkit,webkitgtk_minibrowser,epiphany},{py37,py38,py39,py310}-base
+envlist = py312-{base,chrome,firefox,opera,safari,sauce,servo,webkit,webkitgtk_minibrowser,epiphany},{py38,py39,py310,py311}-base
skip_missing_interpreters = False
[testenv]
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py
index 81dc549d73..d54a9be943 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py
@@ -22,14 +22,13 @@ All classes and functions named in the above dict must be imported into the
module global scope.
"""
-product_list = ["android_weblayer",
- "android_webview",
+product_list = ["android_webview",
"chrome",
"chrome_android",
"chrome_ios",
"chromium",
"content_shell",
- "edgechromium",
+ "edge",
"firefox",
"firefox_android",
"safari",
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py
deleted file mode 100644
index db23b64793..0000000000
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py
+++ /dev/null
@@ -1,105 +0,0 @@
-# mypy: allow-untyped-defs
-
-from .base import NullBrowser # noqa: F401
-from .base import require_arg
-from .base import get_timeout_multiplier # noqa: F401
-from .chrome import executor_kwargs as chrome_executor_kwargs
-from .chrome_android import ChromeAndroidBrowserBase
-from ..executors.base import WdspecExecutor # noqa: F401
-from ..executors.executorchrome import ChromeDriverPrintRefTestExecutor # noqa: F401
-from ..executors.executorwebdriver import (WebDriverCrashtestExecutor, # noqa: F401
- WebDriverTestharnessExecutor, # noqa: F401
- WebDriverRefTestExecutor) # noqa: F401
-
-
-__wptrunner__ = {"product": "android_weblayer",
- "check_args": "check_args",
- "browser": {None: "WeblayerShell",
- "wdspec": "NullBrowser"},
- "executor": {"testharness": "WebDriverTestharnessExecutor",
- "reftest": "WebDriverRefTestExecutor",
- "print-reftest": "ChromeDriverPrintRefTestExecutor",
- "wdspec": "WdspecExecutor",
- "crashtest": "WebDriverCrashtestExecutor"},
- "browser_kwargs": "browser_kwargs",
- "executor_kwargs": "executor_kwargs",
- "env_extras": "env_extras",
- "env_options": "env_options",
- "timeout_multiplier": "get_timeout_multiplier"}
-
-_wptserve_ports = set()
-
-
-def check_args(**kwargs):
- require_arg(kwargs, "webdriver_binary")
-
-
-def browser_kwargs(logger, test_type, run_info_data, config, **kwargs):
- return {"binary": kwargs["binary"],
- "adb_binary": kwargs["adb_binary"],
- "device_serial": kwargs["device_serial"],
- "webdriver_binary": kwargs["webdriver_binary"],
- "webdriver_args": kwargs.get("webdriver_args"),
- "stackwalk_binary": kwargs.get("stackwalk_binary"),
- "symbols_path": kwargs.get("symbols_path")}
-
-
-def executor_kwargs(logger, test_type, test_environment, run_info_data,
- **kwargs):
- # Use update() to modify the global list in place.
- _wptserve_ports.update(set(
- test_environment.config['ports']['http'] + test_environment.config['ports']['https'] +
- test_environment.config['ports']['ws'] + test_environment.config['ports']['wss']
- ))
-
- executor_kwargs = chrome_executor_kwargs(logger, test_type, test_environment, run_info_data,
- **kwargs)
- del executor_kwargs["capabilities"]["goog:chromeOptions"]["prefs"]
- capabilities = executor_kwargs["capabilities"]
- # Note that for WebLayer, we launch a test shell and have the test shell use
- # WebLayer.
- # https://cs.chromium.org/chromium/src/weblayer/shell/android/shell_apk/
- capabilities["goog:chromeOptions"]["androidPackage"] = \
- "org.chromium.weblayer.shell"
- capabilities["goog:chromeOptions"]["androidActivity"] = ".WebLayerShellActivity"
- capabilities["goog:chromeOptions"]["androidKeepAppDataDir"] = \
- kwargs.get("keep_app_data_directory")
-
- # Workaround: driver.quit() cannot quit WeblayerShell.
- executor_kwargs["pause_after_test"] = False
- # Workaround: driver.close() is not supported.
- executor_kwargs["restart_after_test"] = True
- executor_kwargs["close_after_done"] = False
- return executor_kwargs
-
-
-def env_extras(**kwargs):
- return []
-
-
-def env_options():
- # allow the use of host-resolver-rules in lieu of modifying /etc/hosts file
- return {"server_host": "127.0.0.1"}
-
-
-class WeblayerShell(ChromeAndroidBrowserBase):
- """Chrome is backed by chromedriver, which is supplied through
- ``wptrunner.webdriver.ChromeDriverServer``.
- """
-
- def __init__(self, logger, binary,
- webdriver_binary="chromedriver",
- adb_binary=None,
- remote_queue=None,
- device_serial=None,
- webdriver_args=None,
- stackwalk_binary=None,
- symbols_path=None):
- """Creates a new representation of Chrome. The `binary` argument gives
- the browser binary to use for testing."""
- super().__init__(logger,
- webdriver_binary, adb_binary, remote_queue,
- device_serial, webdriver_args, stackwalk_binary,
- symbols_path)
- self.binary = binary
- self.wptserver_ports = _wptserve_ports
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py
index 8198bfe11d..c0a176743d 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py
@@ -53,13 +53,13 @@ def browser_kwargs(logger, test_type, run_info_data, config, **kwargs):
"webdriver_args": kwargs.get("webdriver_args")}
-def executor_kwargs(logger, test_type, test_environment, run_info_data,
+def executor_kwargs(logger, test_type, test_environment, run_info_data, subsuite,
**kwargs):
sanitizer_enabled = kwargs.get("sanitizer_enabled")
if sanitizer_enabled:
test_type = "crashtest"
executor_kwargs = base_executor_kwargs(test_type, test_environment, run_info_data,
- **kwargs)
+ subsuite, **kwargs)
executor_kwargs["close_after_done"] = True
executor_kwargs["sanitizer_enabled"] = sanitizer_enabled
executor_kwargs["reuse_window"] = kwargs.get("reuse_window", False)
@@ -115,6 +115,10 @@ def executor_kwargs(logger, test_type, test_environment, run_info_data,
# The GenericSensorExtraClasses flag enables the browser-side
# implementation of sensors such as Ambient Light Sensor.
chrome_options["args"].append("--enable-features=GenericSensorExtraClasses")
+ # Do not show Chrome for Testing infobar. For other Chromium build this
+ # flag is no-op. Required to avoid flakiness in tests, as the infobar
+ # changes the viewport, which can happen during the test run.
+ chrome_options["args"].append("--disable-infobars")
# Classify `http-private`, `http-public` and https variants in the
# appropriate IP address spaces.
@@ -134,8 +138,14 @@ def executor_kwargs(logger, test_type, test_environment, run_info_data,
chrome_options["args"].append(
"--ip-address-space-overrides=" + address_space_overrides_arg)
+ # Always disable antialiasing on the Ahem font.
+ blink_features = ['DisableAhemAntialias']
+
if kwargs["enable_mojojs"]:
- chrome_options["args"].append("--enable-blink-features=MojoJS,MojoJSTest")
+ blink_features.append('MojoJS')
+ blink_features.append('MojoJSTest')
+
+ chrome_options["args"].append("--enable-blink-features=" + ','.join(blink_features))
if kwargs["enable_swiftshader"]:
# https://chromium.googlesource.com/chromium/src/+/HEAD/docs/gpu/swiftshader.md
@@ -149,6 +159,10 @@ def executor_kwargs(logger, test_type, test_environment, run_info_data,
if arg not in chrome_options["args"]:
chrome_options["args"].append(arg)
+ for arg in subsuite.config.get("binary_args", []):
+ if arg not in chrome_options["args"]:
+ chrome_options["args"].append(arg)
+
# Pass the --headless=new flag to Chrome if WPT's own --headless flag was
# set. '--headless' should always mean the new headless mode, as the old
# headless mode is not used anyway.
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edge.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edge.py
new file mode 100644
index 0000000000..82597c9312
--- /dev/null
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edge.py
@@ -0,0 +1,70 @@
+# mypy: allow-untyped-defs
+from .base import WebDriverBrowser, require_arg
+from .base import get_timeout_multiplier # noqa: F401
+from .base import cmd_arg
+from .chrome import executor_kwargs as chrome_executor_kwargs
+from ..executors.executorwebdriver import WebDriverCrashtestExecutor # noqa: F401
+from ..executors.base import WdspecExecutor # noqa: F401
+from ..executors.executoredge import ( # noqa: F401
+ EdgeDriverPrintRefTestExecutor,
+ EdgeDriverRefTestExecutor,
+ EdgeDriverTestharnessExecutor,
+)
+
+
+__wptrunner__ = {"product": "edge",
+ "check_args": "check_args",
+ "browser": "EdgeBrowser",
+ "executor": {"testharness": "EdgeDriverTestharnessExecutor",
+ "reftest": "EdgeDriverRefTestExecutor",
+ "print-reftest": "EdgeDriverPrintRefTestExecutor",
+ "wdspec": "WdspecExecutor",
+ "crashtest": "WebDriverCrashtestExecutor"},
+ "browser_kwargs": "browser_kwargs",
+ "executor_kwargs": "executor_kwargs",
+ "env_extras": "env_extras",
+ "env_options": "env_options",
+ "update_properties": "update_properties",
+ "timeout_multiplier": "get_timeout_multiplier",}
+
+
+def check_args(**kwargs):
+ require_arg(kwargs, "webdriver_binary")
+
+
+def browser_kwargs(logger, test_type, run_info_data, config, **kwargs):
+ return {"binary": kwargs["binary"],
+ "webdriver_binary": kwargs["webdriver_binary"],
+ "webdriver_args": kwargs.get("webdriver_args")}
+
+
+def executor_kwargs(logger, test_type, test_environment, run_info_data,
+ **kwargs):
+ executor_kwargs = chrome_executor_kwargs(logger, test_type, test_environment, run_info_data, **kwargs)
+ capabilities = executor_kwargs["capabilities"]
+ capabilities["ms:edgeOptions"] = capabilities.pop("goog:chromeOptions")
+ return executor_kwargs
+
+
+def env_extras(**kwargs):
+ return []
+
+
+def env_options():
+ return {"server_host": "127.0.0.1"}
+
+
+def update_properties():
+ return (["debug", "os", "processor"], {"os": ["version"], "processor": ["bits"]})
+
+
+class EdgeBrowser(WebDriverBrowser):
+ """MicrosoftEdge is backed by MSEdgeDriver, which is supplied through
+ ``wptrunner.webdriver.EdgeDriverServer``.
+ """
+
+ def make_command(self):
+ return [self.webdriver_binary,
+ cmd_arg("port", str(self.port)),
+ cmd_arg("url-base", self.base_path),
+ cmd_arg("enable-edge-logs")] + self.webdriver_args
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edgechromium.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edgechromium.py
deleted file mode 100644
index 4f5bffa06c..0000000000
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/edgechromium.py
+++ /dev/null
@@ -1,70 +0,0 @@
-# mypy: allow-untyped-defs
-from .base import WebDriverBrowser, require_arg
-from .base import get_timeout_multiplier # noqa: F401
-from .base import cmd_arg
-from .chrome import executor_kwargs as chrome_executor_kwargs
-from ..executors.executorwebdriver import WebDriverCrashtestExecutor # noqa: F401
-from ..executors.base import WdspecExecutor # noqa: F401
-from ..executors.executoredge import ( # noqa: F401
- EdgeChromiumDriverPrintRefTestExecutor,
- EdgeChromiumDriverRefTestExecutor,
- EdgeChromiumDriverTestharnessExecutor,
-)
-
-
-__wptrunner__ = {"product": "edgechromium",
- "check_args": "check_args",
- "browser": "EdgeChromiumBrowser",
- "executor": {"testharness": "EdgeChromiumDriverTestharnessExecutor",
- "reftest": "EdgeChromiumDriverRefTestExecutor",
- "print-reftest": "EdgeChromiumDriverPrintRefTestExecutor",
- "wdspec": "WdspecExecutor",
- "crashtest": "WebDriverCrashtestExecutor"},
- "browser_kwargs": "browser_kwargs",
- "executor_kwargs": "executor_kwargs",
- "env_extras": "env_extras",
- "env_options": "env_options",
- "update_properties": "update_properties",
- "timeout_multiplier": "get_timeout_multiplier",}
-
-
-def check_args(**kwargs):
- require_arg(kwargs, "webdriver_binary")
-
-
-def browser_kwargs(logger, test_type, run_info_data, config, **kwargs):
- return {"binary": kwargs["binary"],
- "webdriver_binary": kwargs["webdriver_binary"],
- "webdriver_args": kwargs.get("webdriver_args")}
-
-
-def executor_kwargs(logger, test_type, test_environment, run_info_data,
- **kwargs):
- executor_kwargs = chrome_executor_kwargs(logger, test_type, test_environment, run_info_data, **kwargs)
- capabilities = executor_kwargs["capabilities"]
- capabilities["ms:edgeOptions"] = capabilities.pop("goog:chromeOptions")
- return executor_kwargs
-
-
-def env_extras(**kwargs):
- return []
-
-
-def env_options():
- return {"server_host": "127.0.0.1"}
-
-
-def update_properties():
- return (["debug", "os", "processor"], {"os": ["version"], "processor": ["bits"]})
-
-
-class EdgeChromiumBrowser(WebDriverBrowser):
- """MicrosoftEdge is backed by MSEdgeDriver, which is supplied through
- ``wptrunner.webdriver.EdgeChromiumDriverServer``.
- """
-
- def make_command(self):
- return [self.webdriver_binary,
- cmd_arg("port", str(self.port)),
- cmd_arg("url-base", self.base_path),
- cmd_arg("enable-edge-logs")] + self.webdriver_args
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py
index 814b8b8d75..d977930a28 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py
@@ -132,6 +132,7 @@ def browser_kwargs(logger, test_type, run_info_data, config, subsuite, **kwargs)
"headless": kwargs["headless"],
"preload_browser": kwargs["preload_browser"] and not kwargs["pause_after_test"] and not kwargs["num_test_groups"] == 1,
"specialpowers_path": kwargs["specialpowers_path"],
+ "allow_list_paths": kwargs["allow_list_paths"],
"debug_test": kwargs["debug_test"]}
if test_type == "wdspec" and kwargs["binary"]:
browser_kwargs["webdriver_args"].extend(["--binary", kwargs["binary"]])
@@ -644,7 +645,8 @@ class GeckodriverOutputHandler(FirefoxOutputHandler):
class ProfileCreator:
def __init__(self, logger, prefs_root, config, test_type, extra_prefs,
disable_fission, debug_test, browser_channel, binary,
- package_name, certutil_binary, ca_certificate_path):
+ package_name, certutil_binary, ca_certificate_path,
+ allow_list_paths):
self.logger = logger
self.prefs_root = prefs_root
self.config = config
@@ -658,6 +660,7 @@ class ProfileCreator:
self.package_name = package_name
self.certutil_binary = certutil_binary
self.ca_certificate_path = ca_certificate_path
+ self.allow_list_paths = allow_list_paths
def create(self, **kwargs):
"""Create a Firefox profile and return the mozprofile Profile object pointing at that
@@ -669,6 +672,7 @@ class ProfileCreator:
profile = FirefoxProfile(preferences=preferences,
restore=False,
+ allowlistpaths=self.allow_list_paths,
**kwargs)
self._set_required_prefs(profile)
if self.ca_certificate_path is not None:
@@ -795,7 +799,7 @@ class FirefoxBrowser(Browser):
stackfix_dir=None, binary_args=None, timeout_multiplier=None, leak_check=False,
asan=False, chaos_mode_flags=None, config=None,
browser_channel="nightly", headless=None, preload_browser=False,
- specialpowers_path=None, debug_test=False, **kwargs):
+ specialpowers_path=None, debug_test=False, allow_list_paths=None, **kwargs):
Browser.__init__(self, logger)
self.logger = logger
@@ -826,7 +830,8 @@ class FirefoxBrowser(Browser):
binary,
package_name,
certutil_binary,
- ca_certificate_path)
+ ca_certificate_path,
+ allow_list_paths)
if preload_browser:
instance_manager_cls = PreloadInstanceManager
@@ -899,7 +904,7 @@ class FirefoxWdSpecBrowser(WebDriverBrowser):
disable_fission=False, stackfix_dir=None, leak_check=False,
asan=False, chaos_mode_flags=None, config=None, browser_channel="nightly",
headless=None, debug_test=False, profile_creator_cls=ProfileCreator,
- **kwargs):
+ allow_list_paths=None, **kwargs):
super().__init__(logger, binary, webdriver_binary, webdriver_args)
self.binary = binary
@@ -927,7 +932,8 @@ class FirefoxWdSpecBrowser(WebDriverBrowser):
binary,
package_name,
certutil_binary,
- ca_certificate_path)
+ ca_certificate_path,
+ allow_list_paths)
self.profile = profile_creator.create()
self.marionette_port = None
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox_android.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox_android.py
index 7c158902e1..526f83d595 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox_android.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox_android.py
@@ -148,11 +148,13 @@ def get_environ(chaos_mode_flags, env_extras=None):
class ProfileCreator(FirefoxProfileCreator):
def __init__(self, logger, prefs_root, config, test_type, extra_prefs,
disable_fission, debug_test, browser_channel, binary,
- package_name, certutil_binary, ca_certificate_path):
+ package_name, certutil_binary, ca_certificate_path,
+ allow_list_paths=None):
super().__init__(logger, prefs_root, config, test_type, extra_prefs,
disable_fission, debug_test, browser_channel, None,
- package_name, certutil_binary, ca_certificate_path)
+ package_name, certutil_binary, ca_certificate_path,
+ allow_list_paths)
def _set_required_prefs(self, profile):
profile.set_preferences({
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py
index cb9c1a1508..6e0c081b48 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/actions.py
@@ -443,6 +443,26 @@ class GetVirtualSensorInformationAction:
self.logger.debug("Requesting information from %s sensor" % sensor_type)
return self.protocol.virtual_sensor.get_virtual_sensor_information(sensor_type)
+class SetDevicePostureAction:
+ name = "set_device_posture"
+
+ def __init__(self, logger, protocol):
+ self.logger = logger
+ self.protocol = protocol
+
+ def __call__(self, payload):
+ posture = payload["posture"]
+ return self.protocol.device_posture.set_device_posture(posture)
+
+class ClearDevicePostureAction:
+ name = "clear_device_posture"
+
+ def __init__(self, logger, protocol):
+ self.logger = logger
+ self.protocol = protocol
+
+ def __call__(self, payload):
+ return self.protocol.device_posture.clear_device_posture()
actions = [ClickAction,
DeleteAllCookiesAction,
@@ -477,4 +497,6 @@ actions = [ClickAction,
CreateVirtualSensorAction,
UpdateVirtualSensorAction,
RemoveVirtualSensorAction,
- GetVirtualSensorInformationAction]
+ GetVirtualSensorInformationAction,
+ SetDevicePostureAction,
+ ClearDevicePostureAction]
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py
index 763b6fcb19..92a782e835 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py
@@ -313,7 +313,7 @@ class TestExecutor:
result = self.do_test(test)
except Exception as e:
exception_string = traceback.format_exc()
- message = f"Exception in TextExecutor.run:\n{exception_string}"
+ message = f"Exception in TestExecutor.run:\n{exception_string}"
self.logger.warning(message)
result = self.result_from_exception(test, e, exception_string)
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executoredge.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executoredge.py
index cbe5eadf9a..3b62cb7477 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executoredge.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executoredge.py
@@ -20,42 +20,42 @@ here = os.path.dirname(__file__)
_SanitizerMixin = make_sanitizer_mixin(WebDriverCrashtestExecutor)
-class EdgeChromiumDriverTestharnessProtocolPart(ChromeDriverTestharnessProtocolPart):
+class EdgeDriverTestharnessProtocolPart(ChromeDriverTestharnessProtocolPart):
def setup(self):
super().setup()
self.cdp_company_prefix = "ms"
-class EdgeChromiumDriverPrintProtocolPart(ChromeDriverPrintProtocolPart):
+class EdgeDriverPrintProtocolPart(ChromeDriverPrintProtocolPart):
def setup(self):
super().setup()
self.cdp_company_prefix = "ms"
-class EdgeChromiumDriverProtocol(WebDriverProtocol):
+class EdgeDriverProtocol(WebDriverProtocol):
implements = [
- EdgeChromiumDriverPrintProtocolPart,
- EdgeChromiumDriverTestharnessProtocolPart,
+ EdgeDriverPrintProtocolPart,
+ EdgeDriverTestharnessProtocolPart,
*(part for part in WebDriverProtocol.implements
- if part.name != EdgeChromiumDriverTestharnessProtocolPart.name)
+ if part.name != EdgeDriverTestharnessProtocolPart.name)
]
reuse_window = False
-class EdgeChromiumDriverRefTestExecutor(WebDriverRefTestExecutor, _SanitizerMixin): # type: ignore
- protocol_cls = EdgeChromiumDriverProtocol
+class EdgeDriverRefTestExecutor(WebDriverRefTestExecutor, _SanitizerMixin): # type: ignore
+ protocol_cls = EdgeDriverProtocol
-class EdgeChromiumDriverTestharnessExecutor(WebDriverTestharnessExecutor, _SanitizerMixin): # type: ignore
- protocol_cls = EdgeChromiumDriverProtocol
+class EdgeDriverTestharnessExecutor(WebDriverTestharnessExecutor, _SanitizerMixin): # type: ignore
+ protocol_cls = EdgeDriverProtocol
def __init__(self, *args, reuse_window=False, **kwargs):
super().__init__(*args, **kwargs)
self.protocol.reuse_window = reuse_window
-class EdgeChromiumDriverPrintRefTestExecutor(EdgeChromiumDriverRefTestExecutor):
- protocol_cls = EdgeChromiumDriverProtocol
+class EdgeDriverPrintRefTestExecutor(EdgeDriverRefTestExecutor):
+ protocol_cls = EdgeDriverProtocol
def setup(self, runner):
super().setup(runner)
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
index 0f640d7741..05a9fc1ae4 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
@@ -45,6 +45,7 @@ from .protocol import (AccessibilityProtocolPart,
PrintProtocolPart,
DebugProtocolPart,
VirtualSensorProtocolPart,
+ DevicePostureProtocolPart,
merge_dicts)
@@ -749,6 +750,17 @@ class MarionetteVirtualSensorProtocolPart(VirtualSensorProtocolPart):
raise NotImplementedError("get_virtual_sensor_information not yet implemented")
+class MarionetteDevicePostureProtocolPart(DevicePostureProtocolPart):
+ def setup(self):
+ self.marionette = self.parent.marionette
+
+ def set_device_posture(self, posture):
+ raise NotImplementedError("set_device_posture not yet implemented")
+
+ def clear_device_posture(self):
+ raise NotImplementedError("clear_device_posture not yet implemented")
+
+
class MarionetteProtocol(Protocol):
implements = [MarionetteBaseProtocolPart,
MarionetteTestharnessProtocolPart,
@@ -769,7 +781,8 @@ class MarionetteProtocol(Protocol):
MarionettePrintProtocolPart,
MarionetteDebugProtocolPart,
MarionetteAccessibilityProtocolPart,
- MarionetteVirtualSensorProtocolPart]
+ MarionetteVirtualSensorProtocolPart,
+ MarionetteDevicePostureProtocolPart]
def __init__(self, executor, browser, capabilities=None, timeout_multiplier=1, e10s=True, ccov=False):
do_delayed_imports()
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
index 6df2d96461..69013e5e79 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
@@ -35,6 +35,7 @@ from .protocol import (BaseProtocolPart,
RPHRegistrationsProtocolPart,
FedCMProtocolPart,
VirtualSensorProtocolPart,
+ DevicePostureProtocolPart,
merge_dicts)
from webdriver.client import Session
@@ -431,6 +432,16 @@ class WebDriverVirtualSensorPart(VirtualSensorProtocolPart):
def get_virtual_sensor_information(self, sensor_type):
return self.webdriver.send_session_command("GET", "sensor/%s" % sensor_type)
+class WebDriverDevicePostureProtocolPart(DevicePostureProtocolPart):
+ def setup(self):
+ self.webdriver = self.parent.webdriver
+
+ def set_device_posture(self, posture):
+ body = {"posture": posture}
+ return self.webdriver.send_session_command("POST", "deviceposture", body)
+
+ def clear_device_posture(self):
+ return self.webdriver.send_session_command("DELETE", "deviceposture")
class WebDriverProtocol(Protocol):
implements = [WebDriverBaseProtocolPart,
@@ -450,7 +461,8 @@ class WebDriverProtocol(Protocol):
WebDriverRPHRegistrationsProtocolPart,
WebDriverFedCMProtocolPart,
WebDriverDebugProtocolPart,
- WebDriverVirtualSensorPart]
+ WebDriverVirtualSensorPart,
+ WebDriverDevicePostureProtocolPart]
def __init__(self, executor, browser, capabilities, **kwargs):
super().__init__(executor, browser)
@@ -527,7 +539,9 @@ class WebDriverRun(TimedRunner):
self.result = True, self.func(self.protocol, self.url, self.timeout)
except (error.TimeoutException, error.ScriptTimeoutException):
self.result = False, ("EXTERNAL-TIMEOUT", None)
- except (socket.timeout, error.UnknownErrorException):
+ except socket.timeout:
+ # Checking if the browser is alive below is likely to hang, so mark
+ # this case as a CRASH unconditionally.
self.result = False, ("CRASH", None)
except Exception as e:
if (isinstance(e, error.WebDriverException) and
@@ -536,11 +550,12 @@ class WebDriverRun(TimedRunner):
# workaround for https://bugs.chromium.org/p/chromedriver/issues/detail?id=2001
self.result = False, ("EXTERNAL-TIMEOUT", None)
else:
+ status = "INTERNAL-ERROR" if self.protocol.is_alive() else "CRASH"
message = str(getattr(e, "message", ""))
if message:
message += "\n"
message += traceback.format_exc()
- self.result = False, ("INTERNAL-ERROR", message)
+ self.result = False, (status, message)
finally:
self.result_flag.set()
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py
index e44d1a7666..3d588738b6 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py
@@ -802,3 +802,17 @@ class VirtualSensorProtocolPart(ProtocolPart):
@abstractmethod
def get_virtual_sensor_information(self, sensor_type):
pass
+
+class DevicePostureProtocolPart(ProtocolPart):
+ """Protocol part for Device Posture"""
+ __metaclass__ = ABCMeta
+
+ name = "device_posture"
+
+ @abstractmethod
+ def set_device_posture(self, posture):
+ pass
+
+ @abstractmethod
+ def clear_device_posture(self):
+ pass
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/testdriver-extra.js b/testing/web-platform/tests/tools/wptrunner/wptrunner/testdriver-extra.js
index af25bf4111..87d3826bfc 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/testdriver-extra.js
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/testdriver-extra.js
@@ -327,4 +327,12 @@
window.test_driver_internal.get_virtual_sensor_information = function(sensor_type, context=null) {
return create_action("get_virtual_sensor_information", {sensor_type, context});
};
+
+ window.test_driver_internal.set_device_posture = function(posture, context=null) {
+ return create_action("set_device_posture", {posture, context});
+ };
+
+ window.test_driver_internal.clear_device_posture = function(context=null) {
+ return create_action("clear_device_posture", {context});
+ };
})();
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/testrunner.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/testrunner.py
index 70da22f5b7..93e19fa47b 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/testrunner.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/testrunner.py
@@ -1,7 +1,6 @@
# mypy: allow-untyped-defs
import threading
-import time
import traceback
from queue import Empty
from collections import namedtuple, defaultdict
@@ -31,6 +30,30 @@ TestImplementation = namedtuple('TestImplementation',
'browser_cls', 'browser_kwargs'])
+class StopFlag:
+ """Synchronization for coordinating a graceful exit."""
+
+ def __init__(self, size: int):
+ # Flag that is polled by threads so that they can gracefully exit in the
+ # face of SIGINT.
+ self._should_stop = threading.Event()
+ # A barrier that each `TestRunnerManager` thread waits on when exiting
+ # its run loop. This provides a reliable way for the `ManagerGroup` to
+ # tell when all threads have cleaned up their resources.
+ #
+ # The barrier's extra waiter is the main thread (`ManagerGroup`).
+ self._all_managers_done = threading.Barrier(1 + size)
+
+ def stop(self) -> None:
+ self._should_stop.set()
+
+ def should_stop(self) -> bool:
+ return self._should_stop.is_set()
+
+ def wait_for_all_managers_done(self, timeout: Optional[float] = None) -> None:
+ self._all_managers_done.wait(timeout)
+
+
class LogMessageHandler:
def __init__(self, send_message):
self.send_message = send_message
@@ -443,7 +466,8 @@ class TestRunnerManager(threading.Thread):
if self.browser is not None:
assert self.browser.browser is not None
self.browser.browser.cleanup()
- self.logger.debug("TestRunnerManager main loop terminated")
+ self.logger.debug("TestRunnerManager main loop terminated")
+ self.parent_stop_flag.wait_for_all_managers_done()
def wait_event(self):
dispatch = {
@@ -517,7 +541,7 @@ class TestRunnerManager(threading.Thread):
return f(*data)
def should_stop(self):
- return self.child_stop_flag.is_set() or self.parent_stop_flag.is_set()
+ return self.child_stop_flag.is_set() or self.parent_stop_flag.should_stop()
def start_init(self):
subsuite, test_type, test, test_group, group_metadata = self.get_next_test()
@@ -977,9 +1001,7 @@ class ManagerGroup:
self.max_restarts = max_restarts
self.pool = set()
- # Event that is polled by threads so that they can gracefully exit in the face
- # of sigint
- self.stop_flag = threading.Event()
+ self.stop_flag = None
self.logger = structuredlog.StructuredLogger(suite_name)
def __enter__(self):
@@ -992,6 +1014,7 @@ class ManagerGroup:
"""Start all managers in the group"""
test_queue, size = self.test_queue_builder.make_queue(tests)
self.logger.info("Using %i child processes" % size)
+ self.stop_flag = StopFlag(size)
for idx in range(size):
manager = TestRunnerManager(self.suite_name,
@@ -1020,18 +1043,31 @@ class ManagerGroup:
timeout: Overall timeout (in seconds) for all threads to join. The
default value indicates an indefinite timeout.
"""
- deadline = None if timeout is None else time.time() + timeout
- for manager in self.pool:
- manager_timeout = None
- if deadline is not None:
- manager_timeout = max(0, deadline - time.time())
- manager.join(manager_timeout)
+ # Here, the main thread cannot simply `join()` the threads in
+ # `self.pool` sequentially because a keyboard interrupt raised during a
+ # `Thread.join()` may incorrectly mark that thread as "stopped" when it
+ # is not [0, 1]. Subsequent `join()`s for the affected thread won't
+ # block anymore, so a subsequent `ManagerGroup.wait()` may return with
+ # that thread still alive.
+ #
+ # To the extent the timeout allows, it's important that
+ # `ManagerGroup.wait()` returns with all `TestRunnerManager` threads
+ # actually stopped. Otherwise, a live thread may log after `mozlog`
+ # shutdown (not allowed) or worse, leak browser processes that the
+ # thread should have stopped when exiting its run loop [2].
+ #
+ # [0]: https://github.com/python/cpython/issues/90882
+ # [1]: https://github.com/python/cpython/blob/558b517b/Lib/threading.py#L1146-L1178
+ # [2]: https://crbug.com/330236796
+ assert self.stop_flag, "ManagerGroup hasn't been started yet"
+ self.stop_flag.wait_for_all_managers_done(timeout)
def stop(self):
"""Set the stop flag so that all managers in the group stop as soon
as possible"""
- self.stop_flag.set()
- self.logger.debug("Stop flag set in ManagerGroup")
+ if self.stop_flag:
+ self.stop_flag.stop()
+ self.logger.debug("Stop flag set in ManagerGroup")
def test_count(self):
return sum(manager.test_count for manager in self.pool)
diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py
index d65369b380..d9d85de6a4 100644
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py
@@ -396,11 +396,16 @@ def run_tests(config, product, test_paths, **kwargs):
product.check_args(**kwargs)
+ kwargs["allow_list_paths"] = []
if kwargs["install_fonts"]:
+ # Add test font to allow list for sandbox to ensure that the content
+ # processes will have read access.
+ ahem_path = os.path.join(test_paths["/"].tests_path, "fonts/Ahem.ttf")
+ kwargs["allow_list_paths"].append(ahem_path)
env_extras.append(FontInstaller(
logger,
font_dir=kwargs["font_dir"],
- ahem=os.path.join(test_paths["/"].tests_path, "fonts/Ahem.ttf")
+ ahem=ahem_path
))
recording.set(["startup", "load_tests"])
diff --git a/testing/web-platform/tests/tools/wptserve/setup.py b/testing/web-platform/tests/tools/wptserve/setup.py
index 1496fa7e17..36aa98f1d8 100644
--- a/testing/web-platform/tests/tools/wptserve/setup.py
+++ b/testing/web-platform/tests/tools/wptserve/setup.py
@@ -1,7 +1,10 @@
from setuptools import setup
-PACKAGE_VERSION = '4.0'
-deps = ["h2>=4.1.0"]
+PACKAGE_VERSION = '4.0.2'
+deps = [
+ "h2>=4.1.0",
+ "pywebsocket3>=4.0.2",
+]
setup(name='wptserve',
version=PACKAGE_VERSION,
diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/response.py b/testing/web-platform/tests/tools/wptserve/wptserve/response.py
index a6ece62dab..8d0e01bbdd 100644
--- a/testing/web-platform/tests/tools/wptserve/wptserve/response.py
+++ b/testing/web-platform/tests/tools/wptserve/wptserve/response.py
@@ -4,7 +4,7 @@ import json
import uuid
import traceback
from collections import OrderedDict
-from datetime import datetime, timedelta
+from datetime import datetime, timedelta, timezone
from io import BytesIO
from hpack.struct import HeaderTuple
@@ -135,7 +135,7 @@ class Response:
"oct", "nov", "dec"])}
if isinstance(expires, timedelta):
- expires = datetime.utcnow() + expires
+ expires = datetime.now(timezone.utc) + expires
if expires is not None:
expires_str = expires.strftime("%d %%s %Y %H:%M:%S GMT")
diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/server.py b/testing/web-platform/tests/tools/wptserve/wptserve/server.py
index 8ce36201ee..1863861542 100644
--- a/testing/web-platform/tests/tools/wptserve/wptserve/server.py
+++ b/testing/web-platform/tests/tools/wptserve/wptserve/server.py
@@ -23,8 +23,8 @@ from h2.utilities import extract_method_header
from urllib.parse import urlsplit, urlunsplit
-from mod_pywebsocket import dispatch
-from mod_pywebsocket.handshake import HandshakeException, AbortedByUserException
+from pywebsocket3 import dispatch
+from pywebsocket3.handshake import HandshakeException, AbortedByUserException
from . import routes as default_routes
from .config import ConfigBuilder
diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py
index 5a16097e37..25f86e019e 100644
--- a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py
+++ b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py
@@ -6,7 +6,7 @@ import random
import shutil
import subprocess
import tempfile
-from datetime import datetime, timedelta
+from datetime import datetime, timedelta, timezone
# Amount of time beyond the present to consider certificates "expired." This
# allows certificates to be proactively re-generated in the "buffer" period
@@ -316,7 +316,7 @@ class OpenSSLEnvironment:
# Because `strptime` does not account for time zone offsets, it is
# always in terms of UTC, so the current time should be calculated
# accordingly.
- if end_date < datetime.utcnow() + time_buffer:
+ if end_date < datetime.now(timezone.utc) + time_buffer:
return False
#TODO: check the key actually signed the cert.
diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/ws_h2_handshake.py b/testing/web-platform/tests/tools/wptserve/wptserve/ws_h2_handshake.py
index af668dd558..ab1ab958a0 100644
--- a/testing/web-platform/tests/tools/wptserve/wptserve/ws_h2_handshake.py
+++ b/testing/web-platform/tests/tools/wptserve/wptserve/ws_h2_handshake.py
@@ -7,12 +7,12 @@ Specification:
https://tools.ietf.org/html/rfc8441
"""
-from mod_pywebsocket import common
+from pywebsocket3 import common
-from mod_pywebsocket.handshake.base import get_mandatory_header
-from mod_pywebsocket.handshake.base import HandshakeException
-from mod_pywebsocket.handshake.base import validate_mandatory_header
-from mod_pywebsocket.handshake.base import HandshakerBase
+from pywebsocket3.handshake.base import get_mandatory_header
+from pywebsocket3.handshake.base import HandshakeException
+from pywebsocket3.handshake.base import validate_mandatory_header
+from pywebsocket3.handshake.base import HandshakerBase
def check_connect_method(request):
diff --git a/testing/web-platform/tests/trust-tokens/end-to-end/has-trust-token-with-no-top-frame.tentative.https.html b/testing/web-platform/tests/trust-tokens/end-to-end/has-trust-token-with-no-top-frame.tentative.https.html
index a384bec3c2..bc92422e36 100644
--- a/testing/web-platform/tests/trust-tokens/end-to-end/has-trust-token-with-no-top-frame.tentative.https.html
+++ b/testing/web-platform/tests/trust-tokens/end-to-end/has-trust-token-with-no-top-frame.tentative.https.html
@@ -12,11 +12,13 @@
const frame = document.createElement('iframe');
document.body.appendChild(frame);
const cachedDocument = window[0].document;
+ const IFrameDOMException = frame.contentWindow.DOMException;
frame.remove();
- test(() => {
- assert_equals(cachedDocument.hasPrivateToken("https://issuer.example"), undefined,
- "Can't construct a Promise in a destroyed execution context.");
+ promise_test(async t => {
+ await promise_rejects_dom(
+ t, 'InvalidStateError', IFrameDOMException,
+ cachedDocument.hasPrivateToken("https://issuer.example"));
}, 'hasPrivateToken in a destroyed document.');
</script>
</body>
diff --git a/testing/web-platform/tests/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html b/testing/web-platform/tests/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html
new file mode 100644
index 0000000000..c0f72bb36a
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/Element-setAttribute-respects-Elements-node-documents-globals-CSP.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8" />
+ <meta
+ http-equiv="Content-Security-Policy"
+ content="require-trusted-types-for 'script';"
+ />
+ <title>
+ trusted-types (TT): `setAttribute`/`setAttributeNode` for an element
+ adopted from a non-TT realm respects TT's Content-Security-Policy (CSP)
+ </title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <div id="nonSVGTestElements">
+ <iframe srcdoc="v"></iframe>
+ <embed src="v" />
+ <script src="v"></script>
+ <object data="v"></object>
+ <object codebase="v"></object>
+ </div>
+ <svg id="svgTestElements">
+ <script href="v"></script>
+ <script xlink:href="v"></script>
+ </svg>
+ <script>
+ const passThroughPolicy = trustedTypes.createPolicy("passThrough", {
+ createHTML: (s) => s,
+ });
+
+ function runTest(aTestElement) {
+ const testAttr = aTestElement.attributes[0];
+
+ async_test(
+ (t) => {
+ const sourceFrame = document.createElement("iframe");
+
+ // The markup requires the parent element to ensure the attribute is associated with the
+ // correct namespace.
+ sourceFrame.srcdoc = passThroughPolicy.createHTML(
+ `<!DOCTYPE html>
+ <head>
+ <meta charset="utf-8">
+ </head>
+ <body>
+ <` +
+ aTestElement.parentElement.localName +
+ `>
+ <` +
+ aTestElement.localName +
+ ` ` +
+ testAttr.name +
+ `="` +
+ testAttr.value +
+ `">
+ </` +
+ aTestElement.localName +
+ `>
+ </` +
+ aTestElement.parentElement.localName +
+ `>
+ doc without TT CSP.
+ </body>`
+ );
+
+ t.add_cleanup(() => {
+ sourceFrame.remove();
+ });
+
+ sourceFrame.addEventListener(
+ "load",
+ t.step_func_done(() => {
+ // A window is a global object which has 1-to-1 mapping to a realm, see the first
+ // note of <https://html.spec.whatwg.org/#realms-settings-objects-global-objects>
+ // and its following paragraph. Here, `sourceElement`'s node document's global
+ // belongs to a non-TT realm.
+
+ const sourceElement =
+ sourceFrame.contentDocument.body.querySelector(
+ aTestElement.localName
+ );
+ const sourceAttr = sourceElement.getAttributeNode(
+ testAttr.name
+ );
+ sourceElement.removeAttributeNode(sourceAttr);
+
+ document.body.append(sourceElement);
+ // Now `sourceElement`'s node document's global belongs to a TT-realm.
+
+ assert_throws_js(sourceFrame.contentWindow.TypeError, () => {
+ sourceElement.setAttributeNode(sourceAttr);
+ });
+ assert_throws_js(sourceFrame.contentWindow.TypeError, () => {
+ sourceElement.setAttributeNS(
+ sourceAttr.namespaceURI,
+ sourceAttr.name,
+ sourceAttr.value
+ );
+ });
+ })
+ );
+
+ document.body.append(sourceFrame);
+ },
+ `setAttribute and setAttributeNode respect the element's node document's global's CSP;
+ Element=${aTestElement.localName}; Parent=${aTestElement.parentElement.localName}; Attribute=${testAttr.name}`
+ );
+ }
+
+ for (const testElement of document.querySelectorAll(
+ "#nonSVGTestElements *"
+ )) {
+ runTest(testElement);
+ }
+
+ for (const testElement of document.querySelectorAll(
+ "#svgTestElements *"
+ )) {
+ runTest(testElement);
+ }
+ </script>
+ </body>
+</html>
diff --git a/testing/web-platform/tests/trusted-types/Element-setAttribute.html b/testing/web-platform/tests/trusted-types/Element-setAttribute.html
index cd6617915b..9f6eec7da2 100644
--- a/testing/web-platform/tests/trusted-types/Element-setAttribute.html
+++ b/testing/web-platform/tests/trusted-types/Element-setAttribute.html
@@ -8,7 +8,6 @@
<script>
// TrustedScriptURL Assignments
let scriptTestCases = [
- [ 'embed', 'src' ],
[ 'script', 'src' ]
];
diff --git a/testing/web-platform/tests/trusted-types/HTMLElement-generic.html b/testing/web-platform/tests/trusted-types/HTMLElement-generic.html
index 8e54fa9c57..832411b5f5 100644
--- a/testing/web-platform/tests/trusted-types/HTMLElement-generic.html
+++ b/testing/web-platform/tests/trusted-types/HTMLElement-generic.html
@@ -41,7 +41,6 @@ function getTrusted(element, attr) {
// Types is currently enabled (& enforced) or not.
function runTests(is_tt_enabled) {
for (const [element, attr] of [
- [ 'embed', 'src' ],
[ 'script', 'src' ],
[ 'div', 'innerHTML' ],
[ 'iframe', 'srcdoc' ],
diff --git a/testing/web-platform/tests/trusted-types/TrustedType-AttributeNodes.html b/testing/web-platform/tests/trusted-types/TrustedType-AttributeNodes.html
index 6b00665700..f4269a5d40 100644
--- a/testing/web-platform/tests/trusted-types/TrustedType-AttributeNodes.html
+++ b/testing/web-platform/tests/trusted-types/TrustedType-AttributeNodes.html
@@ -10,7 +10,7 @@
// identically. For background, se::
// https://github.com/w3c/webappsec-trusted-types/issues/47
- const elems = ["div", "script", "embed", "iframe"];
+ const elems = ["div", "script", "iframe"];
const attrs = ["src", "srcdoc", "onclick", "bla"];
const policy_callback = s => ("" + s + " [policy]");
diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.html
deleted file mode 100644
index 84bcb8d839..0000000000
--- a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<!DOCTYPE html>
-<script src="/resources/testharness.js" ></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="support/helper.sub.js"></script>
-
-<body>
-<div id="target"></div>
-<script>
- test(t => {
- assert_equals(trustedTypes.getPropertyType("script", "text"), "TrustedScript");
- assert_equals(trustedTypes.getPropertyType("script", "src"), "TrustedScriptURL");
- assert_equals(trustedTypes.getPropertyType("script", "id"), null);
- assert_equals(trustedTypes.getPropertyType("script", "b"), null);
- }, "sanity check trustedTypes.getPropertyType for the HTML script element.");
-
- test(t => {
- assert_equals(trustedTypes.getAttributeType("img", "onerror"), "TrustedScript");
- assert_equals(trustedTypes.getAttributeType("img", "width"), null);
- assert_equals(trustedTypes.getAttributeType("img", "madeup"), null);
- }, "sanity check trustedTypes.getAttributeType.");
-
- test(t => {
- assert_true(!!trustedTypes.getTypeMapping());
- }, "sanity check trustedTypes.getTypeMapping");
-
-
- // getPropertyType tests adapted from w3c/trusted-types polyfill:
- test(t => {
- // returns the proper type for attribute-related properties
- assert_equals(trustedTypes.getPropertyType("script", "src"), "TrustedScriptURL");
-
- // is case insensitive for tag names
- assert_equals(trustedTypes.getPropertyType("SCRIPT", "src"), "TrustedScriptURL");
-
- // is case sensitive for property names
- assert_equals(trustedTypes.getPropertyType("script", "sRc"), null);
- assert_equals(trustedTypes.getPropertyType("div", "innerhtml"), null);
-
- // returns the proper type for innerHTML
- assert_equals(trustedTypes.getPropertyType("div", "innerHTML"), "TrustedHTML");
-
- // returns the proper type for outerHTML
- assert_equals(trustedTypes.getPropertyType("div", "outerHTML"), "TrustedHTML");
-
- // returns the proper type for script.prop
- ["text", "innerText", "textContent"].forEach((prop) => {
- assert_equals(trustedTypes.getPropertyType("script", prop), "TrustedScript");
- });
- }, "getPropertyType tests adapted from w3c/trusted-types polyfill");
-
- test(t => {
- // returns the proper type
- assert_equals(trustedTypes.getAttributeType('script', 'src'), 'TrustedScriptURL');
-
- // ignores attributes from unknown namespaces
- assert_equals(trustedTypes.getAttributeType(
- 'a', 'href', '', 'http://foo.bar'), null);
-
- // is case insensitive for element names
- assert_equals(trustedTypes.getAttributeType('SCRIPT', 'src'), 'TrustedScriptURL');
-
- // is case insensitive for the attribute names
- assert_equals(trustedTypes.getAttributeType('script', 'SRC'), 'TrustedScriptURL');
-
- // supports the inline event handlers
- assert_equals(trustedTypes.getAttributeType('img', 'onerror'), 'TrustedScript');
- assert_equals(trustedTypes.getAttributeType('unknown', 'onerror'), 'TrustedScript');
-
- // defaults to undefined
- assert_equals(trustedTypes.getAttributeType('unknown', 'src'), null);
- assert_equals(trustedTypes.getAttributeType('img', 'bar'), null);
- }, "getAttributeType tests adapted from w3c/trusted-types polyfill");
-
-
- test(t=> {
- const map = trustedTypes.getTypeMapping();
-
- // Spot testing some values.
- assert_equals(map["script"].attributes.src, "TrustedScriptURL");
- assert_equals(map["*"].properties.innerHTML, "TrustedHTML");
- assert_equals(map["foo"], undefined);
-
- // getTypeMapping returns a 'clean' object, in case the return value has
- // been modified.
- map["*"].attributes["foo"] = "bar";
- assert_equals(trustedTypes.getTypeMapping()["*"].attributes["foo"], undefined);
-;
- // Unknown namespaces:
- assert_equals(trustedTypes.getTypeMapping("http://foo/bar"), null);
- }, "getTypeMapping tests adapted from w3c/trusted-types polyfill");
-
- // Test case handling for both attributes and properties.
- for (let attr of ["codeBase", "CODEBASE", "codebase"]) {
- for (let elem of ["object", "OBJECT", "oBjEcT"]) {
- test(t => {
- // attributes are case-insensitive, so all variants should be defined.
- assert_true(trustedTypes.getAttributeType(elem, attr) != undefined);
- }, `${elem}[${attr}] is defined`);
- test(t => {
- // properties are case-sensitive, so only the "correct" spelling
- // should be defined.
- assert_equals(trustedTypes.getPropertyType(elem, attr) != undefined,
- attr == "codeBase");
- }, `${elem}.${attr} is maybe defined`);
- }
- }
-
- test(t => {
- assert_equals(trustedTypes.getPropertyType("img", "onerror"), null);
- assert_equals(trustedTypes.getAttributeType("img", "onerror"), "TrustedScript");
- }, "getPropertyType vs getAttributeType for event handler.");
-</script>
-</body>
diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html
new file mode 100644
index 0000000000..e7218e9333
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-getPropertyType.tentative.html
@@ -0,0 +1,90 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js" ></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/helper.sub.js"></script>
+
+<body>
+<div id="target"></div>
+<script>
+ test(t => {
+ assert_equals(trustedTypes.getPropertyType("script", "text"), "TrustedScript");
+ assert_equals(trustedTypes.getPropertyType("script", "src"), "TrustedScriptURL");
+ assert_equals(trustedTypes.getPropertyType("script", "id"), null);
+ assert_equals(trustedTypes.getPropertyType("script", "b"), null);
+ }, "sanity check trustedTypes.getPropertyType for the HTML script element.");
+
+ test(t => {
+ assert_equals(trustedTypes.getAttributeType("img", "onerror"), "TrustedScript");
+ assert_equals(trustedTypes.getAttributeType("img", "width"), null);
+ assert_equals(trustedTypes.getAttributeType("img", "madeup"), null);
+ }, "sanity check trustedTypes.getAttributeType.");
+
+ // getPropertyType tests adapted from w3c/trusted-types polyfill:
+ test(t => {
+ // returns the proper type for attribute-related properties
+ assert_equals(trustedTypes.getPropertyType("script", "src"), "TrustedScriptURL");
+
+ // is case insensitive for tag names
+ assert_equals(trustedTypes.getPropertyType("SCRIPT", "src"), "TrustedScriptURL");
+
+ // is case sensitive for property names
+ assert_equals(trustedTypes.getPropertyType("script", "sRc"), null);
+ assert_equals(trustedTypes.getPropertyType("div", "innerhtml"), null);
+
+ // returns the proper type for innerHTML
+ assert_equals(trustedTypes.getPropertyType("div", "innerHTML"), "TrustedHTML");
+
+ // returns the proper type for outerHTML
+ assert_equals(trustedTypes.getPropertyType("div", "outerHTML"), "TrustedHTML");
+
+ // returns the proper type for script.prop
+ ["text", "innerText", "textContent"].forEach((prop) => {
+ assert_equals(trustedTypes.getPropertyType("script", prop), "TrustedScript");
+ });
+ }, "getPropertyType tests adapted from w3c/trusted-types polyfill");
+
+ test(t => {
+ // returns the proper type
+ assert_equals(trustedTypes.getAttributeType('script', 'src'), 'TrustedScriptURL');
+
+ // ignores attributes from unknown namespaces
+ assert_equals(trustedTypes.getAttributeType(
+ 'a', 'href', '', 'http://foo.bar'), null);
+
+ // is case insensitive for element names
+ assert_equals(trustedTypes.getAttributeType('SCRIPT', 'src'), 'TrustedScriptURL');
+
+ // is case insensitive for the attribute names
+ assert_equals(trustedTypes.getAttributeType('script', 'SRC'), 'TrustedScriptURL');
+
+ // supports the inline event handlers
+ assert_equals(trustedTypes.getAttributeType('img', 'onerror'), 'TrustedScript');
+ assert_equals(trustedTypes.getAttributeType('unknown', 'onerror'), 'TrustedScript');
+
+ // defaults to undefined
+ assert_equals(trustedTypes.getAttributeType('unknown', 'src'), null);
+ assert_equals(trustedTypes.getAttributeType('img', 'bar'), null);
+ }, "getAttributeType tests adapted from w3c/trusted-types polyfill");
+
+ // Test case handling for both attributes and properties.
+ for (let attr of ["srcDoc", "SRCDOC", "srcdoc"]) {
+ for (let elem of ["iframe", "IFRAME", "iFrAmE"]) {
+ test(t => {
+ // attributes are case-insensitive, so all variants should be defined.
+ assert_true(trustedTypes.getAttributeType(elem, attr) != undefined);
+ }, `${elem}[${attr}] is defined`);
+ test(t => {
+ // properties are case-sensitive, so only the "correct" spelling
+ // should be defined.
+ assert_equals(trustedTypes.getPropertyType(elem, attr) != undefined,
+ attr == "srcdoc");
+ }, `${elem}.${attr} is maybe defined`);
+ }
+ }
+
+ test(t => {
+ assert_equals(trustedTypes.getPropertyType("img", "onerror"), null);
+ assert_equals(trustedTypes.getAttributeType("img", "onerror"), "TrustedScript");
+ }, "getPropertyType vs getAttributeType for event handler.");
+</script>
+</body>
diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.html
deleted file mode 100644
index 70a5b44666..0000000000
--- a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<!DOCTYPE html>
-<meta name="timeout" content="long">
-<script src="/resources/testharness.js" ></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="support/helper.sub.js"></script>
-
-<meta http-equiv="Content-Security-Policy" content="require-trusted-types-for 'script';">
-<body>
-<div id="target"></div>
-<script>
- const policy = trustedTypes.createPolicy("anythinggoes", {
- "createHTML": x => x,
- "createScript": x => x,
- "createScriptURL": x => x,
- });
-
- const create_value = {
- "TrustedHTML": policy.createHTML("hello"),
- "TrustedScript": policy.createScript("x => x + x"),
- "TrustedScriptURL": policy.createScriptURL("https://url.invalid/blubb.js"),
- null: "empty",
- };
-
- // The tests will assign all values to all sink types. To prevent spurious
- // errors when assigning "hello" to a script sink, we'll just define a
- // varaible of that name.
- const hello = "";
-
- // We seed our elements and properties with one element/property that has no
- // 'trusted type' sinks, and one non-specced (madeup) element/property.
- // Also add several event handlers (onclick).
- let elements = ['madeup', 'b'];
- let properties = ['madeup', 'id', "onerror", "onclick"];
- const types = [null, "TrustedHTML", "TrustedScript", "TrustedScriptURL"];
-
- // We'll wrap construction of the elements/properties list in a test, mainly
- // so we'll get decent error messages when it might fail.
- test(t => {
- // Collect all element and property names from getTypeMapping().
- const map = trustedTypes.getTypeMapping();
- for (let elem in map) {
- elements.push(elem);
- properties = properties.concat(Object.keys(map[elem].properties));
- }
-
- // Remove "*" entries and de-duplicate properties.
- elements = elements.filter(s => !s.includes("*"));
- properties = properties.filter(s => !s.includes("*"));
- properties = Array.from(new Set(properties));
- }, "Prepare parameters for generic test series below.");
-
- // Iterate one test for each combination of element, property, and sink type.
- const target = document.getElementById("target");
- for (elem of elements) {
- for (property of properties) {
- for (type of types) {
- // Conceptually, our test is beautifully simple: Ask getPropertyType
- // about the expected trusted type. If it's the one we're testing,
- // expect the assignment to pass, and expect we can read back the same
- // value. If it's a different type, expect the assignment to fail.
- //
- // The idealized test case would look something like this:
- // const value = ....;
- // const test_fn = _ => { element[property] = value };
- // if (type == expected_type || !expected_type) {
- // test_fn();
- // assert_equals(element[property], value);
- // } else {
- // assert_throws_js(..., test_fn, ...);
- // }
- //
- // Below is the same logic, but extended to handle the various edge
- // cases.
- //
- // Some difficulties we need to accomodate:
- // - Some properties have built-in behaviours. (E.g. the "innerHTML"
- // value depends on whether elements are visible or not.) To
- // accomodate this, we have a big switch-statement that handles
- // those types of exceptions.
- // - Some properties parse their values, so that you can't easily get
- // the original text value back (e.g. error handlers).
- // - Some properties cause actions as side-effects (e.g. loading a
- // script), which will cause errors in the test (despite the actual
- // code-under-test meeting our expectations). This is handled with
- // a cleanup script which removes the element (and thus cancels
- // the loading actions).
- test(t => {
- const element = target.appendChild(document.createElement(elem));
- t.add_cleanup(_ => element.remove());
- const expected_type = trustedTypes.getPropertyType(elem, property);
- const value = create_value[type];
- const test_fn = _ => { element[property] = value; };
- if (type == expected_type || !expected_type) {
- test_fn();
- let result_value = element[property];
- switch (property) {
- // Node.innerText returns the rendered text of an Element, which
- // in this test case is usually empty. For this specific case,
- // let's just check "textContent" instead.
- // Node.innerHTML re-creates a text representation from the DOM,
- // which may not always match the exact input.
- case "innerText":
- case "innerHTML":
- result_value = element["textContent"];
- break;
- // Node.outerHTML replaces the node, which means the simple
- // checking logic below does not work. In this case, we'll just
- // return and hence skip the result comparison.
- case "outerHTML":
- return;
- // URL-typed accessors
- case "src":
- if (elem == "iframe")
- return;
- break;
- // Properties starting with "on" are usually error handlers,
- // which will parse their input as a function. In this case,
- // also skip the result comparison.
- default:
- if (property.startsWith("on")) return;
- break;
- }
- assert_equals("" + result_value, "" + value);
- } else {
- assert_throws_js(TypeError, test_fn, "throws");
- }
- }, `Test assignment of ${type ? type : "string"} on ${elem}.${property}`);
-
- // And once more, for attributes.
- test(t => {
- const element = target.appendChild(document.createElement(elem));
- t.add_cleanup(_ => element.remove());
- const expected_type = trustedTypes.getAttributeType(elem, property);
- const value = create_value[type];
- const test_fn = _ => { element.setAttribute(property, value); };
- if (type == expected_type || !expected_type) {
- test_fn();
- assert_equals("" + element.getAttribute(property), "" + value);
- } else if (elem == "script" && (property == "innerText" ||
- property == "textContent" || property == "text")) {
- // Due to the "slot setting" mechnanism, setting script's innerText,
- // textContent and text attributes dosn't throw. So we can't use
- // that in our tests.
- // ref: https://w3c.github.io/trusted-types/dist/spec/#setting-slot-values
- test_fn();
- } else {
- assert_throws_js(TypeError, test_fn, "throws");
- }
- }, `Test assignment of ${type ? type : "string"} on ${elem}.setAttribute(${property},..)`);
- }
- }
- }
-</script>
-</body>
diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html
new file mode 100644
index 0000000000..e7772bf0d1
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-metadata.tentative.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<meta name="timeout" content="long">
+<script src="/resources/testharness.js" ></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="support/helper.sub.js"></script>
+
+<meta http-equiv="Content-Security-Policy" content="require-trusted-types-for 'script';">
+<body>
+<div id="target"></div>
+<script>
+ const policy = trustedTypes.createPolicy("anythinggoes", {
+ "createHTML": x => x,
+ "createScript": x => x,
+ "createScriptURL": x => x,
+ });
+
+ const create_value = {
+ "TrustedHTML": policy.createHTML("hello"),
+ "TrustedScript": policy.createScript("x => x + x"),
+ "TrustedScriptURL": policy.createScriptURL("https://url.invalid/blubb.js"),
+ null: "empty",
+ };
+
+ // The tests will assign all values to all sink types. To prevent spurious
+ // errors when assigning "hello" to a script sink, we'll just define a
+ // varaible of that name.
+ const hello = "";
+
+ // We seed our elements and properties with one element/property that has no
+ // 'trusted type' sinks, and one non-specced (madeup) element/property.
+ // Also add several event handlers (onclick).
+ let elements = ['madeup', 'b'];
+ let properties = ['madeup', 'id', "onerror", "onclick"];
+ const types = [null, "TrustedHTML", "TrustedScript", "TrustedScriptURL"];
+
+ // Iterate one test for each combination of element, property, and sink type.
+ const target = document.getElementById("target");
+ for (elem of elements) {
+ for (property of properties) {
+ for (type of types) {
+ // Conceptually, our test is beautifully simple: Ask getPropertyType
+ // about the expected trusted type. If it's the one we're testing,
+ // expect the assignment to pass, and expect we can read back the same
+ // value. If it's a different type, expect the assignment to fail.
+ //
+ // The idealized test case would look something like this:
+ // const value = ....;
+ // const test_fn = _ => { element[property] = value };
+ // if (type == expected_type || !expected_type) {
+ // test_fn();
+ // assert_equals(element[property], value);
+ // } else {
+ // assert_throws_js(..., test_fn, ...);
+ // }
+ //
+ // Below is the same logic, but extended to handle the various edge
+ // cases.
+ //
+ // Some difficulties we need to accomodate:
+ // - Some properties have built-in behaviours. (E.g. the "innerHTML"
+ // value depends on whether elements are visible or not.) To
+ // accomodate this, we have a big switch-statement that handles
+ // those types of exceptions.
+ // - Some properties parse their values, so that you can't easily get
+ // the original text value back (e.g. error handlers).
+ // - Some properties cause actions as side-effects (e.g. loading a
+ // script), which will cause errors in the test (despite the actual
+ // code-under-test meeting our expectations). This is handled with
+ // a cleanup script which removes the element (and thus cancels
+ // the loading actions).
+ test(t => {
+ const element = target.appendChild(document.createElement(elem));
+ t.add_cleanup(_ => element.remove());
+ const expected_type = trustedTypes.getPropertyType(elem, property);
+ const value = create_value[type];
+ const test_fn = _ => { element[property] = value; };
+ if (type == expected_type || !expected_type) {
+ test_fn();
+ let result_value = element[property];
+ switch (property) {
+ // Node.innerText returns the rendered text of an Element, which
+ // in this test case is usually empty. For this specific case,
+ // let's just check "textContent" instead.
+ // Node.innerHTML re-creates a text representation from the DOM,
+ // which may not always match the exact input.
+ case "innerText":
+ case "innerHTML":
+ result_value = element["textContent"];
+ break;
+ // Node.outerHTML replaces the node, which means the simple
+ // checking logic below does not work. In this case, we'll just
+ // return and hence skip the result comparison.
+ case "outerHTML":
+ return;
+ // URL-typed accessors
+ case "src":
+ if (elem == "iframe")
+ return;
+ break;
+ // Properties starting with "on" are usually error handlers,
+ // which will parse their input as a function. In this case,
+ // also skip the result comparison.
+ default:
+ if (property.startsWith("on")) return;
+ break;
+ }
+ assert_equals("" + result_value, "" + value);
+ } else {
+ assert_throws_js(TypeError, test_fn, "throws");
+ }
+ }, `Test assignment of ${type ? type : "string"} on ${elem}.${property}`);
+
+ // And once more, for attributes.
+ test(t => {
+ const element = target.appendChild(document.createElement(elem));
+ t.add_cleanup(_ => element.remove());
+ const expected_type = trustedTypes.getAttributeType(elem, property);
+ const value = create_value[type];
+ const test_fn = _ => { element.setAttribute(property, value); };
+ if (type == expected_type || !expected_type) {
+ test_fn();
+ assert_equals("" + element.getAttribute(property), "" + value);
+ } else if (elem == "script" && (property == "innerText" ||
+ property == "textContent" || property == "text")) {
+ // Due to the "slot setting" mechnanism, setting script's innerText,
+ // textContent and text attributes dosn't throw. So we can't use
+ // that in our tests.
+ // ref: https://w3c.github.io/trusted-types/dist/spec/#setting-slot-values
+ test_fn();
+ } else {
+ assert_throws_js(TypeError, test_fn, "throws");
+ }
+ }, `Test assignment of ${type ? type : "string"} on ${elem}.setAttribute(${property},..)`);
+ }
+ }
+ }
+</script>
+</body>
diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.html
index 295890f319..4cc877efb2 100644
--- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.html
+++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.html
@@ -13,9 +13,6 @@
// TrustedScriptURL Assignments
const scriptURLTestCases = [
- [ 'embed', 'src', INPUTS.SCRIPTURL, RESULTS.SCRIPTURL],
- [ 'object', 'data', INPUTS.SCRIPTURL, RESULTS.SCRIPTURL ],
- [ 'object', 'codeBase', INPUTS.SCRIPTURL, RESULTS.SCRIPTURL ],
[ 'script', 'src', INPUTS.SCRIPTURL, RESULTS.SCRIPTURL ]
];
diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttributeNS.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttributeNS.html
index b7f74be6b7..78c8c0db98 100644
--- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttributeNS.html
+++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttributeNS.html
@@ -63,10 +63,7 @@
// <https://w3c.github.io/trusted-types/dist/spec/#validate-attribute-mutation>.
const nonLowerCaseTests = [
{ element: "iframe", attribute: "SRCDOC", elementNamespace: htmlNamespace },
- { element: "embed", attribute: "SRC", elementNamespace: htmlNamespace },
{ element: "script", attribute: "SRC", elementNamespace: htmlNamespace },
- { element: "object", attribute: "DATA", elementNamespace: htmlNamespace },
- { element: "object", attribute: "CODEBASE", elementNamespace: htmlNamespace },
{ element: "script", attribute: "HREF", elementNamespace: svgNamespace },
{ element: "script", attribute: "HREF", elementNamespace: svgNamespace,
attributeNamespace: xlinkNamespace },
diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.html
index 9e780c1ed2..a9764c0258 100644
--- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.html
+++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.html
@@ -12,9 +12,6 @@
var testnb = 0;
// TrustedScriptURL Assignments
const scriptURLTestCases = [
- [ 'embed', 'src' ],
- [ 'object', 'codeBase' ],
- [ 'object', 'data' ],
[ 'script', 'src' ]
];
diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html
index b881e8cb37..91ac9b6485 100644
--- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html
+++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-attribute-via-attribute-node.html
@@ -7,9 +7,6 @@
</head>
<body>
<div id="testcases">
- <embed src="x"></embed>
- <object data="x"></object>
- <object codeBase="x"></object>
<script src="x"></script>
<iframe srcdoc="x"></iframe>
<div onclick="x"></div>
diff --git a/testing/web-platform/tests/trusted-types/default-policy-callback-arguments.html b/testing/web-platform/tests/trusted-types/default-policy-callback-arguments.html
index a4a9c9e351..4801b55387 100644
--- a/testing/web-platform/tests/trusted-types/default-policy-callback-arguments.html
+++ b/testing/web-platform/tests/trusted-types/default-policy-callback-arguments.html
@@ -31,7 +31,7 @@
const cases = [
[ "abc", "TrustedHTML", "Element innerHTML",
_ => div.innerHTML = "abc" ],
- [ "2+2", "TrustedScript", "Node textContent",
+ [ "2+2", "TrustedScript", "HTMLScriptElement textContent",
_ => script.textContent = "2+2" ],
[ "about:blank", "TrustedScriptURL", "HTMLScriptElement src",
_ => script.src = "about:blank" ],
diff --git a/testing/web-platform/tests/trusted-types/modify-attributes-in-callback.html b/testing/web-platform/tests/trusted-types/modify-attributes-in-callback.html
new file mode 100644
index 0000000000..96b4501128
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/modify-attributes-in-callback.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<head>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <meta http-equiv="Content-Security-Policy"
+ content="require-trusted-types-for 'script'; trusted-types *">
+</head>
+<body>
+<iframe id="iframe" data-x="" srcdoc="content" onmouseover=""></iframe>
+<script>
+ // This is a regression test for https://g-issues.chromium.org/issues/333739948
+ // The test should hold true for any browser that supports Trusted Types.
+
+ let target = "data-x";
+ trustedTypes.createPolicy("default", {
+ createHTML: (s) => {
+ iframe.removeAttribute(target);
+ return s;
+ }
+ });
+
+ test(t => {
+ // Original bug report: Delete an attribute *before* the current one.
+ assert_equals(iframe.srcdoc, "content");
+ assert_equals(iframe.getAttribute("onmouseover"), "");
+ iframe.setAttribute("srcdoc", "alert(1)");
+ assert_equals(iframe.srcdoc, "alert(1)");
+ assert_equals(iframe.getAttribute("onmouseover"), "");
+ }, "Ensure the right attributes are modified.");
+
+ test(t => {
+ // Second case: Delete the exact attribute. It still gets set.
+ target = "srcdoc";
+ assert_equals(iframe.srcdoc, "alert(1)");
+ iframe.setAttribute("srcdoc", "new srcdoc value");
+ assert_equals(iframe.srcdoc, "new srcdoc value");
+ }, "Ensure the deleted attributes is modified.");
+
+</script>
diff --git a/testing/web-platform/tests/trusted-types/support/resolve-spv.js b/testing/web-platform/tests/trusted-types/support/resolve-spv.js
new file mode 100644
index 0000000000..89e58b2a8b
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/support/resolve-spv.js
@@ -0,0 +1,9 @@
+// Returns a promise that resolves with a Security Policy Violation (spv)
+ // even when it is received.
+function promise_spv() {
+ return new Promise((resolve, reject) => {
+ window.addEventListener("securitypolicyviolation", e => {
+ resolve(e);
+ }, { once: true });
+ });
+}
diff --git a/testing/web-platform/tests/trusted-types/trusted-types-svg-script-set-href.html b/testing/web-platform/tests/trusted-types/trusted-types-svg-script-set-href.html
new file mode 100644
index 0000000000..ab3174c192
--- /dev/null
+++ b/testing/web-platform/tests/trusted-types/trusted-types-svg-script-set-href.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html>
+<head>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="./support/resolve-spv.js"></script>
+ <meta http-equiv="Content-Security-Policy"
+ content="require-trusted-types-for 'script'">
+</head>
+<body>
+ <div id="log"></div>
+ <svg id="svg"><script id="script">"some script text";</script></svg>
+ <script>
+ const policy = trustedTypes.createPolicy("policy", {
+ createScript: x => x, createHTML: x => x, createScriptURL: x => x });
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ assert_throws_js(TypeError, _ => {
+ elem.href.baseVal = "about:blank";
+ });
+ document.getElementById("svg").appendChild(elem);
+ return promise_spv();
+ }, "Assign string to SVGScriptElement.href.baseVal.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ elem.href.baseVal = policy.createScriptURL("about:blank");
+ document.getElementById("svg").appendChild(elem);
+ return Promise.resolve();
+ }, "Assign TrustedScriptURL to SVGScriptElement.href.baseVal.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ assert_throws_js(TypeError, _ => {
+ elem.setAttribute("href", "about:blank");
+ });
+ document.getElementById("svg").appendChild(elem);
+ return promise_spv();
+ }, "Assign string to non-attached SVGScriptElement.href via setAttribute.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ elem.setAttribute("href", policy.createScriptURL("about:blank"));
+ document.getElementById("svg").appendChild(elem);
+ return Promise.resolve();
+ }, "Assign TrustedScriptURL to non-attached SVGScriptElement.href via setAttribute.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ document.getElementById("svg").appendChild(elem);
+ assert_throws_js(TypeError, _ => {
+ elem.setAttribute("href", "about:blank");
+ });
+ return promise_spv();
+ }, "Assign string to attached SVGScriptElement.href via setAttribute.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ document.getElementById("svg").appendChild(elem);
+ elem.setAttribute("href", policy.createScriptURL("about:blank"));
+ return Promise.resolve();
+ }, "Assign TrustedScriptURL to attached SVGScriptElement.href via setAttribute.");
+
+ // Default policy test: We repate the string assignment tests above,
+ // but now expect all of them to pass.
+ promise_test(t => {
+ trustedTypes.createPolicy("default", {
+ createScript: x => x, createHTML: x => x, createScriptURL: x => x });
+ return Promise.resolve();
+ }, "Setup default policy");
+
+ promise_test(t => {
+ document.getElementById("script").innerHTML = "'modified via innerHTML';";
+ return Promise.resolve();
+ }, "Assign String to SVGScriptElement.innerHTML w/ default policy.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ elem.href.baseVal = "about:blank";
+ document.getElementById("svg").appendChild(elem);
+ return Promise.resolve();
+ }, "Assign string to SVGScriptElement.href.baseVal w/ default policy.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ elem.setAttribute("href", "about:blank");
+ document.getElementById("svg").appendChild(elem);
+ return Promise.resolve();
+ }, "Assign string to non-attached SVGScriptElement.href via setAttribute w/ default policy.");
+
+ promise_test(t => {
+ const elem = document.createElementNS(
+ "http://www.w3.org/2000/svg", "script");
+ document.getElementById("svg").appendChild(elem);
+ elem.setAttribute("href", "about:blank");
+ return Promise.resolve();
+ }, "Assign string to attached SVGScriptElement.href via setAttribute w/ default policy.");
+ </script>
+</body>
diff --git a/testing/web-platform/tests/trusted-types/trusted-types-svg-script.html b/testing/web-platform/tests/trusted-types/trusted-types-svg-script.html
index 946f825fa3..4d604f353c 100644
--- a/testing/web-platform/tests/trusted-types/trusted-types-svg-script.html
+++ b/testing/web-platform/tests/trusted-types/trusted-types-svg-script.html
@@ -2,6 +2,7 @@
<head>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
+ <script src="./support/resolve-spv.js"></script>
<meta http-equiv="Content-Security-Policy"
content="require-trusted-types-for 'script'">
</head>
@@ -9,16 +10,6 @@
<div id="log"></div>
<svg id="svg"><script id="script">"some script text";</script></svg>
<script>
- // Returns a promise that resolves with a Security Policy Violation (spv)
- // even when it is received.
- function promise_spv() {
- return new Promise((resolve, reject) => {
- window.addEventListener("securitypolicyviolation", e => {
- resolve(e);
- }, { once: true });
- });
- }
-
const policy = trustedTypes.createPolicy("policy", {
createScript: x => x, createHTML: x => x, createScriptURL: x => x });
@@ -49,96 +40,5 @@
document.getElementById("svg").appendChild(elem);
return promise_spv();
}, "Modify SVGScriptElement via DOM manipulation.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- assert_throws_js(TypeError, _ => {
- elem.href.baseVal = "about:blank";
- });
- document.getElementById("svg").appendChild(elem);
- return promise_spv();
- }, "Assign string to SVGScriptElement.href.baseVal.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- elem.href.baseVal = policy.createScriptURL("about:blank");
- document.getElementById("svg").appendChild(elem);
- return Promise.resolve();
- }, "Assign TrustedScriptURL to SVGScriptElement.href.baseVal.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- assert_throws_js(TypeError, _ => {
- elem.setAttribute("href", "about:blank");
- });
- document.getElementById("svg").appendChild(elem);
- return promise_spv();
- }, "Assign string to non-attached SVGScriptElement.href via setAttribute.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- elem.setAttribute("href", policy.createScriptURL("about:blank"));
- document.getElementById("svg").appendChild(elem);
- return Promise.resolve();
- }, "Assign TrustedScriptURL to non-attached SVGScriptElement.href via setAttribute.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- document.getElementById("svg").appendChild(elem);
- assert_throws_js(TypeError, _ => {
- elem.setAttribute("href", "about:blank");
- });
- return promise_spv();
- }, "Assign string to attached SVGScriptElement.href via setAttribute.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- document.getElementById("svg").appendChild(elem);
- elem.setAttribute("href", policy.createScriptURL("about:blank"));
- return Promise.resolve();
- }, "Assign TrustedScriptURL to attached SVGScriptElement.href via setAttribute.");
-
- // Default policy test: We repate the string assignment tests above,
- // but now expect all of them to pass.
- promise_test(t => {
- trustedTypes.createPolicy("default", {
- createScript: x => x, createHTML: x => x, createScriptURL: x => x });
- return Promise.resolve();
- }, "Setup default policy");
-
- promise_test(t => {
- document.getElementById("script").innerHTML = "'modified via innerHTML';";
- return Promise.resolve();
- }, "Assign String to SVGScriptElement.innerHTML w/ default policy.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- elem.href.baseVal = "about:blank";
- document.getElementById("svg").appendChild(elem);
- return Promise.resolve();
- }, "Assign string to SVGScriptElement.href.baseVal w/ default policy.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- elem.setAttribute("href", "about:blank");
- document.getElementById("svg").appendChild(elem);
- return Promise.resolve();
- }, "Assign string to non-attached SVGScriptElement.href via setAttribute w/ default policy.");
-
- promise_test(t => {
- const elem = document.createElementNS(
- "http://www.w3.org/2000/svg", "script");
- document.getElementById("svg").appendChild(elem);
- elem.setAttribute("href", "about:blank");
- return Promise.resolve();
- }, "Assign string to attached SVGScriptElement.href via setAttribute w/ default policy.");
</script>
</body>
diff --git a/testing/web-platform/tests/url/WEB_FEATURES.yml b/testing/web-platform/tests/url/WEB_FEATURES.yml
new file mode 100644
index 0000000000..4711efc1fa
--- /dev/null
+++ b/testing/web-platform/tests/url/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: url-canparse
+ files:
+ - url-statics-canparse.*
diff --git a/testing/web-platform/tests/url/resources/setters_tests.json b/testing/web-platform/tests/url/resources/setters_tests.json
index 82adf4cdce..3850606d66 100644
--- a/testing/web-platform/tests/url/resources/setters_tests.json
+++ b/testing/web-platform/tests/url/resources/setters_tests.json
@@ -826,6 +826,17 @@
}
},
{
+ "comment": "Stuff after a ? delimiter is ignored, trailing 'port'",
+ "href": "http://example.net/path",
+ "new_value": "example.com?stuff:8080",
+ "expected": {
+ "href": "http://example.com/path",
+ "host": "example.com",
+ "hostname": "example.com",
+ "port": ""
+ }
+ },
+ {
"comment": "Stuff after a ? delimiter is ignored",
"href": "http://example.net/path",
"new_value": "example.com:8080?stuff",
@@ -925,6 +936,39 @@
}
},
{
+ "comment": "Anything other than ASCII digit stops the port parser in a setter but is not an error",
+ "href": "http://example.net:8080",
+ "new_value": "example.com:invalid",
+ "expected": {
+ "href": "http://example.com:8080/",
+ "host": "example.com:8080",
+ "hostname": "example.com",
+ "port": "8080"
+ }
+ },
+ {
+ "comment": "Anything other than ASCII digit stops the port parser in a setter but is not an error",
+ "href": "http://example.net:8080/test",
+ "new_value": "[::1]:invalid",
+ "expected": {
+ "href": "http://[::1]:8080/test",
+ "host": "[::1]:8080",
+ "hostname": "[::1]",
+ "port": "8080"
+ }
+ },
+ {
+ "comment": "IPv6 without port",
+ "href": "http://example.net:8080/test",
+ "new_value": "[::1]",
+ "expected": {
+ "href": "http://[::1]:8080/test",
+ "host": "[::1]:8080",
+ "hostname": "[::1]",
+ "port": "8080"
+ }
+ },
+ {
"comment": "Port numbers are 16 bit integers",
"href": "http://example.net/path",
"new_value": "example.com:65535",
diff --git a/testing/web-platform/tests/web-animations/animation-model/keyframe-effects/background-shorthand.html b/testing/web-platform/tests/web-animations/animation-model/keyframe-effects/background-shorthand.html
new file mode 100644
index 0000000000..f186643331
--- /dev/null
+++ b/testing/web-platform/tests/web-animations/animation-model/keyframe-effects/background-shorthand.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Animations: Expansion of shorthand properties</title>
+<link rel="help" href="https://www.w3.org/TR/web-animations-1/#calculating-computed-keyframes">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ #block {
+ background: green;
+ background-position-x: 10px;
+ height: 100px;
+ width: 100px;
+ }
+</style>
+<body>
+ <div id="block"></div>
+</body>
+<script>
+ function assert_background_position_at(time, x, y) {
+ document.getAnimations()[0].currentTime = time;
+ const target = document.getElementById('block');
+ const style = getComputedStyle(target);
+ assert_equals(style.backgroundPositionX, x,
+ `background-position-x @${time/10}% progress`);
+ assert_equals(style.backgroundPositionY, y,
+ `background-position-y @${time/10}% progress`);
+ }
+
+ test(() => {
+ const target = document.getElementById('block');
+ target.animate([
+ { background: 'red' },
+ { backgroundPositionY: '10px', background: 'blue' }
+ ], { duration: 1000 });
+ // Animation is active in the semi-closed interval [0, 1000).
+ // The background shorthand expands to its longhand counterparts with
+ // background-position-(x|y) picking up the default value of 0%.
+ // The explicit background-property-y in the second keyframe takes priority
+ // over the value from expansion of the shorthand.
+ const test_cases = [
+ { time: -100, x: "10px", y: "0%" },
+ { time: 0, x: "0%", y: "0%" },
+ { time: 200, x: "0%", y: "calc(0% + 2px)" },
+ { time: 500, x: "0%", y: "calc(0% + 5px)" },
+ { time: 800, x: "0%", y: "calc(0% + 8px)" },
+ { time: 1100, x: "10px", y: "0%" }
+ ];
+ test_cases.forEach(test => {
+ assert_background_position_at(test.time, test.x, test.y);
+ });
+ }, 'Shorthand properties expand to longhand counterparts in computed ' +
+ 'keyframes.');
+</script>
diff --git a/testing/web-platform/tests/web-locks/WEB_FEATURES.yml b/testing/web-platform/tests/web-locks/WEB_FEATURES.yml
new file mode 100644
index 0000000000..dac5b1ba75
--- /dev/null
+++ b/testing/web-platform/tests/web-locks/WEB_FEATURES.yml
@@ -0,0 +1,3 @@
+features:
+- name: web-locks
+ files: "**"
diff --git a/testing/web-platform/tests/webauthn/WEB_FEATURES.yml b/testing/web-platform/tests/webauthn/WEB_FEATURES.yml
new file mode 100644
index 0000000000..8b273de80b
--- /dev/null
+++ b/testing/web-platform/tests/webauthn/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: webauthn-public-key-easy
+ files:
+ - createcredential-getpublickey.https.html
diff --git a/testing/web-platform/tests/webauthn/createcredential-passing.https.html b/testing/web-platform/tests/webauthn/createcredential-passing.https.html
index f64a4ff039..4124c2247e 100644
--- a/testing/web-platform/tests/webauthn/createcredential-passing.https.html
+++ b/testing/web-platform/tests/webauthn/createcredential-passing.https.html
@@ -58,6 +58,10 @@ standardSetup(function() {
new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [pkParamEC512, pkParamEC256])
.runTest("SelectEC256 pubKeyCredParams from a list");
+ // pubKeyCredParams with unknown value
+ new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [{ "type": "unknown", alg: -7, }, { "type": "public-key", alg: -7, }])
+ .runTest("pubKeyCredParams with unknown value");
+
// timeout
new CreateCredentialsTest({path: "options.publicKey.timeout", value: undefined}).runTest("passing credentials.create() with no timeout");
diff --git a/testing/web-platform/tests/webauthn/createcredential-pubkeycredparams.https.html b/testing/web-platform/tests/webauthn/createcredential-pubkeycredparams.https.html
index d1df7952d6..cb830bfe92 100644
--- a/testing/web-platform/tests/webauthn/createcredential-pubkeycredparams.https.html
+++ b/testing/web-platform/tests/webauthn/createcredential-pubkeycredparams.https.html
@@ -36,10 +36,10 @@ standardSetup(function() {
new CreateCredentialsTest({path: "options.publicKey.pubKeyCredParams", value: undefined}).runTest("Bad pubKeyCredParams: pubKeyCredParams is undefined", TypeError);
new CreateCredentialsTest("options.publicKey.pubKeyCredParams", "hi mom").runTest("Bad pubKeyCredParams: pubKeyCredParams is string", TypeError);
new CreateCredentialsTest("options.publicKey.pubKeyCredParams", null).runTest("Bad pubKeyCredParams: pubKeyCredParams is null", TypeError);
- new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badType]).runTest("Bad pubKeyCredParams: first param has bad type (\"something-else\")", TypeError);
- new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeEmptyString]).runTest("Bad pubKeyCredParams: first param has bad type (\"\")", TypeError);
- new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeNull]).runTest("Bad pubKeyCredParams: first param has bad type (null)", TypeError);
- new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeEmptyObj]).runTest("Bad pubKeyCredParams: first param has bad type (empty object)", TypeError);
+ new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badType]).runTest("Bad pubKeyCredParams: first param has bad type (\"something-else\")", "NotSupportedError");
+ new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeEmptyString]).runTest("Bad pubKeyCredParams: first param has bad type (\"\")", "NotSupportedError");
+ new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeNull]).runTest("Bad pubKeyCredParams: first param has bad type (null)", "NotSupportedError");
+ new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badTypeEmptyObj]).runTest("Bad pubKeyCredParams: first param has bad type (empty object)", "NotSupportedError");
new CreateCredentialsTest("options.publicKey.pubKeyCredParams", [badAlg])
.modify("options.publicKey.timeout", 300)
.runTest("Bad pubKeyCredParams: first param has bad alg (42)", "NotAllowedError");
diff --git a/testing/web-platform/tests/webauthn/getcredential-allowcredentials.https.html b/testing/web-platform/tests/webauthn/getcredential-allowcredentials.https.html
new file mode 100644
index 0000000000..0263774142
--- /dev/null
+++ b/testing/web-platform/tests/webauthn/getcredential-allowcredentials.https.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>navigator.credentials.get() tests with allowCredentials</title>
+<meta name="timeout" content="long">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src=helpers.js></script>
+<body></body>
+<script>
+standardSetup(async function() {
+ "use strict";
+
+ promise_test(async t => {
+ await navigator.credentials.get({publicKey: {
+ challenge: new Uint8Array(),
+ allowCredentials: [{
+ id: (await createCredential()).rawId,
+ type: "public-key",
+ }],
+ }});
+ }, "navigator.credentials.get() with public-key allowCredentials.");
+
+ promise_test(async t => {
+ return promise_rejects_dom(t, "NotAllowedError",
+ navigator.credentials.get({publicKey: {
+ challenge: new Uint8Array(),
+ allowCredentials: [],
+ }}));
+ }, "navigator.credentials.get() with empty allowCredentials.");
+
+ promise_test(async t => {
+ return promise_rejects_dom(t, "NotAllowedError",
+ navigator.credentials.get({publicKey: {
+ challenge: new Uint8Array(),
+ allowCredentials: [{
+ id: (await createCredential()).rawId,
+ type: "not-yet-supported-by-browser",
+ }],
+ }}));
+ }, "navigator.credentials.get() with unknown allowCredentials.");
+
+ promise_test(async t => {
+ await navigator.credentials.get({publicKey: {
+ challenge: new Uint8Array(),
+ allowCredentials: [{
+ id: (await createCredential()).rawId,
+ type: "not-yet-supported-by-browser",
+ },
+ {
+ id: (await createCredential()).rawId,
+ type: "public-key",
+ }],
+ }});
+ }, "navigator.credentials.get() with mixing allowCredentials with first unknown type.");
+
+ promise_test(async t => {
+ await navigator.credentials.get({publicKey: {
+ challenge: new Uint8Array(),
+ allowCredentials: [{
+ id: (await createCredential()).rawId,
+ type: "public-key",
+ },
+ {
+ id: (await createCredential()).rawId,
+ type: "not-yet-supported-by-browser",
+ }],
+ }});
+ }, "navigator.credentials.get() with mixing allowCredentials with last unknown type.");
+}, {
+ protocol: "ctap2_1",
+ hasResidentKey: true,
+ hasUserVerification: true,
+ isUserVerified: true,
+});
+</script>
diff --git a/testing/web-platform/tests/webcodecs/audio-encoder-config.https.any.js b/testing/web-platform/tests/webcodecs/audio-encoder-config.https.any.js
index 559ff3203b..a70bf28f80 100644
--- a/testing/web-platform/tests/webcodecs/audio-encoder-config.https.any.js
+++ b/testing/web-platform/tests/webcodecs/audio-encoder-config.https.any.js
@@ -272,6 +272,8 @@ const validConfigs = [
numberOfChannels: 2,
opus: {
complexity: 5,
+ signal: 'music',
+ application: 'audio',
frameDuration: 20000,
packetlossperc: 10,
useinbandfec: true,
@@ -283,6 +285,8 @@ const validConfigs = [
numberOfChannels: 2,
opus: {
format: 'opus',
+ signal: 'voice',
+ application: 'lowdelay',
complexity: 10,
frameDuration: 60000,
packetlossperc: 20, // Irrelevant without useinbandfec, but still valid.
diff --git a/testing/web-platform/tests/webcodecs/video-encoder-flush.https.any.js b/testing/web-platform/tests/webcodecs/video-encoder-flush.https.any.js
index 8f1724bc85..c1ebafc4a3 100644
--- a/testing/web-platform/tests/webcodecs/video-encoder-flush.https.any.js
+++ b/testing/web-platform/tests/webcodecs/video-encoder-flush.https.any.js
@@ -2,16 +2,36 @@
// META: script=/common/media.js
// META: script=/webcodecs/utils.js
// META: script=/webcodecs/video-encoder-utils.js
+// META: variant=?vp8
+// META: variant=?h264_avc
+
+const VP8_CONFIG = {
+ codec: 'vp8',
+ width: 640,
+ height: 480,
+ displayWidth: 800,
+ displayHeight: 600,
+};
+
+const H264_AVC_CONFIG = {
+ codec: 'avc1.42001e', // Baseline
+ width: 640,
+ height: 480,
+ displayWidth: 800,
+ displayHeight: 600,
+ avc: {format: 'avc'},
+};
+
+let CONFIG = null;
+promise_setup(async () => {
+ CONFIG = {
+ '?vp8': VP8_CONFIG,
+ '?h264_avc': H264_AVC_CONFIG,
+ }[location.search];
+});
promise_test(async t => {
let codecInit = getDefaultCodecInit(t);
- let encoderConfig = {
- codec: 'vp8',
- width: 640,
- height: 480,
- displayWidth: 800,
- displayHeight: 600,
- };
let outputs = 0;
let firstOutput = new Promise(resolve => {
@@ -24,7 +44,7 @@ promise_test(async t => {
});
let encoder = new VideoEncoder(codecInit);
- encoder.configure(encoderConfig);
+ encoder.configure(CONFIG);
let frame1 = createFrame(640, 480, 0);
let frame2 = createFrame(640, 480, 33333);
@@ -45,3 +65,48 @@ promise_test(async t => {
assert_equals(outputs, 1, 'outputs');
}, 'Test reset during flush');
+
+promise_test(async t => {
+ let frame1 = createFrame(640, 480, 0);
+ let frame2 = createFrame(640, 480, 33333);
+ t.add_cleanup(() => {
+ frame1.close();
+ frame2.close();
+ });
+
+ const callbacks = {};
+ const encoder = createVideoEncoder(t, callbacks);
+
+ let flushInCallbackDone;
+ let outputs = 0;
+ let firstOutput = new Promise(resolve => {
+ callbacks.output = (chunk, metadata) => {
+ encoder.reset();
+
+ callbacks.output = (chunk, metadata) => {
+ outputs++;
+ };
+
+ encoder.configure(CONFIG);
+ encoder.encode(frame2);
+ flushInCallbackDone = encoder.flush();
+
+ resolve();
+ };
+ });
+
+ encoder.configure(CONFIG);
+ encoder.encode(frame1);
+ const flushDone = encoder.flush();
+
+ // Wait for the first output, then reset.
+ await firstOutput;
+
+ // Flush should have been synchronously rejected.
+ await promise_rejects_dom(t, 'AbortError', flushDone);
+
+ // Wait for the second flush and check the output count.
+ await flushInCallbackDone;
+
+ assert_equals(outputs, 1, 'outputs');
+}, 'Test new flush after reset in a flush callback');
diff --git a/testing/web-platform/tests/webcodecs/video-encoder-utils.js b/testing/web-platform/tests/webcodecs/video-encoder-utils.js
index 0838260d31..916f995156 100644
--- a/testing/web-platform/tests/webcodecs/video-encoder-utils.js
+++ b/testing/web-platform/tests/webcodecs/video-encoder-utils.js
@@ -101,3 +101,22 @@ function createDottedFrame(width, height, dots, ts) {
putBlackDots(ctx, width, height, dots);
return new VideoFrame(cnv, { timestamp: ts, duration });
}
+
+function createVideoEncoder(t, callbacks) {
+ return new VideoEncoder({
+ output(chunk, metadata) {
+ if (callbacks && callbacks.output) {
+ t.step(() => callbacks.output(chunk, metadata));
+ } else {
+ t.unreached_func('unexpected output()');
+ }
+ },
+ error(e) {
+ if (callbacks && callbacks.error) {
+ t.step(() => callbacks.error(e));
+ } else {
+ t.unreached_func('unexpected error()');
+ }
+ }
+ });
+}
diff --git a/testing/web-platform/tests/webcodecs/videoDecoder-codec-specific.https.any.js b/testing/web-platform/tests/webcodecs/videoDecoder-codec-specific.https.any.js
index a3acb82ab2..1c3b8f120d 100644
--- a/testing/web-platform/tests/webcodecs/videoDecoder-codec-specific.https.any.js
+++ b/testing/web-platform/tests/webcodecs/videoDecoder-codec-specific.https.any.js
@@ -556,6 +556,75 @@ promise_test(async t => {
const callbacks = {};
const decoder = createVideoDecoder(t, callbacks);
+ decoder.configure(CONFIG);
+ decoder.decode(CHUNKS[0]);
+ const flushDone = decoder.flush();
+
+ let flushDoneInCallback;
+ let outputs = 0;
+ await new Promise(resolve => {
+ callbacks.output = frame => {
+ decoder.reset();
+ frame.close();
+
+ callbacks.output = frame => {
+ outputs++;
+ frame.close();
+ };
+ callbacks.error = e => {
+ t.unreached_func('unexpected error()');
+ };
+ decoder.configure(CONFIG);
+ decoder.decode(CHUNKS[0]);
+ flushDoneInCallback = decoder.flush();
+
+ resolve();
+ };
+ });
+
+ // First flush should have been synchronously rejected.
+ await promise_rejects_dom(t, 'AbortError', flushDone);
+ // Wait for the second flush and check the output count.
+ await flushDoneInCallback;
+ assert_equals(outputs, 1, 'outputs');
+}, 'Test new flush after reset in a flush callback');
+
+promise_test(async t => {
+ await checkImplements();
+ const callbacks = {};
+ const decoder = createVideoDecoder(t, callbacks);
+
+ decoder.configure(CONFIG);
+ decoder.decode(CHUNKS[0]);
+ const flushDone = decoder.flush();
+ let flushDoneInCallback;
+
+ await new Promise(resolve => {
+ callbacks.output = frame => {
+ decoder.reset();
+ frame.close();
+
+ callbacks.output = frame => { frame.close(); };
+ decoder.configure(CONFIG);
+ decoder.decode(CHUNKS[0]);
+ decoder.decode(createCorruptChunk(1));
+ flushDoneInCallback = decoder.flush();
+
+ resolve();
+ };
+ });
+
+ // First flush should have been synchronously rejected.
+ await promise_rejects_dom(t, 'AbortError', flushDone);
+ // Wait for the second flush and check the error in the rejected promise.
+ await promise_rejects_dom(t, 'EncodingError', flushDoneInCallback);
+}, 'Test decoding a corrupt frame after reset in a flush callback');
+
+promise_test(async t => {
+ await checkImplements();
+ const callbacks = {};
+ const decoder = createVideoDecoder(t, callbacks);
+
decoder.configure({...CONFIG, optimizeForLatency: true});
decoder.decode(CHUNKS[0]);
diff --git a/testing/web-platform/tests/webcodecs/videoFrame-copyTo-rgb.any.js b/testing/web-platform/tests/webcodecs/videoFrame-copyTo-rgb.any.js
new file mode 100644
index 0000000000..442efc4b0f
--- /dev/null
+++ b/testing/web-platform/tests/webcodecs/videoFrame-copyTo-rgb.any.js
@@ -0,0 +1,252 @@
+// META: global=window,dedicatedworker
+// META: script=/webcodecs/videoFrame-utils.js
+// META: script=/webcodecs/video-encoder-utils.js
+
+function compareColors(actual, expected, tolerance, msg) {
+ let channel = ['R', 'G', 'B', 'A'];
+ for (let i = 0; i < 4; i++) {
+ assert_approx_equals(
+ actual[i], expected[i], tolerance,
+ `${msg} ${channel[i]}: actual: ${actual[i]} expected: ${expected[i]}`);
+ }
+}
+
+function rgb2yuv(r, g, b) {
+ let y = r * .299000 + g * .587000 + b * .114000
+ let u = r * -.168736 + g * -.331264 + b * .500000 + 128
+ let v = r * .500000 + g * -.418688 + b * -.081312 + 128
+
+ y = Math.round(y);
+ u = Math.round(u);
+ v = Math.round(v);
+ return {
+ y, u, v
+ }
+}
+
+function makeI420Frames() {
+ const kYellow = {r: 0xFF, g: 0xFF, b: 0x00};
+ const kRed = {r: 0xFF, g: 0x00, b: 0x00};
+ const kBlue = {r: 0x00, g: 0x00, b: 0xFF};
+ const kGreen = {r: 0x00, g: 0xFF, b: 0x00};
+ const kPink = {r: 0xFF, g: 0x78, b: 0xFF};
+ const kMagenta = {r: 0xFF, g: 0x00, b: 0xFF};
+ const kBlack = {r: 0x00, g: 0x00, b: 0x00};
+ const kWhite = {r: 0xFF, g: 0xFF, b: 0xFF};
+ const smpte170m = {
+ matrix: 'smpte170m',
+ primaries: 'smpte170m',
+ transfer: 'smpte170m',
+ fullRange: false
+ };
+ const bt709 = {
+ matrix: 'bt709',
+ primaries: 'bt709',
+ transfer: 'bt709',
+ fullRange: false
+ };
+
+ const result = [];
+ const init = {format: 'I420', timestamp: 0, codedWidth: 4, codedHeight: 4};
+ const colors =
+ [kYellow, kRed, kBlue, kGreen, kMagenta, kBlack, kWhite, kPink];
+ const data = new Uint8Array(24);
+ for (let colorSpace of [null, smpte170m, bt709]) {
+ init.colorSpace = colorSpace;
+ result.push(new VideoFrame(data, init));
+ for (let color of colors) {
+ color = rgb2yuv(color.r, color.g, color.b);
+ data.fill(color.y, 0, 16);
+ data.fill(color.u, 16, 20);
+ data.fill(color.v, 20, 24);
+ result.push(new VideoFrame(data, init));
+ }
+ }
+ return result;
+}
+
+function makeRGBXFrames() {
+ const kYellow = 0xFFFF00;
+ const kRed = 0xFF0000;
+ const kBlue = 0x0000FF;
+ const kGreen = 0x00FF00;
+ const kBlack = 0x000000;
+ const kWhite = 0xFFFFFF;
+ const smpte170m = {
+ matrix: 'smpte170m',
+ primaries: 'smpte170m',
+ transfer: 'smpte170m',
+ fullRange: false
+ };
+ const bt709 = {
+ matrix: 'bt709',
+ primaries: 'bt709',
+ transfer: 'bt709',
+ fullRange: false
+ };
+
+ const result = [];
+ const init = {format: 'RGBX', timestamp: 0, codedWidth: 4, codedHeight: 4};
+ const colors = [kYellow, kRed, kBlue, kGreen, kBlack, kWhite];
+ const data = new Uint32Array(16);
+ for (let colorSpace of [null, smpte170m, bt709]) {
+ init.colorSpace = colorSpace;
+ for (let color of colors) {
+ data.fill(color, 0, 16);
+ result.push(new VideoFrame(data, init));
+ }
+ }
+ return result;
+}
+
+async function testFrame(frame, colorSpace, pixelFormat) {
+ const width = frame.visibleRect.width;
+ const height = frame.visibleRect.height;
+ let frame_message = 'Frame: ' + JSON.stringify({
+ format: frame.format,
+ width: width,
+ height: height,
+ matrix: frame.colorSpace?.matrix,
+ primaries: frame.colorSpace?.primaries,
+ transfer: frame.colorSpace?.transfer,
+ });
+ const cnv = new OffscreenCanvas(width, height);
+ const ctx =
+ cnv.getContext('2d', {colorSpace: colorSpace, willReadFrequently: true});
+
+ // Read VideoFrame pixels via copyTo()
+ let imageData = ctx.createImageData(width, height);
+ let copy_to_buf = imageData.data.buffer;
+ let layout = null;
+ try {
+ const options = {
+ rect: {x: 0, y: 0, width: width, height: height},
+ format: pixelFormat,
+ colorSpace: colorSpace
+ };
+ layout = await frame.copyTo(copy_to_buf, options);
+ } catch (e) {
+ assert_unreached(`copyTo() failure: ${e}`);
+ return;
+ }
+ if (layout.length != 1) {
+ assert_unreached('Conversion to RGB is not supported by the browser');
+ return;
+ }
+
+ // Read VideoFrame pixels via drawImage()
+ ctx.drawImage(frame, 0, 0, width, height, 0, 0, width, height);
+ imageData = ctx.getImageData(0, 0, width, height, {colorSpace: colorSpace});
+ let get_image_buf = imageData.data.buffer;
+
+ // Compare!
+ const tolerance = 1;
+ for (let i = 0; i < copy_to_buf.byteLength; i += 4) {
+ if (pixelFormat.startsWith('BGR')) {
+ // getImageData() always gives us RGB, we need to swap bytes before
+ // comparing them with BGR.
+ new Uint8Array(get_image_buf, i, 3).reverse();
+ }
+ compareColors(
+ new Uint8Array(copy_to_buf, i, 4), new Uint8Array(get_image_buf, i, 4),
+ tolerance, frame_message + ` Mismatch at offset ${i}`);
+ }
+}
+
+function test_4x4_I420_frames() {
+ for (let colorSpace of ['srgb', 'display-p3']) {
+ for (let pixelFormat of ['RGBA', 'RGBX', 'BGRA', 'BGRX']) {
+ promise_test(async t => {
+ for (let frame of makeI420Frames()) {
+ await testFrame(frame, colorSpace, pixelFormat);
+ frame.close();
+ }
+ }, `Convert 4x4 I420 frames to ${pixelFormat} / ${colorSpace}`);
+ }
+ }
+}
+test_4x4_I420_frames();
+
+function test_4x4_RGB_frames() {
+ for (let colorSpace of ['srgb', 'display-p3']) {
+ for (let pixelFormat of ['RGBA', 'RGBX', 'BGRA', 'BGRX']) {
+ promise_test(async t => {
+ for (let frame of makeRGBXFrames()) {
+ await testFrame(frame, colorSpace, pixelFormat);
+ frame.close();
+ }
+ }, `Convert 4x4 RGBX frames to ${pixelFormat} / ${colorSpace}`);
+ }
+ }
+}
+test_4x4_RGB_frames();
+
+
+function test_4color_canvas_frames() {
+ for (let colorSpace of ['srgb', 'display-p3']) {
+ for (let pixelFormat of ['RGBA', 'RGBX', 'BGRA', 'BGRX']) {
+ promise_test(async t => {
+ const frame = createFrame(32, 16);
+ await testFrame(frame, colorSpace, pixelFormat);
+ frame.close();
+ }, `Convert 4-color canvas frame to ${pixelFormat} / ${colorSpace}`);
+ }
+ }
+}
+test_4color_canvas_frames();
+
+promise_test(async t => {
+ let pixelFormat = 'RGBA'
+ const init = {format: 'RGBA', timestamp: 0, codedWidth: 4, codedHeight: 4};
+ const src_data = new Uint32Array(init.codedWidth * init.codedHeight);
+ src_data.fill(0xFFFFFFFF);
+ const offset = 5;
+ const stride = 40;
+ const dst_data = new Uint8Array(offset + stride * init.codedHeight);
+ const options = {
+ format: pixelFormat,
+ layout: [
+ {offset: offset, stride: stride},
+ ]
+ };
+ const frame = new VideoFrame(src_data, init);
+ await frame.copyTo(dst_data, options)
+ assert_false(dst_data.slice(0, offset).some(e => e != 0), 'offset');
+ for (let row = 0; row < init.codedHeight; ++row) {
+ let width = init.codedWidth * 4;
+ const row_data =
+ dst_data.slice(offset + stride * row, offset + stride * row + width);
+ const margin_data = dst_data.slice(
+ offset + stride * row + width, offset + stride * (row + 1));
+
+ assert_false(
+ row_data.some(e => e != 0xFF),
+ `unexpected data in row ${row} [${row_data}]`);
+ assert_false(
+ margin_data.some(e => e != 0),
+ `unexpected margin in row ${row} [${margin_data}]`);
+ }
+
+ frame.close();
+}, `copyTo() with layout`);
+
+function test_unsupported_pixel_formats() {
+ const kUnsupportedFormats = [
+ 'I420', 'I420P10', 'I420P12', 'I420A', 'I422', 'I422A', 'I444', 'I444A',
+ 'NV12'
+ ];
+
+ for (let pixelFormat of kUnsupportedFormats) {
+ promise_test(async t => {
+ const init =
+ {format: 'RGBX', timestamp: 0, codedWidth: 4, codedHeight: 4};
+ const data = new Uint32Array(16);
+ const options = {format: pixelFormat};
+ const frame = new VideoFrame(data, init);
+ await promise_rejects_dom(
+ t, 'NotSupportedError', frame.copyTo(data, options))
+ frame.close();
+ }, `Unsupported format ${pixelFormat}`);
+ }
+}
+test_unsupported_pixel_formats();
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py
index 40497ce6ac..414f5ae2d0 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py
@@ -1,6 +1,6 @@
import pytest
-from math import floor
+from math import ceil, floor
from tests.support.image import png_dimensions
from . import get_physical_viewport_dimensions
@@ -79,3 +79,29 @@ async def test_capture_with_viewport(bidi_session, new_tab, delta_width, delta_h
result = await bidi_session.browsing_context.capture_screenshot(
context=new_tab["context"])
assert png_dimensions(result) == (expected_size["width"], expected_size["height"])
+
+
+@pytest.mark.parametrize("dpr", [0.5, 2])
+@pytest.mark.asyncio
+async def test_capture_with_different_dpr(bidi_session, new_tab, inline, dpr):
+ page = inline("<div style='background-color: black; width: 100px; height: 100px;'></div>")
+ await bidi_session.browsing_context.navigate(
+ context=new_tab["context"], url=page, wait="complete"
+ )
+
+ original_viewport = await get_viewport_dimensions(bidi_session, new_tab)
+
+ await bidi_session.browsing_context.set_viewport(
+ context=new_tab["context"],
+ device_pixel_ratio=dpr)
+
+ expected_width = original_viewport["width"] * dpr
+ expected_height = original_viewport["height"] * dpr
+
+ data = await bidi_session.browsing_context.capture_screenshot(context=new_tab["context"])
+ (actual_width, actual_height) = png_dimensions(data)
+ # The rounding is implementation-specific and can be either floor, ceil or round depending on the browser
+ # implementation. Tolerate any value between floor and ceil.
+ assert floor(expected_width) <= actual_width <= ceil(expected_width)
+ assert floor(expected_height) <= actual_height <= ceil(expected_height)
+
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py
index 8300e962b9..67d4b0d06c 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/capture_screenshot/clip.py
@@ -373,3 +373,42 @@ async def test_clip_element_outside_of_window_viewport(
comparison = await compare_png_bidi(reference_data, data)
assert comparison.equal()
+
+
+@pytest.mark.parametrize("dpr", [0.5, 2])
+async def test_clip_with_different_dpr(bidi_session, new_tab, inline, compare_png_bidi, dpr):
+ div_size = {"width": 100, "height": 100}
+
+ reference_page = inline(f"""<div style='background-color: black; width: {div_size["width"]*dpr}px; height: {div_size["height"]*dpr}px;'></div>""")
+ await bidi_session.browsing_context.navigate(
+ context=new_tab["context"], url=reference_page, wait="complete"
+ )
+ element = await bidi_session.script.evaluate(
+ await_promise=False,
+ expression="document.querySelector('div')",
+ target=ContextTarget(new_tab["context"]),
+ )
+ reference_data = await bidi_session.browsing_context.capture_screenshot(
+ context=new_tab["context"], clip=ElementOptions(element=element)
+ )
+
+ page = inline(f"""<div style='background-color: black; width: {div_size["width"]}px; height: {div_size["height"]}px;'></div>""")
+ await bidi_session.browsing_context.navigate(
+ context=new_tab["context"], url=page, wait="complete"
+ )
+
+ await bidi_session.browsing_context.set_viewport(
+ context=new_tab["context"],
+ device_pixel_ratio=dpr)
+
+ element = await bidi_session.script.evaluate(
+ await_promise=False,
+ expression="document.querySelector('div')",
+ target=ContextTarget(new_tab["context"]),
+ )
+ data = await bidi_session.browsing_context.capture_screenshot(
+ context=new_tab["context"], clip=ElementOptions(element=element)
+ )
+
+ comparison = await compare_png_bidi(data, reference_data)
+ assert comparison.equal()
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/invalid.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/invalid.py
index ecd3173e87..52aabca267 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/invalid.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/invalid.py
@@ -46,10 +46,36 @@ async def test_params_locator_type_invalid_value(bidi_session, inline, top_conte
)
+@pytest.mark.parametrize("type", ["css", "xpath", "innerText"])
+@pytest.mark.parametrize("value", [None, False, 42, {}, []])
+async def test_params_locator_value_invalid_type(
+ bidi_session, inline, top_context, type, value
+):
+ await navigate_to_page(bidi_session, inline, top_context)
+
+ with pytest.raises(error.InvalidArgumentException):
+ await bidi_session.browsing_context.locate_nodes(
+ context=top_context["context"], locator={"type": type, "value": value}
+ )
+
+
+@pytest.mark.parametrize("value", [None, False, 42, {}, []])
+async def test_params_locator_accessability_value_invalid_type(
+ bidi_session, inline, top_context, value
+):
+ await navigate_to_page(bidi_session, inline, top_context)
+
+ with pytest.raises(error.InvalidArgumentException):
+ await bidi_session.browsing_context.locate_nodes(
+ context=top_context["context"], locator={"type": "accessability", "value": value}
+ )
+
+
@pytest.mark.parametrize("type,value", [
("css", "a*b"),
("xpath", ""),
- ("innerText", "")
+ ("innerText", ""),
+ ("accessibility", {})
])
async def test_params_locator_value_invalid_value(bidi_session, inline, top_context, type, value):
await navigate_to_page(bidi_session, inline, top_context)
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/locator.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/locator.py
index e560fa9239..66c512d792 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/locator.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/locator.py
@@ -6,11 +6,17 @@ from ... import any_string, recursive_compare
@pytest.mark.parametrize("type,value", [
("css", "div"),
("xpath", "//div"),
- ("innerText", "foobarBARbaz")
+ ("innerText", "foobarBARbaz"),
+ ("accessibility", {"role": "banner"}),
+ ("accessibility", {"name": "foo"}),
+ ("accessibility", {"role": "banner", "name": "foo"}),
])
@pytest.mark.asyncio
async def test_find_by_locator(bidi_session, inline, top_context, type, value):
- url = inline("""<div data-class="one">foobarBARbaz</div><div data-class="two">foobarBARbaz</div>""")
+ url = inline("""
+ <div data-class="one" role="banner" aria-label="foo">foobarBARbaz</div>
+ <div data-class="two" role="banner" aria-label="foo">foobarBARbaz</div>
+ """)
await bidi_session.browsing_context.navigate(
context=top_context["context"], url=url, wait="complete"
)
@@ -165,3 +171,69 @@ async def test_find_by_inner_text(bidi_session, inline, top_context, locator, ex
)
recursive_compare(expected, result["nodes"])
+
+
+@pytest.mark.parametrize(
+ "html,locator_value,expected_node_local_name",
+ [
+ (
+ "<article data-class='one'>foo</article><div data-class='two'>bar</div>",
+ {"role": "article"},
+ "article",
+ ),
+ (
+ "<input role='searchbox' data-class='one' /><input data-class='two' type='text'/>",
+ {"role": "searchbox"},
+ "input",
+ ),
+ (
+ "<button data-class='one'>Ok</button><button data-class='two'>Cancel</button>",
+ {"name": "Ok"},
+ "button",
+ ),
+ (
+ "<button data-class='one' aria-labelledby='one two'></button><div id='one'>ok</div><div id='two'>go</div><button data-class='two'>Cancel</button>",
+ {"name": "ok go"},
+ "button",
+ ),
+ (
+ "<button data-class='one' aria-label='foo'>bar</button><button data-class='two' aria-label='bar'>foo</button>",
+ {"name": "foo"},
+ "button",
+ ),
+ (
+ "<div role='banner' aria-label='foo' data-class='one'></div><div role='banner' data-class='two'></div><div aria-label='foo' data-class='three'></div>",
+ {"role": "banner", "name": "foo"},
+ "div",
+ ),
+ ],
+)
+@pytest.mark.asyncio
+async def test_locate_by_accessibility_attributes(
+ bidi_session,
+ inline,
+ top_context,
+ html,
+ locator_value,
+ expected_node_local_name,
+):
+ await bidi_session.browsing_context.navigate(
+ context=top_context["context"], url=inline(html), wait="complete"
+ )
+
+ expected = [
+ {
+ "type": "node",
+ "value": {
+ "attributes": {"data-class": "one"},
+ "localName": expected_node_local_name,
+ },
+ }
+ ]
+
+ result = await bidi_session.browsing_context.locate_nodes(
+ context=top_context["context"],
+ locator={"type": "accessibility", "value": locator_value},
+ )
+
+ recursive_compare(expected, result["nodes"])
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/max_node_count.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/max_node_count.py
index 4652026e96..9d9c05260b 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/max_node_count.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/max_node_count.py
@@ -43,6 +43,45 @@ from ... import any_string, recursive_compare
},
}]
),
+ ("accessibility", {"role": "banner"}, 1, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
+ ("accessibility", {"name": "bar"}, 1, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
+ ("accessibility", {"role": "banner", "name": "bar"}, 1, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
("css", "div", 10, [
{
"type": "node",
@@ -114,18 +153,96 @@ from ... import any_string, recursive_compare
"nodeType": 1,
},
}]
- )
+ ),
+ ("accessibility", {"role": "banner"}, 10, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }, {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"two"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
+ ("accessibility", {"name": "bar"}, 10, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }, {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"two"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
+ ("accessibility", {"role": "banner", "name": "bar"}, 10, [
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }, {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"two"},
+ "childNodeCount": 1,
+ "localName": "div",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ },
+ }]
+ ),
], ids=[
"css_single",
"xpath_single",
"inner_text_single",
+ "accessibility_role_single",
+ "accessibility_name_single",
+ "accessibility_role_name_single",
"css_multiple",
"xpath_multiple",
- "inner_text_multiple"
+ "inner_text_multiple",
+ "accessibility_role_multiple",
+ "accessibility_name_multiple",
+ "accessibility_role_name_multiple",
])
@pytest.mark.asyncio
async def test_find_by_locator_limit_return_count(bidi_session, inline, top_context, type, value, max_count, expected):
- url = inline("""<div data-class="one">foo</div><div data-class="two">foo</div>""")
+ url = inline("""
+ <div data-class="one" role="banner" aria-label="bar">foo</div>
+ <div data-class="two" role="banner" aria-label="bar">foo</div>
+ """)
await bidi_session.browsing_context.navigate(
context=top_context["context"], url=url, wait="complete"
)
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/start_nodes.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/start_nodes.py
index 707d83a337..f44a6d4857 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/start_nodes.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/locate_nodes/start_nodes.py
@@ -92,13 +92,59 @@ from ... import any_string, recursive_compare
"namespaceURI": "http://www.w3.org/1999/xhtml",
"nodeType": 1,
}
- }])
+ }]),
+ ("accessibility", {"role": "banner"}, [{
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "p",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ }
+ },
+ {
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"two"},
+ "childNodeCount": 1,
+ "localName": "p",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ }
+ }]),
+ ("accessibility", {"name": "bar"}, [{
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "p",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ }
+ }
+ ]),
+ ("accessibility", {"role": "banner", "name": "bar"}, [{
+ "type": "node",
+ "sharedId": any_string,
+ "value": {
+ "attributes": {"data-class":"one"},
+ "childNodeCount": 1,
+ "localName": "p",
+ "namespaceURI": "http://www.w3.org/1999/xhtml",
+ "nodeType": 1,
+ }
+ }
+ ])
])
@pytest.mark.asyncio
async def test_locate_with_context_nodes(bidi_session, inline, top_context, type, value, expected):
url = inline("""<div id="parent">
- <p data-class="one">foo</p>
- <p data-class="two">foo</p>
+ <p data-class="one" role="banner" aria-label="bar">foo</p>
+ <p data-class="two" role="banner">foo</p>
<a data-class="three">
<span id="text">bar</span>
</a>
@@ -125,14 +171,23 @@ async def test_locate_with_context_nodes(bidi_session, inline, top_context, type
@pytest.mark.parametrize("type,value", [
("css", "p[data-class='one']"),
("xpath", ".//p[@data-class='one']"),
- ("innerText", "foo")
+ ("innerText", "foo"),
+ ("accessibility", {"role": "banner"}),
+ ("accessibility", {"name": "bar"}),
+ ("accessibility", {"role": "banner", "name": "bar"}),
])
@pytest.mark.asyncio
async def test_locate_with_multiple_context_nodes(bidi_session, inline, top_context, type, value):
url = inline("""
- <div id="parent-one"><p data-class="one">foo</p><p data-class="two">bar</p></div>
- <div id="parent-two"><p data-class="one">foo</p><p data-class="two">bar</p></div>
- """)
+ <div id="parent-one">
+ <p data-class="one" role="banner" aria-label="bar">foo</p>
+ <p data-class="two">bar</p>
+ </div>
+ <div id="parent-two">
+ <p data-class="one" role="banner" aria-label="bar">foo</p>
+ <p data-class="two">bar</p>
+ </div>
+ """)
await bidi_session.browsing_context.navigate(
context=top_context["context"], url=url, wait="complete"
)
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py
index e4db779bd5..88de2de334 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py
@@ -1,4 +1,5 @@
import pytest
+from webdriver.bidi.modules.script import ContextTarget
from ... import get_device_pixel_ratio, get_viewport_dimensions
@@ -45,6 +46,14 @@ async def test_device_pixel_ratio_with_viewport(
assert await get_viewport_dimensions(bidi_session, new_tab) == test_viewport
assert await get_device_pixel_ratio(bidi_session, new_tab) == device_pixel_ratio
+ result = await bidi_session.script.evaluate(
+ await_promise=False,
+ expression="window.devicePixelRatio",
+ target=ContextTarget(new_tab["context"]),
+ )
+
+ assert result == {"type": "number", "value": device_pixel_ratio}
+
@pytest.mark.asyncio
async def test_reset_device_pixel_ratio(bidi_session, inline, new_tab):
@@ -68,3 +77,47 @@ async def test_reset_device_pixel_ratio(bidi_session, inline, new_tab):
device_pixel_ratio=None)
assert await get_device_pixel_ratio(bidi_session, new_tab) == original_dpr
+
+
+@pytest.mark.asyncio
+@pytest.mark.parametrize("device_pixel_ratio", [0.5, 2])
+@pytest.mark.parametrize(
+ "use_horizontal_scrollbar, use_vertical_scrollbar",
+ [
+ (True, False),
+ (False, True),
+ (True, True),
+ ],
+ ids=["horizontal", "vertical", "both"],
+)
+async def test_device_pixel_ratio_with_scrollbar(
+ bidi_session,
+ inline,
+ new_tab,
+ device_pixel_ratio,
+ use_horizontal_scrollbar,
+ use_vertical_scrollbar,
+):
+ viewport_dimensions = await get_viewport_dimensions(bidi_session, new_tab)
+
+ width = 100
+ if use_horizontal_scrollbar:
+ width = viewport_dimensions["width"] + 100
+
+ height = 100
+ if use_vertical_scrollbar:
+ height = viewport_dimensions["height"] + 100
+
+ html = f"""<div style="width: {width}px; height: {height}px;">foo</div>"""
+ page_url = inline(html)
+
+ await bidi_session.browsing_context.navigate(
+ context=new_tab["context"], url=page_url, wait="complete"
+ )
+
+ await bidi_session.browsing_context.set_viewport(
+ context=new_tab["context"], device_pixel_ratio=device_pixel_ratio
+ )
+
+ assert await get_device_pixel_ratio(bidi_session, new_tab) == device_pixel_ratio
+ assert await get_viewport_dimensions(bidi_session, new_tab) == viewport_dimensions
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/viewport.py b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/viewport.py
index 2e8126b1f8..e9ff8517f2 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/viewport.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/browsing_context/set_viewport/viewport.py
@@ -243,6 +243,6 @@ async def test_with_scrollbars(
# The side which has scrollbar takes up space on the other side
# (e.g. if we have a horizontal scroll height is going to be smaller than viewport height)
if use_horizontal_scrollbar:
- assert viewport_without_scrollbar["height"] < test_viewport["height"]
+ assert viewport_without_scrollbar["height"] <= test_viewport["height"]
if use_vertical_scrollbar:
- assert viewport_without_scrollbar["width"] < test_viewport["width"]
+ assert viewport_without_scrollbar["width"] <= test_viewport["width"]
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/invalid.py b/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/invalid.py
index 5397dc7b62..d717216072 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/invalid.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/invalid.py
@@ -4,6 +4,7 @@ from webdriver.bidi.undefined import UNDEFINED
pytestmark = pytest.mark.asyncio
+
@pytest.mark.parametrize("descriptor", [False, "SOME_STRING", 42, {}, [], {"name": 23}, None, UNDEFINED])
async def test_params_descriptor_invalid_type(bidi_session, descriptor):
with pytest.raises(error.InvalidArgumentException):
@@ -54,8 +55,8 @@ async def test_params_origin_invalid_type(bidi_session, origin):
)
-@pytest.mark.parametrize("user_context", [False, 42, {}, [], None])
-async def test_params_origin_invalid_type(bidi_session, user_context):
+@pytest.mark.parametrize("user_context", [False, 42, {}, []])
+async def test_params_user_context_invalid_type(bidi_session, user_context):
with pytest.raises(error.InvalidArgumentException):
await bidi_session.permissions.set_permission(
descriptor={"name": "geolocation"},
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py b/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py
index 45c50dbf88..18f8e6fed0 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/external/permissions/set_permission/set_permission.py
@@ -1,10 +1,10 @@
import pytest
-import webdriver.bidi.error as error
from . import get_context_origin, get_permission_state
pytestmark = pytest.mark.asyncio
+
@pytest.mark.asyncio
async def test_set_permission(bidi_session, new_tab, url):
test_url = url("/common/blank.html", protocol="https")
@@ -44,24 +44,6 @@ async def test_set_permission(bidi_session, new_tab, url):
@pytest.mark.asyncio
-async def test_set_permission_insecure_context(bidi_session, new_tab, url):
- test_url = url("/common/blank.html", protocol="http")
- await bidi_session.browsing_context.navigate(
- context=new_tab["context"],
- url=test_url,
- wait="complete",
- )
-
- origin = await get_context_origin(bidi_session, new_tab)
-
- with pytest.raises(error.InvalidArgumentException):
- await bidi_session.permissions.set_permission(
- descriptor={"name": "push"},
- state="granted",
- origin=origin,
- )
-
-@pytest.mark.asyncio
async def test_set_permission_new_context(bidi_session, new_tab, url):
test_url = url("/common/blank.html", protocol="https")
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/key_events.py b/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/key_events.py
index e93c132e0a..275b542b11 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/key_events.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/key_events.py
@@ -23,7 +23,7 @@ pytestmark = pytest.mark.asyncio
)
async def test_non_printable_key_sends_events(
- bidi_session, top_context, key, event
+ bidi_session, top_context, setup_key_test, key, event
):
code = ALL_EVENTS[event]["code"]
value = ALL_EVENTS[event]["key"]
@@ -142,7 +142,7 @@ async def test_key_printable_key(
@pytest.mark.parametrize("use_keyup", [True, False])
-async def test_key_printable_sequence(bidi_session, top_context, use_keyup):
+async def test_key_printable_sequence(bidi_session, top_context, setup_key_test, use_keyup):
actions = Actions()
actions.add_key()
if use_keyup:
@@ -229,7 +229,7 @@ async def test_key_special_key_sends_keydown(
assert len(keys_value) == 0
-async def test_key_space(bidi_session, top_context):
+async def test_key_space(bidi_session, top_context, setup_key_test):
actions = Actions()
(
actions.add_key()
@@ -254,7 +254,7 @@ async def test_key_space(bidi_session, top_context):
assert events[0] == events[1]
-async def test_keyup_only_sends_no_events(bidi_session, top_context):
+async def test_keyup_only_sends_no_events(bidi_session, top_context, setup_key_test):
actions = Actions()
actions.add_key().key_up("a")
await bidi_session.input.perform_actions(
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/wheel.py b/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/wheel.py
index 4f897479e2..ee0d4d4600 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/wheel.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/input/perform_actions/wheel.py
@@ -4,6 +4,7 @@ from webdriver.bidi.error import NoSuchFrameException
from webdriver.bidi.modules.input import Actions, get_element_origin
from webdriver.bidi.modules.script import ContextTarget
+from tests.support.keys import Keys
from .. import get_events, get_object_from_context
from . import get_shadow_root_from_test_page
@@ -159,3 +160,28 @@ async def test_scroll_shadow_tree(
assert events[0]["deltaX"] >= 5
assert events[0]["deltaY"] >= 10
assert events[0]["target"] == "scrollableShadowTreeContent"
+
+
+async def test_scroll_with_key_pressed(
+ bidi_session, setup_wheel_test, top_context, get_element
+):
+ scrollable = await get_element("#scrollable")
+
+ actions = Actions()
+ actions.add_key().key_down(Keys.R_SHIFT)
+ actions.add_wheel().scroll(
+ x=0,
+ y=0,
+ delta_x=5,
+ delta_y=10,
+ origin=get_element_origin(scrollable),
+ )
+ actions.add_key().key_up(Keys.R_SHIFT)
+
+ await bidi_session.input.perform_actions(
+ actions=actions, context=top_context["context"]
+ )
+ events = await get_events(bidi_session, top_context["context"])
+ assert len(events) == 1
+ assert events[0]["type"] == "wheel"
+ assert events[0]["shiftKey"] == True
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed.py b/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed.py
index 56b9461642..f17a522766 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed.py
@@ -159,7 +159,7 @@ async def test_load_page_twice(
@pytest.mark.parametrize(
"status, status_text",
- [(status, text) for (status, text) in HTTP_STATUS_AND_STATUS_TEXT if status not in [101, 407]],
+ HTTP_STATUS_AND_STATUS_TEXT,
)
@pytest.mark.asyncio
async def test_response_status(
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed_status.py b/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed_status.py
deleted file mode 100644
index 36e3da667e..0000000000
--- a/testing/web-platform/tests/webdriver/tests/bidi/network/response_completed/response_completed_status.py
+++ /dev/null
@@ -1,55 +0,0 @@
-# TODO(#42482): Merge this file with response_completed.py
-#
-# The status codes in this file are currently problematic in some implementations.
-#
-# The only mechanism currently provided by WPT to disable subtests with
-# expectations is to disable the entire file. As such, this file is a copy of
-# response_completed.py with the problematic status codes extracted.
-#
-# Once it is possible to disable subtests, this file should be merged with
-# response_completed.py.
-
-import pytest
-
-from .. import (
- assert_response_event,
- HTTP_STATUS_AND_STATUS_TEXT,
- RESPONSE_COMPLETED_EVENT,
-)
-
-
-@pytest.mark.parametrize(
- "status, status_text",
- [(status, text) for (status, text) in HTTP_STATUS_AND_STATUS_TEXT if status in [101, 407]],
-)
-@pytest.mark.asyncio
-async def test_response_status(
- wait_for_event, wait_for_future_safe, url, fetch, setup_network_test, status, status_text
-):
- status_url = url(
- f"/webdriver/tests/support/http_handlers/status.py?status={status}&nocache={RESPONSE_COMPLETED_EVENT}"
- )
-
- network_events = await setup_network_test(events=[RESPONSE_COMPLETED_EVENT])
- events = network_events[RESPONSE_COMPLETED_EVENT]
-
- on_response_completed = wait_for_event(RESPONSE_COMPLETED_EVENT)
- await fetch(status_url)
- await wait_for_future_safe(on_response_completed)
-
- assert len(events) == 1
- expected_request = {"method": "GET", "url": status_url}
- expected_response = {
- "url": status_url,
- "fromCache": False,
- "mimeType": "text/plain",
- "status": status,
- "statusText": status_text,
- "protocol": "http/1.1",
- }
- assert_response_event(
- events[0],
- expected_request=expected_request,
- expected_response=expected_response,
- redirect_count=0,
- )
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/network/response_started/response_started.py b/testing/web-platform/tests/webdriver/tests/bidi/network/response_started/response_started.py
index 6c10714ca8..9aa77739ab 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/network/response_started/response_started.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/network/response_started/response_started.py
@@ -135,6 +135,32 @@ async def test_load_page_twice(
)
+@pytest.mark.asyncio
+async def test_request_bodysize(
+ wait_for_event, wait_for_future_safe, url, fetch, setup_network_test
+):
+ html_url = url(PAGE_EMPTY_HTML)
+
+ network_events = await setup_network_test(events=[RESPONSE_STARTED_EVENT])
+ events = network_events[RESPONSE_STARTED_EVENT]
+
+ on_before_request_sent = wait_for_event(RESPONSE_STARTED_EVENT)
+ await fetch(html_url, method="POST", post_data="{'a': 1}")
+ await wait_for_future_safe(on_before_request_sent)
+
+ assert len(events) == 1
+ expected_request = {
+ "method": "POST",
+ "url": html_url,
+ }
+ assert_response_event(
+ events[0],
+ expected_request=expected_request,
+ redirect_count=0,
+ )
+ assert events[0]["request"]["bodySize"] > 0
+
+
@pytest.mark.parametrize(
"status, status_text",
HTTP_STATUS_AND_STATUS_TEXT,
diff --git a/testing/web-platform/tests/webdriver/tests/bidi/storage/__init__.py b/testing/web-platform/tests/webdriver/tests/bidi/storage/__init__.py
index 4ca0f7bdd7..56ea539914 100644
--- a/testing/web-platform/tests/webdriver/tests/bidi/storage/__init__.py
+++ b/testing/web-platform/tests/webdriver/tests/bidi/storage/__init__.py
@@ -78,7 +78,7 @@ def create_cookie(
def generate_expiry_date(day_diff=1):
return (
- (datetime.utcnow() + timedelta(days=day_diff))
+ (datetime.now(timezone.utc) + timedelta(days=day_diff))
.replace(microsecond=0)
.replace(tzinfo=timezone.utc)
)
diff --git a/testing/web-platform/tests/webdriver/tests/classic/add_cookie/add.py b/testing/web-platform/tests/webdriver/tests/classic/add_cookie/add.py
index 24b71c52fd..60b67d051b 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/add_cookie/add.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/add_cookie/add.py
@@ -1,6 +1,6 @@
import pytest
-from datetime import datetime, timedelta
+from datetime import datetime, timedelta, timezone
from webdriver.transport import Response
@@ -154,7 +154,7 @@ def test_add_cookie_for_ip(session, server_config):
def test_add_non_session_cookie(session, url):
a_day_from_now = int(
- (datetime.utcnow() + timedelta(days=1) - datetime.utcfromtimestamp(0)).total_seconds())
+ (datetime.now(timezone.utc) + timedelta(days=1) - datetime.fromtimestamp(0, timezone.utc)).total_seconds())
new_cookie = {
"name": "hello",
diff --git a/testing/web-platform/tests/webdriver/tests/classic/element_clear/__init__.py b/testing/web-platform/tests/webdriver/tests/classic/element_clear/__init__.py
index e69de29bb2..c84215a636 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/element_clear/__init__.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/element_clear/__init__.py
@@ -0,0 +1,5 @@
+def element_clear(session, element):
+ return session.transport.send(
+ "POST", "/session/{session_id}/element/{element_id}/clear".format(
+ session_id=session.session_id,
+ element_id=element.id))
diff --git a/testing/web-platform/tests/webdriver/tests/classic/element_clear/clear.py b/testing/web-platform/tests/webdriver/tests/classic/element_clear/clear.py
index 9a0549ce4f..0977f60cb6 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/element_clear/clear.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/element_clear/clear.py
@@ -8,6 +8,8 @@ from tests.support.asserts import (
assert_in_events,
assert_success,
)
+from tests.support.dom import BUTTON_TYPES
+from . import element_clear
@pytest.fixture
@@ -19,13 +21,6 @@ def tracked_events():
]
-def element_clear(session, element):
- return session.transport.send(
- "POST", "/session/{session_id}/element/{element_id}/clear".format(
- session_id=session.session_id,
- element_id=element.id))
-
-
@pytest.fixture(scope="session")
def text_file(tmpdir_factory):
fh = tmpdir_factory.mktemp("tmp").join("hello.txt")
@@ -196,31 +191,6 @@ def test_input(session, inline, add_event_listeners, tracked_events, type, value
"month",
"week",
"file"])
-def test_input_disabled(session, inline, type):
- session.url = inline("<input type=%s disabled>" % type)
- element = session.find.css("input", all=False)
-
- response = element_clear(session, element)
- assert_error(response, "invalid element state")
-
-
-@pytest.mark.parametrize("type",
- ["number",
- "range",
- "email",
- "password",
- "search",
- "tel",
- "text",
- "url",
- "color",
- "date",
- "datetime",
- "datetime-local",
- "time",
- "month",
- "week",
- "file"])
def test_input_readonly(session, inline, type):
session.url = inline("<input type=%s readonly>" % type)
element = session.find.css("input", all=False)
@@ -241,14 +211,6 @@ def test_textarea(session, inline, add_event_listeners, tracked_events):
assert_in_events(session, ["focus", "change", "blur"])
-def test_textarea_disabled(session, inline):
- session.url = inline("<textarea disabled></textarea>")
- element = session.find.css("textarea", all=False)
-
- response = element_clear(session, element)
- assert_error(response, "invalid element state")
-
-
def test_textarea_readonly(session, inline):
session.url = inline("<textarea readonly></textarea>")
element = session.find.css("textarea", all=False)
@@ -278,26 +240,12 @@ def test_input_file_multiple(session, text_file, inline):
assert element.property("value") == ""
-def test_select(session, inline):
- session.url = inline("""
- <select>
- <option>foo
- </select>
- """)
- select = session.find.css("select", all=False)
- option = session.find.css("option", all=False)
+@pytest.mark.parametrize("type", BUTTON_TYPES)
+def test_button(session, inline, type):
+ session.url = inline(f"""<button type="{type}">""")
+ element = session.find.css("button", all=False)
- response = element_clear(session, select)
- assert_error(response, "invalid element state")
- response = element_clear(session, option)
- assert_error(response, "invalid element state")
-
-
-def test_button(session, inline):
- session.url = inline("<button></button>")
- button = session.find.css("button", all=False)
-
- response = element_clear(session, button)
+ response = element_clear(session, element)
assert_error(response, "invalid element state")
diff --git a/testing/web-platform/tests/webdriver/tests/classic/element_clear/disabled.py b/testing/web-platform/tests/webdriver/tests/classic/element_clear/disabled.py
new file mode 100644
index 0000000000..f0d0fcd9aa
--- /dev/null
+++ b/testing/web-platform/tests/webdriver/tests/classic/element_clear/disabled.py
@@ -0,0 +1,113 @@
+import pytest
+
+from tests.support.asserts import assert_error, assert_success
+from tests.support.dom import BUTTON_TYPES, INPUT_TYPES
+from . import element_clear
+
+
+@pytest.mark.parametrize("type", BUTTON_TYPES)
+def test_button(session, inline, type):
+ session.url = inline(f"""<button type="{type}" disabled>""")
+ element = session.find.css("button", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+@pytest.mark.parametrize("type", INPUT_TYPES)
+def test_input(session, inline, type):
+ session.url = inline(f"""<input type="{type}" disabled>""")
+ element = session.find.css("input", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_textarea(session, inline):
+ session.url = inline("<textarea disabled></textarea>")
+ element = session.find.css("textarea", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_fieldset_descendant(session, inline):
+ session.url = inline("<fieldset disabled><input>foo")
+ element = session.find.css("input", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_fieldset_descendant_first_legend(session, inline):
+ session.url = inline("<fieldset disabled><legend><input>foo")
+ element = session.find.css("input", all=False)
+
+ response = element_clear(session, element)
+ assert_success(response)
+
+
+def test_fieldset_descendant_not_first_legend(session, inline):
+ session.url = inline("<fieldset disabled><legend></legend><legend><input>foo")
+ element = session.find.css("input", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_option(session, inline):
+ session.url = inline("<select><option disabled>foo")
+ element = session.find.css("option", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_option_optgroup(session, inline):
+ session.url = inline("<select><optgroup disabled><option>foo")
+ element = session.find.css("option", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_option_select(session, inline):
+ session.url = inline("<select disabled><option>foo")
+ element = session.find.css("option", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_optgroup_select(session, inline):
+ session.url = inline("<select disabled><optgroup>foo")
+ element = session.find.css("optgroup", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+def test_select(session, inline):
+ session.url = inline("<select disabled>")
+ element = session.find.css("select", all=False)
+
+ response = element_clear(session, element)
+ assert_error(response, "invalid element state")
+
+
+@pytest.mark.parametrize("tagname", ["button", "input", "select", "textarea"])
+def test_xhtml(session, inline, tagname):
+ session.url = inline(
+ f"""<{tagname} disabled="disabled"></{tagname}>""", doctype="xhtml")
+ element = session.find.css(tagname, all=False)
+
+ result = element_clear(session, element)
+ assert_error(result, "invalid element state")
+
+
+def test_xml(session, inline):
+ session.url = inline("""<note></note>""", doctype="xml")
+ element = session.find.css("note", all=False)
+
+ result = element_clear(session, element)
+ assert_error(result, "invalid element state")
diff --git a/testing/web-platform/tests/webdriver/tests/classic/element_clear/user_prompts.py b/testing/web-platform/tests/webdriver/tests/classic/element_clear/user_prompts.py
index 7a8564a684..ccf048bc0a 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/element_clear/user_prompts.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/element_clear/user_prompts.py
@@ -3,13 +3,7 @@
import pytest
from tests.support.asserts import assert_dialog_handled, assert_error, assert_success
-
-
-def element_clear(session, element):
- return session.transport.send(
- "POST", "/session/{session_id}/element/{element_id}/clear".format(
- session_id=session.session_id,
- element_id=element.id))
+from . import element_clear
@pytest.fixture
diff --git a/testing/web-platform/tests/webdriver/tests/classic/element_click/navigate.py b/testing/web-platform/tests/webdriver/tests/classic/element_click/navigate.py
index 6fadee9869..7fbb812f02 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/element_click/navigate.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/element_click/navigate.py
@@ -36,14 +36,14 @@ def test_multi_line_link(session, inline, url):
assert session.url == url(link)
-def test_link_unload_event(session, url, server_config, inline):
+def test_navigation_retains_input_state(session, url, server_config, inline):
link = "/webdriver/tests/classic/element_click/support/input.html"
session.url = inline(f"""
- <body onunload="checkUnload()">
+ <body onpagehide="checkPageHide()">
<a href="{link}">click here</a>
<input type="checkbox">
<script>
- function checkUnload() {{
+ function checkPageHide() {{
document.getElementsByTagName("input")[0].checked = true;
}}
</script>
diff --git a/testing/web-platform/tests/webdriver/tests/classic/get_element_text/get.py b/testing/web-platform/tests/webdriver/tests/classic/get_element_text/get.py
index 924a4e8d79..8f832077e1 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/get_element_text/get.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/get_element_text/get.py
@@ -87,13 +87,6 @@ def test_stale_element_reference(session, stale_element, as_frame):
assert_error(response, "stale element reference")
-def test_getting_text_of_a_non_existant_element_is_an_error(session, inline):
- session.url = inline("""<body>Hello world</body>""")
-
- result = get_element_text(session, "foo")
- assert_error(result, "no such element")
-
-
def test_read_element_text(session, inline):
session.url = inline("Before f<span id='id'>oo</span> after")
element = session.find.css("#id", all=False)
@@ -102,6 +95,20 @@ def test_read_element_text(session, inline):
assert_success(result, "oo")
+@pytest.mark.parametrize("text, expected", [
+ ("foo bar", "Foo Bar"),
+ ("foo-bar", "Foo-Bar"),
+ ("foo_bar", "Foo_bar"),
+], ids=["space", "dash", "underscore"])
+def test_transform_capitalize(session, inline, text, expected):
+ session.url = inline(
+ f"""<div style="text-transform: capitalize;">{text}""")
+ element = session.find.css("div", all=False)
+
+ result = get_element_text(session, element.id)
+ assert_success(result, expected)
+
+
@pytest.mark.parametrize("text, inner_html, expected", [
("cheese", "<slot><span>foo</span>bar</slot>", "cheese"),
("cheese", "<slot><span>foo</span></slot>bar", "cheesebar"),
diff --git a/testing/web-platform/tests/webdriver/tests/classic/get_named_cookie/get.py b/testing/web-platform/tests/webdriver/tests/classic/get_named_cookie/get.py
index 41426532ef..78418dae93 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/get_named_cookie/get.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/get_named_cookie/get.py
@@ -1,6 +1,6 @@
import pytest
-from datetime import datetime, timedelta
+from datetime import datetime, timedelta, timezone
from tests.support.asserts import assert_error, assert_success
@@ -62,7 +62,7 @@ def test_get_named_cookie(session, url):
# same formatting as Date.toUTCString() in javascript
utc_string_format = "%a, %d %b %Y %H:%M:%S"
- a_day_from_now = (datetime.utcnow() + timedelta(days=1)).strftime(utc_string_format)
+ a_day_from_now = (datetime.now(timezone.utc) + timedelta(days=1)).strftime(utc_string_format)
session.execute_script("document.cookie = 'foo=bar;expires=%s'" % a_day_from_now)
result = get_named_cookie(session, "foo")
diff --git a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/__init__.py b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/__init__.py
index e69de29bb2..9a6d884000 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/__init__.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/__init__.py
@@ -0,0 +1,8 @@
+def is_element_enabled(session, element_id):
+ return session.transport.send(
+ "GET",
+ "session/{session_id}/element/{element_id}/enabled".format(
+ session_id=session.session_id,
+ element_id=element_id
+ )
+ )
diff --git a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/enabled.py b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/enabled.py
index 24fc85fdad..9588486dde 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/enabled.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/enabled.py
@@ -3,16 +3,8 @@ import pytest
from webdriver import WebElement
from tests.support.asserts import assert_error, assert_success
-
-
-def is_element_enabled(session, element_id):
- return session.transport.send(
- "GET",
- "session/{session_id}/element/{element_id}/enabled".format(
- session_id=session.session_id,
- element_id=element_id
- )
- )
+from tests.support.dom import BUTTON_TYPES, INPUT_TYPES
+from . import is_element_enabled
def test_no_top_browsing_context(session, closed_window):
@@ -90,80 +82,171 @@ def test_stale_element_reference(session, stale_element, as_frame):
assert_error(result, "stale element reference")
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_form_control_disabled(session, inline, element):
- session.url = inline("<{} disabled/>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+@pytest.mark.parametrize("type", BUTTON_TYPES)
+def test_button(session, inline, status, expected, type):
+ session.url = inline(f"""<button type="{type}" {status}>""")
+ element = session.find.css("button", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, False)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_form_control_enabled(session, inline, element):
- session.url = inline("<{}/>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+@pytest.mark.parametrize("type", INPUT_TYPES)
+def test_input(session, inline, status, expected, type):
+ session.url = inline(f"""<input type="{type}" {status}>""")
+ element = session.find.css("input", all=False)
result = is_element_enabled(session, element.id)
- assert_success(result, True)
+ assert_success(result, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_fieldset_disabled_descendant(session, inline, element):
- session.url = inline("<fieldset disabled><{}/></fieldset>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_textarea(session, inline, status, expected):
+ session.url = inline(f"<textarea {status}></textarea>")
+ element = session.find.css("textarea", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, False)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_fieldset_enabled_descendant(session, inline, element):
- session.url = inline("<fieldset><{}/></fieldset>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_fieldset(session, inline, status, expected):
+ session.url = inline(f"<fieldset {status}><input>foo")
+ element = session.find.css("input", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, True)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_fieldset_disabled_descendant_legend(session, inline, element):
- session.url = inline("<fieldset disabled><legend><{}/></legend></fieldset>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_fieldset_descendant(session, inline, status, expected):
+ session.url = inline(f"<fieldset {status}><input>foo")
+ element = session.find.css("input", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, True)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_fieldset_enabled_descendant_legend(session, inline, element):
- session.url = inline("<fieldset><legend><{}/></legend></fieldset>".format(element))
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", True),
+], ids=["enabled", "disabled"])
+def test_fieldset_descendant_first_legend(session, inline, status, expected):
+ session.url = inline(f"<fieldset {status}><legend><input>foo")
+ element = session.find.css("input", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, True)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_xhtml_form_control_disabled(session, inline, element):
- session.url = inline("""<{} disabled="disabled"/>""".format(element),
- doctype="xhtml")
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_fieldset_descendant_not_first_legend(session, inline, status, expected):
+ session.url = inline(f"<fieldset {status}><legend></legend><legend><input>foo")
+ element = session.find.css("input", all=False)
- result = is_element_enabled(session, element.id)
- assert_success(result, False)
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
+
+
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_option(session, inline, status, expected):
+ session.url = inline(f"<select><option {status}>foo")
+ element = session.find.css("option", all=False)
+
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
+
+
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_option_with_optgroup(session, inline, status, expected):
+ session.url = inline(f"<select><optgroup {status}><option>foo")
+ element = session.find.css("optgroup", all=False)
+
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
+
+ option = session.find.css("option", all=False)
+ response = is_element_enabled(session, option.id)
+ assert_success(response, expected)
+
+
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_option_with_select(session, inline, status, expected):
+ session.url = inline(f"<select {status}><option>foo")
+
+ option = session.find.css("option", all=False)
+ response = is_element_enabled(session, option.id)
+ assert_success(response, expected)
+
+
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_optgroup_with_select(session, inline, status, expected):
+ session.url = inline(f"<select {status}><optgroup>foo")
+
+ option = session.find.css("optgroup", all=False)
+ response = is_element_enabled(session, option.id)
+ assert_success(response, expected)
+
+
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled", False),
+], ids=["enabled", "disabled"])
+def test_select(session, inline, status, expected):
+ session.url = inline(f"<select {status}>")
+ element = session.find.css("select", all=False)
+
+ response = is_element_enabled(session, element.id)
+ assert_success(response, expected)
-@pytest.mark.parametrize("element", ["button", "input", "select", "textarea"])
-def test_xhtml_form_control_enabled(session, inline, element):
- session.url = inline("""<{}/>""".format(element), doctype="xhtml")
- element = session.find.css(element, all=False)
+@pytest.mark.parametrize("status, expected", [
+ ("", True),
+ ("disabled=\"disabled\"", False),
+], ids=["enabled", "disabled"])
+@pytest.mark.parametrize("tagname", ["button", "input", "select", "textarea"])
+def test_xhtml(session, inline, status, expected, tagname):
+ session.url = inline(
+ f"""<{tagname} {status}></{tagname}>""", doctype="xhtml")
+ element = session.find.css(tagname, all=False)
result = is_element_enabled(session, element.id)
- assert_success(result, True)
+ assert_success(result, expected)
-def test_xml_always_not_enabled(session, inline):
+def test_xml(session, inline):
session.url = inline("""<note></note>""", doctype="xml")
element = session.find.css("note", all=False)
diff --git a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/user_prompts.py b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/user_prompts.py
index 5dd7d582bd..a3af947d51 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/user_prompts.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/is_element_enabled/user_prompts.py
@@ -3,16 +3,7 @@
import pytest
from tests.support.asserts import assert_error, assert_dialog_handled, assert_success
-
-
-def is_element_enabled(session, element_id):
- return session.transport.send(
- "GET",
- "session/{session_id}/element/{element_id}/enabled".format(
- session_id=session.session_id,
- element_id=element_id
- )
- )
+from . import is_element_enabled
@pytest.fixture
diff --git a/testing/web-platform/tests/webdriver/tests/classic/perform_actions/wheel.py b/testing/web-platform/tests/webdriver/tests/classic/perform_actions/wheel.py
index a75a84378a..6d0f9ddb11 100644
--- a/testing/web-platform/tests/webdriver/tests/classic/perform_actions/wheel.py
+++ b/testing/web-platform/tests/webdriver/tests/classic/perform_actions/wheel.py
@@ -4,6 +4,7 @@ from webdriver.error import NoSuchWindowException
from tests.classic.perform_actions.support.refine import get_events
+from tests.support.keys import Keys
def test_null_response_value(session, wheel_chain):
@@ -111,3 +112,18 @@ def test_scroll_shadow_tree(session, get_test_page, wheel_chain, mode, nested):
assert events[0]["deltaX"] == 5
assert events[0]["deltaY"] == 10
assert events[0]["target"] == "scrollableShadowTreeContent"
+
+
+def test_scroll_with_key_pressed(
+ session, test_actions_scroll_page, key_chain, wheel_chain
+):
+ scrollable = session.find.css("#scrollable", all=False)
+
+ key_chain.key_down(Keys.R_SHIFT).perform()
+ wheel_chain.scroll(0, 0, 5, 10, origin=scrollable).perform()
+ key_chain.key_up(Keys.R_SHIFT).perform()
+
+ events = get_events(session)
+ assert len(events) == 1
+ assert events[0]["type"] == "wheel"
+ assert events[0]["shiftKey"] == True
diff --git a/testing/web-platform/tests/webdriver/tests/support/dom.py b/testing/web-platform/tests/webdriver/tests/support/dom.py
new file mode 100644
index 0000000000..f77fb49387
--- /dev/null
+++ b/testing/web-platform/tests/webdriver/tests/support/dom.py
@@ -0,0 +1,29 @@
+BUTTON_TYPES = [
+ "button",
+ "reset",
+ "submit",
+]
+
+INPUT_TYPES = [
+ "button",
+ "checkbox",
+ "color",
+ "date",
+ "datetime-local",
+ "email",
+ "file",
+ "image",
+ "month",
+ "number",
+ "password",
+ "radio",
+ "range",
+ "reset",
+ "search",
+ "submit",
+ "tel",
+ "text",
+ "time",
+ "url",
+ "week",
+];
diff --git a/testing/web-platform/tests/webdriver/tests/support/fixtures_bidi.py b/testing/web-platform/tests/webdriver/tests/support/fixtures_bidi.py
index 32919210bf..c76b369f21 100644
--- a/testing/web-platform/tests/webdriver/tests/support/fixtures_bidi.py
+++ b/testing/web-platform/tests/webdriver/tests/support/fixtures_bidi.py
@@ -538,7 +538,12 @@ def fetch(bidi_session, top_context, configuration):
"""
async def fetch(
- url, method="GET", headers=None, context=top_context, timeout_in_seconds=3
+ url,
+ method="GET",
+ headers=None,
+ post_data=None,
+ context=top_context,
+ timeout_in_seconds=3,
):
method_arg = f"method: '{method}',"
@@ -546,6 +551,10 @@ def fetch(bidi_session, top_context, configuration):
if headers is not None:
headers_arg = f"headers: {json.dumps(headers)},"
+ body_arg = ""
+ if post_data is not None:
+ body_arg = f"body: {post_data},"
+
timeout_in_seconds = timeout_in_seconds * configuration["timeout_multiplier"]
# Wait for fetch() to resolve a response and for response.text() to
# resolve as well to make sure the request/response is completed when
@@ -558,6 +567,7 @@ def fetch(bidi_session, top_context, configuration):
fetch("{url}", {{
{method_arg}
{headers_arg}
+ {body_arg}
signal: controller.signal,
}}).then(response => response.text());
}}""",
diff --git a/testing/web-platform/tests/webdriver/tests/support/html/test_actions_scroll.html b/testing/web-platform/tests/webdriver/tests/support/html/test_actions_scroll.html
index db5952ed74..edeff342fe 100644
--- a/testing/web-platform/tests/webdriver/tests/support/html/test_actions_scroll.html
+++ b/testing/web-platform/tests/webdriver/tests/support/html/test_actions_scroll.html
@@ -63,6 +63,10 @@
"deltaZ": event.deltaZ,
"deltaMode": event.deltaMode,
"target": event.target.id,
+ "altKey": event.altKey,
+ "ctrlKey": event.ctrlKey,
+ "metaKey": event.metaKey,
+ "shiftKey": event.shiftKey,
});
addMessage(
@@ -75,7 +79,11 @@
"deltaY: " + event.deltaY + ", " +
"deltaZ: " + event.deltaZ + ", " +
"deltaMode: " + event.deltaMode + ", " +
- "target id: " + event.target.id
+ "target id: " + event.target.id + ", " +
+ "altKey: " + event.altKey + ", " +
+ "ctrlKey: " + event.ctrlKey + ", " +
+ "metaKey: " + event.metaKey + ", " +
+ "shiftKey: " + event.shiftKey
);
}
@@ -121,7 +129,11 @@
"deltaY": event.deltaY,
"deltaZ": event.deltaZ,
"deltaMode": event.deltaMode,
- "target": event.target
+ "target": event.target,
+ "altKey": event.altKey,
+ "ctrlKey": event.ctrlKey,
+ "metaKey": event.metaKey,
+ "shiftKey": event.shiftKey,
});
});
</script>
diff --git a/testing/web-platform/tests/webidl/ecmascript-binding/legacy-factory-function-builtin-properties.window.js b/testing/web-platform/tests/webidl/ecmascript-binding/legacy-factory-function-builtin-properties.window.js
new file mode 100644
index 0000000000..fc5c48aca3
--- /dev/null
+++ b/testing/web-platform/tests/webidl/ecmascript-binding/legacy-factory-function-builtin-properties.window.js
@@ -0,0 +1,6 @@
+"use strict";
+
+test(() => {
+ const ownPropKeys = Reflect.ownKeys(Image).slice(0, 3);
+ assert_array_equals(ownPropKeys, ["length", "name", "prototype"]);
+}, 'Legacy factory function property enumeration order of "length", "name", and "prototype"');
diff --git a/testing/web-platform/tests/webnn/conformance_tests/arg_min_max.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/arg_min_max.https.any.js
index 123c8b1048..0f9e590fc8 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/arg_min_max.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/arg_min_max.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API argMin/Max operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-argminmax
-testWebNNOperation(['argMin', 'argMax'], buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests(['argMin', 'argMax'], buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/batch_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/batch_normalization.https.any.js
index 9a1c85db19..d3107820db 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/batch_normalization.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/batch_normalization.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API batchNormalization operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-batchnorm
-testWebNNOperation('batchNormalization', buildBatchNorm); \ No newline at end of file
+runWebNNConformanceTests('batchNormalization', buildBatchNorm);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/buffer.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/buffer.https.any.js
index 9391be8dbf..5a09b05c7d 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/buffer.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/buffer.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API buffer operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,10 +9,11 @@
// https://webmachinelearning.github.io/webnn/#api-mlbuffer
-testCreateWebNNBuffer("create", 4);
-
-testDestroyWebNNBuffer('destroyTwice');
-
-testReadWebNNBuffer('read');
-
-testWriteWebNNBuffer('write');
+if (navigator.ml) {
+ testCreateWebNNBuffer('create', 4);
+ testDestroyWebNNBuffer('destroyTwice');
+ testReadWebNNBuffer('read');
+ testWriteWebNNBuffer('write');
+} else {
+ test(() => assert_implements(navigator.ml, 'missing navigator.ml'));
+}
diff --git a/testing/web-platform/tests/webnn/conformance_tests/cast.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/cast.https.any.js
index bde2b9a4ce..086428dd96 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/cast.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/cast.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API cast operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-cast
-testWebNNOperation('cast', buildCast); \ No newline at end of file
+runWebNNConformanceTests('cast', buildCast);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/clamp.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/clamp.https.any.js
index 7b60c41f2c..ab47ac9c5c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/clamp.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/clamp.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API clamp operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-clamp
-testWebNNOperation('clamp', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('clamp', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/compute-arraybufferview-with-bigger-arraybuffer.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/compute-arraybufferview-with-bigger-arraybuffer.https.any.js
new file mode 100644
index 0000000000..62ce16c93e
--- /dev/null
+++ b/testing/web-platform/tests/webnn/conformance_tests/compute-arraybufferview-with-bigger-arraybuffer.https.any.js
@@ -0,0 +1,61 @@
+// META: title=test WebNN MLContext.compute() for ArrayBufferView created from bigger ArrayBuffer
+// META: global=window,dedicatedworker
+// META: variant=?gpu
+// META: script=../resources/utils.js
+
+'use strict';
+
+// These tests are used to reproduce the Chromium issue:
+// https://issues.chromium.org/issues/332151809
+
+if (navigator.ml) {
+ const variant = location.search.substring(1);
+ const contextOptions = kContextOptionsForVariant[variant];
+
+ let context;
+ let builder;
+
+ promise_setup(async () => {
+ let supported = false;
+ try {
+ context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
+ builder = new MLGraphBuilder(context);
+ });
+
+ promise_test(async t => {
+ const a = builder.input('a', {dataType: 'float32', dimensions: [2]});
+ const b = builder.relu(a);
+ const graph = await builder.build({b});
+ const arraybuffer = new ArrayBuffer(100);
+ const aBuffer =
+ new Float32Array(arraybuffer, /*byteOffset*/ 4, /*length*/ 2)
+ aBuffer.set([1, -1]);
+ const bBuffer = new Float32Array(2);
+ const results =
+ await context.compute(graph, {'a': aBuffer}, {'b': bBuffer});
+ assert_array_approx_equals_ulp(
+ results.outputs.b, [1, 0], /*nulp*/ 0, 'float32');
+ }, 'Test compute() working for input ArrayBufferView created from bigger ArrayBuffer');
+
+ promise_test(async t => {
+ const a = builder.input('a', {dataType: 'float32', dimensions: [2]});
+ const b = builder.relu(a);
+ const graph = await builder.build({b});
+ const aBuffer = new Float32Array(2);
+ aBuffer.set([1, -1]);
+ const arraybuffer = new ArrayBuffer(100);
+ const bBuffer =
+ new Float32Array(arraybuffer, /*byteOffset*/ 8, /*length*/ 2);
+ const results =
+ await context.compute(graph, {'a': aBuffer}, {'b': bBuffer});
+ assert_array_approx_equals_ulp(
+ results.outputs.b, [1, 0], /*nulp*/ 0, 'float32');
+ }, 'Test compute() working for output ArrayBufferView created from bigger ArrayBuffer');
+} else {
+ test(() => assert_implements(navigator.ml, 'missing navigator.ml'));
+}
diff --git a/testing/web-platform/tests/webnn/conformance_tests/concat.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/concat.https.any.js
index 254e0b657b..619f20fe1c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/concat.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/concat.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API concat operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-concat
-testWebNNOperation('concat', buildConcat); \ No newline at end of file
+runWebNNConformanceTests('concat', buildConcat);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/constant.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/constant.https.any.js
index 4814734886..79362947f1 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/constant.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/constant.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API constant
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-constant-range
-testWebNNOperation('constant', buildConstantRange); \ No newline at end of file
+runWebNNConformanceTests('constant', buildConstantRange);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/conv2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/conv2d.https.any.js
index 0d9a621356..34af583162 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/conv2d.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/conv2d.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API conv2d operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-conv2d
-testWebNNOperation('conv2d', buildConv2d); \ No newline at end of file
+runWebNNConformanceTests('conv2d', buildConv2d);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/conv_transpose2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/conv_transpose2d.https.any.js
index ee5d28c72a..2943e67851 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/conv_transpose2d.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/conv_transpose2d.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API convTranspose2d operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-convtranspose2d
-testWebNNOperation('convTranspose2d', buildConvTranspose2d); \ No newline at end of file
+runWebNNConformanceTests('convTranspose2d', buildConvTranspose2d);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/elementwise_binary.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/elementwise_binary.https.any.js
index 5db14a43a1..a85a06e1d2 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/elementwise_binary.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/elementwise_binary.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API element-wise binary operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,6 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-binary
-testWebNNOperation(['add', 'sub', 'mul', 'div', 'max', 'min', 'pow'], buildOperationWithTwoInputs); \ No newline at end of file
+runWebNNConformanceTests(
+ ['add', 'sub', 'mul', 'div', 'max', 'min', 'pow'],
+ buildOperationWithTwoInputs);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/elementwise_logical.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/elementwise_logical.https.any.js
index a60c199447..3d3a825f9c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/elementwise_logical.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/elementwise_logical.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API element-wise logical operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,14 +9,17 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-logical
-testWebNNOperation(
- [
- 'equal',
- 'greater',
- 'greaterOrEqual',
- 'lesser',
- 'lesserOrEqual',
- ],
- buildOperationWithTwoInputs
-);
-testWebNNOperation('logicalNot', buildOperationWithSingleInput); \ No newline at end of file
+if (navigator.ml) {
+ testWebNNOperation(
+ [
+ 'equal',
+ 'greater',
+ 'greaterOrEqual',
+ 'lesser',
+ 'lesserOrEqual',
+ ],
+ buildOperationWithTwoInputs);
+ testWebNNOperation('logicalNot', buildOperationWithSingleInput);
+} else {
+ test(() => assert_implements(navigator.ml, 'missing navigator.ml'));
+}
diff --git a/testing/web-platform/tests/webnn/conformance_tests/elementwise_unary.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/elementwise_unary.https.any.js
index 8029539eda..f202af01e5 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/elementwise_unary.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/elementwise_unary.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API element-wise unary operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,7 +9,9 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-unary
-testWebNNOperation(
- ['abs', 'ceil', 'cos', 'erf', 'exp', 'floor', 'identity', 'log', 'neg', 'reciprocal', 'sin', 'sqrt', 'tan'],
- buildOperationWithSingleInput
-); \ No newline at end of file
+runWebNNConformanceTests(
+ [
+ 'abs', 'ceil', 'cos', 'erf', 'exp', 'floor', 'identity', 'log', 'neg',
+ 'reciprocal', 'sin', 'sqrt', 'tan'
+ ],
+ buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/elu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/elu.https.any.js
index 382faa97fd..ac1c19a80b 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/elu.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/elu.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API elu operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-elu
-testWebNNOperation('elu', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('elu', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/expand.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/expand.https.any.js
index b1be129eac..e7bf106f96 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/expand.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/expand.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API expand operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,5 +9,5 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-expand
-// reuse buildReshape method
-testWebNNOperation('expand', buildReshape); \ No newline at end of file
+// Reuse buildReshape method
+runWebNNConformanceTests('expand', buildReshape);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gather.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gather.https.any.js
index 39b1970563..504f2dd792 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/gather.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/gather.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API gather operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-gather
-testWebNNOperation('gather', buildOperationWithTwoInputs); \ No newline at end of file
+runWebNNConformanceTests('gather', buildOperationWithTwoInputs);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gemm.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gemm.https.any.js
index 61fd7c9b39..03a836a44a 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/gemm.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/gemm.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API gemm operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-gemm
-testWebNNOperation('gemm', buildGemm); \ No newline at end of file
+runWebNNConformanceTests('gemm', buildGemm);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/arg_min_max.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/arg_min_max.https.any.js
deleted file mode 100644
index c700ee5cad..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/arg_min_max.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API argMin/Max operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-argminmax
-
-testWebNNOperation(['argMin', 'argMax'], buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/batch_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/batch_normalization.https.any.js
deleted file mode 100644
index 534cdf6365..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/batch_normalization.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API batchNormalization operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-batchnorm
-
-testWebNNOperation('batchNormalization', buildBatchNorm, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/buffer.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/buffer.https.any.js
deleted file mode 100644
index 225bc40185..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/buffer.https.any.js
+++ /dev/null
@@ -1,16 +0,0 @@
-// META: title=test WebNN API buffer operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlbuffer
-
-testCreateWebNNBuffer("create", 4, 'gpu');
-
-testDestroyWebNNBuffer('destroyTwice', 'gpu');
-
-testReadWebNNBuffer('read', 'gpu');
-
-testWriteWebNNBuffer('write', 'gpu');
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/cast.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/cast.https.any.js
deleted file mode 100644
index e4309ffd8e..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/cast.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API cast operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-cast
-
-testWebNNOperation('cast', buildCast, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/clamp.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/clamp.https.any.js
deleted file mode 100644
index 9b3f93ecc7..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/clamp.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API clamp operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-clamp
-
-testWebNNOperation('clamp', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/concat.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/concat.https.any.js
deleted file mode 100644
index c0cfb8626b..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/concat.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API concat operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-concat
-
-testWebNNOperation('concat', buildConcat, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/constant.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/constant.https.any.js
deleted file mode 100644
index 77b4d889a2..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/constant.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API constant
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-constant-range
-
-testWebNNOperation('constant', buildConstantRange, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/conv2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/conv2d.https.any.js
deleted file mode 100644
index 770540abd8..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/conv2d.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API conv2d operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-conv2d
-
-testWebNNOperation('conv2d', buildConv2d, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js
deleted file mode 100644
index 08c441b5b4..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/conv_transpose2d.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API convTranspose2d operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-convtranspose2d
-
-testWebNNOperation('convTranspose2d', buildConvTranspose2d, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_binary.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_binary.https.any.js
deleted file mode 100644
index 8b9fa486f8..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_binary.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API element-wise binary operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-binary
-
-testWebNNOperation(['add', 'sub', 'mul', 'div', 'max', 'min', 'pow'], buildOperationWithTwoInputs, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_logical.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_logical.https.any.js
deleted file mode 100644
index 70a887a147..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_logical.https.any.js
+++ /dev/null
@@ -1,20 +0,0 @@
-// META: title=test WebNN API element-wise logical operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-logical
-
-testWebNNOperation(
- [
- 'equal',
- 'greater',
- 'greaterOrEqual',
- 'lesser',
- 'lesserOrEqual',
- ],
- buildOperationWithTwoInputs, 'gpu'
-);
-testWebNNOperation('logicalNot', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_unary.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_unary.https.any.js
deleted file mode 100644
index 8871129311..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/elementwise_unary.https.any.js
+++ /dev/null
@@ -1,13 +0,0 @@
-// META: title=test WebNN API element-wise unary operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-unary
-
-testWebNNOperation(
- ['abs', 'ceil', 'cos', 'erf', 'exp', 'floor', 'identity', 'log', 'neg', 'reciprocal', 'sin', 'sqrt', 'tan'],
- buildOperationWithSingleInput, 'gpu'
-); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/elu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/elu.https.any.js
deleted file mode 100644
index db14442641..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/elu.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API elu operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-elu
-
-testWebNNOperation('elu', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/expand.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/expand.https.any.js
deleted file mode 100644
index f46f463781..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/expand.https.any.js
+++ /dev/null
@@ -1,11 +0,0 @@
-// META: title=test WebNN API expand operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-expand
-
-// reuse buildReshape method
-testWebNNOperation('expand', buildReshape, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/gather.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/gather.https.any.js
deleted file mode 100644
index 8e457192d8..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/gather.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API gather operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-gather
-
-testWebNNOperation('gather', buildOperationWithTwoInputs, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/gemm.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/gemm.https.any.js
deleted file mode 100644
index f288c31bed..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/gemm.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API gemm operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-gemm
-
-testWebNNOperation('gemm', buildGemm, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js
deleted file mode 100644
index d40e42a211..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_sigmoid.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API hardSigmoid operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-hard-sigmoid
-
-testWebNNOperation('hardSigmoid', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_swish.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_swish.https.any.js
deleted file mode 100644
index 031e65ee16..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/hard_swish.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API tanh operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-hard-swish
-
-testWebNNOperation('hardSwish', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/instance_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/instance_normalization.https.any.js
deleted file mode 100644
index ecfaac71ee..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/instance_normalization.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API instanceNormalization operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-instancenorm
-
-testWebNNOperation('instanceNormalization', buildLayerNorm, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/layer_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/layer_normalization.https.any.js
deleted file mode 100644
index 0e4f6caebf..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/layer_normalization.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API layerNormalization operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-layernorm
-
-testWebNNOperation('layerNormalization', buildLayerNorm, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/leaky_relu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/leaky_relu.https.any.js
deleted file mode 100644
index 9fab2353b9..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/leaky_relu.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API leakyRelu operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-leakyrelu
-
-testWebNNOperation('leakyRelu', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/linear.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/linear.https.any.js
deleted file mode 100644
index ccec2c3eac..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/linear.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API linear operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-linear
-
-testWebNNOperation('linear', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/matmul.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/matmul.https.any.js
deleted file mode 100644
index 635ce84ac6..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/matmul.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API matmul operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-matmul
-
-testWebNNOperation('matmul', buildOperationWithTwoInputs, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/pad.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/pad.https.any.js
deleted file mode 100644
index f313e2c9f9..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/pad.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API pad operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-pad
-
-testWebNNOperation('pad', buildPad, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/pooling.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/pooling.https.any.js
deleted file mode 100644
index 837bca2c71..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/pooling.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API pooling operations
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-pool2d
-
-testWebNNOperation(['averagePool2d', 'l2Pool2d', 'maxPool2d'], buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/prelu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/prelu.https.any.js
deleted file mode 100644
index 475cd9e5ce..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/prelu.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API prelu operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-prelu
-
-testWebNNOperation('prelu', buildOperationWithTwoInputs, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/reduction.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/reduction.https.any.js
deleted file mode 100644
index 0f3cefa02e..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/reduction.https.any.js
+++ /dev/null
@@ -1,24 +0,0 @@
-// META: title=test WebNN API reduction operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-reduce
-
-testWebNNOperation(
- [
- 'reduceL1',
- 'reduceL2',
- 'reduceLogSum',
- 'reduceLogSumExp',
- 'reduceMax',
- 'reduceMean',
- 'reduceMin',
- 'reduceProduct',
- 'reduceSum',
- 'reduceSumSquare',
- ],
- buildOperationWithSingleInput, 'gpu'
-); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/relu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/relu.https.any.js
deleted file mode 100644
index d1a35367df..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/relu.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API relu operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-relu
-
-testWebNNOperation('relu', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/resample2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/resample2d.https.any.js
deleted file mode 100644
index dd8e441946..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/resample2d.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API resample2d operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-resample2d-method
-
-testWebNNOperation('resample2d', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/reshape.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/reshape.https.any.js
deleted file mode 100644
index b0217d2e67..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/reshape.https.any.js
+++ /dev/null
@@ -1,11 +0,0 @@
-// META: title=test WebNN API reshape operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-reshape
-
-testWebNNOperation('reshape', buildReshape, 'gpu');
-
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/sigmoid.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/sigmoid.https.any.js
deleted file mode 100644
index 26116c0ff9..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/sigmoid.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API sigmoid operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-sigmoid
-
-testWebNNOperation('sigmoid', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/slice.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/slice.https.any.js
deleted file mode 100644
index 1710c79a9c..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/slice.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API slice operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-slice
-
-testWebNNOperation('slice', buildSlice, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/softmax.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/softmax.https.any.js
deleted file mode 100644
index 9eaffe2beb..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/softmax.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API softmax operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softmax
-
-testWebNNOperation('softmax', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/softplus.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/softplus.https.any.js
deleted file mode 100644
index 5f06846113..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/softplus.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API softplus operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softplus
-
-testWebNNOperation('softplus', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/softsign.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/softsign.https.any.js
deleted file mode 100644
index eac0b7ec40..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/softsign.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API softsign operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softsign
-
-testWebNNOperation('softsign', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/split.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/split.https.any.js
deleted file mode 100644
index 3b0aafd787..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/split.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API split operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-split
-
-testWebNNOperation('split', buildSplit, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/tanh.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/tanh.https.any.js
deleted file mode 100644
index 3029f4865a..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/tanh.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API tanh operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-tanh
-
-testWebNNOperation('tanh', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/transpose.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/transpose.https.any.js
deleted file mode 100644
index 295ef43ec1..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/transpose.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API transpose operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-transpose
-
-testWebNNOperation('transpose', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/triangular.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/triangular.https.any.js
deleted file mode 100644
index 3e1b0d5ab1..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/triangular.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API triangular operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-triangular
-
-testWebNNOperation('triangular', buildOperationWithSingleInput, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/gpu/where.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/gpu/where.https.any.js
deleted file mode 100644
index 49c6cbd4e3..0000000000
--- a/testing/web-platform/tests/webnn/conformance_tests/gpu/where.https.any.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// META: title=test WebNN API where operation
-// META: global=window,dedicatedworker
-// META: script=../../resources/utils.js
-// META: timeout=long
-
-'use strict';
-
-// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-where
-
-testWebNNOperation('where', buildWhere, 'gpu'); \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/conformance_tests/hard_sigmoid.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/hard_sigmoid.https.any.js
index 8161a24538..55391e7f1c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/hard_sigmoid.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/hard_sigmoid.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API hardSigmoid operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-hard-sigmoid
-testWebNNOperation('hardSigmoid', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('hardSigmoid', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/hard_swish.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/hard_swish.https.any.js
index b4a7c53d8d..24b8c413bb 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/hard_swish.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/hard_swish.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API tanh operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-hard-swish
-testWebNNOperation('hardSwish', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('hardSwish', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/instance_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/instance_normalization.https.any.js
index fce879172e..fc339e5bab 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/instance_normalization.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/instance_normalization.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API instanceNormalization operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-instancenorm
-testWebNNOperation('instanceNormalization', buildLayerNorm); \ No newline at end of file
+runWebNNConformanceTests('instanceNormalization', buildLayerNorm);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/layer_normalization.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/layer_normalization.https.any.js
index ab8a50cc03..ea3cd04240 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/layer_normalization.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/layer_normalization.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API layerNormalization operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-layernorm
-testWebNNOperation('layerNormalization', buildLayerNorm); \ No newline at end of file
+runWebNNConformanceTests('layerNormalization', buildLayerNorm);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/leaky_relu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/leaky_relu.https.any.js
index 2b6f17e95d..b2a4055bde 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/leaky_relu.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/leaky_relu.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API leakyRelu operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-leakyrelu
-testWebNNOperation('leakyRelu', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('leakyRelu', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/linear.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/linear.https.any.js
index 465b697f29..0e22f7a036 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/linear.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/linear.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API linear operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-linear
-testWebNNOperation('linear', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('linear', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/matmul.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/matmul.https.any.js
index 64eeb37f08..da78230579 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/matmul.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/matmul.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API matmul operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-matmul
-testWebNNOperation('matmul', buildOperationWithTwoInputs); \ No newline at end of file
+runWebNNConformanceTests('matmul', buildOperationWithTwoInputs);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/pad.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/pad.https.any.js
index f1a2400d1c..d733cbb6ed 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/pad.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/pad.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API pad operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-pad
-testWebNNOperation('pad', buildPad); \ No newline at end of file
+runWebNNConformanceTests('pad', buildPad);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/parallel-compute.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/parallel-compute.https.any.js
new file mode 100644
index 0000000000..642fec9f73
--- /dev/null
+++ b/testing/web-platform/tests/webnn/conformance_tests/parallel-compute.https.any.js
@@ -0,0 +1,19 @@
+// META: title=test parallel WebNN API compute operations
+// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
+// META: script=../resources/utils.js
+// META: timeout=long
+
+'use strict';
+
+// https://webmachinelearning.github.io/webnn/#api-mlcontext-compute
+
+if (navigator.ml) {
+ testParallelCompute();
+} else {
+ // Show indication to users why the test failed
+ test(
+ () => assert_not_equals(
+ navigator.ml, undefined, 'ml property is defined on navigator'));
+}
diff --git a/testing/web-platform/tests/webnn/conformance_tests/pooling.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/pooling.https.any.js
index 400d5ed37d..de2ae35a9c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/pooling.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/pooling.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API pooling operations
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,5 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-pool2d
-testWebNNOperation(['averagePool2d', 'l2Pool2d', 'maxPool2d'], buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests(
+ ['averagePool2d', 'l2Pool2d', 'maxPool2d'], buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/prelu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/prelu.https.any.js
index 83cc9db4b4..9337211e54 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/prelu.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/prelu.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API prelu operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-prelu
-testWebNNOperation('prelu', buildOperationWithTwoInputs); \ No newline at end of file
+runWebNNConformanceTests('prelu', buildOperationWithTwoInputs);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/reduction.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/reduction.https.any.js
index 30bfb4ba7a..c291906ba1 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/reduction.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/reduction.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API reduction operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,18 +9,17 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-reduce
-testWebNNOperation(
- [
- 'reduceL1',
- 'reduceL2',
- 'reduceLogSum',
- 'reduceLogSumExp',
- 'reduceMax',
- 'reduceMean',
- 'reduceMin',
- 'reduceProduct',
- 'reduceSum',
- 'reduceSumSquare',
- ],
- buildOperationWithSingleInput
-); \ No newline at end of file
+runWebNNConformanceTests(
+ [
+ 'reduceL1',
+ 'reduceL2',
+ 'reduceLogSum',
+ 'reduceLogSumExp',
+ 'reduceMax',
+ 'reduceMean',
+ 'reduceMin',
+ 'reduceProduct',
+ 'reduceSum',
+ 'reduceSumSquare',
+ ],
+ buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/relu.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/relu.https.any.js
index 51e427898f..7cb23eea1b 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/relu.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/relu.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API relu operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-relu
-testWebNNOperation('relu', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('relu', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/resample2d.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/resample2d.https.any.js
index 0b5b3e0032..b5bdda7197 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/resample2d.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/resample2d.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API resample2d operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-resample2d-method
-testWebNNOperation('resample2d', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('resample2d', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/reshape.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/reshape.https.any.js
index c0dafb176c..a7d03b2a0c 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/reshape.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/reshape.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API reshape operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,5 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-reshape
-testWebNNOperation('reshape', buildReshape);
-
+runWebNNConformanceTests('reshape', buildReshape);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/sigmoid.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/sigmoid.https.any.js
index 186f468918..9730b548b5 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/sigmoid.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/sigmoid.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API sigmoid operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-sigmoid
-testWebNNOperation('sigmoid', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('sigmoid', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/slice.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/slice.https.any.js
index 6441204517..b316ea58c4 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/slice.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/slice.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API slice operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-slice
-testWebNNOperation('slice', buildSlice); \ No newline at end of file
+runWebNNConformanceTests('slice', buildSlice);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/softmax.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/softmax.https.any.js
index 143b7d969f..a68a32c45f 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/softmax.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/softmax.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API softmax operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softmax
-testWebNNOperation('softmax', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('softmax', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/softplus.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/softplus.https.any.js
index fcd6410bdb..7d89b117eb 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/softplus.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/softplus.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API softplus operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softplus
-testWebNNOperation('softplus', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('softplus', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/softsign.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/softsign.https.any.js
index 6e26afdade..e175e0de56 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/softsign.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/softsign.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API softsign operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-softsign
-testWebNNOperation('softsign', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('softsign', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/split.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/split.https.any.js
index 0de6cb4d8d..78d707687f 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/split.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/split.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API split operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-split
-testWebNNOperation('split', buildSplit); \ No newline at end of file
+runWebNNConformanceTests('split', buildSplit);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/tanh.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/tanh.https.any.js
index c5d1f86ab1..e3ab5e9192 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/tanh.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/tanh.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API tanh operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-tanh
-testWebNNOperation('tanh', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('tanh', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/transpose.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/transpose.https.any.js
index 746e53d512..83bd7a45c1 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/transpose.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/transpose.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API transpose operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-transpose
-testWebNNOperation('transpose', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('transpose', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/triangular.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/triangular.https.any.js
index 503f310620..499f60ed36 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/triangular.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/triangular.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API triangular operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-triangular
-testWebNNOperation('triangular', buildOperationWithSingleInput); \ No newline at end of file
+runWebNNConformanceTests('triangular', buildOperationWithSingleInput);
diff --git a/testing/web-platform/tests/webnn/conformance_tests/where.https.any.js b/testing/web-platform/tests/webnn/conformance_tests/where.https.any.js
index 7926221d3a..4ab453ab24 100644
--- a/testing/web-platform/tests/webnn/conformance_tests/where.https.any.js
+++ b/testing/web-platform/tests/webnn/conformance_tests/where.https.any.js
@@ -1,5 +1,7 @@
// META: title=test WebNN API where operation
// META: global=window,dedicatedworker
+// META: variant=?cpu
+// META: variant=?gpu
// META: script=../resources/utils.js
// META: timeout=long
@@ -7,4 +9,4 @@
// https://webmachinelearning.github.io/webnn/#api-mlgraphbuilder-where
-testWebNNOperation('where', buildWhere); \ No newline at end of file
+runWebNNConformanceTests('where', buildWhere);
diff --git a/testing/web-platform/tests/webnn/resources/test_data/arg_max.json b/testing/web-platform/tests/webnn/resources/test_data/arg_max.json
index d2fe9e62ca..348a54dc24 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/arg_max.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/arg_max.json
@@ -460,7 +460,7 @@
}
},
"options": {
- "keepDimensions": true
+ "keepDimensions": false
},
"expected": {
"name": "output",
diff --git a/testing/web-platform/tests/webnn/resources/test_data/arg_min.json b/testing/web-platform/tests/webnn/resources/test_data/arg_min.json
index 132a2dc3e8..330afbc710 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/arg_min.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/arg_min.json
@@ -460,7 +460,7 @@
}
},
"options": {
- "keepDimensions": true
+ "keepDimensions": false
},
"expected": {
"name": "output",
diff --git a/testing/web-platform/tests/webnn/resources/test_data/matmul.json b/testing/web-platform/tests/webnn/resources/test_data/matmul.json
index f3a03e442e..cc1789ee25 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/matmul.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/matmul.json
@@ -1,332 +1,6 @@
{
"tests": [
{
- "name": "matmul float32 constant 1D and 1D tensors all positive produces a scalar",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32",
- "constant": true
- },
- "b": {
- "shape": [4],
- "data": [
- 27.829805134194842,
- 83.14548502311283,
- 34.4128942110155,
- 83.20379675185079
- ],
- "type": "float32",
- "constant": true
- }
- },
- "expected": {
- "name": "output",
- "data": 7458.89013671875,
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 1D and 1D tensors all positive produces a scalar",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- 27.829805134194842,
- 83.14548502311283,
- 34.4128942110155,
- 83.20379675185079
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "data": 7458.89013671875,
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 1D and 1D tensors all negative produces a scalar",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- -86.60583871803968,
- -94.74202421330796,
- -86.16720380573273,
- -76.0215630990851
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- -21.22328469397374,
- -56.66441199254357,
- -77.66753889428908,
- -56.55797454862353
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "data": 18198.58203125,
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 positive 1D and negative 1D tensors produces a scalar",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- -21.22328469397374,
- -56.66441199254357,
- -77.66753889428908,
- -56.55797454862353
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "data": -7069.85546875,
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 negative 1D and positive 1D tensors produces a scalar",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- -86.60583871803968,
- -94.74202421330796,
- -86.16720380573273,
- -76.0215630990851
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- 27.829805134194842,
- 83.14548502311283,
- 34.4128942110155,
- 83.20379675185079
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "data": -19578.140625,
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 1D and 2D tensors",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4, 5],
- "data": [
- 88.17004408170853,
- 78.40126706348094,
- 14.819002753540623,
- 3.692303791736573,
- 45.9064286713635,
- 43.08391896733015,
- 47.19946845924572,
- 60.925216107016425,
- 8.162760351602216,
- 20.33326305093228,
- 20.438397895943282,
- 27.01940859922867,
- 15.601424432184263,
- 87.46969388883927,
- 65.79554455585657,
- 69.31696864490797,
- 31.984439910782992,
- 12.291812891860388,
- 13.304834654547172,
- 85.26705387930089
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "shape": [1, 5],
- "data": [
- 8602.796875,
- 7075.7802734375,
- 3083.654052734375,
- 3881.228271484375,
- 8131.462890625
- ],
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 1D and 4D tensors",
- "inputs": {
- "a": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32"
- },
- "b": {
- "shape": [2, 2, 4, 2],
- "data": [
- 71.54684436671175,
- 78.61926127874348,
- 2.246814764541316,
- 12.044773359659434,
- 1.8342867333124069,
- 82.09732511549477,
- 43.884761946067094,
- 5.616231825100204,
- 34.67424097413332,
- 49.152710076333506,
- 75.34904358690912,
- 84.74523302920429,
- 36.56497325521975,
- 22.89479672718755,
- 15.02636975800511,
- 66.49530785246675,
- 65.81345056776044,
- 26.749681209347376,
- 19.415639234175774,
- 98.60692665127114,
- 65.39448996549784,
- 56.47023672202065,
- 80.64523905250766,
- 82.20401464839868,
- 70.84606482516416,
- 50.27994995977012,
- 67.39406108056262,
- 75.35806805146241,
- 2.7487208784167327,
- 68.0645872775828,
- 70.73791158057968,
- 46.26436742398676
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "shape": [2, 2, 1, 2],
- "data": [
- 5293.36376953125,
- 7255.7626953125,
- 5224.80322265625,
- 7556.21142578125,
- 8926.5361328125,
- 8476.359375,
- 7713.62158203125,
- 8234.0224609375
- ],
- "type": "float32"
- }
- },
- {
- "name": "matmul float32 2D and 1D tensors",
- "inputs": {
- "a": {
- "shape": [5, 4],
- "data": [
- 88.17004408170853,
- 43.08391896733015,
- 20.438397895943282,
- 69.31696864490797,
- 78.40126706348094,
- 47.19946845924572,
- 27.01940859922867,
- 31.984439910782992,
- 14.819002753540623,
- 60.925216107016425,
- 15.601424432184263,
- 12.291812891860388,
- 3.692303791736573,
- 8.162760351602216,
- 87.46969388883927,
- 13.304834654547172,
- 45.9064286713635,
- 20.33326305093228,
- 65.79554455585657,
- 85.26705387930089
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- 50.10142534731317,
- 22.2193058046253,
- 34.65448469299386,
- 36.35148095671881
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "shape": [5, 1],
- "data": [
- 8602.796875,
- 7075.7802734375,
- 3083.654052734375,
- 3881.228271484375,
- 8131.462890625
- ],
- "type": "float32"
- }
- },
- {
"name": "matmul float32 2D and 2D tensors",
"inputs": {
"a": {
@@ -750,64 +424,6 @@
}
},
{
- "name": "matmul float32 3D and 1D tensors",
- "inputs": {
- "a": {
- "shape": [2, 3, 4],
- "data": [
- 56.46701250066562,
- 99.86045478237251,
- 71.05493372292567,
- 32.45438455331333,
- 17.310747999630017,
- 2.586275053048559,
- 92.31499166302054,
- 96.9758519231732,
- 26.4721315276526,
- 77.67031776320978,
- 29.278788710989147,
- 82.12142428847062,
- 89.89308471484885,
- 82.49795321217854,
- 64.36866008901963,
- 23.75928513568486,
- 6.67026681065197,
- 81.55583129445503,
- 16.142963270263433,
- 57.45134849716054,
- 26.82641739603182,
- 85.0296980735713,
- 36.198863464757956,
- 89.60960360138286
- ],
- "type": "float32"
- },
- "b": {
- "shape": [4],
- "data": [
- 27.829805134194842,
- 83.14548502311283,
- 34.4128942110155,
- 83.20379675185079
- ],
- "type": "float32"
- }
- },
- "expected": {
- "name": "output",
- "shape": [2, 3, 1],
- "data": [
- 15019.9462890625,
- 11942.376953125,
- 15035.0322265625,
- 13553.013671875,
- 12302.328125,
- 16517.9765625
- ],
- "type": "float32"
- }
- },
- {
"name": "matmul float32 4D and 4D (broadcast) tensors",
"inputs": {
"a": {
diff --git a/testing/web-platform/tests/webnn/resources/test_data/prelu.json b/testing/web-platform/tests/webnn/resources/test_data/prelu.json
index cf79bee7a9..14a7c412dd 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/prelu.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/prelu.json
@@ -1,6 +1,34 @@
{
"tests": [
{
+ "name": "prelu float32 0D scalar",
+ "inputs": {
+ "x": {
+ "shape": [],
+ "data": [
+ -4.794857500523286
+ ],
+ "type": "float32"
+ },
+ "slope": {
+ "shape": [],
+ "data": [
+ 1.1202747481570352
+ ],
+ "type": "float32",
+ "constant": true
+ }
+ },
+ "expected": {
+ "name": "output",
+ "shape": [],
+ "data": [
+ -5.371557712554932
+ ],
+ "type": "float32"
+ }
+ },
+ {
"name": "prelu float32 1D constant tensors",
"inputs": {
"x": {
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_l1.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_l1.json
index 7cbc442511..c3f2b618e9 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_l1.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_l1.json
@@ -676,7 +676,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -725,11 +726,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
108.43173217773438,
315.6007995605469,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_l2.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_l2.json
index 7e59a45d5e..d83eea9dfb 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_l2.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_l2.json
@@ -676,7 +676,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -725,11 +726,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
138.580078125,
166.67791748046875,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum.json
index 250398d227..061e12ad51 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum.json
@@ -596,7 +596,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -645,11 +646,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
5.7273993492126465,
5.64375114440918,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum_exp.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum_exp.json
index b7f39abd52..3577d6aa9e 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum_exp.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_log_sum_exp.json
@@ -676,7 +676,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -725,11 +726,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
8.563796997070312,
5.500619411468506,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_max.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_max.json
index 967aea8bf4..11ed0ed919 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_max.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_max.json
@@ -556,7 +556,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -605,11 +606,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
90.42288208007812,
94.99645233154297,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_mean.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_mean.json
index 5a48952c06..8c26d0a562 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_mean.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_mean.json
@@ -670,7 +670,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"shape": [2, 2],
@@ -718,10 +719,11 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
52.287559509277344,
45.10261917114258,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_min.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_min.json
index 92de75e92a..6c26df5db1 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_min.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_min.json
@@ -556,7 +556,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -605,11 +606,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
-87.9623031616211,
-53.747413635253906,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_product.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_product.json
index 691bf4da9b..d58af30ec1 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_product.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_product.json
@@ -556,7 +556,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -605,11 +606,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
-3638925568,
6523364352,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_sum.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_sum.json
index df47a1a2b2..7027d38b67 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_sum.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_sum.json
@@ -670,7 +670,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"shape": [2, 2],
@@ -718,10 +719,11 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
355.21942138671875,
185.98255920410156,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/reduce_sum_square.json b/testing/web-platform/tests/webnn/resources/test_data/reduce_sum_square.json
index 8ac373e4b3..bd2ebb341a 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/reduce_sum_square.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/reduce_sum_square.json
@@ -676,7 +676,8 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": false
},
"expected": {
"name": "output",
@@ -725,11 +726,12 @@
}
},
"options": {
- "axes": [1, 3]
+ "axes": [1, 3],
+ "keepDimensions": true
},
"expected": {
"name": "output",
- "shape": [1, 2, 2, 1],
+ "shape": [2, 1, 2, 1],
"data": [
12302.474609375,
22772.77734375,
diff --git a/testing/web-platform/tests/webnn/resources/test_data/softplus.json b/testing/web-platform/tests/webnn/resources/test_data/softplus.json
index eb05b7b281..373612d5ca 100644
--- a/testing/web-platform/tests/webnn/resources/test_data/softplus.json
+++ b/testing/web-platform/tests/webnn/resources/test_data/softplus.json
@@ -1,7 +1,7 @@
-{ // softplus: The calculation follows the expression ln(1 + exp(steepness * x)) / steepness.
+{ // softplus: The calculation follows the expression ln(1 + exp(x)).
"tests": [
{
- "name": "softplus float32 1D constant tensor default options", // default options: {steepness: 1}
+ "name": "softplus float32 1D constant tensor",
"inputs": {
"x": {
"shape": [24],
@@ -68,7 +68,7 @@
}
},
{
- "name": "softplus float32 1D tensor default options", // default options: {steepness: 1}
+ "name": "softplus float32 1D tensor",
"inputs": {
"x": {
"shape": [24],
@@ -134,7 +134,7 @@
}
},
{
- "name": "softplus float32 2D tensor default options",
+ "name": "softplus float32 2D tensor",
"inputs": {
"x": {
"shape": [4, 6],
@@ -200,7 +200,7 @@
}
},
{
- "name": "softplus float32 3D tensor default options",
+ "name": "softplus float32 3D tensor",
"inputs": {
"x": {
"shape": [2, 3, 4],
@@ -266,7 +266,7 @@
}
},
{
- "name": "softplus float32 4D tensor default options",
+ "name": "softplus float32 4D tensor",
"inputs": {
"x": {
"shape": [1, 2, 3, 4],
@@ -332,7 +332,7 @@
}
},
{
- "name": "softplus float32 5D tensor default options",
+ "name": "softplus float32 5D tensor",
"inputs": {
"x": {
"shape": [1, 2, 1, 3, 4],
@@ -396,144 +396,6 @@
],
"type": "float32"
}
- },
- {
- "name": "softplus both positive float32 4D tensor and options.steepness",
- "inputs": {
- "x": {
- "shape": [1, 2, 3, 4],
- "data": [
- 5.626614582460632,
- 5.167487045486892,
- 4.0146356193402655,
- 9.48003299650489,
- 9.989938045769978,
- 7.0654412821434125,
- 2.132681001794825,
- 8.187151346059956,
- 5.169976220175496,
- 2.1044997879382077,
- 3.523329401138895,
- 4.136340646976668,
- 1.7418719794295656,
- 5.145224066290767,
- 5.015515309165462,
- 0.045903935074711466,
- 2.9570898924917377,
- 3.959244712098706,
- 5.517926978255181,
- 7.192322388417094,
- 8.76492480390928,
- 1.3734704039113388,
- 8.930669016709397,
- 8.660283210871246
- ],
- "type": "float32"
- }
- },
- "options": {
- "steepness": 1.5104469060897827
- },
- "expected": {
- "name": "output",
- "shape": [1, 2, 3, 4],
- "data": [
- 5.626749515533447,
- 5.167757034301758,
- 4.016173362731934,
- 9.480032920837402,
- 9.989937782287598,
- 7.065456390380859,
- 2.158585548400879,
- 8.187153816223145,
- 5.170245170593262,
- 2.1315081119537354,
- 3.526555061340332,
- 4.137620449066162,
- 1.7879058122634888,
- 5.145503044128418,
- 5.015854835510254,
- 0.4822517931461334,
- 2.964651584625244,
- 3.960916519165039,
- 5.518085956573486,
- 7.19233512878418,
- 8.764925956726074,
- 1.4518096446990967,
- 8.930669784545898,
- 8.660284042358398
- ],
- "type": "float32"
- }
- },
- {
- "name": "softplus both negative float32 4D tensor and options.steepness",
- "inputs": {
- "x": {
- "shape": [1, 2, 3, 4],
- "data": [
- -5.584833476104802,
- -8.188738740810354,
- -8.981280004134987,
- -1.7315531899284586,
- -0.7266543578958906,
- -0.0034800119290885334,
- -7.378389455552106,
- -8.907525953796949,
- -6.0483786568116304,
- -6.328561142365743,
- -2.6006513567654626,
- -5.02005264196455,
- -2.0647716093484414,
- -1.5499896740695434,
- -2.221591675966657,
- -1.1088025713211636,
- -2.7854626064634385,
- -2.105037489961294,
- -5.144277741727352,
- -5.081219916574497,
- -7.499426297617635,
- -2.4305558382286545,
- -8.390520024268328,
- -0.07117499202643174
- ],
- "type": "float32"
- }
- },
- "options": {
- "steepness": -1.2985155767552126
- },
- "expected": {
- "name": "output",
- "shape": [1, 2, 3, 4],
- "data": [
- -5.585379123687744,
- -8.188756942749023,
- -8.981287002563477,
- -1.8088372945785522,
- -0.9798305630683899,
- -0.5355416536331177,
- -7.378442287445068,
- -8.907533645629883,
- -6.048677444458008,
- -6.328769207000732,
- -2.626511573791504,
- -5.021188259124756,
- -2.1157851219177246,
- -1.6465802192687988,
- -2.2634570598602295,
- -1.2725814580917358,
- -2.805877923965454,
- -2.1535322666168213,
- -5.145244121551514,
- -5.082269191741943,
- -7.499471664428711,
- -2.4626762866973877,
- -8.390534400939941,
- -0.5702091455459595
- ],
- "type": "float32"
- }
}
]
} \ No newline at end of file
diff --git a/testing/web-platform/tests/webnn/resources/utils.js b/testing/web-platform/tests/webnn/resources/utils.js
index d1dc0675a7..e5b80ae9f7 100644
--- a/testing/web-platform/tests/webnn/resources/utils.js
+++ b/testing/web-platform/tests/webnn/resources/utils.js
@@ -13,6 +13,15 @@ const TypedArrayDict = {
int64: BigInt64Array,
};
+const kContextOptionsForVariant = {
+ cpu: {
+ deviceType: 'cpu',
+ },
+ gpu: {
+ deviceType: 'gpu',
+ }
+};
+
// The maximum index to validate for the output's expected value.
const kMaximumIndexToValidate = 1000;
@@ -867,17 +876,15 @@ const run = async (operationName, context, builder, resources, buildFunc) => {
checkResults(operationName, namedOutputOperands, result.outputs, resources);
};
+const variant = location.search.substring(1);
+const contextOptions = kContextOptionsForVariant[variant];
+
/**
* Run WebNN operation tests.
* @param {(String[]|String)} operationName - An operation name array or an operation name
* @param {Function} buildFunc - A build function for an operation
- * @param {String} deviceType - The execution device type for this test
*/
-const testWebNNOperation = (operationName, buildFunc, deviceType = 'cpu') => {
- test(() => assert_not_equals(navigator.ml, undefined, "ml property is defined on navigator"));
- if (navigator.ml === undefined) {
- return;
- }
+const testWebNNOperation = (operationName, buildFunc) => {
let operationNameArray;
if (typeof operationName === 'string') {
operationNameArray = [operationName];
@@ -890,7 +897,14 @@ const testWebNNOperation = (operationName, buildFunc, deviceType = 'cpu') => {
operationNameArray.forEach((subOperationName) => {
const tests = loadTests(subOperationName);
promise_setup(async () => {
- context = await navigator.ml.createContext({deviceType});
+ let supported = false;
+ try {
+ context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
builder = new MLGraphBuilder(context);
});
for (const subTest of tests) {
@@ -901,6 +915,65 @@ const testWebNNOperation = (operationName, buildFunc, deviceType = 'cpu') => {
});
};
+/**
+ * WebNN parallel compute operation test.
+ */
+const testParallelCompute = () => {
+ let ml_context;
+ let ml_graph;
+
+ promise_setup(async () => {
+ let supported = false;
+ try {
+ ml_context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
+ // Construct a simple graph: A = B * 2.
+ const builder = new MLGraphBuilder(ml_context);
+ const operandType = {dataType: 'float32', dimensions: [1]};
+ const input_operand = builder.input('input', operandType);
+ const const_operand = builder.constant(operandType, Float32Array.from([2]));
+ const output_operand = builder.mul(input_operand, const_operand);
+ ml_graph = await builder.build({'output': output_operand});
+ });
+
+ promise_test(async () => {
+ const test_inputs = [1, 2, 3, 4];
+
+ const actual_outputs = await Promise.all(test_inputs.map(async (input) => {
+ let inputs = {'input': Float32Array.from([input])};
+ let outputs = {'output': new Float32Array(1)};
+ ({inputs, outputs} = await ml_context.compute(ml_graph, inputs, outputs));
+ return outputs.output[0];
+ }));
+
+ const expected_outputs = [2, 4, 6, 8];
+ assert_array_equals(actual_outputs, expected_outputs);
+ });
+};
+
+/**
+ * Run WebNN conformance tests by specified operation.
+ * @param {(String[]|String)} operationName - An operation name array or an
+ * operation name
+ * @param {Function} buildFunc - A build function for an operation
+ */
+const runWebNNConformanceTests = (operationName, buildFunc) => {
+ // Link to https://github.com/web-platform-tests/wpt/pull/44883
+ // Check navigator.ml is defined before trying to run WebNN tests
+ if (navigator.ml) {
+ testWebNNOperation(operationName, buildFunc);
+ } else {
+ // Show indication to users why the test failed
+ test(
+ () => assert_not_equals(
+ navigator.ml, undefined, 'ml property is defined on navigator'));
+ }
+};
+
// ref: http://stackoverflow.com/questions/32633585/how-do-you-convert-to-half-floats-in-javascript
const toHalf = (value) => {
let floatView = new Float32Array(1);
@@ -970,13 +1043,19 @@ const createBuffer = (context, bufferSize) => {
/**
* WebNN destroy buffer twice test.
* @param {String} testName - The name of the test operation.
- * @param {String} deviceType - The execution device type for this test.
*/
-const testDestroyWebNNBuffer = (testName, deviceType = 'cpu') => {
+const testDestroyWebNNBuffer = (testName) => {
let context;
let buffer;
promise_setup(async () => {
- context = await navigator.ml.createContext({deviceType});
+ let supported = false;
+ try {
+ context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
buffer = createBuffer(context, 4);
});
promise_test(async () => {
@@ -993,12 +1072,19 @@ const testDestroyWebNNBuffer = (testName, deviceType = 'cpu') => {
* WebNN create buffer test.
* @param {String} testName - The name of the test operation.
* @param {Number} bufferSize - Size of the buffer to create, in bytes.
- * @param {String} deviceType - The execution device type for this test.
*/
-const testCreateWebNNBuffer = (testName, bufferSize, deviceType = 'cpu') => {
+const testCreateWebNNBuffer = (testName, bufferSize) => {
let context;
+
promise_setup(async () => {
- context = await navigator.ml.createContext({deviceType});
+ let supported = false;
+ try {
+ context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
});
promise_test(async () => {
createBuffer(context, bufferSize);
@@ -1021,12 +1107,18 @@ const assert_buffer_data_equals = async (ml_context, ml_buffer, expected) => {
/**
* WebNN write buffer operation test.
* @param {String} testName - The name of the test operation.
- * @param {String} deviceType - The execution device type for this test.
*/
-const testWriteWebNNBuffer = (testName, deviceType = 'cpu') => {
+const testWriteWebNNBuffer = (testName) => {
let ml_context;
promise_setup(async () => {
- ml_context = await navigator.ml.createContext({deviceType});
+ let supported = false;
+ try {
+ ml_context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
});
promise_test(async () => {
@@ -1117,7 +1209,7 @@ const testWriteWebNNBuffer = (testName, deviceType = 'cpu') => {
return;
}
- let another_ml_context = await navigator.ml.createContext({deviceType});
+ let another_ml_context = await navigator.ml.createContext(contextOptions);
let another_ml_buffer = createBuffer(another_ml_context, ml_buffer.size);
let input_data = new Uint8Array(ml_buffer.size).fill(0xAA);
@@ -1131,12 +1223,18 @@ const testWriteWebNNBuffer = (testName, deviceType = 'cpu') => {
/**
* WebNN read buffer operation test.
* @param {String} testName - The name of the test operation.
- * @param {String} deviceType - The execution device type for this test.
*/
-const testReadWebNNBuffer = (testName, deviceType = 'cpu') => {
+const testReadWebNNBuffer = (testName) => {
let ml_context;
promise_setup(async () => {
- ml_context = await navigator.ml.createContext({deviceType});
+ let supported = false;
+ try {
+ ml_context = await navigator.ml.createContext(contextOptions);
+ supported = true;
+ } catch (e) {
+ }
+ assert_implements(
+ supported, `Unable to create context for ${variant} variant`);
});
promise_test(async t => {
@@ -1277,7 +1375,7 @@ const testReadWebNNBuffer = (testName, deviceType = 'cpu') => {
return;
}
- let another_ml_context = await navigator.ml.createContext({deviceType});
+ let another_ml_context = await navigator.ml.createContext(contextOptions);
let another_ml_buffer = createBuffer(another_ml_context, ml_buffer.size);
await promise_rejects_js(
diff --git a/testing/web-platform/tests/webnn/validation_tests/clamp.https.any.js b/testing/web-platform/tests/webnn/validation_tests/clamp.https.any.js
index 85cd19a566..126fa90e16 100644
--- a/testing/web-platform/tests/webnn/validation_tests/clamp.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/clamp.https.any.js
@@ -5,3 +5,56 @@
'use strict';
validateInputFromAnotherBuilder('clamp');
+
+validateUnaryOperation(
+ 'clamp', allWebNNOperandDataTypes, /*alsoBuildActivation=*/ true);
+
+promise_test(async t => {
+ const options = {minValue: 1.0, maxValue: 3.0};
+ const input =
+ builder.input('input', {dataType: 'uint32', dimensions: [1, 2, 3]});
+ const output = builder.clamp(input, options);
+ assert_equals(output.dataType(), 'uint32');
+ assert_array_equals(output.shape(), [1, 2, 3]);
+}, '[clamp] Test building an operator with options');
+
+promise_test(async t => {
+ const options = {minValue: 0, maxValue: 0};
+ const input =
+ builder.input('input', {dataType: 'int32', dimensions: [1, 2, 3, 4]});
+ const output = builder.clamp(input, options);
+ assert_equals(output.dataType(), 'int32');
+ assert_array_equals(output.shape(), [1, 2, 3, 4]);
+}, '[clamp] Test building an operator with options.minValue == options.maxValue');
+
+promise_test(async t => {
+ const options = {minValue: 2.0};
+ builder.clamp(options);
+}, '[clamp] Test building an activation with options');
+
+promise_test(async t => {
+ const options = {minValue: 3.0, maxValue: 1.0};
+ const input =
+ builder.input('input', {dataType: 'uint8', dimensions: [1, 2, 3]});
+ assert_throws_js(TypeError, () => builder.clamp(input, options));
+}, '[clamp] Throw if options.minValue > options.maxValue when building an operator');
+
+// To be removed once infinite `minValue` is allowed. Tracked in
+// https://github.com/webmachinelearning/webnn/pull/647.
+promise_test(async t => {
+ const options = {minValue: -Infinity};
+ const input = builder.input('input', {dataType: 'float16', dimensions: []});
+ assert_throws_js(TypeError, () => builder.clamp(input, options));
+}, '[clamp] Throw if options.minValue is -Infinity when building an operator');
+
+promise_test(async t => {
+ const options = {minValue: 2.0, maxValue: -1.0};
+ assert_throws_js(TypeError, () => builder.clamp(options));
+}, '[clamp] Throw if options.minValue > options.maxValue when building an activation');
+
+// To be removed once NaN `maxValue` is allowed. Tracked in
+// https://github.com/webmachinelearning/webnn/pull/647.
+promise_test(async t => {
+ const options = {maxValue: NaN};
+ assert_throws_js(TypeError, () => builder.clamp(options));
+}, '[clamp] Throw if options.maxValue is NaN when building an activation');
diff --git a/testing/web-platform/tests/webnn/validation_tests/conv2d.https.any.js b/testing/web-platform/tests/webnn/validation_tests/conv2d.https.any.js
index ffc9c2c65d..7dac654951 100644
--- a/testing/web-platform/tests/webnn/validation_tests/conv2d.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/conv2d.https.any.js
@@ -55,3 +55,478 @@ multi_builder_test(async (t, builder, otherBuilder) => {
const filter = builder.input('filter', kExampleFilterDescriptor);
assert_throws_js(TypeError, () => builder.conv2d(input, filter, options));
}, '[conv2d] throw if activation option is from another builder');
+
+const tests = [
+ {
+ name: '[conv2d] Test with default options.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with padding.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 5, 5]}
+ },
+ {
+ name: '[conv2d] Test with strides and padding.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with strides and asymmetric padding.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 4, 2]},
+ options: {
+ padding: [1, 2, 0, 1],
+ strides: [2, 2],
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test depthwise conv2d by setting groups to input channels.',
+ input: {dataType: 'float32', dimensions: [1, 4, 2, 2]},
+ filter: {dataType: 'float32', dimensions: [4, 1, 2, 2]},
+ options: {
+ groups: 4,
+ },
+ output: {dataType: 'float32', dimensions: [1, 4, 1, 1]}
+ },
+ {
+ name:
+ '[conv2d] Test depthwise conv2d with groups, inputLayout="nhwc" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 2, 2, 4]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 2, 4]},
+ options: {
+ groups: 4,
+ inputLayout: 'nhwc',
+ filterLayout: 'ihwo',
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 1, 4]}
+ },
+ {
+ name:
+ '[conv2d] Test with dilations, inputLayout="nhwc" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 65, 65, 1]},
+ filter: {dataType: 'float32', dimensions: [1, 3, 3, 1]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'ihwo',
+ dilations: [4, 4],
+ },
+ output: {dataType: 'float32', dimensions: [1, 57, 57, 1]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nchw" and filterLayout="oihw".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'oihw',
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nchw" and filterLayout="hwio".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'hwio',
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nchw" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'ohwi',
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nchw" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'ihwo',
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 3, 3]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nhwc" and filterLayout="oihw".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'oihw',
+ },
+ output: {dataType: 'float32', dimensions: [1, 3, 3, 1]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nhwc" and filterLayout="hwio".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'hwio',
+ },
+ output: {dataType: 'float32', dimensions: [1, 3, 3, 1]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nhwc" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'ohwi',
+ },
+ output: {dataType: 'float32', dimensions: [1, 3, 3, 1]}
+ },
+ {
+ name: '[conv2d] Test with inputLayout="nhwc" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'ihwo',
+ },
+ output: {dataType: 'float32', dimensions: [1, 3, 3, 1]}
+ },
+ {
+ name: '[conv2d] Throw if the input is not a 4-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 2, 1]},
+ },
+ {
+ name: '[conv2d] Throw if the input data type is not floating point.',
+ input: {dataType: 'int32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'int32', dimensions: [1, 1, 2, 2]},
+ },
+ {
+ name: '[conv2d] Throw if the filter is not a 4-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 2]},
+ },
+ {
+ name:
+ '[conv2d] Throw if the filter data type doesn\'t match the input data type.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'int32', dimensions: [1, 1, 2, 2]},
+ },
+ {
+ name: '[conv2d] Throw if the length of padding is not 4.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ padding: [2, 2],
+ },
+ },
+ {
+ name: '[conv2d] Throw if the length of strides is not 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ strides: [2],
+ },
+ },
+ {
+ name: '[conv2d] Throw if strideHeight is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ strides: [0, 1],
+ },
+ },
+ {
+ name: '[conv2d] Throw if strideWidth is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ strides: [1, 0],
+ },
+ },
+ {
+ name: '[conv2d] Throw if the length of dilations is not 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ dilations: [1],
+ },
+ },
+ {
+ name: '[conv2d] Throw if dilationHeight is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ dilations: [0, 1],
+ },
+ },
+ {
+ name: '[conv2d] Throw if dilationWidth is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ dilations: [1, 0],
+ },
+ },
+ {
+ name: '[conv2d] Throw if inputChannels % groups is not 0.',
+ input: {dataType: 'float32', dimensions: [1, 4, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ groups: 3,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels.',
+ input: {dataType: 'float32', dimensions: [1, 4, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ groups: 2,
+ },
+ },
+ {
+ name: '[conv2d] Throw if the groups is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 4, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ groups: 0,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw due to overflow when calculating the effective filter height.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 434983, 2]},
+ options: {
+ dilations: [328442, 1],
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw due to overflow when calculating the effective filter width.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 234545]},
+ options: {
+ dilations: [2, 843452],
+ },
+ },
+ {
+ name: '[conv2d] Throw due to overflow when dilation height is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ dilations: [kMaxUnsignedLong, 1],
+ },
+ },
+ {
+ name: '[conv2d] Throw due to overflow when dilation width is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ dilations: [1, kMaxUnsignedLong],
+ },
+ },
+ {
+ name: '[conv2d] Throw due to underflow when calculating the output height.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 4, 2]},
+ options: {
+ dilations: [4, 1],
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ },
+ },
+ {
+ name: '[conv2d] Throw due to underflow when calculating the output width.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 8]},
+ options: {
+ dilations: [1, 4],
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ },
+ },
+ {
+ name: '[conv2d] Throw if the bias is not a 1-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [1, 2]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="oihw".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="hwio".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 2, 1, 1]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 2, 1]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 2, 1]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if the bias data type doesn\'t match input data type.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ bias: {dataType: 'int32', dimensions: [1]},
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nchw" and filterLayout="oihw".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'oihw',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nchw" and filterLayout="hwio".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'hwio',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nchw" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'ohwi',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nchw" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ inputLayout: 'nchw',
+ filterLayout: 'ihwo',
+ groups: 2,
+ },
+
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nhwc" and filterLayout="oihw".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'oihw',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nhwc" and filterLayout="hwio".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'hwio',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nhwc" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'ohwi',
+ groups: 2,
+ },
+ },
+ {
+ name:
+ '[conv2d] Throw if inputChannels / groups is not equal to filterInputChannels with inputLayout="nhwc" and filterLayout="ihwo".',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ inputLayout: 'nhwc',
+ filterLayout: 'ihwo',
+ groups: 2,
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ const filter = builder.input(
+ 'filter',
+ {dataType: test.filter.dataType, dimensions: test.filter.dimensions});
+
+ if (test.options && test.options.bias) {
+ test.options.bias = builder.input('bias', {
+ dataType: test.options.bias.dataType,
+ dimensions: test.options.bias.dimensions
+ });
+ }
+
+ if (test.output) {
+ const output = builder.conv2d(input, filter, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.conv2d(input, filter, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/convTranspose2d.https.any.js b/testing/web-platform/tests/webnn/validation_tests/convTranspose2d.https.any.js
index c14f445bf3..02822c5274 100644
--- a/testing/web-platform/tests/webnn/validation_tests/convTranspose2d.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/convTranspose2d.https.any.js
@@ -57,3 +57,473 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.convTranspose2d(input, filter, options));
}, '[convTranspose2d] throw if activation option is from another builder');
+
+const tests = [
+ {
+ name: '[convTranspose2d] Test with default options.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ output: {dataType: 'float32', dimensions: [1, 1, 5, 5]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test with inputLayout="nchw" and filterLayout="hwoi".',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ filterLayout: 'hwoi',
+ inputLayout: 'nchw',
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 5, 5]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test with inputLayout="nchw" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ filterLayout: 'ohwi',
+ inputLayout: 'nchw',
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 5, 5]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test with inputLayout="nhwc" and filterLayout="iohw".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 1]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ filterLayout: 'iohw',
+ inputLayout: 'nhwc',
+ },
+ output: {dataType: 'float32', dimensions: [1, 5, 5, 2]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test with inputLayout="nhwc" and filterLayout="hwoi".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 1]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ filterLayout: 'hwoi',
+ inputLayout: 'nhwc',
+ },
+ output: {dataType: 'float32', dimensions: [1, 5, 5, 2]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test with inputLayout="nhwc" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 1]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ filterLayout: 'ohwi',
+ inputLayout: 'nhwc',
+ },
+ output: {dataType: 'float32', dimensions: [1, 5, 5, 2]}
+ },
+ {
+ name: '[convTranspose2d] Test with strides=[3, 2], outputSizes=[10, 8].',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ strides: [3, 2],
+ outputSizes: [10, 8],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 10, 8]}
+ },
+ {
+ name: '[convTranspose2d] Test with strides=[3, 2], outputPadding=[1, 1].',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ strides: [3, 2],
+ outputPadding: [1, 1],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 10, 8]}
+ },
+ {
+ name: '[convTranspose2d] Test with padding=1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 5, 5]}
+ },
+ {
+ name: '[convTranspose2d] Test with padding=1, groups=3.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ groups: 3,
+ },
+ output: {dataType: 'float32', dimensions: [1, 3, 5, 5]}
+ },
+ {
+ name: '[convTranspose2d] Test with strides=2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ strides: [2, 2],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 7, 7]}
+ },
+ {
+ name: '[convTranspose2d] Test with strides=2 and padding=1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ },
+ output: {dataType: 'float32', dimensions: [1, 1, 5, 5]}
+ },
+ {
+ name:
+ '[convTranspose2d] Test when the output sizes are explicitly specified, the output padding values are ignored though padding value is not smaller than stride along the same axis.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ outputPadding: [3, 3],
+ strides: [3, 2],
+ outputSizes: [10, 8],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 10, 8]}
+ },
+ {
+ name: '[convTranspose2d] Throw if the input is not a 4-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input data type is not floating point.',
+ input: {dataType: 'int32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'int32', dimensions: [1, 1, 2, 2]},
+ },
+ {
+ name: '[convTranspose2d] Throw if the filter is not a 4-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 2]},
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the filter data type doesn\'t match the input data type.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'int32', dimensions: [1, 1, 2, 2]},
+ },
+ {
+ name: '[convTranspose2d] Throw if the length of padding is not 4.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ padding: [2, 2],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the length of strides is not 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ strides: [2],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if one stride value is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ strides: [1, 0],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the length of dilations is not 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ dilations: [1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the one dilation value is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ dilations: [1, 0],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="iohw".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ filterLayout: 'iohw',
+ inputLayout: 'nchw',
+ groups: 1,
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="hwoi".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [3, 1, 2, 1]},
+ options: {
+ filterLayout: 'hwoi',
+ inputLayout: 'nchw',
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels with inputLayout="nchw" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ filterLayout: 'ohwi',
+ inputLayout: 'nchw',
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="iohw".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ filterLayout: 'iohw',
+ inputLayout: 'nhwc',
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels inputLayout="nhwc" and filterLayout="hwoi".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ filter: {dataType: 'float32', dimensions: [3, 3, 2, 1]},
+ options: {
+ filterLayout: 'hwoi',
+ inputLayout: 'nhwc',
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the input channels is not equal to the filter input channels with inputLayout="nhwc" and filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 3, 3, 2]},
+ filter: {dataType: 'float32', dimensions: [2, 3, 3, 1]},
+ options: {
+ filterLayout: 'ohwi',
+ inputLayout: 'nhwc',
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if output channels is too large.',
+ input: {dataType: 'float32', dimensions: [1, 4, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [4, 2, 2, 2]},
+ options: {
+ groups: kMaxUnsignedLong,
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the groups is smaller than 1.',
+ input: {dataType: 'float32', dimensions: [1, 4, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ groups: 0,
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to overflow when calculating the effective filter height.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 434983, 2]},
+ options: {
+ dilations: [328443, 1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to overflow when calculating the effective filter width.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 234545]},
+ options: {
+ dilations: [2, 843452],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to overflow when dilation height is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 2]},
+ options: {
+ dilations: [kMaxUnsignedLong, 1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to overflow when dilation width is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 2]},
+ options: {
+ dilations: [1, kMaxUnsignedLong],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the bias is not a 1-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [1, 2]},
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="iohw".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ filterLayout: 'iohw',
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="hwoi".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [2, 2, 1, 1]},
+ options: {
+ filterLayout: 'hwoi',
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the bias shape is not equal to [output_channels] with filterLayout="ohwi".',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 2, 1]},
+ options: {
+ filterLayout: 'ohwi',
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the bias data type doesn\'t match input data type.',
+ input: {dataType: 'float32', dimensions: [1, 1, 5, 5]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ options: {
+ bias: {dataType: 'int32', dimensions: [1]},
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the outputPadding is not a sequence of length 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ strides: [3, 2],
+ outputPadding: [1, 1, 1, 1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the outputPadding is not smaller than stride along the width dimension.',
+ input: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [0, 0, 3, 3],
+ strides: [2, 2],
+ outputPadding: [0, 2],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the outputPadding is not smaller than stride along the height dimension.',
+ input: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [0, 0, 3, 3],
+ strides: [2, 2],
+ outputPadding: [2, 0],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw if the outputSizes is not a sequence of length 2.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 2, 3, 3]},
+ options: {
+ strides: [3, 2],
+ outputSizes: [1, 2, 10, 8],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the padding height is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [4, 4, 0, 0],
+ strides: [2, 2],
+ outputPadding: [1, 0],
+ },
+ },
+ {
+ name: '[convTranspose2d] Throw if the padding width is too large.',
+ input: {dataType: 'float32', dimensions: [1, 1, 2, 2]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [0, 0, 4, 4],
+ strides: [2, 2],
+ outputPadding: [0, 1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to outputSizes values are smaller than the output sizes calculated by not using outputPadding.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ outputSizes: [4, 4],
+ outputPadding: [1, 1],
+ },
+ },
+ {
+ name:
+ '[convTranspose2d] Throw due to outputSizes values are greater than the output sizes calculated by not using outputPadding.',
+ input: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ filter: {dataType: 'float32', dimensions: [1, 1, 3, 3]},
+ options: {
+ padding: [1, 1, 1, 1],
+ strides: [2, 2],
+ outputSizes: [6, 8],
+ outputPadding: [1, 1],
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ const filter = builder.input(
+ 'filter',
+ {dataType: test.filter.dataType, dimensions: test.filter.dimensions});
+
+ if (test.options && test.options.bias) {
+ test.options.bias = builder.input('bias', {
+ dataType: test.options.bias.dataType,
+ dimensions: test.options.bias.dimensions
+ });
+ }
+
+ if (test.output) {
+ const output = builder.convTranspose2d(input, filter, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError,
+ () => builder.convTranspose2d(input, filter, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/elu.https.any.js b/testing/web-platform/tests/webnn/validation_tests/elu.https.any.js
index 6e842cb691..53ec5e54ae 100644
--- a/testing/web-platform/tests/webnn/validation_tests/elu.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/elu.https.any.js
@@ -5,3 +5,43 @@
'use strict';
validateInputFromAnotherBuilder('elu');
+
+validateUnaryOperation(
+ 'elu', floatingPointTypes, /*alsoBuildActivation=*/ true);
+
+promise_test(async t => {
+ const options = {alpha: 1.0};
+ const input =
+ builder.input('input', {dataType: 'float32', dimensions: [1, 2, 3]});
+ const output = builder.elu(input, options);
+ assert_equals(output.dataType(), 'float32');
+ assert_array_equals(output.shape(), [1, 2, 3]);
+}, '[elu] Test building an operator with options');
+
+promise_test(async t => {
+ const options = {alpha: 1.5};
+ builder.elu(options);
+}, '[elu] Test building an activation with options');
+
+promise_test(async t => {
+ const options = {alpha: -1.0};
+ const input =
+ builder.input('input', {dataType: 'float32', dimensions: [1, 2, 3]});
+ assert_throws_js(TypeError, () => builder.elu(input, options));
+}, '[elu] Throw if options.alpha <= 0 when building an operator');
+
+promise_test(async t => {
+ const options = {alpha: NaN};
+ const input = builder.input('input', {dataType: 'float16', dimensions: []});
+ assert_throws_js(TypeError, () => builder.elu(input, options));
+}, '[elu] Throw if options.alpha is NaN when building an operator');
+
+promise_test(async t => {
+ const options = {alpha: 0};
+ assert_throws_js(TypeError, () => builder.elu(options));
+}, '[elu] Throw if options.alpha <= 0 when building an activation');
+
+promise_test(async t => {
+ const options = {alpha: Infinity};
+ assert_throws_js(TypeError, () => builder.elu(options));
+}, '[elu] Throw if options.alpha is Infinity when building an activation');
diff --git a/testing/web-platform/tests/webnn/validation_tests/expand.https.any.js b/testing/web-platform/tests/webnn/validation_tests/expand.https.any.js
index d90ab89468..088d826df7 100644
--- a/testing/web-platform/tests/webnn/validation_tests/expand.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/expand.https.any.js
@@ -12,3 +12,66 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.expand(inputFromOtherBuilder, newShape));
}, '[expand] throw if input is from another builder');
+
+const tests = [
+ {
+ name: '[expand] Test with 0-D scalar to 3-D tensor.',
+ input: {dataType: 'float32', dimensions: []},
+ newShape: [3, 4, 5],
+ output: {dataType: 'float32', dimensions: [3, 4, 5]}
+ },
+ {
+ name: '[expand] Test with the new shapes that are the same as input.',
+ input: {dataType: 'float32', dimensions: [4]},
+ newShape: [4],
+ output: {dataType: 'float32', dimensions: [4]}
+ },
+ {
+ name: '[expand] Test with the new shapes that are broadcastable.',
+ input: {dataType: 'int32', dimensions: [3, 1, 5]},
+ newShape: [3, 4, 5],
+ output: {dataType: 'int32', dimensions: [3, 4, 5]}
+ },
+ {
+ name:
+ '[expand] Test with the new shapes that are broadcastable and the rank of new shapes is larger than input.',
+ input: {dataType: 'int32', dimensions: [2, 5]},
+ newShape: [3, 2, 5],
+ output: {dataType: 'int32', dimensions: [3, 2, 5]}
+ },
+ {
+ name:
+ '[expand] Throw if the input shapes are the same rank but not broadcastable.',
+ input: {dataType: 'uint32', dimensions: [3, 6, 2]},
+ newShape: [4, 3, 5],
+ },
+ {
+ name: '[expand] Throw if the input shapes are not broadcastable.',
+ input: {dataType: 'uint32', dimensions: [5, 4]},
+ newShape: [5],
+ },
+ {
+ name: '[expand] Throw if the number of new shapes is too large.',
+ input: {dataType: 'float32', dimensions: [1, 2, 1, 1]},
+ newShape: [1, 2, kMaxUnsignedLong, kMaxUnsignedLong],
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ const options = {};
+ if (test.axis) {
+ options.axis = test.axis;
+ }
+
+ if (test.output) {
+ const output = builder.expand(input, test.newShape);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(TypeError, () => builder.expand(input, test.newShape));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/gelu.https.any.js b/testing/web-platform/tests/webnn/validation_tests/gelu.https.any.js
new file mode 100644
index 0000000000..c758c61f4c
--- /dev/null
+++ b/testing/web-platform/tests/webnn/validation_tests/gelu.https.any.js
@@ -0,0 +1,10 @@
+// META: title=validation tests for WebNN API gelu operation
+// META: global=window,dedicatedworker
+// META: script=../resources/utils_validation.js
+
+'use strict';
+
+validateInputFromAnotherBuilder('gelu');
+
+validateUnaryOperation(
+ 'gelu', floatingPointTypes, /*alsoBuildActivation=*/ true);
diff --git a/testing/web-platform/tests/webnn/validation_tests/gemm.https.any.js b/testing/web-platform/tests/webnn/validation_tests/gemm.https.any.js
index 77ce6383cc..abe0ba6193 100644
--- a/testing/web-platform/tests/webnn/validation_tests/gemm.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/gemm.https.any.js
@@ -19,3 +19,143 @@ multi_builder_test(async (t, builder, otherBuilder) => {
const b = builder.input('b', kExampleInputDescriptor);
assert_throws_js(TypeError, () => builder.gemm(a, b, options));
}, '[gemm] throw if c option is from another builder');
+
+const tests = [
+ {
+ name: '[gemm] Test building gemm with default option.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ output: {dataType: 'float32', dimensions: [2, 4]}
+ },
+ {
+ name:
+ '[gemm] Throw if inputShapeA[1] is not equal to inputShapeB[0] default options.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [2, 4]},
+ },
+ {
+ name: '[gemm] Test building gemm with aTranspose=true.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [2, 4]},
+ options: {
+ aTranspose: true,
+ },
+ output: {dataType: 'float32', dimensions: [3, 4]}
+ },
+ {
+ name:
+ '[gemm] Throw if inputShapeA[0] is not equal to inputShapeB[0] with aTranspose=true.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ options: {
+ aTranspose: true,
+ },
+ },
+ {
+ name: '[gemm] Test building gemm with bTranspose=true.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [4, 3]},
+ options: {
+ bTranspose: true,
+ },
+ output: {dataType: 'float32', dimensions: [2, 4]}
+ },
+ {
+ name:
+ '[gemm] Throw if inputShapeA[0] is not equal to inputShapeB[0] with bTranspose=true.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ options: {
+ bTranspose: true,
+ },
+ },
+ {
+ name: '[gemm] Throw if the rank of inputA is not 2.',
+ a: {dataType: 'float32', dimensions: [2, 3, 1]},
+ b: {dataType: 'float32', dimensions: [2, 4]},
+ },
+ {
+ name: '[gemm] Throw if the rank of inputB is not 2.',
+ a: {dataType: 'float32', dimensions: [2, 4]},
+ b: {dataType: 'float32', dimensions: [2, 3, 1]},
+ },
+ {
+ name: '[gemm] Throw if data types of two inputs do not match.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float16', dimensions: [3, 4]},
+ },
+ {
+ name: '[gemm] Test building gemm with inputC.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ options: {
+ c: {dataType: 'float32', dimensions: [4]},
+ },
+ output: {dataType: 'float32', dimensions: [2, 4]}
+ },
+ {
+ name: '[gemm] Test building gemm with scalar inputC.',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ options: {
+ c: {dataType: 'float32', dimensions: []},
+ },
+ output: {dataType: 'float32', dimensions: [2, 4]}
+ },
+ {
+ name:
+ '[gemm] Throw if inputShapeC is not unidirectionally broadcastable to the output shape [inputShapeA[0], inputShapeB[1]].',
+ a: {dataType: 'float32', dimensions: [2, 3]},
+ b: {dataType: 'float32', dimensions: [3, 4]},
+ options: {
+ c: {dataType: 'float32', dimensions: [2, 3]},
+ },
+ },
+ {
+ name: '[gemm] Throw if the input data type is not floating point.',
+ a: {dataType: 'int32', dimensions: [2, 3]},
+ b: {dataType: 'int32', dimensions: [3, 4]}
+ },
+ {
+ name:
+ '[gemm] Throw if data type of inputC does not match ones of inputA and inputB.',
+ a: {dataType: 'float32', dimensions: [3, 2]},
+ b: {dataType: 'float32', dimensions: [4, 3]},
+ options: {
+ c: {dataType: 'float16', dimensions: [2, 4]},
+ aTranspose: true,
+ bTranspose: true,
+ },
+ },
+ {
+ name: '[gemm] Throw if the rank of inputC is 3.',
+ a: {dataType: 'float32', dimensions: [3, 2]},
+ b: {dataType: 'float32', dimensions: [4, 3]},
+ options: {
+ c: {dataType: 'float32', dimensions: [2, 3, 4]},
+ aTranspose: true,
+ bTranspose: true,
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const a = builder.input(
+ 'a', {dataType: test.a.dataType, dimensions: test.a.dimensions});
+ const b = builder.input(
+ 'b', {dataType: test.b.dataType, dimensions: test.b.dimensions});
+ if (test.options && test.options.c) {
+ test.options.c = builder.input('c', {
+ dataType: test.options.c.dataType,
+ dimensions: test.options.c.dimensions
+ });
+ }
+ if (test.output) {
+ const output = builder.gemm(a, b, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(TypeError, () => builder.gemm(a, b, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/hardSigmoid.https.any.js b/testing/web-platform/tests/webnn/validation_tests/hardSigmoid.https.any.js
index 01b24dbc7c..2c55d0eb9d 100644
--- a/testing/web-platform/tests/webnn/validation_tests/hardSigmoid.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/hardSigmoid.https.any.js
@@ -5,3 +5,31 @@
'use strict';
validateInputFromAnotherBuilder('hardSigmoid');
+
+validateUnaryOperation(
+ 'hardSigmoid', floatingPointTypes, /*alsoBuildActivation=*/ true);
+
+promise_test(async t => {
+ const options = {alpha: 0.5, beta: 1.0};
+ const input =
+ builder.input('input', {dataType: 'float16', dimensions: [1, 2, 3]});
+ const output = builder.hardSigmoid(input, options);
+ assert_equals(output.dataType(), 'float16');
+ assert_array_equals(output.shape(), [1, 2, 3]);
+}, '[hardSigmoid] Test building an operator with options');
+
+promise_test(async t => {
+ const options = {alpha: 0.2};
+ builder.hardSigmoid(options);
+}, '[hardSigmoid] Test building an activation with options');
+
+promise_test(async t => {
+ const options = {beta: NaN};
+ const input = builder.input('input', {dataType: 'float32', dimensions: []});
+ assert_throws_js(TypeError, () => builder.hardSigmoid(input, options));
+}, '[hardSigmoid] Throw if options.beta is NaN when building an operator');
+
+promise_test(async t => {
+ const options = {alpha: Infinity};
+ assert_throws_js(TypeError, () => builder.hardSigmoid(options));
+}, '[hardSigmoid] Throw if options.alpha is Infinity when building an activation');
diff --git a/testing/web-platform/tests/webnn/validation_tests/instanceNormalization.https.any.js b/testing/web-platform/tests/webnn/validation_tests/instanceNormalization.https.any.js
index bdd338588f..4fc26ec5ae 100644
--- a/testing/web-platform/tests/webnn/validation_tests/instanceNormalization.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/instanceNormalization.https.any.js
@@ -41,3 +41,152 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.instanceNormalization(input, options));
}, '[instanceNormalization] throw if bias option is from another builder');
+
+const tests = [
+ {
+ name: '[instanceNormalization] Test with default options for 4-D input.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]}
+ },
+ {
+ name:
+ '[instanceNormalization] Test with scale, bias and default epsilon value.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2]},
+ bias: {dataType: 'float32', dimensions: [2]},
+ epsilon: 1e-5,
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]}
+ },
+ {
+ name: '[instanceNormalization] Test with a non-default epsilon value.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ epsilon: 1e-4,
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]}
+ },
+ {
+ name: '[instanceNormalization] Test with layout=nhwc.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ layout: 'nhwc',
+ scale: {dataType: 'float32', dimensions: [4]},
+ bias: {dataType: 'float32', dimensions: [4]},
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]}
+ },
+ {
+ name: '[instanceNormalization] Test when the input data type is float16.',
+ input: {dataType: 'float16', dimensions: [1, 2, 3, 4]},
+ output: {dataType: 'float16', dimensions: [1, 2, 3, 4]}
+ },
+ {
+ name: '[instanceNormalization] Throw if the input is not a 4-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5, 2]},
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the input data type is not one of floating point types.',
+ input: {dataType: 'int32', dimensions: [1, 2, 5, 5]},
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the scale data type is not the same as the input data type.',
+ input: {dataType: 'float16', dimensions: [1, 2, 5, 5]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the scale operand is not a 1-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2, 1]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the size of scale operand is not equal to the size of the feature dimension of the input with layout=nhwc.',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ options: {
+ layout: 'nhwc',
+ scale: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the size of scale operand is not equal to the size of the feature dimension of the input with layout=nchw.',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ options: {
+ layout: 'nchw',
+ scale: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the bias data type is not the same as the input data type.',
+ input: {dataType: 'float16', dimensions: [1, 2, 5, 5]},
+ options: {
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the bias operand is not a 1-D tensor.',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2, 1]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the size of bias operand is not equal to the size of the feature dimension of the input with layout=nhwc.',
+ input: {dataType: 'float32', dimensions: [1, 2, 5, 5]},
+ options: {
+ layout: 'nhwc',
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+ {
+ name:
+ '[instanceNormalization] Throw if the size of bias operand is not equal to the size of the feature dimension of the input with layout=nchw.',
+ input: {dataType: 'float32', dimensions: [1, 5, 5, 2]},
+ options: {
+ layout: 'nchw',
+ bias: {dataType: 'float32', dimensions: [2]},
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+
+ if (test.options && test.options.bias) {
+ test.options.bias = builder.input('bias', {
+ dataType: test.options.bias.dataType,
+ dimensions: test.options.bias.dimensions
+ });
+ }
+ if (test.options && test.options.scale) {
+ test.options.scale = builder.input('scale', {
+ dataType: test.options.scale.dataType,
+ dimensions: test.options.scale.dimensions
+ });
+ }
+
+ if (test.output) {
+ const output = builder.instanceNormalization(input, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError,
+ () => builder.instanceNormalization(input, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/layerNormalization.https.any.js b/testing/web-platform/tests/webnn/validation_tests/layerNormalization.https.any.js
index e9e9141aa6..63f9c0dbc5 100644
--- a/testing/web-platform/tests/webnn/validation_tests/layerNormalization.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/layerNormalization.https.any.js
@@ -9,8 +9,6 @@ const kExampleInputDescriptor = {
dimensions: [2, 2]
};
-validateOptionsAxes('layerNormalization', 4);
-
validateInputFromAnotherBuilder('layerNormalization');
multi_builder_test(async (t, builder, otherBuilder) => {
@@ -30,3 +28,181 @@ multi_builder_test(async (t, builder, otherBuilder) => {
const input = builder.input('input', kExampleInputDescriptor);
assert_throws_js(TypeError, () => builder.layerNormalization(input, options));
}, '[layerNormalization] throw if bias option is from another builder');
+
+const tests = [
+ {
+ name: '[layerNormalization] Test with default options for scalar input.',
+ input: {dataType: 'float32', dimensions: []},
+ output: {dataType: 'float32', dimensions: []},
+ },
+ {
+ name: '[layerNormalization] Test when the input data type is float16.',
+ input: {dataType: 'float16', dimensions: []},
+ output: {dataType: 'float16', dimensions: []},
+ },
+ {
+ name: '[layerNormalization] Test with given axes.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ axes: [3],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ },
+ {
+ name: '[layerNormalization] Test with given scale.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2, 3, 4]},
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ },
+ {
+ name: '[layerNormalization] Test with a non-default epsilon value.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ epsilon: 1e-4, // default epsilon=1e-5
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ },
+ {
+ name: '[layerNormalization] Test with given axes, scale and bias.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [3, 4]},
+ bias: {dataType: 'float32', dimensions: [3, 4]},
+ axes: [2, 3],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ },
+ {
+ name: '[layerNormalization] Test with nonconsecutive axes.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4, 5, 6]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [2, 4, 6]},
+ bias: {dataType: 'float32', dimensions: [2, 4, 6]},
+ axes: [1, 3, 5],
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4, 5, 6]},
+ },
+ {
+ name: '[layerNormalization] Test with axes in descending order.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4, 5, 6]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [6, 5, 4, 3, 2]},
+ bias: {dataType: 'float32', dimensions: [6, 5, 4, 3, 2]},
+ axes: [5, 4, 3, 2, 1]
+ },
+ output: {dataType: 'float32', dimensions: [1, 2, 3, 4, 5, 6]},
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the input data type is not one of the floating point types.',
+ input: {dataType: 'uint32', dimensions: [1, 2, 3, 4]},
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the axis is greater than the input rank.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ axes: [1, 2, 4],
+ },
+ },
+ {
+ name: '[layerNormalization] Throw if the axes have duplications.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {axes: [3, 3]},
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the bias data type doesn\'t match input data type',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {dataType: 'float32', dimensions: [3, 4]},
+ bias: {dataType: 'float16', dimensions: [3, 4]},
+ axes: [2, 3],
+ },
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the scale data type doesn\'t match input data type',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {dataType: 'float16', dimensions: [3, 4]},
+ bias: {dataType: 'float32', dimensions: [3, 4]},
+ axes: [2, 3],
+ },
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the bias dimensions doesn\'t match axis dimensions.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ bias: {
+ dataType: 'float32',
+ dimensions: [3, 3, 4]
+ }, // for 4D input, default axes = [1,2,3]
+ },
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the scale dimensions doesn\'t match axis dimensions.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {
+ dataType: 'float32',
+ dimensions: [3, 3, 4]
+ }, // for 4D input, default axes = [1,2,3]
+ },
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the bias rank doesn\'t match axis rank.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ bias: {
+ dataType: 'float32',
+ dimensions: [1, 2, 3, 4]
+ }, // for 4D input, default axes = [1,2,3]
+ },
+ },
+ {
+ name:
+ '[layerNormalization] Throw if the scale rank doesn\'t match axis rank.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {
+ scale: {
+ dataType: 'float32',
+ dimensions: [1, 2, 3, 4]
+ }, // for 4D input, default axes = [1,2,3]
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+
+ if (test.options && test.options.bias) {
+ test.options.bias = builder.input('bias', {
+ dataType: test.options.bias.dataType,
+ dimensions: test.options.bias.dimensions
+ });
+ }
+ if (test.options && test.options.scale) {
+ test.options.scale = builder.input('scale', {
+ dataType: test.options.scale.dataType,
+ dimensions: test.options.scale.dimensions
+ });
+ }
+
+ if (test.output) {
+ const output = builder.layerNormalization(input, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.layerNormalization(input, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/leakyRelu.https.any.js b/testing/web-platform/tests/webnn/validation_tests/leakyRelu.https.any.js
index 6fc19b1f0d..f250b0eda6 100644
--- a/testing/web-platform/tests/webnn/validation_tests/leakyRelu.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/leakyRelu.https.any.js
@@ -5,3 +5,31 @@
'use strict';
validateInputFromAnotherBuilder('leakyRelu');
+
+validateUnaryOperation(
+ 'leakyRelu', floatingPointTypes, /*alsoBuildActivation=*/ true);
+
+promise_test(async t => {
+ const options = {alpha: 0.02};
+ const input =
+ builder.input('input', {dataType: 'float32', dimensions: [1, 2, 3]});
+ const output = builder.leakyRelu(input, options);
+ assert_equals(output.dataType(), 'float32');
+ assert_array_equals(output.shape(), [1, 2, 3]);
+}, '[leakyRelu] Test building an operator with options');
+
+promise_test(async t => {
+ const options = {alpha: 0.03};
+ builder.leakyRelu(options);
+}, '[leakyRelu] Test building an activation with options');
+
+promise_test(async t => {
+ const options = {alpha: Infinity};
+ const input = builder.input('input', {dataType: 'float16', dimensions: []});
+ assert_throws_js(TypeError, () => builder.leakyRelu(input, options));
+}, '[leakyRelu] Throw if options.alpha is Infinity when building an operator');
+
+promise_test(async t => {
+ const options = {alpha: -NaN};
+ assert_throws_js(TypeError, () => builder.leakyRelu(options));
+}, '[leakyRelu] Throw if options.alpha is -NaN when building an activation');
diff --git a/testing/web-platform/tests/webnn/validation_tests/linear.https.any.js b/testing/web-platform/tests/webnn/validation_tests/linear.https.any.js
index 99c1daad3f..6ec0389fc3 100644
--- a/testing/web-platform/tests/webnn/validation_tests/linear.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/linear.https.any.js
@@ -5,3 +5,31 @@
'use strict';
validateInputFromAnotherBuilder('linear');
+
+validateUnaryOperation(
+ 'linear', floatingPointTypes, /*alsoBuildActivation=*/ true);
+
+promise_test(async t => {
+ const options = {alpha: 1.5, beta: 0.3};
+ const input =
+ builder.input('input', {dataType: 'float32', dimensions: [1, 2, 3]});
+ const output = builder.linear(input, options);
+ assert_equals(output.dataType(), 'float32');
+ assert_array_equals(output.shape(), [1, 2, 3]);
+}, '[linear] Test building an operator with options');
+
+promise_test(async t => {
+ const options = {beta: 1.5};
+ builder.linear(options);
+}, '[linear] Test building an activation with options');
+
+promise_test(async t => {
+ const options = {beta: -Infinity};
+ const input = builder.input('input', {dataType: 'float16', dimensions: []});
+ assert_throws_js(TypeError, () => builder.linear(input, options));
+}, '[linear] Throw if options.beta is -Infinity when building an operator');
+
+promise_test(async t => {
+ const options = {alpha: NaN};
+ assert_throws_js(TypeError, () => builder.linear(options));
+}, '[linear] Throw if options.alpha is NaN when building an activation');
diff --git a/testing/web-platform/tests/webnn/validation_tests/matmul.https.any.js b/testing/web-platform/tests/webnn/validation_tests/matmul.https.any.js
index 03616ddb01..8db16242c9 100644
--- a/testing/web-platform/tests/webnn/validation_tests/matmul.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/matmul.https.any.js
@@ -5,3 +5,116 @@
'use strict';
validateTwoInputsFromMultipleBuilders('matmul');
+
+const tests = [
+ {
+ name: '[matmul] Throw if first input\'s rank is less than 2',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2]},
+ b: {dataType: 'float32', dimensions: [2, 2]}
+ }
+ },
+ {
+ name: '[matmul] Throw if second input\'s rank is less than 2',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2, 2]},
+ b: {dataType: 'float32', dimensions: [2]}
+ }
+ },
+ {
+ name: '[matmul] Test with 2-D input and 4-D input',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [1, 4]},
+ b: {dataType: 'float32', dimensions: [2, 2, 4, 2]}
+ },
+ output: {dataType: 'float32', dimensions: [2, 2, 1, 2]}
+ },
+ {
+ name: '[matmul] Test with 2-D input and 2-D input',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [4, 2]},
+ b: {dataType: 'float32', dimensions: [2, 3]}
+ },
+ output: {dataType: 'float32', dimensions: [4, 3]}
+ },
+ {
+ // batchShape is a clone of inputShape with the spatial dimensions
+ // (last 2 items) removed.
+ name:
+ '[matmul] Test with 3-D input and 3-D input of broadcastable batchShape',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2, 3, 4]},
+ b: {dataType: 'float32', dimensions: [1, 4, 1]}
+ },
+ output: {dataType: 'float32', dimensions: [2, 3, 1]}
+ },
+ {
+ // batchShape is a clone of inputShape with the spatial dimensions
+ // (last 2 items) removed.
+ name:
+ '[matmul] Test with 4-D input and 3-D input of broadcastable batchShape',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2, 2, 3, 4]},
+ b: {dataType: 'float32', dimensions: [1, 4, 5]}
+ },
+ output: {dataType: 'float32', dimensions: [2, 2, 3, 5]}
+ },
+ {
+ name: '[matmul] Test with 3-D input and 3-D input',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2, 3, 4]},
+ b: {dataType: 'float32', dimensions: [2, 4, 5]}
+ },
+ output: {dataType: 'float32', dimensions: [2, 3, 5]}
+ },
+ {
+ name: '[matmul] Throw if the input data type is not floating point',
+ inputs: {
+ a: {dataType: 'uint32', dimensions: [2, 3, 4]},
+ b: {dataType: 'uint32', dimensions: [2, 4, 5]}
+ }
+ },
+ {
+ name: '[matmul] Throw if data type of two inputs don\'t match',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [2, 3, 4]},
+ b: {dataType: 'float16', dimensions: [2, 4, 5]}
+ }
+ },
+ {
+ name:
+ '[matmul] Throw if columns of first input\'s shape doesn\'t match the rows of second input\'s shape',
+ inputs: {
+ a: {dataType: 'float32', dimensions: /* [rows, columns] */[2, 3]},
+ b: {dataType: 'float32', dimensions: /* [rows, columns] */[2, 4]}
+ },
+ },
+ {
+ // batchShape is a clone of inputShape with the spatial dimensions
+ // (last 2 items) removed.
+ name: '[matmul] Throw if batchShapes aren\'t bidirectionally broadcastable',
+ inputs: {
+ a: {dataType: 'float32', dimensions: [3, 3, 4]},
+ b: {dataType: 'float32', dimensions: [2, 4, 1]}
+ },
+ },
+];
+
+tests.forEach(test => promise_test(async t => {
+ const inputA = builder.input('a', {
+ dataType: test.inputs.a.dataType,
+ dimensions: test.inputs.a.dimensions
+ });
+ const inputB = builder.input('b', {
+ dataType: test.inputs.b.dataType,
+ dimensions: test.inputs.b.dimensions
+ });
+ if (test.output) {
+ const output = builder.matmul(inputA, inputB);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.matmul(inputA, inputB));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/pad.https.any.js b/testing/web-platform/tests/webnn/validation_tests/pad.https.any.js
index 11c6a8f7ef..cc39bee4c0 100644
--- a/testing/web-platform/tests/webnn/validation_tests/pad.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/pad.https.any.js
@@ -15,3 +15,73 @@ multi_builder_test(async (t, builder, otherBuilder) => {
() =>
builder.pad(inputFromOtherBuilder, beginningPadding, endingPadding));
}, '[pad] throw if input is from another builder');
+
+const tests = [
+ {
+ name:
+ '[pad] Test with default options, beginningPadding=[1, 2] and endingPadding=[1, 2].',
+ input: {dataType: 'float32', dimensions: [2, 3]},
+ beginningPadding: [1, 2],
+ endingPadding: [1, 2],
+ options: {
+ mode: 'constant',
+ value: 0,
+ },
+ output: {dataType: 'float32', dimensions: [4, 7]}
+ },
+ {
+ name: '[pad] Throw if building pad for scalar input.',
+ input: {dataType: 'float32', dimensions: []},
+ beginningPadding: [],
+ endingPadding: [],
+ },
+ {
+ name:
+ '[pad] Throw if the length of beginningPadding is not equal to the input rank.',
+ input: {dataType: 'float32', dimensions: [2, 3]},
+ beginningPadding: [1],
+ endingPadding: [1, 2],
+ options: {
+ mode: 'edge',
+ value: 0,
+ },
+ },
+ {
+ name:
+ '[pad] Throw if the length of endingPadding is not equal to the input rank.',
+ input: {dataType: 'float32', dimensions: [2, 3]},
+ beginningPadding: [1, 0],
+ endingPadding: [1, 2, 0],
+ options: {
+ mode: 'reflection',
+ },
+ },
+ {
+ name: '[pad] Throw if the padding of one dimension is too large.',
+ input: {dataType: 'float32', dimensions: [2, 3]},
+ beginningPadding: [2294967295, 0],
+ endingPadding: [3294967295, 2],
+ options: {
+ mode: 'reflection',
+ },
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ if (test.output) {
+ const output = builder.pad(
+ input, test.beginningPadding, test.endingPadding, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError,
+ () => builder.pad(
+ input, test.beginningPadding, test.endingPadding,
+ test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js b/testing/web-platform/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js
new file mode 100644
index 0000000000..9f6b9fb338
--- /dev/null
+++ b/testing/web-platform/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js
@@ -0,0 +1,94 @@
+// META: title=validation tests for pooling and reduction operators keep dimensions
+// META: global=window,dedicatedworker
+// META: script=../resources/utils.js
+// META: script=../resources/utils_validation.js
+// META: timeout=long
+
+'use strict';
+
+// This is used to reproduce an issue(crbug.com/331841268) of averagePool2d in
+// ResNetV2 50 model.
+// [input]
+// |
+// [globalAveragePool]
+// |
+// [conv2d]
+// |
+// [reshape]
+// |
+// [output]
+promise_test(async t => {
+ const avgPool2dInputShape = [1, 7, 7, 2048];
+ const avgPool2dInput = builder.input(
+ `avgPool2dInput`, {dataType: 'float32', dimensions: avgPool2dInputShape});
+ const avgPool2dOutput =
+ builder.averagePool2d(avgPool2dInput, {layout: 'nhwc'});
+ const conv2dFilterShape = [1001, 1, 1, 2048];
+ const conv2dFilter = builder.constant(
+ {dataType: 'float32', dimensions: conv2dFilterShape},
+ new Float32Array(sizeOfShape(conv2dFilterShape)).fill(1));
+ const conv2dBias = builder.constant(
+ {dataType: 'float32', dimensions: [1001]},
+ new Float32Array(1001).fill(0.01));
+ const conv2dOutput = builder.conv2d(avgPool2dOutput, conv2dFilter, {
+ inputLayout: 'nhwc',
+ filterLayout: 'ohwi',
+ padding: [0, 0, 0, 0],
+ bias: conv2dBias
+ });
+ const newShape = [1, 1001];
+ const reshapeOutput = builder.reshape(conv2dOutput, newShape);
+ assert_equals(reshapeOutput.dataType(), avgPool2dInput.dataType());
+ assert_array_equals(reshapeOutput.shape(), newShape);
+ const graph = await builder.build({reshapeOutput});
+ const result = await context.compute(
+ graph, {
+ 'avgPool2dInput':
+ new Float32Array(sizeOfShape(avgPool2dInputShape)).fill(0.1)
+ },
+ {'reshapeOutput': new Float32Array(1001)});
+}, 'Test global average pool operator\'s output shape for ResNetV2 50 model.');
+
+// This is used to reproduce an issue(crbug.com/331841268) of reduceMean in
+// ResNetV2 50 model.
+// [input]
+// |
+// [reduceMean]
+// |
+// [conv2d]
+// |
+// [reshape]
+// |
+// [output]
+promise_test(async t => {
+ const reduceMeanInputShape = [1, 7, 7, 2048];
+ const reduceMeanInput = builder.input(
+ `reduceMeanInput`,
+ {dataType: 'float32', dimensions: reduceMeanInputShape});
+ const reduceMeanOutput =
+ builder.reduceMean(reduceMeanInput, {axes: [1, 2], keepDimensions: true});
+ const conv2dFilterShape = [1001, 1, 1, 2048];
+ const conv2dFilter = builder.constant(
+ {dataType: 'float32', dimensions: conv2dFilterShape},
+ new Float32Array(sizeOfShape(conv2dFilterShape)).fill(1));
+ const conv2dBias = builder.constant(
+ {dataType: 'float32', dimensions: [1001]},
+ new Float32Array(1001).fill(0.01));
+ const conv2dOutput = builder.conv2d(reduceMeanOutput, conv2dFilter, {
+ inputLayout: 'nhwc',
+ filterLayout: 'ohwi',
+ padding: [0, 0, 0, 0],
+ bias: conv2dBias
+ });
+ const newShape = [1, 1001];
+ const reshapeOutput = builder.reshape(conv2dOutput, newShape);
+ assert_equals(reshapeOutput.dataType(), reduceMeanInput.dataType());
+ assert_array_equals(reshapeOutput.shape(), newShape);
+ const graph = await builder.build({reshapeOutput});
+ const result = await context.compute(
+ graph, {
+ 'reduceMeanInput':
+ new Float32Array(sizeOfShape(reduceMeanInputShape)).fill(0.1)
+ },
+ {'reshapeOutput': new Float32Array(1001)});
+}, 'Test reduceMean operator\'s output shape for ResNetV2 50 model.');
diff --git a/testing/web-platform/tests/webnn/validation_tests/reshape.https.any.js b/testing/web-platform/tests/webnn/validation_tests/reshape.https.any.js
index 435551b716..67491fbc16 100644
--- a/testing/web-platform/tests/webnn/validation_tests/reshape.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/reshape.https.any.js
@@ -12,3 +12,68 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.reshape(inputFromOtherBuilder, newShape));
}, '[reshape] throw if input is from another builder');
+
+const tests = [
+ {
+ name: '[reshape] Test with new shape=[3, 8].',
+ input: {dataType: 'float32', dimensions: [2, 3, 4]},
+ newShape: [3, 8],
+ output: {dataType: 'float32', dimensions: [3, 8]}
+ },
+ {
+ name: '[reshape] Test with new shape=[24], src shape=[2, 3, 4].',
+ input: {dataType: 'float32', dimensions: [2, 3, 4]},
+ newShape: [24],
+ output: {dataType: 'float32', dimensions: [24]}
+ },
+ {
+ name: '[reshape] Test with new shape=[1], src shape=[1].',
+ input: {dataType: 'float32', dimensions: [1]},
+ newShape: [1],
+ output: {dataType: 'float32', dimensions: [1]}
+ },
+ {
+ name: '[reshape] Test reshaping a 1-D 1-element tensor to scalar.',
+ input: {dataType: 'float32', dimensions: [1]},
+ newShape: [],
+ output: {dataType: 'float32', dimensions: []}
+ },
+ {
+ name: '[reshape] Test reshaping a scalar to 1-D 1-element tensor.',
+ input: {dataType: 'float32', dimensions: []},
+ newShape: [1],
+ output: {dataType: 'float32', dimensions: [1]}
+ },
+ {
+ name: '[reshape] Throw if one value of new shape is 0.',
+ input: {dataType: 'float32', dimensions: [2, 4]},
+ newShape: [2, 4, 0],
+ },
+ {
+ name:
+ '[reshape] Throw if the number of elements implied by new shape is not equal to the number of elements in the input tensor when new shape=[].',
+ input: {dataType: 'float32', dimensions: [2, 3, 4]},
+ newShape: [],
+ },
+ {
+ name:
+ '[reshape] Throw if the number of elements implied by new shape is not equal to the number of elements in the input tensor.',
+ input: {dataType: 'float32', dimensions: [2, 3, 4]},
+ newShape: [3, 9],
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ if (test.output) {
+ const output = builder.reshape(input, test.newShape);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.reshape(input, test.newShape));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/slice.https.any.js b/testing/web-platform/tests/webnn/validation_tests/slice.https.any.js
index a45ecd3fcb..de42621610 100644
--- a/testing/web-platform/tests/webnn/validation_tests/slice.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/slice.https.any.js
@@ -13,3 +13,69 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.slice(inputFromOtherBuilder, starts, sizes));
}, '[slice] throw if input is from another builder');
+
+const tests = [
+ {
+ name: '[slice] Test with starts=[0, 1, 2] and sizes=[1, 2, 3].',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [0, 1, 2],
+ sizes: [1, 2, 3],
+ output: {dataType: 'float32', dimensions: [1, 2, 3]}
+ },
+ {
+ name: '[slice] Throw if input is a scalar.',
+ input: {dataType: 'float32', dimensions: []},
+ starts: [0],
+ sizes: [1]
+ },
+ {
+ name:
+ '[slice] Throw if the length of sizes is not equal to the rank of the input tensor.',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [1, 2, 3],
+ sizes: [1, 1]
+ },
+ {
+ name:
+ '[slice] Throw if the length of starts is not equal to the rank of the input tensor.',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [1, 2, 1, 3],
+ sizes: [1, 1, 1]
+ },
+ {
+ name:
+ '[slice] Throw if the starting index is equal to or greater than input size in the same dimension.',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [0, 4, 4],
+ sizes: [1, 1, 1]
+ },
+ {
+ name: '[slice] Throw if the number of elements to slice is equal to 0.',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [1, 2, 3],
+ sizes: [1, 0, 1]
+ },
+ {
+ name:
+ '[slice] Throw if the ending index to slice is greater than input size in the same dimension.',
+ input: {dataType: 'float32', dimensions: [3, 4, 5]},
+ starts: [0, 1, 2],
+ sizes: [3, 4, 1]
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+
+ if (test.output) {
+ const output = builder.slice(input, test.starts, test.sizes);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.slice(input, test.starts, test.sizes));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/softplus.https.any.js b/testing/web-platform/tests/webnn/validation_tests/softplus.https.any.js
index 347dfcd938..3cf91d26ec 100644
--- a/testing/web-platform/tests/webnn/validation_tests/softplus.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/softplus.https.any.js
@@ -5,3 +5,6 @@
'use strict';
validateInputFromAnotherBuilder('softplus');
+
+validateUnaryOperation(
+ 'softplus', floatingPointTypes, /*alsoBuildActivation=*/ true);
diff --git a/testing/web-platform/tests/webnn/validation_tests/split.https.any.js b/testing/web-platform/tests/webnn/validation_tests/split.https.any.js
index 38f3126603..6f7809744a 100644
--- a/testing/web-platform/tests/webnn/validation_tests/split.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/split.https.any.js
@@ -12,3 +12,83 @@ multi_builder_test(async (t, builder, otherBuilder) => {
assert_throws_js(
TypeError, () => builder.split(inputFromOtherBuilder, splits));
}, '[split] throw if input is from another builder');
+
+const tests = [
+ {
+ name: '[split] Test with default options.',
+ input: {dataType: 'float32', dimensions: [2, 6]},
+ splits: [2],
+ outputs: [
+ {dataType: 'float32', dimensions: [2, 6]},
+ ]
+ },
+ {
+ name:
+ '[split] Test with a sequence of unsigned long splits and with options.axis = 1.',
+ input: {dataType: 'float32', dimensions: [2, 6]},
+ splits: [1, 2, 3],
+ options: {axis: 1},
+ outputs: [
+ {dataType: 'float32', dimensions: [2, 1]},
+ {dataType: 'float32', dimensions: [2, 2]},
+ {dataType: 'float32', dimensions: [2, 3]},
+ ]
+ },
+ {
+ name: '[split] Throw if splitting a scalar.',
+ input: {dataType: 'float32', dimensions: []},
+ splits: [2],
+ },
+ {
+ name: '[split] Throw if axis is larger than input rank.',
+ input: {dataType: 'float32', dimensions: [2, 6]},
+ splits: [2],
+ options: {
+ axis: 2,
+ }
+ },
+ {
+ name: '[split] Throw if splits is equal to 0.',
+ input: {dataType: 'float32', dimensions: [2, 6]},
+ splits: [0],
+ options: {
+ axis: 2,
+ }
+ },
+ {
+ name:
+ '[split] Throw if the splits can not evenly divide the dimension size of input along options.axis.',
+ input: {dataType: 'float32', dimensions: [2, 5]},
+ splits: [2],
+ options: {
+ axis: 1,
+ }
+ },
+ {
+ name:
+ '[split] Throw if the sum of splits sizes not equal to the dimension size of input along options.axis.',
+ input: {dataType: 'float32', dimensions: [2, 6]},
+ splits: [2, 2, 3],
+ options: {
+ axis: 1,
+ }
+ },
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ if (test.outputs) {
+ const outputs = builder.split(input, test.splits, test.options);
+ assert_equals(outputs.length, test.outputs.length);
+ for (let i = 0; i < outputs.length; ++i) {
+ assert_equals(outputs[i].dataType(), test.outputs[i].dataType);
+ assert_array_equals(outputs[i].shape(), test.outputs[i].dimensions);
+ }
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.split(input, test.splits, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webnn/validation_tests/transpose.https.any.js b/testing/web-platform/tests/webnn/validation_tests/transpose.https.any.js
index 9ea5a5dcf8..3475a427d7 100644
--- a/testing/web-platform/tests/webnn/validation_tests/transpose.https.any.js
+++ b/testing/web-platform/tests/webnn/validation_tests/transpose.https.any.js
@@ -5,3 +5,54 @@
'use strict';
validateInputFromAnotherBuilder('transpose');
+
+const tests = [
+ {
+ name: '[transpose] Test building transpose with default options.',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ output: {dataType: 'float32', dimensions: [4, 3, 2, 1]}
+ },
+ {
+ name: '[transpose] Test building transpose with permutation=[0, 2, 3, 1].',
+ input: {dataType: 'float32', dimensions: [1, 2, 3, 4]},
+ options: {permutation: [0, 2, 3, 1]},
+ output: {dataType: 'float32', dimensions: [1, 3, 4, 2]}
+ },
+ {
+ name:
+ '[transpose] Throw if permutation\'s size is not the same as input\'s rank.',
+ input: {dataType: 'int32', dimensions: [1, 2, 4]},
+ options: {permutation: [0, 2, 3, 1]},
+ },
+ {
+ name: '[transpose] Throw if two values in permutation are same.',
+ input: {dataType: 'int32', dimensions: [1, 2, 3, 4]},
+ options: {permutation: [0, 2, 3, 2]},
+ },
+ {
+ name:
+ '[transpose] Throw if any value in permutation is not in the range [0,input\'s rank).',
+ input: {dataType: 'int32', dimensions: [1, 2, 3, 4]},
+ options: {permutation: [0, 1, 2, 4]},
+ },
+ {
+ name: '[transpose] Throw if any value in permutation is negative.',
+ input: {dataType: 'int32', dimensions: [1, 2, 3, 4]},
+ options: {permutation: [0, -1, 2, 3]},
+ }
+];
+
+tests.forEach(
+ test => promise_test(async t => {
+ const input = builder.input(
+ 'input',
+ {dataType: test.input.dataType, dimensions: test.input.dimensions});
+ if (test.output) {
+ const output = builder.transpose(input, test.options);
+ assert_equals(output.dataType(), test.output.dataType);
+ assert_array_equals(output.shape(), test.output.dimensions);
+ } else {
+ assert_throws_js(
+ TypeError, () => builder.transpose(input, test.options));
+ }
+ }, test.name));
diff --git a/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html b/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html
index 1e420e6f72..609467b5e3 100644
--- a/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html
+++ b/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedAudioFrame-metadata.https.html
@@ -76,7 +76,7 @@ promise_test(async t => {
const original = result.value;
let newMetadata = original.getMetadata();
newMetadata.rtpTimestamp = newMetadata.rtpTimestamp + 1;
- let newFrame = new RTCEncodedAudioFrame(original, newMetadata);
+ let newFrame = new RTCEncodedAudioFrame(original, {metadata: newMetadata});
assert_not_equals(original.getMetadata().rtpTimestamp, newFrame.getMetadata().rtpTimestamp);
assert_equals(newMetadata.rtpTimestamp, newFrame.getMetadata().rtpTimestamp);
assert_equals(original.getMetadata().absCaptureTime, newFrame.getMetadata().absCaptureTime);
@@ -117,7 +117,7 @@ promise_test(async t => {
const original = result.value;
let newMetadata = original.getMetadata();
newMetadata.synchronizationSource = newMetadata.synchronizationSource + 1;
- assert_throws_dom("InvalidModificationError", () => new RTCEncodedAudioFrame(original, newMetadata));
+ assert_throws_dom("InvalidModificationError", () => new RTCEncodedAudioFrame(original, {metadata: newMetadata}));
resolve();
}
});
diff --git a/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedVideoFrame-metadata.https.html b/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedVideoFrame-metadata.https.html
index a2c684c1f1..77e1ed118f 100644
--- a/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedVideoFrame-metadata.https.html
+++ b/testing/web-platform/tests/webrtc-encoded-transform/tentative/RTCEncodedVideoFrame-metadata.https.html
@@ -80,29 +80,29 @@ promise_test(async t => {
promise_test(async t => {
const senderReader = await setupLoopbackWithCodecAndGetReader(t, 'VP8');
const result = await senderReader.read();
- const metadata = result.value.getMetadata();
- metadata.rtpTimestamp = 100;
- const newFrame = new RTCEncodedVideoFrame(result.value, metadata);
+ const frame_metadata = result.value.getMetadata();
+ frame_metadata.rtpTimestamp = 100;
+ const newFrame = new RTCEncodedVideoFrame(result.value, {metadata: frame_metadata});
const newMetadata = newFrame.getMetadata();
// Encoding-related metadata.
- assert_equals(newMetadata.frameId, metadata.frameId, 'frameId');
- assert_array_equals(newMetadata.dependencies, metadata.dependencies,
+ assert_equals(newMetadata.frameId, frame_metadata.frameId, 'frameId');
+ assert_array_equals(newMetadata.dependencies, frame_metadata.dependencies,
'dependencies');
- assert_equals(newMetadata.width, metadata.width, 'width');
- assert_equals(newMetadata.height, metadata.height, 'height');
- assert_equals(newMetadata.spatialIndex, metadata.spatialIndex,
+ assert_equals(newMetadata.width, frame_metadata.width, 'width');
+ assert_equals(newMetadata.height, frame_metadata.height, 'height');
+ assert_equals(newMetadata.spatialIndex, frame_metadata.spatialIndex,
'spatialIndex');
- assert_equals(newMetadata.temporalIndex, metadata.temporalIndex,
+ assert_equals(newMetadata.temporalIndex, frame_metadata.temporalIndex,
'temporalIndex');
// RTP-related metadata.
assert_equals(newMetadata.synchronizationSource,
- metadata.synchronizationSource, 'synchronizationSource');
+ frame_metadata.synchronizationSource, 'synchronizationSource');
assert_array_equals(newMetadata.contributingSources,
- metadata.contributingSources, 'contributingSources');
- assert_equals(newMetadata.payloadType, metadata.payloadType, 'payloadType');
- assert_equals(newMetadata.rtpTimestamp, metadata.rtpTimestamp, 'rtpTimestamp');
+ frame_metadata.contributingSources, 'contributingSources');
+ assert_equals(newMetadata.payloadType, frame_metadata.payloadType, 'payloadType');
+ assert_equals(newMetadata.rtpTimestamp, frame_metadata.rtpTimestamp, 'rtpTimestamp');
assert_not_equals(newMetadata.rtpTimestamp, result.value.getMetadata().rtpTimestamp, 'rtpTimestamp');
}, "[VP8] constructor with metadata carries over codec-specific properties");
diff --git a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html b/testing/web-platform/tests/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html
index d728ec5a9c..d728ec5a9c 100644
--- a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html
+++ b/testing/web-platform/tests/webrtc/RTCRtpReceiver-audio-jitterBufferTarget-stats.https.html
diff --git a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget-stats-helper.js b/testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget-stats-helper.js
index 31d80926d3..31d80926d3 100644
--- a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget-stats-helper.js
+++ b/testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget-stats-helper.js
diff --git a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget.html b/testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget.html
index 448162d3a2..448162d3a2 100644
--- a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-jitterBufferTarget.html
+++ b/testing/web-platform/tests/webrtc/RTCRtpReceiver-jitterBufferTarget.html
diff --git a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html b/testing/web-platform/tests/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html
index 022dbe70c5..022dbe70c5 100644
--- a/testing/web-platform/tests/webrtc-extensions/RTCRtpReceiver-video-jitterBufferTarget-stats.html
+++ b/testing/web-platform/tests/webrtc/RTCRtpReceiver-video-jitterBufferTarget-stats.html
diff --git a/testing/web-platform/tests/webrtc/WEB_FEATURES.yml b/testing/web-platform/tests/webrtc/WEB_FEATURES.yml
new file mode 100644
index 0000000000..117b04f81f
--- /dev/null
+++ b/testing/web-platform/tests/webrtc/WEB_FEATURES.yml
@@ -0,0 +1,4 @@
+features:
+- name: webrtc-sctp
+ files:
+ - RTCSctpTransport-*
diff --git a/testing/web-platform/tests/webrtc/back-forward-cache-with-open-webrtc-connection.https.window.js b/testing/web-platform/tests/webrtc/back-forward-cache-with-open-webrtc-connection.https.window.js
index fe41a9cfd5..de797b3f2c 100644
--- a/testing/web-platform/tests/webrtc/back-forward-cache-with-open-webrtc-connection.https.window.js
+++ b/testing/web-platform/tests/webrtc/back-forward-cache-with-open-webrtc-connection.https.window.js
@@ -4,6 +4,7 @@
// META: script=/html/browsers/browsing-the-web/back-forward-cache/resources/rc-helper.js
// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js
// META: script=resources/webrtc-test-helpers.sub.js
+// META: timeout=long
'use strict';
diff --git a/testing/web-platform/tests/websockets/Send-binary-arraybufferview-float16.any.js b/testing/web-platform/tests/websockets/Send-binary-arraybufferview-float16.any.js
new file mode 100644
index 0000000000..7251ebfed2
--- /dev/null
+++ b/testing/web-platform/tests/websockets/Send-binary-arraybufferview-float16.any.js
@@ -0,0 +1,40 @@
+// META: script=constants.sub.js
+// META: variant=?default
+// META: variant=?wpt_flags=h2
+// META: variant=?wss
+
+var test = async_test("Send binary data on a WebSocket - ArrayBufferView - Float16Array - Connection should be closed");
+
+var data = "";
+var datasize = 4;
+var view;
+var wsocket = CreateWebSocket(false, false);
+var isOpenCalled = false;
+var isMessageCalled = false;
+
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Float16Array(data);
+ for (var i = 0; i < 2; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+}), true);
+
+wsocket.addEventListener('message', test.step_func(function(evt) {
+ isMessageCalled = true;
+ var resultView = new Float16Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+}), true);
+
+wsocket.addEventListener('close', test.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_true(isMessageCalled, "message should be received")
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ test.done();
+}), true);
diff --git a/testing/web-platform/tests/websockets/handlers/basic_auth_wsh.py b/testing/web-platform/tests/websockets/handlers/basic_auth_wsh.py
index 72e920a1d8..84f42711b2 100755
--- a/testing/web-platform/tests/websockets/handlers/basic_auth_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/basic_auth_wsh.py
@@ -4,7 +4,7 @@
'foo' and password is 'bar'."""
-from mod_pywebsocket.handshake import AbortedByUserException
+from pywebsocket3.handshake import AbortedByUserException
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/delayed-passive-close_wsh.py b/testing/web-platform/tests/websockets/handlers/delayed-passive-close_wsh.py
index 7d55b88ecc..5da09fd059 100755
--- a/testing/web-platform/tests/websockets/handlers/delayed-passive-close_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/delayed-passive-close_wsh.py
@@ -1,5 +1,5 @@
#!/usr/bin/python
-from mod_pywebsocket import common
+from pywebsocket3 import common
import time
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/echo-cookie_wsh.py b/testing/web-platform/tests/websockets/handlers/echo-cookie_wsh.py
index 98620b6552..746eafd2cd 100755
--- a/testing/web-platform/tests/websockets/handlers/echo-cookie_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/echo-cookie_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
request.ws_cookie = request.headers_in.get('cookie')
diff --git a/testing/web-platform/tests/websockets/handlers/echo-query_v13_wsh.py b/testing/web-platform/tests/websockets/handlers/echo-query_v13_wsh.py
index d670e6e660..7fb4cfe593 100755
--- a/testing/web-platform/tests/websockets/handlers/echo-query_v13_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/echo-query_v13_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
pass
diff --git a/testing/web-platform/tests/websockets/handlers/echo-query_wsh.py b/testing/web-platform/tests/websockets/handlers/echo-query_wsh.py
index 3921913495..88696175d2 100755
--- a/testing/web-platform/tests/websockets/handlers/echo-query_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/echo-query_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
pass # Always accept.
diff --git a/testing/web-platform/tests/websockets/handlers/echo_raw_wsh.py b/testing/web-platform/tests/websockets/handlers/echo_raw_wsh.py
index e1fc26608f..5b434cf266 100755
--- a/testing/web-platform/tests/websockets/handlers/echo_raw_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/echo_raw_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/echo_wsh.py b/testing/web-platform/tests/websockets/handlers/echo_wsh.py
index 7367b70af1..35a0a6f6ea 100755
--- a/testing/web-platform/tests/websockets/handlers/echo_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/echo_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import common
+from pywebsocket3 import common
_GOODBYE_MESSAGE = u'Goodbye'
diff --git a/testing/web-platform/tests/websockets/handlers/empty-message_wsh.py b/testing/web-platform/tests/websockets/handlers/empty-message_wsh.py
index 0eb107f0b1..f791ee1842 100755
--- a/testing/web-platform/tests/websockets/handlers/empty-message_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/empty-message_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
pass # Always accept.
diff --git a/testing/web-platform/tests/websockets/handlers/msg_channel_wsh.py b/testing/web-platform/tests/websockets/handlers/msg_channel_wsh.py
index 7a66646f2b..a45dd99164 100644
--- a/testing/web-platform/tests/websockets/handlers/msg_channel_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/msg_channel_wsh.py
@@ -6,7 +6,7 @@ import threading
import traceback
from queue import Empty
-from mod_pywebsocket import stream, msgutil
+from pywebsocket3 import stream, msgutil
from wptserve import stash as stashmod
logger = logging.getLogger()
diff --git a/testing/web-platform/tests/websockets/handlers/origin_wsh.py b/testing/web-platform/tests/websockets/handlers/origin_wsh.py
index ce5f3a7f6a..b833db6381 100755
--- a/testing/web-platform/tests/websockets/handlers/origin_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/origin_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/passive-close-abort_wsh.py b/testing/web-platform/tests/websockets/handlers/passive-close-abort_wsh.py
index ac3f67c8db..6f8a3d1bf1 100644
--- a/testing/web-platform/tests/websockets/handlers/passive-close-abort_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/passive-close-abort_wsh.py
@@ -7,7 +7,7 @@ Wait for a Close frame from the client and then close the connection without
sending a Close frame in return.
"""
-from mod_pywebsocket.handshake import AbortedByUserException
+from pywebsocket3.handshake import AbortedByUserException
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/protocol_array_wsh.py b/testing/web-platform/tests/websockets/handlers/protocol_array_wsh.py
index be24ee01fd..d8e1229cdb 100755
--- a/testing/web-platform/tests/websockets/handlers/protocol_array_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/protocol_array_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
line = request.headers_in.get('sec-websocket-protocol')
diff --git a/testing/web-platform/tests/websockets/handlers/protocol_wsh.py b/testing/web-platform/tests/websockets/handlers/protocol_wsh.py
index 10bdf33205..3a6aeb400b 100755
--- a/testing/web-platform/tests/websockets/handlers/protocol_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/protocol_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
request.ws_protocol = request.headers_in.get('sec-websocket-protocol')
diff --git a/testing/web-platform/tests/websockets/handlers/referrer_wsh.py b/testing/web-platform/tests/websockets/handlers/referrer_wsh.py
index 9df652dc3c..2d183d5586 100755
--- a/testing/web-platform/tests/websockets/handlers/referrer_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/referrer_wsh.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
pass
diff --git a/testing/web-platform/tests/websockets/handlers/remote-close_wsh.py b/testing/web-platform/tests/websockets/handlers/remote-close_wsh.py
index aadd99ea95..c94870ad87 100644
--- a/testing/web-platform/tests/websockets/handlers/remote-close_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/remote-close_wsh.py
@@ -20,7 +20,7 @@ Example: /remote-close?code=1000&reason=Done
import urllib
-from mod_pywebsocket.handshake import AbortedByUserException
+from pywebsocket3.handshake import AbortedByUserException
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/simple_handshake_wsh.py b/testing/web-platform/tests/websockets/handlers/simple_handshake_wsh.py
index ad466877fe..23893c95f1 100755
--- a/testing/web-platform/tests/websockets/handlers/simple_handshake_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/simple_handshake_wsh.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
-from mod_pywebsocket import common, stream
-from mod_pywebsocket.handshake import AbortedByUserException, hybi
+from pywebsocket3 import common, stream
+from pywebsocket3.handshake import AbortedByUserException, hybi
def web_socket_do_extra_handshake(request):
diff --git a/testing/web-platform/tests/websockets/handlers/sleep_10_v13_wsh.py b/testing/web-platform/tests/websockets/handlers/sleep_10_v13_wsh.py
index bdef2f2afd..4faa42aa45 100755
--- a/testing/web-platform/tests/websockets/handlers/sleep_10_v13_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/sleep_10_v13_wsh.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
import sys, urllib, time
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
def web_socket_do_extra_handshake(request):
time.sleep(10)
diff --git a/testing/web-platform/tests/websockets/handlers/stash_responder_blocking_wsh.py b/testing/web-platform/tests/websockets/handlers/stash_responder_blocking_wsh.py
index 10ecdfe0da..968156868a 100755
--- a/testing/web-platform/tests/websockets/handlers/stash_responder_blocking_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/stash_responder_blocking_wsh.py
@@ -2,7 +2,7 @@
import json
import threading
import wptserve.stash
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
address, authkey = wptserve.stash.load_env_config()
path = "/stash_responder_blocking"
diff --git a/testing/web-platform/tests/websockets/handlers/stash_responder_wsh.py b/testing/web-platform/tests/websockets/handlers/stash_responder_wsh.py
index d18ad3bc96..b401997480 100755
--- a/testing/web-platform/tests/websockets/handlers/stash_responder_wsh.py
+++ b/testing/web-platform/tests/websockets/handlers/stash_responder_wsh.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
import json
import urllib
-from mod_pywebsocket import msgutil
+from pywebsocket3 import msgutil
from wptserve import stash
address, authkey = stash.load_env_config()
diff --git a/testing/web-platform/tests/webvtt/parsing/cue-text-parsing/tests/tree-building.html b/testing/web-platform/tests/webvtt/parsing/cue-text-parsing/tests/tree-building.html
index 6cd617dece..06bc8b9d62 100644
--- a/testing/web-platform/tests/webvtt/parsing/cue-text-parsing/tests/tree-building.html
+++ b/testing/web-platform/tests/webvtt/parsing/cue-text-parsing/tests/tree-building.html
@@ -18,6 +18,7 @@ runTests([
{name:'325c1e590e74f1ff33ca5b4838c04cf6b6dd71ba', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C/rt%3E%3C/ruby%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%20%20%20%20%20%20%22test%22'},
{name:'92847ed2694c9639ba96f4cc61e2215362a74904', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C/ruby%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%20%20%20%20%20%20%22test%22'},
{name:'c0da62d1c8716ca544c96799f06ac7e4664500fb', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C/rt%3E%3C/ruby%3E%3C/b%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%20%20%20%20%22test%22'},
-{name:'b85bd616672eba0591718182ef32e3307d223bb0', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C/rt%3E%3C/b%3E%3C/ruby%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%22test%22'}
+{name:'b85bd616672eba0591718182ef32e3307d223bb0', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C/rt%3E%3C/b%3E%3C/ruby%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%22test%22'},
+{name:'421c76d77563afa1914846b010bd164f395bd34c', input:'%3Cruby%3Etest%3Crt%3E%3Cb%3Etest%3C%2Frt%3E%3C%2Fb%3Etest%3C%2Fruby%3Etest', expected:'%23document-fragment%0A%7C%20%3Cruby%3E%0A%7C%20%20%20%22test%22%0A%7C%20%20%20%3Crt%3E%0A%7C%20%20%20%20%20%3Cb%3E%0A%7C%20%20%20%20%20%20%20%22test%22%0A%7C%20%20%20%20%20%22test%22%0A%7C%20%22test%22'}
]);
</script>
diff --git a/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html b/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html
new file mode 100644
index 0000000000..887d95f3df
--- /dev/null
+++ b/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<title>Test that creation of a "new Worker()" will occur in parallel to the main JS thread performing other computation, and can be joined with.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+promise_test(t => {
+ return new Promise(resolve => {
+ let worker = new Worker("support/Worker-creation-happens-in-parallel.js");
+ let sab = new Uint8Array(new SharedArrayBuffer(16));
+ window.sab = sab;
+ worker.postMessage(sab);
+ let end = performance.now() + 10*1000;
+ while(sab[0] != 1 && performance.now() < end) /*wait to join with the result*/;
+ assert_true(sab[0] == 1);
+ resolve();
+ });
+}, 'Tests that creation of a "new Worker()" will occur in parallel');
+</script>
diff --git a/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html.headers b/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html.headers
new file mode 100644
index 0000000000..4b06ac7cc6
--- /dev/null
+++ b/testing/web-platform/tests/workers/Worker-creation-happens-in-parallel.https.html.headers
@@ -0,0 +1,2 @@
+Cross-Origin-Opener-Policy:same-origin
+Cross-Origin-Embedder-Policy:require-corp
diff --git a/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html b/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html
new file mode 100644
index 0000000000..3b8683f79d
--- /dev/null
+++ b/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<title>Test that calling "worker.postMessage()" will occur truly in parallel to the main JS thread performing other computation.</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+promise_test(t => {
+ return new Promise(resolve => {
+ let worker = new Worker("support/Worker-postMessage-happens-in-parallel.js");
+ worker.postMessage('init');
+ worker.onmessage = () => {
+ let sab = new Uint8Array(new SharedArrayBuffer(16));
+ worker.postMessage(sab);
+ let end = performance.now() + 30*1000;
+ while(sab[0] != 1 && performance.now() < end) /*wait to join with the result*/;
+ assert_true(sab[0] == 1);
+ resolve();
+ };
+ });
+}, 'Tests that calling "worker.postMessage()" will occur truly in parallel to the main JS thread');
+</script>
diff --git a/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html.headers b/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html.headers
new file mode 100644
index 0000000000..4b06ac7cc6
--- /dev/null
+++ b/testing/web-platform/tests/workers/Worker-postMessage-happens-in-parallel.https.html.headers
@@ -0,0 +1,2 @@
+Cross-Origin-Opener-Policy:same-origin
+Cross-Origin-Embedder-Policy:require-corp
diff --git a/testing/web-platform/tests/workers/modules/WEB_FEATURES.yml b/testing/web-platform/tests/workers/modules/WEB_FEATURES.yml
new file mode 100644
index 0000000000..ab73efc0d0
--- /dev/null
+++ b/testing/web-platform/tests/workers/modules/WEB_FEATURES.yml
@@ -0,0 +1,7 @@
+features:
+- name: js-modules-workers
+ files:
+ - dedicated-worker-*
+- name: js-modules-shared-workers
+ files:
+ - shared-worker-*
diff --git a/testing/web-platform/tests/workers/semantics/interface-objects/001.worker.js b/testing/web-platform/tests/workers/semantics/interface-objects/001.worker.js
index 873e8701bb..a95da5638f 100644
--- a/testing/web-platform/tests/workers/semantics/interface-objects/001.worker.js
+++ b/testing/web-platform/tests/workers/semantics/interface-objects/001.worker.js
@@ -30,6 +30,7 @@ var expected = [
"Uint16Array",
"Int32Array",
"Uint32Array",
+ "Float16Array",
"Float32Array",
"Float64Array",
"DataView",
diff --git a/testing/web-platform/tests/workers/semantics/interface-objects/003.any.js b/testing/web-platform/tests/workers/semantics/interface-objects/003.any.js
index 974756c508..9dcc024ab7 100644
--- a/testing/web-platform/tests/workers/semantics/interface-objects/003.any.js
+++ b/testing/web-platform/tests/workers/semantics/interface-objects/003.any.js
@@ -30,6 +30,7 @@ var expected = [
"Uint16Array",
"Int32Array",
"Uint32Array",
+ "Float16Array",
"Float32Array",
"Float64Array",
"DataView",
diff --git a/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js b/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js
new file mode 100644
index 0000000000..1e68302a0f
--- /dev/null
+++ b/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js
@@ -0,0 +1,3 @@
+onmessage = (e) => {
+ e.data[0] = 1;
+}
diff --git a/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js.headers b/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js.headers
new file mode 100644
index 0000000000..8249c49c34
--- /dev/null
+++ b/testing/web-platform/tests/workers/support/Worker-creation-happens-in-parallel.js.headers
@@ -0,0 +1 @@
+Cross-Origin-Embedder-Policy:require-corp
diff --git a/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js b/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js
new file mode 100644
index 0000000000..48b4c34fe3
--- /dev/null
+++ b/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js
@@ -0,0 +1,7 @@
+onmessage = (e) => {
+ if (e.data == 'init') {
+ postMessage(0);
+ } else {
+ e.data[0] = 1;
+ }
+}
diff --git a/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js.headers b/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js.headers
new file mode 100644
index 0000000000..8249c49c34
--- /dev/null
+++ b/testing/web-platform/tests/workers/support/Worker-postMessage-happens-in-parallel.js.headers
@@ -0,0 +1 @@
+Cross-Origin-Embedder-Policy:require-corp
diff --git a/testing/web-platform/tests/wpt b/testing/web-platform/tests/wpt
index e0abacd85d..5712156129 100755
--- a/testing/web-platform/tests/wpt
+++ b/testing/web-platform/tests/wpt
@@ -2,8 +2,8 @@
if __name__ == "__main__":
import sys
- if sys.version_info < (3, 7):
- sys.stderr.write("wpt requires Python 3.7 or higher\n")
+ if sys.version_info < (3, 8):
+ sys.stderr.write("wpt requires Python 3.8 or higher\n")
sys.exit(1)
from tools.wpt import wpt
diff --git a/testing/web-platform/tests/x-frame-options/invalid.html b/testing/web-platform/tests/x-frame-options/invalid.html
index 26b2905e4d..6c0ed90f73 100644
--- a/testing/web-platform/tests/x-frame-options/invalid.html
+++ b/testing/web-platform/tests/x-frame-options/invalid.html
@@ -40,6 +40,12 @@ xfo_simple_tests({
});
xfo_simple_tests({
+ headerValue: `DE NY`,
+ sameOriginAllowed: true,
+ crossOriginAllowed: true
+});
+
+xfo_simple_tests({
headerValue: `"SAMEORIGIN"`,
sameOriginAllowed: true,
crossOriginAllowed: true
diff --git a/testing/web-platform/tests/xhr/send-data-sharedarraybuffer.any.js b/testing/web-platform/tests/xhr/send-data-sharedarraybuffer.any.js
index 79774c3d30..a87160c56b 100644
--- a/testing/web-platform/tests/xhr/send-data-sharedarraybuffer.any.js
+++ b/testing/web-platform/tests/xhr/send-data-sharedarraybuffer.any.js
@@ -13,7 +13,7 @@ test(() => {
["Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Uint16Array",
"Int32Array", "Uint32Array", "BigInt64Array", "BigUint64Array",
- "Float32Array", "Float64Array", "DataView"].forEach((type) => {
+ "Float16Array", "Float32Array", "Float64Array", "DataView"].forEach((type) => {
test(() => {
const xhr = new XMLHttpRequest();
// See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
diff --git a/testing/webdriver/src/actions.rs b/testing/webdriver/src/actions.rs
index 31c0c0375e..36cc1875df 100644
--- a/testing/webdriver/src/actions.rs
+++ b/testing/webdriver/src/actions.rs
@@ -111,8 +111,6 @@ pub enum PointerType {
Touch,
}
-
-
#[derive(Debug, Default, PartialEq, Serialize, Deserialize)]
pub struct PointerActionParameters {
#[serde(rename = "pointerType")]
@@ -339,8 +337,6 @@ pub enum PointerOrigin {
Viewport,
}
-
-
// TODO: The custom deserializer can be removed once the support of the legacy
// ELEMENT key has been removed from Selenium bindings
// See: https://github.com/SeleniumHQ/selenium/issues/6393
diff --git a/testing/xpcshell/head.js b/testing/xpcshell/head.js
index b12bcbceb7..21f8a56384 100644
--- a/testing/xpcshell/head.js
+++ b/testing/xpcshell/head.js
@@ -413,7 +413,7 @@ function _setupDevToolsServer(breakpointFiles, callback) {
"xpcshell environment.\n" +
"This can usually be resolved by adding:\n" +
" firefox-appdir = browser\n" +
- "to the xpcshell.ini manifest.\n" +
+ "to the xpcshell.toml manifest.\n" +
"It is possible for this to alter test behevior by " +
"triggering additional browser code to run, so check " +
"test behavior after making this change.\n" +
diff --git a/testing/xpcshell/runxpcshelltests.py b/testing/xpcshell/runxpcshelltests.py
index 2f1d26d715..4543309782 100755
--- a/testing/xpcshell/runxpcshelltests.py
+++ b/testing/xpcshell/runxpcshelltests.py
@@ -1573,9 +1573,8 @@ class XPCShellTests(object):
self.mozInfo["condprof"] = options.get("conditionedProfile", False)
- self.mozInfo["msix"] = options.get(
- "app_binary"
- ) is not None and "WindowsApps" in options.get("app_binary", "")
+ if options.get("variant", ""):
+ self.mozInfo["msix"] = options["variant"] == "msix"
self.mozInfo["is_ubuntu"] = "Ubuntu" in platform.version()
@@ -1786,6 +1785,14 @@ class XPCShellTests(object):
self.crashAsPass = options.get("crashAsPass")
self.conditionedProfile = options.get("conditionedProfile")
self.repeat = options.get("repeat", 0)
+ self.variant = options.get("variant", "")
+
+ if self.variant == "msix":
+ self.appPath = options.get("msixAppPath")
+ self.xrePath = options.get("msixXrePath")
+ self.app_binary = options.get("msix_app_binary")
+ self.threadCount = 2
+ self.xpcshell = None
self.testCount = 0
self.passCount = 0
diff --git a/testing/xpcshell/xpcshellcommandline.py b/testing/xpcshell/xpcshellcommandline.py
index ba8bdf3eab..5b70dba3fd 100644
--- a/testing/xpcshell/xpcshellcommandline.py
+++ b/testing/xpcshell/xpcshellcommandline.py
@@ -23,6 +23,20 @@ def add_common_arguments(parser):
help="application directory (as opposed to XRE directory)",
)
parser.add_argument(
+ "--msix-app-path",
+ type=str,
+ dest="msixAppPath",
+ default=None,
+ help="application directory for msix mode (as opposed to XRE directory)",
+ )
+ parser.add_argument(
+ "--msix-app-binary",
+ type=str,
+ dest="msix_app_binary",
+ default=None,
+ help="path to application binary for msix mode (eg: c:\\program files\\mozilla firefox\\firefox.exe)",
+ )
+ parser.add_argument(
"--interactive",
action="store_true",
dest="interactive",
@@ -143,6 +157,15 @@ def add_common_arguments(parser):
help="absolute path to directory containing XRE (probably xulrunner)",
)
parser.add_argument(
+ "--msix-xre-path",
+ action="store",
+ type=str,
+ dest="msixXrePath",
+ # individual scripts will set a sane default
+ default=None,
+ help="absolute path to directory containing XRE in msix mode (probably xulrunner)",
+ )
+ parser.add_argument(
"--symbols-path",
action="store",
type=str,
@@ -248,6 +271,12 @@ def add_common_arguments(parser):
"and CPU x 4 when running in automation",
)
parser.add_argument(
+ "--variant",
+ action="store",
+ default="",
+ help="use specified variant for any harness level changes.",
+ )
+ parser.add_argument(
"--setpref",
action="append",
dest="extraPrefs",